PHP Conference Nagoya 2025

gnupg_encryptsign

(PECL gnupg >= 0.2)

gnupg_encryptsignEncrypts and signs a given text

说明

gnupg_encryptsign(resource $identifier, string $plaintext): string|false

Encrypts and signs the given plaintext with the keys, which were set with gnupg_addsignkey and gnupg_addencryptkey before and returns the encrypted and signed text.

参数

identifier

gnupg 标识符,由对 gnupg_init()gnupg 的调用生成。

plaintext

The text being encrypted.

返回值

On success, this function returns the encrypted and signed text. On failure, this function returns false.

示例

示例 #1 Procedural gnupg_encryptsign() example

<?php
$res
= gnupg_init();
gnupg_addencryptkey($res,"8660281B6051D071D94B5B230549F9DC851566DC");
gnupg_addsignkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
$enc = gnupg_encryptsign($res, "just a test");
echo
$enc;
?>

示例 #2 OO gnupg_encryptsign() example

<?php
$gpg
= new gnupg();
$gpg->addencryptkey("8660281B6051D071D94B5B230549F9DC851566DC");
$gpg->addsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
$enc = $gpg->encryptsign("just a test");
echo
$enc;
?>

添加备注

用户贡献的备注 1 note

up
0
upul at tfs dot co
1 year ago
$gpg->addencryptkey('Sender public key fingerprint ');
$gpg->addsignkey('My Private key fingerprint',$passphrase);
$enc = $gpg->encryptsign(test.csv);

With the above code file gets encrypted but the file does not get signed. moreover, if I use my public key fingerprint for addencryptkey file gets encrypted and signed. Any idea for this issue?
To Top