|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 2066
|
Protezione password in Visual Basic 2005 tramite crittografia
Salute a tutti.
Ritorno con un altro quesito rivolto ai più esperti: non volendo scrivere ex-novo un algoritmo di criptazione/decriptazione per una password, esistono degli algoritmi già pronti all'uso ? Questo perché non voglio che ci siano riferimenti testuali espliciti all'interno del codice, sicché con un disassemblatore sarebbe estremamente semplice trovare la stringa coincidente con la password. Si può fare ? Non vorrei usare il semplice metodo: If TextBox1.Text = "paperella" Then MsgBox("Sei autorizzato") Else MsgBox("Non sei autorizzato") Perché come ho detto prima basta disassemblare l'eseguibile, e senza eseguire il debug cercare i riferimenti stringa presenti nel codice per poter scovare la password "paperella".
__________________
Notebook Acer Aspire 5920G modded: Intel Core 2 Duo T9500, NVIDIA GeForce GT 240M 1 GiB DDR3, Hitachi TravelStar 7K1000 1 TB, Corsair VS 2 x 4 GiB DDR2-800, Optiarc AD-7630A & Intel 7260 AC Dual Band. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
Può esserti utile leggere questo articolo delle msdn:
http://www.microsoft.com/italy/msdn/.../VBCompPI.mspx Anche se riguarda l' implementazione con VB6, si tratta di una funzionalità del framework e quindi utilizzabile in vb.net facilmente (è spiegato tutto). Ma se hai ancora dubbi puoi chiedere ...
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 2066
|
1) Non mi suona di facile comprensione.
2) Viene illustrato l'esempio di scrittura crittografata su di un file, ma non di elaborazione di un dato non crittografato ad un dato crittografato quale sarebbe la mia volontà, cioè io non desidero alcun output, ma semplicemente voglio che data una password crittografata CONTENUTA NEL CODICE, si confronti con essa un testo immesso in una textbox anch'esso crittografato con lo stesso algoritmo, cosicché non sia necessario "scoprire" la password cifrata, ma solo "vedere" se il testo immesso nella textbox, dopo essere stato anch'esso crittato con lo stesso algoritmo della password già crittografata, venga confrontato con quest'ultima e venga stabilito se è uguale o meno. Per essere ancora + rudimentale nell'esprimermi, voglio dire questo: ho questa password: "leoncino", senza virgolette. Supponiamo che crittografata con l'algoritmo DES diventi "DXDDDEWDS455SEE1231EAAWESD", ovviamente senza virgolette. BENE: io lascio nel codice la password cifrata, ovvero: DXDDDEWDS455SEE1231EAAWESD. POI Scrivo una password in una textbox. La password della textbox (che chiamerò password 2) viene codificata tramite l'algoritmo DES usando la medesima chiave usata per quella che si trova già nel codice. Viene eseguita la verifica per sapere se la password 2 corrisponde alla password presente nel codice. Tutto qui.
__________________
Notebook Acer Aspire 5920G modded: Intel Core 2 Duo T9500, NVIDIA GeForce GT 240M 1 GiB DDR3, Hitachi TravelStar 7K1000 1 TB, Corsair VS 2 x 4 GiB DDR2-800, Optiarc AD-7630A & Intel 7260 AC Dual Band. |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
![]() ![]() O ti crei una semplice funzione che con qualche xor e shift sull' ascii cripti la password (penso sia la cosa più sbrigativa, visto che il tuo scopo è non mostrare in chiaro le stringhe da un editor esadecimale) ... oppure scrivi la password non come "leoncino" ma come somma dei caratteri ascii tradotti col chr: chr(108)+chr(101)+chr(111)+chr(110)+chr(99)+chr(105)+chr(110)+chr(111) Essendo sempre una scritta, puoi tranquillamente eguagliarla a quella ricevuta dalla textbox di input. Altrimenti usare le funzioni del framework comincia a non valere il gioco, se ti serve solo questo tipo di protezione ...
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
Comunque se vuoi sare algoritmi cattivi di crittografia, guarda questo esempio in vb.net con Base64 e AES:
http://www.planet-source-code.com/vb...4620&lngWId=10 Sullo stesso sito puoi trovare moltissime implementazioni di algoritmi di sicurezza ... con rispetti guide.
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
http://www.codeproject.com/cs/algori...gPasswords.asp
Forse questo articolo può esserti utile. Si riferisce proprio a .net ![]()
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:22.