Podręcznik PHP
Poprzedni |  | Następny

# XLIX. gnupg Funkcje

# Wstęp

This module allows you to interact with gnupg.

Ostrzeżenie
Ten moduł jest w stadium EKSPERYMENTALNYM. Oznacza to, że zachowanie tych funkcji, ich nazwy, w zasadzie wszystko udokumentowane tutaj może zostać zmienione w przyszłych wersjach PHP bez wcześniejszego uprzedzenia. Używaj tego modułu na własne ryzyko.

# Wymagania

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

# Instalacja

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

# Stałe predefinopwane

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

# Notatki

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

# Przykłady

This example will clearsign a given text.

Przykład 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; ?>`

Przykład 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; ?>`

Poprzedni | Spis treści | Następny
gmp_xor | Początek rozdziału | gnupg_adddecryptkey