Newsgroup: it.comp.sicurezza.crittografia
Titolo: Trasmissione di entropia nel cambiamento di base m64,32,16

Ciao a tutti,
se converto tot bytes, generati da un buon PRNG (che genera entropia) nel
formato base64 o 32 o 16 (non ha importanza), e il risultato viene hashato
con una qualsiasi buona funzione di hashing, riesco ad ottenere in output
tutta l'entropia fornita dal PRNG?
Vi chiedo questo perchè ho notato che se converto questi tot bytes in
base64, l'output è una rappresentazione particolare del input, associata
questa volta alla tabella ascii, quindi praticamente una nuova sequenza di
bits, e vorrei sapere se in ogni caso la funzione di hashing riesce
comunque a "tirar fuori" da qui l'entropia che c'era in origine.
Esempio:
Il PRNG genera 1 bit di entropia ogni 8 bits e siano 01000001 01000010
01000011 3 bytes generati con, di conseguenza, 3 bits di entropia.
Convertendo questa sequenza in base64...
01000001 01000010 01000011 --> 010000 010100 001001 000011
Da 'ABC' otterrei 'gUJD' e il loro corrispondente binario sarebbe...
01100111 01010101 01001010 01000100
Sequenza completamente diversa da quella iniziale, dovuta appunto al fatto
che è una rappresentazione e non una vera e propria conversione dell'output
generato dal PRNG. (giusto!?)
La funzione di hashing riesce a questo punto a darmi in uscita questi 3 bits
di entropia che erano stati generati in origine???
Questo discorso può esser esteso all'output hashato di winzip, per esempio,
o di un qualsiasi altro programma di compressione??? In fine, di per se,
queste conversioni (base64,32,16) e le funzioni di compressione mantengono
inalterata, nel loro output, l'entropia dei dati in ingresso???
Grazie e spero di non aver scritto qualche cavolata mia solita...
        Manuel

 dati in ingresso???
Finché usi funzioni che non scartano i bit che gli metti in ingresso, direi
di sì, la mantengono inalterata.
Questo non significa che usando le tecniche di decimazione ti perdi
l'entropia per strada, anzi, se usate bene si riesce ad accumulare qualche
bit di entropia in più.
Cristiano

 l'entropia.
Questo lo sò, ma alla funzione viene passato QUJD e non ABC, questo mi da il
dubbio... Cioè non un numero rappresentato semplicemente su base diversa,
ma proprio un nuovo numero... La conversione che avevo fatto io era quella
che avrebbe dovuto vedere la funzione di hashing...
Grazie...
        Manuel

 bit di entropia in più.
Escludo a priori che un qualsiasi operatore deterministico possa
produrre in uscita più entropia di quanta ne riceve in ingresso, con
questa frase contraddici te stesso (peraltro nello stesso messaggio
eheheh) ^_^
- --
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.4 (Cygwin)
Comment: Using GnuPG with Thunderbird - 
http://enigmail.mozdev.org
iEYEARECAAYFAkFd1VwACgkQaJiCLMjyUvuJbQCfZBuRewFrB0jbOfl5tw6TS+ZJ
+MkAoPy7VngdLoGtvTRIO2G6rVxS6Df6
=l9lr
-----END PGP SIGNATURE-----

 che avrebbe dovuto vedere la funzione di hashing...
Puoi anche passargli il numero elevato al quadrato e sommato a 13513..
ottieni un numero certamente "piů grande" come rappersentazione, ma
l'entropia contenuta č sempre assolutamente identica.
Lapo
- --
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.4 (Cygwin)
Comment: Using GnuPG with Thunderbird - 
http://enigmail.mozdev.org
iEYEARECAAYFAkFd1bwACgkQaJiCLMjyUvuOFQCfSYMuLvhA+web8n0TwPjx75xG
lv8AoMIEVg20XZfQqA1tZdR/7U8JDQ2J
=TwK0
-----END PGP SIGNATURE-----

 hashing...
Vale quello che ti ho già detto: finché non scarti i bit e finché sottoponi
i bit a processi puramente deterministici (che però non prevedano
l'eliminazione di bit) l'entropia resta invariata, al massimo puoi solo
variare l'entropia specifica.
Questo, però non implica il contrario; cioè quando usi tecniche di
decimazione (eliminazione di bit) potresti riuscire ad accumulare qualche
bit di entropia in più; per esempio se la decimazione consente di variare
l'intervallo di tempo in cui la sorgente d'entropia viene letta, l'entropia
aumenta proprio per la maggiore imprevedibilità con cui viene letta la
sorgente.
Cristiano

 bit di entropia in più;
Potresti aumentare al limite la sua densità (proprio come quando passi
un grosso "tocco" di dati in un hash), ma non certo la sua quantità
assoluta.
Come dice la tua frase precedente NESSUNA tecnica deterministica può
aumentare l'entropia di un messaggio, tantomeno la tua adorata decimazione.
- --
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.4 (Cygwin)
Comment: Using GnuPG with Thunderbird - 
http://enigmail.mozdev.org
iEYEARECAAYFAkFgMcEACgkQaJiCLMjyUvubKQCgxz4SQaGl57BuTrMFNxQ/YM5N
T/AAnRlr4YPx5PYXAXkePSmZQJy+6icN
=4NCE
-----END PGP SIGNATURE-----