Wie kann ich publickey von pem-Datei zu erhalten, die auf rsa 364. installiert crypt (RSA.php) Bibliothek basierend erstellt wird immer noch unter Fehler immerPHP rsa erhalten öffentliche Schlüssel von pem Datei
Fatal error: Call to nicht definierte Methode Crypt_RSA :: loadKey() in C: \ Programme \ Apache Software Foundation \ Apache2.2 \ htdocs \ rsa.php
$file = "C:\key_file.pem";
$keypair = Crypt_RSA_KeyPair::fromPEMString(file_get_contents($file));
$public_key = $keypair->getPublicKey();
$rsa_pub_key = Crypt_RSA_Key::fromString($public_key->toString());
$rsa_obj = new Crypt_RSA;
$verify_status = $rsa_obj->validateSign($text,$recieved_signed_sign, $rsa_pub_key) ? 'valid' : 'invalid';
immer Fehler wie Fatal error: Call to undefined Methode PEAR_Error :: getPublicKey() in C: \ Programme \ xxxx \ rsa.php
Erprobtes gleiches Ding openssl_verify. Verify ist rturning 0 Versuchen, Zeichen mit base64_encode mit 384 RSA-Schlüssel erhalten zu überprüfen.
**$base64DecodedStr = base64_decode("A1a0o8JzF7q12Sr4gJvYjslhg5XVA2fWy28.JyohJ05uyiZGyBpqazqb");
$status = openssl_verify($msg,$base64DecodedStr,$pub_key);**
Bitte helfen Sie mir, dieses Problem zu lösen. Danke vielmals.
Dank David, änderte ich Code wie unter $ file = "C: \ key_file.pem"; $ keypair = Crypt_RSA_KeyPair :: von PEMString (file_get_contents ($ file)); $ public_key = $ Schlüsselpaar-> getPublicKey(); $ rsa_pub_key = Crypt_RSA_Key :: fromString ($ public_key-> toString()); $ rsa_obj = new Crypt_RSA; $ verify_status = $ rsa_obj-> validateSign ($ text, $ empfangen_signiertes_zeichen, $ rsa_pub_key)? 'gültig': 'ungültig'; Fehler als Fataler Fehler erhalten: Rufen Sie die nicht definierte Methode PEAR_Error :: getPublicKey() in C: \ Programme \ xxxx \ rsa.php – mazheruddin
@mazheruddin auf, überprüfen Sie 'file_get_contents ($ file)' result. Ihr 'Crypt_RSA_KeyPair :: fromPEMString' kann kein Schlüsselpaar von PEMString bekommen, was nur dann der Fall sein kann, wenn etwas mit einer Zeichenfolge, die Sie übergeben haben, nicht funktioniert –
@Rumm, versucht $ fp = fopen ($ file," r "); $ pem_data = fread ($ fp, Dateigröße ($ Datei)); \t fclose ($ fp); hat $ pem_data an fromPEMString func übergeben. immer noch gleichen Fehler in der Lage, $ pem_data zu echo – mazheruddin