Hey zusammen,
ich habe eine Funktion die mir einen Hash erstellt. Nun möchte ich diesen Hash in den NSUserDefaults speichern.
Der Hash wird so generiert:
Alles anzeigen
print myHashOutput: <ecc05eb8 deb23904 1bbbe37a 9c45aa01 40f518a0 997bcd69 ad89691d 732cae2d>
Da ich aber kein NSData in die NSUserDefaults speichern kann möchte ich das NSdata in ein String konvertieren.
Versucht habe ich es so:
Resultat es kommt nicht mehr raus. Nur ein leerer String?
Hat jemand eine Idee woran es liegt?
ich habe eine Funktion die mir einen Hash erstellt. Nun möchte ich diesen Hash in den NSUserDefaults speichern.
Der Hash wird so generiert:
Quellcode
- var myHash = "data1" + "data2" + "data3" //später Variablen
- func sha256(data : NSData) -> NSData {
- var hash = [UInt8](count: Int(CC_SHA256_DIGEST_LENGTH), repeatedValue: 0)
- CC_SHA256(data.bytes, CC_LONG(data.length), &hash)
- let res = NSData(bytes: hash, length: Int(CC_SHA256_DIGEST_LENGTH))
- return res
- }
- let myHashdata = myHash.dataUsingEncoding(NSUTF8StringEncoding)
- let myHashOutput = sha256(myHashdata!)
Da ich aber kein NSData in die NSUserDefaults speichern kann möchte ich das NSdata in ein String konvertieren.
Versucht habe ich es so:
Quellcode
- func sha256(data : NSData) -> NSString {
- var hash = [UInt8](count: Int(CC_SHA256_DIGEST_LENGTH), repeatedValue: 0)
- CC_SHA256(data.bytes, CC_LONG(data.length), &hash)
- let res = NSString(data: NSData(bytes: hash, length: Int(CC_SHA256_DIGEST_LENGTH)), encoding: NSUTF8StringEncoding) ?? ""
- return res
- }
Hat jemand eine Idee woran es liegt?