Property | Type | Description | |
---|---|---|---|
$keys | array | ||
$keystorePathAndFilename | string | ||
$openSSLConfiguration | array | The openSSL configuration | |
$saveKeysOnShutdown | boolean |
Method | Description | |
---|---|---|
checkRSAEncryptedPassword ( string $encryptedPassword, string $passwordHash, string $salt, string $fingerprint ) : boolean | Checks if the given encrypted password is correct by comparing it's md5 hash. The salt is appended to the decrypted password string before hashing. | |
decrypt ( string $cipher, string $fingerprint ) : string | Decrypts the given cipher with the private key identified by the given fingerprint Note: You should never decrypt a password with this function. Use checkRSAEncryptedPassword() to check passwords! | |
destroyKeypair ( string $fingerprint ) : void | Destroys the keypair identified by the given fingerprint | |
encryptWithPublicKey ( string $plaintext, string $fingerprint ) : string | Encrypts the given plaintext with the public key identified by the given fingerprint | |
generateNewKeypair ( boolean $usedForPasswords = false ) : string | Generates a new keypair and returns a fingerprint to refer to it | |
getFingerprintByPublicKey ( string $publicKeyString ) : string | Generate an OpenSSH fingerprint for a RSA public key | |
getPublicKey ( string $fingerprint ) : |
Returns the public key for the given fingerprint | |
initializeObject ( ) : void | Initializes the rsa wallet service by fetching the keys from the keystore file | |
injectSettings ( array $settings ) : void | Injects the OpenSSL configuration to be used | |
registerKeyPairFromPrivateKeyString ( string $privateKeyString, boolean $usedForPasswords = false ) : string | Adds the specified keypair to the local store and returns a fingerprint to refer to it. | |
registerPublicKeyFromString ( string $publicKeyString ) : string | Adds the specified public key to the wallet and returns a fingerprint to refer to it. | |
shutdownObject ( ) : void | Stores the keys array in the keystore file | |
sign ( string $plaintext, string $fingerprint ) : string | Signs the given plaintext with the private key identified by the given fingerprint | |
verifySignature ( string $plaintext, string $signature, string $fingerprint ) : boolean | Checks whether the given signature is valid for the given plaintext with the public key identified by the given fingerprint |
Method | Description | |
---|---|---|
decryptWithPrivateKey ( string $cipher, |
Decrypts the given ciphertext with the given private key | |
getModulus ( resource $keyResource ) : string | Exports the public modulus HEX string from the KeyResource | |
getPrivateKeyString ( resource $keyResource ) : string | Exports the private key string from the KeyResource | |
getPublicKeyString ( resource $keyResource ) : string | Exports the public key string from the KeyResource | |
sshConvertMpint ( string $bytes ) : string | Convert a binary representation of a multiple precision integer to mpint format defined for SSH RSA key exchange (used in "ssh-rsa" format). | |
storeKeyPair ( |
Stores the given keypair and returns its fingerprint. |
public checkRSAEncryptedPassword ( string $encryptedPassword, string $passwordHash, string $salt, string $fingerprint ) : boolean | ||
$encryptedPassword | string | The received, RSA encrypted password to check |
$passwordHash | string | The md5 hashed password string (md5(md5(password) . salt)) |
$salt | string | The salt used in the md5 password hash |
$fingerprint | string | The fingerprint to identify the private key (RSA public key fingerprint) |
return | boolean | TRUE if the password is correct |
public destroyKeypair ( string $fingerprint ) : void | ||
$fingerprint | string | The fingerprint |
return | void |
public generateNewKeypair ( boolean $usedForPasswords = false ) : string | ||
$usedForPasswords | boolean | TRUE if this keypair should be used to encrypt passwords (then decryption won't be allowed!). |
return | string | The RSA public key fingerprint for reference |
public getFingerprintByPublicKey ( string $publicKeyString ) : string | ||
$publicKeyString | string | RSA public key, PKCS1 encoded |
return | string | The public key fingerprint |
public getPublicKey ( string $fingerprint ) : |
||
$fingerprint | string | The fingerprint of the stored key |
return | The public key |
public initializeObject ( ) : void | ||
return | void |
public injectSettings ( array $settings ) : void | ||
$settings | array | |
return | void |
public registerKeyPairFromPrivateKeyString ( string $privateKeyString, boolean $usedForPasswords = false ) : string | ||
$privateKeyString | string | The private key in its string representation |
$usedForPasswords | boolean | TRUE if this keypair should be used to encrypt passwords (then decryption won't be allowed!). |
return | string | The RSA public key fingerprint for reference |
public registerPublicKeyFromString ( string $publicKeyString ) : string | ||
$publicKeyString | string | The public key in its string representation |
return | string | The RSA public key fingerprint for reference |
public shutdownObject ( ) : void | ||
return | void |
public verifySignature ( string $plaintext, string $signature, string $fingerprint ) : boolean | ||
$plaintext | string | The plaintext to sign |
$signature | string | The signature that should be verified |
$fingerprint | string | The fingerprint to identify the public key (RSA public key fingerprint) |
return | boolean | TRUE if the signature is correct for the given plaintext and public key |
protected string $keystorePathAndFilename | ||
return | string |
protected array $openSSLConfiguration | ||
return | array |