Junior — Middle
Kas saaksite selgitada, mis on hash-funktsioon ja kuidas see töötab?
sobes.tech AI
Vastus AI-lt
Hash funktsioon on funktsioon, mis võtab sisendandmed (näiteks stringi või faili) ja tagastab fikseeritud pikkusega stringi või numbri — hash. Hash-funktsioonide peamised omadused:
- Kiire arvutamine
- Ühesuunalisus (on raske taastada algandmed hashist)
- Kollisioonide minimeerimine (erinevad andmed sama hashi korral)
iOS-is kasutatakse sageli CryptoKit või CommonCrypto algoritme hashimiseks.
Swift näide SHA256 kasutades:
import CryptoKit
let input = "Hello, world!"
let inputData = Data(input.utf8)
let hashed = SHA256.hash(data: inputData)
let hashString = hashed.compactMap { String(format: "%02x", $0) }.joined()
print(hashString)
Hash funktsioone kasutatakse andmete terviklikkuse kontrollimiseks, paroolide salvestamiseks (soolaga kombineeritult) ja muude turvalisuse ülesannete täitmiseks.