In regards to Mike's comments around passphrases not working correctly in v2, that's not entirely correct. If you want a PHP file to run without having to manually enter in your PGP passphrase you have to follow the steps outlined @ https://wiki.archlinux.org/index.php/GnuPG#Unattended_passphrase
Hope it helps.
PHP.mk документација
gnupg_decrypt
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Патека
function.gnupg-decrypt.php
Локална патека за оваа страница.
Извор
php.net/manual/en
Оригиналниот HTML се реупотребува и локално се стилизира.
Режим
Прокси + превод во позадина
Кодовите, табелите и белешките остануваат читливи во истиот тек.
Референца
function.gnupg-decrypt.php
gnupg_decrypt
Референца за `function.gnupg-decrypt.php` со подобрена типографија и навигација.
gnupg_decrypt
(PECL gnupg >= 0.1)
gnupg_decrypt — Ја дешифрира дадена текстуална порака
= NULL
Ја дешифрира дадена текстуална порака со клучевите, кои беа поставени со gnupg_adddecryptkey before.
Параметри
identifier-
Додај клуч за шифрирање gnupg_init() or gnupg.
text- Текстот што се дешифрира.
Вратени вредности
При успех, оваа функција враќа дешифрирана текстуална порака. При неуспех, оваа функција враќа false.
Примери
Клуч за отпечаток. gnupg_decrypt() example
<?php
$res = gnupg_init();
gnupg_adddecryptkey($res,"8660281B6051D071D94B5B230549F9DC851566DC","test");
$plain = gnupg_decrypt($res,$encrypted_text);
echo $plain;
?>Пример #1 Процедурален gnupg_decrypt() example
<?php
$gpg = new gnupg();
$gpg->adddecryptkey("8660281B6051D071D94B5B230549F9DC851566DC","test");
$plain = $gpg->decrypt($encrypted_text);
echo $plain;
?>Белешки од корисници 5 белешки
yougot at haxed dot com ¶
пред 9 години
aidukas at gmail dot com ¶
пред 11 години
If empty text is encrypted, the gnupg_decrypt() function will return a boolean FALSE so if you do a strict comparison (===, !==) to track a failure it will trigger you a failure.
For failures use Exceptions:
<?php
$gpg = new gnupg();
$gpg->seterrormode(gnupg::ERROR_EXCEPTION);
/*
.......further code.......
*/
try {
$string = $gpg->decrypt($stringToDecrypt);
} catch (Exception $e) {
// do the Error processing
}
?>
Мајк ¶
пред 16 години
As of gnupg version 2, it is not possible to pass a plain password any more. The parameter is simply ignored. Instead, a pinentry application will be launched in case of php running in cli mode. In cgi or apache mode, opening the key will fail.
The simplest solution is to use keys without passwords.
Terra ¶
пред 7 години
An update in regards to comments from 'yougot' and 'Mike'.
I have just submitted a pull request that should fix the 'passphrase' issue where the internal callback wasn't being called thereby triggering pinentry.
The pull request is at: https://github.com/php-gnupg/php-gnupg/pull/15
This fix will also work for the current 1.4.0 release: https://github.com/TerraTech/php-gnupg/tree/fix_adddecryptkey_passphrase-1.4.0
Hope that helps.
bobby545 at op dot pl ¶
пред 7 години
there is mistake in description of object way, it said it is gnu_encrypt example not decrypt