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 >>> >>> >>> >> >