ParagonIE\Halite\Asymmetric\Crypto::sign PHP Method

sign() public static method

Sign a message with our private key
public static sign ( string $message, SignatureSecretKey $privateKey, mixed $encoding = Halite::ENCODE_BASE64URLSAFE ) : string
$message string Message to sign
$privateKey SignatureSecretKey
$encoding mixed Which encoding scheme to use?
return string Signature (detached)
    public static function sign(string $message, SignatureSecretKey $privateKey, $encoding = Halite::ENCODE_BASE64URLSAFE) : string
    {
        $signed = \Sodium\crypto_sign_detached($message, $privateKey->getRawKeyMaterial());
        $encoder = Halite::chooseEncoder($encoding);
        if ($encoder) {
            return $encoder($signed);
        }
        return $signed;
    }

Usage Example

Beispiel #1
0
 public function testDeriveSigningKey()
 {
     list($sign_secret, $sign_public) = ASecretKey::deriveFromPassword('apple', "\t\n\v\f\r" . "", Key::CRYPTO_SIGN);
     $this->assertTrue($sign_secret instanceof ASecretKey);
     $this->assertTrue($sign_public instanceof APublicKey);
     // Can this be used?
     $message = 'This is a test message';
     $signed = Asymmetric::sign($message, $sign_secret);
     $this->assertTrue(Asymmetric::verify($message, $sign_public, $signed));
     $this->assertEquals($sign_public->get(), "þ\t†E·õÂbÈagÖ\t" . "•§”\\æÕU–ãuˆ4");
 }
All Usage Examples Of ParagonIE\Halite\Asymmetric\Crypto::sign