Door The FOSS: Nee hoor. Men noemt het ook wel een biohash en natuurlijk worden die gebruikt bij het vastleggen van biometrische gegevens. Je wilt immers niet - net zoals je dat bij wachtwoorden niet wilt - de 'cleartext' biometrische gegevens opslaan.
Als je niet de biometrische gegevens zelf wilt opslaan, maar een afgeleide daarvan waaruit je de oorspronkelijke gegevens niet kunt herleiden (of een willekeurig ander biometrisch patroon dat tot dezelfde output leidt, een "collision" dus), heb je een trapdoor-functie [1] nodig. D.w.z. een functie waarbij het eenvoudig is om een uitkomst uit te rekenen die representatief is voor de input, maar waarbij het -met de huidige computertechniek- binnen afzienbare tijd onmogelijk is om, op basis van een eerder berekende uitkomst naar keuze, een input (de biometrische gegevens in dit geval) terug te berekenen - zodanig dat
die input, verwerkt door de hashfunctie, weer tot dezelfde output leidt.
Goede cryptografische hashfuncties zijn trapdoorfuncties: op basis van een willekeurige uitkomst van zo'n hashfunctie, hoort het rekenkundig onmogelijk te zijn om de bijbehorende input te berekenen (terzijde: dit los van het feit dat bij inputs van lage entropie rainbow-tables kunnen worden berekend - wat de de hashfunctie zelf niet kan worden aangerekend, maar waar ontwerpers wel rekening mee moeten houden).
Bij alle "gewone" cryptografische hashfuncties die ik ken, zal een een kleine wijziging van de input een onvoorspelbaar grote wijziging van de output opleveren. Bij dergelijke cryptografische hashfuncties is dat het fundament van de trapdoorfunctie; torn je daaraan, dan is zo'n functie binnen de kortste keren gekraakt. Een van de eisen van zo'n functie is dat je, gegeven een output, binnen afzienbare tijd geen input kunt vinden die tot de gegeven output leidt (ongeacht of die gevonden input gelijk is aan de oorspronkelijke input, of een "collission" is).
Zoals anoniem van vandaag 12:04 terecht aangeeft, zijn biometrische gegevens nooit exact; er zit altijd wat variatie in. Dat maakt cryptografische hashfuncties ongeschikt, precies omdat een kleine variatie een onvoorspelbaar grote wijziging van de output oplevert.
Bij niet-cryptografische hashfuncties is het meestal aantoonbaar dat het niet om een betrouwbare trapdoorfunctie gaat, en in alle of een deel van de gevallen, gegeven een output, binnen afzienbare tijd de input kan worden berekend. Los van dat ik geen niet-cryptografische hashfuncties ken die een output geven proportioneel met de input, geef je zelf aan dat het onwenselijk is dat je biometrische gegevens kunt terugrekenen uit de opgeslagen afgeleide data.
Maar wellicht heb ik het allemaal fout en kun je een verwijzing geven naar een echte hashfunctie die voor biometrische gegevens (bij vingerafdrukken bekend als minutiae, voor andere biometrie vermoed ik dat vergelijkbare parameters worden "gemeten") wordt gebruikt?
Wel kan ik me voorstellen dat je een functie kunt bedenken die zowel trapdoorfunctionaliteit biedt als rekening houdt met marges in input - maar dat is dan geen hashfunctie.
Je kunt natuurlijk zo'n functie een "BioHash®" noemen [2], maar dat maakt het nog geen hashfunctie; dat we een pinda soms een aardnoot noemen wil niet zeggen dat het een noot is (het is namelijk een peulvrucht).
Overigens lijkt deze "BioHash" functie minder sterk dan [2] claimt, want uit het abstract in [3] (ik heb het artikel niet gekocht en gelezen) maak ik op dat de BioHash functie, in tegenstelling tot wat de bedenkers ervan claimen, in de praktijk de meetfout vergroot. En een cryptografische analyse kan ik er al helemaal niet van vinden, waardoor ik de claim (uit [2]) "It is not possible to regenerate a biometric image from a BioHASH® code" met een flinke korrel zout neem. En rainbow-tables sluit ik ook niet bij voorbaat uit.
[1]
https://en.wikipedia.org/wiki/Trapdoor_function[2]
https://www.genkey.com/privacy-by-design/[3]
https://www.sciencedirect.com/science/article/abs/pii/S0031320305004280