Cet exemple signe en clair un texte donné.
Exemple #1 Exemple avec gnupg clearsign (Style procédural)
<?php
// Initialisation de gnupg
$res = gnupg_init();
// Pas vraiment nécessaire. Clearsign est par défaut.
gnupg_setsignmode($res,GNUPG_SIG_MODE_CLEAR);
// Ajoute une clé avec une passphrase 'test' pour signer
gnupg_addsignkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
// Signe
$signed = gnupg_sign($res,"just a test");
echo $signed;
?>
Exemple #2 Exemple avec gnupg clearsign (Style orienté objet)
<?php
// Nouvelle classe
$gnupg = new gnupg();
// Pas vraiment nécessaire. Clearsign est par défaut
$gnupg->setsignmode(gnupg::SIG_MODE_CLEAR);
// ajoute une clé avec une passphrase 'test' pour signer
$gnupg->addsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
// Signe
$signed = $gnupg->sign("just a test");
echo $signed;
?>
Exemple #3 keylistiterator
Cette extension vient aussi avec un Itérateur pour votre trousseau.
<?php
// Crée un nouvel itérateur pour lister toutes les clés publiques qui
// correspondent à 'exemple'
$iterator = new gnupg_keylistiterator("example");
foreach($iterator as $fingerprint => $userid){
echo $fingerprint." -> ".$userid."\n";
}
?>