BlaBla.cn

PHP: gnupg - Manual

BlaBla.cn
gnupg_adddecryptkey > <gmp_xor
Last updated: Wed, 19 Mar 2008

gnupg 函数

简介

This module allows you to interact with » gnupg.

需求

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

安装

The gnupg-extension is not bundled with PHP. It is a » PECL extension and can be located here: » http://pecl.php.net/package/gnupg.

预定义常量

GNUPG_SIG_MODE_NORMAL ( integer)
GNUPG_SIG_MODE_DETACH ( integer)
GNUPG_SIG_MODE_CLEAR ( integer)
GNUPG_VALIDITY_UNKNOWN ( integer)
GNUPG_VALIDITY_UNDEFINED ( integer)
GNUPG_VALIDITY_NEVER ( integer)
GNUPG_VALIDITY_MARGINAL ( integer)
GNUPG_VALIDITY_FULL ( integer)
GNUPG_VALIDITY_ULTIMATE ( integer)
GNUPG_PROTOCOL_OpenPGP ( integer)
GNUPG_PROTOCOL_CMS ( integer)
GNUPG_SIGSUM_VALID ( integer)
GNUPG_SIGSUM_GREEN ( integer)
GNUPG_SIGSUM_RED ( integer)
GNUPG_SIGSUM_KEY_REVOKED ( integer)
GNUPG_SIGSUM_KEY_EXPIRED ( integer)
GNUPG_SIGSUM_KEY_MISSING ( integer)
GNUPG_SIGSUM_SIG_EXPIRED ( integer)
GNUPG_SIGSUM_CRL_MISSING ( integer)
GNUPG_SIGSUM_CRL_TOO_OLD ( integer)
GNUPG_SIGSUM_BAD_POLICY ( integer)
GNUPG_SIGSUM_SYS_ERROR ( integer)
GNUPG_ERROR_WARNING ( integer)
GNUPG_ERROR_EXCEPTION ( integer)
GNUPG_ERROR_SILENT ( integer)

注释

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.

keylistiterator

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 ( $res , "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 ;
?>

Table of Contents




gnupg_adddecryptkey > <gmp_xor
Last updated: Wed, 19 Mar 2008
 
 
BlaBla.cn

© 2005-2008 BlaBla.cn 版权所有