This module allows you to interact with gnupg.
Warning |
This extension is
EXPERIMENTAL. The behaviour of this extension --
including the names of its functions and anything else documented
about this extension -- may change without notice in a future release of PHP.
Use this extension at your own risk. |
The gnupg extension requires PHP 4.3.
To use this extension in an OO style, PHP 5 is required.
This extension requires the gpgme
library
This extension makes use of the keyring of the current user. This keyring
is normally located in ~./.gnupg/.
To specify a custom location, store the path to the keyring in the
environment variable GNUPGHOME. See putenv for more information how to do
this.
Some functions require the specification of a key. This specification can
be anything that refers to an unique key (userid, key-id, fingerprint,
...).
This documentation uses the fingerprint in all examples.
This extension also comes with an Iterator for your keyring.
<?php // create a new iterator for listing all public keys that matches 'example' $iterator = new gnupg_keylistiterator("example"); foreach($iterator as $fingerprint => $userid){ echo $fingerprint." -> ".$userid."\n"; } ?>
|
This example will clearsign a given text.
Example 1. gnupg clearsign example (procedural)
<?php // init gnupg $res = gnupg_init(); // not really needed. Clearsign is default gnupg_setsignmode($res,GNUPG_SIG_MODE_CLEAR); // add key with passphrase 'test' for signing gnupg_addsignkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test"); // sign $signed = gnupg_sign("just a test"); echo $signed; ?>
|
|
Example 2. gnupg clearsign example (OO)
<?php // new class $gnupg = new gnupg(); // not really needed. Clearsign is default $gnupg->setsignmode(gnupg::SIG_MODE_CLEAR); // add key with passphrase 'test' for signing $gnupg->addsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test"); // sign $signed = $gnupg->sign("just a test"); echo $signed; ?>
|
|