PDA

View Full Version : RSA Assembly per .NET


gohan
21-11-2003, 11:06
Qualcuno conosce una qualche libreria .NET free che permetta di gestire il crypt/decrypt di stringhe usando RSA o cmq usando un algoritmo asimmetrico?
Adesso uso il 3des, ma è simmetrico.
Grazie

fabianoda
10-12-2003, 08:49
Nel .NET Framework è possibile utilizzare cifratura sia simmetrica che asimmetrica.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemSecurityCryptographyAsymmetricAlgorithmClassTopic.asp

In questa pagina puoi trovare dettagli sull'utilizzo dell'algoritmo RSA e del DSA (sono all'interno della libreria del .NET Framework System.Security.Criptography)

Quindi se utilizzi la libreria standard non ti serve alcuna libreria aggiuntiva

Ciao

gohan
10-12-2003, 09:20
grazie.
Nel frattempo avevo già trovato.
Cmq adesso ne ho un altro di problemi: .NET non prevede la crittografia inversa con RSA, ovvero cifrare con la chiave privata per decifrarlo con quella pubblica.
Tu sai come fare?

fabianoda
11-12-2003, 08:23
Se questo ti serve per la firma elettronica (signature algorithm) puoi utilizzare gli appositi metodi di .net che fanno il seguente:
1) il sender cripta con la chiave privata
2) il sender invia al receiver la propria chiave pubblica
3) il receiver utilizza la chiave pubblica per decifrare la signature

I metodi sono, utilizzando il DSA, nella classe DSACryptoServiceProvider.

gohan
11-12-2003, 12:41
non è proprio la stessa cosa.
Volevo solo riuscire a fare un file di licenza per un programma: così criptanto la stringa con la chiave privata potevo cablare la chiave pubblica nel programma in modo che sia in grado di leggere la giusta licenza senza che qualcuno riesca a trovare la chiave per generare il file di licenza.

fabianoda
11-12-2003, 13:23
Il principio è comunque lo stesso: tu cripti, poi distribuisci la chiave pubblica a chi vuole utilizzare il programma. Non so bene come funzioni la classe che ti ho detto (ho letto solo brevemente la descrizione e mi è sembrata adeguata). Se controlli bene all'interno di System.Security.Criptography credo che puoi trovare cmq quello che ti serve.

ball12
11-12-2003, 16:36
Si, controlla nel framework nella classe indicata.

Ciao

gohan
11-12-2003, 17:31
ho controllato su internet 2 settimane fa: molta gente è nella mia stessa situazione.
Anche uno degli sviluppatori di MONO ha detto che .NET non ha quella funzione, quindi se uno vuole fare quello che vorrei fare io deve svilupparsi una classe ad-hoc.