View Full Version : VB.NET Strutture e File Binari
Ciao ragazzi vorrei avere un esempio o una risorsa per poter scrivere dentro un file binario la mia struttura, in maniera tale che i dati contenuti siano proprietari e non facilmente decifrabili.
Grazie Prodan
variabilepippo
16-11-2007, 17:49
Ciao ragazzi vorrei avere un esempio o una risorsa per poter scrivere dentro un file binario la mia struttura, in maniera tale che i dati contenuti siano proprietari e non facilmente decifrabili.
Che tipo di informazioni vorresti "nascondere"? Tieni in considerazione che esistono decompilatori, resource managers ed altri strumenti utilizzabili per ottenere dati contenuti in un eseguibile.
Devo nascondere il file di configurazione di un programma e vorrei che quando venisse eventualmente aperto da un utente 'stupido' non veda le stringhe di configurazione ma deve vedere solo 0 e 1.
Sò dell'esistenza di decompiler e debugger... e ne comprendo eventuali utilizzi , ma non si tratta di cose così complesse!
Prodan
variabilepippo
16-11-2007, 18:06
Devo nascondere il file di configurazione di un programma e vorrei che quando venisse eventualmente aperto da un utente 'stupido' non veda le stringhe di configurazione ma deve vedere solo 0 e 1.
Si può fare ma oltre a complicarti un po' la vita rischi che qualche antivirus basato su tecniche euristiche segnali il tuo eseguibile come "sospetto", secondo me ti conviene criptarlo/decriptarlo con le classi del namespace System.Security.Cryptography (http://msdn2.microsoft.com/en-us/library/system.security.cryptography.aspx).
Ho trovato questo codice che mi son adattato:
'--- LA MIA STRUTTURA ---
Dim FSE As Struct_File_Config
'--- DATI NELLA MIA STRUTTURA ---
FSE.Login = "OK"
FSE.Indirizzo_WEB = "http://localhost/Default.aspx"
FSE.Utente = "pippo"
FSE.Password = "pippo"
' write file out...
Dim fs As FileStream = File.Open(Prog_Path & Config_Directory & "\" & "Config.sys", FileMode.OpenOrCreate)
Dim fmtr As New BinaryFormatter
fmtr.Serialize(fs, FSE)
fs.Close()
' read file in...
fs = File.Open(Prog_Path & Config_Directory & "\" & "Config.sys", FileMode.Open)
Dim s1 As Struct_File_Config = DirectCast(fmtr.Deserialize(fs), Struct_File_Config)
Dim appo As String = s1.Indirizzo_WEB
fs.Close()
E fin qui tutto Ok, però vedo dentro il file questa cosa che non vorrei vedere:
˙˙˙˙ =CLIENT, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null #CLIENT.Module_VF+Struct_File_Config
Indirizzo_WEBUtentePasswordLogin http://localhost/Default.aspx pippo OK
OK grazie , senti un pò a proposito di Cryptography se volessi fare un file crittografato in da un programma in VB6 e passarlo ad un programma in .NET.
Esiste già una funzione un OCX o altro che copiato e incollato a VB6 e copiato e incollato a VB.NET cripti e decripti i dati senza troppe complicazioni.
grazie
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.