33.3.3 Biometrikus hash-láncok

2025.10.06.
AI Biztonság Blog

Hogyan bizonyítod be, hogy te vagy ugyanaz a személy, aki tegnap voltál, anélkül, hogy egy központi hatóságra vagy egy sebezhető jelszóra támaszkodnál? A biometrikus hash-láncok erre a kérdésre kínálnak egy kriptográfiailag elegáns, de támadási felületekkel teli választ. A koncepció lényege, hogy a biometrikus adataidat nem tároljuk, hanem egy megmásíthatatlan, időben előrehaladó lánc építőköveiként használjuk fel.

Kapcsolati űrlap

AI Biztonság kérdésed van? Itt elérsz minket:

Gondolj rá úgy, mint egy személyes, kriptográfiai naplóra, ahol minden új bejegyzés nemcsak a jelenlegi állapotodat rögzíti, hanem visszavonhatatlanul kapcsolódik az összes korábbihoz. Ha valaki megpróbálja megváltoztatni a múlt egyetlen bejegyzését, az egész napló érvénytelenné válik.

Az alapötlet: A biometria mint kriptográfiai horgony

A biometrikus hash-lánc három kulcsfontosságú elem ötvözete:

  • Biometria: Az „egyediséged” forrása. Ez lehet írisz-szken, ujjlenyomat, arckép vagy akár hangminta. A rendszer nem magát a nyers képet vagy hangot, hanem abból egy matematikai sablont (template) képez.
  • Kriptográfiai Hash: Egy egyirányú matematikai függvény, ami a biometrikus sablonból egy fix hosszúságú, egyedi karaktersorozatot (hash) hoz létre. A folyamat visszafordíthatatlan; a hash-ből nem lehet visszafejteni az eredeti biometrikus adatot.
  • Láncolat (Chaining): A varázslat itt történik. Minden új hitelesítéskor a rendszer nemcsak az aktuális biometrikus adat hash-ét veszi, hanem hozzáfűzi az előző hitelesítés során generált hash-t is, és ezt az egészet hash-eli újra. Így minden láncszem tartalmazza az összes előző láncszem „emlékét”.

Hogyan működik a gyakorlatban?

A folyamat két fő szakaszból áll: a kezdeti regisztrációból („genesis”) és az azt követő hitelesítésekből.

  1. Regisztráció (Időpont T0):
    • Rögzítik az első biometrikus mintádat (pl. arckép).
    • Ebből a rendszer egy matematikai sablont, `Sablon_0`-t generál.
    • Ezt a sablont hash-elik, létrehozva a „genesis hash”-t: `Hash_0 = H(Sablon_0)`.
    • Ez a `Hash_0` lesz az identitásod láncának első láncszeme. A `Sablon_0`-t a rendszer eldobja.
  2. Hitelesítés (Időpont T1):
    • Új biometrikus mintát adsz (pl. ismét egy arckép).
    • A rendszer létrehozza az új sablont: `Sablon_1`.
    • A rendszer összefűzi az új sablont az előző hash-sel (`Hash_0`).
    • Az új hash-t ebből a kombinációból számolja ki: `Hash_1 = H(Sablon_1 + Hash_0)`.
    • A `Sablon_1`-et eldobja. A `Hash_1` lesz az új „legfrissebb” láncszem.

Ez a folyamat ismétlődik minden egyes hitelesítéskor (`Hash_n = H(Sablon_n + Hash_{n-1})`), létrehozva egy feltörhetetlennek tűnő láncot, amely igazolja az identitásod folytonosságát az időben.

# Pszeudokód a biometrikus hash-lánc generálására

FUNKCIÓ regisztráció(biometrikus_adat):
 sablon = generálj_sablont(biometrikus_adat)
 genesis_hash = hash_függvény(sablon)
 # A sablont eldobjuk, csak a hash-t tároljuk
 VISSZAAD genesis_hash

FUNKCIÓ hitelesítés(aktuális_biometrikus_adat, előző_hash):
 aktuális_sablon = generálj_sablont(aktuális_biometrikus_adat)
 
 # A láncolás kulcsa: az új adatot az előző hash-sel fűzzük össze
 láncolt_adat = összefűz(aktuális_sablon, előző_hash)
 
 új_hash = hash_függvény(láncolt_adat)
 # Az aktuális sablont is eldobjuk
 VISSZAAD új_hash

