PHP Handbuch
Zurück |  | Weiter

# LI. gnupg Funktionen

# Einführung

This module allows you to interact with gnupg.

Warnung
Diese Erweiterung ist EXPERIMENTELL. Das Verhalten dieser Erweiterung, einschließlich der Funktionsnamen, und alles Andere was hier dokumentiert ist, kann sich in zukünftigen PHP-Versionen ohne Ankündigung ändern. Seien Sie gewarnt und verwenden Sie diese Erweiterung auf eigenes Risiko.

# Anforderungen

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

# Installation

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

# Vordefinierte Konstanten

`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)

# Anmerkungen

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"; } ?>`

# Beispiele

This example will clearsign a given text.

Beispiel 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; ?>`

Beispiel 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; ?>`

Zurück | Zum Anfang | Weiter
gmp_xor | Nach oben | gnupg_adddecryptkey