gnupg 関数
導入
このモジュールにより、» gnupg を扱うことが可能となります。警告 |
この拡張モジュールは、
実験的 なものです。この拡張モジュールの動作・
関数名・その他ドキュメントに書かれている事項は、予告なく、将来的な PHP
のリリースにおいて変更される可能性があります。
このモジュールは自己責任で使用してください。 |
要件
gnupg 拡張モジュールは PHP 4.3 以降を必要とします。 この拡張モジュールをオブジェクト指向形式で使用するには、PHP 5 が必要です。この拡張モジュールは » gpgme ライブラリを必要とします。
インストール手順
gnupg 拡張モジュールは PHP にバンドルされていません。これは » PECL 拡張モジュールであり、 » 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)
注意
この拡張モジュールは、現在のユーザのキーリングを使用します。キーリングは、 通常は ~./.gnupg/ にあります。別の場所を指定するには、環境変数 GNUPGHOME にキーリングへのパスを格納します。その詳細な方法については putenv を参照ください。キーを特定する設定項目を必要とする関数も存在します。この設定項目は、何らかの ユニークなキー (ユーザ ID、キー ID、フィンガープリント、…) を参照します。 このドキュメントでは、すべての例でフィンガープリントを使用しています。
keylistiterator
この拡張モジュールでは、キーリングの内容を繰り返し処理することも可能です。
<?php
// 'example' にマッチするキーを抜き出して繰り返し処理をするイテレータを生成します
$iterator = new gnupg_keylistiterator("example");
foreach($iterator as $fingerprint => $userid){
echo $fingerprint." -> ".$userid."\n";
}
?>
例
この例は、指定したテキストに署名をします。例 763. gnupg での署名の例 (手続き型)
<?php
// gnupg を初期化します
$res = gnupg_init();
// 必須ではありません。Clearsign はデフォルト値です
gnupg_setsignmode($res,GNUPG_SIG_MODE_CLEAR);
// 署名のためのキーを、パスフレーズ 'test' で追加します
gnupg_addsignkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
// 署名します
$signed = gnupg_sign("just a test");
echo $signed;
?>
例 764. gnupg での署名の例 (オブジェクト指向)
<?php
// 新しいクラス
$gnupg = new gnupg();
// 必須ではありません。Clearsign はデフォルト値です
$gnupg->setsignmode(gnupg::SIG_MODE_CLEAR);
// 署名のためのキーを、パスフレーズ 'test' で追加します
$gnupg->addsignkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
// 署名します
$signed = $gnupg->sign("just a test");
echo $signed;
?>
目次
- gnupg_adddecryptkey — 復号のためのキーを追加する
- gnupg_addencryptkey — 暗号化のためのキーを追加する
- gnupg_addsignkey — 署名のためのキーを追加する
- gnupg_cleardecryptkeys — 事前に復号のために設定されたすべてのキーを削除する
- gnupg_clearencryptkeys — 事前に暗号化のために設定されたすべてのキーを削除する
- gnupg_clearsignkeys — 事前に署名のために設定されたすべてのキーを削除する
- gnupg_decrypt — 指定されたテキストを復号する
- gnupg_decryptverify — 指定されたテキストを復号し、検証する
- gnupg_encrypt — 指定したテキストを暗号化する
- gnupg_encryptsign — 指定したテキストを暗号化し、署名する
- gnupg_export — キーをエクスポートする
- gnupg_geterror — 関数が失敗した場合にエラー文字列を返す
- gnupg_getprotocol — すべての操作で現在アクティブなプロトコルを返す
- gnupg_import — キーをインポートする
- gnupg_keyinfo — 指定したパターンに一致するすべてのキーについての情報を配列で返す
- gnupg_setarmor — armor 形式を切り替える
- gnupg_seterrormode — エラー報告モードを設定する
- gnupg_setsignmode — 署名方式を設定する
- gnupg_sign — 指定したテキストに署名する
- gnupg_verify — 署名済みテキストを検証する
固有名詞の分類
Weblioに収録されているすべての辞書からgnupg 関数を検索する場合は、下記のリンクをクリックしてください。

- gnupg 関数のページへのリンク