Ich speichere einen openssl privaten Schlüssel EVP_PKEY als nsdata. Dafür serialisiere ich mit dem folgenden Code in einen Byte-Stream
unsigned char *buf, *p;
int len;
len = i2d_PrivateKey(pkey, NULL);
buf = OPENSSL_malloc(len);
p = buf;
i2d_PrivateKey(pkey, &p);
Dabei ist pkey vom Typ EVP_PKEY. Dann speichere ich die Bytes aus dem Puffer 'p' als NSData unter Verwendung der unten angegebenen Zeile
NSData *keydata = [NSData dataWithBytes:P length:len];
Jetzt konvertiere ich es mit dem unten angegebenen Code in einen NSString, aber wenn ich es in die Konsole drucke, gibt es einige andere Zeichen.
NSString *content =[ NSString stringWithCString:[keydata bytes] encoding:NSUTF8StringEncoding];
Könnte jemand helfen?
Grundsätzlich möchte ich EVP_PKEY in einer SQLite-Datenbank speichern
bin ich auf dem richtigen Weg? Vielen Dank.
NSData
zu NSString
.