Hallo,

ich versuche gerade verzweifelt eine Email-Verschlüsselung hinzubekommen.
Ich verwende dazu OpenSSL und PHP. Es scheitert wahrscheinlich schon bei der Erstellung eines selbstsignierten Zertifikats, der openssl_error_string gibt Meldungen zurück. Aus diesen werde ich nicht schlau und im Internet finde ich auch nix aussagekräftiges dazu.

Ich habe folgenden Code im Internet gefunden zur Erstellung des Zertifikates:
Code:
<?php
    $dn = array(
    "countryName" => "XX",
    "stateOrProvinceName" => "XX",
    "localityName" => "XX",
    "organizationName" => "XX",
    "organizationalUnitName" => "TEST",
    "commonName" => "XX",
    "emailAddress" => "XX"
);

// Erzeugen eines neuen privaten (und öffentlichen) Schlüsselpaars
$privkey = openssl_pkey_new();

// Erzeugen einer Zertifikatssignierungsanfrage
$csr = openssl_csr_new($dn, $privkey);

$sscert = openssl_csr_sign($csr, null, $privkey, 365);

openssl_csr_export_to_file($csr, $_SERVER['DOCUMENT_ROOT'].'/tests/csr1.crt') and var_dump($csrout);
openssl_x509_export_to_file($sscert, $_SERVER['DOCUMENT_ROOT'].'/tests/cert1.crt') and var_dump($certout);
openssl_pkey_export_to_file($privkey, $_SERVER['DOCUMENT_ROOT'].'/tests/certpkey1.key', "passwort");
// Anzeigen der möglichen aufgetretenen Fehler
while (($e = openssl_error_string()) !== false) {
    echo $e . "<br>";
}
?>
Die Dateien werden erstellt, ich bekomme aber folgende Fehlermeldung in mehrfacher Ausführung:
"error:0E06D06C:configuration file routines:func(109):reason(108)"

Beim Versuch die erstellte cert1.crt mit openssl_x509_read('cert1.crt') zu öffnen führt zu einer nächsten Fehlermeldung:
"supplied parameter cannot be coerced into an X509 certificate!"

Habe auch versucht ein Zertifikat mit dem Keymanager zu erstellen mit dem Addon von Firefox, aber das exportierte Zertifikat lässt sich auch nicht mit dem openssl_x509_read()-Befehl einlesen, gleiche Meldung wie oben.

Ich hoffe jmd.kann mir da weiterhelfen, ich bin ziemlich ratlos...