ParagonIE\Halite\KeyFactory::generateSignatureKeyPair PHP Method

generateSignatureKeyPair() public static method

Generate a key pair for public key digital signatures
public static generateSignatureKeyPair ( string &$secretKey = '' ) : SignatureKeyPair
$secretKey string
return SignatureKeyPair
    public static function generateSignatureKeyPair(string &$secretKey = '') : SignatureKeyPair
    {
        // Encryption keypair
        $kp = \Sodium\crypto_sign_keypair();
        $secretKey = \Sodium\crypto_sign_secretkey($kp);
        // Let's wipe our $kp variable
        \Sodium\memzero($kp);
        return new SignatureKeyPair(new SignatureSecretKey(new HiddenString($secretKey)));
    }

Usage Example

Example #1
0
 public function testSign()
 {
     $keypair = KeyFactory::generateSignatureKeyPair();
     $secretkey = $keypair->getSecretKey();
     $publickey = $keypair->getPublicKey();
     $signature = File::sign(__DIR__ . '/tmp/paragon_avatar.png', $secretkey);
     $this->assertTrue(!empty($signature));
     $this->assertTrue(File::verify(__DIR__ . '/tmp/paragon_avatar.png', $publickey, $signature));
 }
All Usage Examples Of ParagonIE\Halite\KeyFactory::generateSignatureKeyPair