public function sign($plaintext, $fingerprint)
{
if ($fingerprint === null || !isset($this->keys[$fingerprint])) {
throw new InvalidKeyPairIdException('Invalid keypair fingerprint given', 1299095799);
}
$signature = '';
openssl_sign($plaintext, $signature, $this->keys[$fingerprint]['privateKey']->getKeyString());
return $signature;
}
/** * @test */ public function signAndVerifySignatureBasicallyWorks() { $plaintext = 'trustworthy data!'; $signature = $this->rsaWalletService->sign($plaintext, $this->keyPairUuid); $this->assertTrue($this->rsaWalletService->verifySignature($plaintext, $signature, $this->keyPairUuid)); $this->assertFalse($this->rsaWalletService->verifySignature('modified data!', $signature, $this->keyPairUuid)); }