A kriptográfiai hasítási funkciók meghatározása
A kriptográfiai hash függvény a kriptográfia során használt matematikai függvény. A tipikus hash-függvények változó hosszúságú bemeneteket vesznek rögzített hosszúságú kimenetek visszaadására. A kriptográfiai kivonat funkció egyesíti a kivonat funkciók üzenettovábbítási képességeit a biztonsági tulajdonságokkal.
A kriptográfiai hasítás funkciók lebontása
A hasító funkciók általában használt adatstruktúrák a számítási rendszerekben olyan feladatokhoz, mint például az üzenetek integritásának ellenőrzése és az információk hitelesítése. De kriptográfiailag gyengenek tekintik őket. A kriptográfiai hash-funkciók biztonsági jellemzőket adnak a tipikus hash-funkciókhoz, ezáltal megnehezítik az üzenet tartalmának vagy a címzettekre és a feladókra vonatkozó információk észlelését.
Különösen a kriptográfiai hash funkciók mutatnak három tulajdonságot
- Ezek „ütközésmentesek”. Egyszerű szavakkal, két bemeneti hash-nak nem szabad azonos kimeneti hash-ra térképeznie. Elrejthetők. Egyszerű szavakkal, nehéz lehet kitalálni a hash-funkció bemeneti értékét a kimenetéből. Rejtvénybarátnak kell lenniük. Vagyis nehéz lehet olyan bemenetet kiválasztani, amely előre meghatározott kimenetet biztosít. Ezért a bemenetet a lehető legszélesebb eloszlásból kell kiválasztani.
A fent ismertetett három tulajdonság kívánatos, de ezeket nem mindig lehet a gyakorlatban megvalósítani. Például a bemeneti hash-ok és a kimenetek mintaterületeinek eltérése biztosítja az ütközések lehetőségét. Ennek egy példáját nemrégiben mutatták be, amikor az MIT Digital Currency Initiative ütközési sebezhetőséget talált az IOTA-ban.
A kriptográfiai hash-funkciókat széles körben használják a kriptovalutákban a tranzakciós információk névtelen továbbítására. Például a bitcoin, az eredeti és legnagyobb kriptovaluta, algoritmusában az SHA-256 kriptográfiai hash funkciót használja. Hasonlóképpen, az IOTA, a tárgyak internetes platformjának kriptográfiai kivonat funkciója, Curl néven ismert.