Puncte:3

Crapare $f(x) = Cx \oplus Dx$

drapel in

Un program pe care l-am folosit de inginerie inversă $f(x) = Cx \oplus Dx$ Unde C = 0x20ef138e415 și D = 0xd3eafc3af14600 ca funcție hash. Având în vedere o matrice de octeți, hash-ul este obținut prin aplicarea repetată $f$ la hash-ul curent xor octetul următor.

Cod Java:

    public static long f(long x) {
        return (0x20ef138e415L * x) ^ (0xd3eafc3af14600L * x);
    }

    hash lung static public (octet[] octeți) {
        hash lung = 0;

        pentru (octet b : octeți) {
            hash = f(hash ^ ((b & 0xff) + 1));
        }

        return f(hash);
    }

Există o modalitate ușoară de a genera coliziuni hash?

Meir Maor avatar
drapel in
Nu este nevoie să faceți criptanaliza, aceasta are o stare de 64 de biți și, prin urmare, găsirea coliziunilor este trivială cu ~ 2^32 de operații. Gândirea este greu să găsești ciocniri în asta este ușor.
Meir Maor avatar
drapel in
De fapt, am încercat să fac asta pentru distracție și nu am reușit, dar eșecul meu a condus la această întrebare: https://crypto.stackexchange.com/questions/92280/many-near-collisions-but-no-full-collision (Comentariile mele încă nu ar trebui să fie greu de găsit coliziuni în orice hash de 64 de biți, pur și simplu am eșuat totuși).

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.