06/07/10 20:12
a_butta
ok grazie della risposta.
Non ponendomi il problema ho impostato una banalissima funzione
function bitLen($hex_str) { return strlen($hex_str) * 8; }
Così arrivo alla parte del padding, dove devo aggiungere bit al messaggio in modo da ottenere una lunghezza multipla di 512 meno 64.
Prima di impostare il ciclo che porti il messaggio a quella lunghezza, ho provato a vedere se aggiungendo un bit alla strigna, ottenessi tramite la bitLen veramente una lunghezza di un bit in più:
$str = 'ciao';
echo 'INIZIO = '.bitLen($str);
$str = ($str << 1)|1; //aggiungo un bit 1 alla fine
echo 'FINE = '.bitLen($str);
il tutto mi restituisce:
INIZIO = 32
FINE = 8
Non riesco a uscirne da questo problema (almeno tale per me)...
dove sto sbagliando?
Non ponendomi il problema ho impostato una banalissima funzione
function bitLen($hex_str) { return strlen($hex_str) * 8; }
Così arrivo alla parte del padding, dove devo aggiungere bit al messaggio in modo da ottenere una lunghezza multipla di 512 meno 64.
Prima di impostare il ciclo che porti il messaggio a quella lunghezza, ho provato a vedere se aggiungendo un bit alla strigna, ottenessi tramite la bitLen veramente una lunghezza di un bit in più:
$str = 'ciao';
echo 'INIZIO = '.bitLen($str);
$str = ($str << 1)|1; //aggiungo un bit 1 alla fine
echo 'FINE = '.bitLen($str);
il tutto mi restituisce:
INIZIO = 32
FINE = 8
Non riesco a uscirne da questo problema (almeno tale per me)...
dove sto sbagliando?
aaa