Děkuji všem za odpovědi. Už když jsem viděl ty opravné skriptíky, tak jsem si 
myslel, že to nebude jen v té nule na začátku. Přemýšlím, proč to nevadí tomu 
programu a s takto zničené hashe zvládne správně zjistit kód. Když jsem použil 
MD5 decrypt, tak mě pokaždé odmítl s tím, že délka není délkou MD5 hash. 
Zkoušel jsem i nějaké software, ale jakmile zjistí 31 znaků, tak odmítají 
pracovat. Tak přemýšlím jak to dělá software, že si správně doplní nulu na 
správné místo a správně zpřístupní kód. Asi si to zkusím nějak dekompilovat 
protože mi to moc hlava nebere (pokud to půjde). Ještě jednou děkuji, Pavel

-----Original Message-----
From: konference-boun...@java.cz [mailto:konference-boun...@java.cz] On Behalf 
Of Petr Synek
Sent: Friday, February 08, 2013 1:28 AM
To: Java
Subject: Re: MD5 vznikla v JAVA s 31 znaky misto 32 znaku

MD5 generuje 16 bytu dlouhy binarni vystup. Tak kdo vi jak to ASCII koduji. 
Vypada to, ze zapominaji pridat lichou 0:

00 => 0
04 => 4
40 => 40

Petr

______________________________________________________________
> Od: "Jan Dosoudil" <jan-k...@dosoudil.chr.cz>
> Komu: Java <konference@java.cz>
> Datum: 08.02.2013 00:55
> Předmět: Re: MD5 vznikla v JAVA s 31 znaky misto 32 znaku
>
>Chybějících nul může být více a může chybět úplně kdekoli v řetězci, 
>tzn. opravit hash nejde.
>
>S pozdravem
>       Jan Dosoudil
>
>Dne 7.2.2013 22:19, Mr.Krysa napsal(a):
>> Využívám program, který je určený na heslování přístupu k souborům 
>> (GalleryLock free) a jiným softwarem bych pak chtěl využívat 
>> vygenerovanou hash, kterou zmíněný program ukládá do xml (výhoda rootovaného 
>> telefonu).
>> Právě jeho soubor xml mi plně vyhovuje pro další použití (ale ne už 
>> 31 znaků). Mohu se případně pokusit dekompilovat apk programu, ale 
>> místo opravy chyby (a upozornění autora), bych raději chtěl elegantně 
>> poupravit vygenerovanou hash. Je vůbec nějaká možnost takto "špatně" 
>> uloženou hash upravit dodatečně bez využití zmíněného programu?
>> 
>> S pozdravem 
>>      Pavel Jahelka
>> 
>> -----Original Message-----
>> From: konference-boun...@java.cz [mailto:konference-boun...@java.cz] 
>> On Behalf Of Jan Dosoudil
>> Sent: Thursday, February 07, 2013 9:37 PM
>> To: Java
>> Subject: Re: MD5 vznikla v JAVA s 31 znaky misto 32 znaku
>> 
>> Hezký večer,
>> pošlete kód (nebo odkaz na něj), kterým převádíte z byte[] na String, 
>> obvyklou chybou je převádění byte na hex bez ošetření 1znakového hex 
>> řetězce, kde chybí úvodní nula.
>> 
>> S pozdravem
>>      Jan Dosoudil
>> 
>> Dne 7.2.2013 21:13, Mr.Krysa napsal(a):
>>> Zdravím všechny!
>>>
>>> Doufám, že se nebudu opakovat, ale může mi někdo pomoci pochopit 
>>> následující? Ukládám si hesla pod androidem (java) a ten je maskuje 
>>> pod md5. Jenže někdy se stane, že md5 nemá uloženo 32 znaků, ale 
>>> pouze
>>> 31 znaků. Zjistil jsem, že je vynechána jedna nula (bohužel na 
>>> libovolném místě). Ale u některých hesel jsou zase uloženy správně.
>>> Potřeboval bych pro další evidenci všech 32 znaků, ale na internetu 
>>> jsem našel jen radu o vložení nuly před hash. Také je na internetu 
>>> spousta skriptů, ale nefungovaly mi. Můžete mi prosím někdo 
>>> vysvětlit proč tomu tak je a jak nejlépe převést tuto 31 znakovou 
>>> hash na 32 znakovou hash.  Všem děkuji za Vaše odpovědi
>>>
>>>  
>>>
>>> Příklad:
>>>
>>>  
>>>
>>> 6666 převedeno na e951081ac30ffa83f10b68cde1cac7, ale správně je
>>> e9510081ac30ffa83f10b68cde1cac7
>>>
>>> 3333 převedeno na 2be9bd7a3434f738ca27d1918de58bd, ale správně je 
>>> 2be9bd7a3434f7038ca27d1918de58bd
>>>
>>> ale u čísla 1111 je správně uložena hash 
>>> b59c67bf196a4758191e42f76670ceba
>>>
>>>  
>>>
>> 
>

Odpovedet emailem