Hmmmm ... ja og nej =)
Kryptering og hashing er to forskellige ting. Hvis man krypterer en datamængde, kan man umiddelbart genskabe dataene, hvis man har adgang til dekrypterings algoritmen - og den evt. nøgle, der blev brugt ved krypteringen. Det kan man ikke fra en hash.
Hash er på engelsk en sammenkogt ret. Navnet på retten findes på adskillige sprog i forskellige afledninger. Da jeg var barn, var det meget almindeligt at få serveret
hachis - og i Scotland har man en ret ved navn
haggis.
Man kan sige, at indholdet af gryden repræsenterer en bunke forskellige råvarer - blandet sammen og kogt ind i længere tid.
Når man i programmatisk sammenhæng taler om en
hash, mener man en streng, som repræsenterer et 'sammenkog' af en given datamængde.
Hashen kan skabes ved at kalde en funktion med en datamængde (f.eks. en streng eller en fil) som argument. Funktionen returnerer på baggrund af én af mange algoritmer en streng af en bestemt længde. Nogle eksempler herpå er:
http://dk2.php.net/manual/en/function.md5.php- og dem, du finder under afsnittet
See Also.
En anden måde at skabe og anvende hashen på er den,
ebusiness omtaler. Her finder programmøren selv på en streng, som repræsenterer en given datamængde.
Dataene sættes som en property på et objekt, og hashen bruges som property navn. Et sådan objekt kaldes også et
hash table. Det er en effektiv måde at opbevare data på - og det tilbyder lynhurtig tilgang til den enkelte datamængde.