Puncte:1

Ce biți de intrare sunt dezvăluiți la dezvăluirea primilor 256 de biți ai permutației Keccak-f de ieșire?

drapel cn

Având în vedere permutarea Keccak-f[1600], sunt interesat de următoarea proprietate: Ce biți din ieșire sunt influențați de ce biți ai intrării? Adică, dacă schimb, de exemplu, al doilea bit al intrării, ce biți ai ieșirii sunt influențați de aceasta?

Altfel spus: Să presupunem că am primii 256 de biți ai ieșirii funcției Keccak. Apoi, pentru că Keccak-f[1600] este bijectiv, există doar 1600-256 de preimagini care se pot mapa în continuare la o ieșire cu primii 256 de biți „potriviți”. Există o modalitate de a estima câți biți sunt aceiași în toate cele 1600-256 de valori rămase?

kelalaka avatar
drapel in
Prima întrebare este proprietatea avalanșă pe care o dorim de la funcțiile hash.
Puncte:1
drapel my

Ce biți din ieșire sunt influențați de ce biți din intrare? Adică, dacă schimb, de exemplu, al doilea bit al intrării, ce biți ai ieșirii sunt influențați de aceasta?

După cunoștințele noastre, toți biții de ieșire sunt o funcție complexă a tuturor biților de intrare. Răsturnarea oricărui bit de intrare specific (de exemplu, al doilea) poate inversa orice bit de ieșire.

Să presupunem că am primii 256 de biți ai ieșirii funcției Keccak. Apoi, pentru că Keccak-f[1600] este bijectiv, există doar 1600-256 de preimagini care se pot mapa în continuare la o ieșire cu primii 256 de biți „potriviți”.

De fapt, ai calculat greșit; Sunt $2^{1600-256}$ preimagini, adică:

383984923062992702193107238768305990575971314802788874095145673202075995393018055488645297669674812185833211621938100469973519720714697045576788566898683254440275883795786334484525778054071087861396060398229434719927672395650215231472663143090071728679350725089418264731278276442800414037787428461842409521168393903855600900323733353159466811689332335765898192891862061280747855198528180896166938113212416

preimagini. Este puțin mai mult decât 1600-256 = 1344...

cryptobeginner avatar
drapel cn
Aeh da, corect, mulțumesc! Ați menționat că „Răsturnarea oricărui bit de intrare specific (de exemplu, al doilea) poate inversa orice bit de ieșire.”. Acum, să presupunem că știm 1599 de biți de ieșire. Atunci există doar 2 preimagini potențiale care ar putea duce la această ieșire în funcția Keccak-f, nu? Este într-adevăr garantat că acele preimagini sunt întotdeauna diferite în fiecare parte?
poncho avatar
drapel my
@cryptobeginner: evident, cu doar 2 preimagini, unii dintre biții de ieșire (probabil aproximativ jumătate) vor fi consecvenți între cele 2 postimagini. Cu toate acestea, dacă schimbați unul dintre cei 1599 de biți fixați, biții care rămân aceiași între cele două imagini post-imagini modificate sunt probabil să se schimbe...

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.