Das ist für mich gearbeitet: den Schlüssel Erstellen von OpenSSL öffnet mit
openssl ecparam -name prime256v1 -genkey -noout -out ec-key.pem
Mit der Zertifikat verschlüsselt zu generieren:
openssl req -new -x509 -key ec-key.pem -outform der -out server.pem -days 730
Zeichen der Inhalt
openssl dgst -sha256 -sign ec-key.pem content.txt > signature
Dann Laden des Zertifikats
NSString *cerPath = [[NSBundle bundleForClass:[self class]] pathForResource:@"server" ofType:@"cer"];
NSData *cerData = [NSData dataWithContentsOfFile:cerPath];
SecCertificateRef certificate = SecCertificateCreateWithData(NULL, (CFDataRef)cerData);
den öffentlichen Schlüssel aus dem Zertifikat Extrating
SecPolicyRef secPolicy = SecPolicyCreateBasicX509();
SecTrustRef trust;
SecTrustCreateWithCertificates(certificate, secPolicy, &trust);
SecTrustResultType resultType;
SecTrustEvaluate(trust, &resultType);
SecKeyRef publicKey = SecTrustCopyPublicKey(trust);
Verifing die Signatur
uint8_t digest[CC_SHA256_DIGEST_LENGTH];
if (!CC_SHA256([content bytes], (CC_LONG)[content length], digest)) return NO;
OSStatus status = SecKeyRawVerify(publicKey,
kSecPaddingPKCS1,
digest,
CC_SHA256_DIGEST_LENGTH,
(uint8_t*)[signature bytes],
[signature length]);
return status == errSecSuccess;
Ich suche CSR mit ecdsawithsha256 und ich folgte dieser Bibliothek ist dies nur für die Unterzeichnung von EC Könnten Sie mir helfen, wie kann ich ein CSR-Zertifikat (PEM-Format) über diese Bibliothek erzeugen? – Aleem