# Használat
legelső_hash = regisztráció(arc_kép_1)
következő_hash = hitelesítés(arc_kép_2, legelső_hash)
még_későbbi_hash = hitelesítés(arc_kép_3, következő_hash)
Biometria_0 H() Hash_0 Regisztráció (T=0) Biometria_1 H() Hash_1 Hitelesítés (T=1) (+ Hash_0)

Red Teamer nézőpont: Támadási felületek

Bár a lánc integritása elméletben erős, a rendszer sebezhetősége a széleken, a be- és kimeneti pontokon rejlik. Red teamerként ezeket a gyenge pontokat keressük.

Genesis támadás (Sybil-létrehozás)

A lánc annyira megbízható, amennyire a legelső láncszeme. Ha egy támadó a regisztrációs folyamat során képes egy szintetikus vagy lopott biometrikus adattal (pl. deepfake videó, 3D-nyomtatott ujjlenyomat) érvényes `Hash_0`-t generálni, akkor egy teljes, kriptográfiailag érvényes, de hamis identitást hoz létre. Innentől kezdve minden további hitelesítés ezt a hamis alapot erősíti meg.

Sablonlopás és „Replay” támadás

A rendszer a nyers biometriát nem, de a belőle generált sablont rövid ideig kezeli. Ha egy támadó a sablongenerálás és a hash-elés között lehallgatja a kommunikációt vagy kompromittálja a klienst, megszerezheti a sablont. Bár a sablonból nem állítható vissza az arcod, felhasználható lehet egy „replay” támadásra, ahol a támadó a lopott sablont küldi be a rendszernek, mintha az egy élő, valós idejű beolvasás lenne. Ezért kulcsfontosságú az „élő”-detektálás (liveness detection).

Lánc-szinkronizációs és forking támadások

Decentralizált környezetben, ahol a hash-láncot több csomópont is tárolhatja, felmerül a lánc elágaztatásának (forking) lehetősége. Egy támadó megpróbálhat egy alternatív, hamis láncot építeni egy korábbi, érvényes pontból kiindulva, és megkísérelheti a hálózatot megtéveszteni, hogy az ő láncát fogadják el validnak. Ez különösen akkor veszélyes, ha a rendszer nem rendelkezik robusztus konszenzus mechanizmussal.

Adatvédelmi aggályok és korrelációs támadások

Bár a hash-ek anonimnak tűnnek, önmagukban is hordozhatnak információt. Ha egy szolgáltató ugyanazt a hash-láncot használja több rendszerben, egy támadó, aki hozzáfér két különböző adatbázishoz, képes lehet összekötni a látszólag anonim identitásokat. A hash önmagában egy egyedi azonosítóvá válik, ami sérti a felhasználó anonimitását.

Mérlegen: Előnyök és hátrányok

Mint minden technológiának, a biometrikus hash-láncoknak is vannak komoly előnyei és hátrányai, amelyeket egy red team felmérés során figyelembe kell venni.

Előnyök Hátrányok és kockázatok
  • Adatvédelem-fókuszú: Nyers biometrikus adatot nem tárol, csak annak visszafejthetetlen lenyomatát.
  • Megmásíthatatlanság: A lánc felépítése miatt egy korábbi elem megváltoztatása a teljes láncot érvényteleníti.
  • Decentralizálható: Nincs szükség központi adatbázisra az identitás igazolásához.
  • Időbeli folytonosság: Erősen bizonyítja, hogy az entitás az időben ugyanaz maradt.
  • Visszavonhatatlanság: Ha egy lánc kompromittálódik (pl. a genesis támadás miatt), nincs egyszerű módja a „visszavonásnak”.
  • Biometria változékonysága: Az öregedés, sérülések vagy akár a fényviszonyok is befolyásolhatják a sablongenerálást, ami hibás hitelesítéshez vezethet.
  • A „Genesis” probléma: A rendszer biztonsága kritikusan függ a legelső regisztráció megbízhatóságától.
  • Korrelációs kockázat: A hash-ek egyedi azonosítóként működhetnek, ami adatvédelmi szivárgáshoz vezethet.

Összességében a biometrikus hash-lánc egy lenyűgöző elméleti konstrukció az „emberség igazolására”. Azonban a gyakorlati megvalósítása során a peremfeltételek – a biometrikus adatok rögzítése, az élő-detektálás és a kezdeti regisztráció biztonsága – jelentik a legnagyobb kihívást és a legfőbb támadási felületet.