Newsgroup: it.comp.sicurezza.crittografia
Titolo: Help per algoritmo a 32bit.

Sto cercando su internet un algoritmo non lineare (tipo DES) che 
utilizzi blocchi di 32 bit anziché di 64 bit (sia il DES che blowfish 
utilizzano blocchi in entrata di 64 bit).
Grazie a Tutti, Dagart.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Dagart wrote:
| Sto cercando su internet un algoritmo non lineare (tipo DES) che
| utilizzi blocchi di 32 bit anziché di 64 bit (sia il DES che blowfish
| utilizzano blocchi in entrata di 64 bit).
Ricordandoti innanzitutto che un algoritmo con soli 32 bit di password è
"necessariamente" molto debole, ti consiglio di usare un algoritmo
qualsiasi di tua scelta e di utilizzare effettivamente solo 32 bit di
chiave, impostando gli altri a un valore di padding arbitrario...
(magari, per gli algoritmi che ne hanno, un valore tale da evitare
automaticamente le weak keys...)
- --
L a p o   L u c h i n i
l a p o @ l a p o . i t
w w w . l a p o . i t /
http://www.megatokyo.it
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (Cygwin)
Comment: Using GnuPG with Mozilla - 
http://enigmail.mozdev.org
iEYEARECAAYFAj9T0wwACgkQaJiCLMjyUvtt0wCdGo7lWmBzsmgHvFClNza7u951
NkAAoNax0K/DQ/CDY2P4nwpJtfqG2AlZ
=JK5b
-----END PGP SIGNATURE-----

 
Ok, concordo sul fatto che un algoritmo a 32 bit sia meno sicuro di un 
algoritmo a 64 bit (ovviamente poi bisogna vedere :)). Tuttavia mi 
serviva perchè sto cercando di capire con quale algoritmo viene cifrata 
una password. Sono sicuro che l'algoritmo usato è a 32 bit (infatti il 
cifrato in uscita è a 32 bit come il dato in entrata). Se il cifrario 
fosse a 64 bit non potremmo avere un dato in entrata a 32 bit ed un 
cifrato a 32 bit (in quanto il padding ad un dato minore di 64 bit per 
un cifrario a 64 bit viene per così dire "mantenuto" ed il cifrato in 
uscita e ancora a 64 bit).
Grazie lo stesso. Ciao a Tutti, Dagart.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Dagart wrote:
| Ok, concordo sul fatto che un algoritmo a 32 bit sia meno sicuro di un
| algoritmo a 64 bit (ovviamente poi bisogna vedere :)).
No no, si può discutere sull'ultilità di chiavi a 64 bit.. che *possono*
essere utili per piccole periferiche con scarsa potenza di calcolo e per
chiavi la cui vita è nell'ordine dei "minuti", ma una chiave a 32 bit
non ha veramente alcun senso IMHO.
(a meno che abbia una vita nell'ordine dei millisecondi...)
| (infatti il cifrato in uscita è a 32 bit come il dato in entrata).
Questo indica che si tratta di un block-cipher con blocco da 32 bit, ma
non dice nulla sulla dimensione della chiave.
(possono, e spesso sono, di dimensioni diverse)
- --
L a p o   L u c h i n i
l a p o @ l a p o . i t
w w w . l a p o . i t /
http://www.megatokyo.it
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (Cygwin)
Comment: Using GnuPG with Mozilla - 
http://enigmail.mozdev.org
iEYEARECAAYFAj9Zp2kACgkQaJiCLMjyUvtBMwCfTLSwcHxsdPN9wvpYc4i2ULQa
83cAoLUJj38jzujRFqWaAp9PoO3DNlz8
=88Le
-----END PGP SIGNATURE-----

 (possono, e spesso sono, di dimensioni diverse)
Su questo non sono pienamente d'accorso. Supponiamo un cofrario tipo il 
des. Questo richiede un blocco in entrata pari a 64 bit. Se tale 
lunghezza non è raggiunta viene eseguito un padding. Il blocco quindi 
raggiunge la dimensione di 64 bit. Il blocco in uscita a necessariamente 
una dimensione >= 64 bit in quanto (se la dimensione del blocco in 
uscita fosse minore non avmo la certezza della reversibilità 
dell'algoritmo). Sappiamo quindi che *necessariamente* se il blocco in 
entrata è di 64 bit (in questo caso "blocco iniziale"+padding) il blocco 
in uscita è di 64 bit. Inoltre non possiamo in alcun modo dimezzare il 
blocco cifrato in quanto, se disponessimo anche solo di un bit in meno, 
non potremmo riottenere il blocco iniziale non cifrato (con o senza 
padding).
Se il blocco in uscita è di 32 bit allora il blocco in entrata non può 
che essere <= 32 bit (nel nostro caso è proprio a 32 bit).
Con algoritmo a 32 but quindi non intendevo un algoritmo che utilizzi 
una chiave a 32 bit (come hai detto ... esistono addirittura algoritmi 
che utilizzano chiavi a lunghezza variabili) ma un algoritmo che 
utilizzi blocchi *in entrata* da 32 bit.
Ti ringrazio per le risposte preciso Lapo, ciao Dagart.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Dagart wrote:
| Sappiamo quindi che *necessariamente* se il blocco in
| entrata è di 64 bit (in questo caso "blocco iniziale"+padding) il blocco
| in uscita è di 64 bit.
Certo, ma la "sicurezza di un cipher" dipende (diciamo "è limitata
superiormente") dalla lunghezza della sua "chiave", mentre non dipende
minimamente dalla dimensione del suo "blocco".
Quello che io dicevo non si riferiva a dimensioni di "blocco in entrata"
e "blocco in uscita" ma alla dimensione della chiave, che può
tranquillamente essere sia minore che maggiore della dimensione di
blocco usata.
- --
L a p o   L u c h i n i
l a p o @ l a p o . i t
w w w . l a p o . i t /
http://www.megatokyo.it
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (Cygwin)
Comment: Using GnuPG with Mozilla - 
http://enigmail.mozdev.org
iEYEARECAAYFAj9fRsgACgkQaJiCLMjyUvuGVACg8zHdmgfuipScs2wV8y5tGoVb
XTkAn0Ntzc+V8CAircA+5btwJg8IER9P
=eh6R
-----END PGP SIGNATURE-----

 blocco usata.
Teoricamente sì, ma una chiave di lunghezza inferiore rispetto a quella di
un blocco ha poco senso perché dovresti mischiare alcuni bit in chiaro
usando più volte uno stesso bit della chiave.
In ogni caso, Rijndael (per fare un esempio) permette di usare blocchi e
chiavi da 128, 192 e 256 bit combinati a piacere (blocchi da 256 bit con
chiavi da 128, per esempio). Forse è inutile aggiungere che sarebbe sciocco
usare un blocco da 256 bit con una chiave da 128.
Gli autori stessi, quando indicano come usare Rijndael per l'hashing,
suggeriscono di usare blocchi e chiavi da 256 bit.
Cristiano

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Tutto quello che dici è giusto, nell'ipotesi di "cifratura puramente a
blocchi" (senza storia tra un blocco e l'altro, ad esempio con l'orrenda
modalità ECB), io stavo pensando più in un ottica di stream cipher (o
comunque "con memoria").
Davvero un AES a 128 bit con chiave a 128 bit è più sicuro di un AES a
256 bit con chiave a 128 bit?
Io pensavo che fossero equivalenti... (a prescindere dal fatto che la
seconda configurazione è "stupida" e probabilmente più lenta, parlo solo
di sicurezza - dal punto di vista del subject, una dimensione che nessun
cipher che io conosca supporta 'nativamente')
- --
L a p o   L u c h i n i
l a p o @ l a p o . i t
w w w . l a p o . i t /
http://www.megatokyo.it
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (Cygwin)
Comment: Using GnuPG with Mozilla - 
http://enigmail.mozdev.org
iEYEARECAAYFAj9pzC4ACgkQaJiCLMjyUvsYwQCeKUhny4ClUNYK1+2Gri0Oa3Nv
Xx8AoOO60YjLR8DyoSdQa7hBpRPW8JV1
=HVKT
-----END PGP SIGNATURE-----

 256 bit con chiave a 128 bit?
Adesso nemmeno quoti piů! O_o
Dove hai letto una fregnaccia simile!?
Cristiano