gnupg_keyinfo

(PECL gnupg >= 0.1)

gnupg_keyinfoReturns an array with information about all keys that matches the given pattern

说明

array gnupg_keyinfo ( resource $identifier , string $pattern )

参数

identifier

gnupg 标识符,由对 gnupg_init()gnupg 的调用生成。

pattern

The pattern being checked against the keys.

返回值

Returns an array with information about all keys that matches the given pattern or FALSE, if an error has occurred.

范例

Example #1 Procedural gnupg_keyinfo() example

<?php
$res 
gnupg_init();
$info gnupg_keyinfo($res'test');
print_r($info);
?>

Example #2 OO gnupg_keyinfo() example

<?php
$gpg 
= new gnupg();
$info $gpg -> keyinfo("test");
print_r($info);
?>

User Contributed Notes

gtisza at gmail dot com 01-Aug-2015 10:31
Returns an array of information blocks. An information block looks like
<?php
array (
   
'disabled' => <bool>,
   
'expired' => <bool>,
   
'revoked' => <bool>,
   
'is_secret' => <bool>,
   
'can_sign' => <bool>,
   
'can_encrypt' => <bool>,
   
'uids' => <array of uid blocks>,
   
'subkeys' => <array of subkey blocks>,
)
?>
An uid data block looks like
<?php
array (
   
'name' => <string>,
   
'comment' => <string>,
   
'email' => <string>,
   
'uid' => <string>,
   
'revoked' => <bool>,
   
'invalid' => <bool>,
)
?>
A subkey block looks like
<?php
array (
   
'fingerprint' => <string>,
   
'keyid' => <string>,
   
'timestamp' => <int>,
   
'expires' => <int>,
   
'is_secret' => <bool>,
   
'invalid' => <bool>,
   
'can_encrypt' => <bool>,
   
'can_sign' => <bool>,
   
'disabled' => <bool>,
   
'expired' => <bool>,
   
'revoked' => <bool>,
),
?>
fauger at NOSPAM dot anonymous dot com 05-Jul-2013 04:54
You CAN list all keys in the keyring, you only have to pass an empty string ''.

<?php
$gpg
= new gnupg();
$info = $gpg -> keyinfo('');
print_r($info);
?>

That's it! ;)
porjo38 at yahoo dot com dot au 19-Feb-2013 07:00
It appears that listing *all* keys is not possible:

<?php
$gpg
-> keyinfo();   // throws an error
$gpg -> keyinfo('*');  // is matched literally, not treated as a shell wildcard
$gpg -> keyinfo('.*');  // is matched literally, not treated as a regex wildcard
?>

This seems like a glaring omission to me.