Cifratura con algoritmo AES (Rijndael) ; quanti bit usare e come impos...

venerdì 13 febbraio 2009 - 22.59

ravalon Profilo | Expert

Sto usando una cifratura con AES e mi ritrovo a dover impostare

1 chiave
1 initialization vector
1 grandezza della chiave
1 grandezza del blocco

Vedendo su MSDN e altrove, noto che usando una stringa tipo

"qyudpcjkopERaFVu" che è di 16 caratteri, sfrutto una crittografica a 128 bit

Quindi in questo caso dovresi impostare

MyRijndael.KeySize = 128 ?

E se volessi usare una chiave a 256 bit devo mettere una stringa di Key di 32 caratteri e impostare

MyRijndael.KeySize= 256 ?

E la proprietà MyRijndael.BlockSize ? a cosa serve e come la devo mettere ?

In ultima analisi .... quanto mi cambia da 128 a 256 bit ? la stringa criptata è più lunga ?


**************AGGIORNAMENTO**********************

Da un po di prove ho notato che l'initialization vector deve essere di 128 altrimenti non mi funziona...
cioè...

se uso questo

MyRijndael.Key ="HRtylJKODfdWnjOFguiTRclOPqPaPlaO"
MyRijndael.IV="GtjkSWEoSWmjTTRp"
MyRijndael.KeySize =256
MyRijndael.BlockSize =128

funziona

se metto cosi

MyRijndael.Key ="HRtylJKODfdWnjOFguiTRclOPqPaPlaO"
MyRijndael.IV="GtjkSWEoSWmjTTRp"
MyRijndael.KeySize =256
MyRijndael.BlockSize =256

cioè cambianto il BlockSize in modo che corrisponda al KeySize, non funziona più

e nemmeno

MyRijndael.Key ="HRtylJKODfdWnjOFguiTRclOPqPaPlaO"
MyRijndael.IV="GtjkSWEoSWmjTTRpopiRtyCFRThiufTl"
MyRijndael.KeySize =256
MyRijndael.BlockSize =256

e nemmeno

MyRijndael.Key ="HRtylJKODfdWnjOFguiTRclOPqPaPlaO"
MyRijndael.IV="GtjkSWEoSWmjTTRp"
MyRijndael.KeySize =256
MyRijndael.BlockSize =256


Allora vorrei chiedervi di spiegarmi come mai il KeySize e BlockSize non possono essere uguali ?
E come mai l'Initialization Vector devo farlo di 16 byte e non di 32 ?
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5