Class: Crypt_RSA_KeyPair
Source Location: /Crypt_RSA-1.2.0b/RSA/KeyPair.php
Crypt_RSA_ErrorHandler
|
--Crypt_RSA_KeyPair
Crypt_RSA_KeyPair class, derived from Crypt_RSA_ErrorHandler
Author(s):
Version:
Copyright:
- 2005, 2006 Alexander Valyalkin
|
|
Inherited Variables
|
Inherited Methods
|
Class Details
[line 133]
Crypt_RSA_KeyPair class, derived from Crypt_RSA_ErrorHandler Provides the following functions: - generate($key) - generates new key pair
- getPublicKey() - returns public key
- getPrivateKey() - returns private key
- getKeyLength() - returns bit key length
- setRandomGenerator($func_name) - sets random generator to $func_name
- fromPEMString($str) - retrieves keypair from PEM-encoded string
- toPEMString() - stores keypair to PEM-encoded string
- isEqual($keypair2) - compares current keypair to $keypair2
Example usage: // create new 1024-bit key pair $key_pair = new Crypt_RSA_KeyPair(1024); // error check if ($key_pair->isError()) { echo "error while initializing Crypt_RSA_KeyPair object:\n"; $erorr = $key_pair->getLastError(); echo $error->getMessage(), "\n"; } // get public key $public_key = $key_pair->getPublicKey(); // get private key $private_key = $key_pair->getPrivateKey(); // generate new 512-bit key pair $key_pair->generate(512); // error check if ($key_pair->isError()) { echo "error while generating key pair:\n"; $erorr = $key_pair->getLastError(); echo $error->getMessage(), "\n"; } // get key pair length $length = $key_pair->getKeyLength(); // set random generator to $func_name, where $func_name // consists name of random generator function. See comments // before setRandomGenerator() method for details $key_pair->setRandomGenerator($func_name); // error check if ($key_pair->isError()) { echo "error while changing random generator:\n"; $erorr = $key_pair->getLastError(); echo $error->getMessage(), "\n"; } // using factory() method instead of constructor (it returns PEAR_Error object on failure) $rsa_obj = &Crypt_RSA_KeyPair::factory($key_len); if (PEAR::isError($rsa_obj)) { echo "error: ", $rsa_obj->getMessage(), "\n"; } // read key pair from PEM-encoded string: $str = "-----BEGIN RSA PRIVATE KEY-----" . "MCsCAQACBHr5LDkCAwEAAQIEBc6jbQIDAOCfAgMAjCcCAk3pAgJMawIDAL41" . "-----END RSA PRIVATE KEY-----"; $keypair = Crypt_RSA_KeyPair::fromPEMString($str); // read key pair from .pem file 'private.pem': $str = file_get_contents('private.pem'); $keypair = Crypt_RSA_KeyPair::fromPEMString($str); // generate and write 1024-bit key pair to .pem file 'private_new.pem' $keypair = new Crypt_RSA_KeyPair(1024); $str = $keypair->toPEMString(); file_put_contents('private_new.pem', $str); // compare $keypair1 to $keypair2 if ($keypair1->isEqual($keypair2)) { echo "keypair1 = keypair2\n"; } else { echo "keypair1 != keypair2\n"; }
Method Detail
Documentation generated on Mon, 11 Mar 2019 14:37:14 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.
|
|