gnupg_keyinfo

(PECL gnupg >= 0.1)

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

Description

gnupg_keyinfo(resource $identifier, string $pattern): array|false

Parameters

identifier

The gnupg identifier, from a call to gnupg_init() or gnupg.

pattern

The pattern being checked against the keys.

Return Values

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

Examples

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);
?>

add a note add a note

User Contributed Notes 3 notes

up
8
fauger at NOSPAM dot anonymous dot com
11 years ago
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! ;)
up
2
gtisza at gmail dot com
9 years ago
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>,
),
?>
up
-5
porjo38 at yahoo dot com dot au
11 years ago
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.
To Top