See ChangeLog: Thu May 6 14:18:17 CEST 1999 Werner Koch
authorWerner Koch <wk@gnupg.org>
Thu, 6 May 1999 12:26:10 +0000 (12:26 +0000)
committerWerner Koch <wk@gnupg.org>
Thu, 6 May 1999 12:26:10 +0000 (12:26 +0000)
27 files changed:
BUGS
ChangeLog
OBUGS
README
THANKS
TODO
VERSION
checks/defs.inc
cipher/Makefile.am
doc/DETAILS
g10/ChangeLog
g10/build-packet.c
g10/g10.c
g10/getkey.c
g10/kbnode.c
g10/keyedit.c
g10/mainproc.c
g10/pkclist.c
g10/trustdb.c
g10/trustdb.h
po/de.po
po/es_ES.po
po/fr.po
po/it.po
po/pl.po
po/pt_BR.po
po/ru.po

diff --git a/BUGS b/BUGS
index ab9c95f..21ac85d 100644 (file)
--- a/BUGS
+++ b/BUGS
@@ -32,7 +32,7 @@ and after about half a day in the rsync snapshots.
        5. key has expiration date from 1. and gpg reports that pubkey
          and seckey differ.
      The for loop the exp.date is set before v3 detection?
-     [is this bug still there?]
+     [is this bug still alive?]
 
 [  *] #5
     /home/jam/.gnupg/pubring.gpg: can't open gdbm file: Can't be writer
@@ -48,22 +48,5 @@ and after about half a day in the rsync snapshots.
     --> IRIX bug still there
 
 
-[  *] #13 1999-04-05
-    Trying to generate very large keys fails with a BUG in read_pool()
-    FIX: 1999-04-06
-
-
-[  *] #14 1999-04-05 <anonymous>
-    If you use --s2k-cipher-algo twofish, the the program crashes with
-    a BUG at line 226 of passphrase.c.
-    FIX: 1999-04-06
-
-
-[ **] #15 1999-04-05
-    Hash calculation for subkey bindings is not according to rfc2440 if
-    a 4 byte length header is used for the subkey.
-    FIX: 1999-04-06
-
-
-Next #16
+Next #17
 
index 8ed66e3..5651415 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu May  6 14:18:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
+
+       * README: Minor updates
+
+       * VERSION: Now 0.9.6
+
 Thu Apr  8 09:35:53 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
 
        * acinclude.m4 (GNUPG_CHECK_RDYNAMIC): Fix for
diff --git a/OBUGS b/OBUGS
index dd15391..676f881 100644 (file)
--- a/OBUGS
+++ b/OBUGS
     gpg --list-secret-keys --with-colon SEGVs
     FIX: 1999-03-10
 
+[  *] #13 1999-04-05
+    Trying to generate very large keys fails with a BUG in read_pool()
+    FIX: 1999-04-06
+
+
+[  *] #14 1999-04-05 <anonymous>
+    If you use --s2k-cipher-algo twofish, the the program crashes with
+    a BUG at line 226 of passphrase.c.
+    FIX: 1999-04-06
+
+
+[ **] #15 1999-04-05
+    Hash calculation for subkey bindings is not according to rfc2440 if
+    a 4 byte length header is used for the subkey.
+    FIX: 1999-04-06
+
+[***] #16 1999-03-23 <jafo@tummy.com>
+    Verifying detached signatures with an empty file yields a rc of 0.
+    FIX: 1999-05-06
+
 
diff --git a/README b/README
index 2d02f52..b10e442 100644 (file)
--- a/README
+++ b/README
@@ -1,13 +1,8 @@
-Please note that this is only a bug fix release and some things
-do not yet work - see TODO for parts which are problematic
-
-
-
 -----BEGIN PGP SIGNED MESSAGE-----
 
                    GnuPG - The GNU Privacy Guard
                   -------------------------------
-                           Version 0.9
+                          Version 0.9.6
 
     GnuPG is now in Beta test and you should report all bugs to the
     mailing list (see below).  The 0.9.x versions are released mainly
@@ -17,29 +12,28 @@ do not yet work - see TODO for parts which are problematic
 
     GnuPG works best on GNU/Linux or *BSD.  Other Unices are
     also supported but are not as well tested as the Free Unices.
-    Please verify the tar file with the PGP2 or GnuPG/PGP5
+    Please verify the tar file with the PGP2 or OpenPGP
     signatures provided.  My PGP2 key is well known and published in
     the "Global Trust Register for 1998", ISBN 0-9532397-0-5.
 
     I have included my pubring as "g10/pubring.asc", which contains
     the key used to make GnuPG signatures:
+
     "pub  1024D/57548DCD 1998-07-07 Werner Koch (gnupg sig) <dd9jn@gnu.org>"
     "Key fingerprint = 6BD9 050F D8FC 941B 4341  2DCC 68B7 AB89 5754 8DCD"
 
-    My new DSA key is:
-    "pub  1024D/621CC013 1998-07-07 Werner Koch <werner.koch@guug.de>"
-    "Key fingerprint = ECAF 7590 EB34 43B5 C7CF  3ACB 6C7E E1B8 621C C013"
-
-    You may want add my new DSA key to your GnuPG pubring and use it in
+    You may want to add this DSA key to your GnuPG pubring and use it in
     the future to verify new releases. Because you verified this README
     file and _checked_that_it_is_really_my PGP2 key 0C9857A5, you can be
-    sure that the above fingerprints are correct.
+    quite sure that the above fingerprint is correct.
 
-    Please subscribe to g10@net.lut.ac.uk by sending a mail with
-    the word "subscribe" in the body to "g10-request@net.lut.ac.uk".
-    This mailing list is closed (only subscribers are allowed to post)
-    to avoid misuse by folks who don't know the Netiquette and trash
-    your mailspool with commercial junk.
+    Please subscribe to announce@gnupg.org by sending a mail with
+    a subject of "subscribe" to "announce-request@gnupg.org".  If you
+    have problems, please subscribe to "gnupg-users@gnupg.org" by sending
+    mail with the subject "subscribe" to "gnupg-users-request@gnupg.org"
+    and ask there.  The gnupg.org domain is hosted in Germany to avoid
+    possible legal problems with gnu.org (technical advices may count
+    as a violation of ITAR).
 
     See the file COPYING for copyright and warranty information.
 
@@ -72,9 +66,11 @@ do not yet work - see TODO for parts which are problematic
 
     3) "make install"
 
-    4) You end up with the binaries "gpg" and "gpgm" in /usr/local/bin.
+    4) You end up with a "gpg" binray in /usr/local/bin.
 
-    5) Optional, but suggested, install the binary "gpg" as suid root.
+    5) To avoid swapping out of sensitive data, you can install "gpg" as
+       suid root.  If you don't do so, you may want to add the option
+       "no-secmem-warning" to ~/.gnupg/options
 
 
 
@@ -230,7 +226,8 @@ do not yet work - see TODO for parts which are problematic
     key - different keys will always have different fingerprints.
     It is easy to compare fingerprints by phone and I suggest
     that you print your fingerprint on the back of your business
-    card.
+    card.  To see the fingerprints of the secondary keys, you can
+    give the command twice; but this is normally not needed.
 
     If you don't know the owner of the public key you are in trouble.
     Suppose however that friend of yours knows someone who knows someone
@@ -442,11 +439,11 @@ do not yet work - see TODO for parts which are problematic
     Have fun and remember: Echelon is looking at you kid.
 
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v0.9.2 (GNU/Linux)
+Version: GnuPG v0.9.5 (GNU/Linux)
 Comment: For info see http://www.gnupg.org
 
-iQB1AwUBNr2fPh0Z9MEMmFelAQHqNAL/e7pApR0CGUJ/zuIsjaVhNGPEgKAglcEd
-YuVdB+RCN0wq7ZfI0AHU2FdVISRACmSN3xituTTgeiOUsczM40EZ4l1XNfyRF768
-fglui6XxEeYHFY7mSQMgzzFWDG0Squx0
-=enRo
+iQB1AwUBNzFgoB0Z9MEMmFelAQG1EgL/UlmBc7X9UoSh0ge1FNSNncHQGIX8wHkG
+0BHOkcHS9XNxZokgkxoUTSRDFlXxW9auWpYKYeNkkck8S9ExtOJK6FABme6Daof0
+Hfe4E7TA82T73gvsMMlN6wyys3k5gTRt
+=FP1e
 -----END PGP SIGNATURE-----
diff --git a/THANKS b/THANKS
index 8fe47c1..082d85b 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -5,6 +5,7 @@ errors.
 
 Anand Kumria           wildfire@progsoc.uts.edu.au
 Ariel T Glenn          ariel@columbia.edu
+Bodo Moeller           Bodo_Moeller@public.uni-hamburg.de
 Bryan Fullerton        bryanf@samurai.com
 Brian Moore            bem@cmc.net
 Brian Warner           warner@lothar.com
diff --git a/TODO b/TODO
index dc2daaa..250c10d 100644 (file)
--- a/TODO
+++ b/TODO
@@ -2,8 +2,6 @@
   * add some status output put for signing and encryption.
     replace the putc in primegen with some kind of status-fd outputs.
 
-  * Fix revocation and expire stuff.  Subkey revocations are not detected.
-
   * Speed up calculation of key validity.
 
   * See why we always get this "Hmmm, public key not anymore available"
@@ -19,7 +17,6 @@
     encrypt package was found. Extension: display a list of all recipients.
 
   * Add NO_PUBKEY and NO_SECKEY status lines.
-  * Add more NODATA status lines
 
   * Solaris make has problems with the generated POTFILES - seems to be a
     gettext bug.
diff --git a/VERSION b/VERSION
index 278046e..85b7c69 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.9.5b
+0.9.6
index 7255fba..45d54df 100755 (executable)
@@ -60,7 +60,7 @@ chdir () {
 
 
 have_hash_algo () {
-  if  ../g10/gpgm --homedir .  --version | grep "Hash:.*$1" >/dev/null
+  if  ../g10/gpg --homedir .  --version | grep "Hash:.*$1" >/dev/null
   then
        true
   else
index b127816..a3b77a1 100644 (file)
@@ -41,7 +41,6 @@ libcipher_a_SOURCES = cipher.c        \
                 des.c          \
                 des.h          \
                 twofish.c      \
-                twofish.h      \
                 blowfish.c     \
                 blowfish.h     \
                 cast5.c        \
index 4641bf7..a681c2f 100644 (file)
@@ -77,6 +77,9 @@ more arguments in future versions.
     NODATA  <what>
        No data has been found. Codes for what are:
            1 - No armored data.
+           2 - Expected a packet but did not found one.
+           3 - Invalid packet found, this may indicate a non OpenPGP message.
+       You may see more than one of these status lines.
 
     TRUST_UNDEFINED
     TRUST_NEVER
index dc4d1e1..a29764a 100644 (file)
@@ -1,3 +1,15 @@
+Thu May  6 14:18:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
+
+       * trustdb.c (check_trust): Check for revoked subkeys.
+       * pkclist.c (do_we_trust): Handled revoked subkeys.
+       (do_we_trust_pre): Ditto.
+       (check_signatures_trust): Ditto.
+
+       * build-packet.c (hash_public_key): Fix for ancient g10 keys.
+
+       * mainproc.c (do_proc_packets): Return EOF if no data has been read.
+       * g10.c (main): Catch errors for default operation.
+
 Thu Apr 29 12:29:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
 
        * sign.c (sign_file): Fixed hashing in case of no subpackets.
index 285f115..7a2c106 100644 (file)
@@ -258,38 +258,42 @@ hash_public_key( MD_HANDLE md, PKT_public_key *pk )
     pkt.pkt.public_key = pk;
     if( (rc = build_packet( a, &pkt )) )
        log_fatal("build public_key for hashing failed: %s\n", g10_errstr(rc));
-    /* skip the constructed header */
-    ctb = iobuf_get_noeof(a);
-    pktlen = 0;
-    if( (ctb & 0x40) ) {
-       c = iobuf_get_noeof(a);
-       if( c < 192 )
-           pktlen = c;
-       else if( c < 224 ) {
-           pktlen = (c - 192) * 256;
+
+    if( !(pk->version == 3 && pk->pubkey_algo == 16) ) {
+       /* skip the constructed header but don't do this for our very old
+        * v3 ElG keys */
+       ctb = iobuf_get_noeof(a);
+       pktlen = 0;
+       if( (ctb & 0x40) ) {
            c = iobuf_get_noeof(a);
-           pktlen += c + 192;
-       }
-       else if( c == 255 ) {
-           pktlen  = iobuf_get_noeof(a) << 24;
-           pktlen |= iobuf_get_noeof(a) << 16;
-           pktlen |= iobuf_get_noeof(a) << 8;
-           pktlen |= iobuf_get_noeof(a);
+           if( c < 192 )
+               pktlen = c;
+           else if( c < 224 ) {
+               pktlen = (c - 192) * 256;
+               c = iobuf_get_noeof(a);
+               pktlen += c + 192;
+           }
+           else if( c == 255 ) {
+               pktlen  = iobuf_get_noeof(a) << 24;
+               pktlen |= iobuf_get_noeof(a) << 16;
+               pktlen |= iobuf_get_noeof(a) << 8;
+               pktlen |= iobuf_get_noeof(a);
+           }
        }
-    }
-    else {
-       int lenbytes = ((ctb&3)==3)? 0 : (1<<(ctb & 3));
-       for( ; lenbytes; lenbytes-- ) {
-           pktlen <<= 8;
-           pktlen |= iobuf_get_noeof(a);
+       else {
+           int lenbytes = ((ctb&3)==3)? 0 : (1<<(ctb & 3));
+           for( ; lenbytes; lenbytes-- ) {
+               pktlen <<= 8;
+               pktlen |= iobuf_get_noeof(a);
+           }
        }
+       /* hash a header */
+       md_putc( md, 0x99 );
+       pktlen &= 0xffff; /* can't handle longer packets */
+       md_putc( md, pktlen >> 8 );
+       md_putc( md, pktlen & 0xff );
     }
-    /* hash a header */
-    md_putc( md, 0x99 );
-    pktlen &= 0xffff; /* can't handle longer packets */
-    md_putc( md, pktlen >> 8 );
-    md_putc( md, pktlen & 0xff );
-    /* hash the packet body (don't use pktlen here!) */
+    /* hash the packet body */
     while( (c=iobuf_get(a)) != -1 ) {
       #if 0
        fprintf( fp," %02x", c );
index ab6a28d..945ed04 100644 (file)
--- a/g10/g10.c
+++ b/g10/g10.c
@@ -1243,7 +1243,9 @@ main( int argc, char **argv )
                set_packet_list_mode(1);
                opt.list_packets=1;
            }
-           proc_packets(NULL, a );
+           rc = proc_packets(NULL, a );
+           if( rc )
+               log_error("processing message failed: %s\n", g10_errstr(rc) );
            iobuf_close(a);
        }
        break;
index 505e1c0..4d747f8 100644 (file)
@@ -1438,7 +1438,8 @@ find_by_fpr( KBNODE keyblock, PKT_public_key *pk, const char *name, int mode )
                keyid_from_pk( k->pkt->pkt.public_key, aki );
                log_debug("         aki=%08lx%08lx algo=%d mode=%d an=%u\n",
                                (ulong)aki[0], (ulong)aki[1],
-                       k->pkt->pkt.public_key->pubkey_algo, mode, an );
+                       k->pkt->pkt.public_key->pubkey_algo, mode,
+                                                           (unsigned)an );
            }
 
            if( an == mode
@@ -1470,7 +1471,8 @@ find_by_fpr_sk( KBNODE keyblock, PKT_secret_key *sk,
                keyid_from_sk( k->pkt->pkt.secret_key, aki );
                log_debug("         aki=%08lx%08lx algo=%d mode=%d an=%u\n",
                                (ulong)aki[0], (ulong)aki[1],
-                       k->pkt->pkt.secret_key->pubkey_algo, mode, an );
+                       k->pkt->pkt.secret_key->pubkey_algo, mode,
+                                                       (unsigned)an );
            }
 
            if( an == mode
index 70c85f7..6bd5470 100644 (file)
@@ -302,7 +302,8 @@ dump_kbnode( KBNODE node )
            fputs("\"\n", stderr);
        }
        else if( node->pkt->pkttype == PKT_SIGNATURE ) {
-           fprintf(stderr, "  keyid=%08lX\n",
+           fprintf(stderr, "  class=%02x keyid=%08lX\n",
+                  node->pkt->pkt.signature->sig_class,
                   (ulong)node->pkt->pkt.signature->keyid[1] );
        }
        else if( node->pkt->pkttype == PKT_PUBLIC_KEY
index b2fb13d..85f3dfa 100644 (file)
@@ -122,8 +122,6 @@ check_all_keysigs( KBNODE keyblock, int only_selected )
     int anyuid = 0;
 
     for( kbctx=NULL; (node=walk_kbnode( keyblock, &kbctx, 0)) ; ) {
-       int is_rev = 0;
-
        if( node->pkt->pkttype == PKT_USER_ID ) {
            PKT_user_id *uid = node->pkt->pkt.user_id;
 
@@ -140,10 +138,11 @@ check_all_keysigs( KBNODE keyblock, int only_selected )
            }
        }
        else if( selected && node->pkt->pkttype == PKT_SIGNATURE
-                && (node->pkt->pkt.signature->sig_class&~3) == 0x10
-                && (is_rev = node->pkt->pkt.signature->sig_class == 0x30) ) {
+                && ( (node->pkt->pkt.signature->sig_class&~3) == 0x10
+                    || node->pkt->pkt.signature->sig_class == 0x30 )  ) {
            PKT_signature *sig = node->pkt->pkt.signature;
            int sigrc, selfsig;
+           int is_rev = sig->sig_class == 0x30;
 
            switch( (rc = check_key_signature( keyblock, node, &selfsig)) ) {
              case 0:
@@ -956,7 +955,7 @@ show_key_with_all_names( KBNODE keyblock, int only_marked,
                         int with_fpr, int with_subkeys, int with_prefs )
 {
     KBNODE node;
-    int i;
+    int i, rc;
 
     /* the keys */
     for( node = keyblock; node; node = node->next ) {
@@ -1001,6 +1000,20 @@ show_key_with_all_names( KBNODE keyblock, int only_marked,
                          datestr_from_sk(sk),
                          expirestr_from_sk(sk) );
        }
+       else if( with_subkeys && node->pkt->pkttype == PKT_SIGNATURE
+                && node->pkt->pkt.signature->sig_class == 0x28       ) {
+           PKT_signature *sig = node->pkt->pkt.signature;
+
+           rc = check_key_signature( keyblock, node, NULL );
+           if( !rc )
+               tty_printf( "rev! subkey has been revoked: %s\n",
+                           datestr_from_sig( sig ) );
+           else if( rc == G10ERR_BAD_SIGN )
+               tty_printf( "rev- faked revocation found\n" );
+           else if( rc )
+               tty_printf( "rev? problem checking revocation: %s\n",
+                                                        g10_errstr(rc) );
+       }
     }
     /* the user ids */
     i = 0;
@@ -1677,7 +1690,7 @@ menu_revsig( KBNODE keyblock )
        pkt = m_alloc_clear( sizeof *pkt );
        pkt->pkttype = PKT_SIGNATURE;
        pkt->pkt.signature = sig;
-       insert_kbnode( unode, new_kbnode(pkt), PKT_SIGNATURE );
+       insert_kbnode( unode, new_kbnode(pkt), 0 );
        goto reloop;
     }
 
@@ -1701,7 +1714,7 @@ menu_revkey( KBNODE pub_keyblock, KBNODE sec_keyblock )
     int upd_trust = 0;
     int rc;
 
-  reloop: /* (better this way becuase we are modifing the keyring) */
+  reloop: /* (better this way because we are modifing the keyring) */
     mainpk = pub_keyblock->pkt->pkt.public_key;
     for( node = pub_keyblock; node; node = node->next ) {
        if( node->pkt->pkttype == PKT_PUBLIC_SUBKEY
@@ -1726,7 +1739,7 @@ menu_revkey( KBNODE pub_keyblock, KBNODE sec_keyblock )
            pkt = m_alloc_clear( sizeof *pkt );
            pkt->pkttype = PKT_SIGNATURE;
            pkt->pkt.signature = sig;
-           insert_kbnode( node, new_kbnode(pkt), PKT_SIGNATURE );
+           insert_kbnode( node, new_kbnode(pkt), 0 );
            goto reloop;
        }
     }
index 024674e..9bfdaaf 100644 (file)
@@ -215,7 +215,7 @@ proc_pubkey_enc( CTX c, PACKET *pkt )
     else {
        /* fixme: defer this message until we have parsed all packets of
         * this type - do this by building a list of keys with their stati
-        * and store it with the conetxt.  do_proc_packets can then use
+        * and store it with the context.  do_proc_packets can then use
         * this list to display some information */
        log_error(_("public key decryption failed: %s\n"), g10_errstr(result));
     }
@@ -307,7 +307,7 @@ proc_plaintext( CTX c, PACKET *pkt )
        md_enable( c->mfx.md, DIGEST_ALGO_SHA1 );
        md_enable( c->mfx.md, DIGEST_ALGO_MD5 );
     }
-  #if 1
+  #if 0
     #warning md_start_debug is enabled
     md_start_debug( c->mfx.md, "verify" );
   #endif
@@ -753,12 +753,13 @@ do_proc_packets( CTX c, IOBUF a )
 {
     PACKET *pkt = m_alloc( sizeof *pkt );
     int rc=0;
+    int any_data=0;
     int newpkt;
 
     c->iobuf = a;
     init_packet(pkt);
     while( (rc=parse_packet(a, pkt)) != -1 ) {
-
+       any_data = 1;
        if( rc ) {
            free_packet(pkt);
            if( rc == G10ERR_INVALID_PACKET )
@@ -844,7 +845,13 @@ do_proc_packets( CTX c, IOBUF a )
        else
            free_packet(pkt);
     }
-    rc = 0;
+    if( rc == G10ERR_INVALID_PACKET )
+       write_status_text( STATUS_NODATA, "3" );
+    if( any_data )
+       rc = 0;
+    else if( rc == -1 )
+       write_status_text( STATUS_NODATA, "2" );
+
 
   leave:
     release_list( c );
index 73e8f38..f873be4 100644 (file)
@@ -287,6 +287,16 @@ do_we_trust( PKT_public_key *pk, int trustlevel )
                                    _("Use this key anyway? ")) )
            return 0;
     }
+    else if( (trustlevel & TRUST_FLAG_SUB_REVOKED) ) {
+       log_info(_("key %08lX: subkey has been revoked!\n"),
+                                       (ulong)keyid_from_pk( pk, NULL) );
+       if( opt.batch )
+           return 0;
+
+       if( !cpr_get_answer_is_yes("revoked_key.override",
+                                   _("Use this key anyway? ")) )
+           return 0;
+    }
 
 
     switch( (trustlevel & TRUST_MASK) ) {
@@ -368,6 +378,8 @@ do_we_trust_pre( PKT_public_key *pk, int trustlevel )
 
     if( (trustlevel & TRUST_FLAG_REVOKED) && !rc )
        return 0;
+    if( (trustlevel & TRUST_FLAG_SUB_REVOKED) && !rc )
+       return 0;
     else if( !opt.batch && !rc ) {
        char *p;
        u32 keyid[2];
@@ -435,6 +447,10 @@ check_signatures_trust( PKT_signature *sig )
        log_info(_("WARNING: This key has been revoked by its owner!\n"));
        log_info(_("         This could mean that the signature is forgery.\n"));
     }
+    else if( (trustlevel & TRUST_FLAG_SUB_REVOKED) ) {
+       write_status( STATUS_KEYREVOKED );
+       log_info(_("WARNING: This subkey has been revoked by its owner!\n"));
+    }
 
 
     switch( (trustlevel & TRUST_MASK) ) {
index 88e06c3..9f12757 100644 (file)
@@ -2780,6 +2780,36 @@ check_trust( PKT_public_key *pk, unsigned *r_trustlevel,
        }
     }
 
+    /* is a subkey has been requested, we have to check its keyflags */
+    if( !rc ) {
+       TRUSTREC krec;
+       byte fpr[MAX_FINGERPRINT_LEN] = {0}; /* to avoid compiler warnings */
+       size_t fprlen = 0;
+       ulong recno;
+       int kcount=0;
+
+       for( recno = rec.r.dir.keylist; recno; recno = krec.r.key.next ) {
+           read_record( recno, &krec, RECTYPE_KEY );
+           if( ++kcount == 1 )
+               continue; /* skip the primary key */
+           if( kcount == 2 ) /* now we need the fingerprint */
+               fingerprint_from_pk( pk, fpr, &fprlen );
+
+           if( krec.r.key.fingerprint_len == fprlen
+               && !memcmp( krec.r.key.fingerprint, fpr, fprlen ) ) {
+               /* found the subkey */
+               if( (krec.r.key.keyflags & KEYF_REVOKED) )
+                   trustlevel |= TRUST_FLAG_SUB_REVOKED;
+               /* should we check for keybinding here??? */
+               /* Hmmm: Maybe this whole checking stuff should not go
+                * into the trustdb, but be done direct from the keyblock.
+                * Chnage this all when we add an abstarction layer around
+                * the way certificates are handled by different standards */
+               break;
+           }
+       }
+    }
+
 
   leave:
     if( DBG_TRUST )
index 64ccaae..777c474 100644 (file)
@@ -33,6 +33,7 @@
 #define TRUST_ULTIMATE   6  /* u: ultimately trusted */
 /* trust values not covered by the mask */
 #define TRUST_FLAG_REVOKED 32 /* r: revoked */
+#define TRUST_FLAG_SUB_REVOKED 64
 
 
 #define PREFTYPE_SYM     1
index 9103247..8df0450 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -3,7 +3,7 @@
 # Walter Koch <walterk@dip.de>, 1998.
 msgid ""
 msgstr ""
-"POT-Creation-Date: 1999-03-20 13:40+0100\n"
+"POT-Creation-Date: 1999-05-06 13:37+0200\n"
 "PO-Revision-Date: 1999-03-08 13:34+0100\n"
 "Last-Translator: Walter Koch <walterk@mail.dip.de>\n"
 "Language-Team: German <de@li.org>\n"
@@ -35,11 +35,11 @@ msgid "(you may have used the wrong program for this task)\n"
 msgstr ""
 "(möglicherweise haben Sie das falsche Programm für diese Aufgabe benutzt)\n"
 
-#: util/miscutil.c:143
+#: util/miscutil.c:156
 msgid "yes"
 msgstr "ja"
 
-#: util/miscutil.c:144
+#: util/miscutil.c:157
 msgid "yY"
 msgstr "jJyY"
 
@@ -231,6 +231,11 @@ msgstr "Nicht unterst
 msgid "network error"
 msgstr "Netzwerkfehler"
 
+#: util/errors.c:102
+#, fuzzy
+msgid "not encrypted"
+msgstr "%s verschlüsselte Daten\n"
+
 #: util/logger.c:178
 #, c-format
 msgid "... this is a bug (%s:%d:%s)\n"
@@ -241,12 +246,12 @@ msgstr "... dies ist ein Bug (Programmfehler) (%s:%d:%s)\n"
 msgid "you found a bug ... (%s:%d)\n"
 msgstr "Sie haben eine Bug (Programmfehler) gefunden ... (%s:%d)\n"
 
-#: cipher/random.c:403
+#: cipher/random.c:408
 msgid "WARNING: using insecure random number generator!!\n"
 msgstr ""
 "WARNUNG: Der Zufallszahlengenerator erzeugt keine echten Zufallszahlen!\n"
 
-#: cipher/random.c:404
+#: cipher/random.c:409
 msgid ""
 "The random number generator is only a kludge to let\n"
 "it run - it is in no way a strong RNG!\n"
@@ -272,7 +277,7 @@ msgstr ""
 "Arbeiten durch, damit das Betriebssystem weitere Entropie sammeln kann!\n"
 "(Es werden noch %d Byte benötigt.)\n"
 
-#: g10/g10.c:166
+#: g10/g10.c:163
 msgid ""
 "@Commands:\n"
 " "
@@ -280,132 +285,132 @@ msgstr ""
 "@Befehle:\n"
 " "
 
-#: g10/g10.c:169
+#: g10/g10.c:165
 msgid "|[file]|make a signature"
 msgstr "|[file]|Eine Unterschrift erzeugen"
 
-#: g10/g10.c:170
+#: g10/g10.c:166
 msgid "|[file]|make a clear text signature"
 msgstr "|[file]|Eine Klartextunterschrift erzeugen"
 
-#: g10/g10.c:171
+#: g10/g10.c:167
 msgid "make a detached signature"
 msgstr "Eine abgetrennte Unterschrift erzeugen"
 
-#: g10/g10.c:172
+#: g10/g10.c:168
 msgid "encrypt data"
 msgstr "Daten verschlüsseln"
 
-#: g10/g10.c:173
+#: g10/g10.c:169
 msgid "encryption only with symmetric cipher"
 msgstr "Daten symmetrisch verschlüsseln"
 
-#: g10/g10.c:174
+#: g10/g10.c:170
 msgid "store only"
 msgstr "Nur speichern"
 
-#: g10/g10.c:175
+#: g10/g10.c:171
 msgid "decrypt data (default)"
 msgstr "Daten entschlüsseln (Voreinstellung)"
 
-#: g10/g10.c:176
+#: g10/g10.c:172
 msgid "verify a signature"
 msgstr "Signatur prüfen"
 
-#: g10/g10.c:178
+#: g10/g10.c:173
 msgid "list keys"
 msgstr "Liste der Schlüssel"
 
-#: g10/g10.c:179
+#: g10/g10.c:175
 msgid "list keys and signatures"
 msgstr "Liste der Schlüssel und ihrer Signaturen"
 
-#: g10/g10.c:180
+#: g10/g10.c:176
 msgid "check key signatures"
 msgstr "Signaturen der Schlüssel prüfen"
 
-#: g10/g10.c:181
+#: g10/g10.c:177
 msgid "list keys and fingerprints"
 msgstr "Liste der Schlüssel und ihrer \"Fingerabdrücke\""
 
-#: g10/g10.c:182
+#: g10/g10.c:178
 msgid "list secret keys"
 msgstr "Liste der geheimen Schlüssel"
 
-#: g10/g10.c:184
+#: g10/g10.c:179
 msgid "generate a new key pair"
 msgstr "Ein neues Schlüsselpaar erzeugen"
 
-#: g10/g10.c:186
+#: g10/g10.c:180
 msgid "remove key from the public keyring"
 msgstr "Schlüssel entfernen"
 
-#: g10/g10.c:188
+#: g10/g10.c:181
 msgid "sign or edit a key"
 msgstr "Unterschreiben oder Bearbeiten eines Schlüssels"
 
-#: g10/g10.c:189
+#: g10/g10.c:182
 msgid "generate a revocation certificate"
 msgstr "Ein Schlüsselwiderruf-Zertifikat erzeugen"
 
-#: g10/g10.c:191
+#: g10/g10.c:183
 msgid "export keys"
 msgstr "Schlüssel exportieren"
 
-#: g10/g10.c:192
+#: g10/g10.c:184
 msgid "export keys to a key server"
 msgstr "Schlüssel zu einem Schlüsselserver exportieren"
 
-#: g10/g10.c:193
+#: g10/g10.c:185
 #, fuzzy
 msgid "import keys from a key server"
 msgstr "Schlüssel zu einem Schlüsselserver exportieren"
 
-#: g10/g10.c:196
+#: g10/g10.c:188
 msgid "import/merge keys"
 msgstr "Schlüssel importieren/kombinieren"
 
-#: g10/g10.c:198
+#: g10/g10.c:190
 msgid "list only the sequence of packets"
 msgstr "Lediglich die Struktur der Datenpakete anzeigen"
 
-#: g10/g10.c:201
+#: g10/g10.c:192
 msgid "export the ownertrust values"
 msgstr "Exportieren der \"Owner trust\" Werte"
 
-#: g10/g10.c:203
+#: g10/g10.c:194
 msgid "import ownertrust values"
 msgstr "Importieren der \"Owner trust\" Werte"
 
-#: g10/g10.c:205
+#: g10/g10.c:196
 msgid "|[NAMES]|update the trust database"
 msgstr "|[NAMES]|Ändern der \"Trust\"-Datenbank"
 
-#: g10/g10.c:207
+#: g10/g10.c:198
 msgid "|[NAMES]|check the trust database"
 msgstr "|[NAMES]|Überprüfen der \"Trust\"-Datenbank"
 
-#: g10/g10.c:208
+#: g10/g10.c:199
 msgid "fix a corrupted trust database"
 msgstr "Reparieren einer beschädigten \"Trust\"-Datenbank"
 
-#: g10/g10.c:209
+#: g10/g10.c:200
 msgid "De-Armor a file or stdin"
 msgstr "Datei oder stdin von der ASCII-Hülle befreien"
 
-#: g10/g10.c:210
+#: g10/g10.c:201
 msgid "En-Armor a file or stdin"
 msgstr "Datei oder stdin in eine ASCII-Hülle einpacken"
 
-#: g10/g10.c:211
+#: g10/g10.c:202
 msgid "|algo [files]|print message digests"
 msgstr "|algo [files]|Message-Digests für die Dateien ausgeben"
 
-#: g10/g10.c:212
+#: g10/g10.c:203
 msgid "print all message digests"
 msgstr "Message-Digests für die Eingabedaten ausgeben"
 
-#: g10/g10.c:219
+#: g10/g10.c:209
 msgid ""
 "@\n"
 "Options:\n"
@@ -415,143 +420,148 @@ msgstr ""
 "Optionen:\n"
 " "
 
-#: g10/g10.c:221
+#: g10/g10.c:211
 msgid "create ascii armored output"
 msgstr "Ausgabe mit ASCII-Hülle versehen"
 
-#: g10/g10.c:222
+#: g10/g10.c:212
 msgid "|NAME|encrypt for NAME"
 msgstr "|NAME|verschlüsseln für NAME"
 
-#: g10/g10.c:227
+#: g10/g10.c:216
 msgid "use this user-id to sign or decrypt"
 msgstr "Mit dieser User-ID signieren"
 
-#: g10/g10.c:228
+#: g10/g10.c:217
 msgid "|N|set compress level N (0 disables)"
 msgstr "Kompressionsstufe auf N setzen (0 = keine Kompr.)"
 
-#: g10/g10.c:230
+#: g10/g10.c:219
 msgid "use canonical text mode"
 msgstr "Textmodus benutzen"
 
-#: g10/g10.c:232
+#: g10/g10.c:220
 msgid "use as output file"
 msgstr "Als Ausgabedatei benutzen"
 
-#: g10/g10.c:233
+#: g10/g10.c:221
 msgid "verbose"
 msgstr "Detaillierte Informationen"
 
-#: g10/g10.c:234
+#: g10/g10.c:222
 msgid "be somewhat more quiet"
 msgstr "Etwas weniger Infos"
 
-#: g10/g10.c:235
+#: g10/g10.c:223
 msgid "force v3 signatures"
 msgstr "v3 Signaturen erzwingen"
 
-#: g10/g10.c:236
+#: g10/g10.c:224
+#, fuzzy
+msgid "always use a MDC for encryption"
+msgstr "Verschlüsseln für diese User-ID"
+
+#: g10/g10.c:225
 msgid "do not make any changes"
 msgstr "Keine wirklichen Änderungen durchführen"
 
-#: g10/g10.c:237
+#: g10/g10.c:226
 msgid "batch mode: never ask"
 msgstr "Stapelmodus: Keine Abfragen"
 
-#: g10/g10.c:238
+#: g10/g10.c:227
 msgid "assume yes on most questions"
 msgstr "\"Ja\" als Standardantwort annehmen"
 
-#: g10/g10.c:239
+#: g10/g10.c:228
 msgid "assume no on most questions"
 msgstr "\"Nein\" als Standardantwort annehmen"
 
-#: g10/g10.c:240
+#: g10/g10.c:229
 msgid "add this keyring to the list of keyrings"
 msgstr "Als öffentlichen Schlüsselbund mitbenutzen"
 
-#: g10/g10.c:241
+#: g10/g10.c:230
 msgid "add this secret keyring to the list"
 msgstr "Als geheimen Schlüsselbund mitbenutzen"
 
-#: g10/g10.c:242
+#: g10/g10.c:231
 msgid "|NAME|use NAME as default secret key"
 msgstr "|NAME|NAME als voreingestellten Schlüssel benutzen"
 
-#: g10/g10.c:243
+#: g10/g10.c:232
 msgid "|HOST|use this keyserver to lookup keys"
 msgstr "|HOST|diesen Schlüsselserver zur Suche verwenden"
 
-#: g10/g10.c:244
+#: g10/g10.c:233
 msgid "|NAME|set terminal charset to NAME"
 msgstr "|NAME|Terminalzeichensatz NAME benutzen"
 
-#: g10/g10.c:245
+#: g10/g10.c:234
 msgid "read options from file"
 msgstr "Optionen aus der Datei lesen"
 
-#: g10/g10.c:247
+#: g10/g10.c:236
 msgid "set debugging flags"
 msgstr "Debug-Flags einschalten"
 
-#: g10/g10.c:248
+#: g10/g10.c:237
 msgid "enable full debugging"
 msgstr "Alle Debug-Flags einschalten"
 
-#: g10/g10.c:249
+#: g10/g10.c:238
 msgid "|FD|write status info to this FD"
 msgstr "|FD|Statusinfo auf FD (Dateihandle) ausgeben"
 
-#: g10/g10.c:250
+#: g10/g10.c:239
 msgid "do not write comment packets"
 msgstr "Keine Kommentarpakete schreiben"
 
-#: g10/g10.c:251
+#: g10/g10.c:240
 msgid "(default is 1)"
 msgstr "Benötigte Vollvertrauen (Voreinstellung 1)"
 
-#: g10/g10.c:252
+#: g10/g10.c:241
 msgid "(default is 3)"
 msgstr "Benötigte Teilvertrauen (Voreinstellung 3)"
 
-#: g10/g10.c:254
+#: g10/g10.c:243
 msgid "|FILE|load extension module FILE"
 msgstr "|FILE|Erweiterungsmodul DATEI laden"
 
-#: g10/g10.c:255
+#: g10/g10.c:244
 msgid "emulate the mode described in RFC1991"
 msgstr "Den in RFC1991 beschriebenen Modus nachahmen"
 
-#: g10/g10.c:256
+#: g10/g10.c:245
 msgid "|N|use passphrase mode N"
 msgstr "|N|Verwenden des Mantra-Modus N"
 
-#: g10/g10.c:258
+#: g10/g10.c:247
 msgid "|NAME|use message digest algorithm NAME for passphrases"
 msgstr "|NAME|Das Hashverfahren NAME für Mantras benutzen"
 
-#: g10/g10.c:260
+#: g10/g10.c:249
 msgid "|NAME|use cipher algorithm NAME for passphrases"
 msgstr "|NAME|Das Verschlü.verfahren NAME für Mantras benutzen"
 
-#: g10/g10.c:262
+#: g10/g10.c:250
 msgid "|NAME|use cipher algorithm NAME"
 msgstr "|NAME|Das Verschlü.verfahren NAME benutzen"
 
-#: g10/g10.c:263
+#: g10/g10.c:251
 msgid "|NAME|use message digest algorithm NAME"
 msgstr "|NAME|Das Hashverfahren NAME benutzen"
 
-#: g10/g10.c:264
+#: g10/g10.c:252
 msgid "|N|use compress algorithm N"
 msgstr "|N|Die Komprimierverfahren N benutzen"
 
-#: g10/g10.c:265
+#: g10/g10.c:253
 msgid "throw keyid field of encrypted packets"
 msgstr "entferne die Absender-ID verschlüsselter Pakete"
 
-#: g10/g10.c:273
+#: g10/g10.c:255
 msgid ""
 "@\n"
 "Examples:\n"
@@ -571,27 +581,15 @@ msgstr ""
 " --list-keys [Namen]        Schlüssel anzeigen\n"
 " --fingerprint [Namen]      \"Fingerabdrücke\" anzeigen\n"
 
-#: g10/g10.c:353
+#: g10/g10.c:323
 msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
 msgstr "Berichte über Bugs (Programmfehler) bitte an <gnupg-bugs@gnu.org>.\n"
 
-#: g10/g10.c:358
-msgid "Usage: gpgm [options] [files] (-h for help)"
-msgstr "Syntax: gpgm [Optionen] [Dateien] (-h für Hilfe)"
-
-#: g10/g10.c:360
+#: g10/g10.c:327
 msgid "Usage: gpg [options] [files] (-h for help)"
 msgstr "Aufruf: gpg [Optionen] [Dateien] (-h für Hilfe)"
 
-#: g10/g10.c:365
-msgid ""
-"Syntax: gpgm [options] [files]\n"
-"GnuPG maintenance utility\n"
-msgstr ""
-"Syntax: gpgm [options] [files]\n"
-"GnuPG Wartungs-Hilfsprogramm\n"
-
-#: g10/g10.c:368
+#: g10/g10.c:330
 msgid ""
 "Syntax: gpg [options] [files]\n"
 "sign, check, encrypt or decrypt\n"
@@ -601,7 +599,7 @@ msgstr ""
 "Signieren, prüfen, verschlüsseln, entschlüsseln\n"
 "Die voreingestellte Operation ist abhängig von den Eingabedaten\n"
 
-#: g10/g10.c:374
+#: g10/g10.c:335
 msgid ""
 "\n"
 "Supported algorithms:\n"
@@ -609,222 +607,218 @@ msgstr ""
 "\n"
 "Unterstützte Verfahren:\n"
 
-#: g10/g10.c:449
-msgid "usage: gpgm [options] "
-msgstr "Aufruf: gpgm [Optionen] "
-
-#: g10/g10.c:451
+#: g10/g10.c:409
 msgid "usage: gpg [options] "
 msgstr "Aufruf: gpg [Optionen] "
 
-#: g10/g10.c:492
+#: g10/g10.c:449
 msgid "conflicting commands\n"
 msgstr "Widersprüchliche Befehle\n"
 
-#: g10/g10.c:631
+#: g10/g10.c:576
 #, c-format
 msgid "NOTE: no default option file `%s'\n"
 msgstr "Hinweis: Keine voreingestellte Optionendatei '%s' vorhanden\n"
 
-#: g10/g10.c:635
+#: g10/g10.c:580
 #, c-format
 msgid "option file `%s': %s\n"
 msgstr "Optionendatei '%s': %s\n"
 
-#: g10/g10.c:642
+#: g10/g10.c:587
 #, c-format
 msgid "reading options from `%s'\n"
 msgstr "Optionen werden aus '%s' gelesen\n"
 
-#: g10/g10.c:797
+#: g10/g10.c:731
 #, c-format
 msgid "%s is not a valid character set\n"
 msgstr "%s ist kein gültiger Zeichensatz.\n"
 
-#: g10/g10.c:838 g10/g10.c:850
+#: g10/g10.c:774 g10/g10.c:786
 msgid "selected cipher algorithm is invalid\n"
 msgstr "Das ausgewählte Verschlüsslungsverfahren ist ungültig\n"
 
-#: g10/g10.c:844 g10/g10.c:856
+#: g10/g10.c:780 g10/g10.c:792
 msgid "selected digest algorithm is invalid\n"
 msgstr "Das ausgewählte Hashverfahren ist ungültig\n"
 
-#: g10/g10.c:859
+#: g10/g10.c:795
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "Das Komprimierverfahren muß im Bereich %d bis %d liegen\n"
 
-#: g10/g10.c:861
+#: g10/g10.c:797
 msgid "completes-needed must be greater than 0\n"
 msgstr "completes-needed müssen größer als 0 sein\n"
 
-#: g10/g10.c:863
+#: g10/g10.c:799
 msgid "marginals-needed must be greater than 1\n"
 msgstr "marginals-needed müssen größer als 1 sein\n"
 
-#: g10/g10.c:865
+#: g10/g10.c:801
 msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr "max-cert-depth muß im Bereich 1 bis 255 liegen\n"
 
-#: g10/g10.c:868
+#: g10/g10.c:804
 msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr "Hinweis: Vom \"simple S2K\"-Modus (0) ist strikt abzuraten\n"
 
-#: g10/g10.c:872
+#: g10/g10.c:808
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr "ungültiger \"simple S2K\"-Modus; Wert muß 0, 1 oder 3 sein\n"
 
-#: g10/g10.c:949
+#: g10/g10.c:885
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "Die Trust-DB kann nicht initialisiert werden: %s\n"
 
-#: g10/g10.c:955
+#: g10/g10.c:891
 msgid "--store [filename]"
 msgstr "--store [Dateiname]"
 
-#: g10/g10.c:963
+#: g10/g10.c:898
 msgid "--symmetric [filename]"
 msgstr "--symmetric [Dateiname]"
 
-#: g10/g10.c:971
+#: g10/g10.c:906
 msgid "--encrypt [filename]"
 msgstr "--encrypt [Dateiname]"
 
-#: g10/g10.c:984
+#: g10/g10.c:919
 msgid "--sign [filename]"
 msgstr "--sign [Dateiname]"
 
-#: g10/g10.c:997
+#: g10/g10.c:932
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [Dateiname]"
 
-#: g10/g10.c:1011
+#: g10/g10.c:946
 msgid "--clearsign [filename]"
 msgstr "--clearsign [Dateiname]"
 
-#: g10/g10.c:1023
+#: g10/g10.c:958
 msgid "--decrypt [filename]"
 msgstr "--decrypt [Dateiname]"
 
-#: g10/g10.c:1032
+#: g10/g10.c:967
 msgid "--edit-key username [commands]"
 msgstr "--edit-key Username [Befehle]"
 
-#: g10/g10.c:1048
+#: g10/g10.c:981
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key Username"
 
-#: g10/g10.c:1051
+#: g10/g10.c:984
 msgid "--delete-key username"
 msgstr "--delete-key Benutzername"
 
-#: g10/encode.c:229 g10/g10.c:1074 g10/sign.c:311
+#: g10/encode.c:234 g10/g10.c:1007 g10/sign.c:311
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "'%s' kann nicht geöffnet werden: %s\n"
 
-#: g10/g10.c:1085
+#: g10/g10.c:1018
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [Benutzername] [Keyring]"
 
-#: g10/g10.c:1149
+#: g10/g10.c:1077
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "Entfernen der ASCII-Hülle ist fehlgeschlagen: %s\n"
 
-#: g10/g10.c:1157
+#: g10/g10.c:1085
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "Anbringen der ASCII-Hülle ist fehlgeschlagen: %s\n"
 
-#: g10/g10.c:1223
+#: g10/g10.c:1151
 #, c-format
 msgid "invalid hash algorithm `%s'\n"
 msgstr "Ungültiges Hashverfahren '%s'\n"
 
-#: g10/g10.c:1302
+#: g10/g10.c:1226
 msgid "[filename]"
 msgstr "[Dateiname]"
 
-#: g10/g10.c:1306
+#: g10/g10.c:1230
 msgid "Go ahead and type your message ...\n"
 msgstr "Auf geht's - Botschaft eintippen ...\n"
 
-#: g10/decrypt.c:59 g10/g10.c:1309 g10/verify.c:66
+#: g10/decrypt.c:59 g10/g10.c:1233 g10/verify.c:66
 #, c-format
 msgid "can't open `%s'\n"
 msgstr "'%s' kann nicht geöffnet werden\n"
 
-#: g10/armor.c:297
+#: g10/armor.c:296
 #, c-format
 msgid "armor: %s\n"
 msgstr "ASCII-Hülle: %s\n"
 
-#: g10/armor.c:320
+#: g10/armor.c:319
 msgid "invalid armor header: "
 msgstr "Ungültige ASCII-Hülle"
 
-#: g10/armor.c:327
+#: g10/armor.c:326
 msgid "armor header: "
 msgstr "ASCII-Hülle: "
 
-#: g10/armor.c:338
+#: g10/armor.c:337
 msgid "invalid clearsig header\n"
 msgstr "Ungültige Klartextsignatur-Einleitung\n"
 
-#: g10/armor.c:390
+#: g10/armor.c:389
 msgid "nested clear text signatures\n"
 msgstr "verschachtelte Klartextunterschriften\n"
 
-#: g10/armor.c:499
+#: g10/armor.c:498
 msgid "invalid dash escaped line: "
 msgstr "Ungültige mit Bindestrich \"escapte\" Zeile: "
 
-#: g10/armor.c:511
+#: g10/armor.c:510
 msgid "unexpected armor:"
 msgstr "Unerwartete ASCII-Hülle:"
 
-#: g10/armor.c:628
+#: g10/armor.c:627
 #, c-format
 msgid "invalid radix64 character %02x skipped\n"
 msgstr "Ungültiges \"radix64\" Zeichen %02x ignoriert\n"
 
-#: g10/armor.c:671
+#: g10/armor.c:670
 msgid "premature eof (no CRC)\n"
 msgstr "vorzeitiges Dateiende (keine Prüfsumme)\n"
 
-#: g10/armor.c:705
+#: g10/armor.c:704
 msgid "premature eof (in CRC)\n"
 msgstr "vorzeitiges Dateiende (innerhalb der Prüfsumme)\n"
 
-#: g10/armor.c:709
+#: g10/armor.c:708
 msgid "malformed CRC\n"
 msgstr "Falsch aufgebaute Prüfsumme\n"
 
-#: g10/armor.c:713
+#: g10/armor.c:712
 #, c-format
 msgid "CRC error; %06lx - %06lx\n"
 msgstr "Prüfsummenfehler; %06lx - %06lx\n"
 
-#: g10/armor.c:730
+#: g10/armor.c:729
 msgid "premature eof (in Trailer)\n"
 msgstr "vorzeitiges Dateiende (im Nachsatz)\n"
 
-#: g10/armor.c:734
+#: g10/armor.c:733
 msgid "error in trailer line\n"
 msgstr "Fehler in der Nachsatzzeile\n"
 
-#: g10/armor.c:998
+#: g10/armor.c:997
 msgid "no valid OpenPGP data found.\n"
 msgstr "Keine gültigen OpenPGP-Daten gefunden.\n"
 
-#: g10/armor.c:1002
+#: g10/armor.c:1001
 #, c-format
 msgid "invalid armor: line longer than %d characters\n"
 msgstr "ungültige ASCII-Hülle: Zeile ist länger als %d Zeichen\n"
 
-#: g10/armor.c:1006
+#: g10/armor.c:1005
 msgid ""
 "quoted printable character in armor - probably a buggy MTA has been used\n"
 msgstr ""
@@ -925,28 +919,33 @@ msgstr ""
 msgid "key %08lX: key has been revoked!\n"
 msgstr "Schlüssel %08lX: Schlüssel wurde widerrufen\n"
 
-#: g10/pkclist.c:287 g10/pkclist.c:391
+#: g10/pkclist.c:287 g10/pkclist.c:297 g10/pkclist.c:403
 msgid "Use this key anyway? "
 msgstr "Diesen Schlüssel trotzdem benutzen?"
 
-#: g10/pkclist.c:311
+#: g10/pkclist.c:291
+#, fuzzy, c-format
+msgid "key %08lX: subkey has been revoked!\n"
+msgstr "Schlüssel %08lX: Schlüssel wurde widerrufen\n"
+
+#: g10/pkclist.c:321
 #, c-format
 msgid "%08lX: key has expired\n"
 msgstr "%08lX: Schlüssel ist verfallen!\n"
 
-#: g10/pkclist.c:317
+#: g10/pkclist.c:327
 #, c-format
 msgid "%08lX: no info to calculate a trust probability\n"
 msgstr ""
 "%08lX: Keine Infos zur Berechnung der Vertrauenswahrscheinlichkeit "
 "vorgefunden\n"
 
-#: g10/pkclist.c:331
+#: g10/pkclist.c:341
 #, c-format
 msgid "%08lX: We do NOT trust this key\n"
 msgstr "%08lX: Wir haben KEIN Vertrauen zu diesem Schlüssel!\n"
 
-#: g10/pkclist.c:337
+#: g10/pkclist.c:347
 #, c-format
 msgid ""
 "%08lX: It is not sure that this key really belongs to the owner\n"
@@ -955,18 +954,18 @@ msgstr ""
 "%08lX: Es ist nicht sicher, daß dieser Schlüssel wirklich dem vorgeblichen\n"
 "Besitzer gehört, aber er wird trotzdem akzeptiert\n"
 
-#: g10/pkclist.c:343
+#: g10/pkclist.c:353
 msgid "This key probably belongs to the owner\n"
 msgstr ""
 "Dieser Schlüssel gehört höchstwahrscheinlich dem angegebenen Besitzer\n"
 
-#: g10/pkclist.c:348
+#: g10/pkclist.c:358
 msgid "This key belongs to us\n"
 msgstr ""
 "Dieser Schlüssel gehört uns (da wir nämlich den geheimen Schlüssel dazu "
 "haben)\n"
 
-#: g10/pkclist.c:386
+#: g10/pkclist.c:398
 msgid ""
 "It is NOT certain that the key belongs to its owner.\n"
 "If you *really* know what you are doing, you may answer\n"
@@ -977,60 +976,65 @@ msgstr ""
 "Wenn Sie *wirklich* wissen, was Sie tun, können Sie die nächste\n"
 "Frage mit ja beantworten\n"
 
-#: g10/pkclist.c:399
+#: g10/pkclist.c:411
 msgid "WARNING: Using untrusted key!\n"
 msgstr "WARNUNG: Ein Schlüssel ohne gesichertes Vertrauen wird benutzt!\n"
 
-#: g10/pkclist.c:435
+#: g10/pkclist.c:447
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr "WARNUNG: Dieser Schlüssel wurde von seinem Besitzer widerrufen!\n"
 
-#: g10/pkclist.c:436
+#: g10/pkclist.c:448
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "         Das könnte bedeuten, daß die Signatur gefälscht ist.\n"
 
-#: g10/pkclist.c:457
+#: g10/pkclist.c:452
+#, fuzzy
+msgid "WARNING: This subkey has been revoked by its owner!\n"
+msgstr "WARNUNG: Dieser Schlüssel wurde von seinem Besitzer widerrufen!\n"
+
+#: g10/pkclist.c:473
 msgid "Note: This key has expired!\n"
 msgstr "Hinweis: Dieser Schlüssel ist verfallen!\n"
 
-#: g10/pkclist.c:464
+#: g10/pkclist.c:480
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr "WARNUNG: Dieser Schlüssel trägt keine vertrauenswürdige Signatur!\n"
 
-#: g10/pkclist.c:466
+#: g10/pkclist.c:482
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr ""
 "         Es gibt keinen Hinweis, daß die Signatur wirklich dem vorgeblichen "
 "Besitzer gehört.\n"
 
-#: g10/pkclist.c:482
+#: g10/pkclist.c:498
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "WARNUNG: Wir haben KEIN Vertrauen zu diesem Schlüssel!\n"
 
-#: g10/pkclist.c:483
+#: g10/pkclist.c:499
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "         Die Signatur ist wahrscheinlich eine FÄLSCHUNG.\n"
 
-#: g10/pkclist.c:490
+#: g10/pkclist.c:506
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 "WARNUNG: Dieser Schlüssel ist nicht durch hinreichend vertrauenswürdige "
 "Signaturen zertifiziert!\n"
 
-#: g10/pkclist.c:493
+#: g10/pkclist.c:509
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr ""
 "         Es ist nicht sicher, daß die Signatur wirklich dem vorgeblichen "
 "Besitzer gehört.\n"
 
-#: g10/pkclist.c:546 g10/pkclist.c:559 g10/pkclist.c:622 g10/pkclist.c:650
+#: g10/pkclist.c:562 g10/pkclist.c:575 g10/pkclist.c:638 g10/pkclist.c:666
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s: übersprungen: %s\n"
 
-#: g10/pkclist.c:568
+#: g10/pkclist.c:584
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -1038,20 +1042,20 @@ msgstr ""
 "Sie gaben keine User-ID angegeben (Benutzen Sie die Option \"-r\").\n"
 "\n"
 
-#: g10/pkclist.c:573
+#: g10/pkclist.c:589
 msgid "Enter the user ID: "
 msgstr "Geben Sie die User-ID ein: "
 
-#: g10/pkclist.c:584
+#: g10/pkclist.c:600
 msgid "No such user ID.\n"
 msgstr "Keine solche User-ID vorhanden.\n"
 
-#: g10/pkclist.c:630
+#: g10/pkclist.c:646
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s: Fehler beim Prüfen des Schlüssels: %s\n"
 
-#: g10/pkclist.c:656
+#: g10/pkclist.c:672
 msgid "no valid addressees\n"
 msgstr "Keine gültigen Adressaten\n"
 
@@ -1131,7 +1135,20 @@ msgstr "DSA erlaubt nur Schl
 msgid "keysize too small; 768 is smallest value allowed.\n"
 msgstr "zu kurz; 768 ist die kleinste mögliche Schlüssellänge.\n"
 
-#: g10/keygen.c:459
+#. It is ridiculous and an annoyance to use larger key sizes!
+#. * GnuPG can handle much larger sizes; but it takes an eternity
+#. * to create such a key (but less than the time the Sirius
+#. * Computer Corporation needs to process one of the usual
+#. * complaints) and {de,en}cryption although needs some time.
+#. * So, before you complain about this limitation, I suggest that
+#. * you start a discussion with Marvin about this theme and then
+#. * do whatever you want.
+#: g10/keygen.c:466
+#, fuzzy, c-format
+msgid "keysize too large; %d is largest value allowed.\n"
+msgstr "zu kurz; 768 ist die kleinste mögliche Schlüssellänge.\n"
+
+#: g10/keygen.c:471
 msgid ""
 "Keysizes larger than 2048 are not suggested because\n"
 "computations take REALLY long!\n"
@@ -1139,11 +1156,11 @@ msgstr ""
 "Schlüssellängen größer als 2048 werden nicht empfohlen, da die\n"
 "Berechnungen dann WIRKLICH lange brauchen!\n"
 
-#: g10/keygen.c:462
+#: g10/keygen.c:474
 msgid "Are you sure that you want this keysize? "
 msgstr "Sind Sie sicher, daß Sie diese Schlüssellänge wünschen? "
 
-#: g10/keygen.c:463
+#: g10/keygen.c:475
 msgid ""
 "Okay, but keep in mind that your monitor and keyboard radiation is also very "
 "vulnerable to attacks!\n"
@@ -1151,21 +1168,21 @@ msgstr ""
 "Gut, aber bitte denken Sie auch daran, daß Monitor und Tastatur Daten "
 "abstrahlen und diese leicht mitgelesen werden können.\n"
 
-#: g10/keygen.c:471
+#: g10/keygen.c:483
 msgid "Do you really need such a large keysize? "
 msgstr "Brauchen Sie wirklich einen derartig langen Schlüssel? "
 
-#: g10/keygen.c:477
+#: g10/keygen.c:489
 #, c-format
 msgid "Requested keysize is %u bits\n"
 msgstr "Die verlangte Schlüssellänge beträgt %u Bit\n"
 
-#: g10/keygen.c:480 g10/keygen.c:484
+#: g10/keygen.c:492 g10/keygen.c:496
 #, c-format
 msgid "rounded up to %u bits\n"
 msgstr "aufgerundet auf %u Bit\n"
 
-#: g10/keygen.c:497
+#: g10/keygen.c:509
 msgid ""
 "Please specify how long the key should be valid.\n"
 "         0 = key does not expire\n"
@@ -1181,29 +1198,29 @@ msgstr ""
 "      <n>m = Schlüssel verfällt nach n Monaten\n"
 "      <n>y = Schlüssel verfällt nach n Jahren\n"
 
-#: g10/keygen.c:512
+#: g10/keygen.c:524
 msgid "Key is valid for? (0) "
 msgstr "Der Schlüssel bleibt wie lange gültig? (0) "
 
-#: g10/keygen.c:523
+#: g10/keygen.c:535
 msgid "invalid value\n"
 msgstr "Ungültiger Wert.\n"
 
-#: g10/keygen.c:528
+#: g10/keygen.c:540
 msgid "Key does not expire at all\n"
 msgstr "Der Schlüssel verfällt nie.\n"
 
 #. print the date when the key expires
-#: g10/keygen.c:534
+#: g10/keygen.c:546
 #, c-format
 msgid "Key expires at %s\n"
 msgstr "Der Schlüssel verfällt am %s\n"
 
-#: g10/keygen.c:540
+#: g10/keygen.c:552
 msgid "Is this correct (y/n)? "
 msgstr "Ist dies richtig? (j/n) "
 
-#: g10/keygen.c:583
+#: g10/keygen.c:595
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1219,44 +1236,44 @@ msgstr ""
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 
-#: g10/keygen.c:594
+#: g10/keygen.c:606
 msgid "Real name: "
 msgstr "Ihr Name (\"Vorname Nachname\"): "
 
-#: g10/keygen.c:598
+#: g10/keygen.c:610
 msgid "Invalid character in name\n"
 msgstr "Ungültiges Zeichen im Namen\n"
 
-#: g10/keygen.c:600
+#: g10/keygen.c:612
 msgid "Name may not start with a digit\n"
 msgstr "Der Name darf nicht mit einer Ziffer beginnen.\n"
 
-#: g10/keygen.c:602
+#: g10/keygen.c:614
 msgid "Name must be at least 5 characters long\n"
 msgstr "Der Name muß min. 5 Zeichen lang sein.\n"
 
-#: g10/keygen.c:610
+#: g10/keygen.c:622
 msgid "Email address: "
 msgstr "E-Mail-Adresse: "
 
-#: g10/keygen.c:621
+#: g10/keygen.c:633
 msgid "Not a valid email address\n"
 msgstr "Diese E-Mail-Adresse ist ungültig\n"
 
-#: g10/keygen.c:629
+#: g10/keygen.c:641
 msgid "Comment: "
 msgstr "Kommentar: "
 
-#: g10/keygen.c:635
+#: g10/keygen.c:647
 msgid "Invalid character in comment\n"
 msgstr "Ungültiges Zeichen im Kommentar.\n"
 
-#: g10/keygen.c:657
+#: g10/keygen.c:669
 #, c-format
 msgid "You are using the `%s' character set.\n"
 msgstr ""
 
-#: g10/keygen.c:663
+#: g10/keygen.c:675
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1267,15 +1284,15 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:666
+#: g10/keygen.c:678
 msgid "NnCcEeOoQq"
 msgstr "NnKkEeFfBb"
 
-#: g10/keygen.c:676
+#: g10/keygen.c:688
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr "Ändern: (N)ame, (K)ommentar, (E)-Mail oder (F)ertig/(B)eenden? "
 
-#: g10/keygen.c:728
+#: g10/keygen.c:740
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1283,11 +1300,11 @@ msgstr ""
 "Sie benötigen ein Mantra, um den geheimen Schlüssel zu schützen.\n"
 "\n"
 
-#: g10/keyedit.c:421 g10/keygen.c:736
+#: g10/keyedit.c:433 g10/keygen.c:748
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "Mantra wurde nicht richtig wiederholt; noch einmal versuchen.\n"
 
-#: g10/keygen.c:742
+#: g10/keygen.c:754
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -1300,46 +1317,46 @@ msgstr ""
 "aufrufen.\n"
 "\n"
 
-#: g10/keygen.c:763
+#: g10/keygen.c:775
 #, fuzzy
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (type on the keyboard, move the mouse, utilize the\n"
-"the disks) during the prime generation; this gives the random\n"
-"number generator a better chance to gain enough entropy.\n"
+"disks) during the prime generation; this gives the random number\n"
+"generator a better chance to gain enough entropy.\n"
 msgstr ""
 "Wir müßen eine ganze Menge Zufallszahlen erzeugen.  Sie können dies\n"
 "unterstützen, indem Sie z.B. in einem anderen Fenster/Konsole irgendetwas\n"
 "tippen oder irgendwelche anderen Programme benutzen.\n"
 
-#: g10/keygen.c:833
+#: g10/keygen.c:845
 msgid "Key generation can only be used in interactive mode\n"
 msgstr ""
 "Die Schlüsselerzeugung kann nur im interaktiven Modus benutzt werden.\n"
 
-#: g10/keygen.c:841
+#: g10/keygen.c:853
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "Der DSA Schlüssel wird 1024 Bits haben.\n"
 
-#: g10/keygen.c:847
+#: g10/keygen.c:859
 msgid "Key generation cancelled.\n"
 msgstr "Schlüsselerzeugung abgebrochen.\n"
 
-#: g10/keygen.c:857
+#: g10/keygen.c:869
 #, c-format
 msgid "writing public certificate to `%s'\n"
 msgstr "schreiben des öffentlichen Zertifikats nach '%s'\n"
 
-#: g10/keygen.c:858
+#: g10/keygen.c:870
 #, c-format
 msgid "writing secret certificate to `%s'\n"
 msgstr "schreiben des geheimen Zertifikats nach '%s'\n"
 
-#: g10/keygen.c:935
+#: g10/keygen.c:947
 msgid "public and secret key created and signed.\n"
 msgstr "Öffentlichen und geheimen Schlüssel erzeugt und signiert.\n"
 
-#: g10/keygen.c:937
+#: g10/keygen.c:949
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
 "the command \"--edit-key\" to generate a secondary key for this purpose.\n"
@@ -1348,12 +1365,12 @@ msgstr ""
 "werden kann.  Sie können aber mit dem Befehl \"--edit-key\" einen\n"
 "Zweitschlüssel für diesem Zweck erzeugen.\n"
 
-#: g10/keygen.c:951 g10/keygen.c:1050
+#: g10/keygen.c:963 g10/keygen.c:1062
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Schlüsselerzeugung fehlgeschlagen: %s\n"
 
-#: g10/keygen.c:995 g10/sig-check.c:212 g10/sign.c:52
+#: g10/keygen.c:1007 g10/sig-check.c:299 g10/sign.c:52
 #, c-format
 msgid ""
 "key has been created %lu second in future (time warp or clock problem)\n"
@@ -1361,7 +1378,7 @@ msgstr ""
 "Der Schlüssel wurde %lu Sekunde in der Zukunft erzeugt (Zeitreise oder Uhren "
 "stimmen nicht überein)\n"
 
-#: g10/keygen.c:997 g10/sig-check.c:214 g10/sign.c:54
+#: g10/keygen.c:1009 g10/sig-check.c:301 g10/sign.c:54
 #, c-format
 msgid ""
 "key has been created %lu seconds in future (time warp or clock problem)\n"
@@ -1369,32 +1386,37 @@ msgstr ""
 "Der Schlüssel wurde %lu Sekunden in der Zukunft erzeugt (Zeitreise oder "
 "Uhren stimmen nicht überein)\n"
 
-#: g10/keygen.c:1028
+#: g10/keygen.c:1040
 msgid "Really create? "
 msgstr "Wirklich erzeugen? "
 
-#: g10/encode.c:90 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
-#: g10/tdbio.c:527
+#: g10/encode.c:91 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
+#: g10/tdbio.c:528
 #, c-format
 msgid "%s: can't open: %s\n"
 msgstr "%s: kann nicht geöffnet werden: %s\n"
 
-#: g10/encode.c:112
+#: g10/encode.c:113
 #, c-format
 msgid "error creating passphrase: %s\n"
 msgstr "Fehler beim Erzeugen des Mantras: %s\n"
 
-#: g10/encode.c:166 g10/encode.c:285
+#: g10/encode.c:167 g10/encode.c:290
 #, c-format
 msgid "%s: WARNING: empty file\n"
 msgstr "%s: WARNUNG: Leere Datei\n"
 
-#: g10/encode.c:235
+#: g10/encode.c:240
 #, c-format
 msgid "reading from `%s'\n"
 msgstr "Lesen von '%s'\n"
 
-#: g10/encode.c:413
+#: g10/encode.c:435 g10/sign.c:346
+#, c-format
+msgid "WARNING: `%s' is an empty file\n"
+msgstr "WARNUNG: '%s' ist eine leere Datei.\n"
+
+#: g10/encode.c:605
 #, c-format
 msgid "%s/%s encrypted for: %s\n"
 msgstr "%s verschlüsselt für: %s\n"
@@ -1426,7 +1448,7 @@ msgstr "zu viele Eintr
 msgid "too many entries in unk cache - disabled\n"
 msgstr "zu viele Einträge im unk-Lager - abgeschaltet\n"
 
-#: g10/getkey.c:1531 g10/getkey.c:1587
+#: g10/getkey.c:1535 g10/getkey.c:1591
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr ""
@@ -1452,326 +1474,335 @@ msgstr "%lu Schl
 msgid "read error: %s\n"
 msgstr "Lesefehler: %s\n"
 
-#: g10/import.c:174
+#: g10/import.c:175
 #, c-format
 msgid "Total number processed: %lu\n"
 msgstr "Anzahl insgesamt bearbeiteter Schlüssel: %lu\n"
 
-#: g10/import.c:176
+#: g10/import.c:177
 #, c-format
 msgid "          w/o user IDs: %lu\n"
 msgstr "         ohne User-ID: %lu\n"
 
-#: g10/import.c:178
+#: g10/import.c:179
 #, c-format
 msgid "              imported: %lu"
 msgstr "           importiert: %lu"
 
-#: g10/import.c:184
+#: g10/import.c:185
 #, c-format
 msgid "             unchanged: %lu\n"
 msgstr "          unverändert: %lu\n"
 
-#: g10/import.c:186
+#: g10/import.c:187
 #, c-format
 msgid "          new user IDs: %lu\n"
 msgstr "        neue User-IDs: %lu\n"
 
-#: g10/import.c:188
+#: g10/import.c:189
 #, c-format
 msgid "           new subkeys: %lu\n"
 msgstr "  neue Unterschlüssel: %lu\n"
 
-#: g10/import.c:190
+#: g10/import.c:191
 #, c-format
 msgid "        new signatures: %lu\n"
 msgstr "        neue Signaturen: %lu\n"
 
-#: g10/import.c:192
+#: g10/import.c:193
 #, c-format
 msgid "   new key revocations: %lu\n"
 msgstr "neue Schlüsselwiderrufe: %lu\n"
 
-#: g10/import.c:194
+#: g10/import.c:195
 #, c-format
 msgid "      secret keys read: %lu\n"
 msgstr " gelesene geheime Schl.: %lu\n"
 
-#: g10/import.c:196
+#: g10/import.c:197
 #, c-format
 msgid "  secret keys imported: %lu\n"
 msgstr "geheime Schlüssel importiert: %lu\n"
 
-#: g10/import.c:198
+#: g10/import.c:199
 #, c-format
 msgid " secret keys unchanged: %lu\n"
 msgstr " unveränderte geh.Schl.: %lu\n"
 
-#: g10/import.c:340 g10/import.c:532
+#: g10/import.c:342 g10/import.c:534
 #, c-format
 msgid "key %08lX: no user id\n"
 msgstr "Schlüssel %08lX: Keine User-ID\n"
 
-#: g10/import.c:351
+#: g10/import.c:353
 #, c-format
 msgid "key %08lX: no valid user ids\n"
 msgstr "Schlüssel %08lX: Keine gültigen User-IDs\n"
 
-#: g10/import.c:353
+#: g10/import.c:355
 msgid "this may be caused by a missing self-signature\n"
 msgstr "dies könnte durch fehlende Eigenbeglaubigung verursacht worden sein\n"
 
-#: g10/import.c:364 g10/import.c:600
+#: g10/import.c:366 g10/import.c:604
 #, c-format
 msgid "key %08lX: public key not found: %s\n"
 msgstr "Schlüssel %08lX: Öffentlicher Schlüssel nicht gefunden: %s\n"
 
-#: g10/import.c:370
+#: g10/import.c:372
 msgid "no default public keyring\n"
 msgstr "Kein voreingestellter öffentlicher Schlüsselbund\n"
 
-#: g10/import.c:374 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:498
+#: g10/import.c:376 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:501
 #, c-format
 msgid "writing to `%s'\n"
 msgstr "Schreiben nach '%s'\n"
 
-#: g10/import.c:378 g10/import.c:438 g10/import.c:654
+#: g10/import.c:380 g10/import.c:440 g10/import.c:658
 #, c-format
 msgid "can't lock public keyring: %s\n"
 msgstr "kann öffentlichen Schlüsselbund nicht sperren: %s\n"
 
-#: g10/import.c:381
+#: g10/import.c:383
 #, c-format
 msgid "can't write to keyring: %s\n"
 msgstr "kann Schlüsselbund nicht schreiben: %s\n"
 
-#: g10/import.c:385
+#: g10/import.c:387
 #, c-format
 msgid "key %08lX: public key imported\n"
 msgstr "Schlüssel %08lX: Öffentlicher Schlüssel importiert\n"
 
-#: g10/import.c:398
+#: g10/import.c:400
 #, c-format
 msgid "key %08lX: doesn't match our copy\n"
 msgstr "Schlüssel %08lX: Stimmt nicht mit unserer Kopie überein\n"
 
-#: g10/import.c:411 g10/import.c:609
+#: g10/import.c:413 g10/import.c:613
 #, c-format
 msgid "key %08lX: can't locate original keyblock: %s\n"
 msgstr ""
 "Schlüssel %08lX: der lokale originale Schlüsselblocks wurde nicht gefunden: "
 "%s\n"
 
-#: g10/import.c:418 g10/import.c:616
+#: g10/import.c:420 g10/import.c:620
 #, c-format
 msgid "key %08lX: can't read original keyblock: %s\n"
 msgstr ""
 "Schlüssel %08lX: Lesefehler im lokalen originalen Schlüsselblocks: %s\n"
 
-#: g10/import.c:435 g10/import.c:547 g10/import.c:651
+#: g10/import.c:437 g10/import.c:549 g10/import.c:655
 msgid "writing keyblock\n"
 msgstr "Schreiben des Schlüsselblocks\n"
 
-#: g10/import.c:441 g10/import.c:657
+#: g10/import.c:443 g10/import.c:661
 #, c-format
 msgid "can't write keyblock: %s\n"
 msgstr "Der Schlüsselblock kann nicht geschrieben werden: %s\n"
 
-#: g10/import.c:446
+#: g10/import.c:448
 #, c-format
 msgid "key %08lX: 1 new user-id\n"
 msgstr "Schlüssel %08lX: 1 neue User-ID\n"
 
-#: g10/import.c:449
+#: g10/import.c:451
 #, c-format
 msgid "key %08lX: %d new user-ids\n"
 msgstr "Schlüssel %08lX: %d neue User-IDs\n"
 
-#: g10/import.c:452
+#: g10/import.c:454
 #, c-format
 msgid "key %08lX: 1 new signature\n"
 msgstr "Schlüssel %08lX: 1 neue Signatur\n"
 
-#: g10/import.c:455
+#: g10/import.c:457
 #, c-format
 msgid "key %08lX: %d new signatures\n"
 msgstr "Schlüssel %08lX: %d neue Signaturen\n"
 
-#: g10/import.c:458
+#: g10/import.c:460
 #, c-format
 msgid "key %08lX: 1 new subkey\n"
 msgstr "Schlüssel %08lX: 1 neuer Unterschlüssel\n"
 
-#: g10/import.c:461
+#: g10/import.c:463
 #, c-format
 msgid "key %08lX: %d new subkeys\n"
 msgstr "Schlüssel %08lX: %d neue Unterschlüssel\n"
 
-#: g10/import.c:471
+#: g10/import.c:473
 #, c-format
 msgid "key %08lX: not changed\n"
 msgstr "Schlüssel %08lX: Nicht geändert\n"
 
-#: g10/import.c:550
+#: g10/import.c:552
 #, c-format
 msgid "can't lock secret keyring: %s\n"
 msgstr "kann geheimen Schlüsselbund nicht sperren: %s\n"
 
-#: g10/import.c:553
+#: g10/import.c:555
 #, c-format
 msgid "can't write keyring: %s\n"
 msgstr "kann Schlüsselbund nicht schreiben: %s\n"
 
-#. we are ready
-#: g10/import.c:556
+#: g10/import.c:559
 #, c-format
 msgid "key %08lX: secret key imported\n"
 msgstr "Schlüssel %08lX: Geheimer Schlüssel importiert\n"
 
 #. we can't merge secret keys
-#: g10/import.c:560
+#: g10/import.c:564
 #, c-format
 msgid "key %08lX: already in secret keyring\n"
 msgstr "Schlüssel %08lX: Ist bereits im geheimen Schlüsselbund\n"
 
-#: g10/import.c:565
+#: g10/import.c:569
 #, c-format
 msgid "key %08lX: secret key not found: %s\n"
 msgstr "Schlüssel %08lX: geheimer Schlüssel nicht gefunden: %s\n"
 
-#: g10/import.c:594
+#: g10/import.c:598
 #, c-format
 msgid "key %08lX: no public key - can't apply revocation certificate\n"
 msgstr ""
 "Schlüssel %08lX: Kein öffentlicher Schlüssel - der Schlüsselwiderruf kann "
 "nicht angebracht werden\n"
 
-#: g10/import.c:627
+#: g10/import.c:631
 #, c-format
 msgid "key %08lX: invalid revocation certificate: %s - rejected\n"
 msgstr "Schlüssel %08lX: Ungültiges Widerrufzertifikat: %s - zurückgewiesen\n"
 
-#: g10/import.c:661
+#: g10/import.c:665
 #, c-format
 msgid "key %08lX: revocation certificate imported\n"
 msgstr "Schlüssel %08lX: Widerrufzertifikat importiert\n"
 
-#: g10/import.c:695
+#: g10/import.c:699
 #, c-format
 msgid "key %08lX: no user-id for signature\n"
 msgstr "Schlüssel %08lX: Keine User-ID für Signatur\n"
 
-#: g10/import.c:702 g10/import.c:727
+#: g10/import.c:706 g10/import.c:731
 #, c-format
 msgid "key %08lX: unsupported public key algorithm\n"
 msgstr "Schlüssel %08lX: Nicht unterstützetes Public-Key-Verfahren\n"
 
-#: g10/import.c:703
+#: g10/import.c:707
 #, c-format
 msgid "key %08lX: invalid self-signature\n"
 msgstr "Schlüssel %08lX: Ungültige Eigenbeglaubigung\n"
 
-#: g10/import.c:719
+#: g10/import.c:723
 #, c-format
 msgid "key %08lX: no subkey for key binding\n"
 msgstr "Schlüssel %08lX: Kein Unterschlüssel für die Schlüsselanbindung\n"
 
-#: g10/import.c:728
+#: g10/import.c:732
 #, c-format
 msgid "key %08lX: invalid subkey binding\n"
 msgstr "Schlüssel %08lX: Ungültige Unterschlüssel-Anbindung\n"
 
-#: g10/import.c:760
+#: g10/import.c:764
 #, c-format
 msgid "key %08lX: skipped userid '"
 msgstr "Schlüssel %08lX: übergehe User-ID '"
 
-#: g10/import.c:780
+#: g10/import.c:787
 #, c-format
 msgid "key %08lX: skipped subkey\n"
 msgstr "Schlüssel %08lX: Unterschlüssel ignoriert\n"
 
-#: g10/import.c:800
+#. here we violate the rfc a bit by still allowing
+#. * to import non-exportable signature when we have the
+#. * the secret key used to create this signature - it
+#. * seems that this makes sense
+#: g10/import.c:812
 #, fuzzy, c-format
 msgid "key %08lX: non exportable signature (class %02x) - skipped\n"
 msgstr "Schlüssel %08lX: Widerrufzertifikat an falschem Platz - übergangen\n"
 
-#: g10/import.c:809
+#: g10/import.c:821
 #, c-format
 msgid "key %08lX: revocation certificate at wrong place - skipped\n"
 msgstr "Schlüssel %08lX: Widerrufzertifikat an falschem Platz - übergangen\n"
 
-#: g10/import.c:817
+#: g10/import.c:829
 #, c-format
 msgid "key %08lX: invalid revocation certificate: %s - skipped\n"
 msgstr "Schlüssel %08lX: Ungültiges Widerrufzertifikat: %s - übergangen\n"
 
-#: g10/import.c:878
+#: g10/import.c:890
 #, c-format
 msgid "key %08lX: revocation certificate added\n"
 msgstr "Schlüssel %08lX: Widerrufzertifikat hinzugefügt\n"
 
-#: g10/import.c:992 g10/import.c:1047
+#: g10/import.c:1008 g10/import.c:1063
 #, c-format
 msgid "key %08lX: our copy has no self-signature\n"
 msgstr "Schlüssel %08lX: Unsere Kopie hat keine Eigenbeglaubigung\n"
 
-#: g10/keyedit.c:88
+#: g10/keyedit.c:91
 #, c-format
 msgid "%s: user not found\n"
 msgstr "%s: Benutzer nicht gefunden\n"
 
-#: g10/keyedit.c:171
+#: g10/keyedit.c:177
+msgid "[revocation]"
+msgstr ""
+
+#: g10/keyedit.c:178
 msgid "[self-signature]"
 msgstr "[Eigenbeglaubigung]"
 
-#: g10/keyedit.c:189
+#: g10/keyedit.c:196
 msgid "1 bad signature\n"
 msgstr "%d schlechte Signaturen\n"
 
-#: g10/keyedit.c:191
+#: g10/keyedit.c:198
 #, c-format
 msgid "%d bad signatures\n"
 msgstr "%d falsche Beglaubigungen\n"
 
-#: g10/keyedit.c:193
+#: g10/keyedit.c:200
 msgid "1 signature not checked due to a missing key\n"
 msgstr "1 Beglaubigung wegen fehlendem Schlüssel nicht geprüft\n"
 
-#: g10/keyedit.c:195
+#: g10/keyedit.c:202
 #, c-format
 msgid "%d signatures not checked due to missing keys\n"
 msgstr "%d Beglaubigungen wegen fehlenden Schlüsseln nicht geprüft\n"
 
-#: g10/keyedit.c:197
+#: g10/keyedit.c:204
 msgid "1 signature not checked due to an error\n"
 msgstr "1 Beglaubigung aufgrund von Fehler nicht geprüft\n"
 
-#: g10/keyedit.c:199
+#: g10/keyedit.c:206
 #, c-format
 msgid "%d signatures not checked due to errors\n"
 msgstr "%d Beglaubigungen aufgrund von Fehlern nicht geprüft\n"
 
-#: g10/keyedit.c:201
+#: g10/keyedit.c:208
 msgid "1 user id without valid self-signature detected\n"
 msgstr "Eine User-ID ohne gültige Eigenbeglaubigung entdeckt\n"
 
-#: g10/keyedit.c:203
+#: g10/keyedit.c:210
 #, c-format
 msgid "%d user ids without valid self-signatures detected\n"
 msgstr "%d User-IDs ohne gültige Eigenbeglaubigung entdeckt\n"
 
-#: g10/keyedit.c:281
+#. Fixme: see whether there is a revocation in which
+#. * case we should allow to sign it again.
+#: g10/keyedit.c:290
 #, c-format
 msgid "Already signed by key %08lX\n"
 msgstr "Ist bereits durch Schlüssel %08lX beglaubigt.\n"
 
-#: g10/keyedit.c:289
+#: g10/keyedit.c:298
 #, c-format
 msgid "Nothing to sign with key %08lX\n"
 msgstr "Nichts zu beglaubigen für Schlüssel %08lX\n"
 
-#: g10/keyedit.c:298
+#: g10/keyedit.c:307
 msgid ""
 "Are you really sure that you want to sign this key\n"
 "with your key: \""
@@ -1779,35 +1810,35 @@ msgstr ""
 "Sind Sie wirklich sicher, daß Sie vorstehenden Schlüssel mit Ihrem\n"
 "Schlüssel beglaubigen wollen: \""
 
-#: g10/keyedit.c:307
+#: g10/keyedit.c:316
 msgid ""
 "The signature will be marked as non-exportable.\n"
 "\n"
 msgstr ""
 
-#: g10/keyedit.c:309
+#: g10/keyedit.c:321
 msgid "Really sign? "
 msgstr "Wirklich unterschreiben? "
 
-#: g10/keyedit.c:335 g10/sign.c:75
+#: g10/keyedit.c:347 g10/keyedit.c:1684 g10/keyedit.c:1733 g10/sign.c:75
 #, c-format
 msgid "signing failed: %s\n"
 msgstr "Beglaubigung fehlgeschlagen: %s\n"
 
-#: g10/keyedit.c:388
+#: g10/keyedit.c:400
 msgid "This key is not protected.\n"
 msgstr "Dieser Schlüssel ist nicht geschützt.\n"
 
-#: g10/keyedit.c:391
+#: g10/keyedit.c:403
 msgid "Key is protected.\n"
 msgstr "Schlüssel ist geschützt.\n"
 
-#: g10/keyedit.c:408
+#: g10/keyedit.c:420
 #, c-format
 msgid "Can't edit this key: %s\n"
 msgstr "Dieser Schlüssel kann nicht editiert werden: %s\n"
 
-#: g10/keyedit.c:413
+#: g10/keyedit.c:425
 msgid ""
 "Enter the new passphrase for this secret key.\n"
 "\n"
@@ -1815,7 +1846,7 @@ msgstr ""
 "Geben Sie das neue Mantra für diesen geheimen Schlüssel ein.\n"
 "\n"
 
-#: g10/keyedit.c:425
+#: g10/keyedit.c:437
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "\n"
@@ -1823,381 +1854,452 @@ msgstr ""
 "Sie wollen kein Mantra - dies ist bestimmt *keine* gute Idee!\n"
 "\n"
 
-#: g10/keyedit.c:428
+#: g10/keyedit.c:440
 msgid "Do you really want to do this? "
 msgstr "Möchten Sie dies wirklich tun? "
 
-#: g10/keyedit.c:487
+#: g10/keyedit.c:499
 msgid "moving a key signature to the correct place\n"
 msgstr "schiebe eine Beglaubigung an die richtige Stelle\n"
 
-#: g10/keyedit.c:523
+#: g10/keyedit.c:535
 msgid "quit"
 msgstr "quit"
 
-#: g10/keyedit.c:523
+#: g10/keyedit.c:535
 msgid "quit this menu"
 msgstr "Menü verlassen"
 
-#: g10/keyedit.c:524
+#: g10/keyedit.c:536
 msgid "q"
 msgstr "q"
 
-#: g10/keyedit.c:525
+#: g10/keyedit.c:537
 msgid "save"
 msgstr "save"
 
-#: g10/keyedit.c:525
+#: g10/keyedit.c:537
 msgid "save and quit"
 msgstr "speichern und Menü verlassen"
 
-#: g10/keyedit.c:526
+#: g10/keyedit.c:538
 msgid "help"
 msgstr "help"
 
-#: g10/keyedit.c:526
+#: g10/keyedit.c:538
 msgid "show this help"
 msgstr "Diese Hilfe zeigen"
 
-#: g10/keyedit.c:528
+#: g10/keyedit.c:540
 msgid "fpr"
 msgstr "fpr"
 
-#: g10/keyedit.c:528
+#: g10/keyedit.c:540
 msgid "show fingerprint"
 msgstr "\"Fingerabdruck\" anzeigen"
 
-#: g10/keyedit.c:529
+#: g10/keyedit.c:541
 msgid "list"
 msgstr "Liste der Schlüssel"
 
-#: g10/keyedit.c:529
+#: g10/keyedit.c:541
 msgid "list key and user ids"
 msgstr "Schlüssel und User-ID auflisten"
 
-#: g10/keyedit.c:530
+#: g10/keyedit.c:542
 msgid "l"
 msgstr "l"
 
-#: g10/keyedit.c:531
+#: g10/keyedit.c:543
 msgid "uid"
 msgstr "uid"
 
-#: g10/keyedit.c:531
+#: g10/keyedit.c:543
 msgid "select user id N"
 msgstr "User-ID N auswählen"
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:544
 msgid "key"
 msgstr "key"
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:544
 msgid "select secondary key N"
 msgstr "Zweitschlüssel N auswählen"
 
-#: g10/keyedit.c:533
+#: g10/keyedit.c:545
 msgid "check"
 msgstr "check"
 
-#: g10/keyedit.c:533
+#: g10/keyedit.c:545
 msgid "list signatures"
 msgstr "Liste der Signaturen"
 
-#: g10/keyedit.c:534
+#: g10/keyedit.c:546
 msgid "c"
 msgstr "c"
 
-#: g10/keyedit.c:535
+#: g10/keyedit.c:547
 msgid "sign"
 msgstr "sign"
 
-#: g10/keyedit.c:535
+#: g10/keyedit.c:547
 msgid "sign the key"
 msgstr "Den Schlüssel signieren"
 
-#: g10/keyedit.c:536
+#: g10/keyedit.c:548
 msgid "s"
 msgstr "s"
 
-#: g10/keyedit.c:537
+#: g10/keyedit.c:549
 #, fuzzy
 msgid "lsign"
 msgstr "sign"
 
-#: g10/keyedit.c:537
+#: g10/keyedit.c:549
 #, fuzzy
 msgid "sign the key locally"
 msgstr "Den Schlüssel signieren"
 
-#: g10/keyedit.c:538
+#: g10/keyedit.c:550
 msgid "debug"
 msgstr "debug"
 
-#: g10/keyedit.c:539
+#: g10/keyedit.c:551
 msgid "adduid"
 msgstr "adduid"
 
-#: g10/keyedit.c:539
+#: g10/keyedit.c:551
 msgid "add a user id"
 msgstr "Eine User-ID hinzufügen"
 
-#: g10/keyedit.c:540
+#: g10/keyedit.c:552
 msgid "deluid"
 msgstr "deluid"
 
-#: g10/keyedit.c:540
+#: g10/keyedit.c:552
 msgid "delete user id"
 msgstr "User-ID entfernen"
 
-#: g10/keyedit.c:541
+#: g10/keyedit.c:553
 msgid "addkey"
 msgstr "addkey"
 
-#: g10/keyedit.c:541
+#: g10/keyedit.c:553
 msgid "add a secondary key"
 msgstr "Einen Zweitschlüssel hinzufügen"
 
-#: g10/keyedit.c:542
+#: g10/keyedit.c:554
 msgid "delkey"
 msgstr "delkey"
 
-#: g10/keyedit.c:542
+#: g10/keyedit.c:554
 msgid "delete a secondary key"
 msgstr "Einen Zweitschlüssel entfernen"
 
-#: g10/keyedit.c:543
+#: g10/keyedit.c:555
 msgid "expire"
 msgstr "expire"
 
-#: g10/keyedit.c:543
+#: g10/keyedit.c:555
 msgid "change the expire date"
 msgstr "Ändern des Verfallsdatums"
 
-#: g10/keyedit.c:544
+#: g10/keyedit.c:556
 msgid "toggle"
 msgstr "toggle"
 
-#: g10/keyedit.c:544
+#: g10/keyedit.c:556
 msgid "toggle between secret and public key listing"
 msgstr "Umschalten zwischen Anzeige geheimer und öffentlicher Schlüssel"
 
-#: g10/keyedit.c:546
+#: g10/keyedit.c:558
 msgid "t"
 msgstr "t"
 
-#: g10/keyedit.c:547
+#: g10/keyedit.c:559
 msgid "pref"
 msgstr "pref"
 
-#: g10/keyedit.c:547
+#: g10/keyedit.c:559
 msgid "list preferences"
 msgstr "Liste der Voreinstellungen"
 
-#: g10/keyedit.c:548
+#: g10/keyedit.c:560
 msgid "passwd"
 msgstr "passwd"
 
-#: g10/keyedit.c:548
+#: g10/keyedit.c:560
 msgid "change the passphrase"
 msgstr "Das Mantra ändern"
 
-#: g10/keyedit.c:549
+#: g10/keyedit.c:561
 msgid "trust"
 msgstr "trust"
 
-#: g10/keyedit.c:549
+#: g10/keyedit.c:561
 msgid "change the ownertrust"
 msgstr "Den \"Owner trust\" ändern"
 
-#: g10/keyedit.c:568
+#: g10/keyedit.c:562
+#, fuzzy
+msgid "revsig"
+msgstr "sign"
+
+#: g10/keyedit.c:562
+#, fuzzy
+msgid "revoke signatures"
+msgstr "v3 Signaturen erzwingen"
+
+#: g10/keyedit.c:563
+#, fuzzy
+msgid "revkey"
+msgstr "key"
+
+#: g10/keyedit.c:563
+#, fuzzy
+msgid "revoke a secondary key"
+msgstr "Einen Zweitschlüssel entfernen"
+
+#: g10/keyedit.c:582
 msgid "can't do that in batchmode\n"
 msgstr "Dies kann im Batchmodus nicht durchgeführt werden.\n"
 
 #. check that they match
 #. FIXME: check that they both match
-#: g10/keyedit.c:595
+#: g10/keyedit.c:609
 msgid "Secret key is available.\n"
 msgstr "Geheimer Schlüssel ist vorhanden.\n"
 
-#: g10/keyedit.c:624
+#: g10/keyedit.c:638
 msgid "Command> "
 msgstr "Befehl> "
 
-#: g10/keyedit.c:651
+#: g10/keyedit.c:665
 msgid "Need the secret key to do this.\n"
 msgstr "Hierzu wird der geheime Schlüssel benötigt.\n"
 
-#: g10/keyedit.c:673
+#: g10/keyedit.c:687
 msgid "Save changes? "
 msgstr "Änderungen speichern? "
 
-#: g10/keyedit.c:676
+#: g10/keyedit.c:690
 msgid "Quit without saving? "
 msgstr "Beenden ohne zu speichern? "
 
-#: g10/keyedit.c:686
+#: g10/keyedit.c:700
 #, c-format
 msgid "update failed: %s\n"
 msgstr "Änderung fehlgeschlagen: %s\n"
 
-#: g10/keyedit.c:693
+#: g10/keyedit.c:707
 #, c-format
 msgid "update secret failed: %s\n"
 msgstr "Änderung des Geheimnisses fehlgeschlagen: %s\n"
 
-#: g10/keyedit.c:700
+#: g10/keyedit.c:714
 msgid "Key not changed so no update needed.\n"
 msgstr "Schlüssel ist nicht geändert worden, also ist kein Speichern nötig.\n"
 
-#: g10/keyedit.c:703 g10/keyedit.c:762
+#: g10/keyedit.c:717 g10/keyedit.c:776
 #, c-format
 msgid "update of trustdb failed: %s\n"
 msgstr "Änderung der \"Trust-DB\" fehlgeschlagen: %s\n"
 
-#: g10/keyedit.c:736
+#: g10/keyedit.c:750
 msgid "Really sign all user ids? "
 msgstr "Wirklich alle User-IDs beglaubigen? "
 
-#: g10/keyedit.c:737
+#: g10/keyedit.c:751
 msgid "Hint: Select the user ids to sign\n"
 msgstr "Tip: Wählen Sie die User-ID, die beglaubigt werden soll\n"
 
-#: g10/keyedit.c:773
+#: g10/keyedit.c:787
 msgid "You must select at least one user id.\n"
 msgstr "Zumindestens eine User-ID muß ausgewählt werden.\n"
 
-#: g10/keyedit.c:775
+#: g10/keyedit.c:789
 msgid "You can't delete the last user id!\n"
 msgstr "Die letzte User-ID kann nicht gelöscht werden!\n"
 
-#: g10/keyedit.c:778
+#: g10/keyedit.c:792
 msgid "Really remove all selected user ids? "
 msgstr "Möchten Sie alle ausgewählten User-IDs wirklich entfernen? "
 
-#: g10/keyedit.c:779
+#: g10/keyedit.c:793
 msgid "Really remove this user id? "
 msgstr "Diese User-ID wirklich entfernen? "
 
-#: g10/keyedit.c:802
+#: g10/keyedit.c:816 g10/keyedit.c:838
 msgid "You must select at least one key.\n"
 msgstr "Zumindestens ein Schlüssel muß ausgewählt werden.\n"
 
-#: g10/keyedit.c:806
+#: g10/keyedit.c:820
 msgid "Do you really want to delete the selected keys? "
 msgstr "Möchten Sie die ausgewählten Schlüssel wirklich entfernen? "
 
-#: g10/keyedit.c:807
+#: g10/keyedit.c:821
 msgid "Do you really want to delete this key? "
 msgstr "Möchten Sie diesen Schlüssel wirklich entfernen? "
 
-#: g10/keyedit.c:854
+#: g10/keyedit.c:842
+#, fuzzy
+msgid "Do you really want to revoke the selected keys? "
+msgstr "Möchten Sie die ausgewählten Schlüssel wirklich entfernen? "
+
+#: g10/keyedit.c:843
+#, fuzzy
+msgid "Do you really want to revoke this key? "
+msgstr "Möchten Sie diesen Schlüssel wirklich entfernen? "
+
+#: g10/keyedit.c:897
 msgid "Invalid command  (try \"help\")\n"
 msgstr "Ungültiger Befehl (versuchen Sie's mal mit \"help\")\n"
 
-#: g10/keyedit.c:1232
+#: g10/keyedit.c:1289
 msgid "Please remove selections from the secret keys.\n"
 msgstr "Bitte entfernen Sie die Auswahl von den geheimen Schlüsseln.\n"
 
-#: g10/keyedit.c:1238
+#: g10/keyedit.c:1295
 msgid "Please select at most one secondary key.\n"
 msgstr "Bitte wählen Sie höchstens einen Zweitschlüssel aus.\n"
 
-#: g10/keyedit.c:1242
+#: g10/keyedit.c:1299
 msgid "Changing exiration time for a secondary key.\n"
 msgstr "Ändern des Verfallsdatums des Zweitschlüssels.\n"
 
-#: g10/keyedit.c:1244
+#: g10/keyedit.c:1301
 msgid "Changing exiration time for the primary key.\n"
 msgstr "Ändern des Verfallsdatums des Hauptschlüssels.\n"
 
-#: g10/keyedit.c:1285
+#: g10/keyedit.c:1342
 msgid "You can't change the expiration date of a v3 key\n"
 msgstr "Sie können das Verfallsdatum eines v3-Schlüssels nicht ändern\n"
 
-#: g10/keyedit.c:1301
+#: g10/keyedit.c:1358
 msgid "No corresponding signature in secret ring\n"
 msgstr "Keine entsprechende Signatur im geheimen Schlüsselbund\n"
 
-#: g10/keyedit.c:1361
+#: g10/keyedit.c:1418
 #, c-format
 msgid "No user id with index %d\n"
 msgstr "Keine User-ID mit Index %d\n"
 
-#: g10/keyedit.c:1407
+#: g10/keyedit.c:1464
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr "Kein Zweitschlüssel mit Index %d\n"
 
-#: g10/mainproc.c:184
+#: g10/keyedit.c:1562
+#, fuzzy
+msgid "user ID: \""
+msgstr "Geben Sie die User-ID ein: "
+
+#: g10/keyedit.c:1565
+#, fuzzy, c-format
+msgid ""
+"\"\n"
+"signed with your key %08lX at %s\n"
+msgstr "Nichts zu beglaubigen für Schlüssel %08lX\n"
+
+#: g10/keyedit.c:1569
+#, fuzzy
+msgid "Create a revocation certificate for this signature? (y/N)"
+msgstr "Ein Schlüsselwiderruf-Zertifikat erzeugen"
+
+#: g10/keyedit.c:1649
+#, fuzzy
+msgid "Really create the revocation certificates? (y/N)"
+msgstr "Ein Schlüsselwiderruf-Zertifikat erzeugen"
+
+#: g10/keyedit.c:1672
+#, fuzzy
+msgid "no secret key\n"
+msgstr "Falscher geheimer Schlüssel"
+
+#: g10/mainproc.c:185
 #, fuzzy, c-format
 msgid "public key is %08lX\n"
 msgstr "Öffentlicher Schlüssel nicht gefunden"
 
-#: g10/mainproc.c:212
+#: g10/mainproc.c:213
 msgid "public key encrypted data: good DEK\n"
 msgstr "Mit öffentlichem Schüssel verschlüsselte Daten: Korrekte DEK\n"
 
 #. fixme: defer this message until we have parsed all packets of
 #. * this type - do this by building a list of keys with their stati
-#. * and store it with the conetxt.  do_proc_packets can then use
+#. * and store it with the context.  do_proc_packets can then use
 #. * this list to display some information
-#: g10/mainproc.c:219
+#: g10/mainproc.c:220
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "Entschlüsselung mit öffentlichem Schlüssel fehlgeschlagen: %s\n"
 
-#: g10/mainproc.c:246
+#: g10/mainproc.c:249
 msgid "decryption okay\n"
 msgstr "Enschlüsselung fehlgeschlagen: %s\n"
 
-#: g10/mainproc.c:249
+#: g10/mainproc.c:253
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "Enschlüsselung fehlgeschlagen: %s\n"
 
-#: g10/mainproc.c:266
+#: g10/mainproc.c:270
 msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr ""
 "Hinweis: Der Absender verlangte Vertraulichkeit(\"for-your-eyes-only\")\n"
 
-#: g10/mainproc.c:268
+#: g10/mainproc.c:272
 #, c-format
 msgid "original file name='%.*s'\n"
 msgstr "Ursprünglicher Dateiname='%.*s'\n"
 
-#: g10/mainproc.c:849
+#: g10/mainproc.c:876
 msgid "signature verification suppressed\n"
 msgstr "Unterschriften-Überprüfung unterdrückt\n"
 
 # Scripte scannen lt. dl1bke auf "ID (0-9A-F)+" deswegen muß "ID" rein :-(
-#: g10/mainproc.c:855
+#: g10/mainproc.c:883
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Unterschrift vom %.*s, %s Schlüssel ID %08lX\n"
 
+#: g10/mainproc.c:895
+#, fuzzy
+msgid "encrypted message is valid\n"
+msgstr "Das ausgewählte Hashverfahren ist ungültig\n"
+
+#: g10/mainproc.c:899
+msgid "WARNING: encrypted message has been manipulated!\n"
+msgstr ""
+
+#: g10/mainproc.c:904
+#, fuzzy, c-format
+msgid "Can't check MDC: %s\n"
+msgstr "Unterschrift kann nicht geprüft werden: %s\n"
+
 #. just in case that we have no userid
-#: g10/mainproc.c:881 g10/mainproc.c:892
+#: g10/mainproc.c:925 g10/mainproc.c:936
 msgid "BAD signature from \""
 msgstr "FALSCHE Unterschrift von \""
 
-#: g10/mainproc.c:882 g10/mainproc.c:893
+#: g10/mainproc.c:926 g10/mainproc.c:937
 msgid "Good signature from \""
 msgstr "Korrekte Unterschrift von \""
 
-#: g10/mainproc.c:884
+#: g10/mainproc.c:928
 msgid "                aka \""
 msgstr "                    alias \""
 
-#: g10/mainproc.c:930
+#: g10/mainproc.c:974
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Unterschrift kann nicht geprüft werden: %s\n"
 
-#: g10/mainproc.c:1003
+#: g10/mainproc.c:1047
 msgid "old style (PGP 2.x) signature\n"
 msgstr "Unterschrift nach alter (PGP 2.x) Art\n"
 
-#: g10/mainproc.c:1008
+#: g10/mainproc.c:1052
 msgid "invalid root packet detected in proc_tree()\n"
 msgstr "ungültiges root-Paket in proc_tree() entdeckt\n"
 
@@ -2222,7 +2324,7 @@ msgstr ""
 "RSA Schlüssel sind nicht erwünscht; bitte denken Sie darüber nach, einen\n"
 "neuen Schlüssel zu erzeugen und diesen in Zukunft zu benutzen\n"
 
-#: g10/misc.c:235
+#: g10/misc.c:236
 msgid "this cipher algorithm is depreciated; please use a more standard one!\n"
 msgstr ""
 "Diees Verschlüsselungsmethode taugt nicht mehr viel; verwenden Sie eine "
@@ -2238,7 +2340,7 @@ msgstr "dieses Public-Key Verfahren %d kann nicht benutzt werden\n"
 msgid "subpacket of type %d has critical bit set\n"
 msgstr "Im Unterpaket des Typs %d ist das \"critical bit\" gesetzt\n"
 
-#: g10/passphrase.c:151
+#: g10/passphrase.c:157
 msgid ""
 "\n"
 "You need a passphrase to unlock the secret key for\n"
@@ -2248,21 +2350,21 @@ msgstr ""
 "Sie benötigen ein Mantra, um den geheimen Schlüssel zu entsperren.\n"
 "Benutzer: \""
 
-#: g10/passphrase.c:160
+#: g10/passphrase.c:166
 #, c-format
 msgid "%u-bit %s key, ID %08lX, created %s"
 msgstr "%u-Bit %s Schlüssel, ID %08lX, erzeugt %s"
 
-#: g10/passphrase.c:165
+#: g10/passphrase.c:171
 #, c-format
 msgid " (main key ID %08lX)"
 msgstr " (Hauptschlüssel-ID %08lX)"
 
-#: g10/passphrase.c:184
+#: g10/passphrase.c:190
 msgid "Enter passphrase: "
 msgstr "Geben Sie das Mantra ein: "
 
-#: g10/passphrase.c:188
+#: g10/passphrase.c:194
 msgid "Repeat passphrase: "
 msgstr "Geben Sie das Mantra nochmal ein: "
 
@@ -2302,46 +2404,52 @@ msgstr "alte Kodierung des DEK wird nicht unterst
 msgid "NOTE: cipher algorithm %d not found in preferences\n"
 msgstr "Hinweis: Verfahren %d ist kein bevorzugtes Verschlüsselungsverfahren\n"
 
-#: g10/seckey-cert.c:57
+#: g10/seckey-cert.c:55
 #, c-format
 msgid "protection algorithm %d is not supported\n"
 msgstr "Schutzverfahren %d wird nicht unterstützt\n"
 
-#: g10/seckey-cert.c:177
+#: g10/seckey-cert.c:171
 msgid "Invalid passphrase; please try again ...\n"
 msgstr "Ungültiges Mantra; versuchen Sie's doch noch einmal ...\n"
 
-#: g10/seckey-cert.c:232
+#: g10/seckey-cert.c:227
 msgid "WARNING: Weak key detected - please change passphrase again.\n"
 msgstr ""
 "WARNUNG: Unsicherer Schlüssel entdeckt -\n"
 "         bitte Mantra nochmals wechseln.\n"
 
-#: g10/sig-check.c:195
+#: g10/sig-check.c:186
+#, fuzzy
+msgid "assuming bad MDC due to an unknown critical bit\n"
+msgstr ""
+"Vermutlich eine FALSCHE Unterschrift, wegen unbekanntem \"critical bit\"\n"
+
+#: g10/sig-check.c:282
 msgid ""
 "this is a PGP generated ElGamal key which is NOT secure for signatures!\n"
 msgstr ""
 "Dieser durch PGP erzeugte ElGamal-Schlüssel ist für Signaturen NICHT sicher "
 "genug!\n"
 
-#: g10/sig-check.c:203
+#: g10/sig-check.c:290
 #, c-format
 msgid "public key is %lu second newer than the signature\n"
 msgstr ""
 "Öffentlicher Schlüssel ist um %lu Sekunde jünger als die Unterschrift\n"
 
-#: g10/sig-check.c:204
+#: g10/sig-check.c:291
 #, c-format
 msgid "public key is %lu seconds newer than the signature\n"
 msgstr ""
 "Öffentlicher Schlüssel ist um %lu Sekunden jünger als die Unterschrift\n"
 
-#: g10/sig-check.c:220
+#: g10/sig-check.c:307
 #, c-format
 msgid "NOTE: signature key expired %s\n"
 msgstr "Hinweis: Schlüssel der Signatur ist verfallen am %s.\n"
 
-#: g10/sig-check.c:277
+#: g10/sig-check.c:364
 msgid "assuming bad signature due to an unknown critical bit\n"
 msgstr ""
 "Vermutlich eine FALSCHE Unterschrift, wegen unbekanntem \"critical bit\"\n"
@@ -2351,7 +2459,7 @@ msgstr ""
 msgid "%s signature from: %s\n"
 msgstr "%s Unterschrift von: %s\n"
 
-#: g10/sign.c:210 g10/sign.c:493
+#: g10/sign.c:210 g10/sign.c:496
 #, c-format
 msgid "can't create %s: %s\n"
 msgstr "%s kann nicht erzeugt werden: %s\n"
@@ -2360,11 +2468,6 @@ msgstr "%s kann nicht erzeugt werden: %s\n"
 msgid "signing:"
 msgstr "unterschreibe:"
 
-#: g10/sign.c:346
-#, c-format
-msgid "WARNING: `%s' is an empty file\n"
-msgstr "WARNUNG: '%s' ist eine leere Datei.\n"
-
 #: g10/textfilter.c:122
 #, c-format
 msgid "can't handle text lines longer than %d characters\n"
@@ -2375,12 +2478,12 @@ msgstr "Textzeilen l
 msgid "input line longer than %d characters\n"
 msgstr "ungültige ASCII-Hülle: Zeile ist länger als %d Zeichen\n"
 
-#: g10/tdbio.c:116 g10/tdbio.c:1504
+#: g10/tdbio.c:116 g10/tdbio.c:1505
 #, c-format
 msgid "trustdb rec %lu: lseek failed: %s\n"
 msgstr "trustdb Satz %lu: lseek fehlgeschlagen: %s\n"
 
-#: g10/tdbio.c:122 g10/tdbio.c:1511
+#: g10/tdbio.c:122 g10/tdbio.c:1512
 #, c-format
 msgid "trustdb rec %lu: write failed (n=%d): %s\n"
 msgstr "trustdb Satz %lu: write fehlgeschlagen (n=%d): %s\n"
@@ -2409,12 +2512,12 @@ msgstr "%s: Verzeichnis erzeugt\n"
 msgid "%s: directory does not exist!\n"
 msgstr "%s: Verzeichnis existiert nicht!\n"
 
-#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1325 g10/tdbio.c:457
+#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1344 g10/tdbio.c:457
 #, c-format
 msgid "%s: can't create: %s\n"
 msgstr "%s: kann nicht erzeugt werden: %s\n"
 
-#: g10/tdbio.c:472 g10/tdbio.c:520
+#: g10/tdbio.c:472 g10/tdbio.c:521
 #, c-format
 msgid "%s: can't create lock\n"
 msgstr "%s: Sperre kann nicht erzeugt werden\n"
@@ -2429,83 +2532,83 @@ msgstr "%s: Fehler beim Erzeugen des Versionsatzes: %s"
 msgid "%s: invalid trustdb created\n"
 msgstr "%s: ungültige trust-db erzeugt\n"
 
-#: g10/tdbio.c:492
+#: g10/tdbio.c:493
 #, c-format
 msgid "%s: trustdb created\n"
 msgstr "%s: trust-db erzeugt\n"
 
-#: g10/tdbio.c:529
+#: g10/tdbio.c:530
 #, c-format
 msgid "%s: invalid trustdb\n"
 msgstr "%s: ungültige 'Trust'-Datenbank\n"
 
-#: g10/tdbio.c:562
+#: g10/tdbio.c:563
 #, c-format
 msgid "%s: failed to create hashtable: %s\n"
 msgstr "%s: hashtable kann nicht erzeugt werden: %s\n"
 
-#: g10/tdbio.c:570
+#: g10/tdbio.c:571
 #, c-format
 msgid "%s: error updating version record: %s\n"
 msgstr "%s: Fehler beim Ändern des Versionsatzes: %s\n"
 
-#: g10/tdbio.c:586 g10/tdbio.c:625 g10/tdbio.c:647 g10/tdbio.c:677
-#: g10/tdbio.c:702 g10/tdbio.c:1437 g10/tdbio.c:1464
+#: g10/tdbio.c:587 g10/tdbio.c:626 g10/tdbio.c:648 g10/tdbio.c:678
+#: g10/tdbio.c:703 g10/tdbio.c:1438 g10/tdbio.c:1465
 #, c-format
 msgid "%s: error reading version record: %s\n"
 msgstr "%s: Fehler beim Lesen des Versionsatzes: %s\n"
 
-#: g10/tdbio.c:599 g10/tdbio.c:658
+#: g10/tdbio.c:600 g10/tdbio.c:659
 #, c-format
 msgid "%s: error writing version record: %s\n"
 msgstr "%s: Fehler beim Schreiben des Versionsatzes: %s\n"
 
-#: g10/tdbio.c:1131
+#: g10/tdbio.c:1132
 #, c-format
 msgid "trustdb: lseek failed: %s\n"
 msgstr "trustdb: lseek fehlgeschlagen: %s\n"
 
-#: g10/tdbio.c:1139
+#: g10/tdbio.c:1140
 #, c-format
 msgid "trustdb: read failed (n=%d): %s\n"
 msgstr "trustdb: read failed (n=%d): %s\n"
 
-#: g10/tdbio.c:1160
+#: g10/tdbio.c:1161
 #, c-format
 msgid "%s: not a trustdb file\n"
 msgstr "%s: keine trustdb Datei\n"
 
-#: g10/tdbio.c:1176
+#: g10/tdbio.c:1177
 #, c-format
 msgid "%s: version record with recnum %lu\n"
 msgstr "%s: version record with recnum %lu\n"
 
-#: g10/tdbio.c:1181
+#: g10/tdbio.c:1182
 #, c-format
 msgid "%s: invalid file version %d\n"
 msgstr "%s: invalid file version %d\n"
 
-#: g10/tdbio.c:1470
+#: g10/tdbio.c:1471
 #, c-format
 msgid "%s: error reading free record: %s\n"
 msgstr "%s: Fehler beim Lesen eines freien Satzes: %s\n"
 
-#: g10/tdbio.c:1478
+#: g10/tdbio.c:1479
 #, c-format
 msgid "%s: error writing dir record: %s\n"
 msgstr "%s: Fehler beim Schreiben eines Verzeichnis-Satzes: %s\n"
 
-#: g10/tdbio.c:1488
+#: g10/tdbio.c:1489
 #, c-format
 msgid "%s: failed to zero a record: %s\n"
 msgstr "%s: konnte einen Satz nicht Nullen: %s\n"
 
-#: g10/tdbio.c:1518
+#: g10/tdbio.c:1519
 #, c-format
 msgid "%s: failed to append a record: %s\n"
 msgstr "%s: konnte Satz nicht anhängen: %s\n"
 
-#: g10/tdbio.c:1629
+#: g10/tdbio.c:1630
 msgid "The trustdb is corrupted; please run \"gpgm --fix-trustdb\".\n"
 msgstr ""
 "Die \"Trust\"-Datenbank ist beschädigt; verwenden Sie \"gpgm "
@@ -2722,7 +2825,7 @@ msgstr "Zu viele Einstellungen"
 msgid "Too many preference items"
 msgstr "Zu viele Angaben zur Bevorzugung"
 
-#: g10/trustdb.c:1549 g10/trustdb.c:3045 g10/trustdb.c:3075
+#: g10/trustdb.c:1549 g10/trustdb.c:3075 g10/trustdb.c:3105
 msgid "WARNING: can't yet handle long pref records\n"
 msgstr "WARNUNG: Lange 'Pref'-Records können noch nicht benutzt werden\n"
 
@@ -2891,22 +2994,22 @@ msgstr "Schl
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr "Schlüssel %08lX.%lu: Vertrauensprüfung fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:2851
+#: g10/trustdb.c:2881
 #, c-format
 msgid "user '%s' not found: %s\n"
 msgstr "Benutzer '%s' nicht gefunden: %s\n"
 
-#: g10/trustdb.c:2853
+#: g10/trustdb.c:2883
 #, c-format
 msgid "problem finding '%s' in trustdb: %s\n"
 msgstr "Problem, '%s' in der Trust-DB zu finden: %s\n"
 
-#: g10/trustdb.c:2856
+#: g10/trustdb.c:2886
 #, c-format
 msgid "user '%s' not in trustdb - inserting\n"
 msgstr "User '%s' ist nicht in der 'Trust'-Datenbank - wird eingefügt\n"
 
-#: g10/trustdb.c:2859
+#: g10/trustdb.c:2889
 #, c-format
 msgid "failed to put '%s' into trustdb: %s\n"
 msgstr "konnte '%s' nicht in die 'Trust'-Datenbank hineintun: %s\n"
@@ -2916,26 +3019,26 @@ msgstr "konnte '%s' nicht in die 'Trust'-Datenbank hineintun: %s\n"
 msgid "%s: can't create keyring: %s\n"
 msgstr "%s: Schlüsselbund kann nicht erzeugt werden: %s\n"
 
-#: g10/ringedit.c:322 g10/ringedit.c:1330
+#: g10/ringedit.c:333 g10/ringedit.c:1349
 #, c-format
 msgid "%s: keyring created\n"
 msgstr "%s: Schlüsselbund erstellt\n"
 
-#: g10/ringedit.c:1507
+#: g10/ringedit.c:1526
 msgid "WARNING: 2 files with confidential information exists.\n"
 msgstr "Warnung: Zwei Dateien mit vertraulichem Inhalt vorhanden.\n"
 
-#: g10/ringedit.c:1508
+#: g10/ringedit.c:1527
 #, c-format
 msgid "%s is the unchanged one\n"
 msgstr "%s ist der Unveränderte\n"
 
-#: g10/ringedit.c:1509
+#: g10/ringedit.c:1528
 #, c-format
 msgid "%s is the new one\n"
 msgstr "%s ist der Neue\n"
 
-#: g10/ringedit.c:1510
+#: g10/ringedit.c:1529
 msgid "Please fix this possible security flaw\n"
 msgstr "Bitte diesen potentiellen Sicherheitsmangel beseitigen\n"
 
@@ -2983,17 +3086,17 @@ msgstr "die unterzeichneten Daten sind wohl in '%s'\n"
 msgid "%s: new options file created\n"
 msgstr "%s: neue Optionendatei erstellt\n"
 
-#: g10/encr-data.c:59
+#: g10/encr-data.c:60
 #, c-format
 msgid "%s encrypted data\n"
 msgstr "%s verschlüsselte Daten\n"
 
-#: g10/encr-data.c:61
+#: g10/encr-data.c:62
 #, c-format
 msgid "encrypted with unknown algorithm %d\n"
 msgstr "Mit unbekanntem Verfahren verschlüsselt %d\n"
 
-#: g10/encr-data.c:74
+#: g10/encr-data.c:77
 msgid ""
 "WARNING: message was encrypted with a weak key in the symmetric cipher.\n"
 msgstr ""
@@ -3242,6 +3345,19 @@ msgstr "Keine Hilfe vorhanden."
 msgid "No help available for `%s'"
 msgstr "Keine Hilfe für '%s' vorhanden."
 
+#~ msgid "Usage: gpgm [options] [files] (-h for help)"
+#~ msgstr "Syntax: gpgm [Optionen] [Dateien] (-h für Hilfe)"
+
+#~ msgid ""
+#~ "Syntax: gpgm [options] [files]\n"
+#~ "GnuPG maintenance utility\n"
+#~ msgstr ""
+#~ "Syntax: gpgm [options] [files]\n"
+#~ "GnuPG Wartungs-Hilfsprogramm\n"
+
+#~ msgid "usage: gpgm [options] "
+#~ msgstr "Aufruf: gpgm [Optionen] "
+
 #~ msgid "|KEYID|ulimately trust this key"
 #~ msgstr "|KEYID|Diesem Schlüssel uneingeschränkt vertrauen"
 
@@ -3326,9 +3442,6 @@ msgstr "Keine Hilfe f
 #~ msgid "did not use primary key for insert_trust_record()\n"
 #~ msgstr "Für insert_trust_record() wurde nicht der Hauptschlüssel benutzt\n"
 
-#~ msgid "use this user-id for encryption"
-#~ msgstr "Verschlüsseln für diese User-ID"
-
 #~ msgid "second"
 #~ msgstr "Sekunde"
 
index bc11aaa..22a629b 100644 (file)
@@ -5,7 +5,7 @@
 # I also got inspiration from it.po by Marco d'Itri <md@linux.it>
 msgid ""
 msgstr ""
-"POT-Creation-Date: 1999-03-20 13:40+0100\n"
+"POT-Creation-Date: 1999-05-06 13:37+0200\n"
 "Content-Type: text/plain; charset=iso-8859-1\n"
 "Date: 1998-11-13 10:49:25+0100\n"
 "From: Urko Lusa <ulusa@lacueva.ddns.org>\n"
@@ -31,11 +31,11 @@ msgstr ""
 msgid "(you may have used the wrong program for this task)\n"
 msgstr ""
 
-#: util/miscutil.c:143
+#: util/miscutil.c:156
 msgid "yes"
 msgstr "sí"
 
-#: util/miscutil.c:144
+#: util/miscutil.c:157
 msgid "yY"
 msgstr "sS"
 
@@ -231,6 +231,11 @@ msgstr "No soportado"
 msgid "network error"
 msgstr "Error general"
 
+#: util/errors.c:102
+#, fuzzy
+msgid "not encrypted"
+msgstr "datos cifrados %s\n"
+
 #: util/logger.c:178
 #, c-format
 msgid "... this is a bug (%s:%d:%s)\n"
@@ -241,11 +246,11 @@ msgstr "
 msgid "you found a bug ... (%s:%d)\n"
 msgstr "Ha encontrado Vd. un bug... (%s:%d)\n"
 
-#: cipher/random.c:403
+#: cipher/random.c:408
 msgid "WARNING: using insecure random number generator!!\n"
 msgstr "Aviso: ¡se está usando un generador de números aleatorios inseguro!\n"
 
-#: cipher/random.c:404
+#: cipher/random.c:409
 msgid ""
 "The random number generator is only a kludge to let\n"
 "it run - it is in no way a strong RNG!\n"
@@ -271,7 +276,7 @@ msgstr ""
 "otro trabajo para que el sistema pueda recolectar más entropía\n"
 "(se necesitan %d bytes más).\n"
 
-#: g10/g10.c:166
+#: g10/g10.c:163
 msgid ""
 "@Commands:\n"
 " "
@@ -279,131 +284,131 @@ msgstr ""
 "@Comandos:\n"
 " "
 
-#: g10/g10.c:169
+#: g10/g10.c:165
 msgid "|[file]|make a signature"
 msgstr "|[file]|hace una firma"
 
-#: g10/g10.c:170
+#: g10/g10.c:166
 msgid "|[file]|make a clear text signature"
 msgstr "|[file]|hace una firma en texto claro"
 
-#: g10/g10.c:171
+#: g10/g10.c:167
 msgid "make a detached signature"
 msgstr "hace una firma separada"
 
-#: g10/g10.c:172
+#: g10/g10.c:168
 msgid "encrypt data"
 msgstr "cifra datos"
 
-#: g10/g10.c:173
+#: g10/g10.c:169
 msgid "encryption only with symmetric cipher"
 msgstr "cifra sólo con un cifrado simétrico"
 
-#: g10/g10.c:174
+#: g10/g10.c:170
 msgid "store only"
 msgstr "sólo almacenar"
 
-#: g10/g10.c:175
+#: g10/g10.c:171
 msgid "decrypt data (default)"
 msgstr "descifra datos (predefinido)"
 
-#: g10/g10.c:176
+#: g10/g10.c:172
 msgid "verify a signature"
 msgstr "verifica una firma"
 
-#: g10/g10.c:178
+#: g10/g10.c:173
 msgid "list keys"
 msgstr "lista las claves"
 
-#: g10/g10.c:179
+#: g10/g10.c:175
 msgid "list keys and signatures"
 msgstr "lista las claves y firmas"
 
-#: g10/g10.c:180
+#: g10/g10.c:176
 msgid "check key signatures"
 msgstr "comprueba las firmas de las claves"
 
-#: g10/g10.c:181
+#: g10/g10.c:177
 msgid "list keys and fingerprints"
 msgstr "lista las claves y huellas dactilares"
 
-#: g10/g10.c:182
+#: g10/g10.c:178
 msgid "list secret keys"
 msgstr "lista las claves secretas"
 
-#: g10/g10.c:184
+#: g10/g10.c:179
 msgid "generate a new key pair"
 msgstr "genera un nuevo par de claves"
 
-#: g10/g10.c:186
+#: g10/g10.c:180
 msgid "remove key from the public keyring"
 msgstr "elimina la clave del anillo público"
 
-#: g10/g10.c:188
+#: g10/g10.c:181
 msgid "sign or edit a key"
 msgstr "firma o modifica una clave"
 
-#: g10/g10.c:189
+#: g10/g10.c:182
 msgid "generate a revocation certificate"
 msgstr "genera un certificado de revocación"
 
-#: g10/g10.c:191
+#: g10/g10.c:183
 msgid "export keys"
 msgstr "exporta las claves"
 
-#: g10/g10.c:192
+#: g10/g10.c:184
 msgid "export keys to a key server"
 msgstr ""
 
-#: g10/g10.c:193
+#: g10/g10.c:185
 msgid "import keys from a key server"
 msgstr ""
 
-#: g10/g10.c:196
+#: g10/g10.c:188
 msgid "import/merge keys"
 msgstr "importa/fusiona las claves"
 
-#: g10/g10.c:198
+#: g10/g10.c:190
 msgid "list only the sequence of packets"
 msgstr "lista sólo la secuencia de paquetes"
 
-#: g10/g10.c:201
+#: g10/g10.c:192
 msgid "export the ownertrust values"
 msgstr "exporta los valores de confianza"
 
-#: g10/g10.c:203
+#: g10/g10.c:194
 msgid "import ownertrust values"
 msgstr "importa los valores de confianza"
 
-#: g10/g10.c:205
+#: g10/g10.c:196
 msgid "|[NAMES]|update the trust database"
 msgstr "|[NOMBRES]|actualiza la base de datos de confianza"
 
-#: g10/g10.c:207
+#: g10/g10.c:198
 msgid "|[NAMES]|check the trust database"
 msgstr "|[NOMBRES]|comprueba la base de datos de confianza"
 
-#: g10/g10.c:208
+#: g10/g10.c:199
 msgid "fix a corrupted trust database"
 msgstr "arregla una base de datos de confianza dañada"
 
-#: g10/g10.c:209
+#: g10/g10.c:200
 msgid "De-Armor a file or stdin"
 msgstr "quita la armadura de un fichero o stdin"
 
-#: g10/g10.c:210
+#: g10/g10.c:201
 msgid "En-Armor a file or stdin"
 msgstr "crea la armadura a un fichero o stdin"
 
-#: g10/g10.c:211
+#: g10/g10.c:202
 msgid "|algo [files]|print message digests"
 msgstr "|algo [files]|imprime resúmenes de mensaje"
 
-#: g10/g10.c:212
+#: g10/g10.c:203
 msgid "print all message digests"
 msgstr "imprime todos los resúmenes de mensaje"
 
-#: g10/g10.c:219
+#: g10/g10.c:209
 msgid ""
 "@\n"
 "Options:\n"
@@ -413,148 +418,153 @@ msgstr ""
 "Opciones:\n"
 " "
 
-#: g10/g10.c:221
+#: g10/g10.c:211
 msgid "create ascii armored output"
 msgstr "crea una salida ascii con armadura"
 
-#: g10/g10.c:222
+#: g10/g10.c:212
 #, fuzzy
 msgid "|NAME|encrypt for NAME"
 msgstr "|NOMBRE|usa el juego de caracteres NOMBRE"
 
-#: g10/g10.c:227
+#: g10/g10.c:216
 msgid "use this user-id to sign or decrypt"
 msgstr "usa este usuario para firmar o descifrar"
 
-#: g10/g10.c:228
+#: g10/g10.c:217
 msgid "|N|set compress level N (0 disables)"
 msgstr "|N|establece nivel de compresión N (0 no comprime)"
 
-#: g10/g10.c:230
+#: g10/g10.c:219
 msgid "use canonical text mode"
 msgstr "usa modo de texto canónico"
 
-#: g10/g10.c:232
+#: g10/g10.c:220
 msgid "use as output file"
 msgstr "usa como fichero de salida"
 
-#: g10/g10.c:233
+#: g10/g10.c:221
 msgid "verbose"
 msgstr "prolijo"
 
-#: g10/g10.c:234
+#: g10/g10.c:222
 msgid "be somewhat more quiet"
 msgstr "algo más discreto"
 
-#: g10/g10.c:235
+#: g10/g10.c:223
 msgid "force v3 signatures"
 msgstr "fuerza firmas v3"
 
-#: g10/g10.c:236
+#: g10/g10.c:224
+#, fuzzy
+msgid "always use a MDC for encryption"
+msgstr "usa este usuario para cifrar"
+
+#: g10/g10.c:225
 msgid "do not make any changes"
 msgstr ""
 
-#: g10/g10.c:237
+#: g10/g10.c:226
 msgid "batch mode: never ask"
 msgstr "proceso por lotes: nunca preguntar"
 
-#: g10/g10.c:238
+#: g10/g10.c:227
 msgid "assume yes on most questions"
 msgstr "asume \"sí\" en casi todas las preguntas"
 
-#: g10/g10.c:239
+#: g10/g10.c:228
 msgid "assume no on most questions"
 msgstr "asume \"no\" en casi todas las preguntas"
 
-#: g10/g10.c:240
+#: g10/g10.c:229
 msgid "add this keyring to the list of keyrings"
 msgstr "añade este anillo a la lista de anillos"
 
-#: g10/g10.c:241
+#: g10/g10.c:230
 msgid "add this secret keyring to the list"
 msgstr "añade este anillo secreto a la lista"
 
-#: g10/g10.c:242
+#: g10/g10.c:231
 msgid "|NAME|use NAME as default secret key"
 msgstr "|NOMBRE|usa NOMBRE como clave secreta por defecto"
 
-#: g10/g10.c:243
+#: g10/g10.c:232
 msgid "|HOST|use this keyserver to lookup keys"
 msgstr ""
 
-#: g10/g10.c:244
+#: g10/g10.c:233
 msgid "|NAME|set terminal charset to NAME"
 msgstr "|NOMBRE|usa el juego de caracteres NOMBRE"
 
-#: g10/g10.c:245
+#: g10/g10.c:234
 msgid "read options from file"
 msgstr "lee opciones del fichero"
 
-#: g10/g10.c:247
+#: g10/g10.c:236
 msgid "set debugging flags"
 msgstr "establece los parámetros de depuración"
 
-#: g10/g10.c:248
+#: g10/g10.c:237
 msgid "enable full debugging"
 msgstr "habilita depuración completa"
 
-#: g10/g10.c:249
+#: g10/g10.c:238
 msgid "|FD|write status info to this FD"
 msgstr "|DF|escribe información de estado en descriptor DF"
 
-#: g10/g10.c:250
+#: g10/g10.c:239
 msgid "do not write comment packets"
 msgstr "no escribe paquetes de comentario"
 
-#: g10/g10.c:251
+#: g10/g10.c:240
 msgid "(default is 1)"
 msgstr "(por defecto es 1)"
 
-#: g10/g10.c:252
+#: g10/g10.c:241
 msgid "(default is 3)"
 msgstr "(por defecto es 3)"
 
-#: g10/g10.c:254
+#: g10/g10.c:243
 msgid "|FILE|load extension module FILE"
 msgstr "|FICHERO|carga módulo de extensiones FICHERO"
 
-#: g10/g10.c:255
+#: g10/g10.c:244
 msgid "emulate the mode described in RFC1991"
 msgstr "emula el modo descrito en la RFC1991"
 
-#: g10/g10.c:256
+#: g10/g10.c:245
 msgid "|N|use passphrase mode N"
 msgstr "|N|usa modo de contraseña N"
 
-#: g10/g10.c:258
+#: g10/g10.c:247
 msgid "|NAME|use message digest algorithm NAME for passphrases"
 msgstr ""
 "|NOMBRE|usa algoritmo de resumen de mensaje NOMBRE\n"
 "para las contraseñas"
 
-#: g10/g10.c:260
+#: g10/g10.c:249
 msgid "|NAME|use cipher algorithm NAME for passphrases"
 msgstr ""
 "|NOMBRE|usa el algoritmo de cifrado NOMBRE para las\n"
 "contraseñas"
 
-#: g10/g10.c:262
+#: g10/g10.c:250
 msgid "|NAME|use cipher algorithm NAME"
 msgstr "|NOMBRE|usa el algoritmo de cifrado NOMBRE"
 
-#: g10/g10.c:263
+#: g10/g10.c:251
 msgid "|NAME|use message digest algorithm NAME"
 msgstr "|NOMBRE|usa algoritmo de resumen de mensaje NOMBRE"
 
-#: g10/g10.c:264
+#: g10/g10.c:252
 msgid "|N|use compress algorithm N"
 msgstr "|N|usa el algoritmo de compresión N"
 
-#: g10/g10.c:265
+#: g10/g10.c:253
 msgid "throw keyid field of encrypted packets"
 msgstr "elimina el campo keyid de los paquetes cifrados"
 
-#: g10/g10.c:273
+#: g10/g10.c:255
 msgid ""
 "@\n"
 "Examples:\n"
@@ -574,27 +584,15 @@ msgstr ""
 " --list-keys [nombres]      muestra las claves\n"
 " --fingerprint [nombres]    muestra las huellas dactilares\n"
 
-#: g10/g10.c:353
+#: g10/g10.c:323
 msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
 msgstr "Por favor, informe de posibles \"bugs\" a <gnupg-bugs@gnu.org>.\n"
 
-#: g10/g10.c:358
-msgid "Usage: gpgm [options] [files] (-h for help)"
-msgstr "Uso: gpgm [opciones] [ficheros] (-h para ayuda)"
-
-#: g10/g10.c:360
+#: g10/g10.c:327
 msgid "Usage: gpg [options] [files] (-h for help)"
 msgstr "Uso: gpg [opciones] [ficheros] (-h para ayuda)"
 
-#: g10/g10.c:365
-msgid ""
-"Syntax: gpgm [options] [files]\n"
-"GnuPG maintenance utility\n"
-msgstr ""
-"Sintaxis: gpgm [opciones] [ficheros]\n"
-"Utilidad de mantenimiento de GnuPG\n"
-
-#: g10/g10.c:368
+#: g10/g10.c:330
 msgid ""
 "Syntax: gpg [options] [files]\n"
 "sign, check, encrypt or decrypt\n"
@@ -604,7 +602,7 @@ msgstr ""
 "firma, comprueba, cifra o descifra\n"
 "la operación por defecto depende del tipo de datos de entrada\n"
 
-#: g10/g10.c:374
+#: g10/g10.c:335
 msgid ""
 "\n"
 "Supported algorithms:\n"
@@ -612,222 +610,218 @@ msgstr ""
 "\n"
 "Algoritmos soportados:\n"
 
-#: g10/g10.c:449
-msgid "usage: gpgm [options] "
-msgstr "uso: gpgm [opciones] "
-
-#: g10/g10.c:451
+#: g10/g10.c:409
 msgid "usage: gpg [options] "
 msgstr "uso: gpg [opciones] "
 
-#: g10/g10.c:492
+#: g10/g10.c:449
 msgid "conflicting commands\n"
 msgstr "comandos incompatibles\n"
 
-#: g10/g10.c:631
+#: g10/g10.c:576
 #, c-format
 msgid "NOTE: no default option file `%s'\n"
 msgstr "nota: no existe fichero de opciones predefinido `%s'\n"
 
-#: g10/g10.c:635
+#: g10/g10.c:580
 #, c-format
 msgid "option file `%s': %s\n"
 msgstr "fichero de opciones `%s': %s\n"
 
-#: g10/g10.c:642
+#: g10/g10.c:587
 #, c-format
 msgid "reading options from `%s'\n"
 msgstr "leyendo opciones desde `%s'\n"
 
-#: g10/g10.c:797
+#: g10/g10.c:731
 #, c-format
 msgid "%s is not a valid character set\n"
 msgstr "%s no es un juego de caracteres válido\n"
 
-#: g10/g10.c:838 g10/g10.c:850
+#: g10/g10.c:774 g10/g10.c:786
 msgid "selected cipher algorithm is invalid\n"
 msgstr "el algoritmo de cifrado seleccionado no es válido\n"
 
-#: g10/g10.c:844 g10/g10.c:856
+#: g10/g10.c:780 g10/g10.c:792
 msgid "selected digest algorithm is invalid\n"
 msgstr "el algoritmo de resumen seleccionado no es válido\n"
 
-#: g10/g10.c:859
+#: g10/g10.c:795
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "el algoritmo de compresión debe estar en el rango %d-%d\n"
 
-#: g10/g10.c:861
+#: g10/g10.c:797
 msgid "completes-needed must be greater than 0\n"
 msgstr "completes-needed debe ser mayor que 0\n"
 
-#: g10/g10.c:863
+#: g10/g10.c:799
 msgid "marginals-needed must be greater than 1\n"
 msgstr "marginals-needed debe ser mayor que 1\n"
 
-#: g10/g10.c:865
+#: g10/g10.c:801
 msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr "max-cert-depth debe estar en el rango 1-255\n"
 
-#: g10/g10.c:868
+#: g10/g10.c:804
 msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr "nota: el modo S2K simple (0) no es nada recomendable\n"
 
-#: g10/g10.c:872
+#: g10/g10.c:808
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr "modo S2K incorrecto; debe ser 0, 1 o 3\n"
 
-#: g10/g10.c:949
+#: g10/g10.c:885
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "inicialización de la base de datos de confianza fallida: %s\n"
 
-#: g10/g10.c:955
+#: g10/g10.c:891
 msgid "--store [filename]"
 msgstr "--store [nombre_fichero]"
 
-#: g10/g10.c:963
+#: g10/g10.c:898
 msgid "--symmetric [filename]"
 msgstr "--symmetric [nombre_fichero]"
 
-#: g10/g10.c:971
+#: g10/g10.c:906
 msgid "--encrypt [filename]"
 msgstr "--encrypt [nombre_fichero]"
 
-#: g10/g10.c:984
+#: g10/g10.c:919
 msgid "--sign [filename]"
 msgstr "--sign [nombre_fichero]"
 
-#: g10/g10.c:997
+#: g10/g10.c:932
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [nombre_fichero]"
 
-#: g10/g10.c:1011
+#: g10/g10.c:946
 msgid "--clearsign [filename]"
 msgstr "--clearsign [nombre_fichero]"
 
-#: g10/g10.c:1023
+#: g10/g10.c:958
 msgid "--decrypt [filename]"
 msgstr "--decrypt [nombre_fichero]"
 
-#: g10/g10.c:1032
+#: g10/g10.c:967
 msgid "--edit-key username [commands]"
 msgstr "--edit-key nombre_usuario"
 
-#: g10/g10.c:1048
+#: g10/g10.c:981
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key nombre_usuario"
 
-#: g10/g10.c:1051
+#: g10/g10.c:984
 msgid "--delete-key username"
 msgstr "--delete-key nombre_usuario"
 
-#: g10/encode.c:229 g10/g10.c:1074 g10/sign.c:311
+#: g10/encode.c:234 g10/g10.c:1007 g10/sign.c:311
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "no puede abrirse `%s': %s\n"
 
-#: g10/g10.c:1085
+#: g10/g10.c:1018
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [id_usuario] [anillo]"
 
-#: g10/g10.c:1149
+#: g10/g10.c:1077
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "eliminación de armadura fallida: %s\n"
 
-#: g10/g10.c:1157
+#: g10/g10.c:1085
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "creación de armadura fallida: %s\n"
 
-#: g10/g10.c:1223
+#: g10/g10.c:1151
 #, c-format
 msgid "invalid hash algorithm `%s'\n"
 msgstr "algoritmo de distribución no válido `%s'\n"
 
-#: g10/g10.c:1302
+#: g10/g10.c:1226
 msgid "[filename]"
 msgstr "[nombre_fichero]"
 
-#: g10/g10.c:1306
+#: g10/g10.c:1230
 msgid "Go ahead and type your message ...\n"
 msgstr "Adelante, teclee el mensaje ...\n"
 
-#: g10/decrypt.c:59 g10/g10.c:1309 g10/verify.c:66
+#: g10/decrypt.c:59 g10/g10.c:1233 g10/verify.c:66
 #, c-format
 msgid "can't open `%s'\n"
 msgstr "no puede abrirse `%s'\n"
 
-#: g10/armor.c:297
+#: g10/armor.c:296
 #, c-format
 msgid "armor: %s\n"
 msgstr "armadura: %s\n"
 
-#: g10/armor.c:320
+#: g10/armor.c:319
 msgid "invalid armor header: "
 msgstr "cabecera de armadura no válida: "
 
-#: g10/armor.c:327
+#: g10/armor.c:326
 msgid "armor header: "
 msgstr "cabecera de armadura: "
 
-#: g10/armor.c:338
+#: g10/armor.c:337
 msgid "invalid clearsig header\n"
 msgstr "cabecera de firma clara no válida\n"
 
-#: g10/armor.c:390
+#: g10/armor.c:389
 msgid "nested clear text signatures\n"
 msgstr "firmas en texto claro anidadas\n"
 
-#: g10/armor.c:499
+#: g10/armor.c:498
 msgid "invalid dash escaped line: "
 msgstr "Línea con guiones no válida: "
 
-#: g10/armor.c:511
+#: g10/armor.c:510
 msgid "unexpected armor:"
 msgstr "armadura inesperada"
 
-#: g10/armor.c:628
+#: g10/armor.c:627
 #, c-format
 msgid "invalid radix64 character %02x skipped\n"
 msgstr "caracteres no válidos radix64 %02x ignorados\n"
 
-#: g10/armor.c:671
+#: g10/armor.c:670
 msgid "premature eof (no CRC)\n"
 msgstr "Fin de fichero prematuro\n"
 
-#: g10/armor.c:705
+#: g10/armor.c:704
 msgid "premature eof (in CRC)\n"
 msgstr "Fin de suma de comprobación prematuro\n"
 
-#: g10/armor.c:709
+#: g10/armor.c:708
 msgid "malformed CRC\n"
 msgstr "Suma de comprobación mal creada\n"
 
-#: g10/armor.c:713
+#: g10/armor.c:712
 #, c-format
 msgid "CRC error; %06lx - %06lx\n"
 msgstr "Error en suma de comprobación: %06lx - %06lx\n"
 
-#: g10/armor.c:730
+#: g10/armor.c:729
 msgid "premature eof (in Trailer)\n"
 msgstr "fin de fichero prematuro (en el cierre)\n"
 
-#: g10/armor.c:734
+#: g10/armor.c:733
 msgid "error in trailer line\n"
 msgstr "error en la línea de cierre\n"
 
-#: g10/armor.c:998
+#: g10/armor.c:997
 msgid "no valid OpenPGP data found.\n"
 msgstr "no se han encontrados datos OpenPGP válidos\n"
 
-#: g10/armor.c:1002
+#: g10/armor.c:1001
 #, c-format
 msgid "invalid armor: line longer than %d characters\n"
 msgstr "armadura inválida: línea más larga de %d caracteres\n"
 
-#: g10/armor.c:1006
+#: g10/armor.c:1005
 msgid ""
 "quoted printable character in armor - probably a buggy MTA has been used\n"
 msgstr ""
@@ -921,26 +915,31 @@ msgstr ""
 msgid "key %08lX: key has been revoked!\n"
 msgstr "%08lX: ¡Esta clave ha sido retirada!\n"
 
-#: g10/pkclist.c:287 g10/pkclist.c:391
+#: g10/pkclist.c:287 g10/pkclist.c:297 g10/pkclist.c:403
 msgid "Use this key anyway? "
 msgstr "¿Usar esta clave de todas formas? "
 
-#: g10/pkclist.c:311
+#: g10/pkclist.c:291
+#, fuzzy, c-format
+msgid "key %08lX: subkey has been revoked!\n"
+msgstr "%08lX: ¡Esta clave ha sido retirada!\n"
+
+#: g10/pkclist.c:321
 #, c-format
 msgid "%08lX: key has expired\n"
 msgstr "%08lX: ¡Esta clave está caducada!\n"
 
-#: g10/pkclist.c:317
+#: g10/pkclist.c:327
 #, c-format
 msgid "%08lX: no info to calculate a trust probability\n"
 msgstr "%08lX: no hay información para calcular la probabilidad de confianza\n"
 
-#: g10/pkclist.c:331
+#: g10/pkclist.c:341
 #, c-format
 msgid "%08lX: We do NOT trust this key\n"
 msgstr "%08lX: ¡Esta clave NO es de confianza!\n"
 
-#: g10/pkclist.c:337
+#: g10/pkclist.c:347
 #, c-format
 msgid ""
 "%08lX: It is not sure that this key really belongs to the owner\n"
@@ -950,15 +949,15 @@ msgstr ""
 "proprietario\n"
 "pero se acepta igualmente\n"
 
-#: g10/pkclist.c:343
+#: g10/pkclist.c:353
 msgid "This key probably belongs to the owner\n"
 msgstr "Esta clave probablemente pertenece a su proprietario\n"
 
-#: g10/pkclist.c:348
+#: g10/pkclist.c:358
 msgid "This key belongs to us\n"
 msgstr "Esta clave nos pertenece\n"
 
-#: g10/pkclist.c:386
+#: g10/pkclist.c:398
 msgid ""
 "It is NOT certain that the key belongs to its owner.\n"
 "If you *really* know what you are doing, you may answer\n"
@@ -970,56 +969,61 @@ msgstr ""
 "\"sí\" a la siguiente pregunta.\n"
 "\n"
 
-#: g10/pkclist.c:399
+#: g10/pkclist.c:411
 msgid "WARNING: Using untrusted key!\n"
 msgstr "ATENCIÓN: ¡Usando una clave no fiable!\n"
 
-#: g10/pkclist.c:435
+#: g10/pkclist.c:447
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr "ATENCIÓN: ¡Esta clave ha sido revocada por su propietario!\n"
 
-#: g10/pkclist.c:436
+#: g10/pkclist.c:448
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "          Esto puede significar que la firma está falsificada.\n"
 
-#: g10/pkclist.c:457
+#: g10/pkclist.c:452
+#, fuzzy
+msgid "WARNING: This subkey has been revoked by its owner!\n"
+msgstr "ATENCIÓN: ¡Esta clave ha sido revocada por su propietario!\n"
+
+#: g10/pkclist.c:473
 msgid "Note: This key has expired!\n"
 msgstr "Nota: ¡Esta clave está caducada!\n"
 
-#: g10/pkclist.c:464
+#: g10/pkclist.c:480
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr ""
 "ATENCIÓN: ¡Esta clave no está certificada por una firma de confianza!\n"
 
-#: g10/pkclist.c:466
+#: g10/pkclist.c:482
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr "         No hay indicios de que la firma pertenezca al propietario.\n"
 
-#: g10/pkclist.c:482
+#: g10/pkclist.c:498
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "ATENCIÓN: ¡Esta clave NO es de confianza!\n"
 
-#: g10/pkclist.c:483
+#: g10/pkclist.c:499
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "         La firma es probablemente una FALSIFICACIÓN.\n"
 
-#: g10/pkclist.c:490
+#: g10/pkclist.c:506
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 "AVISO: ¡Esta clave no está certificada con suficientes firmas de confianza!\n"
 
-#: g10/pkclist.c:493
+#: g10/pkclist.c:509
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr "         No es seguro que la firma pertenezca al propietario.\n"
 
-#: g10/pkclist.c:546 g10/pkclist.c:559 g10/pkclist.c:622 g10/pkclist.c:650
+#: g10/pkclist.c:562 g10/pkclist.c:575 g10/pkclist.c:638 g10/pkclist.c:666
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s: ignorado: %s\n"
 
-#: g10/pkclist.c:568
+#: g10/pkclist.c:584
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -1027,20 +1031,20 @@ msgstr ""
 "No se ha especificado un ID de usuario (puede usar \"-r\")\n"
 "\n"
 
-#: g10/pkclist.c:573
+#: g10/pkclist.c:589
 msgid "Enter the user ID: "
 msgstr "Introduzca el ID de usuario: "
 
-#: g10/pkclist.c:584
+#: g10/pkclist.c:600
 msgid "No such user ID.\n"
 msgstr "ID de usuario inexistente.\n"
 
-#: g10/pkclist.c:630
+#: g10/pkclist.c:646
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s: error comprobando la clave: %s\n"
 
-#: g10/pkclist.c:656
+#: g10/pkclist.c:672
 msgid "no valid addressees\n"
 msgstr "no hay direcciones válidas\n"
 
@@ -1118,7 +1122,20 @@ msgstr "DSA s
 msgid "keysize too small; 768 is smallest value allowed.\n"
 msgstr "tamaño insuficiente; 768 es el valor mínimo permitido\n"
 
-#: g10/keygen.c:459
+#. It is ridiculous and an annoyance to use larger key sizes!
+#. * GnuPG can handle much larger sizes; but it takes an eternity
+#. * to create such a key (but less than the time the Sirius
+#. * Computer Corporation needs to process one of the usual
+#. * complaints) and {de,en}cryption although needs some time.
+#. * So, before you complain about this limitation, I suggest that
+#. * you start a discussion with Marvin about this theme and then
+#. * do whatever you want.
+#: g10/keygen.c:466
+#, fuzzy, c-format
+msgid "keysize too large; %d is largest value allowed.\n"
+msgstr "tamaño insuficiente; 768 es el valor mínimo permitido\n"
+
+#: g10/keygen.c:471
 msgid ""
 "Keysizes larger than 2048 are not suggested because\n"
 "computations take REALLY long!\n"
@@ -1126,11 +1143,11 @@ msgstr ""
 "No se recomiendan claves de más de 2048 bits porque\n"
 "el tiempo de computación es REALMENTE largo.\n"
 
-#: g10/keygen.c:462
+#: g10/keygen.c:474
 msgid "Are you sure that you want this keysize? "
 msgstr "¿Seguro que quiere una clave de este tamaño? "
 
-#: g10/keygen.c:463
+#: g10/keygen.c:475
 msgid ""
 "Okay, but keep in mind that your monitor and keyboard radiation is also very "
 "vulnerable to attacks!\n"
@@ -1139,21 +1156,21 @@ msgstr ""
 "teclado\n"
 "también son vulnerables a un ataque!\n"
 
-#: g10/keygen.c:471
+#: g10/keygen.c:483
 msgid "Do you really need such a large keysize? "
 msgstr "¿De verdad necesita una clave tan grande? "
 
-#: g10/keygen.c:477
+#: g10/keygen.c:489
 #, c-format
 msgid "Requested keysize is %u bits\n"
 msgstr "El tamaño requerido es de %u bits\n"
 
-#: g10/keygen.c:480 g10/keygen.c:484
+#: g10/keygen.c:492 g10/keygen.c:496
 #, c-format
 msgid "rounded up to %u bits\n"
 msgstr "redondeados a %u bits\n"
 
-#: g10/keygen.c:497
+#: g10/keygen.c:509
 msgid ""
 "Please specify how long the key should be valid.\n"
 "         0 = key does not expire\n"
@@ -1169,29 +1186,29 @@ msgstr ""
 "      <n>m = la clave caduca en n meses\n"
 "      <n>y = la clave caduca en n años\n"
 
-#: g10/keygen.c:512
+#: g10/keygen.c:524
 msgid "Key is valid for? (0) "
 msgstr "¿Validez de la clave (0)? "
 
-#: g10/keygen.c:523
+#: g10/keygen.c:535
 msgid "invalid value\n"
 msgstr "valor no válido\n"
 
-#: g10/keygen.c:528
+#: g10/keygen.c:540
 msgid "Key does not expire at all\n"
 msgstr "La clave nunca caduca\n"
 
 #. print the date when the key expires
-#: g10/keygen.c:534
+#: g10/keygen.c:546
 #, c-format
 msgid "Key expires at %s\n"
 msgstr "La clave caduca el %s\n"
 
-#: g10/keygen.c:540
+#: g10/keygen.c:552
 msgid "Is this correct (y/n)? "
 msgstr "¿Es correcto (s/n)? "
 
-#: g10/keygen.c:583
+#: g10/keygen.c:595
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1209,44 +1226,44 @@ msgstr ""
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 
-#: g10/keygen.c:594
+#: g10/keygen.c:606
 msgid "Real name: "
 msgstr "Nombre y apellidos: "
 
-#: g10/keygen.c:598
+#: g10/keygen.c:610
 msgid "Invalid character in name\n"
 msgstr "Caracter no válido en el nombre\n"
 
-#: g10/keygen.c:600
+#: g10/keygen.c:612
 msgid "Name may not start with a digit\n"
 msgstr "El nombre no puede empezar con un número\n"
 
-#: g10/keygen.c:602
+#: g10/keygen.c:614
 msgid "Name must be at least 5 characters long\n"
 msgstr "El nombre debe tener al menos 5 caracteres\n"
 
-#: g10/keygen.c:610
+#: g10/keygen.c:622
 msgid "Email address: "
 msgstr "Dirección de correo electrónico: "
 
-#: g10/keygen.c:621
+#: g10/keygen.c:633
 msgid "Not a valid email address\n"
 msgstr "Dirección no válida\n"
 
-#: g10/keygen.c:629
+#: g10/keygen.c:641
 msgid "Comment: "
 msgstr "Comentario: "
 
-#: g10/keygen.c:635
+#: g10/keygen.c:647
 msgid "Invalid character in comment\n"
 msgstr "Caracter no válido en el comentario\n"
 
-#: g10/keygen.c:657
+#: g10/keygen.c:669
 #, c-format
 msgid "You are using the `%s' character set.\n"
 msgstr ""
 
-#: g10/keygen.c:663
+#: g10/keygen.c:675
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1257,15 +1274,15 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:666
+#: g10/keygen.c:678
 msgid "NnCcEeOoQq"
 msgstr "NnCcDdVvSs"
 
-#: g10/keygen.c:676
+#: g10/keygen.c:688
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr "¿Cambia (N)ombre, (C)omentario, (D)irección o (V)ale/(S)alir? "
 
-#: g10/keygen.c:728
+#: g10/keygen.c:740
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1273,11 +1290,11 @@ msgstr ""
 "Necesita una contraseña para proteger su clave secreta.\n"
 "\n"
 
-#: g10/keyedit.c:421 g10/keygen.c:736
+#: g10/keyedit.c:433 g10/keygen.c:748
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "contraseña repetida incorrecta, inténtelo de nuevo.\n"
 
-#: g10/keygen.c:742
+#: g10/keygen.c:754
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -1289,13 +1306,13 @@ msgstr ""
 "la opción \"--edit-key\".\n"
 "\n"
 
-#: g10/keygen.c:763
+#: g10/keygen.c:775
 #, fuzzy
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (type on the keyboard, move the mouse, utilize the\n"
-"the disks) during the prime generation; this gives the random\n"
-"number generator a better chance to gain enough entropy.\n"
+"disks) during the prime generation; this gives the random number\n"
+"generator a better chance to gain enough entropy.\n"
 msgstr ""
 "Es necesario generar muchos bytes aleatorios. Es una buena idea realizar\n"
 "alguna otra tarea (trabajar en otra ventana/consola, mover el ratón, usar\n"
@@ -1303,33 +1320,33 @@ msgstr ""
 "generador de números aleatorios mayor oportunidad de recoger suficiente\n"
 "entropía.\n"
 
-#: g10/keygen.c:833
+#: g10/keygen.c:845
 msgid "Key generation can only be used in interactive mode\n"
 msgstr "La creación de claves sólo es posible en modo interactivo\n"
 
-#: g10/keygen.c:841
+#: g10/keygen.c:853
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "El par de claves DSA tendrá 1024 bits.\n"
 
-#: g10/keygen.c:847
+#: g10/keygen.c:859
 msgid "Key generation cancelled.\n"
 msgstr "Creación de claves cancelada.\n"
 
-#: g10/keygen.c:857
+#: g10/keygen.c:869
 #, c-format
 msgid "writing public certificate to `%s'\n"
 msgstr "escribiendo certificado público en `%s'\n"
 
-#: g10/keygen.c:858
+#: g10/keygen.c:870
 #, c-format
 msgid "writing secret certificate to `%s'\n"
 msgstr "escribiendo certificado privado en `%s'\n"
 
-#: g10/keygen.c:935
+#: g10/keygen.c:947
 msgid "public and secret key created and signed.\n"
 msgstr "Claves pública y secreta creadas y firmadas.\n"
 
-#: g10/keygen.c:937
+#: g10/keygen.c:949
 #, fuzzy
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
@@ -1339,12 +1356,12 @@ msgstr ""
 "el comando \"--add-key\" para crear una clave secundaria con este "
 "propósito.\n"
 
-#: g10/keygen.c:951 g10/keygen.c:1050
+#: g10/keygen.c:963 g10/keygen.c:1062
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Creación de la clave fallida: %s\n"
 
-#: g10/keygen.c:995 g10/sig-check.c:212 g10/sign.c:52
+#: g10/keygen.c:1007 g10/sig-check.c:299 g10/sign.c:52
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu second in future (time warp or clock problem)\n"
@@ -1352,7 +1369,7 @@ msgstr ""
 "clave pública creada %lu %s en el futuro (salto en el tiempo o problemas con "
 "el reloj)\n"
 
-#: g10/keygen.c:997 g10/sig-check.c:214 g10/sign.c:54
+#: g10/keygen.c:1009 g10/sig-check.c:301 g10/sign.c:54
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu seconds in future (time warp or clock problem)\n"
@@ -1360,32 +1377,37 @@ msgstr ""
 "clave pública creada %lu %s en el futuro (salto en el tiempo o problemas con "
 "el reloj)\n"
 
-#: g10/keygen.c:1028
+#: g10/keygen.c:1040
 msgid "Really create? "
 msgstr "¿Crear de verdad? "
 
-#: g10/encode.c:90 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
-#: g10/tdbio.c:527
+#: g10/encode.c:91 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
+#: g10/tdbio.c:528
 #, c-format
 msgid "%s: can't open: %s\n"
 msgstr "%s: no puede abrirse: %s\n"
 
-#: g10/encode.c:112
+#: g10/encode.c:113
 #, c-format
 msgid "error creating passphrase: %s\n"
 msgstr "error creando contraseña: %s\n"
 
-#: g10/encode.c:166 g10/encode.c:285
+#: g10/encode.c:167 g10/encode.c:290
 #, c-format
 msgid "%s: WARNING: empty file\n"
 msgstr "%s: atención: fichero vacío\n"
 
-#: g10/encode.c:235
+#: g10/encode.c:240
 #, c-format
 msgid "reading from `%s'\n"
 msgstr "leyendo desde `%s'\n"
 
-#: g10/encode.c:413
+#: g10/encode.c:435 g10/sign.c:346
+#, c-format
+msgid "WARNING: `%s' is an empty file\n"
+msgstr "atención: '%s' es un fichero vacío\n"
+
+#: g10/encode.c:605
 #, c-format
 msgid "%s/%s encrypted for: %s\n"
 msgstr "%s/%s cifrado para: %s\n"
@@ -1417,7 +1439,7 @@ msgstr "demasiados registros en la cache pk - anulada\n"
 msgid "too many entries in unk cache - disabled\n"
 msgstr "demasiados registros en la cache unk - anulada\n"
 
-#: g10/getkey.c:1531 g10/getkey.c:1587
+#: g10/getkey.c:1535 g10/getkey.c:1591
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr "usando clave secundaria %08lX en vez de clave primaria %08lX\n"
@@ -1442,325 +1464,334 @@ msgstr "hasta ahora se han procesado %lu claves\n"
 msgid "read error: %s\n"
 msgstr "error de lectura: %s\n"
 
-#: g10/import.c:174
+#: g10/import.c:175
 #, c-format
 msgid "Total number processed: %lu\n"
 msgstr "         Cantidad total procesada: %lu\n"
 
-#: g10/import.c:176
+#: g10/import.c:177
 #, c-format
 msgid "          w/o user IDs: %lu\n"
 msgstr "    sin identificativo de usuario: %lu\n"
 
-#: g10/import.c:178
+#: g10/import.c:179
 #, c-format
 msgid "              imported: %lu"
 msgstr "                       importadas: %lu"
 
-#: g10/import.c:184
+#: g10/import.c:185
 #, c-format
 msgid "             unchanged: %lu\n"
 msgstr "                      sin cambios: %lu\n"
 
-#: g10/import.c:186
+#: g10/import.c:187
 #, c-format
 msgid "          new user IDs: %lu\n"
 msgstr "nuevos identificativos de usuario: %lu\n"
 
-#: g10/import.c:188
+#: g10/import.c:189
 #, c-format
 msgid "           new subkeys: %lu\n"
 msgstr "                nuevas sub-claves: %lu\n"
 
-#: g10/import.c:190
+#: g10/import.c:191
 #, c-format
 msgid "        new signatures: %lu\n"
 msgstr "                    nuevas firmas: %lu\n"
 
-#: g10/import.c:192
+#: g10/import.c:193
 #, c-format
 msgid "   new key revocations: %lu\n"
 msgstr "     nuevas revocaciones de clave: %lu\n"
 
-#: g10/import.c:194
+#: g10/import.c:195
 #, c-format
 msgid "      secret keys read: %lu\n"
 msgstr "           claves secretas leídas: %lu\n"
 
-#: g10/import.c:196
+#: g10/import.c:197
 #, c-format
 msgid "  secret keys imported: %lu\n"
 msgstr "       claves secretas importadas: %lu\n"
 
-#: g10/import.c:198
+#: g10/import.c:199
 #, c-format
 msgid " secret keys unchanged: %lu\n"
 msgstr "      claves secretas sin cambios: %lu\n"
 
-#: g10/import.c:340 g10/import.c:532
+#: g10/import.c:342 g10/import.c:534
 #, c-format
 msgid "key %08lX: no user id\n"
 msgstr "clave %08lX: no hay identificativo de usuario\n"
 
-#: g10/import.c:351
+#: g10/import.c:353
 #, c-format
 msgid "key %08lX: no valid user ids\n"
 msgstr "clave %08lX: no hay identificativos de usuario válidos\n"
 
-#: g10/import.c:353
+#: g10/import.c:355
 msgid "this may be caused by a missing self-signature\n"
 msgstr "esto puede ser debido a la ausencia de autofirma\n"
 
-#: g10/import.c:364 g10/import.c:600
+#: g10/import.c:366 g10/import.c:604
 #, c-format
 msgid "key %08lX: public key not found: %s\n"
 msgstr "clave %08lX: clave pública no encontrada: %s\n"
 
-#: g10/import.c:370
+#: g10/import.c:372
 msgid "no default public keyring\n"
 msgstr "no hay anillo público por defecto\n"
 
-#: g10/import.c:374 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:498
+#: g10/import.c:376 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:501
 #, c-format
 msgid "writing to `%s'\n"
 msgstr "escribiendo en `%s'\n"
 
-#: g10/import.c:378 g10/import.c:438 g10/import.c:654
+#: g10/import.c:380 g10/import.c:440 g10/import.c:658
 #, c-format
 msgid "can't lock public keyring: %s\n"
 msgstr "no puede bloquearse el anillo público: %s\n"
 
-#: g10/import.c:381
+#: g10/import.c:383
 #, c-format
 msgid "can't write to keyring: %s\n"
 msgstr "no puede escribirse en el anillo: %s\n"
 
-#: g10/import.c:385
+#: g10/import.c:387
 #, c-format
 msgid "key %08lX: public key imported\n"
 msgstr "clave %08lX: clave pública importada\n"
 
-#: g10/import.c:398
+#: g10/import.c:400
 #, c-format
 msgid "key %08lX: doesn't match our copy\n"
 msgstr "clave %08lX: no se corresponde con nuestra copia\n"
 
-#: g10/import.c:411 g10/import.c:609
+#: g10/import.c:413 g10/import.c:613
 #, c-format
 msgid "key %08lX: can't locate original keyblock: %s\n"
 msgstr "clave %08lX: no puede localizarse el bloque de claves original: %s\n"
 
-#: g10/import.c:418 g10/import.c:616
+#: g10/import.c:420 g10/import.c:620
 #, c-format
 msgid "key %08lX: can't read original keyblock: %s\n"
 msgstr "clave %08lX: no puede leerse el bloque de claves original: %s\n"
 
-#: g10/import.c:435 g10/import.c:547 g10/import.c:651
+#: g10/import.c:437 g10/import.c:549 g10/import.c:655
 msgid "writing keyblock\n"
 msgstr "escribiendo bloque de claves\n"
 
-#: g10/import.c:441 g10/import.c:657
+#: g10/import.c:443 g10/import.c:661
 #, c-format
 msgid "can't write keyblock: %s\n"
 msgstr "no puede escribirse el bloque de claves: %s\n"
 
-#: g10/import.c:446
+#: g10/import.c:448
 #, c-format
 msgid "key %08lX: 1 new user-id\n"
 msgstr "clave %08lX: 1 nuevo identificativo de usuario\n"
 
-#: g10/import.c:449
+#: g10/import.c:451
 #, c-format
 msgid "key %08lX: %d new user-ids\n"
 msgstr "clave %08lX: %d nuevos identificativos de usuario\n"
 
-#: g10/import.c:452
+#: g10/import.c:454
 #, c-format
 msgid "key %08lX: 1 new signature\n"
 msgstr "clave %08lX: 1 nueva firma\n"
 
-#: g10/import.c:455
+#: g10/import.c:457
 #, c-format
 msgid "key %08lX: %d new signatures\n"
 msgstr "clave %08lX: %d nuevas firmas\n"
 
-#: g10/import.c:458
+#: g10/import.c:460
 #, c-format
 msgid "key %08lX: 1 new subkey\n"
 msgstr "clave %08lX: 1 nueva sub-clave\n"
 
-#: g10/import.c:461
+#: g10/import.c:463
 #, c-format
 msgid "key %08lX: %d new subkeys\n"
 msgstr "clave %08lX: %d nuevas sub-claves\n"
 
-#: g10/import.c:471
+#: g10/import.c:473
 #, c-format
 msgid "key %08lX: not changed\n"
 msgstr "clave %08lX: sin cambios\n"
 
-#: g10/import.c:550
+#: g10/import.c:552
 #, c-format
 msgid "can't lock secret keyring: %s\n"
 msgstr "no puede bloquearse el anillo secreto: %s\n"
 
-#: g10/import.c:553
+#: g10/import.c:555
 #, c-format
 msgid "can't write keyring: %s\n"
 msgstr "no puede escribirse el anillo: %s\n"
 
-#. we are ready
-#: g10/import.c:556
+#: g10/import.c:559
 #, c-format
 msgid "key %08lX: secret key imported\n"
 msgstr "clave %08lX: clave secreta importata\n"
 
 #. we can't merge secret keys
-#: g10/import.c:560
+#: g10/import.c:564
 #, c-format
 msgid "key %08lX: already in secret keyring\n"
 msgstr "clave %08lX: ya estaba en el anillo secreto\n"
 
-#: g10/import.c:565
+#: g10/import.c:569
 #, c-format
 msgid "key %08lX: secret key not found: %s\n"
 msgstr "clave %08lX: clave secreta no encontrada: %s\n"
 
-#: g10/import.c:594
+#: g10/import.c:598
 #, c-format
 msgid "key %08lX: no public key - can't apply revocation certificate\n"
 msgstr ""
 "clave %08lX: falta la clave pública - imposibile applicar el\n"
 "certificado de revocación\n"
 
-#: g10/import.c:627
+#: g10/import.c:631
 #, c-format
 msgid "key %08lX: invalid revocation certificate: %s - rejected\n"
 msgstr "clave %08lX: certificado de revocación no válido: %s - rechazado\n"
 
-#: g10/import.c:661
+#: g10/import.c:665
 #, c-format
 msgid "key %08lX: revocation certificate imported\n"
 msgstr "clave %08lX: certificado de revocación importado\n"
 
-#: g10/import.c:695
+#: g10/import.c:699
 #, c-format
 msgid "key %08lX: no user-id for signature\n"
 msgstr "clave %08lX: no hay identificativo de usuario para la firma\n"
 
-#: g10/import.c:702 g10/import.c:727
+#: g10/import.c:706 g10/import.c:731
 #, c-format
 msgid "key %08lX: unsupported public key algorithm\n"
 msgstr "clave %08lX: algoritmo da clave pública no soportado\n"
 
-#: g10/import.c:703
+#: g10/import.c:707
 #, c-format
 msgid "key %08lX: invalid self-signature\n"
 msgstr "clave %08lX: autofirma no válida\n"
 
-#: g10/import.c:719
+#: g10/import.c:723
 #, fuzzy, c-format
 msgid "key %08lX: no subkey for key binding\n"
 msgstr "clave %08lX.%lu: buena unión de sub-clave\n"
 
-#: g10/import.c:728
+#: g10/import.c:732
 #, fuzzy, c-format
 msgid "key %08lX: invalid subkey binding\n"
 msgstr "clave %08lX.%lu: unión de sub-clave no válida\n"
 
-#: g10/import.c:760
+#: g10/import.c:764
 #, c-format
 msgid "key %08lX: skipped userid '"
 msgstr "clave %08lX: ignorado identificativo de usuario '"
 
-#: g10/import.c:780
+#: g10/import.c:787
 #, fuzzy, c-format
 msgid "key %08lX: skipped subkey\n"
 msgstr "clave %08lX: 1 nueva sub-clave\n"
 
-#: g10/import.c:800
+#. here we violate the rfc a bit by still allowing
+#. * to import non-exportable signature when we have the
+#. * the secret key used to create this signature - it
+#. * seems that this makes sense
+#: g10/import.c:812
 #, fuzzy, c-format
 msgid "key %08lX: non exportable signature (class %02x) - skipped\n"
 msgstr ""
 "clave %08lX: certificado de revocación en lugar equivocado - ignorado\n"
 
-#: g10/import.c:809
+#: g10/import.c:821
 #, c-format
 msgid "key %08lX: revocation certificate at wrong place - skipped\n"
 msgstr ""
 "clave %08lX: certificado de revocación en lugar equivocado - ignorado\n"
 
-#: g10/import.c:817
+#: g10/import.c:829
 #, c-format
 msgid "key %08lX: invalid revocation certificate: %s - skipped\n"
 msgstr "clave %08lX: certificado de revocación no valido: %s - ignorado\n"
 
-#: g10/import.c:878
+#: g10/import.c:890
 #, c-format
 msgid "key %08lX: revocation certificate added\n"
 msgstr "clave %08lX: certificado de revocación añadido\n"
 
-#: g10/import.c:992 g10/import.c:1047
+#: g10/import.c:1008 g10/import.c:1063
 #, c-format
 msgid "key %08lX: our copy has no self-signature\n"
 msgstr "clave %08lX: nuestra copia no tiene autofirma\n"
 
-#: g10/keyedit.c:88
+#: g10/keyedit.c:91
 #, c-format
 msgid "%s: user not found\n"
 msgstr "%s: usuario no encontrado\n"
 
-#: g10/keyedit.c:171
+#: g10/keyedit.c:177
+msgid "[revocation]"
+msgstr ""
+
+#: g10/keyedit.c:178
 msgid "[self-signature]"
 msgstr "[autofirma]"
 
-#: g10/keyedit.c:189
+#: g10/keyedit.c:196
 msgid "1 bad signature\n"
 msgstr "1 firma incorrecta\n"
 
-#: g10/keyedit.c:191
+#: g10/keyedit.c:198
 #, c-format
 msgid "%d bad signatures\n"
 msgstr "%d firmas incorrectas\n"
 
-#: g10/keyedit.c:193
+#: g10/keyedit.c:200
 msgid "1 signature not checked due to a missing key\n"
 msgstr "1 firma no comprobada por falta de clave\n"
 
-#: g10/keyedit.c:195
+#: g10/keyedit.c:202
 #, c-format
 msgid "%d signatures not checked due to missing keys\n"
 msgstr "%d firmas no comprobadas por falta de clave\n"
 
-#: g10/keyedit.c:197
+#: g10/keyedit.c:204
 msgid "1 signature not checked due to an error\n"
 msgstr "1 firma no comprobada por causa de un error\n"
 
-#: g10/keyedit.c:199
+#: g10/keyedit.c:206
 #, c-format
 msgid "%d signatures not checked due to errors\n"
 msgstr "%d firmas no comprobadas por causa de un error\n"
 
-#: g10/keyedit.c:201
+#: g10/keyedit.c:208
 msgid "1 user id without valid self-signature detected\n"
 msgstr "Detectado 1 identificativo de usuario sin autofirma válida\n"
 
-#: g10/keyedit.c:203
+#: g10/keyedit.c:210
 #, c-format
 msgid "%d user ids without valid self-signatures detected\n"
 msgstr "Detectados %d identificativos de usuario sin autofirma válida\n"
 
-#: g10/keyedit.c:281
+#. Fixme: see whether there is a revocation in which
+#. * case we should allow to sign it again.
+#: g10/keyedit.c:290
 #, c-format
 msgid "Already signed by key %08lX\n"
 msgstr "Ya firmada por la clave %08lX\n"
 
-#: g10/keyedit.c:289
+#: g10/keyedit.c:298
 #, c-format
 msgid "Nothing to sign with key %08lX\n"
 msgstr "Nada que firmar con la clave %08lX\n"
 
-#: g10/keyedit.c:298
+#: g10/keyedit.c:307
 msgid ""
 "Are you really sure that you want to sign this key\n"
 "with your key: \""
@@ -1768,35 +1799,35 @@ msgstr ""
 "¿Está realmente seguro de querer firmar esta clave\n"
 "con su clave: \""
 
-#: g10/keyedit.c:307
+#: g10/keyedit.c:316
 msgid ""
 "The signature will be marked as non-exportable.\n"
 "\n"
 msgstr ""
 
-#: g10/keyedit.c:309
+#: g10/keyedit.c:321
 msgid "Really sign? "
 msgstr "¿Firmar de verdad? "
 
-#: g10/keyedit.c:335 g10/sign.c:75
+#: g10/keyedit.c:347 g10/keyedit.c:1684 g10/keyedit.c:1733 g10/sign.c:75
 #, c-format
 msgid "signing failed: %s\n"
 msgstr "firma fallida: %s\n"
 
-#: g10/keyedit.c:388
+#: g10/keyedit.c:400
 msgid "This key is not protected.\n"
 msgstr "Esta clave no está protegida.\n"
 
-#: g10/keyedit.c:391
+#: g10/keyedit.c:403
 msgid "Key is protected.\n"
 msgstr "La clave está protegida.\n"
 
-#: g10/keyedit.c:408
+#: g10/keyedit.c:420
 #, c-format
 msgid "Can't edit this key: %s\n"
 msgstr "No puede editarse esta clave: %s\n"
 
-#: g10/keyedit.c:413
+#: g10/keyedit.c:425
 msgid ""
 "Enter the new passphrase for this secret key.\n"
 "\n"
@@ -1804,7 +1835,7 @@ msgstr ""
 "Introduzca la nueva contraseña para esta clave secreta.\n"
 "\n"
 
-#: g10/keyedit.c:425
+#: g10/keyedit.c:437
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "\n"
@@ -1812,380 +1843,449 @@ msgstr ""
 "No ha especificado contraseña. Esto es probablemente una *mala* idea.\n"
 "\n"
 
-#: g10/keyedit.c:428
+#: g10/keyedit.c:440
 msgid "Do you really want to do this? "
 msgstr "¿Realmente quiere hacer esto? "
 
-#: g10/keyedit.c:487
+#: g10/keyedit.c:499
 msgid "moving a key signature to the correct place\n"
 msgstr "moviendo la firma de la clave al lugar correcto\n"
 
-#: g10/keyedit.c:523
+#: g10/keyedit.c:535
 msgid "quit"
 msgstr ""
 
-#: g10/keyedit.c:523
+#: g10/keyedit.c:535
 msgid "quit this menu"
 msgstr "sale de este menú"
 
-#: g10/keyedit.c:524
+#: g10/keyedit.c:536
 msgid "q"
 msgstr ""
 
-#: g10/keyedit.c:525
+#: g10/keyedit.c:537
 msgid "save"
 msgstr ""
 
-#: g10/keyedit.c:525
+#: g10/keyedit.c:537
 msgid "save and quit"
 msgstr "graba y sale"
 
-#: g10/keyedit.c:526
+#: g10/keyedit.c:538
 msgid "help"
 msgstr ""
 
-#: g10/keyedit.c:526
+#: g10/keyedit.c:538
 msgid "show this help"
 msgstr "muestra esta ayuda"
 
-#: g10/keyedit.c:528
+#: g10/keyedit.c:540
 msgid "fpr"
 msgstr ""
 
-#: g10/keyedit.c:528
+#: g10/keyedit.c:540
 msgid "show fingerprint"
 msgstr "muestra huella dactilar"
 
-#: g10/keyedit.c:529
+#: g10/keyedit.c:541
 msgid "list"
 msgstr ""
 
-#: g10/keyedit.c:529
+#: g10/keyedit.c:541
 msgid "list key and user ids"
 msgstr "lista clave e identificativos de usuario"
 
-#: g10/keyedit.c:530
+#: g10/keyedit.c:542
 msgid "l"
 msgstr ""
 
-#: g10/keyedit.c:531
+#: g10/keyedit.c:543
 msgid "uid"
 msgstr ""
 
-#: g10/keyedit.c:531
+#: g10/keyedit.c:543
 msgid "select user id N"
 msgstr "selecciona identificativo de usuario N"
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:544
 msgid "key"
 msgstr ""
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:544
 msgid "select secondary key N"
 msgstr "selecciona clave secundaria N"
 
-#: g10/keyedit.c:533
+#: g10/keyedit.c:545
 msgid "check"
 msgstr ""
 
-#: g10/keyedit.c:533
+#: g10/keyedit.c:545
 msgid "list signatures"
 msgstr "lista firmas"
 
-#: g10/keyedit.c:534
+#: g10/keyedit.c:546
 msgid "c"
 msgstr ""
 
-#: g10/keyedit.c:535
+#: g10/keyedit.c:547
 msgid "sign"
 msgstr ""
 
-#: g10/keyedit.c:535
+#: g10/keyedit.c:547
 msgid "sign the key"
 msgstr "firma la clave"
 
-#: g10/keyedit.c:536
+#: g10/keyedit.c:548
 msgid "s"
 msgstr ""
 
-#: g10/keyedit.c:537
+#: g10/keyedit.c:549
 #, fuzzy
 msgid "lsign"
 msgstr "firmando:"
 
-#: g10/keyedit.c:537
+#: g10/keyedit.c:549
 #, fuzzy
 msgid "sign the key locally"
 msgstr "firma la clave"
 
-#: g10/keyedit.c:538
+#: g10/keyedit.c:550
 msgid "debug"
 msgstr ""
 
-#: g10/keyedit.c:539
+#: g10/keyedit.c:551
 msgid "adduid"
 msgstr ""
 
-#: g10/keyedit.c:539
+#: g10/keyedit.c:551
 msgid "add a user id"
 msgstr "añade un identificativo de usuario"
 
-#: g10/keyedit.c:540
+#: g10/keyedit.c:552
 msgid "deluid"
 msgstr ""
 
-#: g10/keyedit.c:540
+#: g10/keyedit.c:552
 msgid "delete user id"
 msgstr "borra un identificativo de usuario"
 
-#: g10/keyedit.c:541
+#: g10/keyedit.c:553
 msgid "addkey"
 msgstr ""
 
-#: g10/keyedit.c:541
+#: g10/keyedit.c:553
 msgid "add a secondary key"
 msgstr "añade una clave secundaria"
 
-#: g10/keyedit.c:542
+#: g10/keyedit.c:554
 msgid "delkey"
 msgstr ""
 
-#: g10/keyedit.c:542
+#: g10/keyedit.c:554
 msgid "delete a secondary key"
 msgstr "borra una clave secundaria"
 
-#: g10/keyedit.c:543
+#: g10/keyedit.c:555
 msgid "expire"
 msgstr ""
 
-#: g10/keyedit.c:543
+#: g10/keyedit.c:555
 msgid "change the expire date"
 msgstr "cambia fecha de caducidad"
 
-#: g10/keyedit.c:544
+#: g10/keyedit.c:556
 msgid "toggle"
 msgstr ""
 
-#: g10/keyedit.c:544
+#: g10/keyedit.c:556
 msgid "toggle between secret and public key listing"
 msgstr "cambia entre lista de claves secretas y públicas"
 
-#: g10/keyedit.c:546
+#: g10/keyedit.c:558
 msgid "t"
 msgstr ""
 
-#: g10/keyedit.c:547
+#: g10/keyedit.c:559
 msgid "pref"
 msgstr ""
 
-#: g10/keyedit.c:547
+#: g10/keyedit.c:559
 msgid "list preferences"
 msgstr "muestra preferencias"
 
-#: g10/keyedit.c:548
+#: g10/keyedit.c:560
 msgid "passwd"
 msgstr ""
 
-#: g10/keyedit.c:548
+#: g10/keyedit.c:560
 msgid "change the passphrase"
 msgstr "cambia la contraseña"
 
-#: g10/keyedit.c:549
+#: g10/keyedit.c:561
 msgid "trust"
 msgstr ""
 
-#: g10/keyedit.c:549
+#: g10/keyedit.c:561
 msgid "change the ownertrust"
 msgstr "cambia valores de confianza"
 
-#: g10/keyedit.c:568
+#: g10/keyedit.c:562
+msgid "revsig"
+msgstr ""
+
+#: g10/keyedit.c:562
+#, fuzzy
+msgid "revoke signatures"
+msgstr "fuerza firmas v3"
+
+#: g10/keyedit.c:563
+msgid "revkey"
+msgstr ""
+
+#: g10/keyedit.c:563
+#, fuzzy
+msgid "revoke a secondary key"
+msgstr "borra una clave secundaria"
+
+#: g10/keyedit.c:582
 msgid "can't do that in batchmode\n"
 msgstr "imposible hacer esto en modo de proceso por lotes\n"
 
 #. check that they match
 #. FIXME: check that they both match
-#: g10/keyedit.c:595
+#: g10/keyedit.c:609
 msgid "Secret key is available.\n"
 msgstr "Clave secreta disponible.\n"
 
-#: g10/keyedit.c:624
+#: g10/keyedit.c:638
 msgid "Command> "
 msgstr "Comando> "
 
-#: g10/keyedit.c:651
+#: g10/keyedit.c:665
 msgid "Need the secret key to do this.\n"
 msgstr "Se necesita la clave secreta para hacer esto\n"
 
-#: g10/keyedit.c:673
+#: g10/keyedit.c:687
 msgid "Save changes? "
 msgstr "¿Grabar cambios? "
 
-#: g10/keyedit.c:676
+#: g10/keyedit.c:690
 msgid "Quit without saving? "
 msgstr "¿Salir sin grabar? "
 
-#: g10/keyedit.c:686
+#: g10/keyedit.c:700
 #, c-format
 msgid "update failed: %s\n"
 msgstr "actualización fallida: %s\n"
 
-#: g10/keyedit.c:693
+#: g10/keyedit.c:707
 #, c-format
 msgid "update secret failed: %s\n"
 msgstr "actualización de la clave secreta fallida: %s\n"
 
-#: g10/keyedit.c:700
+#: g10/keyedit.c:714
 msgid "Key not changed so no update needed.\n"
 msgstr "Clave sin cambios, no se necesita actualización.\n"
 
-#: g10/keyedit.c:703 g10/keyedit.c:762
+#: g10/keyedit.c:717 g10/keyedit.c:776
 #, c-format
 msgid "update of trustdb failed: %s\n"
 msgstr "actualización de confianza fallida: %s\n"
 
-#: g10/keyedit.c:736
+#: g10/keyedit.c:750
 msgid "Really sign all user ids? "
 msgstr "¿Firmar realmente todos los identificativos de usuario? "
 
-#: g10/keyedit.c:737
+#: g10/keyedit.c:751
 msgid "Hint: Select the user ids to sign\n"
 msgstr "Sugerencia: seleccione los identificativos de usuario a firmar\n"
 
-#: g10/keyedit.c:773
+#: g10/keyedit.c:787
 msgid "You must select at least one user id.\n"
 msgstr "Debe seleccionar por lo menos un identificativo de usuario.\n"
 
-#: g10/keyedit.c:775
+#: g10/keyedit.c:789
 msgid "You can't delete the last user id!\n"
 msgstr "¡No puede borrar el último identificativo de usuario!\n"
 
-#: g10/keyedit.c:778
+#: g10/keyedit.c:792
 msgid "Really remove all selected user ids? "
 msgstr "¿Borrar realmente todos los identificativos seleccionados? "
 
-#: g10/keyedit.c:779
+#: g10/keyedit.c:793
 msgid "Really remove this user id? "
 msgstr "¿Borrar realmente este identificativo? "
 
-#: g10/keyedit.c:802
+#: g10/keyedit.c:816 g10/keyedit.c:838
 msgid "You must select at least one key.\n"
 msgstr "Debe seleccionar por lo menos una clave.\n"
 
-#: g10/keyedit.c:806
+#: g10/keyedit.c:820
 msgid "Do you really want to delete the selected keys? "
 msgstr "¿Borrar realmente las claves seleccionadas? "
 
-#: g10/keyedit.c:807
+#: g10/keyedit.c:821
 msgid "Do you really want to delete this key? "
 msgstr "¿Borrar realmente esta clave? "
 
-#: g10/keyedit.c:854
+#: g10/keyedit.c:842
+#, fuzzy
+msgid "Do you really want to revoke the selected keys? "
+msgstr "¿Borrar realmente las claves seleccionadas? "
+
+#: g10/keyedit.c:843
+#, fuzzy
+msgid "Do you really want to revoke this key? "
+msgstr "¿Borrar realmente esta clave? "
+
+#: g10/keyedit.c:897
 msgid "Invalid command  (try \"help\")\n"
 msgstr "Comando no válido (pruebe \"help\")\n"
 
-#: g10/keyedit.c:1232
+#: g10/keyedit.c:1289
 msgid "Please remove selections from the secret keys.\n"
 msgstr "Por favor, quite la selección de las claves secretas.\n"
 
-#: g10/keyedit.c:1238
+#: g10/keyedit.c:1295
 msgid "Please select at most one secondary key.\n"
 msgstr "Por favor, seleccione como máximo una clave secundaria\n"
 
-#: g10/keyedit.c:1242
+#: g10/keyedit.c:1299
 msgid "Changing exiration time for a secondary key.\n"
 msgstr "Cambiando caducidad de clave secundaria.\n"
 
-#: g10/keyedit.c:1244
+#: g10/keyedit.c:1301
 msgid "Changing exiration time for the primary key.\n"
 msgstr "Cambiando caducidad de clave primaria.\n"
 
-#: g10/keyedit.c:1285
+#: g10/keyedit.c:1342
 msgid "You can't change the expiration date of a v3 key\n"
 msgstr "No puede cambiar la fecha de caducidad de una clave v3\n"
 
-#: g10/keyedit.c:1301
+#: g10/keyedit.c:1358
 msgid "No corresponding signature in secret ring\n"
 msgstr "No hay firma correspondiente en anillo secreto\n"
 
-#: g10/keyedit.c:1361
+#: g10/keyedit.c:1418
 #, c-format
 msgid "No user id with index %d\n"
 msgstr "No hay ningún identificativo de usuario con el índice %d\n"
 
-#: g10/keyedit.c:1407
+#: g10/keyedit.c:1464
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr "No hay ninguna clave secundaria con el índice %d\n"
 
-#: g10/mainproc.c:184
+#: g10/keyedit.c:1562
+#, fuzzy
+msgid "user ID: \""
+msgstr "Introduzca el ID de usuario: "
+
+#: g10/keyedit.c:1565
+#, fuzzy, c-format
+msgid ""
+"\"\n"
+"signed with your key %08lX at %s\n"
+msgstr "Nada que firmar con la clave %08lX\n"
+
+#: g10/keyedit.c:1569
+#, fuzzy
+msgid "Create a revocation certificate for this signature? (y/N)"
+msgstr "genera un certificado de revocación"
+
+#: g10/keyedit.c:1649
+#, fuzzy
+msgid "Really create the revocation certificates? (y/N)"
+msgstr "genera un certificado de revocación"
+
+#: g10/keyedit.c:1672
+#, fuzzy
+msgid "no secret key\n"
+msgstr "Clave secreta incorrecta"
+
+#: g10/mainproc.c:185
 #, fuzzy, c-format
 msgid "public key is %08lX\n"
 msgstr "Clave pública no encontrada"
 
-#: g10/mainproc.c:212
+#: g10/mainproc.c:213
 msgid "public key encrypted data: good DEK\n"
 msgstr "datos cifrados de la clave pública: DEK bueno\n"
 
 #. fixme: defer this message until we have parsed all packets of
 #. * this type - do this by building a list of keys with their stati
-#. * and store it with the conetxt.  do_proc_packets can then use
+#. * and store it with the context.  do_proc_packets can then use
 #. * this list to display some information
-#: g10/mainproc.c:219
+#: g10/mainproc.c:220
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "descifrado de la clave pública fallido: %s\n"
 
-#: g10/mainproc.c:246
+#: g10/mainproc.c:249
 msgid "decryption okay\n"
 msgstr "descifrado correcto\n"
 
-#: g10/mainproc.c:249
+#: g10/mainproc.c:253
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "descifrado fallido: %s\n"
 
-#: g10/mainproc.c:266
+#: g10/mainproc.c:270
 msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr "nota: el remitente solicitó \"sólo-para-tus-ojos\"\n"
 
-#: g10/mainproc.c:268
+#: g10/mainproc.c:272
 #, c-format
 msgid "original file name='%.*s'\n"
 msgstr "nombre fichero original='%.*s'\n"
 
-#: g10/mainproc.c:849
+#: g10/mainproc.c:876
 msgid "signature verification suppressed\n"
 msgstr "suprimida la verificación de la firma\n"
 
-#: g10/mainproc.c:855
+#: g10/mainproc.c:883
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Firma creada %.*s usando identificativo de clave %s %08lX\n"
 
+#: g10/mainproc.c:895
+#, fuzzy
+msgid "encrypted message is valid\n"
+msgstr "el algoritmo de resumen seleccionado no es válido\n"
+
+#: g10/mainproc.c:899
+msgid "WARNING: encrypted message has been manipulated!\n"
+msgstr ""
+
+#: g10/mainproc.c:904
+#, fuzzy, c-format
+msgid "Can't check MDC: %s\n"
+msgstr "Imposible comprobar la firma: %s\n"
+
 #. just in case that we have no userid
-#: g10/mainproc.c:881 g10/mainproc.c:892
+#: g10/mainproc.c:925 g10/mainproc.c:936
 msgid "BAD signature from \""
 msgstr "Firma INCORRECTA de \""
 
-#: g10/mainproc.c:882 g10/mainproc.c:893
+#: g10/mainproc.c:926 g10/mainproc.c:937
 msgid "Good signature from \""
 msgstr "Firma correcta de \""
 
-#: g10/mainproc.c:884
+#: g10/mainproc.c:928
 #, fuzzy
 msgid "                aka \""
 msgstr "                       importadas: %lu"
 
-#: g10/mainproc.c:930
+#: g10/mainproc.c:974
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Imposible comprobar la firma: %s\n"
 
-#: g10/mainproc.c:1003
+#: g10/mainproc.c:1047
 msgid "old style (PGP 2.x) signature\n"
 msgstr "firma viejo estilo (PGP 2.x)\n"
 
-#: g10/mainproc.c:1008
+#: g10/mainproc.c:1052
 msgid "invalid root packet detected in proc_tree()\n"
 msgstr "paquete raíz no válido detectado en proc_tree()\n"
 
@@ -2210,7 +2310,7 @@ msgstr ""
 "Las claves RSA están en desuso, considere la creación de una nueva clave "
 "para futuros usos\n"
 
-#: g10/misc.c:235
+#: g10/misc.c:236
 msgid "this cipher algorithm is depreciated; please use a more standard one!\n"
 msgstr ""
 "este algoritmo de cifrado está en desuso; considere el uso de uno más "
@@ -2226,7 +2326,7 @@ msgstr "no puedo manejar el algoritmo de clave p
 msgid "subpacket of type %d has critical bit set\n"
 msgstr "el sub-paquete de tipo %d tiene el bit crítico activado\n"
 
-#: g10/passphrase.c:151
+#: g10/passphrase.c:157
 msgid ""
 "\n"
 "You need a passphrase to unlock the secret key for\n"
@@ -2236,21 +2336,21 @@ msgstr ""
 "Necesita una contraseña para desbloquear la clave secreta\n"
 "del usuario: \""
 
-#: g10/passphrase.c:160
+#: g10/passphrase.c:166
 #, c-format
 msgid "%u-bit %s key, ID %08lX, created %s"
 msgstr "clave %2$s de %1$u bits, ID %3$08lX, creada el %4$s"
 
-#: g10/passphrase.c:165
+#: g10/passphrase.c:171
 #, c-format
 msgid " (main key ID %08lX)"
 msgstr "(ID clave primaria %08lX)"
 
-#: g10/passphrase.c:184
+#: g10/passphrase.c:190
 msgid "Enter passphrase: "
 msgstr "Introduzca contraseña: "
 
-#: g10/passphrase.c:188
+#: g10/passphrase.c:194
 msgid "Repeat passphrase: "
 msgstr "Repita contraseña: "
 
@@ -2289,42 +2389,47 @@ msgstr "la codificaci
 msgid "NOTE: cipher algorithm %d not found in preferences\n"
 msgstr "nota: algoritmo de cifrado %d no encontrado en las preferencias\n"
 
-#: g10/seckey-cert.c:57
+#: g10/seckey-cert.c:55
 #, c-format
 msgid "protection algorithm %d is not supported\n"
 msgstr "el algoritmo de protección %d no está soportado\n"
 
-#: g10/seckey-cert.c:177
+#: g10/seckey-cert.c:171
 msgid "Invalid passphrase; please try again ...\n"
 msgstr "Contraseña incorrecta, inténtelo de nuevo...\n"
 
-#: g10/seckey-cert.c:232
+#: g10/seckey-cert.c:227
 msgid "WARNING: Weak key detected - please change passphrase again.\n"
 msgstr "Aviso: detectada clave débil - por favor cambie la contraseña.\n"
 
-#: g10/sig-check.c:195
+#: g10/sig-check.c:186
+#, fuzzy
+msgid "assuming bad MDC due to an unknown critical bit\n"
+msgstr "asumiendo firma mala debido a un bit crítico desconocido\n"
+
+#: g10/sig-check.c:282
 msgid ""
 "this is a PGP generated ElGamal key which is NOT secure for signatures!\n"
 msgstr ""
 "¡esto es una clave ElGamal generada por PGP que NO es segura para las "
 "firmas!\n"
 
-#: g10/sig-check.c:203
+#: g10/sig-check.c:290
 #, fuzzy, c-format
 msgid "public key is %lu second newer than the signature\n"
 msgstr "lid %lu: identificativo de usuario sin firma\n"
 
-#: g10/sig-check.c:204
+#: g10/sig-check.c:291
 #, fuzzy, c-format
 msgid "public key is %lu seconds newer than the signature\n"
 msgstr "lid %lu: identificativo de usuario sin firma\n"
 
-#: g10/sig-check.c:220
+#: g10/sig-check.c:307
 #, c-format
 msgid "NOTE: signature key expired %s\n"
 msgstr "atención: clave de la firma caducada el %s\n"
 
-#: g10/sig-check.c:277
+#: g10/sig-check.c:364
 msgid "assuming bad signature due to an unknown critical bit\n"
 msgstr "asumiendo firma mala debido a un bit crítico desconocido\n"
 
@@ -2333,7 +2438,7 @@ msgstr "asumiendo firma mala debido a un bit cr
 msgid "%s signature from: %s\n"
 msgstr "firma %s de %s\n"
 
-#: g10/sign.c:210 g10/sign.c:493
+#: g10/sign.c:210 g10/sign.c:496
 #, c-format
 msgid "can't create %s: %s\n"
 msgstr "no puede crearse `%s': %s\n"
@@ -2342,11 +2447,6 @@ msgstr "no puede crearse `%s': %s\n"
 msgid "signing:"
 msgstr "firmando:"
 
-#: g10/sign.c:346
-#, c-format
-msgid "WARNING: `%s' is an empty file\n"
-msgstr "atención: '%s' es un fichero vacío\n"
-
 #: g10/textfilter.c:122
 #, fuzzy, c-format
 msgid "can't handle text lines longer than %d characters\n"
@@ -2357,12 +2457,12 @@ msgstr "armadura inv
 msgid "input line longer than %d characters\n"
 msgstr "armadura inválida: línea más larga de %d caracteres\n"
 
-#: g10/tdbio.c:116 g10/tdbio.c:1504
+#: g10/tdbio.c:116 g10/tdbio.c:1505
 #, c-format
 msgid "trustdb rec %lu: lseek failed: %s\n"
 msgstr "registro base de datos de confianza %lu: lseek fallido: %s\n"
 
-#: g10/tdbio.c:122 g10/tdbio.c:1511
+#: g10/tdbio.c:122 g10/tdbio.c:1512
 #, c-format
 msgid "trustdb rec %lu: write failed (n=%d): %s\n"
 msgstr ""
@@ -2392,12 +2492,12 @@ msgstr "%s: se ha creado el directorio\n"
 msgid "%s: directory does not exist!\n"
 msgstr "%s: el directorio no existe\n"
 
-#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1325 g10/tdbio.c:457
+#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1344 g10/tdbio.c:457
 #, c-format
 msgid "%s: can't create: %s\n"
 msgstr "%s: no puede crearse: %s\n"
 
-#: g10/tdbio.c:472 g10/tdbio.c:520
+#: g10/tdbio.c:472 g10/tdbio.c:521
 #, fuzzy, c-format
 msgid "%s: can't create lock\n"
 msgstr "%s: no puede crearse: %s\n"
@@ -2412,83 +2512,83 @@ msgstr "%s: fallo en la creaci
 msgid "%s: invalid trustdb created\n"
 msgstr "%s: se ha creado base de datos de confianza no válida\n"
 
-#: g10/tdbio.c:492
+#: g10/tdbio.c:493
 #, c-format
 msgid "%s: trustdb created\n"
 msgstr "%s: se ha creado base de datos de confianza\n"
 
-#: g10/tdbio.c:529
+#: g10/tdbio.c:530
 #, c-format
 msgid "%s: invalid trustdb\n"
 msgstr "%s: base de datos de confianza no válida\n"
 
-#: g10/tdbio.c:562
+#: g10/tdbio.c:563
 #, c-format
 msgid "%s: failed to create hashtable: %s\n"
 msgstr "%s: fallo en la creación de la tabla hash: %s\n"
 
-#: g10/tdbio.c:570
+#: g10/tdbio.c:571
 #, c-format
 msgid "%s: error updating version record: %s\n"
 msgstr "%s: error actualizando el registro de versión: %s\n"
 
-#: g10/tdbio.c:586 g10/tdbio.c:625 g10/tdbio.c:647 g10/tdbio.c:677
-#: g10/tdbio.c:702 g10/tdbio.c:1437 g10/tdbio.c:1464
+#: g10/tdbio.c:587 g10/tdbio.c:626 g10/tdbio.c:648 g10/tdbio.c:678
+#: g10/tdbio.c:703 g10/tdbio.c:1438 g10/tdbio.c:1465
 #, c-format
 msgid "%s: error reading version record: %s\n"
 msgstr "%s: error lectura registro de versión: %s\n"
 
-#: g10/tdbio.c:599 g10/tdbio.c:658
+#: g10/tdbio.c:600 g10/tdbio.c:659
 #, c-format
 msgid "%s: error writing version record: %s\n"
 msgstr "%s: error escritura registro de versión: %s\n"
 
-#: g10/tdbio.c:1131
+#: g10/tdbio.c:1132
 #, c-format
 msgid "trustdb: lseek failed: %s\n"
 msgstr "base de datos de confianza: fallo lseek: %s\n"
 
-#: g10/tdbio.c:1139
+#: g10/tdbio.c:1140
 #, c-format
 msgid "trustdb: read failed (n=%d): %s\n"
 msgstr "base de datos de confianza: error lectura (n=%d): %s\n"
 
-#: g10/tdbio.c:1160
+#: g10/tdbio.c:1161
 #, c-format
 msgid "%s: not a trustdb file\n"
 msgstr "%s: no es una base de datos de confianza\n"
 
-#: g10/tdbio.c:1176
+#: g10/tdbio.c:1177
 #, c-format
 msgid "%s: version record with recnum %lu\n"
 msgstr "%s: registro de versión con numero de registro %lu\n"
 
-#: g10/tdbio.c:1181
+#: g10/tdbio.c:1182
 #, c-format
 msgid "%s: invalid file version %d\n"
 msgstr "%s: versión del fichero %d no válida\n"
 
-#: g10/tdbio.c:1470
+#: g10/tdbio.c:1471
 #, c-format
 msgid "%s: error reading free record: %s\n"
 msgstr "%s: error lectura registro libre: %s\n"
 
-#: g10/tdbio.c:1478
+#: g10/tdbio.c:1479
 #, c-format
 msgid "%s: error writing dir record: %s\n"
 msgstr "%s: error escritura registro de directorio: %s\n"
 
-#: g10/tdbio.c:1488
+#: g10/tdbio.c:1489
 #, c-format
 msgid "%s: failed to zero a record: %s\n"
 msgstr "%s: fallo en poner a cero un registro: %s\n"
 
-#: g10/tdbio.c:1518
+#: g10/tdbio.c:1519
 #, c-format
 msgid "%s: failed to append a record: %s\n"
 msgstr "%s: fallo al añadir un registro: %s\n"
 
-#: g10/tdbio.c:1629
+#: g10/tdbio.c:1630
 msgid "The trustdb is corrupted; please run \"gpgm --fix-trustdb\".\n"
 msgstr ""
 "La base de datos de confianza está dañada. Por favor, ejecute\n"
@@ -2713,7 +2813,7 @@ msgstr "demasiadas preferencias"
 msgid "Too many preference items"
 msgstr "demasiados items de preferencias"
 
-#: g10/trustdb.c:1549 g10/trustdb.c:3045 g10/trustdb.c:3075
+#: g10/trustdb.c:1549 g10/trustdb.c:3075 g10/trustdb.c:3105
 msgid "WARNING: can't yet handle long pref records\n"
 msgstr "ATENCÍON: todavía no puedo tratar registros de preferencias largos\n"
 
@@ -2881,22 +2981,22 @@ msgstr "clave %08lX.%lu: caducada el %s\n"
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr "clave %08lX.%lu: comprobación de confianza fallida: %s\n"
 
-#: g10/trustdb.c:2851
+#: g10/trustdb.c:2881
 #, c-format
 msgid "user '%s' not found: %s\n"
 msgstr "usuario '%s' no encontrado: %s\n"
 
-#: g10/trustdb.c:2853
+#: g10/trustdb.c:2883
 #, c-format
 msgid "problem finding '%s' in trustdb: %s\n"
 msgstr "problema buscando '%s' en la tabla de confianza: %s\n"
 
-#: g10/trustdb.c:2856
+#: g10/trustdb.c:2886
 #, c-format
 msgid "user '%s' not in trustdb - inserting\n"
 msgstr "usuario '%s' no está en la tabla de confianza - insertando\n"
 
-#: g10/trustdb.c:2859
+#: g10/trustdb.c:2889
 #, c-format
 msgid "failed to put '%s' into trustdb: %s\n"
 msgstr "fallo al poner '%s' en la tabla de confianza: %s\n"
@@ -2906,26 +3006,26 @@ msgstr "fallo al poner '%s' en la tabla de confianza: %s\n"
 msgid "%s: can't create keyring: %s\n"
 msgstr "%s: no se puede crear el anillo: %s\n"
 
-#: g10/ringedit.c:322 g10/ringedit.c:1330
+#: g10/ringedit.c:333 g10/ringedit.c:1349
 #, c-format
 msgid "%s: keyring created\n"
 msgstr "%s: anillo creado\n"
 
-#: g10/ringedit.c:1507
+#: g10/ringedit.c:1526
 msgid "WARNING: 2 files with confidential information exists.\n"
 msgstr "ATENCIÓN: existen 2 ficheros con información confidencial.\n"
 
-#: g10/ringedit.c:1508
+#: g10/ringedit.c:1527
 #, c-format
 msgid "%s is the unchanged one\n"
 msgstr "%s es el que no se ha modificado\n"
 
-#: g10/ringedit.c:1509
+#: g10/ringedit.c:1528
 #, c-format
 msgid "%s is the new one\n"
 msgstr "%s es el nuevo\n"
 
-#: g10/ringedit.c:1510
+#: g10/ringedit.c:1529
 msgid "Please fix this possible security flaw\n"
 msgstr "Por favor arregle este posible fallo de seguridad\n"
 
@@ -2971,17 +3071,17 @@ msgstr "asumiendo que hay datos firmados en `%s'\n"
 msgid "%s: new options file created\n"
 msgstr "%s: se ha creado un nuevo fichero de opciones\n"
 
-#: g10/encr-data.c:59
+#: g10/encr-data.c:60
 #, c-format
 msgid "%s encrypted data\n"
 msgstr "datos cifrados %s\n"
 
-#: g10/encr-data.c:61
+#: g10/encr-data.c:62
 #, c-format
 msgid "encrypted with unknown algorithm %d\n"
 msgstr "cifrado con algoritmo desconocido %d\n"
 
-#: g10/encr-data.c:74
+#: g10/encr-data.c:77
 msgid ""
 "WARNING: message was encrypted with a weak key in the symmetric cipher.\n"
 msgstr ""
@@ -3120,6 +3220,19 @@ msgstr "Ayuda no disponible"
 msgid "No help available for `%s'"
 msgstr "Ayuda no disponible para `%s'"
 
+#~ msgid "Usage: gpgm [options] [files] (-h for help)"
+#~ msgstr "Uso: gpgm [opciones] [ficheros] (-h para ayuda)"
+
+#~ msgid ""
+#~ "Syntax: gpgm [options] [files]\n"
+#~ "GnuPG maintenance utility\n"
+#~ msgstr ""
+#~ "Sintaxis: gpgm [opciones] [ficheros]\n"
+#~ "Utilidad de mantenimiento de GnuPG\n"
+
+#~ msgid "usage: gpgm [options] "
+#~ msgstr "uso: gpgm [opciones] "
+
 #~ msgid "|KEYID|ulimately trust this key"
 #~ msgstr "|ID-CLAVE|confía plenamente en esta clave"
 
@@ -3202,9 +3315,6 @@ msgstr "Ayuda no disponible para `%s'"
 #~ msgid "did not use primary key for insert_trust_record()\n"
 #~ msgstr "no se usó clave primaria para insert_trust_record()\n"
 
-#~ msgid "use this user-id for encryption"
-#~ msgstr "usa este usuario para cifrar"
-
 #~ msgid "second"
 #~ msgstr "segundo"
 
index 63cb38a..381124f 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -5,7 +5,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: gnupg 0.9.4a\n"
-"POT-Creation-Date: 1999-03-20 20:04+0100\n"
+"POT-Creation-Date: 1999-05-06 13:37+0200\n"
 "PO-Revision-Date: 1999-03-20 20:09+01:00\n"
 "Last-Translator: Gaël Quéri <gqueri@mail.dotcom.fr>\n"
 "Language-Team: French <fr@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "(you may have used the wrong program for this task)\n"
 msgstr "(vous avez peut-être utilisé le mauvais programme pour cette tache)\n"
 
-#: util/miscutil.c:143
+#: util/miscutil.c:156
 msgid "yes"
 msgstr "oui"
 
-#: util/miscutil.c:144
+#: util/miscutil.c:157
 msgid "yY"
 msgstr "oO"
 
@@ -223,6 +223,11 @@ msgstr "URI non support
 msgid "network error"
 msgstr "erreur de réseau"
 
+#: util/errors.c:102
+#, fuzzy
+msgid "not encrypted"
+msgstr "données chiffrées avec %s\n"
+
 #: util/logger.c:178
 #, c-format
 msgid "... this is a bug (%s:%d:%s)\n"
@@ -233,12 +238,12 @@ msgstr "... c'est un bug (%s:%d:%s)\n"
 msgid "you found a bug ... (%s:%d)\n"
 msgstr "vous avez trouvé un bug ... (%s:%d)\n"
 
-#: cipher/random.c:403
+#: cipher/random.c:408
 msgid "WARNING: using insecure random number generator!!\n"
 msgstr ""
 "ATTENTION : utilisation d'un générateur de nombres aléatoires peu sûr !!\n"
 
-#: cipher/random.c:404
+#: cipher/random.c:409
 msgid ""
 "The random number generator is only a kludge to let\n"
 "it run - it is in no way a strong RNG!\n"
@@ -252,7 +257,7 @@ msgstr ""
 "N'UTILISEZ PAS LES DONNÉES GÉNÉRÉES PAR CE PROGRAMME !!\n"
 "\n"
 
-#: cipher/rndlinux.c:114
+#: cipher/rndlinux.c:110
 #, c-format
 msgid ""
 "\n"
@@ -263,7 +268,7 @@ msgstr ""
 "Il n'y a pas assez d'octets aléatoires disponibles. Faites autre chose\n"
 "pour que l'OS puisse amasser plus d'entropie ! (il faut %d octets de plus)\n"
 
-#: g10/g10.c:165
+#: g10/g10.c:163
 msgid ""
 "@Commands:\n"
 " "
@@ -271,128 +276,133 @@ msgstr ""
 "@Commandes:\n"
 " "
 
-#: g10/g10.c:168
+#: g10/g10.c:165
 msgid "|[file]|make a signature"
 msgstr "|[fichier]|faire une signature"
 
-#: g10/g10.c:169
+#: g10/g10.c:166
 msgid "|[file]|make a clear text signature"
 msgstr "|[fichier]|faire une signature en texte clair"
 
-#: g10/g10.c:170
+#: g10/g10.c:167
 msgid "make a detached signature"
 msgstr "faire une signature détachée"
 
-#: g10/g10.c:171
+#: g10/g10.c:168
 msgid "encrypt data"
 msgstr "chiffrer les données"
 
-#: g10/g10.c:172
+#: g10/g10.c:169
 msgid "encryption only with symmetric cipher"
 msgstr "chiffrement symétrique seulement"
 
-#: g10/g10.c:173
+#: g10/g10.c:170
 msgid "store only"
 msgstr "pas d'action"
 
-#: g10/g10.c:174
+#: g10/g10.c:171
 msgid "decrypt data (default)"
 msgstr "déchiffrer les données (défaut)"
 
-#: g10/g10.c:175
+#: g10/g10.c:172
 msgid "verify a signature"
 msgstr "vérifier une signature"
 
-#: g10/g10.c:177
+#: g10/g10.c:173
 msgid "list keys"
 msgstr "lister les clés"
 
-#: g10/g10.c:178
+#: g10/g10.c:175
 msgid "list keys and signatures"
 msgstr "lister les clés et les signatures"
 
-#: g10/g10.c:179
+#: g10/g10.c:176
 msgid "check key signatures"
 msgstr "vérifier les signatures des clés"
 
-#: g10/g10.c:180
+#: g10/g10.c:177
 msgid "list keys and fingerprints"
 msgstr "lister les clés et les empreintes"
 
-#: g10/g10.c:181
+#: g10/g10.c:178
 msgid "list secret keys"
 msgstr "lister les clés secrètes"
 
-#: g10/g10.c:183
+#: g10/g10.c:179
 msgid "generate a new key pair"
 msgstr "générer une nouvelle paire de clés"
 
-#: g10/g10.c:185
+#: g10/g10.c:180
 msgid "remove key from the public keyring"
 msgstr "enlever la clé du porte-clés public"
 
-#: g10/g10.c:187
+#: g10/g10.c:181
 msgid "sign or edit a key"
 msgstr "signer ou éditer une clé"
 
-#: g10/g10.c:188
+#: g10/g10.c:182
 msgid "generate a revocation certificate"
 msgstr "générer un certificat de révocation"
 
-#: g10/g10.c:190
+#: g10/g10.c:183
 msgid "export keys"
 msgstr "exporter les clés"
 
-#: g10/g10.c:191
+#: g10/g10.c:184
 msgid "export keys to a key server"
 msgstr "exporter les clés vers un serveur de clés"
 
-#: g10/g10.c:194
+#: g10/g10.c:185
+#, fuzzy
+msgid "import keys from a key server"
+msgstr "exporter les clés vers un serveur de clés"
+
+#: g10/g10.c:188
 msgid "import/merge keys"
 msgstr "importer/fusionner les clés"
 
-#: g10/g10.c:196
+#: g10/g10.c:190
 msgid "list only the sequence of packets"
 msgstr "ne lister que les paquets"
 
-#: g10/g10.c:199
+#: g10/g10.c:192
 msgid "export the ownertrust values"
 msgstr "exporter les indices de confiance"
 
-#: g10/g10.c:201
+#: g10/g10.c:194
 msgid "import ownertrust values"
 msgstr "importer les indices de confiance"
 
 #
-#: g10/g10.c:203
+#: g10/g10.c:196
 msgid "|[NAMES]|update the trust database"
 msgstr "|[NOMS]|mettre la base de confiance à jour"
 
-#: g10/g10.c:205
+#: g10/g10.c:198
 msgid "|[NAMES]|check the trust database"
 msgstr "|[NOMS]|vérifier la base de confiance"
 
-#: g10/g10.c:206
+#: g10/g10.c:199
 msgid "fix a corrupted trust database"
 msgstr "réparer une base de confiance corrompue"
 
-#: g10/g10.c:207
+#: g10/g10.c:200
 msgid "De-Armor a file or stdin"
 msgstr "Enlever l'armure d'un fichier ou de stdin"
 
-#: g10/g10.c:208
+#: g10/g10.c:201
 msgid "En-Armor a file or stdin"
 msgstr "Mettre une armure à un fichier ou à stdin"
 
-#: g10/g10.c:209
+#: g10/g10.c:202
 msgid "|algo [files]|print message digests"
 msgstr "|alg. [fich.]|indiquer les fonctions de hachage"
 
-#: g10/g10.c:210
+#: g10/g10.c:203
 msgid "print all message digests"
 msgstr "écrire toutes les fonctions de hachage"
 
-#: g10/g10.c:217
+#: g10/g10.c:209
 msgid ""
 "@\n"
 "Options:\n"
@@ -402,145 +412,149 @@ msgstr ""
 "Options:\n"
 " "
 
-#: g10/g10.c:219
+#: g10/g10.c:211
 msgid "create ascii armored output"
 msgstr "créer une sortie ascii armurée"
 
-#: g10/g10.c:220
+#: g10/g10.c:212
 msgid "|NAME|encrypt for NAME"
 msgstr "|NOM|chiffrer pour NOM"
 
-#: g10/g10.c:225
+#: g10/g10.c:216
 msgid "use this user-id to sign or decrypt"
 msgstr "utiliser ce nom pour signer ou déchiffrer"
 
-#: g10/g10.c:226
+#: g10/g10.c:217
 msgid "|N|set compress level N (0 disables)"
 msgstr "|N|niveau de compression N (0 désactive)"
 
-#: g10/g10.c:228
+#: g10/g10.c:219
 msgid "use canonical text mode"
 msgstr "utiliser le mode de texte canonique"
 
-#: g10/g10.c:230
+#: g10/g10.c:220
 msgid "use as output file"
 msgstr "utiliser comme fichier de sortie"
 
-#: g10/g10.c:231
+#: g10/g10.c:221
 msgid "verbose"
 msgstr "bavard"
 
-#: g10/g10.c:232
+#: g10/g10.c:222
 msgid "be somewhat more quiet"
 msgstr "devenir beaucoup plus silencieux"
 
 #
-#: g10/g10.c:233
+#: g10/g10.c:223
 msgid "force v3 signatures"
 msgstr "forcer les signatures en v3"
 
-#: g10/g10.c:234
+#: g10/g10.c:224
+msgid "always use a MDC for encryption"
+msgstr ""
+
+#: g10/g10.c:225
 msgid "do not make any changes"
 msgstr "ne rien changer"
 
-#: g10/g10.c:235
+#: g10/g10.c:226
 msgid "batch mode: never ask"
 msgstr "mode automatique : ne jamais rien demander"
 
-#: g10/g10.c:236
+#: g10/g10.c:227
 msgid "assume yes on most questions"
 msgstr "répondre oui à la plupart des questions"
 
-#: g10/g10.c:237
+#: g10/g10.c:228
 msgid "assume no on most questions"
 msgstr "répondre non à la plupart des questions"
 
-#: g10/g10.c:238
+#: g10/g10.c:229
 msgid "add this keyring to the list of keyrings"
 msgstr "ajouter ce porte-clés à la liste des porte-clés"
 
-#: g10/g10.c:239
+#: g10/g10.c:230
 msgid "add this secret keyring to the list"
 msgstr "ajouter ce porte-clés secret à la liste"
 
-#: g10/g10.c:240
+#: g10/g10.c:231
 msgid "|NAME|use NAME as default secret key"
 msgstr "|NOM|utiliser NOM comme clé secrète par défaut"
 
-#: g10/g10.c:241
+#: g10/g10.c:232
 msgid "|HOST|use this keyserver to lookup keys"
 msgstr "|HÔTE|utiliser ce serveur pour chercher des clés"
 
-#: g10/g10.c:242
+#: g10/g10.c:233
 msgid "|NAME|set terminal charset to NAME"
 msgstr "|NOM|le terminal utilise la table de caractères NOM"
 
-#: g10/g10.c:243
+#: g10/g10.c:234
 msgid "read options from file"
 msgstr "lire les options du fichier"
 
-#: g10/g10.c:245
+#: g10/g10.c:236
 msgid "set debugging flags"
 msgstr "choisir les attributs de déboguage"
 
-#: g10/g10.c:246
+#: g10/g10.c:237
 msgid "enable full debugging"
 msgstr "permettre un déboguage complet"
 
-#: g10/g10.c:247
+#: g10/g10.c:238
 msgid "|FD|write status info to this FD"
 msgstr "|FD|écrire l'état sur ce descripteur"
 
-#: g10/g10.c:248
+#: g10/g10.c:239
 msgid "do not write comment packets"
 msgstr "ne pas écrire de paquets de commentaire"
 
-#: g10/g10.c:249
+#: g10/g10.c:240
 msgid "(default is 1)"
 msgstr "(1 par défaut)"
 
-#: g10/g10.c:250
+#: g10/g10.c:241
 msgid "(default is 3)"
 msgstr "(3 par défaut)"
 
-#: g10/g10.c:252
+#: g10/g10.c:243
 msgid "|FILE|load extension module FILE"
 msgstr "|FICH|charger le module d'extension FICH"
 
-#: g10/g10.c:253
+#: g10/g10.c:244
 msgid "emulate the mode described in RFC1991"
 msgstr "imiter le mode décrit dans la RFC1991"
 
 # FIXMOI : faudra trouver mieux ...
-#: g10/g10.c:254
+#: g10/g10.c:245
 msgid "|N|use passphrase mode N"
 msgstr "|N|utiliser le mode de codage des mots de passe N"
 
-#: g10/g10.c:256
+#: g10/g10.c:247
 msgid "|NAME|use message digest algorithm NAME for passphrases"
 msgstr "|NOM|utiliser le hachage NOM pour les mots de passe"
 
-#: g10/g10.c:258
+#: g10/g10.c:249
 msgid "|NAME|use cipher algorithm NAME for passphrases"
 msgstr "|NOM|utiliser le chiffre NOM pour les mots de passe"
 
-#: g10/g10.c:260
+#: g10/g10.c:250
 msgid "|NAME|use cipher algorithm NAME"
 msgstr "|NOM|utiliser l'algorithme de chiffrement NOM"
 
-#: g10/g10.c:261
+#: g10/g10.c:251
 msgid "|NAME|use message digest algorithm NAME"
 msgstr "|NOM|utiliser la fonction de hachage NOM"
 
-#: g10/g10.c:262
+#: g10/g10.c:252
 msgid "|N|use compress algorithm N"
 msgstr "|N|utiliser l'algorithme de compression N"
 
-#: g10/g10.c:263
+#: g10/g10.c:253
 msgid "throw keyid field of encrypted packets"
 msgstr "supprimer l'identification des paquets chiffrés"
 
-#: g10/g10.c:271
+#: g10/g10.c:255
 msgid ""
 "@\n"
 "Examples:\n"
@@ -560,28 +574,15 @@ msgstr ""
 " --list-keys [utilisateur]    montrer les clés\n"
 " --fingerprint [utilisateur]  montrer les empreintes\n"
 
-#: g10/g10.c:351
+#: g10/g10.c:323
 msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
 msgstr "Rapporter toutes anomalies à <gnupg-bugs@gnu.org>.\n"
 
-#: g10/g10.c:356
-msgid "Usage: gpgm [options] [files] (-h for help)"
-msgstr "Utilisation: gpgm [options] [fichiers] (-h pour l'aide)"
-
-#: g10/g10.c:358
+#: g10/g10.c:327
 msgid "Usage: gpg [options] [files] (-h for help)"
 msgstr "Utilisation: gpg [options] [fichiers] (-h pour l'aide)"
 
-#
-#: g10/g10.c:363
-msgid ""
-"Syntax: gpgm [options] [files]\n"
-"GnuPG maintenance utility\n"
-msgstr ""
-"Syntaxe: gpgm [options] [fichiers]\n"
-"utilitaire de maitenance de GnuPG\n"
-
-#: g10/g10.c:366
+#: g10/g10.c:330
 msgid ""
 "Syntax: gpg [options] [files]\n"
 "sign, check, encrypt or decrypt\n"
@@ -591,7 +592,7 @@ msgstr ""
 "signer, vérifier, chiffer ou déchiffrer\n"
 "l'opération par défaut dépend des données entrées\n"
 
-#: g10/g10.c:372
+#: g10/g10.c:335
 msgid ""
 "\n"
 "Supported algorithms:\n"
@@ -599,222 +600,218 @@ msgstr ""
 "\n"
 "Algorithmes supportés:\n"
 
-#: g10/g10.c:447
-msgid "usage: gpgm [options] "
-msgstr "utilisation: gpgm [options] "
-
-#: g10/g10.c:449
+#: g10/g10.c:409
 msgid "usage: gpg [options] "
 msgstr "utilisation: gpg [options] "
 
-#: g10/g10.c:490
+#: g10/g10.c:449
 msgid "conflicting commands\n"
 msgstr "commandes en conflit\n"
 
-#: g10/g10.c:629
+#: g10/g10.c:576
 #, c-format
 msgid "NOTE: no default option file `%s'\n"
 msgstr "NOTE : pas de fichier d'options par défaut `%s'\n"
 
-#: g10/g10.c:633
+#: g10/g10.c:580
 #, c-format
 msgid "option file `%s': %s\n"
 msgstr "fichier d'options `%s' : %s\n"
 
-#: g10/g10.c:640
+#: g10/g10.c:587
 #, c-format
 msgid "reading options from `%s'\n"
 msgstr "lire les options de `%s'\n"
 
-#: g10/g10.c:794
+#: g10/g10.c:731
 #, c-format
 msgid "%s is not a valid character set\n"
 msgstr "%s n'est pas une table de caractères valide\n"
 
-#: g10/g10.c:835 g10/g10.c:847
+#: g10/g10.c:774 g10/g10.c:786
 msgid "selected cipher algorithm is invalid\n"
 msgstr "l'algorithme de chiffrement sélectionné est invalide\n"
 
-#: g10/g10.c:841 g10/g10.c:853
+#: g10/g10.c:780 g10/g10.c:792
 msgid "selected digest algorithm is invalid\n"
 msgstr "la fonction de hachage sélectionnée est invalide\n"
 
-#: g10/g10.c:856
+#: g10/g10.c:795
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "l'algorithme de compression doit faire partie de l'échelle %d..%d\n"
 
-#: g10/g10.c:858
+#: g10/g10.c:797
 msgid "completes-needed must be greater than 0\n"
 msgstr "« completes-needed » doit être supérieur à 0\n"
 
-#: g10/g10.c:860
+#: g10/g10.c:799
 msgid "marginals-needed must be greater than 1\n"
 msgstr "« marginals-needed » doit être supérieur à 1\n"
 
-#: g10/g10.c:862
+#: g10/g10.c:801
 msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr "« max-cert-depth » doit être compris entre 1 et 255\n"
 
-#: g10/g10.c:865
+#: g10/g10.c:804
 msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr "NOTE : le mode S2K simple (0) est fortement déconseillé\n"
 
-#: g10/g10.c:869
+#: g10/g10.c:808
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr "mode S2K invalide ; doit être 0, 1 ou 3\n"
 
-#: g10/g10.c:946
+#: g10/g10.c:885
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "n'a pas pu initialiser la base de confiance : %s\n"
 
-#: g10/g10.c:952
+#: g10/g10.c:891
 msgid "--store [filename]"
 msgstr "--store [nom du fichier]"
 
-#: g10/g10.c:960
+#: g10/g10.c:898
 msgid "--symmetric [filename]"
 msgstr "--symmetric [nom du fichier]"
 
-#: g10/g10.c:968
+#: g10/g10.c:906
 msgid "--encrypt [filename]"
 msgstr "--encrypt [nom du fichier]"
 
-#: g10/g10.c:981
+#: g10/g10.c:919
 msgid "--sign [filename]"
 msgstr "--sign [nom du fichier]"
 
-#: g10/g10.c:994
+#: g10/g10.c:932
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [nom du fichier]"
 
-#: g10/g10.c:1008
+#: g10/g10.c:946
 msgid "--clearsign [filename]"
 msgstr "--clearsign [nom du fichier]"
 
-#: g10/g10.c:1020
+#: g10/g10.c:958
 msgid "--decrypt [filename]"
 msgstr "--decrypt [nom du fichier]"
 
-#: g10/g10.c:1029
+#: g10/g10.c:967
 msgid "--edit-key username [commands]"
 msgstr "--edit-key utilisateur [commandes]"
 
-#: g10/g10.c:1045
+#: g10/g10.c:981
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key utilisateur"
 
-#: g10/g10.c:1048
+#: g10/g10.c:984
 msgid "--delete-key username"
 msgstr "--delete-key utilisateur"
 
-#: g10/encode.c:229 g10/g10.c:1071 g10/sign.c:311
+#: g10/encode.c:234 g10/g10.c:1007 g10/sign.c:311
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "ne peut ouvrir %s: %s\n"
 
-#: g10/g10.c:1082
+#: g10/g10.c:1018
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [utilisateur] [porte-clés]"
 
-#: g10/g10.c:1143
+#: g10/g10.c:1077
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "suppression d'armure non réussie : %s\n"
 
-#: g10/g10.c:1151
+#: g10/g10.c:1085
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "construction d'armure non réussie : %s \n"
 
-#: g10/g10.c:1217
+#: g10/g10.c:1151
 #, c-format
 msgid "invalid hash algorithm `%s'\n"
 msgstr "algorithme de hachage `%s' invalide\n"
 
-#: g10/g10.c:1296
+#: g10/g10.c:1226
 msgid "[filename]"
 msgstr "[nom du fichier]"
 
-#: g10/g10.c:1300
+#: g10/g10.c:1230
 msgid "Go ahead and type your message ...\n"
 msgstr "Continuez et tapez votre message...\n"
 
-#: g10/decrypt.c:59 g10/g10.c:1303 g10/verify.c:66
+#: g10/decrypt.c:59 g10/g10.c:1233 g10/verify.c:66
 #, c-format
 msgid "can't open `%s'\n"
 msgstr "ne peut ouvrir `%s'\n"
 
-#: g10/armor.c:297
+#: g10/armor.c:296
 #, c-format
 msgid "armor: %s\n"
 msgstr "armure : %s\n"
 
-#: g10/armor.c:320
+#: g10/armor.c:319
 msgid "invalid armor header: "
 msgstr "en-tête d'armure invalide : "
 
-#: g10/armor.c:327
+#: g10/armor.c:326
 msgid "armor header: "
 msgstr "en-tête d'armure : "
 
-#: g10/armor.c:338
+#: g10/armor.c:337
 msgid "invalid clearsig header\n"
 msgstr "en-tête de signature claire invalide\n"
 
-#: g10/armor.c:390
+#: g10/armor.c:389
 msgid "nested clear text signatures\n"
 msgstr "signatures en texte clair imbriquées\n"
 
-#: g10/armor.c:499
+#: g10/armor.c:498
 msgid "invalid dash escaped line: "
 msgstr "ligne de traits d'échappement invalide : "
 
-#: g10/armor.c:507
+#: g10/armor.c:510
 msgid "unexpected armor:"
 msgstr "armure inattendue :"
 
-#: g10/armor.c:623
+#: g10/armor.c:627
 #, c-format
 msgid "invalid radix64 character %02x skipped\n"
 msgstr "caractère %02x invalide en base 64 ignoré\n"
 
-#: g10/armor.c:666
+#: g10/armor.c:670
 msgid "premature eof (no CRC)\n"
 msgstr "fin de fichier prématurée (pas de CRC)\n"
 
-#: g10/armor.c:700
+#: g10/armor.c:704
 msgid "premature eof (in CRC)\n"
 msgstr "fin de fichier prématurée (dans le CRC)\n"
 
-#: g10/armor.c:704
+#: g10/armor.c:708
 msgid "malformed CRC\n"
 msgstr "CRC malformé\n"
 
-#: g10/armor.c:708
+#: g10/armor.c:712
 #, c-format
 msgid "CRC error; %06lx - %06lx\n"
 msgstr "Erreur de CRC ; %06lx - %06lx\n"
 
-#: g10/armor.c:725
+#: g10/armor.c:729
 msgid "premature eof (in Trailer)\n"
 msgstr "fin de fichier prématurée (dans la remorque)\n"
 
-#: g10/armor.c:729
+#: g10/armor.c:733
 msgid "error in trailer line\n"
 msgstr "erreur dans la ligne de remorque\n"
 
-#: g10/armor.c:993
+#: g10/armor.c:997
 msgid "no valid OpenPGP data found.\n"
 msgstr "aucune de donnée OpenPGP valide n'a été trouvée.\n"
 
-#: g10/armor.c:997
+#: g10/armor.c:1001
 #, c-format
 msgid "invalid armor: line longer than %d characters\n"
 msgstr "armure invalide : ligne plus longue que %d caractères\n"
 
-#: g10/armor.c:1001
+#: g10/armor.c:1005
 msgid ""
 "quoted printable character in armor - probably a buggy MTA has been used\n"
 msgstr ""
@@ -911,26 +908,31 @@ msgstr ""
 msgid "key %08lX: key has been revoked!\n"
 msgstr "clé %08lX : la clé a été révoquée !\n"
 
-#: g10/pkclist.c:287 g10/pkclist.c:391
+#: g10/pkclist.c:287 g10/pkclist.c:297 g10/pkclist.c:403
 msgid "Use this key anyway? "
 msgstr "Utiliser cette clé quand-même ? "
 
-#: g10/pkclist.c:311
+#: g10/pkclist.c:291
+#, fuzzy, c-format
+msgid "key %08lX: subkey has been revoked!\n"
+msgstr "clé %08lX : la clé a été révoquée !\n"
+
+#: g10/pkclist.c:321
 #, c-format
 msgid "%08lX: key has expired\n"
 msgstr "%08lX : la clé a expiré\n"
 
-#: g10/pkclist.c:317
+#: g10/pkclist.c:327
 #, c-format
 msgid "%08lX: no info to calculate a trust probability\n"
 msgstr "%08lX : pas d'information pour calculer une probabilité de confiance\n"
 
-#: g10/pkclist.c:331
+#: g10/pkclist.c:341
 #, c-format
 msgid "%08lX: We do NOT trust this key\n"
 msgstr "%08lX : Nous ne faisons PAS confiance à cette clé\n"
 
-#: g10/pkclist.c:337
+#: g10/pkclist.c:347
 #, c-format
 msgid ""
 "%08lX: It is not sure that this key really belongs to the owner\n"
@@ -940,15 +942,15 @@ msgstr ""
 "propriétaire\n"
 "mais elle est quand même acceptée\n"
 
-#: g10/pkclist.c:343
+#: g10/pkclist.c:353
 msgid "This key probably belongs to the owner\n"
 msgstr "Cette clé appartient probablement à son propriétaire\n"
 
-#: g10/pkclist.c:348
+#: g10/pkclist.c:358
 msgid "This key belongs to us\n"
 msgstr "Cette clé nous appartient\n"
 
-#: g10/pkclist.c:386
+#: g10/pkclist.c:398
 msgid ""
 "It is NOT certain that the key belongs to its owner.\n"
 "If you *really* know what you are doing, you may answer\n"
@@ -960,58 +962,63 @@ msgstr ""
 "oui à la prochaine question\n"
 "\n"
 
-#: g10/pkclist.c:399
+#: g10/pkclist.c:411
 msgid "WARNING: Using untrusted key!\n"
 msgstr "ATTENTION : Utilisation d'une clé sans confiance !\n"
 
-#: g10/pkclist.c:435
+#: g10/pkclist.c:447
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr "ATTENTION : Cette clé à été révoquée par son propriétaire !\n"
 
-#: g10/pkclist.c:436
+#: g10/pkclist.c:448
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "         Cela pourrait signifier que la signature est fausse.\n"
 
-#: g10/pkclist.c:457
+#: g10/pkclist.c:452
+#, fuzzy
+msgid "WARNING: This subkey has been revoked by its owner!\n"
+msgstr "ATTENTION : Cette clé à été révoquée par son propriétaire !\n"
+
+#: g10/pkclist.c:473
 msgid "Note: This key has expired!\n"
 msgstr "Note : Cette clé a expiré !\n"
 
-#: g10/pkclist.c:464
+#: g10/pkclist.c:480
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr ""
 "ATTENTION : Cette clé n'est pas certifiée avec une signature de confiance !\n"
 
-#: g10/pkclist.c:466
+#: g10/pkclist.c:482
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr "         Rien ne dit que la signature appartient à son propriétaire.\n"
 
-#: g10/pkclist.c:482
+#: g10/pkclist.c:498
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "ATTENTION : Nous ne faisons PAS confiance à cette clé !\n"
 
-#: g10/pkclist.c:483
+#: g10/pkclist.c:499
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "         La signature est certainement FAUSSE.\n"
 
-#: g10/pkclist.c:490
+#: g10/pkclist.c:506
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 "ATTENTION : Les signatures de cette clé n'ont pas une confiance suffisante "
 "!\n"
 
-#: g10/pkclist.c:493
+#: g10/pkclist.c:509
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr ""
 "         Il n'est pas sûr que la signature appartient à son propriétaire.\n"
 
-#: g10/pkclist.c:546 g10/pkclist.c:559 g10/pkclist.c:622 g10/pkclist.c:650
+#: g10/pkclist.c:562 g10/pkclist.c:575 g10/pkclist.c:638 g10/pkclist.c:666
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s : ignoré : %s\n"
 
-#: g10/pkclist.c:568
+#: g10/pkclist.c:584
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -1020,20 +1027,20 @@ msgstr ""
 "\"-r\")\n"
 "\n"
 
-#: g10/pkclist.c:573
+#: g10/pkclist.c:589
 msgid "Enter the user ID: "
 msgstr "Entrez le nom d'utilisateur : "
 
-#: g10/pkclist.c:584
+#: g10/pkclist.c:600
 msgid "No such user ID.\n"
 msgstr "Pas de tel utilisateur.\n"
 
-#: g10/pkclist.c:630
+#: g10/pkclist.c:646
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s : erreur pendant la vérification de la clé : %s\n"
 
-#: g10/pkclist.c:656
+#: g10/pkclist.c:672
 msgid "no valid addressees\n"
 msgstr "pas de destinataire valide\n"
 
@@ -1113,7 +1120,20 @@ msgstr "DSA permet seulement des tailles comprises entre 512 et 1024\n"
 msgid "keysize too small; 768 is smallest value allowed.\n"
 msgstr "taille trop petite ; 768 est la plus petite valeur permise.\n"
 
-#: g10/keygen.c:459
+#. It is ridiculous and an annoyance to use larger key sizes!
+#. * GnuPG can handle much larger sizes; but it takes an eternity
+#. * to create such a key (but less than the time the Sirius
+#. * Computer Corporation needs to process one of the usual
+#. * complaints) and {de,en}cryption although needs some time.
+#. * So, before you complain about this limitation, I suggest that
+#. * you start a discussion with Marvin about this theme and then
+#. * do whatever you want.
+#: g10/keygen.c:466
+#, fuzzy, c-format
+msgid "keysize too large; %d is largest value allowed.\n"
+msgstr "taille trop petite ; 768 est la plus petite valeur permise.\n"
+
+#: g10/keygen.c:471
 msgid ""
 "Keysizes larger than 2048 are not suggested because\n"
 "computations take REALLY long!\n"
@@ -1121,11 +1141,11 @@ msgstr ""
 "Les tailles supérieures à 2048 ne sont pas conseillées car\n"
 "les calculs prennent VRAIMENT beaucoup de temps !\n"
 
-#: g10/keygen.c:462
+#: g10/keygen.c:474
 msgid "Are you sure that you want this keysize? "
 msgstr "Etes-vous sûr de vouloir cette taille ? "
 
-#: g10/keygen.c:463
+#: g10/keygen.c:475
 msgid ""
 "Okay, but keep in mind that your monitor and keyboard radiation is also very "
 "vulnerable to attacks!\n"
@@ -1133,21 +1153,21 @@ msgstr ""
 "D'accord, mais n'oubliez pas que les radiations de votre écran et de votre\n"
 "clavier sont aussi très vulnérables aux attaques !\n"
 
-#: g10/keygen.c:471
+#: g10/keygen.c:483
 msgid "Do you really need such a large keysize? "
 msgstr "Avez-vous réellement besoin d'une taille aussi grande ? "
 
-#: g10/keygen.c:477
+#: g10/keygen.c:489
 #, c-format
 msgid "Requested keysize is %u bits\n"
 msgstr "La taille demandée est %u bits\n"
 
-#: g10/keygen.c:480 g10/keygen.c:484
+#: g10/keygen.c:492 g10/keygen.c:496
 #, c-format
 msgid "rounded up to %u bits\n"
 msgstr "arrondie à %u bits\n"
 
-#: g10/keygen.c:497
+#: g10/keygen.c:509
 msgid ""
 "Please specify how long the key should be valid.\n"
 "         0 = key does not expire\n"
@@ -1163,29 +1183,29 @@ msgstr ""
 "      <n>m = la clé expire dans n mois\n"
 "      <n>y = la clé expire dans n ans\n"
 
-#: g10/keygen.c:512
+#: g10/keygen.c:524
 msgid "Key is valid for? (0) "
 msgstr "La clé est valide pour ? (0) "
 
-#: g10/keygen.c:523
+#: g10/keygen.c:535
 msgid "invalid value\n"
 msgstr "valeur invalide\n"
 
-#: g10/keygen.c:528
+#: g10/keygen.c:540
 msgid "Key does not expire at all\n"
 msgstr "La clé n'expire pas du tout\n"
 
 #. print the date when the key expires
-#: g10/keygen.c:534
+#: g10/keygen.c:546
 #, c-format
 msgid "Key expires at %s\n"
 msgstr "La clé expire le %s\n"
 
-#: g10/keygen.c:540
+#: g10/keygen.c:552
 msgid "Is this correct (y/n)? "
 msgstr "Est-ce correct (o/n) ? "
 
-#: g10/keygen.c:583
+#: g10/keygen.c:595
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1201,44 +1221,44 @@ msgstr ""
 "   « Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de> »\n"
 "\n"
 
-#: g10/keygen.c:594
+#: g10/keygen.c:606
 msgid "Real name: "
 msgstr "Nom réel : "
 
-#: g10/keygen.c:598
+#: g10/keygen.c:610
 msgid "Invalid character in name\n"
 msgstr "Caractère invalide dans le nom\n"
 
-#: g10/keygen.c:600
+#: g10/keygen.c:612
 msgid "Name may not start with a digit\n"
 msgstr "Le nom ne doit pas commencer avec un chiffre\n"
 
-#: g10/keygen.c:602
+#: g10/keygen.c:614
 msgid "Name must be at least 5 characters long\n"
 msgstr "Le nom doit faire au moins 5 caractères de long\n"
 
-#: g10/keygen.c:610
+#: g10/keygen.c:622
 msgid "Email address: "
 msgstr "Adresse e-mail : "
 
-#: g10/keygen.c:621
+#: g10/keygen.c:633
 msgid "Not a valid email address\n"
 msgstr "Ce n'est pas une adresse e-mail valide\n"
 
-#: g10/keygen.c:629
+#: g10/keygen.c:641
 msgid "Comment: "
 msgstr "Commentaire : "
 
-#: g10/keygen.c:635
+#: g10/keygen.c:647
 msgid "Invalid character in comment\n"
 msgstr "Caractère invalide dans le commentaire\n"
 
-#: g10/keygen.c:657
+#: g10/keygen.c:669
 #, c-format
 msgid "You are using the `%s' character set.\n"
 msgstr "Vous utilisez le jeu de caractères '%s'.\n"
 
-#: g10/keygen.c:663
+#: g10/keygen.c:675
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1249,15 +1269,15 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:666
+#: g10/keygen.c:678
 msgid "NnCcEeOoQq"
 msgstr "NnCcEeOoQq"
 
-#: g10/keygen.c:676
+#: g10/keygen.c:688
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr "Changer le (N)om, le (C)ommentaire, l'(E)-mail ou (O)K/(Q)uitter? "
 
-#: g10/keygen.c:728
+#: g10/keygen.c:740
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1265,11 +1285,11 @@ msgstr ""
 "Vous avez besoin d'un mot de passe pour protéger votre clé secrète.\n"
 "\n"
 
-#: g10/keyedit.c:421 g10/keygen.c:736
+#: g10/keyedit.c:433 g10/keygen.c:748
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "le mot de passe n'a pas été répété à l'identique ; recommencez.\n"
 
-#: g10/keygen.c:742
+#: g10/keygen.c:754
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -1281,7 +1301,7 @@ msgstr ""
 "le désirez, en utilisant ce programme avec l'option « --edit-key ».\n"
 "\n"
 
-#: g10/keygen.c:763
+#: g10/keygen.c:775
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (type on the keyboard, move the mouse, utilize the\n"
@@ -1293,33 +1313,33 @@ msgstr ""
 "pendant la génération de nombres premiers ; cela donne au générateur de\n"
 "nombres aléatoires une meilleure chance d'avoir assez d'entropie.\n"
 
-#: g10/keygen.c:833
+#: g10/keygen.c:845
 msgid "Key generation can only be used in interactive mode\n"
 msgstr "La génération de clé ne peut être faite qu'en mode interactif\n"
 
-#: g10/keygen.c:841
+#: g10/keygen.c:853
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "La paire de clés DSA fera 1024 bits.\n"
 
-#: g10/keygen.c:847
+#: g10/keygen.c:859
 msgid "Key generation cancelled.\n"
 msgstr "La génération a été annulée.\n"
 
-#: g10/keygen.c:857
+#: g10/keygen.c:869
 #, c-format
 msgid "writing public certificate to `%s'\n"
 msgstr "écriture d'un certificat public à `%s'\n"
 
-#: g10/keygen.c:858
+#: g10/keygen.c:870
 #, c-format
 msgid "writing secret certificate to `%s'\n"
 msgstr "écriture d'un certificat secret à `%s'\n"
 
-#: g10/keygen.c:935
+#: g10/keygen.c:947
 msgid "public and secret key created and signed.\n"
 msgstr "les clés publique et secrète ont été créées et signées.\n"
 
-#: g10/keygen.c:937
+#: g10/keygen.c:949
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
 "the command \"--edit-key\" to generate a secondary key for this purpose.\n"
@@ -1328,13 +1348,13 @@ msgstr ""
 "utiliser la commande « --edit-key » pour générer une clé secondaire à\n"
 "cette fin.\n"
 
-#: g10/keygen.c:951 g10/keygen.c:1050
+#: g10/keygen.c:963 g10/keygen.c:1062
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "La génération de clé a échoué : %s\n"
 
 # on s'amuse comme on peut...
-#: g10/keygen.c:995 g10/sig-check.c:212 g10/sign.c:52
+#: g10/keygen.c:1007 g10/sig-check.c:299 g10/sign.c:52
 #, c-format
 msgid ""
 "key has been created %lu second in future (time warp or clock problem)\n"
@@ -1342,7 +1362,7 @@ msgstr ""
 "la clé a été créée %lu seconde dans le futur (discontinuité temporelle ou\n"
 "problème d'horloge)\n"
 
-#: g10/keygen.c:997 g10/sig-check.c:214 g10/sign.c:54
+#: g10/keygen.c:1009 g10/sig-check.c:301 g10/sign.c:54
 #, c-format
 msgid ""
 "key has been created %lu seconds in future (time warp or clock problem)\n"
@@ -1350,32 +1370,37 @@ msgstr ""
 "la clé a été créée %lu secondes dans le futur (discontinuité temporelle ou\n"
 "problème d'horloge\n"
 
-#: g10/keygen.c:1028
+#: g10/keygen.c:1040
 msgid "Really create? "
 msgstr "Créer vraiment ? "
 
-#: g10/encode.c:90 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
-#: g10/tdbio.c:527
+#: g10/encode.c:91 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
+#: g10/tdbio.c:528
 #, c-format
 msgid "%s: can't open: %s\n"
 msgstr "%s : ne peut ouvrir : %s\n"
 
-#: g10/encode.c:112
+#: g10/encode.c:113
 #, c-format
 msgid "error creating passphrase: %s\n"
 msgstr "erreur pendant la création du mot de passe : %s\n"
 
-#: g10/encode.c:166 g10/encode.c:285
+#: g10/encode.c:167 g10/encode.c:290
 #, c-format
 msgid "%s: WARNING: empty file\n"
 msgstr "%s : ATTENTION : fichier vide\n"
 
-#: g10/encode.c:235
+#: g10/encode.c:240
 #, c-format
 msgid "reading from `%s'\n"
 msgstr "lecture de `%s'\n"
 
-#: g10/encode.c:413
+#: g10/encode.c:435 g10/sign.c:346
+#, c-format
+msgid "WARNING: `%s' is an empty file\n"
+msgstr "ATTENTION : `%s' est un fichier vide\n"
+
+#: g10/encode.c:605
 #, c-format
 msgid "%s/%s encrypted for: %s\n"
 msgstr "%s/%s chiffré pour : %s\n"
@@ -1407,7 +1432,7 @@ msgstr "trop d'entr
 msgid "too many entries in unk cache - disabled\n"
 msgstr "trop d'entrées dans le cache unk - désactivé\n"
 
-#: g10/getkey.c:1531 g10/getkey.c:1587
+#: g10/getkey.c:1535 g10/getkey.c:1591
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr ""
@@ -1434,323 +1459,332 @@ msgstr "%lu cl
 msgid "read error: %s\n"
 msgstr "erreur de lecture : %s\n"
 
-#: g10/import.c:174
+#: g10/import.c:175
 #, c-format
 msgid "Total number processed: %lu\n"
 msgstr "       Quantité totale traitée : %lu\n"
 
-#: g10/import.c:176
+#: g10/import.c:177
 #, c-format
 msgid "          w/o user IDs: %lu\n"
 msgstr "        sans nom d'utilisateur : %lu\n"
 
-#: g10/import.c:178
+#: g10/import.c:179
 #, c-format
 msgid "              imported: %lu"
 msgstr "                      importée : %lu"
 
-#: g10/import.c:184
+#: g10/import.c:185
 #, c-format
 msgid "             unchanged: %lu\n"
 msgstr "                     inchangée : %lu\n"
 
-#: g10/import.c:186
+#: g10/import.c:187
 #, c-format
 msgid "          new user IDs: %lu\n"
 msgstr "  nouveaux noms d'utilisateurs : %lu\n"
 
-#: g10/import.c:188
+#: g10/import.c:189
 #, c-format
 msgid "           new subkeys: %lu\n"
 msgstr "           nouvelles sous-clés : %lu\n"
 
-#: g10/import.c:190
+#: g10/import.c:191
 #, c-format
 msgid "        new signatures: %lu\n"
 msgstr "          nouvelles signatures : %lu\n"
 
-#: g10/import.c:192
+#: g10/import.c:193
 #, c-format
 msgid "   new key revocations: %lu\n"
 msgstr " nouvelles révocations de clés : %lu\n"
 
-#: g10/import.c:194
+#: g10/import.c:195
 #, c-format
 msgid "      secret keys read: %lu\n"
 msgstr "            clés secrètes lues : %lu\n"
 
-#: g10/import.c:196
+#: g10/import.c:197
 #, c-format
 msgid "  secret keys imported: %lu\n"
 msgstr "       clés secrètes importées : %lu\n"
 
-#: g10/import.c:198
+#: g10/import.c:199
 #, c-format
 msgid " secret keys unchanged: %lu\n"
 msgstr "      clés secrètes inchangées : %lu\n"
 
-#: g10/import.c:340 g10/import.c:532
+#: g10/import.c:342 g10/import.c:534
 #, c-format
 msgid "key %08lX: no user id\n"
 msgstr "clé %08lX : pas de nom d'utilisateur\n"
 
-#: g10/import.c:351
+#: g10/import.c:353
 #, c-format
 msgid "key %08lX: no valid user ids\n"
 msgstr "clé %08lX : pas de nom d'utilisateur valide\n"
 
-#: g10/import.c:353
+#: g10/import.c:355
 msgid "this may be caused by a missing self-signature\n"
 msgstr "cela peut provenir d'une auto-signature manquante\n"
 
-#: g10/import.c:364 g10/import.c:600
+#: g10/import.c:366 g10/import.c:604
 #, c-format
 msgid "key %08lX: public key not found: %s\n"
 msgstr "clé %08lX : clé publique pas trouvée: %s\n"
 
-#: g10/import.c:370
+#: g10/import.c:372
 msgid "no default public keyring\n"
 msgstr "pas de porte-clés public par défaut\n"
 
-#: g10/import.c:374 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:498
+#: g10/import.c:376 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:501
 #, c-format
 msgid "writing to `%s'\n"
 msgstr "écriture de `%s'\n"
 
-#: g10/import.c:378 g10/import.c:438 g10/import.c:654
+#: g10/import.c:380 g10/import.c:440 g10/import.c:658
 #, c-format
 msgid "can't lock public keyring: %s\n"
 msgstr "ne peut verrouiller le porte-clés public : %s\n"
 
-#: g10/import.c:381
+#: g10/import.c:383
 #, c-format
 msgid "can't write to keyring: %s\n"
 msgstr "ne peut écrire le porte-clés : %s\n"
 
-#: g10/import.c:385
+#: g10/import.c:387
 #, c-format
 msgid "key %08lX: public key imported\n"
 msgstr "clé %08lX : clé publique importée\n"
 
-#: g10/import.c:398
+#: g10/import.c:400
 #, c-format
 msgid "key %08lX: doesn't match our copy\n"
 msgstr "clé %08lX : ne ressemble pas à notre copie\n"
 
-#: g10/import.c:411 g10/import.c:609
+#: g10/import.c:413 g10/import.c:613
 #, c-format
 msgid "key %08lX: can't locate original keyblock: %s\n"
 msgstr "clé %08lX : ne peut trouver le bloc de clés original : %s\n"
 
-#: g10/import.c:418 g10/import.c:616
+#: g10/import.c:420 g10/import.c:620
 #, c-format
 msgid "key %08lX: can't read original keyblock: %s\n"
 msgstr "clé %08lX : ne peut lire le bloc de clés original : %s\n"
 
-#: g10/import.c:435 g10/import.c:547 g10/import.c:651
+#: g10/import.c:437 g10/import.c:549 g10/import.c:655
 msgid "writing keyblock\n"
 msgstr "écriture du bloc de clés\n"
 
-#: g10/import.c:441 g10/import.c:657
+#: g10/import.c:443 g10/import.c:661
 #, c-format
 msgid "can't write keyblock: %s\n"
 msgstr "ne peut écrire le bloc de clés : %s\n"
 
-#: g10/import.c:446
+#: g10/import.c:448
 #, c-format
 msgid "key %08lX: 1 new user-id\n"
 msgstr "clé %08lX : un nouvel utilisateur\n"
 
-#: g10/import.c:449
+#: g10/import.c:451
 #, c-format
 msgid "key %08lX: %d new user-ids\n"
 msgstr "clé %08lX : %d nouveaux utilisateurs\n"
 
-#: g10/import.c:452
+#: g10/import.c:454
 #, c-format
 msgid "key %08lX: 1 new signature\n"
 msgstr "clé %08lX : une nouvelle signature\n"
 
-#: g10/import.c:455
+#: g10/import.c:457
 #, c-format
 msgid "key %08lX: %d new signatures\n"
 msgstr "clé %08lX : %d nouvelles signatures\n"
 
-#: g10/import.c:458
+#: g10/import.c:460
 #, c-format
 msgid "key %08lX: 1 new subkey\n"
 msgstr "clé %08lX : une nouvelle sous-clé\n"
 
-#: g10/import.c:461
+#: g10/import.c:463
 #, c-format
 msgid "key %08lX: %d new subkeys\n"
 msgstr "clé %08lX : %d nouvelles sous-clés\n"
 
-#: g10/import.c:471
+#: g10/import.c:473
 #, c-format
 msgid "key %08lX: not changed\n"
 msgstr "clé %08lX : n'a pas changé\n"
 
-#: g10/import.c:550
+#: g10/import.c:552
 #, c-format
 msgid "can't lock secret keyring: %s\n"
 msgstr "ne peut verrouiller le porte-clés secret : %s\n"
 
-#: g10/import.c:553
+#: g10/import.c:555
 #, c-format
 msgid "can't write keyring: %s\n"
 msgstr "ne peut écrire le porte-clés : %s\n"
 
-#. we are ready
-#: g10/import.c:556
+#: g10/import.c:559
 #, c-format
 msgid "key %08lX: secret key imported\n"
 msgstr "clé %08lX : clé secrète importée\n"
 
 #. we can't merge secret keys
-#: g10/import.c:560
+#: g10/import.c:564
 #, c-format
 msgid "key %08lX: already in secret keyring\n"
 msgstr "clé %08lX : déjà dans le porte-clés secret\n"
 
-#: g10/import.c:565
+#: g10/import.c:569
 #, c-format
 msgid "key %08lX: secret key not found: %s\n"
 msgstr "clé %08lX : clé secrète pas trouvée: %s\n"
 
-#: g10/import.c:594
+#: g10/import.c:598
 #, c-format
 msgid "key %08lX: no public key - can't apply revocation certificate\n"
 msgstr ""
 "clé %08lX : pas de clé publique - ne peut appliquer le certificat de\n"
 "révocation\n"
 
-#: g10/import.c:627
+#: g10/import.c:631
 #, c-format
 msgid "key %08lX: invalid revocation certificate: %s - rejected\n"
 msgstr "clé %08lX : certificat de révocation invalide : %s - rejeté\n"
 
-#: g10/import.c:661
+#: g10/import.c:665
 #, c-format
 msgid "key %08lX: revocation certificate imported\n"
 msgstr "clé %08lX : certificat de révocation importé\n"
 
-#: g10/import.c:695
+#: g10/import.c:699
 #, c-format
 msgid "key %08lX: no user-id for signature\n"
 msgstr "clé %08lX : pas d'utilisateur pour la signature\n"
 
-#: g10/import.c:702 g10/import.c:727
+#: g10/import.c:706 g10/import.c:731
 #, c-format
 msgid "key %08lX: unsupported public key algorithm\n"
 msgstr "clé %08lX : algorithme de clé publique non supporté\n"
 
-#: g10/import.c:703
+#: g10/import.c:707
 #, c-format
 msgid "key %08lX: invalid self-signature\n"
 msgstr "clé %08lX : auto-signature invalide\n"
 
-#: g10/import.c:719
+#: g10/import.c:723
 #, c-format
 msgid "key %08lX: no subkey for key binding\n"
 msgstr "clé %08lX : pas de sous-clé pour relier la clé\n"
 
-#: g10/import.c:728
+#: g10/import.c:732
 #, c-format
 msgid "key %08lX: invalid subkey binding\n"
 msgstr "clé %08lX : liaison avec la sous-clé invalide\n"
 
-#: g10/import.c:760
+#: g10/import.c:764
 #, c-format
 msgid "key %08lX: skipped userid '"
 msgstr "clé %08lX : utilisateur non pris en compte '"
 
-#: g10/import.c:780
+#: g10/import.c:787
 #, c-format
 msgid "key %08lX: skipped subkey\n"
 msgstr "clé %08lX : sous-clé non prise en compte\n"
 
-#: g10/import.c:800
+#. here we violate the rfc a bit by still allowing
+#. * to import non-exportable signature when we have the
+#. * the secret key used to create this signature - it
+#. * seems that this makes sense
+#: g10/import.c:812
 #, c-format
 msgid "key %08lX: non exportable signature (class %02x) - skipped\n"
 msgstr "clé %08lX : signature non exportable (classe %02x) - ignorée\n"
 
-#: g10/import.c:809
+#: g10/import.c:821
 #, c-format
 msgid "key %08lX: revocation certificate at wrong place - skipped\n"
 msgstr "clé %08lX : certificat de révocation au mauvais endroit - ignorée\n"
 
-#: g10/import.c:817
+#: g10/import.c:829
 #, c-format
 msgid "key %08lX: invalid revocation certificate: %s - skipped\n"
 msgstr "clé %08lX : certificat de révocation invalide : %s - ignorée\n"
 
-#: g10/import.c:878
+#: g10/import.c:890
 #, c-format
 msgid "key %08lX: revocation certificate added\n"
 msgstr "clé %08lX : certificat de révocation ajouté\n"
 
-#: g10/import.c:992 g10/import.c:1047
+#: g10/import.c:1008 g10/import.c:1063
 #, c-format
 msgid "key %08lX: our copy has no self-signature\n"
 msgstr "clé %08lX : notre copie n'a pas d'auto-signature\n"
 
-#: g10/keyedit.c:88
+#: g10/keyedit.c:91
 #, c-format
 msgid "%s: user not found\n"
 msgstr "%s : utilisateur non trouvé\n"
 
-#: g10/keyedit.c:171
+#: g10/keyedit.c:177
+msgid "[revocation]"
+msgstr ""
+
+#: g10/keyedit.c:178
 msgid "[self-signature]"
 msgstr "[auto-signature]"
 
-#: g10/keyedit.c:189
+#: g10/keyedit.c:196
 msgid "1 bad signature\n"
 msgstr "une mauvaise signature\n"
 
-#: g10/keyedit.c:191
+#: g10/keyedit.c:198
 #, c-format
 msgid "%d bad signatures\n"
 msgstr "%d mauvaises signatures\n"
 
-#: g10/keyedit.c:193
+#: g10/keyedit.c:200
 msgid "1 signature not checked due to a missing key\n"
 msgstr "une signature non vérifiée à cause d'une clé manquante\n"
 
-#: g10/keyedit.c:195
+#: g10/keyedit.c:202
 #, c-format
 msgid "%d signatures not checked due to missing keys\n"
 msgstr "%d signatures non vérifiées à cause de clés manquantes\n"
 
-#: g10/keyedit.c:197
+#: g10/keyedit.c:204
 msgid "1 signature not checked due to an error\n"
 msgstr "une signature non vérifiée à cause d'une erreur\n"
 
-#: g10/keyedit.c:199
+#: g10/keyedit.c:206
 #, c-format
 msgid "%d signatures not checked due to errors\n"
 msgstr "%d signatures non vérifiées à cause d'erreurs\n"
 
-#: g10/keyedit.c:201
+#: g10/keyedit.c:208
 msgid "1 user id without valid self-signature detected\n"
 msgstr "un nom d'utilisateur sans auto-signature valide détecté\n"
 
-#: g10/keyedit.c:203
+#: g10/keyedit.c:210
 #, c-format
 msgid "%d user ids without valid self-signatures detected\n"
 msgstr "%d nom d'utilisateurs sans auto-signature valide détecté\n"
 
-#: g10/keyedit.c:281
+#. Fixme: see whether there is a revocation in which
+#. * case we should allow to sign it again.
+#: g10/keyedit.c:290
 #, c-format
 msgid "Already signed by key %08lX\n"
 msgstr "Déjà signé par la clé %08lX\n"
 
-#: g10/keyedit.c:289
+#: g10/keyedit.c:298
 #, c-format
 msgid "Nothing to sign with key %08lX\n"
 msgstr "Rien à signer avec la clé %08lX\n"
 
-#: g10/keyedit.c:298
+#: g10/keyedit.c:307
 msgid ""
 "Are you really sure that you want to sign this key\n"
 "with your key: \""
@@ -1758,7 +1792,7 @@ msgstr ""
 "Etes-vous vraiment sûr(e) que vous voulez signer cette clé\n"
 "avec la vôtre : \""
 
-#: g10/keyedit.c:307
+#: g10/keyedit.c:316
 msgid ""
 "The signature will be marked as non-exportable.\n"
 "\n"
@@ -1766,35 +1800,35 @@ msgstr ""
 "La signature sera marquée comme non-exportable.\n"
 "\n"
 
-#: g10/keyedit.c:309
+#: g10/keyedit.c:321
 msgid "Really sign? "
 msgstr "Signer réellement ? "
 
-#: g10/keyedit.c:335 g10/sign.c:75
+#: g10/keyedit.c:347 g10/keyedit.c:1684 g10/keyedit.c:1733 g10/sign.c:75
 #, c-format
 msgid "signing failed: %s\n"
 msgstr "la signature a échoué : %s\n"
 
-#: g10/keyedit.c:388
+#: g10/keyedit.c:400
 msgid "This key is not protected.\n"
 msgstr "Cette clé n'est pas protégée.\n"
 
-#: g10/keyedit.c:391
+#: g10/keyedit.c:403
 msgid "Key is protected.\n"
 msgstr "La clé est protégée.\n"
 
-#: g10/keyedit.c:408
+#: g10/keyedit.c:420
 #, c-format
 msgid "Can't edit this key: %s\n"
 msgstr "Ne peut éditer cette clé : %s\n"
 
-#: g10/keyedit.c:413
+#: g10/keyedit.c:425
 msgid ""
 "Enter the new passphrase for this secret key.\n"
 "\n"
 msgstr "Entrez le nouveau mot de passe pour cette clé secrète.\n"
 
-#: g10/keyedit.c:425
+#: g10/keyedit.c:437
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "\n"
@@ -1803,379 +1837,451 @@ msgstr ""
 "*mauvaise* idée\n"
 "\n"
 
-#: g10/keyedit.c:428
+#: g10/keyedit.c:440
 msgid "Do you really want to do this? "
 msgstr "Voulez-vous vraiment faire cela? "
 
-#: g10/keyedit.c:487
+#: g10/keyedit.c:499
 msgid "moving a key signature to the correct place\n"
 msgstr "replacer la signature d'une clé à l'endroit correct\n"
 
-#: g10/keyedit.c:523
+#: g10/keyedit.c:535
 msgid "quit"
 msgstr "quitter"
 
-#: g10/keyedit.c:523
+#: g10/keyedit.c:535
 msgid "quit this menu"
 msgstr "quitter ce menu"
 
-#: g10/keyedit.c:524
+#: g10/keyedit.c:536
 msgid "q"
 msgstr "q"
 
-#: g10/keyedit.c:525
+#: g10/keyedit.c:537
 msgid "save"
 msgstr "enregistrer"
 
-#: g10/keyedit.c:525
+#: g10/keyedit.c:537
 msgid "save and quit"
 msgstr "enregistrer et quitter"
 
 # FIXMOI : si je mets aide ça va demander de taper "aide"...
-#: g10/keyedit.c:526
+#: g10/keyedit.c:538
 msgid "help"
 msgstr "help"
 
-#: g10/keyedit.c:526
+#: g10/keyedit.c:538
 msgid "show this help"
 msgstr "afficher cette aide"
 
 # g10/keyedit.c:556 ???
-#: g10/keyedit.c:528
+#: g10/keyedit.c:540
 msgid "fpr"
 msgstr "fpr"
 
-#: g10/keyedit.c:528
+#: g10/keyedit.c:540
 msgid "show fingerprint"
 msgstr "afficher l'empreinte"
 
-#: g10/keyedit.c:529
+#: g10/keyedit.c:541
 msgid "list"
 msgstr "lister"
 
-#: g10/keyedit.c:529
+#: g10/keyedit.c:541
 msgid "list key and user ids"
 msgstr "lister la clé et les noms d'utilisateurs"
 
-#: g10/keyedit.c:530
+#: g10/keyedit.c:542
 msgid "l"
 msgstr "l"
 
-#: g10/keyedit.c:531
+#: g10/keyedit.c:543
 msgid "uid"
 msgstr "uid"
 
-#: g10/keyedit.c:531
+#: g10/keyedit.c:543
 msgid "select user id N"
 msgstr "sélectionner le nom d'utilisateur N"
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:544
 msgid "key"
 msgstr "clé"
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:544
 msgid "select secondary key N"
 msgstr "sélectionner la clé secondaire N"
 
-#: g10/keyedit.c:533
+#: g10/keyedit.c:545
 msgid "check"
 msgstr "vérifier"
 
-#: g10/keyedit.c:533
+#: g10/keyedit.c:545
 msgid "list signatures"
 msgstr "lister les signatures"
 
-#: g10/keyedit.c:534
+#: g10/keyedit.c:546
 msgid "c"
 msgstr "c"
 
-#: g10/keyedit.c:535
+#: g10/keyedit.c:547
 msgid "sign"
 msgstr "signer"
 
-#: g10/keyedit.c:535
+#: g10/keyedit.c:547
 msgid "sign the key"
 msgstr "signer la clé"
 
-#: g10/keyedit.c:536
+#: g10/keyedit.c:548
 msgid "s"
 msgstr "s"
 
-#: g10/keyedit.c:537
+#: g10/keyedit.c:549
 msgid "lsign"
 msgstr "lsigner"
 
-#: g10/keyedit.c:537
+#: g10/keyedit.c:549
 msgid "sign the key locally"
 msgstr "signer la clé localement"
 
-#: g10/keyedit.c:538
+#: g10/keyedit.c:550
 msgid "debug"
 msgstr "déboguer"
 
-#: g10/keyedit.c:539
+#: g10/keyedit.c:551
 msgid "adduid"
 msgstr "aj.ut"
 
-#: g10/keyedit.c:539
+#: g10/keyedit.c:551
 msgid "add a user id"
 msgstr "ajouter un utilisateur"
 
-#: g10/keyedit.c:540
+#: g10/keyedit.c:552
 msgid "deluid"
 msgstr "suppr.ut"
 
-#: g10/keyedit.c:540
+#: g10/keyedit.c:552
 msgid "delete user id"
 msgstr "enlever un utilisateur"
 
-#: g10/keyedit.c:541
+#: g10/keyedit.c:553
 msgid "addkey"
 msgstr "aj.clé"
 
-#: g10/keyedit.c:541
+#: g10/keyedit.c:553
 msgid "add a secondary key"
 msgstr "ajouter une clé secondaire"
 
-#: g10/keyedit.c:542
+#: g10/keyedit.c:554
 msgid "delkey"
 msgstr "suppr.clé"
 
-#: g10/keyedit.c:542
+#: g10/keyedit.c:554
 msgid "delete a secondary key"
 msgstr "enlever une clé secondaire"
 
-#: g10/keyedit.c:543
+#: g10/keyedit.c:555
 msgid "expire"
 msgstr "expire"
 
-#: g10/keyedit.c:543
+#: g10/keyedit.c:555
 msgid "change the expire date"
 msgstr "changer la date d'expiration"
 
-#: g10/keyedit.c:544
+#: g10/keyedit.c:556
 msgid "toggle"
 msgstr "changer"
 
-#: g10/keyedit.c:544
+#: g10/keyedit.c:556
 msgid "toggle between secret and public key listing"
 msgstr "passer de la liste des clés secrètes aux clés privées et inversement"
 
-#: g10/keyedit.c:546
+#: g10/keyedit.c:558
 msgid "t"
 msgstr "t"
 
-#: g10/keyedit.c:547
+#: g10/keyedit.c:559
 msgid "pref"
 msgstr "préf"
 
-#: g10/keyedit.c:547
+#: g10/keyedit.c:559
 msgid "list preferences"
 msgstr "lister les préférences"
 
-#: g10/keyedit.c:548
+#: g10/keyedit.c:560
 msgid "passwd"
 msgstr "mot.pas"
 
-#: g10/keyedit.c:548
+#: g10/keyedit.c:560
 msgid "change the passphrase"
 msgstr "changer le mot de passe"
 
-#: g10/keyedit.c:549
+#: g10/keyedit.c:561
 msgid "trust"
 msgstr "confi."
 
-#: g10/keyedit.c:549
+#: g10/keyedit.c:561
 msgid "change the ownertrust"
 msgstr "changer la confiance"
 
-#: g10/keyedit.c:568
+#: g10/keyedit.c:562
+#, fuzzy
+msgid "revsig"
+msgstr "signer"
+
+#
+#: g10/keyedit.c:562
+#, fuzzy
+msgid "revoke signatures"
+msgstr "forcer les signatures en v3"
+
+#: g10/keyedit.c:563
+#, fuzzy
+msgid "revkey"
+msgstr "clé"
+
+#: g10/keyedit.c:563
+#, fuzzy
+msgid "revoke a secondary key"
+msgstr "enlever une clé secondaire"
+
+#: g10/keyedit.c:582
 msgid "can't do that in batchmode\n"
 msgstr "ne peut faire cela en mode automatique\n"
 
 #. check that they match
 #. FIXME: check that they both match
-#: g10/keyedit.c:595
+#: g10/keyedit.c:609
 msgid "Secret key is available.\n"
 msgstr "La clé secrète est disponible.\n"
 
-#: g10/keyedit.c:624
+#: g10/keyedit.c:638
 msgid "Command> "
 msgstr "Commande> "
 
-#: g10/keyedit.c:651
+#: g10/keyedit.c:665
 msgid "Need the secret key to do this.\n"
 msgstr "Il faut la clé secrète pour faire cela.\n"
 
-#: g10/keyedit.c:673
+#: g10/keyedit.c:687
 msgid "Save changes? "
 msgstr "Enregistrer les changements? "
 
-#: g10/keyedit.c:676
+#: g10/keyedit.c:690
 msgid "Quit without saving? "
 msgstr "Quitter sans enregistrer? "
 
-#: g10/keyedit.c:686
+#: g10/keyedit.c:700
 #, c-format
 msgid "update failed: %s\n"
 msgstr "la mise à jour a échoué : %s\n"
 
-#: g10/keyedit.c:693
+#: g10/keyedit.c:707
 #, c-format
 msgid "update secret failed: %s\n"
 msgstr "la mise à jour de la clé secrète a échoué : %s\n"
 
-#: g10/keyedit.c:700
+#: g10/keyedit.c:714
 msgid "Key not changed so no update needed.\n"
 msgstr "La clé n'a pas changé donc la mise à jour est inutile.\n"
 
-#: g10/keyedit.c:703 g10/keyedit.c:762
+#: g10/keyedit.c:717 g10/keyedit.c:776
 #, c-format
 msgid "update of trustdb failed: %s\n"
 msgstr "la mise à jour de la base de confiance a échoué : %s\n"
 
-#: g10/keyedit.c:736
+#: g10/keyedit.c:750
 msgid "Really sign all user ids? "
 msgstr "Signer vraiment tous les utilisateurs ? "
 
-#: g10/keyedit.c:737
+#: g10/keyedit.c:751
 msgid "Hint: Select the user ids to sign\n"
 msgstr "Aide : Sélectionner les utilisateurs à signer\n"
 
-#: g10/keyedit.c:773
+#: g10/keyedit.c:787
 msgid "You must select at least one user id.\n"
 msgstr "Vous devez sélectionner au moins un utilisateur.\n"
 
-#: g10/keyedit.c:775
+#: g10/keyedit.c:789
 msgid "You can't delete the last user id!\n"
 msgstr "Vous ne pouvez pas supprimer le dernier utilisateur !\n"
 
-#: g10/keyedit.c:778
+#: g10/keyedit.c:792
 msgid "Really remove all selected user ids? "
 msgstr "Enlever réellement tous les utilisateurs sélectionnés ? "
 
-#: g10/keyedit.c:779
+#: g10/keyedit.c:793
 msgid "Really remove this user id? "
 msgstr "Enlever réellement cet utilisateur ? "
 
-#: g10/keyedit.c:802
+#: g10/keyedit.c:816 g10/keyedit.c:838
 msgid "You must select at least one key.\n"
 msgstr "Vous devez sélectionner au moins une clé.\n"
 
-#: g10/keyedit.c:806
+#: g10/keyedit.c:820
 msgid "Do you really want to delete the selected keys? "
 msgstr "Voulez-vous vraiment supprimer les clés sélectionnées ? "
 
-#: g10/keyedit.c:807
+#: g10/keyedit.c:821
 msgid "Do you really want to delete this key? "
 msgstr "Voulez-vous vraiment supprimer cette clé ? "
 
-#: g10/keyedit.c:854
+#: g10/keyedit.c:842
+#, fuzzy
+msgid "Do you really want to revoke the selected keys? "
+msgstr "Voulez-vous vraiment supprimer les clés sélectionnées ? "
+
+#: g10/keyedit.c:843
+#, fuzzy
+msgid "Do you really want to revoke this key? "
+msgstr "Voulez-vous vraiment supprimer cette clé ? "
+
+#: g10/keyedit.c:897
 msgid "Invalid command  (try \"help\")\n"
 msgstr "Commande invalide  (essayez « help »)\n"
 
-#: g10/keyedit.c:1232
+#: g10/keyedit.c:1289
 msgid "Please remove selections from the secret keys.\n"
 msgstr "Enlevez les sélections des clés secrètes.\n"
 
-#: g10/keyedit.c:1238
+#: g10/keyedit.c:1295
 msgid "Please select at most one secondary key.\n"
 msgstr "Vous devez sélectionner au plus une clé secondaire.\n"
 
-#: g10/keyedit.c:1242
+#: g10/keyedit.c:1299
 msgid "Changing exiration time for a secondary key.\n"
 msgstr "Changer la date d'expiration d'une clé secondaire.\n"
 
-#: g10/keyedit.c:1244
+#: g10/keyedit.c:1301
 msgid "Changing exiration time for the primary key.\n"
 msgstr "Changer la date d'expiration de la clé principale.\n"
 
-#: g10/keyedit.c:1285
+#: g10/keyedit.c:1342
 msgid "You can't change the expiration date of a v3 key\n"
 msgstr "Vous ne pouvez pas changer la date d'expiration d'une clé v3\n"
 
-#: g10/keyedit.c:1301
+#: g10/keyedit.c:1358
 msgid "No corresponding signature in secret ring\n"
 msgstr "Pas de signature correspondante dans le porte-clés secret\n"
 
-#: g10/keyedit.c:1361
+#: g10/keyedit.c:1418
 #, c-format
 msgid "No user id with index %d\n"
 msgstr "Pas d'utilisateur avec l'index %d\n"
 
-#: g10/keyedit.c:1407
+#: g10/keyedit.c:1464
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr "Pas de clé secondaire avec l'index %d\n"
 
-#: g10/mainproc.c:184
+#: g10/keyedit.c:1562
+#, fuzzy
+msgid "user ID: \""
+msgstr "Entrez le nom d'utilisateur : "
+
+#: g10/keyedit.c:1565
+#, fuzzy, c-format
+msgid ""
+"\"\n"
+"signed with your key %08lX at %s\n"
+msgstr "Rien à signer avec la clé %08lX\n"
+
+#: g10/keyedit.c:1569
+#, fuzzy
+msgid "Create a revocation certificate for this signature? (y/N)"
+msgstr "générer un certificat de révocation"
+
+#: g10/keyedit.c:1649
+#, fuzzy
+msgid "Really create the revocation certificates? (y/N)"
+msgstr "générer un certificat de révocation"
+
+#: g10/keyedit.c:1672
+#, fuzzy
+msgid "no secret key\n"
+msgstr "mauvaise clé secrète"
+
+#: g10/mainproc.c:185
 #, c-format
 msgid "public key is %08lX\n"
 msgstr "la clé publique est %08lX\n"
 
-#: g10/mainproc.c:212
+#: g10/mainproc.c:213
 msgid "public key encrypted data: good DEK\n"
 msgstr "données chiffrées avec la clé publique : bonne clé de chiffrement\n"
 
 #. fixme: defer this message until we have parsed all packets of
 #. * this type - do this by building a list of keys with their stati
-#. * and store it with the conetxt.  do_proc_packets can then use
+#. * and store it with the context.  do_proc_packets can then use
 #. * this list to display some information
-#: g10/mainproc.c:219
+#: g10/mainproc.c:220
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "le déchiffrement de la clé publique a échoué : %s\n"
 
-#: g10/mainproc.c:246
+#: g10/mainproc.c:249
 msgid "decryption okay\n"
 msgstr "le déchiffrement a réussi\n"
 
-#: g10/mainproc.c:249
+#: g10/mainproc.c:253
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "le déchiffrement a échoué : %s\n"
 
-#: g10/mainproc.c:266
+#: g10/mainproc.c:270
 msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr "NOTE : l'expéditeur a demandé « pour vos yeux seulement »\n"
 
-#: g10/mainproc.c:268
+#: g10/mainproc.c:272
 #, c-format
 msgid "original file name='%.*s'\n"
 msgstr "nom de fichier original : '%.*s'\n"
 
-#: g10/mainproc.c:849
+#: g10/mainproc.c:876
 msgid "signature verification suppressed\n"
 msgstr "vérification de signature supprimée\n"
 
-#: g10/mainproc.c:855
+#: g10/mainproc.c:883
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Signature faite %.*s avec une clé %s ID %08lX\n"
 
+#: g10/mainproc.c:895
+#, fuzzy
+msgid "encrypted message is valid\n"
+msgstr "la fonction de hachage sélectionnée est invalide\n"
+
+#: g10/mainproc.c:899
+msgid "WARNING: encrypted message has been manipulated!\n"
+msgstr ""
+
+#: g10/mainproc.c:904
+#, fuzzy, c-format
+msgid "Can't check MDC: %s\n"
+msgstr "Ne peut vérifier la signature : %s\n"
+
 #. just in case that we have no userid
-#: g10/mainproc.c:881 g10/mainproc.c:892
+#: g10/mainproc.c:925 g10/mainproc.c:936
 msgid "BAD signature from \""
 msgstr "MAUVAISE signature de \""
 
-#: g10/mainproc.c:882 g10/mainproc.c:893
+#: g10/mainproc.c:926 g10/mainproc.c:937
 msgid "Good signature from \""
 msgstr "Bonne signature de \""
 
-#: g10/mainproc.c:884
+#: g10/mainproc.c:928
 msgid "                aka \""
 msgstr "              alias \""
 
-#: g10/mainproc.c:930
+#: g10/mainproc.c:974
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Ne peut vérifier la signature : %s\n"
 
-#: g10/mainproc.c:1003
+#: g10/mainproc.c:1047
 msgid "old style (PGP 2.x) signature\n"
 msgstr "signature d'un ancien style (PGP 2.x)\n"
 
-#: g10/mainproc.c:1008
+#: g10/mainproc.c:1052
 msgid "invalid root packet detected in proc_tree()\n"
 msgstr "paquet racine invalide détecté dans proc_tree()\n"
 
@@ -2200,7 +2306,7 @@ msgstr ""
 "Les clés RSA sont déconseillées : considérez créer une nouvelle clé\n"
 "et l'utiliser dans l'avenir\n"
 
-#: g10/misc.c:235
+#: g10/misc.c:236
 msgid "this cipher algorithm is depreciated; please use a more standard one!\n"
 msgstr ""
 "Cet algorithme de chiffrement est déconseillé ; utilisez-en un\n"
@@ -2216,7 +2322,7 @@ msgstr "ne peut g
 msgid "subpacket of type %d has critical bit set\n"
 msgstr "un sous-paquet de type %d possède un bit critique\n"
 
-#: g10/passphrase.c:151
+#: g10/passphrase.c:157
 msgid ""
 "\n"
 "You need a passphrase to unlock the secret key for\n"
@@ -2226,21 +2332,21 @@ msgstr ""
 "Vous avez besoin d'un mot de passe pour déverrouiller la clé secrète pour\n"
 "l'utilisateur: \""
 
-#: g10/passphrase.c:160
+#: g10/passphrase.c:166
 #, c-format
 msgid "%u-bit %s key, ID %08lX, created %s"
 msgstr "clé de %u bits %s, ID %08lX, créée le %s"
 
-#: g10/passphrase.c:165
+#: g10/passphrase.c:171
 #, c-format
 msgid " (main key ID %08lX)"
 msgstr " (ID clé principale %08lX)"
 
-#: g10/passphrase.c:184
+#: g10/passphrase.c:190
 msgid "Enter passphrase: "
 msgstr "Entrez le mot de passe : "
 
-#: g10/passphrase.c:188
+#: g10/passphrase.c:194
 msgid "Repeat passphrase: "
 msgstr "Répétez le mot de passe : "
 
@@ -2283,42 +2389,49 @@ msgstr ""
 "NOTE : l'algorithme de chiffrement %d n'a pas été trouvé dans les "
 "préférences\n"
 
-#: g10/seckey-cert.c:57
+#: g10/seckey-cert.c:55
 #, c-format
 msgid "protection algorithm %d is not supported\n"
 msgstr "l'algorithme de protection %d n'est pas supporté\n"
 
-#: g10/seckey-cert.c:177
+#: g10/seckey-cert.c:171
 msgid "Invalid passphrase; please try again ...\n"
 msgstr "Mot de passe invalide ; réessayez...\n"
 
-#: g10/seckey-cert.c:232
+#: g10/seckey-cert.c:227
 msgid "WARNING: Weak key detected - please change passphrase again.\n"
 msgstr "ATTENTION : Clé faible détectée - changez encore le mot de passe.\n"
 
-#: g10/sig-check.c:195
+#: g10/sig-check.c:186
+#, fuzzy
+msgid "assuming bad MDC due to an unknown critical bit\n"
+msgstr ""
+"la signature est supposée être fausse car un bit critique est\n"
+"inconnu\n"
+
+#: g10/sig-check.c:282
 msgid ""
 "this is a PGP generated ElGamal key which is NOT secure for signatures!\n"
 msgstr ""
 "Ceci est une clé ElGamal générée par PGP qui n'est PAS sûre pour les\n"
 "signatures !\n"
 
-#: g10/sig-check.c:203
+#: g10/sig-check.c:290
 #, c-format
 msgid "public key is %lu second newer than the signature\n"
 msgstr "la clé publique est plus récente de %lu seconde que la signature\n"
 
-#: g10/sig-check.c:204
+#: g10/sig-check.c:291
 #, c-format
 msgid "public key is %lu seconds newer than the signature\n"
 msgstr "la clé publique est plus récente de %lu secondes que la signature\n"
 
-#: g10/sig-check.c:220
+#: g10/sig-check.c:307
 #, c-format
 msgid "NOTE: signature key expired %s\n"
 msgstr "NOTE : la clé de signature a expiré le %s\n"
 
-#: g10/sig-check.c:277
+#: g10/sig-check.c:364
 msgid "assuming bad signature due to an unknown critical bit\n"
 msgstr ""
 "la signature est supposée être fausse car un bit critique est\n"
@@ -2329,7 +2442,7 @@ msgstr ""
 msgid "%s signature from: %s\n"
 msgstr "Signature %s de : %s\n"
 
-#: g10/sign.c:210 g10/sign.c:493
+#: g10/sign.c:210 g10/sign.c:496
 #, c-format
 msgid "can't create %s: %s\n"
 msgstr "ne peut créer %s : %s\n"
@@ -2338,11 +2451,6 @@ msgstr "ne peut cr
 msgid "signing:"
 msgstr "signature :"
 
-#: g10/sign.c:346
-#, c-format
-msgid "WARNING: `%s' is an empty file\n"
-msgstr "ATTENTION : `%s' est un fichier vide\n"
-
 #: g10/textfilter.c:122
 #, c-format
 msgid "can't handle text lines longer than %d characters\n"
@@ -2353,12 +2461,12 @@ msgstr "ne peut pas traiter les ligne plus longues que %d caract
 msgid "input line longer than %d characters\n"
 msgstr "la ligne d'entrée est plus longue que %d caractères\n"
 
-#: g10/tdbio.c:116 g10/tdbio.c:1504
+#: g10/tdbio.c:116 g10/tdbio.c:1505
 #, c-format
 msgid "trustdb rec %lu: lseek failed: %s\n"
 msgstr "enregistrement de base de confiance %lu : lseek a échoué : %s\n"
 
-#: g10/tdbio.c:122 g10/tdbio.c:1511
+#: g10/tdbio.c:122 g10/tdbio.c:1512
 #, c-format
 msgid "trustdb rec %lu: write failed (n=%d): %s\n"
 msgstr ""
@@ -2389,12 +2497,12 @@ msgstr "%s : r
 msgid "%s: directory does not exist!\n"
 msgstr "%s : le répertoire n'existe pas !\n"
 
-#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1325 g10/tdbio.c:457
+#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1344 g10/tdbio.c:457
 #, c-format
 msgid "%s: can't create: %s\n"
 msgstr "%s : ne peut créer : %s\n"
 
-#: g10/tdbio.c:472 g10/tdbio.c:520
+#: g10/tdbio.c:472 g10/tdbio.c:521
 #, c-format
 msgid "%s: can't create lock\n"
 msgstr "%s : ne peut créer de verrouillage\n"
@@ -2409,86 +2517,86 @@ msgstr "%s : n'a pas pu cr
 msgid "%s: invalid trustdb created\n"
 msgstr "%s : base de confiance invalide créée\n"
 
-#: g10/tdbio.c:492
+#: g10/tdbio.c:493
 #, c-format
 msgid "%s: trustdb created\n"
 msgstr "%s : base de confiance créée\n"
 
-#: g10/tdbio.c:529
+#: g10/tdbio.c:530
 #, c-format
 msgid "%s: invalid trustdb\n"
 msgstr "%s : base de confiance invalide\n"
 
-#: g10/tdbio.c:562
+#: g10/tdbio.c:563
 #, c-format
 msgid "%s: failed to create hashtable: %s\n"
 msgstr "%s : la création de la table de hachage a échoué : %s\n"
 
-#: g10/tdbio.c:570
+#: g10/tdbio.c:571
 #, c-format
 msgid "%s: error updating version record: %s\n"
 msgstr ""
 "%s : erreur pendant la mise à jour de l'enregistrement de version : %s\n"
 
-#: g10/tdbio.c:586 g10/tdbio.c:625 g10/tdbio.c:647 g10/tdbio.c:677
-#: g10/tdbio.c:702 g10/tdbio.c:1437 g10/tdbio.c:1464
+#: g10/tdbio.c:587 g10/tdbio.c:626 g10/tdbio.c:648 g10/tdbio.c:678
+#: g10/tdbio.c:703 g10/tdbio.c:1438 g10/tdbio.c:1465
 #, c-format
 msgid "%s: error reading version record: %s\n"
 msgstr "%s : erreur pendant la lecture de l'enregistrement de version : %s\n"
 
-#: g10/tdbio.c:599 g10/tdbio.c:658
+#: g10/tdbio.c:600 g10/tdbio.c:659
 #, c-format
 msgid "%s: error writing version record: %s\n"
 msgstr "%s : erreur pendant l'écriture de l'enregistrement de version : %s\n"
 
-#: g10/tdbio.c:1131
+#: g10/tdbio.c:1132
 #, c-format
 msgid "trustdb: lseek failed: %s\n"
 msgstr "base de confiance : « lseek() » a échoué : %s\n"
 
-#: g10/tdbio.c:1139
+#: g10/tdbio.c:1140
 #, c-format
 msgid "trustdb: read failed (n=%d): %s\n"
 msgstr "base de confiance : la lecture a échoué (n=%d) : %s\n"
 
-#: g10/tdbio.c:1160
+#: g10/tdbio.c:1161
 #, c-format
 msgid "%s: not a trustdb file\n"
 msgstr "%s : ce n'est pas un fichier de base de confiance\n"
 
-#: g10/tdbio.c:1176
+#: g10/tdbio.c:1177
 #, c-format
 msgid "%s: version record with recnum %lu\n"
 msgstr "%s : enregistrement de version avec un numéro %lu\n"
 
-#: g10/tdbio.c:1181
+#: g10/tdbio.c:1182
 #, c-format
 msgid "%s: invalid file version %d\n"
 msgstr "%s : version %d du fichier invalide\n"
 
-#: g10/tdbio.c:1470
+#: g10/tdbio.c:1471
 #, c-format
 msgid "%s: error reading free record: %s\n"
 msgstr "%s : erreur pendant la lecture de l'enregistrement libre : %s\n"
 
-#: g10/tdbio.c:1478
+#: g10/tdbio.c:1479
 #, c-format
 msgid "%s: error writing dir record: %s\n"
 msgstr ""
 "%s : erreur pendant l'écriture de l'enregistrement de\n"
 "répertoire : %s\n"
 
-#: g10/tdbio.c:1488
+#: g10/tdbio.c:1489
 #, c-format
 msgid "%s: failed to zero a record: %s\n"
 msgstr "%s : n'a pu mettre un enregistrement à zéro : %s\n"
 
-#: g10/tdbio.c:1518
+#: g10/tdbio.c:1519
 #, c-format
 msgid "%s: failed to append a record: %s\n"
 msgstr "%s : n'a pas pu ajouter un enregistrement : %s\n"
 
-#: g10/tdbio.c:1629
+#: g10/tdbio.c:1630
 msgid "The trustdb is corrupted; please run \"gpgm --fix-trustdb\".\n"
 msgstr ""
 "La base de confiance est corrompue ; exécutez « gpgm --fix-trustdb ».\n"
@@ -2713,7 +2821,7 @@ msgstr "Trop de pr
 msgid "Too many preference items"
 msgstr "Trop d'items de préférence"
 
-#: g10/trustdb.c:1549 g10/trustdb.c:3045 g10/trustdb.c:3075
+#: g10/trustdb.c:1549 g10/trustdb.c:3075 g10/trustdb.c:3105
 msgid "WARNING: can't yet handle long pref records\n"
 msgstr ""
 "ATTENTION : les enregistrements de préférences longs ne sont pas encore\n"
@@ -2886,22 +2994,22 @@ msgstr "cl
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr "clé %08lX.%lu : la vérification de confiance a échoué: %s\n"
 
-#: g10/trustdb.c:2851
+#: g10/trustdb.c:2881
 #, c-format
 msgid "user '%s' not found: %s\n"
 msgstr "l'utilisateur '%s' n'a pas été trouvé : %s\n"
 
-#: g10/trustdb.c:2853
+#: g10/trustdb.c:2883
 #, c-format
 msgid "problem finding '%s' in trustdb: %s\n"
 msgstr "problème de recherche de '%s' dans la base de confiance : %s\n"
 
-#: g10/trustdb.c:2856
+#: g10/trustdb.c:2886
 #, c-format
 msgid "user '%s' not in trustdb - inserting\n"
 msgstr "l'utilisateur '%s' n'est pas dans la base de confiance - insertion\n"
 
-#: g10/trustdb.c:2859
+#: g10/trustdb.c:2889
 #, c-format
 msgid "failed to put '%s' into trustdb: %s\n"
 msgstr "n'a pas pu insérer '%s' dans la base de confiance : %s\n"
@@ -2911,27 +3019,27 @@ msgstr "n'a pas pu ins
 msgid "%s: can't create keyring: %s\n"
 msgstr "%s : ne peut créer le porte-clés : %s\n"
 
-#: g10/ringedit.c:322 g10/ringedit.c:1330
+#: g10/ringedit.c:333 g10/ringedit.c:1349
 #, c-format
 msgid "%s: keyring created\n"
 msgstr "%s : porte-clés créé\n"
 
-#: g10/ringedit.c:1507
+#: g10/ringedit.c:1526
 msgid "WARNING: 2 files with confidential information exists.\n"
 msgstr ""
 "ATTENTION : 2 fichiers avec des informations confidentielles existent.\n"
 
-#: g10/ringedit.c:1508
+#: g10/ringedit.c:1527
 #, c-format
 msgid "%s is the unchanged one\n"
 msgstr "%s est le fichier original\n"
 
-#: g10/ringedit.c:1509
+#: g10/ringedit.c:1528
 #, c-format
 msgid "%s is the new one\n"
 msgstr "%s est le nouveau\n"
 
-#: g10/ringedit.c:1510
+#: g10/ringedit.c:1529
 msgid "Please fix this possible security flaw\n"
 msgstr "Réparez ce problème de sécurité possible\n"
 
@@ -2979,17 +3087,17 @@ msgstr "les donn
 msgid "%s: new options file created\n"
 msgstr "%s : nouveau fichier d'options créé\n"
 
-#: g10/encr-data.c:59
+#: g10/encr-data.c:60
 #, c-format
 msgid "%s encrypted data\n"
 msgstr "données chiffrées avec %s\n"
 
-#: g10/encr-data.c:61
+#: g10/encr-data.c:62
 #, c-format
 msgid "encrypted with unknown algorithm %d\n"
 msgstr "chiffré avec l'algorithme inconnu %d\n"
 
-#: g10/encr-data.c:74
+#: g10/encr-data.c:77
 msgid ""
 "WARNING: message was encrypted with a weak key in the symmetric cipher.\n"
 msgstr ""
@@ -3162,3 +3270,17 @@ msgstr "Pas d'aide disponible"
 #, c-format
 msgid "No help available for `%s'"
 msgstr "Pas d'aide disponible pour `%s'"
+
+#~ msgid "Usage: gpgm [options] [files] (-h for help)"
+#~ msgstr "Utilisation: gpgm [options] [fichiers] (-h pour l'aide)"
+
+#
+#~ msgid ""
+#~ "Syntax: gpgm [options] [files]\n"
+#~ "GnuPG maintenance utility\n"
+#~ msgstr ""
+#~ "Syntaxe: gpgm [options] [fichiers]\n"
+#~ "utilitaire de maitenance de GnuPG\n"
+
+#~ msgid "usage: gpgm [options] "
+#~ msgstr "utilisation: gpgm [options] "
index 362a25f..8efbf39 100644 (file)
--- a/po/it.po
+++ b/po/it.po
@@ -5,7 +5,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: gnupg-0.4.3\n"
-"POT-Creation-Date: 1999-03-20 13:40+0100\n"
+"POT-Creation-Date: 1999-05-06 13:37+0200\n"
 "PO-Revision-Date: 1998-11-09 16:19+01:00\n"
 "Last-Translator: Marco d'Itri <md@linux.it>\n"
 "Language-Team: Italian <it@li.org>\n"
@@ -25,11 +25,11 @@ msgstr ""
 msgid "(you may have used the wrong program for this task)\n"
 msgstr ""
 
-#: util/miscutil.c:143
+#: util/miscutil.c:156
 msgid "yes"
 msgstr "sì"
 
-#: util/miscutil.c:144
+#: util/miscutil.c:157
 msgid "yY"
 msgstr "sS"
 
@@ -268,6 +268,11 @@ msgstr "Non gestito"
 msgid "network error"
 msgstr "Errore generale"
 
+#: util/errors.c:102
+#, fuzzy
+msgid "not encrypted"
+msgstr "cifra dati"
+
 #: util/logger.c:178
 #, c-format
 msgid "... this is a bug (%s:%d:%s)\n"
@@ -278,13 +283,13 @@ msgstr "... questo 
 msgid "you found a bug ... (%s:%d)\n"
 msgstr "Hai trovato un bug... (%s:%d)\n"
 
-#: cipher/random.c:403
+#: cipher/random.c:408
 #, fuzzy
 msgid "WARNING: using insecure random number generator!!\n"
 msgstr ""
 "Attenzione: si sta usando un generatore di numeri casuali non sicuro!!\n"
 
-#: cipher/random.c:404
+#: cipher/random.c:409
 msgid ""
 "The random number generator is only a kludge to let\n"
 "it run - it is in no way a strong RNG!\n"
@@ -307,7 +312,7 @@ msgstr ""
 "altra cosa per dare all'OS la possibilità di raccogliere altra entropia!\n"
 "(Servono ancora %d altri byte)\n"
 
-#: g10/g10.c:166
+#: g10/g10.c:163
 msgid ""
 "@Commands:\n"
 " "
@@ -315,131 +320,131 @@ msgstr ""
 "@Comandi:\n"
 " "
 
-#: g10/g10.c:169
+#: g10/g10.c:165
 msgid "|[file]|make a signature"
 msgstr "|[file]|fai una firma"
 
-#: g10/g10.c:170
+#: g10/g10.c:166
 msgid "|[file]|make a clear text signature"
 msgstr "|[file]|fai una firma mantenendo il testo in chiaro"
 
-#: g10/g10.c:171
+#: g10/g10.c:167
 msgid "make a detached signature"
 msgstr "fai una firma separata"
 
-#: g10/g10.c:172
+#: g10/g10.c:168
 msgid "encrypt data"
 msgstr "cifra dati"
 
-#: g10/g10.c:173
+#: g10/g10.c:169
 msgid "encryption only with symmetric cipher"
 msgstr "cifra solo con un cifrario simmetrico"
 
-#: g10/g10.c:174
+#: g10/g10.c:170
 msgid "store only"
 msgstr "immagazzina soltanto"
 
-#: g10/g10.c:175
+#: g10/g10.c:171
 msgid "decrypt data (default)"
 msgstr "decifra dati (predefinito)"
 
-#: g10/g10.c:176
+#: g10/g10.c:172
 msgid "verify a signature"
 msgstr "verifica una firma"
 
-#: g10/g10.c:178
+#: g10/g10.c:173
 msgid "list keys"
 msgstr "elenca le chiavi"
 
-#: g10/g10.c:179
+#: g10/g10.c:175
 msgid "list keys and signatures"
 msgstr "elenca le chiavi e le firme"
 
-#: g10/g10.c:180
+#: g10/g10.c:176
 msgid "check key signatures"
 msgstr "controlla le firme delle chiavi"
 
-#: g10/g10.c:181
+#: g10/g10.c:177
 msgid "list keys and fingerprints"
 msgstr "elenca le chiavi e le impronte digitali"
 
-#: g10/g10.c:182
+#: g10/g10.c:178
 msgid "list secret keys"
 msgstr "elenca le chiavi segrete"
 
-#: g10/g10.c:184
+#: g10/g10.c:179
 msgid "generate a new key pair"
 msgstr "genera una nuova coppia di chiavi"
 
-#: g10/g10.c:186
+#: g10/g10.c:180
 msgid "remove key from the public keyring"
 msgstr "rimuove una chiave dal portachiavi pubblico"
 
-#: g10/g10.c:188
+#: g10/g10.c:181
 msgid "sign or edit a key"
 msgstr "firma o modifica una chiave"
 
-#: g10/g10.c:189
+#: g10/g10.c:182
 msgid "generate a revocation certificate"
 msgstr "genera un certificato di revoca"
 
-#: g10/g10.c:191
+#: g10/g10.c:183
 msgid "export keys"
 msgstr "esporta delle chiavi"
 
-#: g10/g10.c:192
+#: g10/g10.c:184
 msgid "export keys to a key server"
 msgstr ""
 
-#: g10/g10.c:193
+#: g10/g10.c:185
 msgid "import keys from a key server"
 msgstr ""
 
-#: g10/g10.c:196
+#: g10/g10.c:188
 msgid "import/merge keys"
 msgstr "importa/aggiungi delle chiavi"
 
-#: g10/g10.c:198
+#: g10/g10.c:190
 msgid "list only the sequence of packets"
 msgstr "elenca solo la sequenza dei pacchetti"
 
-#: g10/g10.c:201
+#: g10/g10.c:192
 msgid "export the ownertrust values"
 msgstr "esporta i valori di fiducia"
 
-#: g10/g10.c:203
+#: g10/g10.c:194
 msgid "import ownertrust values"
 msgstr "importa i valori di fiducia"
 
-#: g10/g10.c:205
+#: g10/g10.c:196
 msgid "|[NAMES]|update the trust database"
 msgstr "|[NAMES]|controlla il database della fiducia"
 
-#: g10/g10.c:207
+#: g10/g10.c:198
 msgid "|[NAMES]|check the trust database"
 msgstr "|[NAMES]|controlla il database della fiducia"
 
-#: g10/g10.c:208
+#: g10/g10.c:199
 msgid "fix a corrupted trust database"
 msgstr "ripara un database della fiducia rovinato"
 
-#: g10/g10.c:209
+#: g10/g10.c:200
 msgid "De-Armor a file or stdin"
 msgstr "rimuovi l'armatura a un file o a stdin"
 
-#: g10/g10.c:210
+#: g10/g10.c:201
 msgid "En-Armor a file or stdin"
 msgstr "crea l'armatura a un file o a stdin"
 
-#: g10/g10.c:211
+#: g10/g10.c:202
 msgid "|algo [files]|print message digests"
 msgstr "|algo [files]|stampa tutti i message digests"
 
-#: g10/g10.c:212
+#: g10/g10.c:203
 msgid "print all message digests"
 msgstr "stampa tutti i message digests"
 
-#: g10/g10.c:219
+#: g10/g10.c:209
 msgid ""
 "@\n"
 "Options:\n"
@@ -449,145 +454,150 @@ msgstr ""
 "Opzioni:\n"
 " "
 
-#: g10/g10.c:221
+#: g10/g10.c:211
 msgid "create ascii armored output"
 msgstr "crea un output ascii con armatura"
 
-#: g10/g10.c:222
+#: g10/g10.c:212
 #, fuzzy
 msgid "|NAME|encrypt for NAME"
 msgstr "|NAME|usa l'algoritmo di cifratura NOME"
 
-#: g10/g10.c:227
+#: g10/g10.c:216
 msgid "use this user-id to sign or decrypt"
 msgstr "usa questo user-id per firmare o decifrare"
 
-#: g10/g10.c:228
+#: g10/g10.c:217
 msgid "|N|set compress level N (0 disables)"
 msgstr "|N|imposta il livello di compressione (0 disabilita)"
 
-#: g10/g10.c:230
+#: g10/g10.c:219
 msgid "use canonical text mode"
 msgstr "usa il modo testo canonico"
 
-#: g10/g10.c:232
+#: g10/g10.c:220
 msgid "use as output file"
 msgstr "usa come file di output"
 
-#: g10/g10.c:233
+#: g10/g10.c:221
 msgid "verbose"
 msgstr "prolisso"
 
-#: g10/g10.c:234
+#: g10/g10.c:222
 msgid "be somewhat more quiet"
 msgstr "meno prolisso"
 
-#: g10/g10.c:235
+#: g10/g10.c:223
 msgid "force v3 signatures"
 msgstr "forza l'uso di firme v3"
 
-#: g10/g10.c:236
+#: g10/g10.c:224
+#, fuzzy
+msgid "always use a MDC for encryption"
+msgstr "usa questo user-id per cifrare"
+
+#: g10/g10.c:225
 msgid "do not make any changes"
 msgstr ""
 
-#: g10/g10.c:237
+#: g10/g10.c:226
 msgid "batch mode: never ask"
 msgstr "modo batch: non fare domande"
 
-#: g10/g10.c:238
+#: g10/g10.c:227
 msgid "assume yes on most questions"
 msgstr "assumi \"sì\" a quasi tutte le domande"
 
-#: g10/g10.c:239
+#: g10/g10.c:228
 msgid "assume no on most questions"
 msgstr "assumi \"no\" a quasi tutte le domande"
 
-#: g10/g10.c:240
+#: g10/g10.c:229
 msgid "add this keyring to the list of keyrings"
 msgstr "aggiungi questo portachiavi alla lista"
 
-#: g10/g10.c:241
+#: g10/g10.c:230
 msgid "add this secret keyring to the list"
 msgstr "aggiungi questo portachiavi segreto alla lista"
 
-#: g10/g10.c:242
+#: g10/g10.c:231
 msgid "|NAME|use NAME as default secret key"
 msgstr "|NAME|usa NAME come chiave segreta predefinita"
 
-#: g10/g10.c:243
+#: g10/g10.c:232
 msgid "|HOST|use this keyserver to lookup keys"
 msgstr ""
 
-#: g10/g10.c:244
+#: g10/g10.c:233
 #, fuzzy
 msgid "|NAME|set terminal charset to NAME"
 msgstr "|NAME|usa l'algoritmo di cifratura NOME"
 
-#: g10/g10.c:245
+#: g10/g10.c:234
 msgid "read options from file"
 msgstr "leggi le opzioni dal file"
 
-#: g10/g10.c:247
+#: g10/g10.c:236
 msgid "set debugging flags"
 msgstr "imposta i flag di debugging"
 
-#: g10/g10.c:248
+#: g10/g10.c:237
 msgid "enable full debugging"
 msgstr "abilita il debugging completo"
 
-#: g10/g10.c:249
+#: g10/g10.c:238
 msgid "|FD|write status info to this FD"
 msgstr "|FD|scrivi le informazioni di stato su questo fd"
 
-#: g10/g10.c:250
+#: g10/g10.c:239
 msgid "do not write comment packets"
 msgstr "non scrivere pacchetti di commento"
 
-#: g10/g10.c:251
+#: g10/g10.c:240
 msgid "(default is 1)"
 msgstr "(predefinito è 1)"
 
-#: g10/g10.c:252
+#: g10/g10.c:241
 msgid "(default is 3)"
 msgstr "(predefinito è 3)"
 
-#: g10/g10.c:254
+#: g10/g10.c:243
 msgid "|FILE|load extension module FILE"
 msgstr "|FILE|carica il modulo di estensione FILE"
 
-#: g10/g10.c:255
+#: g10/g10.c:244
 msgid "emulate the mode described in RFC1991"
 msgstr "emula il modo descritto nel RFC1991"
 
-#: g10/g10.c:256
+#: g10/g10.c:245
 msgid "|N|use passphrase mode N"
 msgstr "|N|usa il modo N per la passphrase"
 
-#: g10/g10.c:258
+#: g10/g10.c:247
 msgid "|NAME|use message digest algorithm NAME for passphrases"
 msgstr "|NAME|usa l'algoritmo di message digest NOME"
 
-#: g10/g10.c:260
+#: g10/g10.c:249
 msgid "|NAME|use cipher algorithm NAME for passphrases"
 msgstr "|NAME|usa l'alg. di cifratura NOME per le passphrase"
 
-#: g10/g10.c:262
+#: g10/g10.c:250
 msgid "|NAME|use cipher algorithm NAME"
 msgstr "|NAME|usa l'algoritmo di cifratura NOME"
 
-#: g10/g10.c:263
+#: g10/g10.c:251
 msgid "|NAME|use message digest algorithm NAME"
 msgstr "|NAME|usa l'algoritmo di message digest NOME"
 
-#: g10/g10.c:264
+#: g10/g10.c:252
 msgid "|N|use compress algorithm N"
 msgstr "|N|usa l'algoritmo di compressione N"
 
-#: g10/g10.c:265
+#: g10/g10.c:253
 msgid "throw keyid field of encrypted packets"
 msgstr "elimina il campo keyid dei pacchetti crittografati"
 
-#: g10/g10.c:273
+#: g10/g10.c:255
 msgid ""
 "@\n"
 "Examples:\n"
@@ -607,27 +617,15 @@ msgstr ""
 " --list-keys [nomi]         mostra le chiavi\n"
 " --fingerprint [nomi]       mostra le impronte digitali\n"
 
-#: g10/g10.c:353
+#: g10/g10.c:323
 msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
 msgstr "Per favore segnala i bug a <gnupg-bugs@gnu.org>.\n"
 
-#: g10/g10.c:358
-msgid "Usage: gpgm [options] [files] (-h for help)"
-msgstr "Uso: gpgm [opzioni] [file] (-h per l'aiuto)"
-
-#: g10/g10.c:360
+#: g10/g10.c:327
 msgid "Usage: gpg [options] [files] (-h for help)"
 msgstr "Uso: gpg [opzioni] [file] (-h per l'aiuto)"
 
-#: g10/g10.c:365
-msgid ""
-"Syntax: gpgm [options] [files]\n"
-"GnuPG maintenance utility\n"
-msgstr ""
-"Sintassi: gpgm [opzioni] [file]\n"
-"Utility di manutenzione di GnuPG\n"
-
-#: g10/g10.c:368
+#: g10/g10.c:330
 msgid ""
 "Syntax: gpg [options] [files]\n"
 "sign, check, encrypt or decrypt\n"
@@ -637,7 +635,7 @@ msgstr ""
 "firma, controlla, cifra o decifra\n"
 "l'operazione predefinita dipende dai dati di input\n"
 
-#: g10/g10.c:374
+#: g10/g10.c:335
 msgid ""
 "\n"
 "Supported algorithms:\n"
@@ -645,227 +643,223 @@ msgstr ""
 "\n"
 "Algoritmi gestiti:\n"
 
-#: g10/g10.c:449
-msgid "usage: gpgm [options] "
-msgstr "uso: gpgm [options] "
-
-#: g10/g10.c:451
+#: g10/g10.c:409
 msgid "usage: gpg [options] "
 msgstr "uso: gpg [options] "
 
-#: g10/g10.c:492
+#: g10/g10.c:449
 msgid "conflicting commands\n"
 msgstr "comandi in conflitto\n"
 
-#: g10/g10.c:631
+#: g10/g10.c:576
 #, fuzzy, c-format
 msgid "NOTE: no default option file `%s'\n"
 msgstr "nota: nessun file con opzioni predefinite `%s'\n"
 
-#: g10/g10.c:635
+#: g10/g10.c:580
 #, c-format
 msgid "option file `%s': %s\n"
 msgstr "file con opzioni predefinite `%s': %s\n"
 
-#: g10/g10.c:642
+#: g10/g10.c:587
 #, c-format
 msgid "reading options from `%s'\n"
 msgstr "lettura delle opzioni da `%s'\n"
 
-#: g10/g10.c:797
+#: g10/g10.c:731
 #, fuzzy, c-format
 msgid "%s is not a valid character set\n"
 msgstr "Carattere non valido nel commento\n"
 
-#: g10/g10.c:838 g10/g10.c:850
+#: g10/g10.c:774 g10/g10.c:786
 msgid "selected cipher algorithm is invalid\n"
 msgstr "l'algoritmo di cifratura selezionato non è valido\n"
 
-#: g10/g10.c:844 g10/g10.c:856
+#: g10/g10.c:780 g10/g10.c:792
 msgid "selected digest algorithm is invalid\n"
 msgstr "l'algoritmo di digest selezionato non è valido\n"
 
-#: g10/g10.c:859
+#: g10/g10.c:795
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "l'algoritmo di compressione deve essere tra %d e %d\n"
 
-#: g10/g10.c:861
+#: g10/g10.c:797
 msgid "completes-needed must be greater than 0\n"
 msgstr "completes-needed deve essere maggiore di 0\n"
 
-#: g10/g10.c:863
+#: g10/g10.c:799
 msgid "marginals-needed must be greater than 1\n"
 msgstr "marginals-needed deve essere maggiore di 1\n"
 
-#: g10/g10.c:865
+#: g10/g10.c:801
 msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr ""
 
-#: g10/g10.c:868
+#: g10/g10.c:804
 #, fuzzy
 msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr "nota: il modo S2K semplice (0) è fortemente scoraggiato\n"
 
-#: g10/g10.c:872
+#: g10/g10.c:808
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr "modo S2K non valido; deve essere 0, 1 o 3\n"
 
-#: g10/g10.c:949
+#: g10/g10.c:885
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "inizializzazione del trustdb fallita: %s\n"
 
-#: g10/g10.c:955
+#: g10/g10.c:891
 msgid "--store [filename]"
 msgstr "--store [nomefile]"
 
-#: g10/g10.c:963
+#: g10/g10.c:898
 msgid "--symmetric [filename]"
 msgstr "--symmetric [nomefile]"
 
-#: g10/g10.c:971
+#: g10/g10.c:906
 msgid "--encrypt [filename]"
 msgstr "--encrypt [nomefile]"
 
-#: g10/g10.c:984
+#: g10/g10.c:919
 msgid "--sign [filename]"
 msgstr "--sign [nomefile]"
 
-#: g10/g10.c:997
+#: g10/g10.c:932
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [nomefile]"
 
-#: g10/g10.c:1011
+#: g10/g10.c:946
 msgid "--clearsign [filename]"
 msgstr "--clearsign [nomefile]"
 
-#: g10/g10.c:1023
+#: g10/g10.c:958
 msgid "--decrypt [filename]"
 msgstr "--decrypt [nomefile]"
 
-#: g10/g10.c:1032
+#: g10/g10.c:967
 #, fuzzy
 msgid "--edit-key username [commands]"
 msgstr "--edit-key nomeutente"
 
-#: g10/g10.c:1048
+#: g10/g10.c:981
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key nomeutente"
 
-#: g10/g10.c:1051
+#: g10/g10.c:984
 msgid "--delete-key username"
 msgstr "--delete-key nomeutente"
 
-#: g10/encode.c:229 g10/g10.c:1074 g10/sign.c:311
+#: g10/encode.c:234 g10/g10.c:1007 g10/sign.c:311
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "impossibile aprire `%s': %s\n"
 
-#: g10/g10.c:1085
+#: g10/g10.c:1018
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [userid] [portachiavi]"
 
-#: g10/g10.c:1149
+#: g10/g10.c:1077
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "rimozione dell'armatura fallita: %s\n"
 
-#: g10/g10.c:1157
+#: g10/g10.c:1085
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "creazione dell'armatura fallita: %s\n"
 
-#: g10/g10.c:1223
+#: g10/g10.c:1151
 #, c-format
 msgid "invalid hash algorithm `%s'\n"
 msgstr "algoritmo di hash non valido `%s'\n"
 
-#: g10/g10.c:1302
+#: g10/g10.c:1226
 msgid "[filename]"
 msgstr "[nomefile]"
 
-#: g10/g10.c:1306
+#: g10/g10.c:1230
 msgid "Go ahead and type your message ...\n"
 msgstr ""
 
-#: g10/decrypt.c:59 g10/g10.c:1309 g10/verify.c:66
+#: g10/decrypt.c:59 g10/g10.c:1233 g10/verify.c:66
 #, c-format
 msgid "can't open `%s'\n"
 msgstr "impossibile aprire `%s'\n"
 
-#: g10/armor.c:297
+#: g10/armor.c:296
 #, c-format
 msgid "armor: %s\n"
 msgstr "armatura: %s\n"
 
-#: g10/armor.c:320
+#: g10/armor.c:319
 msgid "invalid armor header: "
 msgstr "header dell'armatura non valido: "
 
-#: g10/armor.c:327
+#: g10/armor.c:326
 msgid "armor header: "
 msgstr "header dell'armatura: "
 
-#: g10/armor.c:338
+#: g10/armor.c:337
 msgid "invalid clearsig header\n"
 msgstr "header della firma in chiaro non valido\n"
 
-#: g10/armor.c:390
+#: g10/armor.c:389
 #, fuzzy
 msgid "nested clear text signatures\n"
 msgstr "|[file]|fai una firma mantenendo il testo in chiaro"
 
-#: g10/armor.c:499
+#: g10/armor.c:498
 msgid "invalid dash escaped line: "
 msgstr "riga protetta con il trattino non valida: "
 
-#: g10/armor.c:511
+#: g10/armor.c:510
 #, fuzzy
 msgid "unexpected armor:"
 msgstr "Dati inaspettati"
 
-#: g10/armor.c:628
+#: g10/armor.c:627
 #, c-format
 msgid "invalid radix64 character %02x skipped\n"
 msgstr "Carattere radix64 non valido %02x saltato\n"
 
-#: g10/armor.c:671
+#: g10/armor.c:670
 msgid "premature eof (no CRC)\n"
 msgstr "eof prematura (nessun CRC)\n"
 
-#: g10/armor.c:705
+#: g10/armor.c:704
 msgid "premature eof (in CRC)\n"
 msgstr "eof prematura (nel CRC)\n"
 
-#: g10/armor.c:709
+#: g10/armor.c:708
 msgid "malformed CRC\n"
 msgstr "CRC malformato\n"
 
-#: g10/armor.c:713
+#: g10/armor.c:712
 #, c-format
 msgid "CRC error; %06lx - %06lx\n"
 msgstr "errore nel CRC; %06lx - %06lx\n"
 
-#: g10/armor.c:730
+#: g10/armor.c:729
 msgid "premature eof (in Trailer)\n"
 msgstr "eof prematura (nella coda)\n"
 
-#: g10/armor.c:734
+#: g10/armor.c:733
 msgid "error in trailer line\n"
 msgstr "errore nella riga della coda\n"
 
-#: g10/armor.c:998
+#: g10/armor.c:997
 #, fuzzy
 msgid "no valid OpenPGP data found.\n"
 msgstr "Non sono stati trovati dati RFC1991 o OpenPGP validi.\n"
 
-#: g10/armor.c:1002
+#: g10/armor.c:1001
 #, c-format
 msgid "invalid armor: line longer than %d characters\n"
 msgstr ""
 
-#: g10/armor.c:1006
+#: g10/armor.c:1005
 msgid ""
 "quoted printable character in armor - probably a buggy MTA has been used\n"
 msgstr ""
@@ -961,41 +955,46 @@ msgstr ""
 msgid "key %08lX: key has been revoked!\n"
 msgstr "chiave %08lX: accettata come chiave segreta\n"
 
-#: g10/pkclist.c:287 g10/pkclist.c:391
+#: g10/pkclist.c:287 g10/pkclist.c:297 g10/pkclist.c:403
 msgid "Use this key anyway? "
 msgstr "Uso lo stesso questa chiave? "
 
-#: g10/pkclist.c:311
+#: g10/pkclist.c:291
+#, fuzzy, c-format
+msgid "key %08lX: subkey has been revoked!\n"
+msgstr "chiave %08lX: accettata come chiave segreta\n"
+
+#: g10/pkclist.c:321
 #, fuzzy, c-format
 msgid "%08lX: key has expired\n"
 msgstr "Nota: questa chiave è scaduta!\n"
 
-#: g10/pkclist.c:317
+#: g10/pkclist.c:327
 #, c-format
 msgid "%08lX: no info to calculate a trust probability\n"
 msgstr ""
 
-#: g10/pkclist.c:331
+#: g10/pkclist.c:341
 #, fuzzy, c-format
 msgid "%08lX: We do NOT trust this key\n"
 msgstr "ATTENZIONE: NON ci fidiamo di questa chiave!\n"
 
-#: g10/pkclist.c:337
+#: g10/pkclist.c:347
 #, c-format
 msgid ""
 "%08lX: It is not sure that this key really belongs to the owner\n"
 "but it is accepted anyway\n"
 msgstr ""
 
-#: g10/pkclist.c:343
+#: g10/pkclist.c:353
 msgid "This key probably belongs to the owner\n"
 msgstr ""
 
-#: g10/pkclist.c:348
+#: g10/pkclist.c:358
 msgid "This key belongs to us\n"
 msgstr ""
 
-#: g10/pkclist.c:386
+#: g10/pkclist.c:398
 msgid ""
 "It is NOT certain that the key belongs to its owner.\n"
 "If you *really* know what you are doing, you may answer\n"
@@ -1007,56 +1006,61 @@ msgstr ""
 "prossima domanda.\n"
 "\n"
 
-#: g10/pkclist.c:399
+#: g10/pkclist.c:411
 msgid "WARNING: Using untrusted key!\n"
 msgstr "ATTENZIONE: uso di una chiave non fidata!\n"
 
-#: g10/pkclist.c:435
+#: g10/pkclist.c:447
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr "ATTENZIONE: questa chiave è stata revocata dal suo proprietario!\n"
 
-#: g10/pkclist.c:436
+#: g10/pkclist.c:448
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "         Questo può significare che la firma è stata falsificata.\n"
 
-#: g10/pkclist.c:457
+#: g10/pkclist.c:452
+#, fuzzy
+msgid "WARNING: This subkey has been revoked by its owner!\n"
+msgstr "ATTENZIONE: questa chiave è stata revocata dal suo proprietario!\n"
+
+#: g10/pkclist.c:473
 msgid "Note: This key has expired!\n"
 msgstr "Nota: questa chiave è scaduta!\n"
 
-#: g10/pkclist.c:464
+#: g10/pkclist.c:480
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr "ATTENZIONE: questa chiave non è certificata con una firma fidata!\n"
 
-#: g10/pkclist.c:466
+#: g10/pkclist.c:482
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr ""
 "         Non ci sono indicazioni che la firma appartenga al proprietario.\n"
 
-#: g10/pkclist.c:482
+#: g10/pkclist.c:498
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "ATTENZIONE: NON ci fidiamo di questa chiave!\n"
 
-#: g10/pkclist.c:483
+#: g10/pkclist.c:499
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "          La firma è probabilmente un FALSO.\n"
 
-#: g10/pkclist.c:490
+#: g10/pkclist.c:506
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 "ATTENZIONE: questa chiave non è certificata con firme abbastanza fidate!\n"
 
-#: g10/pkclist.c:493
+#: g10/pkclist.c:509
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr "         Non è sicuro che la firma appartenga al proprietario.\n"
 
-#: g10/pkclist.c:546 g10/pkclist.c:559 g10/pkclist.c:622 g10/pkclist.c:650
+#: g10/pkclist.c:562 g10/pkclist.c:575 g10/pkclist.c:638 g10/pkclist.c:666
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s: saltata: %s\n"
 
-#: g10/pkclist.c:568
+#: g10/pkclist.c:584
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -1064,20 +1068,20 @@ msgstr ""
 "Non hai specificato un user ID. (puoi usare \"-r\")\n"
 "\n"
 
-#: g10/pkclist.c:573
+#: g10/pkclist.c:589
 msgid "Enter the user ID: "
 msgstr "Inserisci l'user ID: "
 
-#: g10/pkclist.c:584
+#: g10/pkclist.c:600
 msgid "No such user ID.\n"
 msgstr "User ID inesistente.\n"
 
-#: g10/pkclist.c:630
+#: g10/pkclist.c:646
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s: errore nel controllare la chiave: %s\n"
 
-#: g10/pkclist.c:656
+#: g10/pkclist.c:672
 msgid "no valid addressees\n"
 msgstr "nessun indirizzo valido\n"
 
@@ -1156,7 +1160,20 @@ msgstr "DSA permette solo chiavi di dimensioni da 512 a 1024\n"
 msgid "keysize too small; 768 is smallest value allowed.\n"
 msgstr "la chiave è troppo corta; 768 è il minimo valore permesso.\n"
 
-#: g10/keygen.c:459
+#. It is ridiculous and an annoyance to use larger key sizes!
+#. * GnuPG can handle much larger sizes; but it takes an eternity
+#. * to create such a key (but less than the time the Sirius
+#. * Computer Corporation needs to process one of the usual
+#. * complaints) and {de,en}cryption although needs some time.
+#. * So, before you complain about this limitation, I suggest that
+#. * you start a discussion with Marvin about this theme and then
+#. * do whatever you want.
+#: g10/keygen.c:466
+#, fuzzy, c-format
+msgid "keysize too large; %d is largest value allowed.\n"
+msgstr "la chiave è troppo corta; 768 è il minimo valore permesso.\n"
+
+#: g10/keygen.c:471
 msgid ""
 "Keysizes larger than 2048 are not suggested because\n"
 "computations take REALLY long!\n"
@@ -1164,11 +1181,11 @@ msgstr ""
 "Chiavi più lunghe di 2048 non sono consigliate perchè i calcoli sono \n"
 "VERAMENTE lunghi!\n"
 
-#: g10/keygen.c:462
+#: g10/keygen.c:474
 msgid "Are you sure that you want this keysize? "
 msgstr "Sei sicuro di volere una chiave di queste dimensioni? "
 
-#: g10/keygen.c:463
+#: g10/keygen.c:475
 msgid ""
 "Okay, but keep in mind that your monitor and keyboard radiation is also very "
 "vulnerable to attacks!\n"
@@ -1176,21 +1193,21 @@ msgstr ""
 "Va bene, ma ricordati che anche le radiazioni emesse dal tuo monitor e dalla "
 "tua tastiera sono molto vulnerabili ad attacchi!\n"
 
-#: g10/keygen.c:471
+#: g10/keygen.c:483
 msgid "Do you really need such a large keysize? "
 msgstr "Ti serve davvero una chiave così lunga? "
 
-#: g10/keygen.c:477
+#: g10/keygen.c:489
 #, c-format
 msgid "Requested keysize is %u bits\n"
 msgstr "Le dimensioni della chiave richieste sono %u bit\n"
 
-#: g10/keygen.c:480 g10/keygen.c:484
+#: g10/keygen.c:492 g10/keygen.c:496
 #, c-format
 msgid "rounded up to %u bits\n"
 msgstr "arrotondate a %u bit\n"
 
-#: g10/keygen.c:497
+#: g10/keygen.c:509
 msgid ""
 "Please specify how long the key should be valid.\n"
 "         0 = key does not expire\n"
@@ -1205,29 +1222,29 @@ msgstr ""
 "      <n>m = la chiave scadrà dopo n mesi\n"
 "      <n>y = la chiave scadrà dopo n anni\n"
 
-#: g10/keygen.c:512
+#: g10/keygen.c:524
 msgid "Key is valid for? (0) "
 msgstr "Chiave valida per? (0) "
 
-#: g10/keygen.c:523
+#: g10/keygen.c:535
 msgid "invalid value\n"
 msgstr "valore non valido\n"
 
-#: g10/keygen.c:528
+#: g10/keygen.c:540
 msgid "Key does not expire at all\n"
 msgstr "La chiave non scade\n"
 
 #. print the date when the key expires
-#: g10/keygen.c:534
+#: g10/keygen.c:546
 #, c-format
 msgid "Key expires at %s\n"
 msgstr "La chiave scadrà il %s\n"
 
-#: g10/keygen.c:540
+#: g10/keygen.c:552
 msgid "Is this correct (y/n)? "
 msgstr "È giusto (s/n)? "
 
-#: g10/keygen.c:583
+#: g10/keygen.c:595
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1243,44 +1260,44 @@ msgstr ""
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 
-#: g10/keygen.c:594
+#: g10/keygen.c:606
 msgid "Real name: "
 msgstr "Nome e Cognome: "
 
-#: g10/keygen.c:598
+#: g10/keygen.c:610
 msgid "Invalid character in name\n"
 msgstr "Carattere non valido nel nome\n"
 
-#: g10/keygen.c:600
+#: g10/keygen.c:612
 msgid "Name may not start with a digit\n"
 msgstr "Il nome non può iniziare con una cifra\n"
 
-#: g10/keygen.c:602
+#: g10/keygen.c:614
 msgid "Name must be at least 5 characters long\n"
 msgstr "Il nome deve essere lungo almeno 5 caratteri\n"
 
-#: g10/keygen.c:610
+#: g10/keygen.c:622
 msgid "Email address: "
 msgstr "Indirizzo di Email: "
 
-#: g10/keygen.c:621
+#: g10/keygen.c:633
 msgid "Not a valid email address\n"
 msgstr "L'indirizzo di email non è valido\n"
 
-#: g10/keygen.c:629
+#: g10/keygen.c:641
 msgid "Comment: "
 msgstr "Commento: "
 
-#: g10/keygen.c:635
+#: g10/keygen.c:647
 msgid "Invalid character in comment\n"
 msgstr "Carattere non valido nel commento\n"
 
-#: g10/keygen.c:657
+#: g10/keygen.c:669
 #, c-format
 msgid "You are using the `%s' character set.\n"
 msgstr ""
 
-#: g10/keygen.c:663
+#: g10/keygen.c:675
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1291,15 +1308,15 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:666
+#: g10/keygen.c:678
 msgid "NnCcEeOoQq"
 msgstr "NnCcEeOoQq"
 
-#: g10/keygen.c:676
+#: g10/keygen.c:688
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr "Modifica (N)ome, (C)ommento, (E)mail oppure (O)kay/(Q)uit? "
 
-#: g10/keygen.c:728
+#: g10/keygen.c:740
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1307,11 +1324,11 @@ msgstr ""
 "Ti serve una passphrase per proteggere la tua chiave segreta.\n"
 "\n"
 
-#: g10/keyedit.c:421 g10/keygen.c:736
+#: g10/keyedit.c:433 g10/keygen.c:748
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "passphrase non ripetuta correttamente; riprova.\n"
 
-#: g10/keygen.c:742
+#: g10/keygen.c:754
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -1323,13 +1340,13 @@ msgstr ""
 "programma con l'opzione \"--edit-key\".\n"
 "\n"
 
-#: g10/keygen.c:763
+#: g10/keygen.c:775
 #, fuzzy
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (type on the keyboard, move the mouse, utilize the\n"
-"the disks) during the prime generation; this gives the random\n"
-"number generator a better chance to gain enough entropy.\n"
+"disks) during the prime generation; this gives the random number\n"
+"generator a better chance to gain enough entropy.\n"
 msgstr ""
 "Dobbiamo generare un mucchio di byte casuali. È una buona idea eseguire\n"
 "qualche altra azione (lavorare in un'altra finestra, muovere il mouse, "
@@ -1338,33 +1355,33 @@ msgstr ""
 "generatore di numeri casuali la possibilità di raccogliere abbastanza\n"
 "entropia.\n"
 
-#: g10/keygen.c:833
+#: g10/keygen.c:845
 msgid "Key generation can only be used in interactive mode\n"
 msgstr "Una chiave può essere generata solo in modo interattivo\n"
 
-#: g10/keygen.c:841
+#: g10/keygen.c:853
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "La coppia DSA avrà 1024 bit.\n"
 
-#: g10/keygen.c:847
+#: g10/keygen.c:859
 msgid "Key generation cancelled.\n"
 msgstr "Generazione della chiave annullata.\n"
 
-#: g10/keygen.c:857
+#: g10/keygen.c:869
 #, c-format
 msgid "writing public certificate to `%s'\n"
 msgstr "scrittura del certificato pubblico in `%s'\n"
 
-#: g10/keygen.c:858
+#: g10/keygen.c:870
 #, c-format
 msgid "writing secret certificate to `%s'\n"
 msgstr "scrittura del certificato privato in `%s'\n"
 
-#: g10/keygen.c:935
+#: g10/keygen.c:947
 msgid "public and secret key created and signed.\n"
 msgstr "chiavi pubbliche e segrete create e firmate.\n"
 
-#: g10/keygen.c:937
+#: g10/keygen.c:949
 #, fuzzy
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
@@ -1374,12 +1391,12 @@ msgstr ""
 "vorrai usare il comando \"--add-key\" per generare una chiave secondaria\n"
 "per questo scopo.\n"
 
-#: g10/keygen.c:951 g10/keygen.c:1050
+#: g10/keygen.c:963 g10/keygen.c:1062
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Generazione della chiave fallita: %s\n"
 
-#: g10/keygen.c:995 g10/sig-check.c:212 g10/sign.c:52
+#: g10/keygen.c:1007 g10/sig-check.c:299 g10/sign.c:52
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu second in future (time warp or clock problem)\n"
@@ -1387,7 +1404,7 @@ msgstr ""
 "chiave pubblica creata nel futuro (salto nel tempo o problema con\n"
 "l'orologio)\n"
 
-#: g10/keygen.c:997 g10/sig-check.c:214 g10/sign.c:54
+#: g10/keygen.c:1009 g10/sig-check.c:301 g10/sign.c:54
 #, fuzzy, c-format
 msgid ""
 "key has been created %lu seconds in future (time warp or clock problem)\n"
@@ -1395,32 +1412,37 @@ msgstr ""
 "chiave pubblica creata nel futuro (salto nel tempo o problema con\n"
 "l'orologio)\n"
 
-#: g10/keygen.c:1028
+#: g10/keygen.c:1040
 msgid "Really create? "
 msgstr "Crea davvero? "
 
-#: g10/encode.c:90 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
-#: g10/tdbio.c:527
+#: g10/encode.c:91 g10/openfile.c:86 g10/openfile.c:174 g10/tdbio.c:467
+#: g10/tdbio.c:528
 #, c-format
 msgid "%s: can't open: %s\n"
 msgstr "%s: impossibile aprire: %s\n"
 
-#: g10/encode.c:112
+#: g10/encode.c:113
 #, c-format
 msgid "error creating passphrase: %s\n"
 msgstr "errore nella creazione della passhprase: %s\n"
 
-#: g10/encode.c:166 g10/encode.c:285
+#: g10/encode.c:167 g10/encode.c:290
 #, fuzzy, c-format
 msgid "%s: WARNING: empty file\n"
 msgstr "%s: attenzione: file vuoto\n"
 
-#: g10/encode.c:235
+#: g10/encode.c:240
 #, c-format
 msgid "reading from `%s'\n"
 msgstr "lettura da `%s'\n"
 
-#: g10/encode.c:413
+#: g10/encode.c:435 g10/sign.c:346
+#, fuzzy, c-format
+msgid "WARNING: `%s' is an empty file\n"
+msgstr "%s: attenzione: file vuoto\n"
+
+#: g10/encode.c:605
 #, fuzzy, c-format
 msgid "%s/%s encrypted for: %s\n"
 msgstr "%s crittografato per: %s\n"
@@ -1453,7 +1475,7 @@ msgstr ""
 msgid "too many entries in unk cache - disabled\n"
 msgstr ""
 
-#: g10/getkey.c:1531 g10/getkey.c:1587
+#: g10/getkey.c:1535 g10/getkey.c:1591
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr "uso la chiave secondaria %08lX invece della chiave primaria %08lX\n"
@@ -1478,323 +1500,332 @@ msgstr "Per ora sono state esaminate %lu chiavi\n"
 msgid "read error: %s\n"
 msgstr "errore di lettura: %s\n"
 
-#: g10/import.c:174
+#: g10/import.c:175
 #, c-format
 msgid "Total number processed: %lu\n"
 msgstr "Numero totale esaminato: %lu\n"
 
-#: g10/import.c:176
+#: g10/import.c:177
 #, c-format
 msgid "          w/o user IDs: %lu\n"
 msgstr "senza user ID: %lu\n"
 
-#: g10/import.c:178
+#: g10/import.c:179
 #, c-format
 msgid "              imported: %lu"
 msgstr "importate: %lu"
 
-#: g10/import.c:184
+#: g10/import.c:185
 #, c-format
 msgid "             unchanged: %lu\n"
 msgstr "non modificate: %lu\n"
 
-#: g10/import.c:186
+#: g10/import.c:187
 #, c-format
 msgid "          new user IDs: %lu\n"
 msgstr "nuovi user ID: %lu\n"
 
-#: g10/import.c:188
+#: g10/import.c:189
 #, c-format
 msgid "           new subkeys: %lu\n"
 msgstr "nuove subchiavi: %lu\n"
 
-#: g10/import.c:190
+#: g10/import.c:191
 #, c-format
 msgid "        new signatures: %lu\n"
 msgstr "nuove firme: %lu\n"
 
-#: g10/import.c:192
+#: g10/import.c:193
 #, c-format
 msgid "   new key revocations: %lu\n"
 msgstr "nuove revoche di chiavi: %lu\n"
 
-#: g10/import.c:194
+#: g10/import.c:195
 #, c-format
 msgid "      secret keys read: %lu\n"
 msgstr "chiavi segrete lette: %lu\n"
 
-#: g10/import.c:196
+#: g10/import.c:197
 #, c-format
 msgid "  secret keys imported: %lu\n"
 msgstr "chiavi segrete importate %lu\n"
 
-#: g10/import.c:198
+#: g10/import.c:199
 #, c-format
 msgid " secret keys unchanged: %lu\n"
 msgstr "chiavi segrete non cambiate %lu\n"
 
-#: g10/import.c:340 g10/import.c:532
+#: g10/import.c:342 g10/import.c:534
 #, c-format
 msgid "key %08lX: no user id\n"
 msgstr "chiave %08lX: nessun user id\n"
 
-#: g10/import.c:351
+#: g10/import.c:353
 #, c-format
 msgid "key %08lX: no valid user ids\n"
 msgstr "chiave %08lX: nessun user id valido\n"
 
-#: g10/import.c:353
+#: g10/import.c:355
 msgid "this may be caused by a missing self-signature\n"
 msgstr "questo può essere causato da una autofirma mancante\n"
 
-#: g10/import.c:364 g10/import.c:600
+#: g10/import.c:366 g10/import.c:604
 #, c-format
 msgid "key %08lX: public key not found: %s\n"
 msgstr "chiave %08lX: chiave pubblica non trovata: %s\n"
 
-#: g10/import.c:370
+#: g10/import.c:372
 msgid "no default public keyring\n"
 msgstr "nessun portachiavi pubblico predefinito\n"
 
-#: g10/import.c:374 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:498
+#: g10/import.c:376 g10/openfile.c:115 g10/sign.c:215 g10/sign.c:501
 #, c-format
 msgid "writing to `%s'\n"
 msgstr "scrittura in `%s'\n"
 
-#: g10/import.c:378 g10/import.c:438 g10/import.c:654
+#: g10/import.c:380 g10/import.c:440 g10/import.c:658
 #, c-format
 msgid "can't lock public keyring: %s\n"
 msgstr "impossibile bloccare il portachiavi pubblico: %s\n"
 
-#: g10/import.c:381
+#: g10/import.c:383
 #, c-format
 msgid "can't write to keyring: %s\n"
 msgstr "impossibile scrivere sul portachiavi pubblico: %s\n"
 
-#: g10/import.c:385
+#: g10/import.c:387
 #, c-format
 msgid "key %08lX: public key imported\n"
 msgstr "chiave %08lX: chiave pubblica importata\n"
 
-#: g10/import.c:398
+#: g10/import.c:400
 #, c-format
 msgid "key %08lX: doesn't match our copy\n"
 msgstr "chiave %08lX: non corrisponde alla nostra copia\n"
 
-#: g10/import.c:411 g10/import.c:609
+#: g10/import.c:413 g10/import.c:613
 #, c-format
 msgid "key %08lX: can't locate original keyblock: %s\n"
 msgstr "chiave %08lX: impossibile individuare il keyblock originale: %s\n"
 
-#: g10/import.c:418 g10/import.c:616
+#: g10/import.c:420 g10/import.c:620
 #, c-format
 msgid "key %08lX: can't read original keyblock: %s\n"
 msgstr "chiave %08lX: impossibile leggere il keyblock originale: %s\n"
 
-#: g10/import.c:435 g10/import.c:547 g10/import.c:651
+#: g10/import.c:437 g10/import.c:549 g10/import.c:655
 msgid "writing keyblock\n"
 msgstr "scrittura del keyblock\n"
 
-#: g10/import.c:441 g10/import.c:657
+#: g10/import.c:443 g10/import.c:661
 #, c-format
 msgid "can't write keyblock: %s\n"
 msgstr "impossibile aprire il keyblock: %s\n"
 
-#: g10/import.c:446
+#: g10/import.c:448
 #, c-format
 msgid "key %08lX: 1 new user-id\n"
 msgstr "chiave %08lX: un nuovo user id\n"
 
-#: g10/import.c:449
+#: g10/import.c:451
 #, c-format
 msgid "key %08lX: %d new user-ids\n"
 msgstr "chiave %08lX: %d nuovi user id\n"
 
-#: g10/import.c:452
+#: g10/import.c:454
 #, c-format
 msgid "key %08lX: 1 new signature\n"
 msgstr "chiave %08lX: una nuova firma\n"
 
-#: g10/import.c:455
+#: g10/import.c:457
 #, c-format
 msgid "key %08lX: %d new signatures\n"
 msgstr "chiave %08lX: %d nuove firme\n"
 
-#: g10/import.c:458
+#: g10/import.c:460
 #, c-format
 msgid "key %08lX: 1 new subkey\n"
 msgstr "chiave %08lX: una nuova subchiave\n"
 
-#: g10/import.c:461
+#: g10/import.c:463
 #, c-format
 msgid "key %08lX: %d new subkeys\n"
 msgstr "chiave %08lX: %d nuove subchiavi\n"
 
-#: g10/import.c:471
+#: g10/import.c:473
 #, c-format
 msgid "key %08lX: not changed\n"
 msgstr "chiave %08lX: non cambiata\n"
 
-#: g10/import.c:550
+#: g10/import.c:552
 #, c-format
 msgid "can't lock secret keyring: %s\n"
 msgstr "impossibile bloccare il portachiavi segreto: %s\n"
 
-#: g10/import.c:553
+#: g10/import.c:555
 #, c-format
 msgid "can't write keyring: %s\n"
 msgstr "impossibile scrivere il portachiavi: %s\n"
 
-#. we are ready
-#: g10/import.c:556
+#: g10/import.c:559
 #, c-format
 msgid "key %08lX: secret key imported\n"
 msgstr "chiave %08lX: chiave segreta importata\n"
 
 #. we can't merge secret keys
-#: g10/import.c:560
+#: g10/import.c:564
 #, c-format
 msgid "key %08lX: already in secret keyring\n"
 msgstr "chiave %08lX: già nel portachiavi segreto\n"
 
-#: g10/import.c:565
+#: g10/import.c:569
 #, c-format
 msgid "key %08lX: secret key not found: %s\n"
 msgstr "chiave %08lX: chiave segreta non trovata: %s\n"
 
-#: g10/import.c:594
+#: g10/import.c:598
 #, c-format
 msgid "key %08lX: no public key - can't apply revocation certificate\n"
 msgstr ""
 "chiave %08lX: manca la chiave pubblica - impossibile applicare il\n"
 "certificato di revoca\n"
 
-#: g10/import.c:627
+#: g10/import.c:631
 #, c-format
 msgid "key %08lX: invalid revocation certificate: %s - rejected\n"
 msgstr "chiave %08lX: certificato di revoca non valido: %s - rifiutato\n"
 
-#: g10/import.c:661
+#: g10/import.c:665
 #, c-format
 msgid "key %08lX: revocation certificate imported\n"
 msgstr "chiave %08lX: certificato di revoca importato\n"
 
-#: g10/import.c:695
+#: g10/import.c:699
 #, c-format
 msgid "key %08lX: no user-id for signature\n"
 msgstr "chiave %08lX: nessun user id per la firma\n"
 
-#: g10/import.c:702 g10/import.c:727
+#: g10/import.c:706 g10/import.c:731
 #, c-format
 msgid "key %08lX: unsupported public key algorithm\n"
 msgstr "chiave %08lX: algoritmo a chiave pubblica non gestito\n"
 
-#: g10/import.c:703
+#: g10/import.c:707
 #, c-format
 msgid "key %08lX: invalid self-signature\n"
 msgstr "chiave %08lX: autofirma non valida\n"
 
-#: g10/import.c:719
+#: g10/import.c:723
 #, fuzzy, c-format
 msgid "key %08lX: no subkey for key binding\n"
 msgstr "chiave %08lX.%lu: Legame con la subchiave corretto\n"
 
-#: g10/import.c:728
+#: g10/import.c:732
 #, fuzzy, c-format
 msgid "key %08lX: invalid subkey binding\n"
 msgstr "chiave %08lX.%lu: Legame con la subchiave non valido: %s\n"
 
-#: g10/import.c:760
+#: g10/import.c:764
 #, c-format
 msgid "key %08lX: skipped userid '"
 msgstr "chiave %08lX: saltato l'user id '"
 
-#: g10/import.c:780
+#: g10/import.c:787
 #, fuzzy, c-format
 msgid "key %08lX: skipped subkey\n"
 msgstr "chiave %08lX: una nuova subchiave\n"
 
-#: g10/import.c:800
+#. here we violate the rfc a bit by still allowing
+#. * to import non-exportable signature when we have the
+#. * the secret key used to create this signature - it
+#. * seems that this makes sense
+#: g10/import.c:812
 #, fuzzy, c-format
 msgid "key %08lX: non exportable signature (class %02x) - skipped\n"
 msgstr "chiave %08lX: certificato di revoca nel posto sbagliato - saltato\n"
 
-#: g10/import.c:809
+#: g10/import.c:821
 #, c-format
 msgid "key %08lX: revocation certificate at wrong place - skipped\n"
 msgstr "chiave %08lX: certificato di revoca nel posto sbagliato - saltato\n"
 
-#: g10/import.c:817
+#: g10/import.c:829
 #, c-format
 msgid "key %08lX: invalid revocation certificate: %s - skipped\n"
 msgstr "chiave %08lX: certificato di revoca non valido: %s - saltato\n"
 
-#: g10/import.c:878
+#: g10/import.c:890
 #, c-format
 msgid "key %08lX: revocation certificate added\n"
 msgstr "chiave %08lX: certificato di revoca aggiunto\n"
 
-#: g10/import.c:992 g10/import.c:1047
+#: g10/import.c:1008 g10/import.c:1063
 #, c-format
 msgid "key %08lX: our copy has no self-signature\n"
 msgstr "chiave %08lX: la nostra copia non ha autofirma\n"
 
-#: g10/keyedit.c:88
+#: g10/keyedit.c:91
 #, c-format
 msgid "%s: user not found\n"
 msgstr "%s: utente non trovato\n"
 
-#: g10/keyedit.c:171
+#: g10/keyedit.c:177
+msgid "[revocation]"
+msgstr ""
+
+#: g10/keyedit.c:178
 msgid "[self-signature]"
 msgstr "[autofirma]"
 
-#: g10/keyedit.c:189
+#: g10/keyedit.c:196
 msgid "1 bad signature\n"
 msgstr "una firma non corretta\n"
 
-#: g10/keyedit.c:191
+#: g10/keyedit.c:198
 #, c-format
 msgid "%d bad signatures\n"
 msgstr "%d firme non corrette\n"
 
-#: g10/keyedit.c:193
+#: g10/keyedit.c:200
 msgid "1 signature not checked due to a missing key\n"
 msgstr "1 firma non controllata per mancanza della chiave\n"
 
-#: g10/keyedit.c:195
+#: g10/keyedit.c:202
 #, c-format
 msgid "%d signatures not checked due to missing keys\n"
 msgstr "%d firme non controllate per mancanza delle chiavi\n"
 
-#: g10/keyedit.c:197
+#: g10/keyedit.c:204
 msgid "1 signature not checked due to an error\n"
 msgstr "1 firma non controllata a causa di un errore\n"
 
-#: g10/keyedit.c:199
+#: g10/keyedit.c:206
 #, c-format
 msgid "%d signatures not checked due to errors\n"
 msgstr "%d firme non controllate a causa di errori\n"
 
-#: g10/keyedit.c:201
+#: g10/keyedit.c:208
 msgid "1 user id without valid self-signature detected\n"
 msgstr "Trovato 1 user id senza autofirma valida\n"
 
-#: g10/keyedit.c:203
+#: g10/keyedit.c:210
 #, c-format
 msgid "%d user ids without valid self-signatures detected\n"
 msgstr "Trovati %d user id senza autofirme valide\n"
 
-#: g10/keyedit.c:281
+#. Fixme: see whether there is a revocation in which
+#. * case we should allow to sign it again.
+#: g10/keyedit.c:290
 #, c-format
 msgid "Already signed by key %08lX\n"
 msgstr "Già firmato dalla chiave %08lX\n"
 
-#: g10/keyedit.c:289
+#: g10/keyedit.c:298
 #, c-format
 msgid "Nothing to sign with key %08lX\n"
 msgstr "Niente da firmare con la chiave %08lX\n"
 
-#: g10/keyedit.c:298
+#: g10/keyedit.c:307
 msgid ""
 "Are you really sure that you want to sign this key\n"
 "with your key: \""
@@ -1802,35 +1833,35 @@ msgstr ""
 "Sei davvero sicuro di volere firmare questa chiave\n"
 "con la tua chiave: \""
 
-#: g10/keyedit.c:307
+#: g10/keyedit.c:316
 msgid ""
 "The signature will be marked as non-exportable.\n"
 "\n"
 msgstr ""
 
-#: g10/keyedit.c:309
+#: g10/keyedit.c:321
 msgid "Really sign? "
 msgstr "Firmo davvero? "
 
-#: g10/keyedit.c:335 g10/sign.c:75
+#: g10/keyedit.c:347 g10/keyedit.c:1684 g10/keyedit.c:1733 g10/sign.c:75
 #, c-format
 msgid "signing failed: %s\n"
 msgstr "firma fallita: %s\n"
 
-#: g10/keyedit.c:388
+#: g10/keyedit.c:400
 msgid "This key is not protected.\n"
 msgstr "Questa chiave non è protetta.\n"
 
-#: g10/keyedit.c:391
+#: g10/keyedit.c:403
 msgid "Key is protected.\n"
 msgstr "La chiave è protetta.\n"
 
-#: g10/keyedit.c:408
+#: g10/keyedit.c:420
 #, c-format
 msgid "Can't edit this key: %s\n"
 msgstr "Impossibile modificare questa chiave: %s\n"
 
-#: g10/keyedit.c:413
+#: g10/keyedit.c:425
 msgid ""
 "Enter the new passphrase for this secret key.\n"
 "\n"
@@ -1838,7 +1869,7 @@ msgstr ""
 "Inserisci la nuova passphrase per questa chiave segreta.\n"
 "\n"
 
-#: g10/keyedit.c:425
+#: g10/keyedit.c:437
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "\n"
@@ -1846,383 +1877,454 @@ msgstr ""
 "Non vuoi una passphrase - questa è probabilmente una *cattiva* idea!\n"
 "\n"
 
-#: g10/keyedit.c:428
+#: g10/keyedit.c:440
 msgid "Do you really want to do this? "
 msgstr "Vuoi veramente farlo?"
 
-#: g10/keyedit.c:487
+#: g10/keyedit.c:499
 msgid "moving a key signature to the correct place\n"
 msgstr ""
 
-#: g10/keyedit.c:523
+#: g10/keyedit.c:535
 msgid "quit"
 msgstr "quit"
 
-#: g10/keyedit.c:523
+#: g10/keyedit.c:535
 msgid "quit this menu"
 msgstr "abbandona questo menù"
 
-#: g10/keyedit.c:524
+#: g10/keyedit.c:536
 msgid "q"
 msgstr "q"
 
-#: g10/keyedit.c:525
+#: g10/keyedit.c:537
 msgid "save"
 msgstr "save"
 
-#: g10/keyedit.c:525
+#: g10/keyedit.c:537
 msgid "save and quit"
 msgstr "salva ed esci"
 
-#: g10/keyedit.c:526
+#: g10/keyedit.c:538
 msgid "help"
 msgstr "help"
 
-#: g10/keyedit.c:526
+#: g10/keyedit.c:538
 msgid "show this help"
 msgstr "mostra questo aiuto"
 
-#: g10/keyedit.c:528
+#: g10/keyedit.c:540
 msgid "fpr"
 msgstr "fpr"
 
-#: g10/keyedit.c:528
+#: g10/keyedit.c:540
 msgid "show fingerprint"
 msgstr "mostra le impronte digitali"
 
-#: g10/keyedit.c:529
+#: g10/keyedit.c:541
 msgid "list"
 msgstr "list"
 
-#: g10/keyedit.c:529
+#: g10/keyedit.c:541
 msgid "list key and user ids"
 msgstr "elenca le chiavi e gli user id"
 
-#: g10/keyedit.c:530
+#: g10/keyedit.c:542
 msgid "l"
 msgstr "l"
 
-#: g10/keyedit.c:531
+#: g10/keyedit.c:543
 msgid "uid"
 msgstr "uid"
 
-#: g10/keyedit.c:531
+#: g10/keyedit.c:543
 msgid "select user id N"
 msgstr "scegli l'user id N"
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:544
 msgid "key"
 msgstr "key"
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:544
 msgid "select secondary key N"
 msgstr "scegli la chiave secondaria N"
 
-#: g10/keyedit.c:533
+#: g10/keyedit.c:545
 msgid "check"
 msgstr "check"
 
-#: g10/keyedit.c:533
+#: g10/keyedit.c:545
 msgid "list signatures"
 msgstr "elenca le firme"
 
-#: g10/keyedit.c:534
+#: g10/keyedit.c:546
 msgid "c"
 msgstr "c"
 
-#: g10/keyedit.c:535
+#: g10/keyedit.c:547
 msgid "sign"
 msgstr "sign"
 
-#: g10/keyedit.c:535
+#: g10/keyedit.c:547
 msgid "sign the key"
 msgstr "firma la chiave"
 
-#: g10/keyedit.c:536
+#: g10/keyedit.c:548
 msgid "s"
 msgstr "s"
 
-#: g10/keyedit.c:537
+#: g10/keyedit.c:549
 #, fuzzy
 msgid "lsign"
 msgstr "sign"
 
-#: g10/keyedit.c:537
+#: g10/keyedit.c:549
 #, fuzzy
 msgid "sign the key locally"
 msgstr "firma la chiave"
 
-#: g10/keyedit.c:538
+#: g10/keyedit.c:550
 msgid "debug"
 msgstr "debug"
 
-#: g10/keyedit.c:539
+#: g10/keyedit.c:551
 msgid "adduid"
 msgstr "adduid"
 
-#: g10/keyedit.c:539
+#: g10/keyedit.c:551
 msgid "add a user id"
 msgstr "aggiungi un user id"
 
-#: g10/keyedit.c:540
+#: g10/keyedit.c:552
 msgid "deluid"
 msgstr "deluid"
 
-#: g10/keyedit.c:540
+#: g10/keyedit.c:552
 msgid "delete user id"
 msgstr "cancella un user id"
 
-#: g10/keyedit.c:541
+#: g10/keyedit.c:553
 msgid "addkey"
 msgstr "addkey"
 
-#: g10/keyedit.c:541
+#: g10/keyedit.c:553
 msgid "add a secondary key"
 msgstr "aggiungi una chiave secondaria"
 
-#: g10/keyedit.c:542
+#: g10/keyedit.c:554
 msgid "delkey"
 msgstr "delkey"
 
-#: g10/keyedit.c:542
+#: g10/keyedit.c:554
 msgid "delete a secondary key"
 msgstr "cancella una chiave secondaria"
 
-#: g10/keyedit.c:543
+#: g10/keyedit.c:555
 msgid "expire"
 msgstr "expire"
 
-#: g10/keyedit.c:543
+#: g10/keyedit.c:555
 msgid "change the expire date"
 msgstr "cambia la data di scadenza"
 
-#: g10/keyedit.c:544
+#: g10/keyedit.c:556
 msgid "toggle"
 msgstr "toggle"
 
-#: g10/keyedit.c:544
+#: g10/keyedit.c:556
 msgid "toggle between secret and public key listing"
 msgstr "cambia tra visualizzare la chiave segreta e la chiave pubblica"
 
-#: g10/keyedit.c:546
+#: g10/keyedit.c:558
 msgid "t"
 msgstr "t"
 
-#: g10/keyedit.c:547
+#: g10/keyedit.c:559
 msgid "pref"
 msgstr "pref"
 
-#: g10/keyedit.c:547
+#: g10/keyedit.c:559
 msgid "list preferences"
 msgstr "elenca le impostazioni"
 
-#: g10/keyedit.c:548
+#: g10/keyedit.c:560
 msgid "passwd"
 msgstr "passwd"
 
-#: g10/keyedit.c:548
+#: g10/keyedit.c:560
 msgid "change the passphrase"
 msgstr "cambia la passphrase"
 
-#: g10/keyedit.c:549
+#: g10/keyedit.c:561
 msgid "trust"
 msgstr "trust"
 
-#: g10/keyedit.c:549
+#: g10/keyedit.c:561
 msgid "change the ownertrust"
 msgstr "cambia il valore di fiducia"
 
-#: g10/keyedit.c:568
+#: g10/keyedit.c:562
+#, fuzzy
+msgid "revsig"
+msgstr "sign"
+
+#: g10/keyedit.c:562
+#, fuzzy
+msgid "revoke signatures"
+msgstr "forza l'uso di firme v3"
+
+#: g10/keyedit.c:563
+#, fuzzy
+msgid "revkey"
+msgstr "key"
+
+#: g10/keyedit.c:563
+#, fuzzy
+msgid "revoke a secondary key"
+msgstr "cancella una chiave secondaria"
+
+#: g10/keyedit.c:582
 msgid "can't do that in batchmode\n"
 msgstr "impossibile fare questo in batch mode\n"
 
 #. check that they match
 #. FIXME: check that they both match
-#: g10/keyedit.c:595
+#: g10/keyedit.c:609
 msgid "Secret key is available.\n"
 msgstr "È disponibile una chiave segreta.\n"
 
-#: g10/keyedit.c:624
+#: g10/keyedit.c:638
 msgid "Command> "
 msgstr "Comando> "
 
-#: g10/keyedit.c:651
+#: g10/keyedit.c:665
 msgid "Need the secret key to do this.\n"
 msgstr "Per fare questo serve la chiave segreta.\n"
 
-#: g10/keyedit.c:673
+#: g10/keyedit.c:687
 msgid "Save changes? "
 msgstr "Salvo i cambiamenti? "
 
-#: g10/keyedit.c:676
+#: g10/keyedit.c:690
 msgid "Quit without saving? "
 msgstr "Esco senza salvare? "
 
-#: g10/keyedit.c:686
+#: g10/keyedit.c:700
 #, c-format
 msgid "update failed: %s\n"
 msgstr "aggiornamento fallito: %s\n"
 
-#: g10/keyedit.c:693
+#: g10/keyedit.c:707
 #, c-format
 msgid "update secret failed: %s\n"
 msgstr "aggiornamento della chiave segreta fallito: %s\n"
 
-#: g10/keyedit.c:700
+#: g10/keyedit.c:714
 msgid "Key not changed so no update needed.\n"
 msgstr "La chiave non è cambiata quindi non sono necessari aggiornamenti.\n"
 
-#: g10/keyedit.c:703 g10/keyedit.c:762
+#: g10/keyedit.c:717 g10/keyedit.c:776
 #, fuzzy, c-format
 msgid "update of trustdb failed: %s\n"
 msgstr "aggiornamento del trustdb fallito: %s\n"
 
-#: g10/keyedit.c:736
+#: g10/keyedit.c:750
 msgid "Really sign all user ids? "
 msgstr "Firmo davvero tutti gli user id? "
 
-#: g10/keyedit.c:737
+#: g10/keyedit.c:751
 msgid "Hint: Select the user ids to sign\n"
 msgstr "Suggerimento: seleziona gli user id da firmare\n"
 
-#: g10/keyedit.c:773
+#: g10/keyedit.c:787
 msgid "You must select at least one user id.\n"
 msgstr "Devi selezionare almeno un user id.\n"
 
-#: g10/keyedit.c:775
+#: g10/keyedit.c:789
 msgid "You can't delete the last user id!\n"
 msgstr "Non puoi cancellare l'ultimo user id!\n"
 
-#: g10/keyedit.c:778
+#: g10/keyedit.c:792
 msgid "Really remove all selected user ids? "
 msgstr "Tolgo davvero tutti gli user id selezionati? "
 
-#: g10/keyedit.c:779
+#: g10/keyedit.c:793
 msgid "Really remove this user id? "
 msgstr "Tolgo davvero questo user id? "
 
-#: g10/keyedit.c:802
+#: g10/keyedit.c:816 g10/keyedit.c:838
 msgid "You must select at least one key.\n"
 msgstr "Devi selezionare almeno una chiave.\n"
 
-#: g10/keyedit.c:806
+#: g10/keyedit.c:820
 msgid "Do you really want to delete the selected keys? "
 msgstr "Vuoi davvero cancellare le chiavi selezionate? "
 
-#: g10/keyedit.c:807
+#: g10/keyedit.c:821
 msgid "Do you really want to delete this key? "
 msgstr "Vuoi davvero cancellare questa chiave? "
 
-#: g10/keyedit.c:854
+#: g10/keyedit.c:842
+#, fuzzy
+msgid "Do you really want to revoke the selected keys? "
+msgstr "Vuoi davvero cancellare le chiavi selezionate? "
+
+#: g10/keyedit.c:843
+#, fuzzy
+msgid "Do you really want to revoke this key? "
+msgstr "Vuoi davvero cancellare questa chiave? "
+
+#: g10/keyedit.c:897
 msgid "Invalid command  (try \"help\")\n"
 msgstr "Comando non valido (prova \"help\")\n"
 
-#: g10/keyedit.c:1232
+#: g10/keyedit.c:1289
 msgid "Please remove selections from the secret keys.\n"
 msgstr "Togli le selezioni dalle chiavi segrete.\n"
 
-#: g10/keyedit.c:1238
+#: g10/keyedit.c:1295
 msgid "Please select at most one secondary key.\n"
 msgstr "Seleziona al massimo una chiave secondaria.\n"
 
-#: g10/keyedit.c:1242
+#: g10/keyedit.c:1299
 msgid "Changing exiration time for a secondary key.\n"
 msgstr "Modifico il tempo di scadenza per una chiave secondaria.\n"
 
-#: g10/keyedit.c:1244
+#: g10/keyedit.c:1301
 msgid "Changing exiration time for the primary key.\n"
 msgstr "Modifico il tempo di scadenza per la chiave primaria.\n"
 
-#: g10/keyedit.c:1285
+#: g10/keyedit.c:1342
 msgid "You can't change the expiration date of a v3 key\n"
 msgstr ""
 
-#: g10/keyedit.c:1301
+#: g10/keyedit.c:1358
 msgid "No corresponding signature in secret ring\n"
 msgstr "Manca la firma corrispondente nel portachiavi segreto\n"
 
-#: g10/keyedit.c:1361
+#: g10/keyedit.c:1418
 #, c-format
 msgid "No user id with index %d\n"
 msgstr "Nessun user id con l'indice %d\n"
 
-#: g10/keyedit.c:1407
+#: g10/keyedit.c:1464
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr "Nessuna chiave secondaria con l'indice %d\n"
 
-#: g10/mainproc.c:184
+#: g10/keyedit.c:1562
+#, fuzzy
+msgid "user ID: \""
+msgstr "Inserisci l'user ID: "
+
+#: g10/keyedit.c:1565
+#, fuzzy, c-format
+msgid ""
+"\"\n"
+"signed with your key %08lX at %s\n"
+msgstr "Niente da firmare con la chiave %08lX\n"
+
+#: g10/keyedit.c:1569
+#, fuzzy
+msgid "Create a revocation certificate for this signature? (y/N)"
+msgstr "genera un certificato di revoca"
+
+#: g10/keyedit.c:1649
+#, fuzzy
+msgid "Really create the revocation certificates? (y/N)"
+msgstr "genera un certificato di revoca"
+
+#: g10/keyedit.c:1672
+#, fuzzy
+msgid "no secret key\n"
+msgstr "Chiave segreta errata o danneggiata"
+
+#: g10/mainproc.c:185
 #, fuzzy, c-format
 msgid "public key is %08lX\n"
 msgstr "Chiave pubblica non trovata"
 
-#: g10/mainproc.c:212
+#: g10/mainproc.c:213
 #, fuzzy
 msgid "public key encrypted data: good DEK\n"
 msgstr "Decifratura della chiave pubblica fallita: %s\n"
 
 #. fixme: defer this message until we have parsed all packets of
 #. * this type - do this by building a list of keys with their stati
-#. * and store it with the conetxt.  do_proc_packets can then use
+#. * and store it with the context.  do_proc_packets can then use
 #. * this list to display some information
-#: g10/mainproc.c:219
+#: g10/mainproc.c:220
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "Decifratura della chiave pubblica fallita: %s\n"
 
-#: g10/mainproc.c:246
+#: g10/mainproc.c:249
 #, fuzzy
 msgid "decryption okay\n"
 msgstr "decifratura fallita: %s\n"
 
-#: g10/mainproc.c:249
+#: g10/mainproc.c:253
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "decifratura fallita: %s\n"
 
-#: g10/mainproc.c:266
+#: g10/mainproc.c:270
 #, fuzzy
 msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr "nota: il mittente ha richiesto \"solo-per-i-tuoi-occhi\"\n"
 
-#: g10/mainproc.c:268
+#: g10/mainproc.c:272
 #, c-format
 msgid "original file name='%.*s'\n"
 msgstr ""
 
-#: g10/mainproc.c:849
+#: g10/mainproc.c:876
 msgid "signature verification suppressed\n"
 msgstr ""
 
-#: g10/mainproc.c:855
+#: g10/mainproc.c:883
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Firma fatta %.*s usando %s key ID %08lX\n"
 
+#: g10/mainproc.c:895
+#, fuzzy
+msgid "encrypted message is valid\n"
+msgstr "l'algoritmo di digest selezionato non è valido\n"
+
+#: g10/mainproc.c:899
+msgid "WARNING: encrypted message has been manipulated!\n"
+msgstr ""
+
+#: g10/mainproc.c:904
+#, fuzzy, c-format
+msgid "Can't check MDC: %s\n"
+msgstr "Impossibile controllare la firma: %s\n"
+
 #. just in case that we have no userid
-#: g10/mainproc.c:881 g10/mainproc.c:892
+#: g10/mainproc.c:925 g10/mainproc.c:936
 msgid "BAD signature from \""
 msgstr "Firma NON corretta da \""
 
-#: g10/mainproc.c:882 g10/mainproc.c:893
+#: g10/mainproc.c:926 g10/mainproc.c:937
 msgid "Good signature from \""
 msgstr "Buona firma da \""
 
-#: g10/mainproc.c:884
+#: g10/mainproc.c:928
 #, fuzzy
 msgid "                aka \""
 msgstr "importate: %lu"
 
-#: g10/mainproc.c:930
+#: g10/mainproc.c:974
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Impossibile controllare la firma: %s\n"
 
-#: g10/mainproc.c:1003
+#: g10/mainproc.c:1047
 msgid "old style (PGP 2.x) signature\n"
 msgstr ""
 
-#: g10/mainproc.c:1008
+#: g10/mainproc.c:1052
 msgid "invalid root packet detected in proc_tree()\n"
 msgstr ""
 
@@ -2247,7 +2349,7 @@ msgstr ""
 "L'uso di chiavi RSA è deprecato; per favore in futuro considera di creare e\n"
 "usare una nuova chiave.\n"
 
-#: g10/misc.c:235
+#: g10/misc.c:236
 msgid "this cipher algorithm is depreciated; please use a more standard one!\n"
 msgstr ""
 
@@ -2261,7 +2363,7 @@ msgstr "impossibile bloccare il portachiavi pubblico: %s\n"
 msgid "subpacket of type %d has critical bit set\n"
 msgstr ""
 
-#: g10/passphrase.c:151
+#: g10/passphrase.c:157
 msgid ""
 "\n"
 "You need a passphrase to unlock the secret key for\n"
@@ -2271,22 +2373,22 @@ msgstr ""
 "Ti serve una passphrase per sbloccare la chiave segreta\n"
 "dell'utente: \""
 
-#: g10/passphrase.c:160
+#: g10/passphrase.c:166
 #, fuzzy, c-format
 msgid "%u-bit %s key, ID %08lX, created %s"
 msgstr "(chiave %2$s di %1$u-bit, ID %3$08lX, creata il %4$s)\n"
 
-#: g10/passphrase.c:165
+#: g10/passphrase.c:171
 #, c-format
 msgid " (main key ID %08lX)"
 msgstr ""
 
-#: g10/passphrase.c:184
+#: g10/passphrase.c:190
 #, fuzzy
 msgid "Enter passphrase: "
 msgstr "Inserisci la passphrase: "
 
-#: g10/passphrase.c:188
+#: g10/passphrase.c:194
 #, fuzzy
 msgid "Repeat passphrase: "
 msgstr "Ripeti la passphrase: "
@@ -2329,44 +2431,48 @@ msgstr "l'algoritmo di protezione %d non 
 msgid "NOTE: cipher algorithm %d not found in preferences\n"
 msgstr "nota: algoritmo di cifratura %d non trovato nelle impostazioni\n"
 
-#: g10/seckey-cert.c:57
+#: g10/seckey-cert.c:55
 #, c-format
 msgid "protection algorithm %d is not supported\n"
 msgstr "l'algoritmo di protezione %d non è gestito\n"
 
-#: g10/seckey-cert.c:177
+#: g10/seckey-cert.c:171
 msgid "Invalid passphrase; please try again ...\n"
 msgstr "Passphrase non valida; riprova...\n"
 
-#: g10/seckey-cert.c:232
+#: g10/seckey-cert.c:227
 #, fuzzy
 msgid "WARNING: Weak key detected - please change passphrase again.\n"
 msgstr ""
 "Attenzione: individuata una chiave debole - per favore cambia ancora la\n"
 "passphrase.\n"
 
-#: g10/sig-check.c:195
+#: g10/sig-check.c:186
+msgid "assuming bad MDC due to an unknown critical bit\n"
+msgstr ""
+
+#: g10/sig-check.c:282
 msgid ""
 "this is a PGP generated ElGamal key which is NOT secure for signatures!\n"
 msgstr ""
 "questa è una chiave ElGamal generata da PGP che NON è sicura per le firme!\n"
 
-#: g10/sig-check.c:203
+#: g10/sig-check.c:290
 #, fuzzy, c-format
 msgid "public key is %lu second newer than the signature\n"
 msgstr "chiave %08lX: user id senza firma\n"
 
-#: g10/sig-check.c:204
+#: g10/sig-check.c:291
 #, fuzzy, c-format
 msgid "public key is %lu seconds newer than the signature\n"
 msgstr "chiave %08lX: user id senza firma\n"
 
-#: g10/sig-check.c:220
+#: g10/sig-check.c:307
 #, fuzzy, c-format
 msgid "NOTE: signature key expired %s\n"
 msgstr "attenzione: firma della chiave scaduta il %s\n"
 
-#: g10/sig-check.c:277
+#: g10/sig-check.c:364
 msgid "assuming bad signature due to an unknown critical bit\n"
 msgstr ""
 
@@ -2375,7 +2481,7 @@ msgstr ""
 msgid "%s signature from: %s\n"
 msgstr "Firma NON corretta da \""
 
-#: g10/sign.c:210 g10/sign.c:493
+#: g10/sign.c:210 g10/sign.c:496
 #, fuzzy, c-format
 msgid "can't create %s: %s\n"
 msgstr "%s: impossibile creare: %s\n"
@@ -2385,11 +2491,6 @@ msgstr "%s: impossibile creare: %s\n"
 msgid "signing:"
 msgstr "sign"
 
-#: g10/sign.c:346
-#, fuzzy, c-format
-msgid "WARNING: `%s' is an empty file\n"
-msgstr "%s: attenzione: file vuoto\n"
-
 #: g10/textfilter.c:122
 #, c-format
 msgid "can't handle text lines longer than %d characters\n"
@@ -2400,12 +2501,12 @@ msgstr ""
 msgid "input line longer than %d characters\n"
 msgstr ""
 
-#: g10/tdbio.c:116 g10/tdbio.c:1504
+#: g10/tdbio.c:116 g10/tdbio.c:1505
 #, fuzzy, c-format
 msgid "trustdb rec %lu: lseek failed: %s\n"
 msgstr "aggiornamento della chiave segreta fallito: %s\n"
 
-#: g10/tdbio.c:122 g10/tdbio.c:1511
+#: g10/tdbio.c:122 g10/tdbio.c:1512
 #, c-format
 msgid "trustdb rec %lu: write failed (n=%d): %s\n"
 msgstr ""
@@ -2434,12 +2535,12 @@ msgstr "%s: impossibile creare: %s\n"
 msgid "%s: directory does not exist!\n"
 msgstr ""
 
-#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1325 g10/tdbio.c:457
+#: g10/openfile.c:111 g10/openfile.c:181 g10/ringedit.c:1344 g10/tdbio.c:457
 #, c-format
 msgid "%s: can't create: %s\n"
 msgstr "%s: impossibile creare: %s\n"
 
-#: g10/tdbio.c:472 g10/tdbio.c:520
+#: g10/tdbio.c:472 g10/tdbio.c:521
 #, fuzzy, c-format
 msgid "%s: can't create lock\n"
 msgstr "%s: impossibile creare: %s\n"
@@ -2454,83 +2555,83 @@ msgstr ""
 msgid "%s: invalid trustdb created\n"
 msgstr "%s: impossibile creare: %s\n"
 
-#: g10/tdbio.c:492
+#: g10/tdbio.c:493
 #, fuzzy, c-format
 msgid "%s: trustdb created\n"
 msgstr "%s: impossibile creare: %s\n"
 
-#: g10/tdbio.c:529
+#: g10/tdbio.c:530
 #, fuzzy, c-format
 msgid "%s: invalid trustdb\n"
 msgstr "aggiornamento del trustdb fallito: %s\n"
 
-#: g10/tdbio.c:562
+#: g10/tdbio.c:563
 #, fuzzy, c-format
 msgid "%s: failed to create hashtable: %s\n"
 msgstr "%s: impossibile creare: %s\n"
 
-#: g10/tdbio.c:570
+#: g10/tdbio.c:571
 #, fuzzy, c-format
 msgid "%s: error updating version record: %s\n"
 msgstr "%s: errore nel controllare la chiave: %s\n"
 
-#: g10/tdbio.c:586 g10/tdbio.c:625 g10/tdbio.c:647 g10/tdbio.c:677
-#: g10/tdbio.c:702 g10/tdbio.c:1437 g10/tdbio.c:1464
+#: g10/tdbio.c:587 g10/tdbio.c:626 g10/tdbio.c:648 g10/tdbio.c:678
+#: g10/tdbio.c:703 g10/tdbio.c:1438 g10/tdbio.c:1465
 #, fuzzy, c-format
 msgid "%s: error reading version record: %s\n"
 msgstr "%s: errore nel controllare la chiave: %s\n"
 
-#: g10/tdbio.c:599 g10/tdbio.c:658
+#: g10/tdbio.c:600 g10/tdbio.c:659
 #, fuzzy, c-format
 msgid "%s: error writing version record: %s\n"
 msgstr "%s: errore nel controllare la chiave: %s\n"
 
-#: g10/tdbio.c:1131
+#: g10/tdbio.c:1132
 #, fuzzy, c-format
 msgid "trustdb: lseek failed: %s\n"
 msgstr "aggiornamento della chiave segreta fallito: %s\n"
 
-#: g10/tdbio.c:1139
+#: g10/tdbio.c:1140
 #, fuzzy, c-format
 msgid "trustdb: read failed (n=%d): %s\n"
 msgstr "aggiornamento del trustdb fallito: %s\n"
 
-#: g10/tdbio.c:1160
+#: g10/tdbio.c:1161
 #, fuzzy, c-format
 msgid "%s: not a trustdb file\n"
 msgstr "aggiornamento del trustdb fallito: %s\n"
 
-#: g10/tdbio.c:1176
+#: g10/tdbio.c:1177
 #, c-format
 msgid "%s: version record with recnum %lu\n"
 msgstr ""
 
-#: g10/tdbio.c:1181
+#: g10/tdbio.c:1182
 #, fuzzy, c-format
 msgid "%s: invalid file version %d\n"
 msgstr "header della firma in chiaro non valido\n"
 
-#: g10/tdbio.c:1470
+#: g10/tdbio.c:1471
 #, fuzzy, c-format
 msgid "%s: error reading free record: %s\n"
 msgstr "%s: errore nel controllare la chiave: %s\n"
 
-#: g10/tdbio.c:1478
+#: g10/tdbio.c:1479
 #, fuzzy, c-format
 msgid "%s: error writing dir record: %s\n"
 msgstr "%s: errore nel controllare la chiave: %s\n"
 
-#: g10/tdbio.c:1488
+#: g10/tdbio.c:1489
 #, c-format
 msgid "%s: failed to zero a record: %s\n"
 msgstr ""
 
-#: g10/tdbio.c:1518
+#: g10/tdbio.c:1519
 #, c-format
 msgid "%s: failed to append a record: %s\n"
 msgstr ""
 
-#: g10/tdbio.c:1629
+#: g10/tdbio.c:1630
 #, fuzzy
 msgid "The trustdb is corrupted; please run \"gpgm --fix-trustdb\".\n"
 msgstr "Il trustdb è rovinato; per favore esegui \"gpgm --fix-trust-db\".\n"
@@ -2743,7 +2844,7 @@ msgstr "Troppe preferenze"
 msgid "Too many preference items"
 msgstr "Troppi elementi di preferenza"
 
-#: g10/trustdb.c:1549 g10/trustdb.c:3045 g10/trustdb.c:3075
+#: g10/trustdb.c:1549 g10/trustdb.c:3075 g10/trustdb.c:3105
 msgid "WARNING: can't yet handle long pref records\n"
 msgstr ""