]>
git.sthu.org Git - pgp-tools.git/blob - keyanalyze/willy/party-table.pl
5 # Author: V. Alex Brennen <vab@cryptnet.net>
6 # http://www.cryptnet.net/people/vab/
9 # This script was written as part of the gpg keysigning
10 # party howto. It generates a checklist for individuals
11 # participating in a keysigning party. The keysigning
13 # http://www.cryptnet.net/fdp/crypto/gpg-party.html
17 print " \n Usage: party-table.pl <keyring> > out_file.html \n " ;
18 print " \n The keyring should be the keyring where the public keys for the \n " ;
19 print "party participants are stored. \n\n " ;
23 @fps = `gpg --fingerprint --no-default-keyring --keyring $ARGV [0]` ;
27 while ( $line = shift ( @fps ))
31 $key_info = substr ( $line , 5 , 14 );
32 ( $size_type , $id ) = split ( /\/ /, $key_info );
33 $size = substr ( $size_type , 0 , 4 );
34 $type = substr ( $size_type ,- 1 , 1 );
35 $owner = substr ( $line , 31 ,- 1 );
36 $fp_line = shift ( @fps );
37 ( $trash , $fp ) = split ( / = / , $fp_line );
39 ( $fp1 , $fp2 ) = split ( / / , $fp );
42 if ( $type eq "D" ){ $type = "DSA" ;}
43 elsif ( $type eq "R" ){ $type = "RSA" ;}
44 elsif ( $type eq "G" ){ $type = "ElG" ;}
60 print "<TABLE BORDER=1> \n " ;
61 print "<TR><TD>Key ID</TD><TD>Key Owner</TD><TD>Key Fingerprint</TD><TD>Key Size</TD><TD>Key Type</TD><TD>Key Info Matches?</TD><TD>Owner ID Matches?</TD></TR> \n " ;
63 foreach my $f ( sort { uc ( $a ->{ owner
}) cmp uc ( $b ->{ owner
})} @parsed )
72 print "<TR><TD> $id </TD><TD> $owner </TD><TD><tt> $fp1 $fp2 </tt></TD><TD> $size </TD>" ;
73 print "<TD> $type </TD><TD> </TD><TD> </TD></TR> \n " ;