Expiration time works (I hope so)
authorWerner Koch <wk@gnupg.org>
Fri, 20 Nov 1998 17:42:18 +0000 (17:42 +0000)
committerWerner Koch <wk@gnupg.org>
Fri, 20 Nov 1998 17:42:18 +0000 (17:42 +0000)
35 files changed:
INSTALL
NEWS
PROJECTS
TODO
VERSION
doc/OpenPGP
doc/gpg.1pod
g10/ChangeLog
g10/armor.c
g10/filter.h
g10/g10.c
g10/getkey.c
g10/keyedit.c
g10/keygen.c
g10/keyid.c
g10/main.h
g10/mainproc.c
g10/options.h
g10/parse-packet.c
g10/pubring.asc
g10/sign.c
include/util.h
po/ChangeLog
po/Makefile.in.in
po/de.glo [new file with mode: 0644]
po/de.po
po/en.po
po/es_ES.po
po/fr.po
po/it.po
po/ru.po
scripts/ChangeLog
scripts/mkdiff
util/ChangeLog
util/miscutil.c

diff --git a/INSTALL b/INSTALL
index 60252d1..a6ccd16 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -34,7 +34,8 @@ Problems
 ========
 
 If you get unresolved externals "gettext" you should run configure again
-with the option "--with-included-gettext".
+with the option "--with-included-gettext"; this is version 0.10.35 which
+is available at alpha.gnu.org.
 
 If you have other compile problems, try the configure options
 "--with-included-zlib" or "--disable-nls" (See ABOUT-NLS)
diff --git a/NEWS b/NEWS
index fb03b4e..19a31d7 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,10 @@
 This is NOT a released version!
 -------------------------------
 
+    * Fixed the way the key expiration time is stored. If you have
+      an expiration time on your key you should fix it with --edit-key
+      and the command "expire".  I apologize for this inconvenience.
+
     * Add option --charset to support "koi8-r" encoding of user ids.
       (Not yet tested).
 
@@ -14,6 +18,16 @@ This is NOT a released version!
 
     * Spanish translation by Urko Lusa.
 
+    * Patch files are from now on signed.  See the man page
+      for the new option --not-dash-escaped.
+
+    * New syntax: --edit-key <userID> [<commands>]
+      If you run it without --batch the commands are executed and then
+      you are put into normal mode unless you use "quit" or "save" as
+      one of the commands.  When in batch mode, the program quits after
+      the last command, so you have to use "save" if you did some changes.
+      It does not yet work completey, but may be used to list so the
+      keys etc.
 
 
 Noteworthy changes in version 0.4.3
index 842d2a3..763c611 100644 (file)
--- a/PROJECTS
+++ b/PROJECTS
@@ -1,22 +1,27 @@
 
-  * Urko Lusa <ulusa@lacueva.ddns.org> is working on es.po
-
-
   * Check if an object (a message, detached sign, public key, or whatever)
     is signed by definite user, i.e. define user
     (userid, or any other unique identification) on command line.
 
+    * Change the internal represention of keyid into a struct which
+      can also hold the localid and extend the localid to hold information
+      of the subkey number because two subkeys may have the same keyid.
+
+    * signature verification is done duplicated on import: in import.c and
+      tehn in trustdb.c too.  Maybe we can use a flag to skip the actual
+      verification process (this should work if we use the same keyblock,
+      but I'm not sure how to accomplish that).  Another way is to allow
+      the import of bogus data and let trustdb mark these keys as invalid;
+      I see an advantage in this that it may help to prevent a DoS on a
+      keyserver by sending him a lot of bogus signatures which he has
+      to check - Needs further investigation.
 
   * abstraction of the MPI
 
   * Add a way to override the current cipher/md implementations
     by others (using extensions)
 
-  * add a fast-import command which does not do the signature checks
-    of other keys (processing of the sdir hintlist).  The signatures
-    may then be verified by a maintainence pass.
-
-  * Not GnupG replated:  What about option completion in bash?
+  * Not GnuPG replated:  What about option completion in bash?
     Can "--dump-options" be used for this or should we place the
     options in a special ELF segment?
 
diff --git a/TODO b/TODO
index 8f7809d..8e80e2d 100644 (file)
--- a/TODO
+++ b/TODO
@@ -4,9 +4,9 @@
 
     * Check Berkeley BD - it is in glibc -any licensing problems?
 
-    * I noticed, that we sometimes have only 3 items in atrustrecord, but
+    * I noticed, that we sometimes have only 3 items in a trustrecord, but
       a next pointer ro more records - check wehther the reuse code really
-      works. Maybe this is the reason for the "Hmmm puiblic key lost"
+      works. Maybe this is the reason for the "Hmmm public key lost"
 
     * Update the keyring at ftp.guug.de
 
@@ -14,9 +14,6 @@
 
     * check support for mpi/powerpc
 
-    * add a note, that gettext 10.35 is needed (for gettext) - and install
-      it on tobold.
-
     * use zlib 1.1.13 to avoid a bug with 13 bit windows
       but there are more problems with large files
 
        #define USE_DYNAMIC_LINKING
        #define HAVE_DL_DLOPEN
        and the ld option -export-dynamic.
+      Why does autoconf not figure that out?
 
     * clearsig: keep lineendings as they are. Remember that trailings
       blanks are not hashed.
 
     * Check revocation and expire stuff.
 
+    * Always use the latest key signature (import).  This is needed, so
+      that we are able to chnage the expiration time or other info in the
+      selfsignature
+
     * OpenBSD: dynamic loading with dlopen works on OpenBSD, but:
        OpenBSD binaries are a.out, so every symbol begins with "_"
 
@@ -58,8 +60,6 @@
     * add some sanity checks to read_keyblock, so that we are sure that
      the minimal requirements are met (?)
 
-    * decryption of message with multiple recipients does not work.
-
     * preferences of hash algorithms are not yet used.
 
     * rewrite --list-packets or put it into another tool.
     * Burn the buffers used by fopen(), or use read(2). Does this
       really make sense?
 
-    * Change the buffering to a mbuf like scheme? Need it for PSST anyway.
+    * Change the buffering to a mbuf like scheme? Need it for PSST anyway;
+      see Michael's proposal.
     * add checking of armor trailers
-    * remove all "Fixmes"
-
-    * Change the internal represention of keyid into a struct which
-      can also hold the localid and extend the localid to hold information
-      of the subkey number because two subkeys may have the same keyid.
+    * remove all "Fixmes" ;-)
 
     * add an option to re-create a public key from a secret key; we
       can do this in trustdb.c:verify_own_keys.
 
-    * signature verification is done duplicated on import: in import.c and
-      tehn in trustdb.c too.  Maybe we can use a flag to skip the actual
-      verification process (this should work if we use the same keyblock,
-      but I'm not sure how to accomplish that).  Another way is to allow
-      the import of bogus data and let trustdb mark these keys as invalid;
-      I see an advantage in this that it may help to prevent a DoS on a
-      keyserver by sending him a lot of bogus signatures which he has
-      to check - Needs further investigation.
-
     * change the fake_data stuff to mpi_set_opaque
 
     * Is it okay to use gettext for the help system?
 
     * Add some stuff for DU cc
 
-    * Use "user ID", "trustdb" and "WARNING".
+    * Use "user ID", "trustdb", "NOTE" and "WARNING".
 
diff --git a/VERSION b/VERSION
index a513707..5f75ebf 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.4.3b
+0.4.3c
index 62f9cba..60fede3 100644 (file)
@@ -1,7 +1,8 @@
                    GnuPG and OpenPGP
                    =================
 
-   See RFC2440 for a description of OpenPGP.
+   See RFC2440 for a description of OpenPGP.  I have an annotated version
+   of this RFC online: http://www.d.shuttle.de/isil/gnupg/rfc2440.html
 
 
 
index 0258139..ebee20d 100644 (file)
@@ -401,6 +401,16 @@ B<--throw-keyid>
     against traffic analysis.  It may slow down the decryption
     process because all available secret keys are tried.
 
+B<--not-dash-escaped>
+    This option changes the behaviour of cleartext signature
+    so that they can be used for patch files. You should not
+    send such an armored file via email because all spaces
+    and line endings are hashed too.  You can not use this
+    option for data which has 5 dashes somewhere at the
+    beginning of a line - patch files don't have this.
+    A special armor header line tells GnuPG about this
+    cleartext signature framework.
+
 B<--passphrase-fd> I<n>
     Read the passphrase from file descriptor I<n>. If you use
     0 for I<n>, the passphrase will be read from stdin.  This
index f904c37..be2a984 100644 (file)
@@ -1,3 +1,25 @@
+Fri Nov 20 16:54:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
+
+       * g10.c (main): New option --not-dash-escaped
+       * sign.c (write_dashed_escaped): Ditto.
+       * armor.c (find_header): Support for NotDashEscaped header.
+
+Thu Nov 19 07:17:31 1998  Werner Koch  <werner.koch@guug.de>
+
+       * parse-packet.c (dump_sig_subpkt): Fixed expire listing
+       * getkey.c (merge_keys_and_selfsig): Fixed expire calculation.
+       (merge_one_pk_and_selfsig): Ditto.
+       * keyedit.c (menu_expire). Ditto.
+       * keygen.c (keygen_add_key_expire): Ditto.
+       (ask_expire_interval): New and changed all local function to use
+       this instead.
+       (keygen_add_key_expire): Opaque should now be a public key;
+       changed all callers.
+
+       * parse.packet.c (parse): use skip_rest to skip packets.
+
+       * keyedit.c (keyedit_menu): New arg for cmdline cmds.
+
 Wed Nov 18 20:33:50 1998  Werner Koch  (wk@isil.d.shuttle.de)
 
        * trustdb.c (check_trustdb): Now rechecks all gived userids.
index c1da9ac..91eb551 100644 (file)
@@ -1,4 +1,4 @@
-/* armor.c - Armor filter
+/* armor.c - Armor flter
  *     Copyright (C) 1998 Free Software Foundation, Inc.
  *
  * This file is part of GnuPG.
@@ -74,7 +74,10 @@ typedef enum {
     fhdrENDClearsig,
     fhdrENDClearsigHelp,
     fhdrTESTSpaces,
+    fhdrCLEARSIGSimple,
+    fhdrCLEARSIGSimpleNext,
     fhdrTEXT,
+    fhdrTEXTSimple,
     fhdrERROR,
     fhdrERRORShow,
     fhdrEOF
@@ -110,7 +113,7 @@ static fhdr_state_t find_header( fhdr_state_t state,
                                 byte *buf, size_t *r_buflen,
                                 IOBUF a, size_t n,
                                 unsigned *r_empty, int *r_hashes,
-                                int only_keyblocks );
+                                int only_keyblocks, int *not_dashed );
 
 
 static void
@@ -262,7 +265,7 @@ parse_hash_header( const char *line )
 static fhdr_state_t
 find_header( fhdr_state_t state, byte *buf, size_t *r_buflen,
             IOBUF a, size_t n, unsigned *r_empty, int *r_hashes,
-            int only_keyblocks )
+            int only_keyblocks, int *not_dashed )
 {
     int c=0, i;
     const char *s;
@@ -343,8 +346,15 @@ find_header( fhdr_state_t state, byte *buf, size_t *r_buflen,
                            putc('\n', stderr);
                        }
                        if( clearsig && !(hashes=parse_hash_header( buf )) ) {
-                           log_error(_("invalid clearsig header\n"));
-                           state = fhdrERROR;
+                           if( strlen(buf) > 15
+                               && !memcmp( buf, "NotDashEscaped:", 15 ) ) {
+                               *not_dashed = 1;
+                               state = fhdrWAITHeader;
+                           }
+                           else {
+                               log_error(_("invalid clearsig header\n"));
+                               state = fhdrERROR;
+                           }
                        }
                        else {
                            state = fhdrWAITHeader;
@@ -449,6 +459,31 @@ find_header( fhdr_state_t state, byte *buf, size_t *r_buflen,
                log_info(_("armor: %s\n"), head_strings[hdr_line]);
            break;
 
+         case fhdrCLEARSIGSimple:
+           /* we are at the begin of a new line */
+         case fhdrCLEARSIGSimpleNext:
+           n = 0;
+           c = 0;
+           while( n < buflen && (c=iobuf_get(a)) != -1 ) {
+               buf[n++] = c;
+               if( c == '\n' )
+                   break;
+           }
+           buf[n] = 0;
+           if( c == -1 )
+               state = fhdrEOF;
+           else if( state == fhdrCLEARSIGSimple
+                    && n > 15 && !memcmp(buf, "-----", 5 ) ) {
+               if( c == '\n' )
+                   buf[n-1] = 0;
+               state = fhdrENDClearsig;
+           }
+           else if( c == '\n' )
+               state = fhdrCLEARSIGSimple;
+           else
+               state = fhdrCLEARSIGSimpleNext;
+           break;
+
          case fhdrCLEARSIG:
          case fhdrEMPTYClearsig:
          case fhdrREADClearsig:
@@ -472,6 +507,10 @@ find_header( fhdr_state_t state, byte *buf, size_t *r_buflen,
            break;
 
          case fhdrCHECKDashEscaped3:
+           if( *not_dashed ) {
+               state = fhdrTEXTSimple;
+               break;
+           }
            if( !(n > 1 && buf[0] == '-' && buf[1] == ' ' ) ) {
                state = fhdrTEXT;
                break;
@@ -501,7 +540,7 @@ find_header( fhdr_state_t state, byte *buf, size_t *r_buflen,
            /* check the clearsig line */
            if( n > 15 && !memcmp(buf, "-----", 5 ) )
                state = fhdrENDClearsig;
-           else if( buf[0] == '-' && buf[1] == ' ' )
+           else if( buf[0] == '-' && buf[1] == ' ' && !*not_dashed )
                state = fhdrCHECKDashEscaped;
            else {
                state = fhdrTESTSpaces;
@@ -512,7 +551,7 @@ find_header( fhdr_state_t state, byte *buf, size_t *r_buflen,
            /* check the clearsig line */
            if( n > 15 && !memcmp(buf, "-----", 5 ) )
                state = fhdrENDClearsig;
-           else if( buf[0] == '-' && buf[1] == ' ' )
+           else if( buf[0] == '-' && buf[1] == ' ' && !*not_dashed )
                state = fhdrCHECKDashEscaped2;
            else {
                state = fhdrREADClearsig;
@@ -591,6 +630,11 @@ find_header( fhdr_state_t state, byte *buf, size_t *r_buflen,
 
     if( clearsig && state == fhdrTEXT )
        state = fhdrCLEARSIG;
+    else if( clearsig && state == fhdrTEXTSimple ) {
+       state = fhdrCLEARSIGSimple;
+       buf[n] = '\n';
+       n++;
+    }
 
     if( state == fhdrCLEARSIG || state == fhdrREADClearsig ) {
        /* append CR,LF after removing trailing wspaces */
@@ -631,7 +675,7 @@ check_input( armor_filter_context_t *afx, IOBUF a )
     n = DIM(afx->helpbuf);
     state = find_header( state, afx->helpbuf, &n, a,
                                afx->helplen, &emplines, &afx->hashes,
-                               afx->only_keyblocks );
+                               afx->only_keyblocks, &afx->not_dash_escaped );
     switch( state ) {
       case fhdrNOArmor:
        afx->inp_checked = 1;
@@ -649,6 +693,8 @@ check_input( armor_filter_context_t *afx, IOBUF a )
 
       case fhdrNullClearsig:
       case fhdrCLEARSIG: /* start fake package mode (for clear signatures) */
+      case fhdrCLEARSIGSimple:
+      case fhdrCLEARSIGSimpleNext:
        afx->helplen = n;
        afx->helpidx = 0;
        afx->faked = 1;
@@ -718,7 +764,8 @@ fake_packet( armor_filter_context_t *afx, IOBUF a,
        state = find_header( state, afx->helpbuf, &n, a,
                              state == fhdrNullClearsig? afx->helplen:0,
                                                &emplines, &afx->hashes,
-                                               afx->only_keyblocks );
+                                               afx->only_keyblocks,
+                                               &afx->not_dash_escaped );
        switch( state) {
          case fhdrERROR:
            invalid_armor();
@@ -733,6 +780,8 @@ fake_packet( armor_filter_context_t *afx, IOBUF a,
 
          case fhdrREADClearsig:
          case fhdrREADClearsigNext:
+         case fhdrCLEARSIGSimple:
+         case fhdrCLEARSIGSimpleNext:
            afx->helplen = n;
            break;
 
index 1cf8f8e..f4d9249 100644 (file)
@@ -45,6 +45,7 @@ typedef struct {
     int inp_bypass;    /* set if the input is not armored */
     int any_data;
     const char *hdrlines;
+    int not_dash_escaped;
 } armor_filter_context_t;
 
 
index d2e196e..2d8bf61 100644 (file)
--- a/g10/g10.c
+++ b/g10/g10.c
@@ -146,6 +146,7 @@ enum cmd_and_opt_values { aNull = 0,
     oS2KDigest,
     oS2KCipher,
     oCharset,
+    oNotDashEscaped,
 aTest };
 
 
@@ -294,6 +295,7 @@ static ARGPARSE_OPTS opts[] = {
     { oRunAsShmCP, "run-as-shm-coprocess", 4, "@" },
     { oSetFilename, "set-filename", 2, "@" },
     { oComment, "comment", 2, "@" },
+    { oNotDashEscaped, "not-dash-escaped", 0, "@" },
 {0} };
 
 
@@ -767,6 +769,7 @@ main( int argc, char **argv )
                log_error(_("%s is not a valid character set\n"),
                                                    pargs.r.ret_str);
            break;
+         case oNotDashEscaped: opt.not_dash_escaped = 1; break;
 
          default : pargs.err = configfp? 1:2; break;
        }
@@ -988,9 +991,17 @@ main( int argc, char **argv )
 
       case aSignKey: /* sign the key given as argument */
       case aEditKey: /* Edit a key signature */
-       if( argc != 1 )
-           wrong_args(_("--edit-key username"));
-       keyedit_menu(fname, locusr );
+       if( !argc )
+           wrong_args(_("--edit-key username [commands]"));
+       if( argc > 1 ) {
+           sl = NULL;
+           for( argc--, argv++ ; argc; argc--, argv++ )
+               append_to_strlist( &sl, *argv );
+           keyedit_menu( fname, locusr, sl );
+           free_strlist(sl);
+       }
+       else
+           keyedit_menu(fname, locusr, NULL );
        break;
 
       #endif /* IS_G10 */
index dcc90a5..a6d0ed1 100644 (file)
@@ -721,7 +721,7 @@ merge_one_pk_and_selfsig( KBNODE keyblock, KBNODE knode )
             */
            const byte *p;
            p = parse_sig_subpkt( sig->hashed_data, SIGSUBPKT_KEY_EXPIRE, NULL );
-           pk->expiredate = p? buffer_to_u32(p):0;
+           pk->expiredate = p? pk->timestamp + buffer_to_u32(p):0;
            /* fixme: add usage etc. to pk */
            break;
        }
@@ -739,7 +739,7 @@ merge_keys_and_selfsig( KBNODE keyblock )
     PKT_secret_key *sk = NULL;
     PKT_signature *sig;
     KBNODE k;
-    u32 kid[2];
+    u32 kid[2] = { 0, 0 };
 
     for(k=keyblock; k; k = k->next ) {
        if( k->pkt->pkttype == PKT_PUBLIC_KEY
@@ -747,7 +747,7 @@ merge_keys_and_selfsig( KBNODE keyblock )
            pk = k->pkt->pkt.public_key; sk = NULL;
            if( pk->version < 4 )
                pk = NULL; /* not needed for old keys */
-           else
+           else if( k->pkt->pkttype == PKT_PUBLIC_KEY )
                keyid_from_pk( pk, kid );
        }
        else if( k->pkt->pkttype == PKT_SECRET_KEY
@@ -755,7 +755,7 @@ merge_keys_and_selfsig( KBNODE keyblock )
            pk = NULL; sk = k->pkt->pkt.secret_key;
            if( sk->version < 4 )
                sk = NULL;
-           else
+           else if( k->pkt->pkttype == PKT_SECRET_KEY )
                keyid_from_sk( sk, kid );
        }
        else if( (pk || sk ) && k->pkt->pkttype == PKT_SIGNATURE
@@ -770,12 +770,12 @@ merge_keys_and_selfsig( KBNODE keyblock )
            const byte *p;
            p = parse_sig_subpkt( sig->hashed_data, SIGSUBPKT_KEY_EXPIRE, NULL );
            if( pk ) {
-               pk->expiredate = p? buffer_to_u32(p):0;
+               pk->expiredate = p? pk->timestamp + buffer_to_u32(p):0;
                /* fixme: add usage etc. */
                pk = NULL; /* use only the first self signature */
            }
            else {
-               sk->expiredate = p? buffer_to_u32(p):0;
+               sk->expiredate = p? sk->timestamp + buffer_to_u32(p):0;
                sk = NULL; /* use only the first self signature */
            }
        }
index 2d3a0d0..8ed3167 100644 (file)
@@ -475,7 +475,7 @@ fix_keyblock( KBNODE keyblock )
  */
 
 void
-keyedit_menu( const char *username, STRLIST locusr )
+keyedit_menu( const char *username, STRLIST locusr, STRLIST commands )
 {
     enum cmdids { cmdNONE = 0,
           cmdQUIT, cmdHELP, cmdFPR, cmdLIST, cmdSELUID, cmdCHECK, cmdSIGN,
@@ -527,9 +527,10 @@ keyedit_menu( const char *username, STRLIST locusr )
     int modified = 0;
     int sec_modified = 0;
     int toggle;
+    int have_commands = !!commands;
 
 
-    if( opt.batch ) {
+    if( opt.batch && !have_commands ) {
        log_error(_("can't do that in batchmode\n"));
        goto leave;
     }
@@ -574,8 +575,21 @@ keyedit_menu( const char *username, STRLIST locusr )
        }
        do {
            m_free(answer);
-           answer = cpr_get(N_("keyedit.cmd"), _("Command> "));
-           cpr_kill_prompt();
+           if( have_commands ) {
+               if( commands ) {
+                   answer = m_strdup( commands->d );
+                   commands = commands->next;
+               }
+               else if( opt.batch ) {
+                   answer = m_strdup("quit");
+               }
+               else
+                   have_commands = 0;
+           }
+           if( !have_commands ) {
+               answer = cpr_get(N_("keyedit.cmd"), _("Command> "));
+               cpr_kill_prompt();
+           }
            trim_spaces(answer);
        } while( *answer == '#' );
 
@@ -617,6 +631,8 @@ keyedit_menu( const char *username, STRLIST locusr )
            break;
 
          case cmdQUIT:
+           if( have_commands )
+               goto leave;
            if( !modified && !sec_modified )
                goto leave;
            if( !cpr_get_answer_is_yes(N_("keyedit.save.okay"),
@@ -1023,7 +1039,7 @@ menu_adduid( KBNODE pub_keyblock, KBNODE sec_keyblock )
     assert(pk && sk );
 
     rc = make_keysig_packet( &sig, pk, uid, NULL, sk, 0x13, 0,
-                            keygen_add_std_prefs, sk );
+                            keygen_add_std_prefs, pk );
     free_secret_key( sk );
     if( rc ) {
        log_error("signing failed: %s\n", g10_errstr(rc) );
@@ -1168,7 +1184,7 @@ menu_delkey( KBNODE pub_keyblock, KBNODE sec_keyblock )
 static int
 menu_expire( KBNODE pub_keyblock, KBNODE sec_keyblock )
 {
-    int n1, rc;
+    int n1, signumber, rc;
     u32 expiredate;
     int mainkey=0;
     PKT_secret_key *sk;    /* copy of the main sk */
@@ -1195,26 +1211,24 @@ menu_expire( KBNODE pub_keyblock, KBNODE sec_keyblock )
     }
 
     expiredate = ask_expiredate();
-    /* fixme: check that expiredate is > key creation date */
-
-    /* get the secret key , make a copy and set the expiration time into
-     * that key (because keygen_add-key-expire expects it there)
-     */
     node = find_kbnode( sec_keyblock, PKT_SECRET_KEY );
     sk = copy_secret_key( NULL, node->pkt->pkt.secret_key);
-    sk->expiredate = expiredate;
 
     /* Now we can actually change the self signature(s) */
     main_pk = sub_pk = NULL;
     uid = NULL;
+    signumber = 0;
     for( node=pub_keyblock; node; node = node->next ) {
        if( node->pkt->pkttype == PKT_PUBLIC_KEY ) {
            main_pk = node->pkt->pkt.public_key;
            keyid_from_pk( main_pk, keyid );
+           main_pk->expiredate = expiredate;
        }
        else if( node->pkt->pkttype == PKT_PUBLIC_SUBKEY
-                && (node->flag & NODFLG_SELKEY ) )
+                && (node->flag & NODFLG_SELKEY ) ) {
            sub_pk = node->pkt->pkt.public_key;
+           sub_pk->expiredate = expiredate;
+       }
        else if( node->pkt->pkttype == PKT_USER_ID )
            uid = node->pkt->pkt.user_id;
        else if( main_pk && node->pkt->pkttype == PKT_SIGNATURE ) {
@@ -1222,16 +1236,31 @@ menu_expire( KBNODE pub_keyblock, KBNODE sec_keyblock )
            if( keyid[0] == sig->keyid[0] && keyid[1] == sig->keyid[1]
                && (    (mainkey && uid && (sig->sig_class&~3) == 0x10)
                     || (!mainkey && sig->sig_class == 0x18)  ) ) {
-               /* this is a selfsignature which should be replaced */
+               /* this is a selfsignature which is to be replaced */
                PKT_signature *newsig;
                PACKET *newpkt;
                KBNODE sn;
+               int signumber2 = 0;
+
+               signumber++;
+
+               if( (mainkey && main_pk->version < 4)
+                   || (!mainkey && sub_pk->version < 4 ) ) {
+                   log_info(_(
+                       "You can't change the expiration date of a v3 key\n"));
+                   free_secret_key( sk );
+                   return 0;
+               }
 
                /* find the corresponding secret self-signature */
                for( sn=sec_keyblock; sn; sn = sn->next ) {
-                   if( sn->pkt->pkttype == PKT_SIGNATURE
-                       && !cmp_signatures( sn->pkt->pkt.signature, sig ) )
-                       break;
+                   if( sn->pkt->pkttype == PKT_SIGNATURE ) {
+                       PKT_signature *b = sn->pkt->pkt.signature;
+                       if( keyid[0] == b->keyid[0] && keyid[1] == b->keyid[1]
+                           && sig->sig_class == b->sig_class
+                           && ++signumber2 == signumber )
+                           break;
+                   }
                }
                if( !sn )
                    log_info(_("No corresponding signature in secret ring\n"));
@@ -1240,11 +1269,11 @@ menu_expire( KBNODE pub_keyblock, KBNODE sec_keyblock )
                if( mainkey )
                    rc = make_keysig_packet( &newsig, main_pk, uid, NULL,
                                             sk, 0x13, 0,
-                                            keygen_add_std_prefs, sk );
+                                            keygen_add_std_prefs, main_pk );
                else
                    rc = make_keysig_packet( &newsig, main_pk, NULL, sub_pk,
                                             sk, 0x18, 0,
-                                            keygen_add_key_expire, sk );
+                                            keygen_add_key_expire, sub_pk );
                if( rc ) {
                    log_error("make_keysig_packet failed: %s\n",
                                                    g10_errstr(rc));
index a17d479..34f4d97 100644 (file)
@@ -54,12 +54,13 @@ write_uid( KBNODE root, const char *s )
 int
 keygen_add_key_expire( PKT_signature *sig, void *opaque )
 {
-    PKT_secret_key *sk = opaque;
+    PKT_public_key *pk = opaque;
     byte buf[8];
     u32  u;
 
-    if( sk->expiredate ) {
-       u = sk->expiredate;
+    if( pk->expiredate ) {
+       u = pk->expiredate > pk->timestamp? pk->expiredate - pk->timestamp
+                                         : pk->timestamp;
        buf[0] = (u >> 24) & 0xff;
        buf[1] = (u >> 16) & 0xff;
        buf[2] = (u >>  8) & 0xff;
@@ -135,7 +136,7 @@ write_selfsig( KBNODE root, KBNODE pub_root, PKT_secret_key *sk )
 
     /* and make the signature */
     rc = make_keysig_packet( &sig, pk, uid, NULL, sk, 0x13, 0,
-                            keygen_add_std_prefs, sk );
+                            keygen_add_std_prefs, pk );
     if( rc ) {
        log_error("make_keysig_packet failed: %s\n", g10_errstr(rc) );
        return rc;
@@ -176,7 +177,7 @@ write_keybinding( KBNODE root, KBNODE pub_root, PKT_secret_key *sk )
 
     /* and make the signature */
     rc = make_keysig_packet( &sig, pk, NULL, subpk, sk, 0x18, 0,
-                                   keygen_add_key_expire, sk );
+                                   keygen_add_key_expire, subpk );
     if( rc ) {
        log_error("make_keysig_packet failed: %s\n", g10_errstr(rc) );
        return rc;
@@ -192,7 +193,7 @@ write_keybinding( KBNODE root, KBNODE pub_root, PKT_secret_key *sk )
 
 static int
 gen_elg(int algo, unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
-       STRING2KEY *s2k, PKT_secret_key **ret_sk, u32 expiredate,
+       STRING2KEY *s2k, PKT_secret_key **ret_sk, u32 expireval,
                                                        int version )
 {
     int rc;
@@ -214,9 +215,9 @@ gen_elg(int algo, unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
     pk = m_alloc_clear( sizeof *pk );
     sk->timestamp = pk->timestamp = make_timestamp();
     sk->version = pk->version = version;
-    if( expiredate && expiredate < sk->timestamp )
-       expiredate = sk->timestamp; /* key generatio may take long */
-    sk->expiredate = pk->expiredate = expiredate;
+    if( expireval ) {
+       sk->expiredate = pk->expiredate = sk->timestamp + expireval;
+    }
     sk->pubkey_algo = pk->pubkey_algo = algo;
                       pk->pkey[0] = mpi_copy( skey[0] );
                       pk->pkey[1] = mpi_copy( skey[1] );
@@ -268,7 +269,7 @@ gen_elg(int algo, unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
  */
 static int
 gen_dsa(unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
-           STRING2KEY *s2k, PKT_secret_key **ret_sk, u32 expiredate )
+           STRING2KEY *s2k, PKT_secret_key **ret_sk, u32 expireval )
 {
     int rc;
     int i;
@@ -291,9 +292,9 @@ gen_dsa(unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
     pk = m_alloc_clear( sizeof *pk );
     sk->timestamp = pk->timestamp = make_timestamp();
     sk->version = pk->version = 4;
-    if( expiredate && expiredate < pk->timestamp )
-       expiredate = pk->timestamp; /* key generation may take long */
-    sk->expiredate = pk->expiredate = expiredate;
+    if( expireval ) {
+       sk->expiredate = pk->expiredate = sk->timestamp + expireval;
+    }
     sk->pubkey_algo = pk->pubkey_algo = PUBKEY_ALGO_DSA;
                       pk->pkey[0] = mpi_copy( skey[0] );
                       pk->pkey[1] = mpi_copy( skey[1] );
@@ -481,12 +482,12 @@ ask_keysize( int algo )
 }
 
 
-u32
-ask_expiredate()
+static u32
+ask_expire_interval()
 {
     char *answer;
     int valid_days=0;
-    u32 expiredate = 0;
+    u32 interval = 0;
 
     tty_printf(_("Please specify how long the key should be valid.\n"
                 "         0 = key does not expire\n"
@@ -494,7 +495,7 @@ ask_expiredate()
                 "      <n>w = key expires in n weeks\n"
                 "      <n>m = key expires in n months\n"
                 "      <n>y = key expires in n years\n"));
-    /* Note: The elgamal subkey for DSA has no exiration date because
+    /* Note: The elgamal subkey for DSA has no expiration date because
      * it must be signed with the DSA key and this one has the expiration
      * date */
 
@@ -520,12 +521,13 @@ ask_expiredate()
 
        if( !valid_days ) {
            tty_printf(_("Key does not expire at all\n"));
-           expiredate = 0;
+           interval = 0;
        }
        else {
-           expiredate = make_timestamp() + valid_days * 86400L;
+           interval = valid_days * 86400L;
            /* print the date when the key expires */
-           tty_printf(_("Key expires at %s\n"), asctimestamp(expiredate) );
+           tty_printf(_("Key expires at %s\n"),
+                       asctimestamp(make_timestamp() + interval ) );
        }
 
        if( !cpr_enabled()
@@ -534,9 +536,15 @@ ask_expiredate()
            break;
     }
     m_free(answer);
-    return expiredate;
+    return interval;
 }
 
+u32
+ask_expiredate()
+{
+    u32 x = ask_expire_interval();
+    return x? make_timestamp() + x : 0;
+}
 
 static int
 has_invalid_email_chars( const char *s )
@@ -804,7 +812,7 @@ generate_keypair()
     STRING2KEY *s2k;
     int rc;
     int algo;
-    u32 expiredate;
+    u32 expire;
     int v4;
     int both = 0;
 
@@ -820,7 +828,7 @@ generate_keypair()
        tty_printf(_("DSA keypair will have 1024 bits.\n"));
     }
     nbits = ask_keysize( algo );
-    expiredate = ask_expiredate();
+    expire = ask_expire_interval();
     uid = ask_user_id(0);
     if( !uid ) {
        log_error(_("Key generation cancelled.\n"));
@@ -847,10 +855,10 @@ generate_keypair()
 
     if( both )
        rc = do_create( PUBKEY_ALGO_DSA, 1024, pub_root, sec_root,
-                                              dek, s2k, &sk, expiredate, 1);
+                                              dek, s2k, &sk, expire, 1);
     else
        rc = do_create( algo,           nbits, pub_root, sec_root,
-                                              dek, s2k, &sk, expiredate, v4);
+                                              dek, s2k, &sk, expire, v4);
     if( !rc )
        write_uid(pub_root, uid );
     if( !rc )
@@ -862,7 +870,7 @@ generate_keypair()
 
     if( both ) {
        rc = do_create( algo, nbits, pub_root, sec_root,
-                                         dek, s2k, NULL, expiredate, 1 );
+                                         dek, s2k, NULL, expire, 1 );
        if( !rc )
            rc = write_keybinding(pub_root, pub_root, sk);
        if( !rc )
@@ -951,7 +959,7 @@ generate_subkeypair( KBNODE pub_keyblock, KBNODE sec_keyblock )
     KBNODE node;
     PKT_secret_key *sk = NULL; /* this is the primary sk */
     int v4, algo;
-    u32 expiredate;
+    u32 expire;
     unsigned nbits;
     char *passphrase = NULL;
     DEK *dek = NULL;
@@ -988,7 +996,7 @@ generate_subkeypair( KBNODE pub_keyblock, KBNODE sec_keyblock )
     algo = ask_algo( &v4, 1 );
     assert(algo);
     nbits = ask_keysize( algo );
-    expiredate = ask_expiredate();
+    expire = ask_expire_interval();
     if( !cpr_enabled() && !cpr_get_answer_is_yes(N_("keygen.sub.okay"),
                                                  _("Really create? ") ) )
        goto leave;
@@ -1002,7 +1010,7 @@ generate_subkeypair( KBNODE pub_keyblock, KBNODE sec_keyblock )
     }
 
     rc = do_create( algo, nbits, pub_keyblock, sec_keyblock,
-                                     dek, s2k, NULL, expiredate, v4 );
+                                     dek, s2k, NULL, expire, v4 );
     if( !rc )
        rc = write_keybinding(pub_keyblock, pub_keyblock, sk);
     if( !rc )
index fa5b923..21e7e12 100644 (file)
@@ -310,7 +310,7 @@ expirestr_from_pk( PKT_public_key *pk )
 
     if( !pk->expiredate )
        return "never     ";
-    atime =  pk->expiredate;
+    atime = pk->expiredate;
     tp = gmtime( &atime );
     sprintf(buffer,"%04d-%02d-%02d", 1900+tp->tm_year, tp->tm_mon+1, tp->tm_mday );
     return buffer;
index b950614..746a94d 100644 (file)
@@ -77,7 +77,7 @@ int check_key_signature( KBNODE root, KBNODE node, int *is_selfsig );
 int delete_key( const char *username, int secure );
 
 /*-- keyedit.c --*/
-void keyedit_menu( const char *username, STRLIST locusr );
+void keyedit_menu( const char *username, STRLIST locusr, STRLIST cmds );
 
 /*-- keygen.c --*/
 u32 ask_expiredate(void);
index 50600a1..aa90302 100644 (file)
@@ -278,13 +278,7 @@ proc_plaintext( CTX c, PACKET *pkt )
        md_enable( c->mfx.md, DIGEST_ALGO_SHA1 );
        md_enable( c->mfx.md, DIGEST_ALGO_MD5 );
     }
-  #if 0
-    if( c->mfx.md ) {
-       m_check(c->mfx.md);
-       if( c->mfx.md->list )
-           m_check( c->mfx.md->list );
-    }
-  #endif
+
     rc = handle_plaintext( pt, &c->mfx, c->sigs_only, clearsig );
     if( rc == G10ERR_CREATE_FILE && !c->sigs_only) {
        /* can't write output but we hash it anyway to
index 1502d74..538b175 100644 (file)
@@ -64,6 +64,7 @@ struct {
     int s2k_mode;
     int s2k_digest_algo;
     int s2k_cipher_algo;
+    int not_dash_escaped;
 } opt;
 
 
index a2923d9..2d82308 100644 (file)
@@ -288,7 +288,7 @@ parse( IOBUF inp, PACKET *pkt, int reqtype, ulong *retpos,
     }
 
     if( do_skip || !pkttype || (reqtype && pkttype != reqtype) ) {
-       skip_packet(inp, pkttype, pktlen);
+       skip_rest(inp, pktlen);
        *skip = 1;
        rc = 0;
        goto leave;
@@ -636,7 +636,8 @@ dump_sig_subpkt( int hashed, int type, int critical,
        break;
       case SIGSUBPKT_SIG_EXPIRE:
        if( length >= 4 )
-           printf("sig expires %s", strtimestamp( buffer_to_u32(buffer) ) );
+           printf("sig expires after %s",
+                                    strtimevalue( buffer_to_u32(buffer) ) );
        break;
       case SIGSUBPKT_EXPORTABLE:
        if( length )
@@ -653,7 +654,8 @@ dump_sig_subpkt( int hashed, int type, int critical,
        break;
       case SIGSUBPKT_KEY_EXPIRE:
        if( length >= 4 )
-           printf("key expires %s", strtimestamp( buffer_to_u32(buffer) ) );
+           printf("key expires after %s",
+                                   strtimevalue( buffer_to_u32(buffer) ) );
        break;
       case SIGSUBPKT_ARR:
        p = "additional recipient request";
index 55ab28e..a725815 100644 (file)
@@ -1,18 +1,19 @@
 
 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
+
 pub  1024D/621CC013 1998-07-07 Werner Koch <werner.koch@guug.de>
      Key fingerprint = ECAF 7590 EB34 43B5 C7CF  3ACB 6C7E E1B8 621C C013
-sub  1536G/B5A18FF4 1998-07-07
+
 pub   768R/0C9857A5 1995-09-30 Werner Koch <werner.koch@guug.de>
      Key fingerprint = 62 9E 97 C0 D5 55 76 3B 90 5A FA E9 81 1C 64 09
-uid                           Werner Koch (mein alter key) <wk@computer.org>
+
 pub   768g/E1D81275 1998-02-09 werner <dd9jn@amsat.org>
      Key fingerprint = 86E2 6681 6C0B 6DD5 4C06  BA6C E113 9763 E1D8 1275
 
 
 -----BEGIN PGP PUBLIC KEY BLOCK-----
-Version: GNUPG v0.4.3b (GNU/Linux)
+Version: GnuPG v0.4.3c (GNU/Linux)
 Comment: For info finger gcrypt@ftp.guug.de
 
 mQGiBDWiHh4RBAD+l0rg5p9rW4M3sKvmeyzhs2mDxhRKDTVVUnTwpMIR2kIA9pT4
@@ -24,9 +25,9 @@ TR641BceGHNdYiR/PiDBJsGQ3ac7n7pwhV4qex3IViRDJWz5Dzr88x+Oju63KtxY
 urUIBACi7d1rUlHr4ok7iBRlWHYXU2hpUIQ8C+UOE1XXT+HB7mZLSRONQnWMyXnq
 bAAW+EUUX2xpb54CevAg4eOilt0es8GZMmU6c0wdUsnMWWqOKHBFFlDIvyI27aZ9
 quf0yvby63kFCanQKc0QnqGXQKzuXbFqBYW2UQrYgjXji8rd8bQnV2VybmVyIEtv
-Y2ggKGdudXBnIHNpZykgPGRkOWpuQGdudS5vcmc+iF0EExECAB0FAjYp/BsFCTns
-YxYDCwQDBRUDAgYBAxYCAQIXgAAKCRBot6uJV1SNzUUWAJ452cFtgpR+KSYpF7xI
-uTv/g2jE/QCfbggYOCUK9h4d6JNOuuI2ptbeUl6JAV8DBRA1oh5DA28RuP8+qgsQ
+Y2ggKGdudXBnIHNpZykgPGRkOWpuQGdudS5vcmc+iF0EExECAB0FAjZVoKYFCQht
+DIgDCwQDBRUDAgYBAxYCAQIXgAAKCRBot6uJV1SNzS4+AKCHdeYHMmKQV9mC7REE
+5Vz6d5rRBgCfVMcyRP7dxBwhytmwCDpAcCFvCLSJAV8DBRA1oh5DA28RuP8+qgsQ
 A2MyBR0eiPUovYMz0DUXBbNs5606eaVeTJOn9WqkYGcS9xOKlGd8Xj0IcAKN30st
 5AsC5hRqr82rrUjB5/CuVdbvk+Qkh6ixWCqo+RRrbgf8cKCg1x+lDj9PpeSD/B9U
 U45ntxYamoXnPszxtzU+e73Nkbtrej5rgMK8tgTLkhTAbO8M15Mgtw2yOeDFfiCj
@@ -45,8 +46,8 @@ eUQrRDD9MTQ+XxcvEN0IpAj4kBJe9bR6HzAD/iecCmGwSlHUZZrgqWzv78o79XxD
 dcuLdl4i2fL7kwEOf9jsDe7hGs27yrdJEmAG9QF9TOF9LJFmE1CqkgW+EpKxsY01
 Wjm0BFJB1R7iPUaUtFRZxYqfgXarmPjql2iBi+cVjLzGu+4BSojVAPgP/hhcnIow
 f4M4edPiICMP1GVjtCFXZXJuZXIgS29jaCA8d2VybmVyLmtvY2hAZ3V1Zy5kZT6I
-XQQTEQIAHQUCNin7pQUJO82WDAMLBAMFFQMCBgEDFgIBAheAAAoJEGx+4bhiHMAT
-k1QAn1vonMj+ydyZK020qCf40h6Ig2MTAJ9LehZbevQB1mZJud2MnXqiNxs65IkA
+XQQTEQIAHQUCNlWgGQUJCDhNJgMLBAMFFQMCBgEDFgIBAheAAAoJEGx+4bhiHMAT
+vRgAoJc50QYEJmqS7No1oKy1s1g2XuY3AJ9QekKaTlaTdxcrNRMb7tGFiLc//YkA
 dQMFEDWjdxQdGfTBDJhXpQEBPfMC/0cxo+4xYVAplFO0nIYyjQgP7D8O0ufzPsIw
 F3kvb7b5FNNjfp+DAhN6G0HOIgkL3GsWtCfH5UHali+mtNFIKDpTtr+F/lPpZP3O
 PzzsLZS4hYTqmMs1O/ACq8axKgAilYkBXwMFEDWiJw4DbxG4/z6qCxADB9wFH0i6
@@ -184,6 +185,6 @@ o/ZDQfya+BlmbUbjNaEp0qr2BR4ypoz5jQSiQPUFN3I0RLRzR6bS+a1pUVucNMXQ
 uu5GsvJpQW47DznFDDteZcpf+QaiKKcMfpUtbWOIIlWhMAtIAodBJxCqrgGWbVGE
 kGtcrK7IW8NUDfpe/+KLcFzvx2XPo8+RHWrTlgf1RhEXdNx2up7gbuiHf+CD8kAB
 zkINfmdYizmD1/JE8+DO8gCMopcY2hYmStG4E2lUCq79qCCBeORg5A==
-=ahHm
+=7eJ9
 -----END PGP PUBLIC KEY BLOCK-----
 
index 71b5108..52f36f9 100644 (file)
@@ -458,6 +458,22 @@ write_dash_escaped( IOBUF inp, IOBUF out, MD_HANDLE md )
     int lastlf = 1;
     int state = 0;
 
+    if( opt.not_dash_escaped ) {
+       lastlf = 0;
+       while( (c = iobuf_get(inp)) != -1 ) {
+           md_putc(md, c );
+           iobuf_put( out, c );
+           lastlf = c;
+       }
+       if( lastlf != '\n' ) {
+           /* add a missing trailing LF */
+           md_putc(md, '\n' );
+           iobuf_put( out, '\n' );
+       }
+
+       return 0;
+    }
+
     while( (c = iobuf_get(inp)) != -1 ) {
        /* Note: We don't escape "From " because the MUA should cope with it */
        if( lastlf ) {
@@ -579,7 +595,11 @@ clearsign_file( const char *fname, STRLIST locusr, const char *outfile )
            }
        }
        assert(any);
-       iobuf_writestr(out, "\n\n" );
+       iobuf_writestr(out, "\n" );
+       if( opt.not_dash_escaped )
+           iobuf_writestr( out,
+               "NotDashEscaped: You need GnuPG to verify this message\n" );
+       iobuf_writestr(out, "\n" );
     }
 
 
@@ -588,7 +608,8 @@ clearsign_file( const char *fname, STRLIST locusr, const char *outfile )
        PKT_secret_key *sk = sk_rover->sk;
        md_enable(textmd, hash_for(sk->pubkey_algo));
     }
-    iobuf_push_filter( inp, text_filter, &tfx );
+    if( !opt.not_dash_escaped )
+       iobuf_push_filter( inp, text_filter, &tfx );
     rc = write_dash_escaped( inp, out, textmd );
     if( rc )
        goto leave;
index acb4de4..03ac8ed 100644 (file)
@@ -137,6 +137,7 @@ const char *print_fname_stdout( const char *s );
 /*-- miscutil.c --*/
 u32 make_timestamp(void);
 u32 add_days_to_timestamp( u32 stamp, u16 days );
+const char *strtimevalue( u32 stamp );
 const char *strtimestamp( u32 stamp ); /* GMT */
 const char *asctimestamp( u32 stamp ); /* localized */
 void print_string( FILE *fp, byte *p, size_t n, int delim );
index 0e61db9..0a5afda 100644 (file)
@@ -1,3 +1,8 @@
+Fri Nov 20 11:46:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
+
+       * de.po: Imported new version
+       * de.glo: Glossary used for de.po.
+
 Sat Nov 14 10:16:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
 
        * es_ES.po: New translation by Urko Lusa.
index e301f6f..8b78f43 100644 (file)
@@ -44,7 +44,7 @@ INCLUDES = -I.. -I$(top_srcdir)/intl
 
 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
 
-SOURCES = cat-id-tbl.c
+SOURCES = cat-id-tbl.c de.glo
 POFILES = @POFILES@
 GMOFILES = @GMOFILES@
 DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \
diff --git a/po/de.glo b/po/de.glo
new file mode 100644 (file)
index 0000000..74ec630
--- /dev/null
+++ b/po/de.glo
@@ -0,0 +1,51 @@
+
+algorithm              Verfahren
+anonymous              ungenannter
+armor                  ASCII-Hülle
+bug                    Wanze (Programmfehler)
+certificate            Zertifikat
+checksum               Prüfsumme
+cipher algorithm       Verschlüsselungsverfahren
+compress algorithm     Komprimierverfahren
+corrupted              beschädigter
+digest algorithm       Hashmethode
+expire date            Verfallsdatum
+generated              erzeugter
+Good certificate       Korrektes Zertifikat
+hint                   Tip
+key-ID                 Schlüssel-ID
+keyring                Schlüsselring -> Schlüsselbund
+malformed              Ungünstig aufgebaute
+message                Botschaft
+note                   Hinweis
+ownertrust             \"Owner trust\"
+packet                 Paket
+packet type            Pakettyp
+passphrase             \"Passphrase\"
+preferences            bevorzugt
+primary keys           Hauptschlüssel
+protection algorithm   Schutzmethode
+pubkey algorithm       Public-Key Verfahren     (*1)
+public key             öffentlicher Schüssel
+........               Authentisierung
+retry                  ????
+revo...                Widerruf
+secondary key          Zweitschlüssel
+secret key             geheimer Schlüssel
+self-signature         Eigensignatur
+sender                 Absender
+sign user id           User-ID beglaubigen
+throw                  verwerfe
+Timestamp conflict     Zeitangaben differieren
+Trust-DB               'Trust'-Datenbank
+trying                 Versuch
+update
+user ID                User-ID
+user IDs               User-IDs
+weak key               unsicherer Schlüssel
+
+(*1) Uneinheitlich verwendet
+--
+Walter Koch                        Hochdahl am Neandertal
+walterk@mail.dip.de                ham:dg9ep@db0iz
+http://home.pages.de/~dg9ep/       qrv:db0iz-9
index 69c835e..5d2440e 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -1,7 +1,11 @@
+# GnuPG german translation
+# Copyright (C) 1998 Free Software Foundation, Inc.
+# Walter Koch <walterk@dip.de>, 1998.
+#
 msgid ""
 msgstr ""
-"POT-Creation-Date: 1998-11-08 18:21+0100\n"
-"PO-Revision-Date: 1998-10-11 20:10+0200\n"
+"POT-Creation-Date: 1998-11-20 15:17+0100\n"
+"PO-Revision-Date: 1998-11-18 20:10+0200\n"
 "Last-Translator: Walter Koch <walterk@mail.dip.de>\n"
 "Language-Team: German <de@li.org>\n"
 "MIME-Version: 1.0\n"
@@ -23,11 +27,11 @@ msgstr ""
 "Um dies zu vermeiden, kann das Programm suid(root) installiert werden.\n"
 "Bitte wenden Sie sich hierzu an den Systemadministrator.\n"
 
-#: util/miscutil.c:110
+#: util/miscutil.c:139
 msgid "yes"
 msgstr "ja"
 
-#: util/miscutil.c:111
+#: util/miscutil.c:140
 msgid "yY"
 msgstr "jJ"
 
@@ -37,7 +41,7 @@ msgstr "Allgemeiner Fehler"
 
 #: util/errors.c:55
 msgid "Unknown packet type"
-msgstr "Unbekannter Packet Typ"
+msgstr "Unbekannter Pakettyp"
 
 #: util/errors.c:56
 msgid "Unknown version"
@@ -57,7 +61,7 @@ msgstr "Falscher 
 
 #: util/errors.c:60
 msgid "Bad secret key"
-msgstr "Falcher geheimer Schlüssel"
+msgstr "Falscher geheimer Schlüssel"
 
 #: util/errors.c:61
 msgid "Bad signature"
@@ -81,11 +85,11 @@ msgstr "Unbekanntes Verschl
 
 #: util/errors.c:66
 msgid "Can't open the keyring"
-msgstr "Der Schlüsselring kann nicht geöffnet werden"
+msgstr "Der Schlüsselbund kann nicht geöffnet werden"
 
 #: util/errors.c:67
 msgid "Invalid packet"
-msgstr "Ungültiges Packet"
+msgstr "Ungültiges Paket"
 
 #: util/errors.c:68
 msgid "Invalid armor"
@@ -125,11 +129,11 @@ msgstr "Unbekanntes Komprimierverfahren"
 
 #: util/errors.c:77
 msgid "File open error"
-msgstr "Fehler beim öffnen der Datei"
+msgstr "Fehler beim Öffnen der Datei"
 
 #: util/errors.c:78
 msgid "File create error"
-msgstr "Fehler beim erzeugen der Datei"
+msgstr "Fehler beim Erzeugen der Datei"
 
 #: util/errors.c:79
 msgid "Invalid passphrase"
@@ -161,7 +165,7 @@ msgstr "Zu wenig Resourcen"
 
 #: util/errors.c:86
 msgid "Invalid keyring"
-msgstr "Ungültiger Schlüsselring"
+msgstr "Ungültiger Schlüsselbund"
 
 #: util/errors.c:87
 msgid "Bad certificate"
@@ -169,19 +173,19 @@ msgstr "Falsches Zertifikat"
 
 #: util/errors.c:88
 msgid "Malformed user id"
-msgstr "Falsch geformte User-ID"
+msgstr "Ungünstig aufgebaute User-ID"
 
 #: util/errors.c:89
 msgid "File close error"
-msgstr "Fehler beim schließen der Datei"
+msgstr "Fehler beim Schließen der Datei"
 
 #: util/errors.c:90
 msgid "File rename error"
-msgstr "Fehler beim umbennen einer Datei"
+msgstr "Fehler beim Umbenennen einer Datei"
 
 #: util/errors.c:91
 msgid "File delete error"
-msgstr "Fehler beim chen einer Datei"
+msgstr "Fehler beim Löschen einer Datei"
 
 #: util/errors.c:92
 msgid "Unexpected data"
@@ -189,7 +193,7 @@ msgstr "Unerwartete Daten"
 
 #: util/errors.c:93
 msgid "Timestamp conflict"
-msgstr "Zeitstempel Konflikt"
+msgstr "Zeitangaben differieren"
 
 #: util/errors.c:94
 msgid "Unusable pubkey algorithm"
@@ -197,24 +201,25 @@ msgstr "Unbenutzbares 
 
 #: util/errors.c:95
 msgid "File exists"
-msgstr "Date existier bereits"
+msgstr "Datei existiert bereits"
 
 #: util/errors.c:96
 msgid "Weak key"
-msgstr "Schwacher Schlüssel"
+msgstr "Unsicherer Schlüssel"
 
-#: util/logger.c:177
+#: util/logger.c:178
 #, fuzzy, c-format
 msgid "... this is a bug (%s:%d:%s)\n"
 msgstr "Ohhh jeeee ... dies ist eine Wanze (Programmfehler) (%s:%d:%s)\n"
 
-#: util/logger.c:183
+#: util/logger.c:184
 #, c-format
 msgid "you found a bug ... (%s:%d)\n"
 msgstr "Sie haben eine Wanze (Programmfehler) gefunden ... (%s:%d)\n"
 
 #: cipher/rand-dummy.c:112
-msgid "warning: using insecure random number generator!!\n"
+#, fuzzy
+msgid "WARNING: using insecure random number generator!!\n"
 msgstr "Der Zufallszahlengenerator erzeugt keine echten Zufallszahlen!\n"
 
 #: cipher/rand-dummy.c:113
@@ -225,8 +230,8 @@ msgid ""
 "DON'T USE ANY DATA GENERATED BY THIS PROGRAM!!\n"
 "\n"
 msgstr ""
-"Der Zufallszahlengenerator ist lediglich ein \"kludge\", um das\n"
-"übersetzen des Programms zu ermöglichen - es ist KEIN starker RNG!\n"
+"Der Zufallszahlengenerator (RNG) ist lediglich ein \"kludge\", um das\n"
+"Übersetzen des Programms zu ermöglichen - es ist KEIN starker RNG!\n"
 "\n"
 "BENUTZEN SIE DIE DURCH DIESES PROGRAMM ERZEUGTEN DATEN NICHT!\n"
 "\n"
@@ -243,7 +248,7 @@ msgstr ""
 "Arbeiten durch, damit das Betriebssystem weitere Entropie sammeln kann!\n"
 "(Es werden noch %d Byte benötigt.)\n"
 
-#: g10/g10.c:152
+#: g10/g10.c:155
 msgid ""
 "@Commands:\n"
 " "
@@ -251,128 +256,128 @@ msgstr ""
 "@Kommandos:\n"
 " "
 
-#: g10/g10.c:155
+#: g10/g10.c:158
 #, fuzzy
 msgid "|[file]|make a signature"
-msgstr "|[FILE]|eine Signatur erzeugen"
+msgstr "|[file]|Eine Signatur erzeugen"
 
-#: g10/g10.c:156
+#: g10/g10.c:159
 #, fuzzy
 msgid "|[file]|make a clear text signature"
-msgstr "|[FILE]|eine Klartextsignatur erzeugen"
+msgstr "|[file]|Eine Klartextsignatur erzeugen"
 
-#: g10/g10.c:157
+#: g10/g10.c:160
 msgid "make a detached signature"
 msgstr "Eine abgetrennte Signatur erzeugen"
 
-#: g10/g10.c:158
+#: g10/g10.c:161
 msgid "encrypt data"
 msgstr "Daten verschlüsseln"
 
-#: g10/g10.c:159
+#: g10/g10.c:162
 msgid "encryption only with symmetric cipher"
 msgstr "Daten nur symmetrisch verschlüsseln"
 
-#: g10/g10.c:160
+#: g10/g10.c:163
 msgid "store only"
-msgstr "nur speichern"
+msgstr "Nur speichern"
 
-#: g10/g10.c:161
+#: g10/g10.c:164
 msgid "decrypt data (default)"
 msgstr "Daten entschlüsseln  (Voreinstellung)"
 
-#: g10/g10.c:162
+#: g10/g10.c:165
 msgid "verify a signature"
 msgstr "Signatur prüfen"
 
-#: g10/g10.c:164
+#: g10/g10.c:167
 msgid "list keys"
 msgstr "Liste der Schlüssel"
 
-#: g10/g10.c:165
+#: g10/g10.c:168
 msgid "list keys and signatures"
 msgstr "Liste der Schlüssel und ihrer Signaturen"
 
-#: g10/g10.c:166
+#: g10/g10.c:169
 msgid "check key signatures"
 msgstr "Signaturen der Schlüssel prüfen"
 
-#: g10/g10.c:167
+#: g10/g10.c:170
 msgid "list keys and fingerprints"
 msgstr "Liste der Schlüssel und ihrer \"Fingerabdrücke\""
 
-#: g10/g10.c:168
+#: g10/g10.c:171
 msgid "list secret keys"
 msgstr "Liste der geheimen Schlüssel"
 
-#: g10/g10.c:170
+#: g10/g10.c:173
 msgid "generate a new key pair"
 msgstr "Ein neues Schlüsselpaar erzeugen"
 
-#: g10/g10.c:172
+#: g10/g10.c:175
 msgid "remove key from the public keyring"
 msgstr "Schlüssel entfernen"
 
-#: g10/g10.c:174
+#: g10/g10.c:177
 msgid "sign or edit a key"
 msgstr "Unterschreiben oder Bearbeiten eines Schlüssels"
 
-#: g10/g10.c:175
+#: g10/g10.c:178
 msgid "generate a revocation certificate"
-msgstr "Einen Schlüsselwiderruf vornehmen"
+msgstr "Ein Schlüsselwiderruf-Zertifikat erzeugen"
 
-#: g10/g10.c:177
+#: g10/g10.c:180
 msgid "export keys"
 msgstr "Schlüssel exportieren"
 
-#: g10/g10.c:179
+#: g10/g10.c:182
 msgid "import/merge keys"
 msgstr "Schlüssel importieren/kombinieren"
 
-#: g10/g10.c:181
+#: g10/g10.c:184
 msgid "list only the sequence of packets"
 msgstr "Lediglich die Struktur der Datenpackete anzeigen"
 
-#: g10/g10.c:184
+#: g10/g10.c:187
 #, fuzzy
 msgid "export the ownertrust values"
 msgstr "Keine \"Owner trust\" Werte geändert.\n"
 
-#: g10/g10.c:186
+#: g10/g10.c:189
 #, fuzzy
 msgid "import ownertrust values"
 msgstr "Keine \"Owner trust\" Werte geändert.\n"
 
-#: g10/g10.c:188
+#: g10/g10.c:191
 #, fuzzy
 msgid "|[NAMES]|update the trust database"
 msgstr "|[NAMES]|Überprüfen der \"Trust\"-Datenbank"
 
-#: g10/g10.c:190
+#: g10/g10.c:193
 msgid "|[NAMES]|check the trust database"
 msgstr "|[NAMES]|Überprüfen der \"Trust\"-Datenbank"
 
-#: g10/g10.c:191
+#: g10/g10.c:194
 msgid "fix a corrupted trust database"
 msgstr "Reparieren einer beschädigten \"Trust\"-Datenbank"
 
-#: g10/g10.c:192
+#: g10/g10.c:195
 msgid "De-Armor a file or stdin"
 msgstr "Datei oder stdin von der ASCII-Hülle befreien"
 
-#: g10/g10.c:193
+#: g10/g10.c:196
 msgid "En-Armor a file or stdin"
 msgstr "Datei oder stdin in eine ASCII-Hülle einpacken"
 
-#: g10/g10.c:194
+#: g10/g10.c:197
 msgid "|algo [files]|print message digests"
 msgstr "|algo [files]|Message-Digests für die Dateien ausgeben"
 
-#: g10/g10.c:195
+#: g10/g10.c:198
 msgid "print all message digests"
 msgstr "Message-Digests für die Eingabedaten ausgeben"
 
-#: g10/g10.c:202
+#: g10/g10.c:205
 msgid ""
 "@\n"
 "Options:\n"
@@ -382,137 +387,142 @@ msgstr ""
 "Optionen:\n"
 " "
 
-#: g10/g10.c:204
+#: g10/g10.c:207
 msgid "create ascii armored output"
 msgstr "Ausgabe mit ASCII-Hülle versehen"
 
-#: g10/g10.c:206
+#: g10/g10.c:209
 msgid "use this user-id to sign or decrypt"
 msgstr "Mit dieser User-ID signieren"
 
-#: g10/g10.c:207
+#: g10/g10.c:210
 msgid "use this user-id for encryption"
 msgstr "Verschlüsseln für diese User-ID"
 
-#: g10/g10.c:208
+#: g10/g10.c:211
 msgid "|N|set compress level N (0 disables)"
-msgstr "Kompressionsstufe auf N setzen (0 für keine Kompression)"
+msgstr "Kompressionsstufe auf N setzen (0 = keine Kompr.)"
 
-#: g10/g10.c:210
+#: g10/g10.c:213
 msgid "use canonical text mode"
 msgstr "Textmodus benutzen"
 
-#: g10/g10.c:212
+#: g10/g10.c:215
 msgid "use as output file"
-msgstr "dies als Ausgabedatei benutzen"
+msgstr "Als Ausgabedatei benutzen"
 
-#: g10/g10.c:213
+#: g10/g10.c:216
 msgid "verbose"
-msgstr "detaillierte Informationen"
+msgstr "Detaillierte Informationen"
 
-#: g10/g10.c:214
+#: g10/g10.c:217
 msgid "be somewhat more quiet"
-msgstr ""
+msgstr "Etwas weniger Infos"
 
-#: g10/g10.c:215
+#: g10/g10.c:218
 #, fuzzy
 msgid "force v3 signatures"
-msgstr "Signaturen der Schlüssel prüfen"
+msgstr "v3 Signaturen erzwingen"
 
 #. { oDryRun, "dry-run",   0, N_("do not make any changes") },
-#: g10/g10.c:217
+#: g10/g10.c:220
 msgid "batch mode: never ask"
 msgstr "Stapelmodus: Keine Abfragen"
 
-#: g10/g10.c:218
+#: g10/g10.c:221
 msgid "assume yes on most questions"
 msgstr "\"Ja\" als Standardantwort annehmen"
 
-#: g10/g10.c:219
+#: g10/g10.c:222
 msgid "assume no on most questions"
 msgstr "\"Nein\" als Standardantwort annehmen"
 
-#: g10/g10.c:220
+#: g10/g10.c:223
 msgid "add this keyring to the list of keyrings"
-msgstr "Als öffentlichen Schlüsselring mitbenutzen"
+msgstr "Als öffentlichen Schlüsselbund mitbenutzen"
 
-#: g10/g10.c:221
+#: g10/g10.c:224
 msgid "add this secret keyring to the list"
-msgstr "Als geheimen Schlüsselring mitbenutzen"
+msgstr "Als geheimen Schlüsselbund mitbenutzen"
 
-#: g10/g10.c:222
+#: g10/g10.c:225
 msgid "|NAME|use NAME as default secret key"
 msgstr "|NAME|NAME als voreingestellten Schlüssel benutzen"
 
-#: g10/g10.c:223
+#: g10/g10.c:226
+#, fuzzy
+msgid "|NAME| set terminal charset to NAME"
+msgstr "|NAME|Die Verschlüsslungsmethode NAME benutzen"
+
+#: g10/g10.c:227
 msgid "read options from file"
 msgstr "Optionen aus der Datei lesen"
 
-#: g10/g10.c:225
+#: g10/g10.c:229
 msgid "set debugging flags"
 msgstr "Debug-Flags einschalten"
 
-#: g10/g10.c:226
+#: g10/g10.c:230
 msgid "enable full debugging"
 msgstr "Alle Debug-Flags einschalten"
 
-#: g10/g10.c:227
+#: g10/g10.c:231
 msgid "|FD|write status info to this FD"
 msgstr "|FD|Statusinfo auf diesen Dateihandle (\"FD\") ausgeben"
 
-#: g10/g10.c:228
+#: g10/g10.c:232
 msgid "do not write comment packets"
 msgstr "Keine Kommentarpakete schreiben"
 
-#: g10/g10.c:229
+#: g10/g10.c:233
 msgid "(default is 1)"
-msgstr "(voreingestellt ist 1)"
+msgstr "Benötigte Vollvertrauen (Voreinstellung 1)"
 
-#: g10/g10.c:230
+#: g10/g10.c:234
 msgid "(default is 3)"
-msgstr "(voreingestellt ist 3)"
+msgstr "Benötigte Teilvertrauen (Voreinstellung 3)"
 
-#: g10/g10.c:231
+#: g10/g10.c:236
 #, fuzzy
 msgid "|FILE|load extension module FILE"
-msgstr "|FILE|Erweiterungsmodul |FILE| laden"
+msgstr "|FILE|Erweiterungsmodul DATEI laden"
 
-#: g10/g10.c:232
+#: g10/g10.c:237
 msgid "emulate the mode described in RFC1991"
 msgstr "Den in RFC1991 beschriebenen Modus nachahmen"
 
-#: g10/g10.c:233
+#: g10/g10.c:238
 #, fuzzy
 msgid "|N|use passphrase mode N"
-msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+msgstr "|N|verwenden des \"Passphrase\"-Verfahrens N"
 
-#: g10/g10.c:235
+#: g10/g10.c:240
 #, fuzzy
 msgid "|NAME|use message digest algorithm NAME for passphrases"
 msgstr "|NAME|Die Hashmethode NAME für die \"Passphrase\" benutzen"
 
-#: g10/g10.c:237
+#: g10/g10.c:242
 #, fuzzy
 msgid "|NAME|use cipher algorithm NAME for passphrases"
 msgstr "|NAME|Die Verschlüsslungsmethode NAME benutzen"
 
-#: g10/g10.c:239
+#: g10/g10.c:244
 msgid "|NAME|use cipher algorithm NAME"
 msgstr "|NAME|Die Verschlüsslungsmethode NAME benutzen"
 
-#: g10/g10.c:240
+#: g10/g10.c:245
 msgid "|NAME|use message digest algorithm NAME"
 msgstr "|NAME|Die Hashmethode NAME benutzen"
 
-#: g10/g10.c:241
+#: g10/g10.c:246
 msgid "|N|use compress algorithm N"
 msgstr "|N|Die Kompressionsmethode N benutzen"
 
-#: g10/g10.c:242
+#: g10/g10.c:247
 msgid "throw keyid field of encrypted packets"
-msgstr ""
+msgstr "verwerfe Schlüssel-ID-Feld des verschlüsselten Pakets"
 
-#: g10/g10.c:250
+#: g10/g10.c:255
 #, fuzzy
 msgid ""
 "@\n"
@@ -527,25 +537,25 @@ msgstr ""
 "@\n"
 "Beispiele:\n"
 "\n"
-" -se -r Bob [file]          Signieren und verschlüsseln für Benutzer Bob\n"
-" --clearsign [file]         Eine Klartextsignatur erzeugen\n"
-" --detach-sign [file]       Eine abgetrennte Signatur erzeugen\n"
-" --list-keys [names]        Die Schlüssel anzeigen\n"
-" --fingerprint [names]      Die \"Fingerabdrücke\" anzeigen\n"
+" -se -r Bob [Datei]         Signieren und verschlüsseln für Benutzer Bob\n"
+" --clearsign [Datei]        Eine Klartextsignatur erzeugen\n"
+" --detach-sign [Datei]      Eine abgetrennte Signatur erzeugen\n"
+" --list-keys [Namen]        Die Schlüssel anzeigen\n"
+" --fingerprint [Namen]      Die \"Fingerabdrücke\" anzeigen\n"
 
-#: g10/g10.c:325
+#: g10/g10.c:333
 msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
-msgstr "Berichte über Wanzen bitte an <gnupg-bugs@gnu.org>.\n"
+msgstr "Berichte über Wanzen (Programmfehler) bitte an <gnupg-bugs@gnu.org>.\n"
 
-#: g10/g10.c:330
+#: g10/g10.c:338
 msgid "Usage: gpgm [options] [files] (-h for help)"
 msgstr "Aufruf: gpgm [Optionen] [Dateien] (-h für Hilfe)"
 
-#: g10/g10.c:332
+#: g10/g10.c:340
 msgid "Usage: gpg [options] [files] (-h for help)"
 msgstr "Aufruf: gpg [Optionen] [Dateien] (-h für Hilfe)"
 
-#: g10/g10.c:337
+#: g10/g10.c:345
 #, fuzzy
 msgid ""
 "Syntax: gpgm [options] [files]\n"
@@ -554,7 +564,7 @@ msgstr ""
 "Syntax: gpgm [options] [files]\n"
 "GNUPG Wartungs-Hilfsprogramm\n"
 
-#: g10/g10.c:340
+#: g10/g10.c:348
 msgid ""
 "Syntax: gpg [options] [files]\n"
 "sign, check, encrypt or decrypt\n"
@@ -564,147 +574,164 @@ msgstr ""
 "Signieren, prüfen, verschlüsseln, entschlüsseln\n"
 "Die voreingestellte Operation ist abhängig von den Eingabedaten\n"
 
-#: g10/g10.c:346
+#: g10/g10.c:354
 msgid ""
 "\n"
 "Supported algorithms:\n"
 msgstr ""
+"\n"
+"Unterstützte Verfahren:\n"
 
-#: g10/g10.c:421
+#: g10/g10.c:429
 msgid "usage: gpgm [options] "
 msgstr "Aufruf: gpgm [Optionen] "
 
-#: g10/g10.c:423
+#: g10/g10.c:431
 msgid "usage: gpg [options] "
 msgstr "Aufruf: gpg [Optionen] "
 
-#: g10/g10.c:464
+#: g10/g10.c:472
 msgid "conflicting commands\n"
 msgstr "Widersprüchliche Kommandos\n"
 
-#: g10/g10.c:602
-#, c-format
-msgid "note: no default option file '%s'\n"
+#: g10/g10.c:610
+#, fuzzy, c-format
+msgid "NOTE: no default option file '%s'\n"
 msgstr "Hinweis: Keine voreingestellte Optionendatei '%s' vorhanden\n"
 
-#: g10/g10.c:606
+#: g10/g10.c:614
 #, c-format
 msgid "option file '%s': %s\n"
 msgstr "Optionendatei '%s': %s\n"
 
-#: g10/g10.c:613
+#: g10/g10.c:621
 #, c-format
 msgid "reading options from '%s'\n"
-msgstr "Optionen werden von '%s' gelesen\n"
+msgstr "Optionen werden aus '%s' gelesen\n"
+
+#: g10/g10.c:769
+#, fuzzy, c-format
+msgid "%s is not a valid character set\n"
+msgstr "Ungültiges Zeichen im Kommentar.\n"
 
-#: g10/g10.c:787 g10/g10.c:799
+#: g10/g10.c:802 g10/g10.c:814
 msgid "selected cipher algorithm is invalid\n"
-msgstr "Die ausgewählte Verschlüsslungsmethode ist ungültig\n"
+msgstr "Das ausgewählte Verschlüsslungsverfahren ist ungültig\n"
 
-#: g10/g10.c:793 g10/g10.c:805
+#: g10/g10.c:808 g10/g10.c:820
 msgid "selected digest algorithm is invalid\n"
-msgstr "Die ausgewählte Message-Digest-Methode ist ungültig\n"
+msgstr "Die ausgewählte Hashmethode ist ungültig\n"
 
-#: g10/g10.c:808
+#: g10/g10.c:823
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr "Die Kompressionsmethode muß im Bereich %d bis %d liegen\n"
 
-#: g10/g10.c:810
+#: g10/g10.c:825
 msgid "completes-needed must be greater than 0\n"
 msgstr "completes-needed müssen größer als 0 sein\n"
 
-#: g10/g10.c:812
+#: g10/g10.c:827
 msgid "marginals-needed must be greater than 1\n"
 msgstr "marginals-needed müssen größer als 1 sein\n"
 
-#: g10/g10.c:815
-msgid "note: simple S2K mode (0) is strongly discouraged\n"
+#: g10/g10.c:829
+msgid "max-cert-depth must be in range 1 to 255\n"
 msgstr ""
 
-#: g10/g10.c:819
+#: g10/g10.c:832
+#, fuzzy
+msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
+msgstr "Hinweis: Vom \"simple S2K\"-Modus ist strikt abzuraten\n"
+
+#: g10/g10.c:836
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
-msgstr ""
+msgstr "ungültiger \"simple S2K\"-Modus; Wert muß 0, 1 oder 3 sein\n"
 
-#: g10/g10.c:895
+#: g10/g10.c:912
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "Die Trust-DB kann nicht initialisiert werden: %s\n"
 
-#: g10/g10.c:901
+#: g10/g10.c:918
 msgid "--store [filename]"
 msgstr "--store [Dateiname]"
 
-#: g10/g10.c:909
+#: g10/g10.c:926
 msgid "--symmetric [filename]"
 msgstr "--symmetric [Dateiname]"
 
-#: g10/g10.c:917
+#: g10/g10.c:934
 msgid "--encrypt [filename]"
 msgstr "--encrypt [Dateiname]"
 
-#: g10/g10.c:930
+#: g10/g10.c:947
 msgid "--sign [filename]"
 msgstr "--sign [Dateiname]"
 
-#: g10/g10.c:943
+#: g10/g10.c:960
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [Dateiname]"
 
-#: g10/g10.c:957
+#: g10/g10.c:974
 msgid "--clearsign [filename]"
 msgstr "--clearsign [Dateiname]"
 
-#: g10/g10.c:969
+#: g10/g10.c:986
 msgid "--decrypt [filename]"
 msgstr "--decrypt [Dateiname]"
 
-#: g10/g10.c:978
-msgid "--edit-key username"
+#: g10/g10.c:995
+#, fuzzy
+msgid "--edit-key username [commands]"
 msgstr "--edit-key Benutzername"
 
-#: g10/g10.c:986
+#: g10/g10.c:1011
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key Benutzername"
 
-#: g10/g10.c:989
+#: g10/g10.c:1014
 msgid "--delete-key username"
 msgstr "--delete-key Benutzername"
 
-#: g10/encode.c:216 g10/g10.c:1012
+#: g10/encode.c:216 g10/g10.c:1037 g10/sign.c:301
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "Datei '%s' kann nicht geöffnet werden: %s\n"
 
-#: g10/g10.c:1023
+#: g10/g10.c:1048
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [Benutzername] [Keyring]"
 
-#: g10/g10.c:1079
+#: g10/g10.c:1104
 #, c-format
 msgid "dearmoring failed: %s\n"
-msgstr "De-Armor fehlgeschlagen: %s\n"
+msgstr "Entfernen der ASCII-Hülle ist fehlgeschlagen: %s\n"
 
-#: g10/g10.c:1087
+#: g10/g10.c:1112
 #, c-format
 msgid "enarmoring failed: %s\n"
-msgstr "En-Armor fehlgeschlagen: %s\n"
+msgstr "Anbringen der ASCII-Hülle ist fehlgeschlagen: %s\n"
 
-#: g10/g10.c:1148
+#: g10/g10.c:1173
 #, c-format
 msgid "invalid hash algorithm '%s'\n"
 msgstr "Ungültige Hashmethode '%s'\n"
 
-#: g10/g10.c:1230
+#: g10/g10.c:1256
 msgid "[filename]"
 msgstr "[Dateiname]"
 
-#: g10/decrypt.c:59 g10/g10.c:1232 g10/verify.c:66
+#: g10/g10.c:1260
+msgid "Go ahead and type your message ...\n"
+msgstr ""
+
+#: g10/decrypt.c:59 g10/g10.c:1263 g10/verify.c:66
 #, c-format
 msgid "can't open '%s'\n"
 msgstr "Datei '%s' kann nicht geöffnet werden\n"
 
-#: g10/g10.c:1279
+#: g10/g10.c:1312
 msgid ""
 "RSA keys are deprecated; please consider creating a new key and use this key "
 "in the future\n"
@@ -712,76 +739,76 @@ msgstr ""
 "RSA Schlüssel sind nicht erwünscht; bitte denken Sie darüber nach, einen "
 "neuen Schlüssel zu erzeugen und diesen in Zukunft zu benutzen\n"
 
-#: g10/armor.c:341 g10/armor.c:381
+#: g10/armor.c:344 g10/armor.c:391
 msgid "armor header: "
-msgstr ""
+msgstr "ASCII-Hülle: "
 
-#: g10/armor.c:346
+#: g10/armor.c:355
 #, fuzzy
 msgid "invalid clearsig header\n"
-msgstr "Ungültiges Zeichen im Namen\n"
+msgstr "Ungültige Klartextsignatur-Einleitung\n"
 
-#: g10/armor.c:372
+#: g10/armor.c:382
 msgid "invalid armor header: "
-msgstr ""
+msgstr "Ungültige ASCII-Hülle"
 
-#: g10/armor.c:449
+#: g10/armor.c:459
 #, fuzzy, c-format
 msgid "armor: %s\n"
-msgstr "Lesefehler: %s\n"
+msgstr "ASCII-Hülle: %s\n"
 
-#: g10/armor.c:493
+#: g10/armor.c:530
 msgid "invalid dash escaped line: "
-msgstr ""
+msgstr "Ungültige mit Bindestrich \"escapte\" Zeile: "
 
-#: g10/armor.c:562
+#: g10/armor.c:599
 msgid "invalid clear text header: "
-msgstr ""
+msgstr "ungültige Klartexteinleitung"
 
-#: g10/armor.c:794
+#: g10/armor.c:841
 #, fuzzy, c-format
 msgid "invalid radix64 character %02x skipped\n"
-msgstr "Ungültiges Zeichen im Namen\n"
+msgstr "Ungültiges \"radix64\" Zeichen %02x ignoriert\n"
 
-#: g10/armor.c:827
+#: g10/armor.c:874
 msgid "premature eof (no CRC)\n"
-msgstr ""
+msgstr "vorzeitiges Dateiende (keine Prüfsumme)\n"
 
-#: g10/armor.c:846
+#: g10/armor.c:893
 msgid "premature eof (in CRC)\n"
-msgstr ""
+msgstr "vorzeitiges Dateiende (innerhalb der Prüfsumme)\n"
 
-#: g10/armor.c:850
+#: g10/armor.c:897
 msgid "malformed CRC\n"
-msgstr ""
+msgstr "Falsch aufgebaute Prüfsumme\n"
 
-#: g10/armor.c:854
+#: g10/armor.c:901
 #, c-format
 msgid "CRC error; %06lx - %06lx\n"
-msgstr ""
+msgstr "Prüfsummenfehler; %06lx - %06lx\n"
 
-#: g10/armor.c:873
+#: g10/armor.c:920
 msgid "premature eof (in Trailer)\n"
-msgstr ""
+msgstr "vorzeitiges Dateiende (im Nachsatz)\n"
 
-#: g10/armor.c:877
+#: g10/armor.c:924
 msgid "error in trailer line\n"
-msgstr ""
+msgstr "Fehler in der Nachsatzzeile\n"
 
-#: g10/armor.c:1131
+#: g10/armor.c:1178
 msgid "no valid RFC1991 or OpenPGP data found.\n"
-msgstr ""
+msgstr "Keine gültigen RFC1991- oder OpenPGP-Daten gefunden.\n"
 
-#: g10/pkclist.c:71
-#, c-format
+#: g10/pkclist.c:121
+#, fuzzy, c-format
 msgid ""
-"No owner trust defined for %lu:\n"
+"No trust value assigned to %lu:\n"
 "%4u%c/%08lX %s \""
 msgstr ""
 "Es ist kein \"Owner trust\" für %lu definiert:\n"
 "%4u%c/%08lX %s \""
 
-#: g10/pkclist.c:81
+#: g10/pkclist.c:131
 #, fuzzy
 msgid ""
 "Please decide how far you trust this user to correctly\n"
@@ -807,29 +834,29 @@ msgstr ""
 " 4 = Ich vertraue ihm immer\n"
 " s = Bitte weitere Information anzeigen\n"
 
-#: g10/pkclist.c:90
+#: g10/pkclist.c:140
 msgid " m = back to the main menu\n"
 msgstr " m = Zurück zum Menü\n"
 
 # valid user replies (not including 1..4)
 #. a string with valid answers
-#: g10/pkclist.c:95
+#: g10/pkclist.c:145
 msgid "sSmM"
 msgstr "sSmM"
 
-#: g10/pkclist.c:99
+#: g10/pkclist.c:149
 msgid "edit_ownertrust.value"
 msgstr ""
 
-#: g10/pkclist.c:99
+#: g10/pkclist.c:149
 msgid "Your decision? "
 msgstr "Ihre Auswahl? "
 
-#: g10/pkclist.c:118
-msgid "You will see a list of signators etc. here\n"
-msgstr "Sie sollten hier eigentlich eine Liste der Signierer sehen.\n"
+#: g10/pkclist.c:169
+msgid "Certificates leading to an ultimately trusted key:\n"
+msgstr ""
 
-#: g10/pkclist.c:145
+#: g10/pkclist.c:197
 msgid ""
 "Could not find a valid trust path to the key.  Let's see whether we\n"
 "can assign some missing owner trust values.\n"
@@ -840,21 +867,69 @@ msgstr ""
 "zuordnen können.\n"
 "\n"
 
-#: g10/pkclist.c:168
+#: g10/pkclist.c:219
+msgid ""
+"No path leading to one of our keys found.\n"
+"\n"
+msgstr ""
+
+#: g10/pkclist.c:221
+msgid ""
+"No certificates with undefined trust found.\n"
+"\n"
+msgstr ""
+
+#: g10/pkclist.c:223
+#, fuzzy
 msgid ""
-"No owner trust values changed.\n"
+"No trust values changed.\n"
 "\n"
 msgstr "Keine \"Owner trust\" Werte geändert.\n"
 
-#: g10/pkclist.c:188
+#: g10/pkclist.c:238
+#, fuzzy, c-format
+msgid "key %08lX: key has been revoked!\n"
+msgstr "build_sigrecs: Schlüssel ist widerrufen\n"
+
+#: g10/pkclist.c:243
 msgid "revoked_key.override"
 msgstr ""
 
-#: g10/pkclist.c:189 g10/pkclist.c:279
+#: g10/pkclist.c:244 g10/pkclist.c:335
 msgid "Use this key anyway? "
 msgstr "Den Schlüssel trotzdem benutzen?"
 
-#: g10/pkclist.c:274
+#: g10/pkclist.c:266
+#, fuzzy, c-format
+msgid "%08lX: key has expired\n"
+msgstr "Hinweis: Dieser Schlüssel ist verfallen!\n"
+
+#: g10/pkclist.c:272
+#, c-format
+msgid "%08lX: no info to calculate a trust probability\n"
+msgstr ""
+
+#: g10/pkclist.c:288
+#, fuzzy, c-format
+msgid "%08lX: We do NOT trust this key\n"
+msgstr "WARNUNG: Wir haben KEIN Vertrauen zu diesem Schlüssel!\n"
+
+#: g10/pkclist.c:294
+#, c-format
+msgid ""
+"%08lX: It is not sure taht this key really belongs to the owner\n"
+"but it is accepted anyway\n"
+msgstr ""
+
+#: g10/pkclist.c:300
+msgid "This key probably belongs to the owner\n"
+msgstr ""
+
+#: g10/pkclist.c:305
+msgid "This key belongs to us (we have the secret key)\n"
+msgstr ""
+
+#: g10/pkclist.c:330
 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"
@@ -865,59 +940,59 @@ msgstr ""
 "Wenn Sie *wirklich* wissen, was Sie tun, können Sie die nächste\n"
 "Frage mit ja beantworten\n"
 
-#: g10/pkclist.c:278
+#: g10/pkclist.c:334
 msgid "untrusted_key.override"
 msgstr ""
 
-#: g10/pkclist.c:283
+#: g10/pkclist.c:339
 msgid "WARNING: Using untrusted key!\n"
 msgstr "WARNUNG: Ein Schlüssel ohne gesichertes Vertrauen wird benutzt!\n"
 
-#: g10/pkclist.c:319
+#: g10/pkclist.c:375
 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:320
+#: g10/pkclist.c:376
 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:341
+#: g10/pkclist.c:397
 msgid "Note: This key has expired!\n"
 msgstr "Hinweis: Dieser Schlüssel ist verfallen!\n"
 
-#: g10/pkclist.c:348
+#: g10/pkclist.c:404
 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:350
+#: g10/pkclist.c:406
 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:365
+#: g10/pkclist.c:421
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "WARNUNG: Wir haben KEIN Vertrauen zu diesem Schlüssel!\n"
 
-#: g10/pkclist.c:366
+#: g10/pkclist.c:422
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "         Die Signatur ist wahrscheinlich eine FÄLSCHUNG.\n"
 
-#: g10/pkclist.c:373
+#: g10/pkclist.c:429
 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:376
+#: g10/pkclist.c:432
 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:421
+#: g10/pkclist.c:477
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -925,82 +1000,82 @@ msgstr ""
 "Sie gaben keine User-ID angegeben (Benutzen Sie die Option \"-r\").\n"
 "\n"
 
-#: g10/pkclist.c:425
+#: g10/pkclist.c:481
 msgid "pklist.user_id.enter"
 msgstr ""
 
-#: g10/pkclist.c:426
+#: g10/pkclist.c:482
 msgid "Enter the user ID: "
 msgstr "Geben Sie die User-ID ein: "
 
-#: g10/pkclist.c:437
+#: g10/pkclist.c:493
 msgid "No such user ID.\n"
 msgstr "Keine solche User-ID vorhanden.\n"
 
-#: g10/pkclist.c:471 g10/pkclist.c:498
+#: g10/pkclist.c:527 g10/pkclist.c:554
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s: übersprungen: %s\n"
 
-#: g10/pkclist.c:479
+#: g10/pkclist.c:535
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s: Fehler beim Prüfen des Schlüssels: %s\n"
 
-#: g10/pkclist.c:505
+#: g10/pkclist.c:561
 msgid "no valid addressees\n"
 msgstr "Keine gültigen Adressaten\n"
 
-#: g10/keygen.c:123
+#: g10/keygen.c:124
 msgid "writing self signature\n"
-msgstr "Die Selbst-Signatur wird geschrieben\n"
+msgstr "Die Eigensignatur wird geschrieben\n"
 
-#: g10/keygen.c:161
+#: g10/keygen.c:162
 msgid "writing key binding signature\n"
 msgstr "Schreiben der \"key-binding\" Signatur\n"
 
-#: g10/keygen.c:387
+#: g10/keygen.c:388
 msgid "Please select what kind of key you want:\n"
 msgstr "Bitte wählen Sie, welche Art von Schlüssel Sie möchten:\n"
 
-#: g10/keygen.c:389
+#: g10/keygen.c:390
 #, c-format
 msgid "   (%d) DSA and ElGamal (default)\n"
 msgstr "   (%d) DSA und ElGamal (voreingestellt)\n"
 
-#: g10/keygen.c:390
+#: g10/keygen.c:391
 #, c-format
 msgid "   (%d) ElGamal (sign and encrypt)\n"
 msgstr "   (%d) ElGamal (signieren und verschlüsseln)\n"
 
-#: g10/keygen.c:392
+#: g10/keygen.c:393
 #, c-format
 msgid "   (%d) ElGamal (encrypt only)\n"
 msgstr "   (%d) ElGamal (nur verschlüsseln)\n"
 
-#: g10/keygen.c:393
+#: g10/keygen.c:394
 #, c-format
 msgid "   (%d) DSA (sign only)\n"
 msgstr "   (%d) DSA (nur signieren)\n"
 
-#: g10/keygen.c:394
+#: g10/keygen.c:395
 #, c-format
 msgid "   (%d) ElGamal in a v3 packet\n"
-msgstr "   (%d) ElGamal in einem v3-Packet\n"
+msgstr "   (%d) ElGamal in einem v3-Paket\n"
 
-#: g10/keygen.c:398
+#: g10/keygen.c:399
 msgid "keygen.algo"
 msgstr ""
 
-#: g10/keygen.c:398
+#: g10/keygen.c:399
 msgid "Your selection? "
 msgstr "Ihre Auswahl? "
 
-#: g10/keygen.c:424
+#: g10/keygen.c:425
 msgid "Invalid selection.\n"
 msgstr "Ungültige Auswahl.\n"
 
-#: g10/keygen.c:436
+#: g10/keygen.c:437
 #, c-format
 msgid ""
 "About to generate a new %s keypair.\n"
@@ -1013,23 +1088,23 @@ msgstr ""
 "              standard Schlüssellänge ist 1024 Bits\n"
 "      größte sinnvolle Schlüssellänge ist 2048 Bits\n"
 
-#: g10/keygen.c:442
+#: g10/keygen.c:443
 msgid "keygen.size"
 msgstr ""
 
-#: g10/keygen.c:443
+#: g10/keygen.c:444
 msgid "What keysize do you want? (1024) "
-msgstr "Welche Schlüssellänge wünschen Sie? (1024)"
+msgstr "Welche Schlüssellänge wünschen Sie? (1024) "
 
-#: g10/keygen.c:448
+#: g10/keygen.c:449
 msgid "DSA only allows keysizes from 512 to 1024\n"
 msgstr "DSA erlaubt nur Schlüssellängen von 512 bis 1024\n"
 
-#: g10/keygen.c:450
+#: g10/keygen.c:451
 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:453
+#: g10/keygen.c:454
 #, fuzzy
 msgid ""
 "Keysizes larger than 2048 are not suggested because\n"
@@ -1038,15 +1113,15 @@ msgstr ""
 "Schlüssellängen größer als 2048 werden nicht empfohlen, da die Berechnungen "
 "dann WIRKLICH lange brauchen\n"
 
-#: g10/keygen.c:455
+#: g10/keygen.c:456
 msgid "keygen.size.huge.okay"
 msgstr ""
 
-#: g10/keygen.c:456
+#: g10/keygen.c:457
 msgid "Are you sure that you want this keysize? "
 msgstr "Sind Sie sicher, daß Sie diese Schlüssellänge wünschen? "
 
-#: g10/keygen.c:457
+#: g10/keygen.c:458
 msgid ""
 "Okay, but keep in mind that your monitor and keyboard radiation is also very "
 "vulnerable to attacks!\n"
@@ -1054,25 +1129,25 @@ 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:464
+#: g10/keygen.c:465
 msgid "keygen.size.large.okay"
 msgstr ""
 
-#: g10/keygen.c:465
+#: g10/keygen.c:466
 msgid "Do you really need such a large keysize? "
-msgstr "Brauchen Sie wirklich eine derartig große Schlüssellänge? "
+msgstr "Brauchen Sie wirklich einen derartig langen Schlüssel? "
 
-#: g10/keygen.c:471
+#: g10/keygen.c:472
 #, c-format
 msgid "Requested keysize is %u bits\n"
 msgstr "Die verlangte Schlüssellänge beträgt %u Bit\n"
 
-#: g10/keygen.c:474 g10/keygen.c:478
+#: g10/keygen.c:475 g10/keygen.c:479
 #, c-format
 msgid "rounded up to %u bits\n"
 msgstr "aufgerundet auf %u Bit\n"
 
-#: g10/keygen.c:491
+#: g10/keygen.c:492
 msgid ""
 "Please specify how long the key should be valid.\n"
 "         0 = key does not expire\n"
@@ -1088,37 +1163,37 @@ msgstr ""
 "      <n>m = Schlüssel verfällt nach n Monaten\n"
 "      <n>y = Schlüssel verfällt nach n Jahren\n"
 
-#: g10/keygen.c:506
+#: g10/keygen.c:507
 msgid "keygen.valid"
 msgstr ""
 
-#: g10/keygen.c:506
+#: g10/keygen.c:507
 msgid "Key is valid for? (0) "
 msgstr "Der Schlüssel bleibt wie lange gültig? (0) "
 
-#: g10/keygen.c:517
+#: g10/keygen.c:518
 msgid "invalid value\n"
 msgstr "Ungültiger Wert.\n"
 
-#: g10/keygen.c:522
+#: g10/keygen.c:523
 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:528
+#: g10/keygen.c:529
 #, c-format
 msgid "Key expires at %s\n"
 msgstr "Der Schlüssel verfällt am %s\n"
 
-#: g10/keygen.c:532
+#: g10/keygen.c:534
 msgid "keygen.valid.okay"
 msgstr ""
 
-#: g10/keygen.c:533
+#: g10/keygen.c:535
 msgid "Is this correct (y/n)? "
 msgstr "Ist dies richtig? (j/n) "
 
-#: g10/keygen.c:569
+#: g10/keygen.c:577
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1134,51 +1209,51 @@ msgstr ""
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 
-#: g10/keygen.c:580
+#: g10/keygen.c:588
 msgid "keygen.name"
 msgstr ""
 
-#: g10/keygen.c:580
+#: g10/keygen.c:588
 msgid "Real name: "
 msgstr "Ihr Name (\"Vorname Nachname\"): "
 
-#: g10/keygen.c:584
+#: g10/keygen.c:592
 msgid "Invalid character in name\n"
 msgstr "Ungültiges Zeichen im Namen\n"
 
-#: g10/keygen.c:586
+#: g10/keygen.c:594
 msgid "Name may not start with a digit\n"
 msgstr "Der Name darf nicht mit einer Ziffer beginnen.\n"
 
-#: g10/keygen.c:588
+#: g10/keygen.c:596
 msgid "Name must be at least 5 characters long\n"
 msgstr "Der Name muß min. 5 Zeichen lang sein.\n"
 
-#: g10/keygen.c:596
+#: g10/keygen.c:604
 msgid "keygen.email"
 msgstr ""
 
-#: g10/keygen.c:596
+#: g10/keygen.c:604
 msgid "Email address: "
 msgstr "E-Mail-Adresse: "
 
-#: g10/keygen.c:608
+#: g10/keygen.c:616
 msgid "Not a valid email address\n"
 msgstr "E-Mail-Adresse is ungültig\n"
 
-#: g10/keygen.c:616
+#: g10/keygen.c:624
 msgid "keygen.comment"
 msgstr ""
 
-#: g10/keygen.c:616
+#: g10/keygen.c:624
 msgid "Comment: "
 msgstr "Kommentar: "
 
-#: g10/keygen.c:622
+#: g10/keygen.c:630
 msgid "Invalid character in comment\n"
 msgstr "Ungültiges Zeichen im Kommentar.\n"
 
-#: g10/keygen.c:642
+#: g10/keygen.c:650
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1189,21 +1264,21 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:645
+#: g10/keygen.c:653
 msgid "NnCcEeOoQq"
 msgstr ""
 
-#: g10/keygen.c:654
+#: g10/keygen.c:662
 #, fuzzy
 msgid "keygen.userid.cmd"
 msgstr "Geben Sie bitte \"help\" ein."
 
-#: g10/keygen.c:655
+#: g10/keygen.c:663
 #, fuzzy
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr "Ändern: N=Name, C=Kommentar, E=E-Mail, O=Okay? "
 
-#: g10/keygen.c:707
+#: g10/keygen.c:715
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1211,11 +1286,11 @@ msgstr ""
 "Sie benötigen eine \"passphrase\", um den geheimen Schlüssel zu schützen.\n"
 "\n"
 
-#: g10/keyedit.c:389 g10/keygen.c:715
+#: g10/keyedit.c:389 g10/keygen.c:723
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "\"passphrase\" nicht richtig wiederholt; noch einmal.\n"
 
-#: g10/keygen.c:721
+#: g10/keygen.c:729
 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"
@@ -1228,7 +1303,7 @@ msgstr ""
 "aufrufen.\n"
 "\n"
 
-#: g10/keygen.c:742
+#: g10/keygen.c:750
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (work in another window, move the mouse, utilize the\n"
@@ -1239,58 +1314,59 @@ msgstr ""
 "unterstützen, indem Sie z.B. in einem anderen Fenster/Konsole irgendetwas\n"
 "tippen oder irgendwelche anderen Programme benutzen.\n"
 
-#: g10/keygen.c:812
+#: g10/keygen.c:820
 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:820
+#: g10/keygen.c:828
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "Der DSA Schlüssel wird 1024 Bits haben.\n"
 
-#: g10/keygen.c:826
+#: g10/keygen.c:834
 #, fuzzy
 msgid "Key generation cancelled.\n"
 msgstr "Schlüsselerzeugung fehlgeschlagen: %s\n"
 
-#: g10/keygen.c:836
+#: g10/keygen.c:844
 #, c-format
 msgid "writing public certificate to '%s'\n"
 msgstr "schreiben des öffentlichen Schlüssels nach '%s'\n"
 
-#: g10/keygen.c:837
+#: g10/keygen.c:845
 #, c-format
 msgid "writing secret certificate to '%s'\n"
 msgstr "schreiben des geheimen Schlüssels nach '%s'\n"
 
-#: g10/keygen.c:914
+#: g10/keygen.c:922
 msgid "public and secret key created and signed.\n"
 msgstr "Öffentlichen und geheimen Schlüssel erzeugt und signiert.\n"
 
-#: g10/keygen.c:916
+#: g10/keygen.c:924
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
 "the command \"--add-key\" to generate a secondary key for this purpose.\n"
 msgstr ""
 "Bitte beachten Sie, daß dieser Schlüssel nicht zum Verschlüsseln benutzt\n"
 "werden kann.  Sie können aber mit dem Kommando \"--add-key\" einen\n"
-"Sekundärschlüssel zu diesem Schlüssel hinzufügen.\n"
+"Zweitschlüssel zu diesem Schlüssel hinzufügen.\n"
 
-#: g10/keygen.c:930 g10/keygen.c:1015
+#: g10/keygen.c:938 g10/keygen.c:1023
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Schlüsselerzeugung fehlgeschlagen: %s\n"
 
-#: g10/keygen.c:992
+#: g10/keygen.c:1000
 msgid "keygen.sub.okay"
 msgstr ""
 
-#: g10/keygen.c:993
+#: g10/keygen.c:1001
 #, fuzzy
 msgid "Really create? "
-msgstr "Ihr Name (\"Vorname Nachname\"): "
+msgstr "Wirklich erzeugen? "
 
-#: g10/encode.c:88 g10/openfile.c:81 g10/openfile.c:158
+#: g10/encode.c:88 g10/openfile.c:81 g10/openfile.c:158 g10/tdbio.c:417
+#: g10/tdbio.c:468
 #, c-format
 msgid "%s: can't open: %s\n"
 msgstr "%s: kann nicht geöffnet werden: %s\n"
@@ -1301,8 +1377,8 @@ msgid "error creating passphrase: %s\n"
 msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
 
 #: g10/encode.c:155 g10/encode.c:269
-#, c-format
-msgid "%s: warning: empty file\n"
+#, fuzzy, c-format
+msgid "%s: WARNING: empty file\n"
 msgstr "%s: Achtung: Leere Datei.\n"
 
 #: g10/encode.c:222
@@ -1315,12 +1391,26 @@ msgstr "Lesen von '%s'\n"
 msgid "%s encrypted for: %s\n"
 msgstr "%s verschlüsselt für: %s\n"
 
-#: g10/getkey.c:950
+#: g10/export.c:162
+#, fuzzy
+msgid "WARNING: nothing exported\n"
+msgstr "WARNUNG: Ein Schlüssel ohne gesichertes Vertrauen wird benutzt!\n"
+
+#: g10/getkey.c:163
+msgid "too many entries in pk cache - disabled\n"
+msgstr ""
+
+#: g10/getkey.c:261
+msgid "too many entries in unk cache - disabled\n"
+msgstr ""
+
+#: g10/getkey.c:967
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr ""
+"der Zweitschlüssel %08lX wird anstelle des Haptschlüssels %08lX verwendet\n"
 
-#: g10/import.c:125 g10/trustdb.c:1046
+#: g10/import.c:125 g10/trustdb.c:1082
 #, c-format
 msgid "can't open file: %s\n"
 msgstr "Kann die Datei nicht öffnen: %s\n"
@@ -1330,12 +1420,12 @@ msgstr "Kann die Datei nicht 
 msgid "skipping block of type %d\n"
 msgstr "überspringe den Block vom Typ %d\n"
 
-#: g10/import.c:148 g10/trustdb.c:1289 g10/trustdb.c:1358
+#: g10/import.c:148 g10/trustdb.c:1341 g10/trustdb.c:1410
 #, c-format
 msgid "%lu keys so far processed\n"
-msgstr ""
+msgstr "%lu Schlüssel bislang bearbeitet\n"
 
-#: g10/import.c:153 g10/trustdb.c:1122
+#: g10/import.c:153 g10/trustdb.c:1158
 #, c-format
 msgid "read error: %s\n"
 msgstr "Lesefehler: %s\n"
@@ -1343,57 +1433,57 @@ msgstr "Lesefehler: %s\n"
 #: g10/import.c:155
 #, c-format
 msgid "Total number processed: %lu\n"
-msgstr ""
+msgstr "Anzahl insgesamt bearbeiteter Schlüssel: %lu\n"
 
 #: g10/import.c:157
 #, c-format
 msgid "          w/o user IDs: %lu\n"
-msgstr ""
+msgstr "         ohne User-ID: %lu\n"
 
 #: g10/import.c:159
 #, c-format
 msgid "              imported: %lu"
-msgstr ""
+msgstr "           importiert: %lu"
 
 #: g10/import.c:165
 #, c-format
 msgid "             unchanged: %lu\n"
-msgstr ""
+msgstr "          unverändert: %lu\n"
 
 #: g10/import.c:167
 #, c-format
 msgid "          new user IDs: %lu\n"
-msgstr ""
+msgstr "        neue User-IDs: %lu\n"
 
 #: g10/import.c:169
 #, c-format
 msgid "           new subkeys: %lu\n"
-msgstr ""
+msgstr "  neue Unterschlüssel: %lu\n"
 
 #: g10/import.c:171
 #, fuzzy, c-format
 msgid "        new signatures: %lu\n"
-msgstr "Schlüssel %08lX: %d neue Signaturen\n"
+msgstr "      neue Signaturen: %lu\n"
 
 #: g10/import.c:173
 #, fuzzy, c-format
 msgid "   new key revocations: %lu\n"
-msgstr "Schlüssel %08lX: Öffentlicher Schlüssel nicht gefunden: %s\n"
+msgstr "neue Schlüsselwiderrufe: %lu\n"
 
 #: g10/import.c:175
 #, fuzzy, c-format
 msgid "      secret keys read: %lu\n"
-msgstr "En-Armor fehlgeschlagen: %s\n"
+msgstr "gelesene geheime Schl.: %lu\n"
 
 #: g10/import.c:177
 #, fuzzy, c-format
 msgid "  secret keys imported: %lu\n"
-msgstr "Schlüssel %08lX: Privater Schlüssel importiert\n"
+msgstr "geheime Schlüssel importiert: %lu\n"
 
 #: g10/import.c:179
 #, fuzzy, c-format
 msgid " secret keys unchanged: %lu\n"
-msgstr "En-Armor fehlgeschlagen: %s\n"
+msgstr "unveränderte geh.Schl.: %lu\n"
 
 #: g10/import.c:321 g10/import.c:513
 #, c-format
@@ -1407,7 +1497,7 @@ msgstr "Schl
 
 #: g10/import.c:334
 msgid "this may be caused by a missing self-signature\n"
-msgstr ""
+msgstr "dies könnte durch eine fehlende Eigensignatur verursacht worden sein\n"
 
 #: g10/import.c:345 g10/import.c:581
 #, c-format
@@ -1416,9 +1506,9 @@ msgstr "Schl
 
 #: g10/import.c:351
 msgid "no default public keyring\n"
-msgstr "Kein voreingestellter öffentlicher Schlüsselring\n"
+msgstr "Kein voreingestellter öffentlicher Schlüsselbund\n"
 
-#: g10/import.c:355 g10/openfile.c:105
+#: g10/import.c:355 g10/openfile.c:105 g10/sign.c:205 g10/sign.c:563
 #, c-format
 msgid "writing to '%s'\n"
 msgstr "Schreiben nach '%s'\n"
@@ -1426,12 +1516,12 @@ msgstr "Schreiben nach '%s'\n"
 #: g10/import.c:359 g10/import.c:419 g10/import.c:635
 #, c-format
 msgid "can't lock public keyring: %s\n"
-msgstr "kann öffentlichen Schlüsselring nicht sperren: %s\n"
+msgstr "kann öffentlichen Schlüsselbund nicht sperren: %s\n"
 
 #: g10/import.c:362
 #, c-format
 msgid "can't write to keyring: %s\n"
-msgstr "kann Schlüsselring nicht schreiben: %s\n"
+msgstr "kann Schlüsselbund nicht schreiben: %s\n"
 
 #: g10/import.c:366
 #, c-format
@@ -1447,15 +1537,16 @@ msgstr "Schl
 #, c-format
 msgid "key %08lX: can't locate original keyblock: %s\n"
 msgstr ""
+"Schlüssel %08lX: der lokale originale Keyblock wurde nicht gefunden: %s\n"
 
 #: g10/import.c:399 g10/import.c:597
 #, c-format
 msgid "key %08lX: can't read original keyblock: %s\n"
-msgstr ""
+msgstr "Schlüssel %08lX: Lesefehler im lokalen originalen Keyblock: %s\n"
 
 #: g10/import.c:416 g10/import.c:528 g10/import.c:632
 msgid "writing keyblock\n"
-msgstr "schreiben des Schlüsselblocks\n"
+msgstr "Schreiben des Schlüsselblocks\n"
 
 #: g10/import.c:422 g10/import.c:638
 #, c-format
@@ -1485,12 +1576,12 @@ msgstr "Schl
 #: g10/import.c:439
 #, c-format
 msgid "key %08lX: 1 new subkey\n"
-msgstr "Schlüssel %08lX: 1 neuer Sekundärschlüssel\n"
+msgstr "Schlüssel %08lX: 1 neuer Unterschlüssel\n"
 
 #: g10/import.c:442
 #, c-format
 msgid "key %08lX: %d new subkeys\n"
-msgstr "Schlüssel %08lX: %d neue Sekundärschlüssel\n"
+msgstr "Schlüssel %08lX: %d neue Unterschlüssel\n"
 
 #: g10/import.c:452
 #, c-format
@@ -1500,12 +1591,12 @@ msgstr "Schl
 #: g10/import.c:531
 #, c-format
 msgid "can't lock secret keyring: %s\n"
-msgstr "kann geheimen Schlüsselring nicht sperren: %s\n"
+msgstr "kann geheimen Schlüsselbund nicht sperren: %s\n"
 
 #: g10/import.c:534
 #, fuzzy, c-format
 msgid "can't write keyring: %s\n"
-msgstr "kann Schlüsselring nicht schreiben: %s\n"
+msgstr "kann Schlüsselbund nicht schreiben: %s\n"
 
 #. we are ready
 #: g10/import.c:537
@@ -1517,7 +1608,7 @@ msgstr "Schl
 #: g10/import.c:541
 #, c-format
 msgid "key %08lX: already in secret keyring\n"
-msgstr "Schlüssel %08lX: Ist bereits im privaten Schlüsselring\n"
+msgstr "Schlüssel %08lX: Ist bereits im privaten Schlüsselbund\n"
 
 #: g10/import.c:546
 #, c-format
@@ -1539,7 +1630,7 @@ msgstr "Schl
 #: g10/import.c:642
 #, c-format
 msgid "key %08lX: revocation certificate imported\n"
-msgstr "Schlüssel %08lX: Widerruofzertifikat importiert\n"
+msgstr "Schlüssel %08lX: Widerrufzertifikat importiert\n"
 
 #: g10/import.c:673
 #, c-format
@@ -1549,12 +1640,12 @@ msgstr "Schl
 #: g10/import.c:680
 #, c-format
 msgid "key %08lX: unsupported public key algorithm\n"
-msgstr "Schlüssel %08lX: Public-Key-Algorithmus wird nicht unterstützt\n"
+msgstr "Schlüssel %08lX: Public-Key-Verfahren wird nicht unterstützt\n"
 
 #: g10/import.c:681
 #, c-format
 msgid "key %08lX: invalid self-signature\n"
-msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
+msgstr "Schlüssel %08lX: Ungültige Eigensignatur\n"
 
 #: g10/import.c:710
 #, c-format
@@ -1579,7 +1670,7 @@ msgstr "Schl
 #: g10/import.c:866 g10/import.c:902
 #, c-format
 msgid "key %08lX: our copy has no self-signature\n"
-msgstr "Schlüssel %08lX: Unser Kopie hat keine Selbst-Signatur\n"
+msgstr "Schlüssel %08lX: Unsere Kopie hat keine Eigensignatur\n"
 
 #: g10/keyedit.c:81
 #, c-format
@@ -1589,7 +1680,7 @@ msgstr "%s: Benutzer nicht gefunden\n"
 #: g10/keyedit.c:164
 #, fuzzy
 msgid "[self-signature]"
-msgstr "Selbst-Signatur übergangen\n"
+msgstr "[Eigensignatur]"
 
 #: g10/keyedit.c:182
 #, fuzzy
@@ -1604,17 +1695,17 @@ msgstr "%d schlechte Signaturen\n"
 #: g10/keyedit.c:186
 #, fuzzy
 msgid "1 signature not checked due to a missing key\n"
-msgstr "%s Signaturen aufgrund von Fehlern nicht geprüft\n"
+msgstr "1 Signatur wegen fehlendem Schlüssel nicht geprüft\n"
 
 #: g10/keyedit.c:188
 #, fuzzy, c-format
 msgid "%d signatures not checked due to missing keys\n"
-msgstr "%s Signaturen aufgrund von Fehlern nicht geprüft\n"
+msgstr "%d Signaturen wegen fehlenden Schlüsseln nicht geprüft\n"
 
 #: g10/keyedit.c:190
 #, fuzzy
 msgid "1 signature not checked due to an error\n"
-msgstr "%s Signaturen aufgrund von Fehlern nicht geprüft\n"
+msgstr "1 Signatur aufgrund von Fehler nicht geprüft\n"
 
 #: g10/keyedit.c:192
 #, c-format
@@ -1624,12 +1715,12 @@ msgstr "%s Signaturen aufgrund von Fehlern nicht gepr
 #: g10/keyedit.c:194
 #, fuzzy
 msgid "1 user id without valid self-signature detected\n"
-msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
+msgstr "Eine User-ID ohne gültige Eigensignatur entdeckt\n"
 
 #: g10/keyedit.c:196
 #, c-format
 msgid "%d user ids without valid self-signatures detected\n"
-msgstr ""
+msgstr "%d User-IDs ohne gültige Eigensignatur entdeckt\n"
 
 #: g10/keyedit.c:258
 #, fuzzy, c-format
@@ -1639,14 +1730,16 @@ msgstr "Ist bereits mit Schl
 #: g10/keyedit.c:266
 #, fuzzy, c-format
 msgid "Nothing to sign with key %08lX\n"
-msgstr "Nichts zu signieren.\n"
+msgstr "Nichts zu signieren für Schlüssel %08lX\n"
 
 #: g10/keyedit.c:275
 #, fuzzy
 msgid ""
 "Are you really sure that you want to sign this key\n"
 "with your key: \""
-msgstr "Sind Sie wirklich sicher, daß Sie diesen Schlüssel signieren wollen:\n"
+msgstr ""
+"Sind Sie wirklich sicher, daß Sie diesen Schlüssel mit Ihrem\n"
+"Schlüssel signieren wollen: \""
 
 #: g10/keyedit.c:282
 msgid "sign_uid.okay"
@@ -1654,12 +1747,12 @@ msgstr ""
 
 #: g10/keyedit.c:282
 msgid "Really sign? "
-msgstr ""
+msgstr "Wurklich unterschreiben? "
 
-#: g10/keyedit.c:303
+#: g10/keyedit.c:303 g10/sign.c:65
 #, fuzzy, c-format
 msgid "signing failed: %s\n"
-msgstr "En-Armor fehlgeschlagen: %s\n"
+msgstr "Unterschreiben fehlgeschlagen: %s\n"
 
 #: g10/keyedit.c:356
 msgid "This key is not protected.\n"
@@ -1687,8 +1780,7 @@ msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "\n"
 msgstr ""
-"Sie wollen keine \"passphrase\" - dies ist wahrscheinlich eine *schlechte* "
-"Idee!\n"
+"Sie wollen keine \"passphrase\" - dies ist bestimmt *keine* gute Idee!\n"
 "\n"
 
 #: g10/keyedit.c:395
@@ -1699,366 +1791,411 @@ msgstr ""
 msgid "Do you really want to do this? "
 msgstr "Möchten Sie dies wirklich tun? "
 
-#: g10/keyedit.c:489
-msgid "quit"
+#: g10/keyedit.c:455
+msgid "moving a key signature to the correct place\n"
 msgstr ""
 
-#: g10/keyedit.c:489
-msgid "quit this menu"
-msgstr ""
+#: g10/keyedit.c:490
+msgid "quit"
+msgstr "quit"
 
 #: g10/keyedit.c:490
-msgid "q"
-msgstr ""
+msgid "quit this menu"
+msgstr "Menü verlassen"
 
 #: g10/keyedit.c:491
+msgid "q"
+msgstr "q"
+
+#: g10/keyedit.c:492
 msgid "save"
-msgstr ""
+msgstr "save"
 
-#: g10/keyedit.c:491
+#: g10/keyedit.c:492
 msgid "save and quit"
-msgstr ""
+msgstr "speichern und verlassen"
 
-#: g10/keyedit.c:492
+#: g10/keyedit.c:493
 msgid "help"
-msgstr ""
+msgstr "help"
 
-#: g10/keyedit.c:492
+#: g10/keyedit.c:493
 msgid "show this help"
-msgstr ""
+msgstr "Diese Hilfe zeigen"
 
-#: g10/keyedit.c:494
+#: g10/keyedit.c:495
 msgid "fpr"
-msgstr ""
+msgstr "fpr"
 
-#: g10/keyedit.c:494
+#: g10/keyedit.c:495
 #, fuzzy
 msgid "show fingerprint"
-msgstr "Liste der Schlüssel und ihrer \"Fingerabdrücke\""
+msgstr "\"Fingerabdruck\" anzeigen"
 
-#: g10/keyedit.c:495
+#: g10/keyedit.c:496
 #, fuzzy
 msgid "list"
 msgstr "Liste der Schlüssel"
 
-#: g10/keyedit.c:495
+#: g10/keyedit.c:496
 #, fuzzy
 msgid "list key and user ids"
-msgstr "Liste der Schlüssel und ihrer \"Fingerabdrücke\""
+msgstr "Schlüssel und User-ID anzeigen"
 
-#: g10/keyedit.c:496
+#: g10/keyedit.c:497
 msgid "l"
-msgstr ""
+msgstr "l"
 
-#: g10/keyedit.c:497
+#: g10/keyedit.c:498
 msgid "uid"
-msgstr ""
+msgstr "uid"
 
-#: g10/keyedit.c:497
+#: g10/keyedit.c:498
 msgid "select user id N"
-msgstr ""
+msgstr "User-ID N auswählen"
 
-#: g10/keyedit.c:498
+#: g10/keyedit.c:499
 msgid "key"
-msgstr ""
+msgstr "key"
 
-#: g10/keyedit.c:498
+#: g10/keyedit.c:499
 msgid "select secondary key N"
-msgstr ""
+msgstr "Zweitschlüssel N auswählen"
 
-#: g10/keyedit.c:499
+#: g10/keyedit.c:500
 msgid "check"
-msgstr ""
+msgstr "check"
 
-#: g10/keyedit.c:499
+#: g10/keyedit.c:500
 #, fuzzy
 msgid "list signatures"
-msgstr "Liste der Schlüssel und ihrer Signaturen"
+msgstr "Liste der Signaturen"
 
-#: g10/keyedit.c:500
+#: g10/keyedit.c:501
 msgid "c"
-msgstr ""
+msgstr "c"
 
-#: g10/keyedit.c:501
+#: g10/keyedit.c:502
 msgid "sign"
-msgstr ""
+msgstr "sign"
 
-#: g10/keyedit.c:501
+#: g10/keyedit.c:502
 #, fuzzy
 msgid "sign the key"
-msgstr "Signieren? "
+msgstr "Den Schlüssel signieren"
 
-#: g10/keyedit.c:502
+#: g10/keyedit.c:503
 msgid "s"
-msgstr ""
+msgstr "s"
 
-#: g10/keyedit.c:503
+#: g10/keyedit.c:504
 msgid "debug"
-msgstr ""
+msgstr "debug"
 
-#: g10/keyedit.c:504
+#: g10/keyedit.c:505
 msgid "adduid"
-msgstr ""
+msgstr "adduid"
 
-#: g10/keyedit.c:504
+#: g10/keyedit.c:505
 msgid "add a user id"
-msgstr ""
+msgstr "Eine User-ID hinzufügen"
 
-#: g10/keyedit.c:505
+#: g10/keyedit.c:506
 msgid "deluid"
-msgstr ""
+msgstr "deluid"
 
-#: g10/keyedit.c:505
+#: g10/keyedit.c:506
 #, fuzzy
 msgid "delete user id"
-msgstr "--delete-key Benutzername"
+msgstr "Eine User-ID entfernen"
 
-#: g10/keyedit.c:506
+#: g10/keyedit.c:507
 msgid "addkey"
-msgstr ""
+msgstr "addkey"
 
-#: g10/keyedit.c:506
+#: g10/keyedit.c:507
 #, fuzzy
 msgid "add a secondary key"
-msgstr "Einen Sekundärschlüssel dem Primärschlüssel hinzufügen"
+msgstr "Einen Zweitschlüssel hinzufügen"
 
-#: g10/keyedit.c:507
+#: g10/keyedit.c:508
 msgid "delkey"
-msgstr ""
+msgstr "delkey"
 
-#: g10/keyedit.c:507
+#: g10/keyedit.c:508
 msgid "delete a secondary key"
-msgstr ""
+msgstr "Einen Zweitschlüssel entfernen"
 
-#: g10/keyedit.c:508
+#: g10/keyedit.c:509
 msgid "expire"
-msgstr ""
+msgstr "expire"
 
-#: g10/keyedit.c:508
+#: g10/keyedit.c:509
 #, fuzzy
 msgid "change the expire date"
-msgstr "Die \"Passphrase\" des geheimen Schlüssels ändern"
+msgstr "Ändern des Verfallsdatums"
 
-#: g10/keyedit.c:509
+#: g10/keyedit.c:510
 msgid "toggle"
-msgstr ""
+msgstr "toggle"
 
-#: g10/keyedit.c:509
+#: g10/keyedit.c:510
 msgid "toggle between secret and public key listing"
-msgstr ""
+msgstr "Umschalten zwischen Anzeige geheimer und öffentlicher Schlüssel"
 
-#: g10/keyedit.c:511
+#: g10/keyedit.c:512
 msgid "t"
-msgstr ""
+msgstr "t"
 
-#: g10/keyedit.c:512
+#: g10/keyedit.c:513
 msgid "pref"
-msgstr ""
+msgstr "pref"
 
-#: g10/keyedit.c:512
+#: g10/keyedit.c:513
 #, fuzzy
 msgid "list preferences"
-msgstr "Liste der geheimen Schlüssel"
+msgstr "Liste der Voreinstellungen"
 
-#: g10/keyedit.c:513
+#: g10/keyedit.c:514
 msgid "passwd"
-msgstr ""
+msgstr "passwd"
 
-#: g10/keyedit.c:513
+#: g10/keyedit.c:514
 #, fuzzy
 msgid "change the passphrase"
-msgstr "Die \"Passphrase\" des geheimen Schlüssels ändern"
+msgstr "Die \"Passphrase\" ändern"
 
-#: g10/keyedit.c:514
+#: g10/keyedit.c:515
 msgid "trust"
-msgstr ""
+msgstr "trust"
 
-#: g10/keyedit.c:514
+#: g10/keyedit.c:515
 msgid "change the ownertrust"
-msgstr ""
+msgstr "Den \"Owner trust\" ändern"
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:534
 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:559
+#: g10/keyedit.c:561
 #, fuzzy
 msgid "Secret key is available.\n"
-msgstr "Öffentlicher Schlüssel ist nicht verfügbar.\n"
+msgstr "Geheimer Schlüssel ist vorhanden.\n"
 
-#: g10/keyedit.c:576
+#: g10/keyedit.c:590
 msgid "keyedit.cmd"
 msgstr "Geben Sie bitte \"help\" ein."
 
-#: g10/keyedit.c:576
+#: g10/keyedit.c:590
 #, fuzzy
 msgid "Command> "
-msgstr ""
-"@Kommandos:\n"
-" "
+msgstr "Befehl> "
 
-#: g10/keyedit.c:602
+#: g10/keyedit.c:617
 #, fuzzy
 msgid "Need the secret key to to this.\n"
-msgstr "Als geheimen Schlüsselring mitbenutzen"
+msgstr "Der geheimen Schlüssel wird hierzu benötigt.\n"
 
-#: g10/keyedit.c:621
+#: g10/keyedit.c:638
 msgid "keyedit.save.okay"
 msgstr ""
 
-#: g10/keyedit.c:622
+#: g10/keyedit.c:639
 msgid "Save changes? "
-msgstr ""
+msgstr "Änderungen speichern? "
 
-#: g10/keyedit.c:624
+#: g10/keyedit.c:641
 #, fuzzy
 msgid "keyedit.cancel.okay"
 msgstr "Geben Sie bitte \"help\" ein."
 
-#: g10/keyedit.c:625
+#: g10/keyedit.c:642
 msgid "Quit without saving? "
-msgstr ""
+msgstr "Beenden ohne zu speichern? "
 
-#: g10/keyedit.c:635
+#: g10/keyedit.c:652
 #, fuzzy, c-format
 msgid "update failed: %s\n"
-msgstr "De-Armor fehlgeschlagen: %s\n"
+msgstr "Änderung fehlgeschlagen: %s\n"
 
-#: g10/keyedit.c:642
+#: g10/keyedit.c:659
 #, fuzzy, c-format
 msgid "update secret failed: %s\n"
-msgstr "Enschlüsselung fehlgeschlagen: %s\n"
+msgstr "Änderung des Geheimnises fehlgeschlagen: %s\n"
 
-#: g10/keyedit.c:649
+#: g10/keyedit.c:666
 msgid "Key not changed so no update needed.\n"
-msgstr ""
+msgstr "Schlüssel ist nicht geändert worden, also ist keine Änderung nötig.\n"
 
-#: g10/keyedit.c:652 g10/keyedit.c:710
+#: g10/keyedit.c:669 g10/keyedit.c:727
 #, fuzzy, c-format
 msgid "update of trust db failed: %s\n"
-msgstr "Enschlüsselung fehlgeschlagen: %s\n"
+msgstr "Änderung der \"Trust-DB\" fehlgeschlagen: %s\n"
 
-#: g10/keyedit.c:683
+#: g10/keyedit.c:700
 msgid "keyedit.sign_all.okay"
 msgstr ""
 
-#: g10/keyedit.c:684
+#: g10/keyedit.c:701
 msgid "Really sign all user ids? "
-msgstr ""
+msgstr "Wirklich alle User-IDs beglaubigen? "
 
-#: g10/keyedit.c:685
+#: g10/keyedit.c:702
 msgid "Hint: Select the user ids to sign\n"
-msgstr ""
+msgstr "Tip: Wählen Sie die User-ID, die beglaubigt werden soll\n"
 
-#: g10/keyedit.c:721
+#: g10/keyedit.c:738
 msgid "You must select at least one user id.\n"
-msgstr ""
+msgstr "Zumindestens eine User-ID muß ausgewählt werden.\n"
 
-#: g10/keyedit.c:723
+#: g10/keyedit.c:740
 msgid "You can't delete the last user id!\n"
-msgstr ""
+msgstr "Die letzte User-ID kann nicht gelöscht werden!\n"
 
-#: g10/keyedit.c:725
+#: g10/keyedit.c:742
 msgid "keyedit.remove.uid.okay"
 msgstr ""
 
-#: g10/keyedit.c:726
+#: g10/keyedit.c:743
 #, fuzzy
 msgid "Really remove all selected user ids? "
-msgstr "Möchten Sie die ausgewählten Signaturen wirklich entfernen? "
+msgstr "Möchten Sie alle ausgewählten User-IDs wirklich entfernen? "
 
-#: g10/keyedit.c:727
+#: g10/keyedit.c:744
 #, fuzzy
 msgid "Really remove this user id? "
-msgstr "Die Signatur entfernen? "
+msgstr "Diese User-ID wirklich entfernen? "
 
-#: g10/keyedit.c:750
+#: g10/keyedit.c:767
 msgid "You must select at least one key.\n"
-msgstr ""
+msgstr "Zumindestens ein Schlüssel muß ausgewählt werden.\n"
 
-#: g10/keyedit.c:752
+#: g10/keyedit.c:769
 msgid "keyedit.remove.subkey.okay"
 msgstr ""
 
-#: g10/keyedit.c:754
+#: g10/keyedit.c:771
 #, fuzzy
 msgid "Do you really want to delete the selected keys? "
-msgstr "Möchten Sie die ausgewählten Signaturen wirklich entfernen? "
+msgstr "Möchten Sie die ausgewählten Schlüssel wirklich entfernen? "
 
-#: g10/keyedit.c:755
+#: g10/keyedit.c:772
 #, fuzzy
 msgid "Do you really want to delete this key? "
-msgstr "Möchten Sie dies wirklich tun? "
+msgstr "Möchten Sie diesen Schlüssel wirklich entfernen? "
 
-#: g10/keyedit.c:802
+#: g10/keyedit.c:819
 msgid "Invalid command  (try \"help\")\n"
-msgstr ""
+msgstr "Ungültiger Befehl (versuchen Sie's mal mit \"help\")\n"
 
-#: g10/keyedit.c:1180
+#: g10/keyedit.c:1197
 msgid "Please remove selections from the secret keys.\n"
-msgstr ""
+msgstr "Bitte entfernen Sie die Auswahl von den geheimen Schlüsseln.\n"
 
-#: g10/keyedit.c:1186
+#: g10/keyedit.c:1203
 #, fuzzy
 msgid "Please select at most one secondary key.\n"
-msgstr "Bitte wählen Sie, welche Art von Schlüssel Sie möchten:\n"
+msgstr "Bitte wählen Sie höchstens einen Zweitschlüssel aus.\n"
 
-#: g10/keyedit.c:1190
+#: g10/keyedit.c:1207
 msgid "Changing exiration time for a secondary key.\n"
-msgstr ""
+msgstr "Ändern des Verfallsdatums des Zweitschlüssels.\n"
 
-#: g10/keyedit.c:1192
+#: g10/keyedit.c:1209
 msgid "Changing exiration time for the primary key.\n"
-msgstr ""
+msgstr "Ändern des Verfallsdatums des Hauptschlüssels.\n"
 
-#: g10/keyedit.c:1236
+#: g10/keyedit.c:1250
 msgid "No corresponding signature in secret ring\n"
-msgstr ""
+msgstr "Keine entsprechende Signatur im geheimen Schlüsselbund\n"
 
-#: g10/keyedit.c:1296
+#: g10/keyedit.c:1310
 #, c-format
 msgid "No user id with index %d\n"
-msgstr ""
+msgstr "Keine User-ID mit Index %d\n"
 
-#: g10/keyedit.c:1341
+#: g10/keyedit.c:1355
 #, c-format
 msgid "No secondary key with index %d\n"
-msgstr ""
+msgstr "Kein Zweitschlüssel mit Index %d\n"
+
+#: g10/mainproc.c:198
+#, fuzzy
+msgid "public key encrypted data: Good DEK\n"
+msgstr "Entschlüsselung mit öffentlichem Schlüssel fehlgeschlagen: %s\n"
 
 #: g10/mainproc.c:201
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "Entschlüsselung mit öffentlichem Schlüssel fehlgeschlagen: %s\n"
 
+#: g10/mainproc.c:228
+#, fuzzy
+msgid "decryption okay\n"
+msgstr "Enschlüsselung fehlgeschlagen: %s\n"
+
 #: g10/mainproc.c:231
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr "Enschlüsselung fehlgeschlagen: %s\n"
 
 #: g10/mainproc.c:248
-msgid "note: sender requested \"for-your-eyes-only\"\n"
+#, fuzzy
+msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
+msgstr ""
+"Hinweis: Der Absender verlangte Vertraulichkeit(\"for-your-eyes-only\")\n"
+
+#: g10/mainproc.c:250
+#, c-format
+msgid "original file name='%.*s'\n"
+msgstr ""
+
+#: g10/mainproc.c:837
+msgid "signature verification suppressed\n"
 msgstr ""
 
-#: g10/mainproc.c:842
+#: g10/mainproc.c:843
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Signatur am %.*s mit %s Schlüssel %08lX erzeugt\n"
 
-#: g10/mainproc.c:850
+#: g10/mainproc.c:851
 msgid "BAD signature from \""
 msgstr "FALSCHE Signatur von \""
 
-#: g10/mainproc.c:851
+#: g10/mainproc.c:852
 msgid "Good signature from \""
 msgstr "Gültige Signatur von \""
 
-#: g10/mainproc.c:862
+#: g10/mainproc.c:865
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Signatur kann nicht geprüft werden: %s\n"
 
+#: g10/mainproc.c:938
+msgid "old style (PGP 2.x) signature\n"
+msgstr ""
+
+#: g10/mainproc.c:943
+msgid "invalid root packet detected in proc_tree()\n"
+msgstr ""
+
+#: g10/misc.c:88
+#, fuzzy, c-format
+msgid "can't disable core dumps: %s\n"
+msgstr "Datei '%s' kann nicht geöffnet werden: %s\n"
+
+#: g10/misc.c:90
+msgid "WARNING: Program may create a core file!\n"
+msgstr ""
+
+#: g10/parse-packet.c:109
+#, fuzzy, c-format
+msgid "can't handle public key algorithm %d\n"
+msgstr "kann öffentlichen Schlüsselbund nicht sperren: %s\n"
+
 #: g10/passphrase.c:141
 msgid ""
 "\n"
@@ -2094,8 +2231,8 @@ msgstr ""
 
 #: g10/passphrase.c:174
 #, fuzzy
-msgid "Enter pass phrase: "
-msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+msgid "Enter passphrase: "
+msgstr "Geben Sie die \"Passphrase\" ein: "
 
 #: g10/passphrase.c:177
 msgid "passphrase.repeat"
@@ -2106,38 +2243,62 @@ msgstr ""
 
 #: g10/passphrase.c:178
 #, fuzzy
-msgid "Repeat pass phrase: "
-msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+msgid "Repeat passphrase: "
+msgstr "Geben Sie die \"Passphrase\" nochmal ein: "
 
 #: g10/plaintext.c:102
 msgid "data not saved; use option \"--output\" to save it\n"
 msgstr ""
+"Daten wurden nicht gespeichert; verwenden Sie dafür die Option \"--output\"\n"
 
 #: g10/plaintext.c:214
-#, fuzzy
 msgid "detached_signature.filename"
-msgstr "Eine abgetrennte Signatur erzeugen"
+msgstr ""
 
 #: g10/plaintext.c:215
 msgid "Please enter name of data file: "
 msgstr "Bitte geben Sie den Namen der Datendatei ein: "
 
+#: g10/plaintext.c:236
+msgid "reading stdin ...\n"
+msgstr ""
+
 #: g10/plaintext.c:299
 #, c-format
 msgid "can't open signed data '%s'\n"
 msgstr "kann signierte Datei '%s' nicht öffnen.\n"
 
+#: g10/pubkey-enc.c:78
+#, c-format
+msgid "anonymous receiver; trying secret key %08lX ...\n"
+msgstr "Ungenannter Empfänger: Versuch mit geheimen Schlüssel %08lX ...\n"
+
+#: g10/pubkey-enc.c:84
+msgid "okay, we are the anonymous receiver.\n"
+msgstr "Alles klar, wir sind der ungenannte Empfänger.\n"
+
+#: g10/pubkey-enc.c:136
+#, fuzzy
+msgid "old encoding of the DEK is not supported\n"
+msgstr "Schutzmethode %d wird nicht unterstützt\n"
+
+#: g10/pubkey-enc.c:183
+#, fuzzy, c-format
+msgid "NOTE: cipher algorithm %d not found in preferences\n"
+msgstr "Hinweis: Methode %d ist kein bevorzugtes Verschlüsselungsverfahren\n"
+
 #: g10/seckey-cert.c:56
 #, fuzzy, c-format
 msgid "protection algorithm %d is not supported\n"
-msgstr "Hinweis: Methode %d ist kein bevorzugtes Verschlüsselungsverfahren\n"
+msgstr "Schutzmethode %d wird nicht unterstützt\n"
 
 #: g10/seckey-cert.c:169
 msgid "Invalid passphrase; please try again ...\n"
 msgstr "Ungültige \"passphrase\"; versuchen Sie's doch noch einmal ...\n"
 
 #: g10/seckey-cert.c:215
-msgid "Warning: Weak key detected - please change passphrase again.\n"
+#, fuzzy
+msgid "WARNING: Weak key detected - please change passphrase again.\n"
 msgstr ""
 "Warnung: Unsicherer Schlüssel entdeckt - bitte die \"Passphrase\" nochmal "
 "eingeben.\n"
@@ -2156,246 +2317,721 @@ msgstr ""
 "stimmen nicht überein)\n"
 
 #: g10/sig-check.c:170
-#, c-format
-msgid "warning: signature key expired %s\n"
+#, fuzzy, c-format
+msgid "NOTE: signature key expired %s\n"
 msgstr "Achtung: Schlüssel der Signatur ist verfallen am %s.\n"
 
-#: g10/trustdb.c:129
+#: g10/sign.c:69
+#, fuzzy, c-format
+msgid "%s signature from: %s\n"
+msgstr "FALSCHE Signatur von \""
+
+#: g10/sign.c:200 g10/sign.c:558
+#, fuzzy, c-format
+msgid "can't create %s: %s\n"
+msgstr "%s: kann nicht erzeugt werden: %s\n"
+
+#: g10/sign.c:296
+#, fuzzy
+msgid "signing:"
+msgstr "sign"
+
+#: g10/sign.c:336
+#, fuzzy, c-format
+msgid "WARNING: '%s' is an empty file\n"
+msgstr "%s: Achtung: Leere Datei.\n"
+
+#: g10/tdbio.c:115 g10/tdbio.c:1377
+#, fuzzy, c-format
+msgid "trustdb rec %lu: lseek failed: %s\n"
+msgstr "Änderung des Geheimnises fehlgeschlagen: %s\n"
+
+#: g10/tdbio.c:121 g10/tdbio.c:1384
+#, c-format
+msgid "trustdb rec %lu: write failed (n=%d): %s\n"
+msgstr ""
+
+#: g10/tdbio.c:231
+msgid "trustdb transaction to large\n"
+msgstr ""
+
+#: g10/tdbio.c:374
+#, fuzzy, c-format
+msgid "%s: can't access: %s\n"
+msgstr "%s: kann nicht erzeugt werden: %s\n"
+
+#: g10/ringedit.c:257 g10/tdbio.c:394
+#, fuzzy, c-format
+msgid "%s: can't create directory: %s\n"
+msgstr "%s: kann nicht erzeugt werden: %s\n"
+
+#: g10/ringedit.c:263 g10/tdbio.c:397
+#, fuzzy, c-format
+msgid "%s: directory created\n"
+msgstr "%s: kann nicht erzeugt werden: %s\n"
+
+#: g10/tdbio.c:401
+#, c-format
+msgid "%s: directory does not exist!\n"
+msgstr ""
+
+#: g10/openfile.c:101 g10/openfile.c:165 g10/ringedit.c:1235 g10/tdbio.c:407
+#, fuzzy, c-format
+msgid "%s: can't create: %s\n"
+msgstr "%s: kann nicht erzeugt werden: %s\n"
+
+#: g10/tdbio.c:431
+#, c-format
+msgid "%s: failed to create version record: %s"
+msgstr ""
+
+#: g10/tdbio.c:435
+#, c-format
+msgid "%s: invalid trust-db created\n"
+msgstr ""
+
+#: g10/tdbio.c:437
+#, fuzzy, c-format
+msgid "%s: trust-db created\n"
+msgstr "%s: kann nicht erzeugt werden: %s\n"
+
+#: g10/tdbio.c:470
+#, c-format
+msgid "%s: invalid trust-db\n"
+msgstr ""
+
+#: g10/tdbio.c:504
+#, fuzzy, c-format
+msgid "%s: failed to create hashtable: %s\n"
+msgstr "%s: kann nicht erzeugt werden: %s\n"
+
+#: g10/tdbio.c:512
+#, fuzzy, c-format
+msgid "%s: error updating version record: %s\n"
+msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+
+#: g10/tdbio.c:528 g10/tdbio.c:567 g10/tdbio.c:592 g10/tdbio.c:1310
+#: g10/tdbio.c:1337
+#, fuzzy, c-format
+msgid "%s: error reading version record: %s\n"
+msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+
+#: g10/tdbio.c:541
+#, fuzzy, c-format
+msgid "%s: error writing version record: %s\n"
+msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+
+#: g10/tdbio.c:1017
+#, fuzzy, c-format
+msgid "trustdb: lseek failed: %s\n"
+msgstr "Änderung des Geheimnises fehlgeschlagen: %s\n"
+
+#: g10/tdbio.c:1025
+#, fuzzy, c-format
+msgid "trustdb: read failed (n=%d): %s\n"
+msgstr "Änderung der \"Trust-DB\" fehlgeschlagen: %s\n"
+
+#: g10/tdbio.c:1046
+#, fuzzy, c-format
+msgid "%s: not a trustdb file\n"
+msgstr "Änderung der \"Trust-DB\" fehlgeschlagen: %s\n"
+
+#: g10/tdbio.c:1062
+#, c-format
+msgid "%s: version record with recnum %lu\n"
+msgstr ""
+
+#: g10/tdbio.c:1067
+#, fuzzy, c-format
+msgid "%s: invalid file version %d\n"
+msgstr "Ungültige Klartextsignatur-Einleitung\n"
+
+#: g10/tdbio.c:1343
+#, fuzzy, c-format
+msgid "%s: error reading free record: %s\n"
+msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+
+#: g10/tdbio.c:1351
+#, fuzzy, c-format
+msgid "%s: error writing dir record: %s\n"
+msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+
+#: g10/tdbio.c:1361
+#, c-format
+msgid "%s: failed to zero a record: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:1391
+#, c-format
+msgid "%s: failed to append a record: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:128
 msgid "The trust DB is corrupted; please run \"gpgm --fix-trust-db\".\n"
 msgstr ""
 "Die \"Trust\"-Datenbank ist beschädigt; verwenden Sie \"gpgm "
 "--fix-trust-db\".\n"
 
-#: g10/trustdb.c:407
+#: g10/trustdb.c:141
+#, c-format
+msgid "trust record %lu, req type %d: read failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:156
+#, c-format
+msgid "trust record %lu, type %d: write failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:170
+#, fuzzy, c-format
+msgid "trust record %lu: delete failed: %s\n"
+msgstr "Änderung des Geheimnises fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:184
+#, fuzzy, c-format
+msgid "trust db: sync failed: %s\n"
+msgstr "Änderung der \"Trust-DB\" fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:313
+#, fuzzy, c-format
+msgid "error reading dir record for LID %lu: %s\n"
+msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+
+#: g10/trustdb.c:320
+#, c-format
+msgid "lid %lu: expected dir record, got type %d\n"
+msgstr ""
+
+#: g10/trustdb.c:325
+#, c-format
+msgid "no primary key for LID %lu\n"
+msgstr ""
+
+#: g10/trustdb.c:330
+#, fuzzy, c-format
+msgid "error reading primary key for LID %lu: %s\n"
+msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+
+#: g10/trustdb.c:406
 #, c-format
 msgid "chained sigrec %lu has a wrong owner\n"
 msgstr "Verketteter Signatursatz %lu hat einen falschen Besitzer\n"
 
-#: g10/trustdb.c:454
+#: g10/trustdb.c:460
+#, fuzzy, c-format
+msgid "NOTE: secret key %08lX is NOT protected.\n"
+msgstr "Dieser Schlüssel ist nicht geschützt.\n"
+
+#: g10/trustdb.c:467
 #, fuzzy, c-format
 msgid "key %08lX: secret key without public key - skipped\n"
 msgstr "Schlüssel %08lX: geheimer, aber kein öffentlicher Schlüssel.\n"
 
-#: g10/trustdb.c:460
+#: g10/trustdb.c:473
 #, c-format
 msgid "key %08lX: secret and public key don't match\n"
 msgstr ""
 "Schlüssel %08lX: geheimer und öffentlicher Schlüssel passen nicht zusammen.\n"
 
-#: g10/trustdb.c:470
+#: g10/trustdb.c:483
 #, fuzzy, c-format
 msgid "key %08lX: can't put it into the trustdb\n"
-msgstr "Schlüssel %08lX.%lu: in \"trustdb\" eingefügt\n"
+msgstr "Schlüssel %08lX kann nicht in die \"trustdb\" eingefügt werden\n"
 
-#: g10/trustdb.c:476
+#: g10/trustdb.c:489
 #, fuzzy, c-format
 msgid "key %08lX: query record failed\n"
-msgstr "Schlüssel %08lX: Keine User-ID\n"
+msgstr "Schlüssel %08lX: Abfrage fehlgeschlagen\n"
 
-#: g10/trustdb.c:485
+#: g10/trustdb.c:498
 #, fuzzy, c-format
 msgid "key %08lX: already in secret key table\n"
-msgstr "Schlüssel %08lX: Ist bereits im privaten Schlüsselring\n"
+msgstr "Schlüssel %08lX: Ist bereits im privaten Schlüsseltabelle\n"
 
-#: g10/trustdb.c:488
+#: g10/trustdb.c:501
 #, fuzzy, c-format
 msgid "key %08lX: accepted as secret key.\n"
-msgstr "Schlüssel %08lX: Ist bereits im privaten Schlüsselring\n"
+msgstr "Schlüssel %08lX: Akzeptiert als geheimer Schlüssel\n"
+
+#: g10/trustdb.c:508
+#, fuzzy, c-format
+msgid "enumerate secret keys failed: %s\n"
+msgstr "enum_secret_keys fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:682
+#, fuzzy, c-format
+msgid "lid %lu: read dir record failed: %s\n"
+msgstr "Schlüssel %08lX: 'trust record' einfügen fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:691
+#, fuzzy, c-format
+msgid "lid %lu: read key record failed: %s\n"
+msgstr "Schlüssel %08lX: 'trust record' einfügen fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:701
+#, fuzzy, c-format
+msgid "lid %lu: read uid record failed: %s\n"
+msgstr "Schlüssel %08lX: 'trust record' einfügen fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:710
+#, fuzzy, c-format
+msgid "lid %lu: read pref record failed: %s\n"
+msgstr "Schlüssel %08lX: 'trust record' einfügen fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:720
+#, fuzzy, c-format
+msgid "lid %lu: read sig record failed: %s\n"
+msgstr "Schlüssel %08lX: 'trust record' einfügen fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:915
+msgid "Ooops, no keys\n"
+msgstr ""
+
+#: g10/trustdb.c:919
+#, fuzzy
+msgid "Ooops, no user ids\n"
+msgstr "Schlüssel und User-ID anzeigen"
+
+#: g10/trustdb.c:990 g10/trustdb.c:1008
+#, c-format
+msgid "user '%s' read problem: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:993 g10/trustdb.c:1011
+#, c-format
+msgid "user '%s' list problem: %s\n"
+msgstr ""
 
-#: g10/trustdb.c:495
+#: g10/trustdb.c:1001 g10/trustdb.c:1216
 #, fuzzy, c-format
-msgid "enum_secret_keys failed: %s\n"
-msgstr "En-Armor fehlgeschlagen: %s\n"
+msgid "user '%s' not found: %s\n"
+msgstr "%s: Benutzer nicht gefunden\n"
 
-#: g10/trustdb.c:1292 g10/trustdb.c:1360
+#: g10/trustdb.c:1003 g10/trustdb.c:1218
 #, c-format
-msgid "%lu keys processed\n"
+msgid "problem finding '%s' in trustdb: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1006
+#, c-format
+msgid "user '%s' not in trustdb\n"
+msgstr ""
+
+#: g10/trustdb.c:1041
+#, c-format
+msgid ""
+"# List of assigned trustvalues, created %s\n"
+"# (Use \"gpgm --import-ownertrust\" to restore them)\n"
+msgstr ""
+
+#: g10/trustdb.c:1047
+msgid "directory record w/o primary key\n"
+msgstr ""
+
+#: g10/trustdb.c:1054
+#, fuzzy, c-format
+msgid "error reading key record: %s\n"
+msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+
+#: g10/trustdb.c:1094
+msgid "line to long\n"
+msgstr ""
+
+#: g10/trustdb.c:1102
+msgid "error: missing colon\n"
+msgstr ""
+
+#: g10/trustdb.c:1107
+#, fuzzy
+msgid "error: invalid fingerprint\n"
+msgstr "Fehler in der Nachsatzzeile\n"
+
+#: g10/trustdb.c:1111
+#, fuzzy
+msgid "error: no ownertrust value\n"
+msgstr "Keine \"Owner trust\" Werte geändert.\n"
+
+#: g10/trustdb.c:1125
+#, c-format
+msgid "LID %lu: changing trust from %u to %u\n"
+msgstr ""
+
+#: g10/trustdb.c:1128
+#, c-format
+msgid "LID %lu: setting trust to %u\n"
+msgstr ""
+
+#: g10/trustdb.c:1136
+msgid "key not in trustdb, searching ring.\n"
+msgstr ""
+
+#: g10/trustdb.c:1139
+#, fuzzy, c-format
+msgid "key not in ring: %s\n"
+msgstr "kann Schlüsselbund nicht schreiben: %s\n"
+
+#: g10/trustdb.c:1143
+msgid "Oops: key is now in trustdb???\n"
+msgstr ""
+
+#. update the ownertrust
+#: g10/trustdb.c:1148
+#, fuzzy, c-format
+msgid "insert trust record failed: %s\n"
+msgstr "Schlüssel %08lX: 'trust record' einfügen fehlgeschlagen: %s\n"
+
+#. error
+#: g10/trustdb.c:1154
+#, fuzzy, c-format
+msgid "error finding dir record: %s\n"
+msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
+
+#: g10/trustdb.c:1221
+#, c-format
+msgid "user '%s' not in trustdb - inserting\n"
+msgstr ""
+
+#: g10/trustdb.c:1224
+#, fuzzy, c-format
+msgid "failed to put '%s' into trustdb: %s\n"
+msgstr "Die Trust-DB kann nicht initialisiert werden: %s\n"
+
+#: g10/trustdb.c:1271
+#, c-format
+msgid "%s: keyblock read problem: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1285
+#, fuzzy, c-format
+msgid "%s: update failed: %s\n"
+msgstr "Änderung fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:1288
+#, fuzzy, c-format
+msgid "%s: updated\n"
+msgstr "\t%lu Schlüssel geändernt\n"
+
+#: g10/trustdb.c:1290
+#, c-format
+msgid "%s: okay\n"
+msgstr ""
+
+#: g10/trustdb.c:1305
+#, c-format
+msgid "lid %lu: dir record w/o key - skipped\n"
 msgstr ""
 
-#: g10/trustdb.c:1294
+#: g10/trustdb.c:1318
+#, fuzzy, c-format
+msgid "lid %lu: keyblock not found: %s\n"
+msgstr "Schlüssel %08lX: Öffentlicher Schlüssel nicht gefunden: %s\n"
+
+#: g10/trustdb.c:1327 g10/trustdb.c:1396
+#, fuzzy, c-format
+msgid "lid %lu: update failed: %s\n"
+msgstr "Änderung fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:1333 g10/trustdb.c:1402
+#, fuzzy, c-format
+msgid "lid %lu: updated\n"
+msgstr "\t%lu Schlüssel geändernt\n"
+
+#: g10/trustdb.c:1337 g10/trustdb.c:1406
+#, fuzzy, c-format
+msgid "lid %lu: okay\n"
+msgstr "lid %lu: kein Hauptschlüssel\n"
+
+#: g10/trustdb.c:1344 g10/trustdb.c:1412
+#, c-format
+msgid "%lu keys processed\n"
+msgstr "%lu Schlüssel bearbeitet\n"
+
+#: g10/trustdb.c:1346
 #, fuzzy, c-format
 msgid "\t%lu keys skipped\n"
-msgstr "%s: übersprungen: %s\n"
+msgstr "\t%lu Schlüssel übersprungen\n"
 
-#: g10/trustdb.c:1296 g10/trustdb.c:1362
+#: g10/trustdb.c:1348 g10/trustdb.c:1414
 #, fuzzy, c-format
 msgid "\t%lu keys with errors\n"
-msgstr "Dateischreibfehler"
+msgstr "\t%lu Schlüssel mit Fehlern\n"
 
-#: g10/trustdb.c:1298 g10/trustdb.c:1364
+#: g10/trustdb.c:1350 g10/trustdb.c:1416
 #, c-format
 msgid "\t%lu keys updated\n"
-msgstr ""
+msgstr "\t%lu Schlüssel geändernt\n"
+
+#: g10/trustdb.c:1380
+#, fuzzy, c-format
+msgid "lid ?: insert failed: %s\n"
+msgstr "Änderung des Geheimnises fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:1385
+#, fuzzy, c-format
+msgid "lid %lu: insert failed: %s\n"
+msgstr "Änderung des Geheimnises fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:1391
+#, fuzzy, c-format
+msgid "lid %lu: inserted\n"
+msgstr "\t%lu Schlüssel eingefügt\n"
 
-#: g10/trustdb.c:1366
+#: g10/trustdb.c:1418
 #, c-format
 msgid "\t%lu keys inserted\n"
-msgstr ""
+msgstr "\t%lu Schlüssel eingefügt\n"
 
 #: g10/trustdb.c:1421
 #, fuzzy, c-format
+msgid "enumerate keyblocks failed: %s\n"
+msgstr "enum_secret_keys fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:1466
+#, fuzzy, c-format
+msgid "check_trust: search dir record failed: %s\n"
+msgstr "Schlüssel %08lX: 'trust record' einfügen fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:1473
+#, fuzzy, c-format
 msgid "key %08lX: insert trust record failed: %s\n"
-msgstr "Schlüssel %08lX.%lu: Vertrauensprüfung fehlgeschlagen: %s\n"
+msgstr "Schlüssel %08lX: 'trust record' einfügen fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1425
+#: g10/trustdb.c:1477
 #, c-format
 msgid "key %08lX.%lu: inserted into trustdb\n"
 msgstr "Schlüssel %08lX.%lu: in \"trustdb\" eingefügt\n"
 
-#: g10/trustdb.c:1433
+#: g10/trustdb.c:1485
 #, c-format
 msgid "key %08lX.%lu: created in future (time warp or clock problem)\n"
 msgstr ""
 "Schlüssel %08lX.%lu: wurde in der Zukunft erzeugt (Zeitreise oder Uhren "
 "stimmen nicht überein)\n"
 
-#: g10/trustdb.c:1440
+#: g10/trustdb.c:1492
 #, c-format
 msgid "key %08lX.%lu: expired at %s\n"
 msgstr "Schlüssel %08lX.%lu: verfallen am %s\n"
 
-#: g10/trustdb.c:1448
+#: g10/trustdb.c:1500
 #, c-format
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr "Schlüssel %08lX.%lu: Vertrauensprüfung fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:1666
-#, c-format
-msgid "note: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
+#: g10/trustdb.c:1669 g10/trustdb.c:1698 g10/trustdb.c:2428
+msgid "WARNING: can't yet handle long pref records\n"
 msgstr ""
 
-#: g10/trustdb.c:1670
-#, c-format
-msgid "note: sig rec %lu[%d] in hintlist of %lu but not marked\n"
-msgstr ""
+#: g10/trustdb.c:1720
+#, fuzzy, c-format
+msgid "get_dir_record: search_record failed: %s\n"
+msgstr "Änderung des Geheimnises fehlgeschlagen: %s\n"
+
+#: g10/trustdb.c:1783
+#, fuzzy, c-format
+msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
+msgstr "Hinweis: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
+
+#: g10/trustdb.c:1787
+#, fuzzy, c-format
+msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but not marked\n"
+msgstr "Hinweis: sig rec %lu[%d] in hintlist of %lu but not marked\n"
 
 #. we need the dir record
-#: g10/trustdb.c:1677
+#: g10/trustdb.c:1794
 #, c-format
 msgid "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
-msgstr ""
+msgstr "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
 
-#: g10/trustdb.c:1683
+#: g10/trustdb.c:1800
 #, c-format
 msgid "lid %lu: no primary key\n"
-msgstr ""
+msgstr "lid %lu: kein Hauptschlüssel\n"
 
-#: g10/trustdb.c:1716
+#: g10/trustdb.c:1833
 #, fuzzy, c-format
 msgid "lid %lu: user id not found in keyblock\n"
-msgstr "%s: Benutzer nicht gefunden\n"
+msgstr "lid %lu: User-ID im Schlüsselblock nicht gefunden\n"
 
-#: g10/trustdb.c:1720
+#: g10/trustdb.c:1837
 #, fuzzy, c-format
 msgid "lid %lu: user id without signature\n"
-msgstr "Schlüssel %08lX: Keine User-ID für Signatur\n"
+msgstr "lid %lu: User-ID ohne Signatur\n"
 
-#: g10/trustdb.c:1727
+#: g10/trustdb.c:1844
 #, fuzzy, c-format
 msgid "lid %lu: self-signature in hintlist\n"
-msgstr "build_sigrecs: Selbst-Signatur fehlt\n"
+msgstr "lid %lu: Eigensignatur in 'hintlist'\n"
 
-#: g10/trustdb.c:1738 g10/trustdb.c:2444 g10/trustdb.c:2526
+#: g10/trustdb.c:1855 g10/trustdb.c:2565 g10/trustdb.c:2647
 #, fuzzy
 msgid "Valid certificate revocation"
-msgstr "Falsches Zertifikat"
+msgstr "Gültiges Widerrufszertifikat"
 
-#: g10/trustdb.c:1739 g10/trustdb.c:2445 g10/trustdb.c:2527
+#: g10/trustdb.c:1856 g10/trustdb.c:2566 g10/trustdb.c:2648
 #, fuzzy
 msgid "Good certificate"
-msgstr "Falsches Zertifikat"
+msgstr "Korrektes Zertifikat"
 
-#: g10/trustdb.c:1748
+#: g10/trustdb.c:1865
 msgid "very strange: no public key\n"
-msgstr ""
+msgstr "sehr seltsam: kein öffentlicher Schlüssel\n"
 
-#: g10/trustdb.c:1796
+#: g10/trustdb.c:1913
 #, c-format
 msgid "hintlist %lu[%d] of %lu does not point to a dir record\n"
-msgstr ""
+msgstr "hintlist %lu[%d] of %lu zeigt nicht auf einen 'dir record'\n"
 
-#: g10/trustdb.c:1802
+#: g10/trustdb.c:1919
 #, c-format
 msgid "lid %lu does not have a key\n"
-msgstr ""
+msgstr "lid %lu hat keinen Schlüssel\n"
 
-#: g10/trustdb.c:1812
+#: g10/trustdb.c:1929
 #, fuzzy, c-format
 msgid "lid %lu: can't get keyblock: %s\n"
-msgstr "Der Schlüsselblock kann nicht geschrieben werden: %s\n"
+msgstr "lid %lu: Schlüsselblock nicht verfügbar: %s\n"
+
+#: g10/trustdb.c:1986 g10/trustdb.c:2889
+#, fuzzy, c-format
+msgid "tdbio_search_dir failed: %s\n"
+msgstr "Entfernen der ASCII-Hülle ist fehlgeschlagen: %s\n"
 
-#: g10/trustdb.c:2022
+#: g10/trustdb.c:2139
 #, fuzzy, c-format
 msgid "key %08lX.%lu: Good subkey binding\n"
-msgstr "Schlüssel %08lX: Keine User-ID\n"
+msgstr "Schlüssel %08lX.%lu: Korrekte Unterschlüssel-Anbindung\n"
 
-#: g10/trustdb.c:2028 g10/trustdb.c:2070
+#: g10/trustdb.c:2145 g10/trustdb.c:2187
 #, fuzzy, c-format
 msgid "key %08lX.%lu: Invalid subkey binding: %s\n"
-msgstr "Schlüssel %08lX: Keine gültigen User-IDs\n"
+msgstr "Schlüssel %08lX.%lu: Ungültige Unterschlüssel-Anbindung\n"
 
-#: g10/trustdb.c:2043
+#: g10/trustdb.c:2160
 #, fuzzy, c-format
 msgid "key %08lX.%lu: Valid key revocation\n"
-msgstr "Schlüssel %08lX: Öffentlicher Schlüssel nicht gefunden: %s\n"
+msgstr "Schlüssel %08lX.%lu: Gültiger Schlüsselwiderruf\n"
 
-#: g10/trustdb.c:2049
+#: g10/trustdb.c:2166
 #, fuzzy, c-format
 msgid "key %08lX.%lu: Invalid key revocation: %s\n"
-msgstr "Schlüssel %08lX: Öffentlicher Schlüssel nicht gefunden: %s\n"
+msgstr "Schlüssel %08lX.%lu: Ungültiger Schlüsselwiderruf: %s\n"
 
-#: g10/trustdb.c:2064
+#: g10/trustdb.c:2181
 #, fuzzy, c-format
 msgid "key %08lX.%lu: Valid subkey revocation\n"
-msgstr "Schlüssel %08lX: Öffentlicher Schlüssel nicht gefunden: %s\n"
+msgstr "Schlüssel %08lX.%lu: Gültiger Unterschlüsselwiderruf\n"
 
-#: g10/trustdb.c:2164
+#: g10/trustdb.c:2281
 #, fuzzy
 msgid "Good self-signature"
-msgstr "Selbst-Signatur übergangen\n"
+msgstr "Korrekte Eigensignatur"
 
-#: g10/trustdb.c:2172
+#: g10/trustdb.c:2289
 #, fuzzy
 msgid "Invalid self-signature"
-msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
+msgstr "Ungültige Eigensignatur"
 
-#: g10/trustdb.c:2183
+#: g10/trustdb.c:2300
 #, fuzzy
 msgid "Valid user ID revocation\n"
-msgstr "Ungültige Auswahl.\n"
+msgstr "Gültiger User-ID-Widerruf\n"
 
-#: g10/trustdb.c:2190
+#: g10/trustdb.c:2307
 #, fuzzy
 msgid "Invalid user ID revocation"
-msgstr "Ungültige Auswahl.\n"
+msgstr "Ungültiger User-ID-Widerruf"
 
-#: g10/trustdb.c:2273
+#: g10/trustdb.c:2391
 #, fuzzy
 msgid "Too many preferences"
-msgstr "Liste der geheimen Schlüssel"
+msgstr "Zu viele Bevorzugungen"
 
-#: g10/trustdb.c:2286
-msgid "Too many preferences items"
-msgstr ""
+#: g10/trustdb.c:2405
+#, fuzzy
+msgid "Too many preference items"
+msgstr "Zu viele Angaben zur Bevorzugung"
 
-#: g10/trustdb.c:2423
+#: g10/trustdb.c:2544
 msgid "Duplicated certificate - deleted"
-msgstr ""
+msgstr "Doppelte Zertifikate - entfernt"
 
-#: g10/trustdb.c:2455
+#: g10/trustdb.c:2576
 #, fuzzy
-msgid "public key lost"
-msgstr "Falscher öffentlicher Schüssel"
+msgid "Hmmm, public key lost?"
+msgstr "Öffentlicher Schüssel nicht mehr vorhanden"
 
-#: g10/trustdb.c:2464 g10/trustdb.c:2547
+#: g10/trustdb.c:2585 g10/trustdb.c:2668
 #, fuzzy
 msgid "Invalid certificate revocation"
-msgstr "Falsches Zertifikat"
+msgstr "Ungültiges Widerrufszertifikat"
 
-#: g10/trustdb.c:2465 g10/trustdb.c:2548
+#: g10/trustdb.c:2586 g10/trustdb.c:2669
 #, fuzzy
 msgid "Invalid certificate"
-msgstr "Falsches Zertifikat"
+msgstr "Ungültiges Zertifikat"
+
+#: g10/trustdb.c:2601
+#, fuzzy, c-format
+msgid "uid %08lX.%lu/%02X%02X: has shadow dir %lu but is not yet marked.\n"
+msgstr "Schlüssel %08lX: Ungültige Eigensignatur\n"
+
+#: g10/trustdb.c:2615
+#, fuzzy, c-format
+msgid "sig record %lu[%d] points to wrong record.\n"
+msgstr "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
+
+#. that should never happen
+#: g10/trustdb.c:2859
+#, fuzzy, c-format
+msgid "insert_trust_record: keyblock not found: %s\n"
+msgstr "Schlüssel %08lX: Privater Schlüssel nicht gefunden: %s\n"
+
+#: g10/trustdb.c:2877
+msgid "did not use primary key for insert_trust_record()\n"
+msgstr ""
+
+#: g10/ringedit.c:277
+#, fuzzy, c-format
+msgid "%s: can't create keyring: %s\n"
+msgstr "%s: kann nicht erzeugt werden: %s\n"
+
+#: g10/ringedit.c:283 g10/ringedit.c:1239
+#, fuzzy, c-format
+msgid "%s: keyring created\n"
+msgstr "%s: neue Optionendatei erstellt\n"
+
+#: g10/ringedit.c:1412
+msgid "WARNING: 2 files with confidential information exists.\n"
+msgstr ""
+
+#: g10/ringedit.c:1413
+#, fuzzy, c-format
+msgid "%s is the unchanged one\n"
+msgstr "unveränderte geh.Schl.: %lu\n"
+
+#: g10/ringedit.c:1414
+#, c-format
+msgid "%s is the new one\n"
+msgstr ""
+
+#: g10/ringedit.c:1415
+msgid "Please fix this possible security flaw\n"
+msgstr ""
+
+#: g10/skclist.c:94
+#, fuzzy, c-format
+msgid "skipped '%s': %s\n"
+msgstr "%s: übersprungen: %s\n"
+
+#: g10/skclist.c:100
+#, fuzzy, c-format
+msgid ""
+"skipped '%s': 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/status.c:246
 msgid "No help available"
@@ -2406,20 +3042,6 @@ msgstr "Keine Hilfe vorhanden."
 msgid "No help available for '%s'"
 msgstr "Keine Hilfe für '%s' vorhanden."
 
-#: g10/pubkey-enc.c:78
-#, c-format
-msgid "anonymous receiver; trying secret key %08lX ...\n"
-msgstr "Ungenannter Empfänger: Versuch mit geheimen Schlüssel %08lX ...\n"
-
-#: g10/pubkey-enc.c:84
-msgid "okay, we are the anonymous receiver.\n"
-msgstr "Gut, wir sind der ungenannte Empfänger.\n"
-
-#: g10/pubkey-enc.c:183
-#, c-format
-msgid "note: cipher algorithm %d not found in preferences\n"
-msgstr "Hinweis: Methode %d ist kein bevorzugtes Verschlüsselungsverfahren\n"
-
 #. do not overwrite
 #: g10/openfile.c:58
 #, c-format
@@ -2437,26 +3059,32 @@ msgstr "
 #: g10/openfile.c:85
 #, fuzzy
 msgid "writing to stdout\n"
-msgstr "Schreiben nach '%s'\n"
-
-#: g10/openfile.c:101 g10/openfile.c:165
-#, fuzzy, c-format
-msgid "%s: can't create: %s\n"
-msgstr "%s: kann nicht geöffnet werden: %s\n"
+msgstr "Schreiben auf die Standardausgabe\n"
 
 #: g10/openfile.c:134
 #, fuzzy, c-format
 msgid "assuming signed data in '%s'\n"
-msgstr "kann signierte Datei '%s' nicht öffnen.\n"
+msgstr "die unterzeichneten Daten sind wohl in '%s'\n"
 
 #: g10/openfile.c:181
 #, c-format
 msgid "%s: new options file created\n"
+msgstr "%s: neue Optionendatei erstellt\n"
+
+#: g10/encr-data.c:59
+#, fuzzy, c-format
+msgid "%s encrypted data\n"
+msgstr "Daten verschlüsseln"
+
+#: g10/encr-data.c:61
+#, c-format
+msgid "encrypted with unknown algorithm %d\n"
 msgstr ""
 
 #: g10/encr-data.c:74
+#, fuzzy
 msgid ""
-"Warning: Message was encrypted with a weak key in the symmetric cipher.\n"
+"WARNING: Message was encrypted with a weak key in the symmetric cipher.\n"
 msgstr ""
 "Warnung: Botschaft wurde mit einem unsicheren Schlüssel verschlüsselt.\n"
 
@@ -2468,12 +3096,15 @@ msgstr "Unsicherer Schl
 #, c-format
 msgid "cannot avoid weak key for symmetric cipher; tried %d times!\n"
 msgstr ""
-"Trotz %d-fachen Versuch konnte die Erzeugung eines unsicheren Schlüsselfür "
+"Trotz %d-fachen Versuch konnte die Erzeugung eines unsicheren Schlüsselfür "
 "sym.Verschlüsselung nicht vermieden werden!\n"
 
+#~ msgid "You will see a list of signators etc. here\n"
+#~ msgstr "Sie sollten hier eigentlich eine Liste der Signierer sehen.\n"
+
 #, fuzzy
 #~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: good signature (3)\n"
-#~ msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
+#~ msgstr "Schlüssel %08lX: Ungültige Eigensignatur\n"
 
 #, fuzzy
 #~ msgid ""
@@ -2482,33 +3113,28 @@ msgstr ""
 
 #, fuzzy
 #~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: invalid signature: %s\n"
-#~ msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
+#~ msgstr "Schlüssel %08lX: Ungültige Eigensignatur\n"
 
 #, fuzzy
 #~ msgid "key %08lX.%lu, uid %02X%02X: good self-signature\n"
-#~ msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
+#~ msgstr "Schlüssel %08lX: Ungültige Eigensignatur\n"
 
 #, fuzzy
 #~ msgid ""
 #~ "key %08lX.%lu, uid %02X%02X, sig %08lX: duplicated signature - deleted\n"
-#~ msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
+#~ msgstr "Schlüssel %08lX: Ungültige Eigensignatur\n"
 
 #, fuzzy
 #~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: good signature (1)\n"
-#~ msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
+#~ msgstr "Schlüssel %08lX: Ungültige Eigensignatur\n"
 
 #, fuzzy
 #~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: weird: no public key\n"
 #~ msgstr "Schlüssel %08lX: Keine User-ID für Signatur\n"
 
 #, fuzzy
-#~ msgid ""
-#~ "key %08lX.%lu, uid %02X%02X: has shadow dir %lu but not yet marked.\n"
-#~ msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
-
-#, fuzzy
 #~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: good signature (2)\n"
-#~ msgstr "Schlüssel %08lX: Ungültige Selbst-Signatur\n"
+#~ msgstr "Schlüssel %08lX: Ungültige Eigensignatur\n"
 
 #, fuzzy
 #~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: no public key\n"
@@ -2517,12 +3143,8 @@ msgstr ""
 #~ msgid "key %08lX: already in ultikey_table\n"
 #~ msgstr "Schlüssel %08lX: bereits in der Tabelle der private Schlüssel\n"
 
-#, fuzzy
-#~ msgid "error reading sigrec: %s\n"
-#~ msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n"
-
 #~ msgid "can't write keyring\n"
-#~ msgstr "kann Schlüsselring nicht schreiben\n"
+#~ msgstr "kann Schlüsselbund nicht schreiben\n"
 
 #~ msgid "make a signature on a key in the keyring"
 #~ msgstr "Schlüssel signieren"
@@ -2578,10 +3200,7 @@ msgstr ""
 #~ msgstr "Dies kann im Batchmodus ohne \"--yes\" nicht durchgeführt werden.\n"
 
 #~ msgid "Delete this key from the keyring? "
-#~ msgstr "Diesen Schlüssel aus dem Schlüsselring löschen? "
+#~ msgstr "Diesen Schlüssel aus dem Schlüsselbund löschen? "
 
 #~ msgid "This is a secret key! - really delete? "
 #~ msgstr "Dies ist ein privater Schlüssel! - Wirklich löschen? "
-
-#~ msgid "build_sigrecs: key has been revoked\n"
-#~ msgstr "build_sigrecs: Schlüssel ist widerrufen\n"
index 1de4a3d..dba2dae 100644 (file)
--- a/po/en.po
+++ b/po/en.po
@@ -1,6 +1,6 @@
 msgid ""
 msgstr ""
-"POT-Creation-Date: 1998-11-08 18:21+0100\n"
+"POT-Creation-Date: 1998-11-20 15:17+0100\n"
 "Content-Type: text/plain; charset=\n"
 "Date: 1998-08-08 18:07:50+0200\n"
 "From: Werner Koch <wk@frodo>\n"
@@ -17,11 +17,11 @@ msgstr ""
 msgid "Warning: using insecure memory!\n"
 msgstr ""
 
-#: util/miscutil.c:110
+#: util/miscutil.c:139
 msgid "yes"
 msgstr ""
 
-#: util/miscutil.c:111
+#: util/miscutil.c:140
 msgid "yY"
 msgstr ""
 
@@ -200,18 +200,18 @@ msgstr ""
 msgid "Weak key"
 msgstr ""
 
-#: util/logger.c:177
+#: util/logger.c:178
 #, c-format
 msgid "... this is a bug (%s:%d:%s)\n"
 msgstr ""
 
-#: util/logger.c:183
+#: util/logger.c:184
 #, c-format
 msgid "you found a bug ... (%s:%d)\n"
 msgstr ""
 
 #: cipher/rand-dummy.c:112
-msgid "warning: using insecure random number generator!!\n"
+msgid "WARNING: using insecure random number generator!!\n"
 msgstr ""
 
 #: cipher/rand-dummy.c:113
@@ -231,93 +231,93 @@ msgid ""
 "the OS a chance to collect more entropy! (Need %d more bytes)\n"
 msgstr ""
 
-#: g10/g10.c:152
+#: g10/g10.c:155
 msgid ""
 "@Commands:\n"
 " "
 msgstr ""
 
-#: g10/g10.c:155
+#: g10/g10.c:158
 msgid "|[file]|make a signature"
 msgstr ""
 
-#: g10/g10.c:156
+#: g10/g10.c:159
 msgid "|[file]|make a clear text signature"
 msgstr ""
 
-#: g10/g10.c:157
+#: g10/g10.c:160
 msgid "make a detached signature"
 msgstr ""
 
-#: g10/g10.c:158
+#: g10/g10.c:161
 msgid "encrypt data"
 msgstr ""
 
-#: g10/g10.c:159
+#: g10/g10.c:162
 msgid "encryption only with symmetric cipher"
 msgstr ""
 
-#: g10/g10.c:160
+#: g10/g10.c:163
 msgid "store only"
 msgstr ""
 
-#: g10/g10.c:161
+#: g10/g10.c:164
 msgid "decrypt data (default)"
 msgstr ""
 
-#: g10/g10.c:162
+#: g10/g10.c:165
 msgid "verify a signature"
 msgstr ""
 
-#: g10/g10.c:164
+#: g10/g10.c:167
 msgid "list keys"
 msgstr ""
 
-#: g10/g10.c:165
+#: g10/g10.c:168
 msgid "list keys and signatures"
 msgstr ""
 
-#: g10/g10.c:166
+#: g10/g10.c:169
 msgid "check key signatures"
 msgstr ""
 
-#: g10/g10.c:167
+#: g10/g10.c:170
 msgid "list keys and fingerprints"
 msgstr ""
 
-#: g10/g10.c:168
+#: g10/g10.c:171
 msgid "list secret keys"
 msgstr ""
 
-#: g10/g10.c:170
+#: g10/g10.c:173
 msgid "generate a new key pair"
 msgstr ""
 
-#: g10/g10.c:172
+#: g10/g10.c:175
 msgid "remove key from the public keyring"
 msgstr ""
 
-#: g10/g10.c:174
+#: g10/g10.c:177
 msgid "sign or edit a key"
 msgstr ""
 
-#: g10/g10.c:175
+#: g10/g10.c:178
 msgid "generate a revocation certificate"
 msgstr ""
 
-#: g10/g10.c:177
+#: g10/g10.c:180
 msgid "export keys"
 msgstr ""
 
-#: g10/g10.c:179
+#: g10/g10.c:182
 msgid "import/merge keys"
 msgstr ""
 
-#: g10/g10.c:181
+#: g10/g10.c:184
 msgid "list only the sequence of packets"
 msgstr ""
 
-#: g10/g10.c:184
+#: g10/g10.c:187
 #, fuzzy
 msgid "export the ownertrust values"
 msgstr ""
@@ -325,7 +325,7 @@ msgstr ""
 "to any 3rd party.  We need it to implement the web-of-trust; it has nothing\n"
 "to do with the (implicitly created) web-of-certificates."
 
-#: g10/g10.c:186
+#: g10/g10.c:189
 #, fuzzy
 msgid "import ownertrust values"
 msgstr ""
@@ -333,167 +333,171 @@ msgstr ""
 "to any 3rd party.  We need it to implement the web-of-trust; it has nothing\n"
 "to do with the (implicitly created) web-of-certificates."
 
-#: g10/g10.c:188
+#: g10/g10.c:191
 msgid "|[NAMES]|update the trust database"
 msgstr ""
 
-#: g10/g10.c:190
+#: g10/g10.c:193
 msgid "|[NAMES]|check the trust database"
 msgstr ""
 
-#: g10/g10.c:191
+#: g10/g10.c:194
 msgid "fix a corrupted trust database"
 msgstr ""
 
-#: g10/g10.c:192
+#: g10/g10.c:195
 msgid "De-Armor a file or stdin"
 msgstr ""
 
-#: g10/g10.c:193
+#: g10/g10.c:196
 msgid "En-Armor a file or stdin"
 msgstr ""
 
-#: g10/g10.c:194
+#: g10/g10.c:197
 msgid "|algo [files]|print message digests"
 msgstr ""
 
-#: g10/g10.c:195
+#: g10/g10.c:198
 msgid "print all message digests"
 msgstr ""
 
-#: g10/g10.c:202
+#: g10/g10.c:205
 msgid ""
 "@\n"
 "Options:\n"
 " "
 msgstr ""
 
-#: g10/g10.c:204
+#: g10/g10.c:207
 msgid "create ascii armored output"
 msgstr ""
 
-#: g10/g10.c:206
+#: g10/g10.c:209
 msgid "use this user-id to sign or decrypt"
 msgstr ""
 
-#: g10/g10.c:207
+#: g10/g10.c:210
 msgid "use this user-id for encryption"
 msgstr ""
 
-#: g10/g10.c:208
+#: g10/g10.c:211
 msgid "|N|set compress level N (0 disables)"
 msgstr ""
 
-#: g10/g10.c:210
+#: g10/g10.c:213
 msgid "use canonical text mode"
 msgstr ""
 
-#: g10/g10.c:212
+#: g10/g10.c:215
 msgid "use as output file"
 msgstr ""
 
-#: g10/g10.c:213
+#: g10/g10.c:216
 msgid "verbose"
 msgstr ""
 
-#: g10/g10.c:214
+#: g10/g10.c:217
 msgid "be somewhat more quiet"
 msgstr ""
 
-#: g10/g10.c:215
+#: g10/g10.c:218
 msgid "force v3 signatures"
 msgstr ""
 
 #. { oDryRun, "dry-run",   0, N_("do not make any changes") },
-#: g10/g10.c:217
+#: g10/g10.c:220
 msgid "batch mode: never ask"
 msgstr ""
 
-#: g10/g10.c:218
+#: g10/g10.c:221
 msgid "assume yes on most questions"
 msgstr ""
 
-#: g10/g10.c:219
+#: g10/g10.c:222
 msgid "assume no on most questions"
 msgstr ""
 
-#: g10/g10.c:220
+#: g10/g10.c:223
 msgid "add this keyring to the list of keyrings"
 msgstr ""
 
-#: g10/g10.c:221
+#: g10/g10.c:224
 msgid "add this secret keyring to the list"
 msgstr ""
 
-#: g10/g10.c:222
+#: g10/g10.c:225
 msgid "|NAME|use NAME as default secret key"
 msgstr ""
 
-#: g10/g10.c:223
+#: g10/g10.c:226
+msgid "|NAME| set terminal charset to NAME"
+msgstr ""
+
+#: g10/g10.c:227
 msgid "read options from file"
 msgstr ""
 
-#: g10/g10.c:225
+#: g10/g10.c:229
 msgid "set debugging flags"
 msgstr ""
 
-#: g10/g10.c:226
+#: g10/g10.c:230
 msgid "enable full debugging"
 msgstr ""
 
-#: g10/g10.c:227
+#: g10/g10.c:231
 msgid "|FD|write status info to this FD"
 msgstr ""
 
-#: g10/g10.c:228
+#: g10/g10.c:232
 msgid "do not write comment packets"
 msgstr ""
 
-#: g10/g10.c:229
+#: g10/g10.c:233
 msgid "(default is 1)"
 msgstr ""
 
-#: g10/g10.c:230
+#: g10/g10.c:234
 msgid "(default is 3)"
 msgstr ""
 
-#: g10/g10.c:231
+#: g10/g10.c:236
 msgid "|FILE|load extension module FILE"
 msgstr ""
 
-#: g10/g10.c:232
+#: g10/g10.c:237
 msgid "emulate the mode described in RFC1991"
 msgstr ""
 
-#: g10/g10.c:233
+#: g10/g10.c:238
 msgid "|N|use passphrase mode N"
 msgstr ""
 
-#: g10/g10.c:235
+#: g10/g10.c:240
 msgid "|NAME|use message digest algorithm NAME for passphrases"
 msgstr ""
 
-#: g10/g10.c:237
+#: g10/g10.c:242
 msgid "|NAME|use cipher algorithm NAME for passphrases"
 msgstr ""
 
-#: g10/g10.c:239
+#: g10/g10.c:244
 msgid "|NAME|use cipher algorithm NAME"
 msgstr ""
 
-#: g10/g10.c:240
+#: g10/g10.c:245
 msgid "|NAME|use message digest algorithm NAME"
 msgstr ""
 
-#: g10/g10.c:241
+#: g10/g10.c:246
 msgid "|N|use compress algorithm N"
 msgstr ""
 
-#: g10/g10.c:242
+#: g10/g10.c:247
 msgid "throw keyid field of encrypted packets"
 msgstr ""
 
-#: g10/g10.c:250
+#: g10/g10.c:255
 msgid ""
 "@\n"
 "Examples:\n"
@@ -505,244 +509,257 @@ msgid ""
 " --fingerprint [names]      show fingerprints\n"
 msgstr ""
 
-#: g10/g10.c:325
+#: g10/g10.c:333
 msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
 msgstr ""
 
-#: g10/g10.c:330
+#: g10/g10.c:338
 msgid "Usage: gpgm [options] [files] (-h for help)"
 msgstr ""
 
-#: g10/g10.c:332
+#: g10/g10.c:340
 msgid "Usage: gpg [options] [files] (-h for help)"
 msgstr ""
 
-#: g10/g10.c:337
+#: g10/g10.c:345
 msgid ""
 "Syntax: gpgm [options] [files]\n"
 "GnuPG maintenance utility\n"
 msgstr ""
 
-#: g10/g10.c:340
+#: g10/g10.c:348
 msgid ""
 "Syntax: gpg [options] [files]\n"
 "sign, check, encrypt or decrypt\n"
 "default operation depends on the input data\n"
 msgstr ""
 
-#: g10/g10.c:346
+#: g10/g10.c:354
 msgid ""
 "\n"
 "Supported algorithms:\n"
 msgstr ""
 
-#: g10/g10.c:421
+#: g10/g10.c:429
 msgid "usage: gpgm [options] "
 msgstr ""
 
-#: g10/g10.c:423
+#: g10/g10.c:431
 msgid "usage: gpg [options] "
 msgstr ""
 
-#: g10/g10.c:464
+#: g10/g10.c:472
 msgid "conflicting commands\n"
 msgstr ""
 
-#: g10/g10.c:602
+#: g10/g10.c:610
 #, c-format
-msgid "note: no default option file '%s'\n"
+msgid "NOTE: no default option file '%s'\n"
 msgstr ""
 
-#: g10/g10.c:606
+#: g10/g10.c:614
 #, c-format
 msgid "option file '%s': %s\n"
 msgstr ""
 
-#: g10/g10.c:613
+#: g10/g10.c:621
 #, c-format
 msgid "reading options from '%s'\n"
 msgstr ""
 
-#: g10/g10.c:787 g10/g10.c:799
+#: g10/g10.c:769
+#, c-format
+msgid "%s is not a valid character set\n"
+msgstr ""
+
+#: g10/g10.c:802 g10/g10.c:814
 msgid "selected cipher algorithm is invalid\n"
 msgstr ""
 
-#: g10/g10.c:793 g10/g10.c:805
+#: g10/g10.c:808 g10/g10.c:820
 msgid "selected digest algorithm is invalid\n"
 msgstr ""
 
-#: g10/g10.c:808
+#: g10/g10.c:823
 #, c-format
 msgid "compress algorithm must be in range %d..%d\n"
 msgstr ""
 
-#: g10/g10.c:810
+#: g10/g10.c:825
 msgid "completes-needed must be greater than 0\n"
 msgstr ""
 
-#: g10/g10.c:812
+#: g10/g10.c:827
 msgid "marginals-needed must be greater than 1\n"
 msgstr ""
 
-#: g10/g10.c:815
-msgid "note: simple S2K mode (0) is strongly discouraged\n"
+#: g10/g10.c:829
+msgid "max-cert-depth must be in range 1 to 255\n"
+msgstr ""
+
+#: g10/g10.c:832
+msgid "NOTE: simple S2K mode (0) is strongly discouraged\n"
 msgstr ""
 
-#: g10/g10.c:819
+#: g10/g10.c:836
 msgid "invalid S2K mode; must be 0, 1 or 3\n"
 msgstr ""
 
-#: g10/g10.c:895
+#: g10/g10.c:912
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr ""
 
-#: g10/g10.c:901
+#: g10/g10.c:918
 msgid "--store [filename]"
 msgstr ""
 
-#: g10/g10.c:909
+#: g10/g10.c:926
 msgid "--symmetric [filename]"
 msgstr ""
 
-#: g10/g10.c:917
+#: g10/g10.c:934
 msgid "--encrypt [filename]"
 msgstr ""
 
-#: g10/g10.c:930
+#: g10/g10.c:947
 msgid "--sign [filename]"
 msgstr ""
 
-#: g10/g10.c:943
+#: g10/g10.c:960
 msgid "--sign --encrypt [filename]"
 msgstr ""
 
-#: g10/g10.c:957
+#: g10/g10.c:974
 msgid "--clearsign [filename]"
 msgstr ""
 
-#: g10/g10.c:969
+#: g10/g10.c:986
 msgid "--decrypt [filename]"
 msgstr ""
 
-#: g10/g10.c:978
-msgid "--edit-key username"
+#: g10/g10.c:995
+msgid "--edit-key username [commands]"
 msgstr ""
 
-#: g10/g10.c:986
+#: g10/g10.c:1011
 msgid "--delete-secret-key username"
 msgstr ""
 
-#: g10/g10.c:989
+#: g10/g10.c:1014
 msgid "--delete-key username"
 msgstr ""
 
-#: g10/encode.c:216 g10/g10.c:1012
+#: g10/encode.c:216 g10/g10.c:1037 g10/sign.c:301
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr ""
 
-#: g10/g10.c:1023
+#: g10/g10.c:1048
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr ""
 
-#: g10/g10.c:1079
+#: g10/g10.c:1104
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr ""
 
-#: g10/g10.c:1087
+#: g10/g10.c:1112
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr ""
 
-#: g10/g10.c:1148
+#: g10/g10.c:1173
 #, c-format
 msgid "invalid hash algorithm '%s'\n"
 msgstr ""
 
-#: g10/g10.c:1230
+#: g10/g10.c:1256
 msgid "[filename]"
 msgstr ""
 
-#: g10/decrypt.c:59 g10/g10.c:1232 g10/verify.c:66
+#: g10/g10.c:1260
+msgid "Go ahead and type your message ...\n"
+msgstr ""
+
+#: g10/decrypt.c:59 g10/g10.c:1263 g10/verify.c:66
 #, c-format
 msgid "can't open '%s'\n"
 msgstr ""
 
-#: g10/g10.c:1279
+#: g10/g10.c:1312
 msgid ""
 "RSA keys are deprecated; please consider creating a new key and use this key "
 "in the future\n"
 msgstr ""
 
-#: g10/armor.c:341 g10/armor.c:381
+#: g10/armor.c:344 g10/armor.c:391
 msgid "armor header: "
 msgstr ""
 
-#: g10/armor.c:346
+#: g10/armor.c:355
 msgid "invalid clearsig header\n"
 msgstr ""
 
-#: g10/armor.c:372
+#: g10/armor.c:382
 msgid "invalid armor header: "
 msgstr ""
 
-#: g10/armor.c:449
+#: g10/armor.c:459
 #, c-format
 msgid "armor: %s\n"
 msgstr ""
 
-#: g10/armor.c:493
+#: g10/armor.c:530
 msgid "invalid dash escaped line: "
 msgstr ""
 
-#: g10/armor.c:562
+#: g10/armor.c:599
 msgid "invalid clear text header: "
 msgstr ""
 
-#: g10/armor.c:794
+#: g10/armor.c:841
 #, c-format
 msgid "invalid radix64 character %02x skipped\n"
 msgstr ""
 
-#: g10/armor.c:827
+#: g10/armor.c:874
 msgid "premature eof (no CRC)\n"
 msgstr ""
 
-#: g10/armor.c:846
+#: g10/armor.c:893
 msgid "premature eof (in CRC)\n"
 msgstr ""
 
-#: g10/armor.c:850
+#: g10/armor.c:897
 msgid "malformed CRC\n"
 msgstr ""
 
-#: g10/armor.c:854
+#: g10/armor.c:901
 #, c-format
 msgid "CRC error; %06lx - %06lx\n"
 msgstr ""
 
-#: g10/armor.c:873
+#: g10/armor.c:920
 msgid "premature eof (in Trailer)\n"
 msgstr ""
 
-#: g10/armor.c:877
+#: g10/armor.c:924
 msgid "error in trailer line\n"
 msgstr ""
 
-#: g10/armor.c:1131
+#: g10/armor.c:1178
 msgid "no valid RFC1991 or OpenPGP data found.\n"
 msgstr ""
 
-#: g10/pkclist.c:71
+#: g10/pkclist.c:121
 #, c-format
 msgid ""
-"No owner trust defined for %lu:\n"
+"No trust value assigned to %lu:\n"
 "%4u%c/%08lX %s \""
 msgstr ""
 
-#: g10/pkclist.c:81
+#: g10/pkclist.c:131
 msgid ""
 "Please decide how far you trust this user to correctly\n"
 "verify other users' keys (by looking at passports,\n"
@@ -755,52 +772,99 @@ msgid ""
 " s = please show me more information\n"
 msgstr ""
 
-#: g10/pkclist.c:90
+#: g10/pkclist.c:140
 msgid " m = back to the main menu\n"
 msgstr ""
 
 #. a string with valid answers
-#: g10/pkclist.c:95
+#: g10/pkclist.c:145
 msgid "sSmM"
 msgstr ""
 
-#: g10/pkclist.c:99
+#: g10/pkclist.c:149
 msgid "edit_ownertrust.value"
 msgstr ""
 "It's up to you to assign a value here; this value will never be exported\n"
 "to any 3rd party.  We need it to implement the web-of-trust; it has nothing\n"
 "to do with the (implicitly created) web-of-certificates."
 
-#: g10/pkclist.c:99
+#: g10/pkclist.c:149
 msgid "Your decision? "
 msgstr ""
 
-#: g10/pkclist.c:118
-msgid "You will see a list of signators etc. here\n"
+#: g10/pkclist.c:169
+msgid "Certificates leading to an ultimately trusted key:\n"
 msgstr ""
 
-#: g10/pkclist.c:145
+#: g10/pkclist.c:197
 msgid ""
 "Could not find a valid trust path to the key.  Let's see whether we\n"
 "can assign some missing owner trust values.\n"
 "\n"
 msgstr ""
 
-#: g10/pkclist.c:168
+#: g10/pkclist.c:219
+msgid ""
+"No path leading to one of our keys found.\n"
+"\n"
+msgstr ""
+
+#: g10/pkclist.c:221
+msgid ""
+"No certificates with undefined trust found.\n"
+"\n"
+msgstr ""
+
+#: g10/pkclist.c:223
 msgid ""
-"No owner trust values changed.\n"
+"No trust values changed.\n"
 "\n"
 msgstr ""
 
-#: g10/pkclist.c:188
+#: g10/pkclist.c:238
+#, c-format
+msgid "key %08lX: key has been revoked!\n"
+msgstr ""
+
+#: g10/pkclist.c:243
 msgid "revoked_key.override"
 msgstr "If you want to use this revoked key anyway, answer \"yes\"."
 
-#: g10/pkclist.c:189 g10/pkclist.c:279
+#: g10/pkclist.c:244 g10/pkclist.c:335
 msgid "Use this key anyway? "
 msgstr ""
 
-#: g10/pkclist.c:274
+#: g10/pkclist.c:266
+#, c-format
+msgid "%08lX: key has expired\n"
+msgstr ""
+
+#: g10/pkclist.c:272
+#, c-format
+msgid "%08lX: no info to calculate a trust probability\n"
+msgstr ""
+
+#: g10/pkclist.c:288
+#, c-format
+msgid "%08lX: We do NOT trust this key\n"
+msgstr ""
+
+#: g10/pkclist.c:294
+#, c-format
+msgid ""
+"%08lX: It is not sure taht this key really belongs to the owner\n"
+"but it is accepted anyway\n"
+msgstr ""
+
+#: g10/pkclist.c:300
+msgid "This key probably belongs to the owner\n"
+msgstr ""
+
+#: g10/pkclist.c:305
+msgid "This key belongs to us (we have the secret key)\n"
+msgstr ""
+
+#: g10/pkclist.c:330
 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"
@@ -808,123 +872,123 @@ msgid ""
 "\n"
 msgstr ""
 
-#: g10/pkclist.c:278
+#: g10/pkclist.c:334
 msgid "untrusted_key.override"
 msgstr "If you want to use this untrusted key anyway, answer \"yes\"."
 
-#: g10/pkclist.c:283
+#: g10/pkclist.c:339
 msgid "WARNING: Using untrusted key!\n"
 msgstr ""
 
-#: g10/pkclist.c:319
+#: g10/pkclist.c:375
 msgid "WARNING: This key has been revoked by its owner!\n"
 msgstr ""
 
-#: g10/pkclist.c:320
+#: g10/pkclist.c:376
 msgid "         This could mean that the signature is forgery.\n"
 msgstr ""
 
-#: g10/pkclist.c:341
+#: g10/pkclist.c:397
 msgid "Note: This key has expired!\n"
 msgstr ""
 
-#: g10/pkclist.c:348
+#: g10/pkclist.c:404
 msgid "WARNING: This key is not certified with a trusted signature!\n"
 msgstr ""
 
-#: g10/pkclist.c:350
+#: g10/pkclist.c:406
 msgid ""
 "         There is no indication that the signature belongs to the owner.\n"
 msgstr ""
 
-#: g10/pkclist.c:365
+#: g10/pkclist.c:421
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr ""
 
-#: g10/pkclist.c:366
+#: g10/pkclist.c:422
 msgid "         The signature is probably a FORGERY.\n"
 msgstr ""
 
-#: g10/pkclist.c:373
+#: g10/pkclist.c:429
 msgid ""
 "WARNING: This key is not certified with sufficiently trusted signatures!\n"
 msgstr ""
 
-#: g10/pkclist.c:376
+#: g10/pkclist.c:432
 msgid "         It is not certain that the signature belongs to the owner.\n"
 msgstr ""
 
-#: g10/pkclist.c:421
+#: g10/pkclist.c:477
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
 msgstr ""
 
-#: g10/pkclist.c:425
+#: g10/pkclist.c:481
 msgid "pklist.user_id.enter"
 msgstr ""
 "Enter the user id of the addresse to whom you want to send the message."
 
-#: g10/pkclist.c:426
+#: g10/pkclist.c:482
 msgid "Enter the user ID: "
 msgstr ""
 
-#: g10/pkclist.c:437
+#: g10/pkclist.c:493
 msgid "No such user ID.\n"
 msgstr ""
 
-#: g10/pkclist.c:471 g10/pkclist.c:498
+#: g10/pkclist.c:527 g10/pkclist.c:554
 #, c-format
 msgid "%s: skipped: %s\n"
 msgstr ""
 
-#: g10/pkclist.c:479
+#: g10/pkclist.c:535
 #, c-format
 msgid "%s: error checking key: %s\n"
 msgstr ""
 
-#: g10/pkclist.c:505
+#: g10/pkclist.c:561
 msgid "no valid addressees\n"
 msgstr ""
 
-#: g10/keygen.c:123
+#: g10/keygen.c:124
 msgid "writing self signature\n"
 msgstr ""
 
-#: g10/keygen.c:161
+#: g10/keygen.c:162
 msgid "writing key binding signature\n"
 msgstr ""
 
-#: g10/keygen.c:387
+#: g10/keygen.c:388
 msgid "Please select what kind of key you want:\n"
 msgstr ""
 
-#: g10/keygen.c:389
+#: g10/keygen.c:390
 #, c-format
 msgid "   (%d) DSA and ElGamal (default)\n"
 msgstr ""
 
-#: g10/keygen.c:390
+#: g10/keygen.c:391
 #, c-format
 msgid "   (%d) ElGamal (sign and encrypt)\n"
 msgstr ""
 
-#: g10/keygen.c:392
+#: g10/keygen.c:393
 #, c-format
 msgid "   (%d) ElGamal (encrypt only)\n"
 msgstr ""
 
-#: g10/keygen.c:393
+#: g10/keygen.c:394
 #, c-format
 msgid "   (%d) DSA (sign only)\n"
 msgstr ""
 
-#: g10/keygen.c:394
+#: g10/keygen.c:395
 #, c-format
 msgid "   (%d) ElGamal in a v3 packet\n"
 msgstr ""
 
-#: g10/keygen.c:398
+#: g10/keygen.c:399
 msgid "keygen.algo"
 msgstr ""
 "Select the algorithm to use.\n"
@@ -942,15 +1006,15 @@ msgstr ""
 "You should not select the \"ElGamal in a v3 packet\", because that key is\n"
 "not compatible to other OpenPGP implementations."
 
-#: g10/keygen.c:398
+#: g10/keygen.c:399
 msgid "Your selection? "
 msgstr ""
 
-#: g10/keygen.c:424
+#: g10/keygen.c:425
 msgid "Invalid selection.\n"
 msgstr ""
 
-#: g10/keygen.c:436
+#: g10/keygen.c:437
 #, c-format
 msgid ""
 "About to generate a new %s keypair.\n"
@@ -959,61 +1023,61 @@ msgid ""
 "    highest suggested keysize is 2048 bits\n"
 msgstr ""
 
-#: g10/keygen.c:442
+#: g10/keygen.c:443
 msgid "keygen.size"
 msgstr ""
 
-#: g10/keygen.c:443
+#: g10/keygen.c:444
 msgid "What keysize do you want? (1024) "
 msgstr ""
 
-#: g10/keygen.c:448
+#: g10/keygen.c:449
 msgid "DSA only allows keysizes from 512 to 1024\n"
 msgstr ""
 
-#: g10/keygen.c:450
+#: g10/keygen.c:451
 msgid "keysize too small; 768 is smallest value allowed.\n"
 msgstr ""
 
-#: g10/keygen.c:453
+#: g10/keygen.c:454
 msgid ""
 "Keysizes larger than 2048 are not suggested because\n"
 "computations take REALLY long!\n"
 msgstr ""
 
-#: g10/keygen.c:455
+#: g10/keygen.c:456
 msgid "keygen.size.huge.okay"
 msgstr ""
 
-#: g10/keygen.c:456
+#: g10/keygen.c:457
 msgid "Are you sure that you want this keysize? "
 msgstr ""
 
-#: g10/keygen.c:457
+#: g10/keygen.c:458
 msgid ""
 "Okay, but keep in mind that your monitor and keyboard radiation is also very "
 "vulnerable to attacks!\n"
 msgstr ""
 
-#: g10/keygen.c:464
+#: g10/keygen.c:465
 msgid "keygen.size.large.okay"
 msgstr ""
 
-#: g10/keygen.c:465
+#: g10/keygen.c:466
 msgid "Do you really need such a large keysize? "
 msgstr ""
 
-#: g10/keygen.c:471
+#: g10/keygen.c:472
 #, c-format
 msgid "Requested keysize is %u bits\n"
 msgstr ""
 
-#: g10/keygen.c:474 g10/keygen.c:478
+#: g10/keygen.c:475 g10/keygen.c:479
 #, c-format
 msgid "rounded up to %u bits\n"
 msgstr ""
 
-#: g10/keygen.c:491
+#: g10/keygen.c:492
 msgid ""
 "Please specify how long the key should be valid.\n"
 "         0 = key does not expire\n"
@@ -1023,37 +1087,37 @@ msgid ""
 "      <n>y = key expires in n years\n"
 msgstr ""
 
-#: g10/keygen.c:506
+#: g10/keygen.c:507
 msgid "keygen.valid"
 msgstr ""
 
-#: g10/keygen.c:506
+#: g10/keygen.c:507
 msgid "Key is valid for? (0) "
 msgstr ""
 
-#: g10/keygen.c:517
+#: g10/keygen.c:518
 msgid "invalid value\n"
 msgstr ""
 
-#: g10/keygen.c:522
+#: g10/keygen.c:523
 msgid "Key does not expire at all\n"
 msgstr ""
 
 #. print the date when the key expires
-#: g10/keygen.c:528
+#: g10/keygen.c:529
 #, c-format
 msgid "Key expires at %s\n"
 msgstr ""
 
-#: g10/keygen.c:532
+#: g10/keygen.c:534
 msgid "keygen.valid.okay"
 msgstr ""
 
-#: g10/keygen.c:533
+#: g10/keygen.c:535
 msgid "Is this correct (y/n)? "
 msgstr ""
 
-#: g10/keygen.c:569
+#: g10/keygen.c:577
 msgid ""
 "\n"
 "You need a User-ID to identify your key; the software constructs the user "
@@ -1063,51 +1127,51 @@ msgid ""
 "\n"
 msgstr ""
 
-#: g10/keygen.c:580
+#: g10/keygen.c:588
 msgid "keygen.name"
 msgstr ""
 
-#: g10/keygen.c:580
+#: g10/keygen.c:588
 msgid "Real name: "
 msgstr ""
 
-#: g10/keygen.c:584
+#: g10/keygen.c:592
 msgid "Invalid character in name\n"
 msgstr ""
 
-#: g10/keygen.c:586
+#: g10/keygen.c:594
 msgid "Name may not start with a digit\n"
 msgstr ""
 
-#: g10/keygen.c:588
+#: g10/keygen.c:596
 msgid "Name must be at least 5 characters long\n"
 msgstr ""
 
-#: g10/keygen.c:596
+#: g10/keygen.c:604
 msgid "keygen.email"
 msgstr ""
 
-#: g10/keygen.c:596
+#: g10/keygen.c:604
 msgid "Email address: "
 msgstr ""
 
-#: g10/keygen.c:608
+#: g10/keygen.c:616
 msgid "Not a valid email address\n"
 msgstr ""
 
-#: g10/keygen.c:616
+#: g10/keygen.c:624
 msgid "keygen.comment"
 msgstr ""
 
-#: g10/keygen.c:616
+#: g10/keygen.c:624
 msgid "Comment: "
 msgstr ""
 
-#: g10/keygen.c:622
+#: g10/keygen.c:630
 msgid "Invalid character in comment\n"
 msgstr ""
 
-#: g10/keygen.c:642
+#: g10/keygen.c:650
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -1115,11 +1179,11 @@ msgid ""
 "\n"
 msgstr ""
 
-#: g10/keygen.c:645
+#: g10/keygen.c:653
 msgid "NnCcEeOoQq"
 msgstr ""
 
-#: g10/keygen.c:654
+#: g10/keygen.c:662
 msgid "keygen.userid.cmd"
 msgstr ""
 "N  to change the name.\n"
@@ -1128,21 +1192,21 @@ msgstr ""
 "O  to continue with key generation.\n"
 "Q  to to quit the key generation."
 
-#: g10/keygen.c:655
+#: g10/keygen.c:663
 msgid "Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? "
 msgstr ""
 
-#: g10/keygen.c:707
+#: g10/keygen.c:715
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
 msgstr ""
 
-#: g10/keyedit.c:389 g10/keygen.c:715
+#: g10/keyedit.c:389 g10/keygen.c:723
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr ""
 
-#: g10/keygen.c:721
+#: g10/keygen.c:729
 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"
@@ -1150,7 +1214,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: g10/keygen.c:742
+#: g10/keygen.c:750
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (work in another window, move the mouse, utilize the\n"
@@ -1158,52 +1222,53 @@ msgid ""
 "number generator a better chance to gain enough entropy.\n"
 msgstr ""
 
-#: g10/keygen.c:812
+#: g10/keygen.c:820
 msgid "Key generation can only be used in interactive mode\n"
 msgstr ""
 
-#: g10/keygen.c:820
+#: g10/keygen.c:828
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr ""
 
-#: g10/keygen.c:826
+#: g10/keygen.c:834
 msgid "Key generation cancelled.\n"
 msgstr ""
 
-#: g10/keygen.c:836
+#: g10/keygen.c:844
 #, c-format
 msgid "writing public certificate to '%s'\n"
 msgstr ""
 
-#: g10/keygen.c:837
+#: g10/keygen.c:845
 #, c-format
 msgid "writing secret certificate to '%s'\n"
 msgstr ""
 
-#: g10/keygen.c:914
+#: g10/keygen.c:922
 msgid "public and secret key created and signed.\n"
 msgstr ""
 
-#: g10/keygen.c:916
+#: g10/keygen.c:924
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
 "the command \"--add-key\" to generate a secondary key for this purpose.\n"
 msgstr ""
 
-#: g10/keygen.c:930 g10/keygen.c:1015
+#: g10/keygen.c:938 g10/keygen.c:1023
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr ""
 
-#: g10/keygen.c:992
+#: g10/keygen.c:1000
 msgid "keygen.sub.okay"
 msgstr "Answer \"yes\" (or just \"y\") if it is okay to generate the sub key."
 
-#: g10/keygen.c:993
+#: g10/keygen.c:1001
 msgid "Really create? "
 msgstr ""
 
-#: g10/encode.c:88 g10/openfile.c:81 g10/openfile.c:158
+#: g10/encode.c:88 g10/openfile.c:81 g10/openfile.c:158 g10/tdbio.c:417
+#: g10/tdbio.c:468
 #, c-format
 msgid "%s: can't open: %s\n"
 msgstr ""
@@ -1215,7 +1280,7 @@ msgstr ""
 
 #: g10/encode.c:155 g10/encode.c:269
 #, c-format
-msgid "%s: warning: empty file\n"
+msgid "%s: WARNING: empty file\n"
 msgstr ""
 
 #: g10/encode.c:222
@@ -1228,12 +1293,24 @@ msgstr ""
 msgid "%s encrypted for: %s\n"
 msgstr ""
 
-#: g10/getkey.c:950
+#: g10/export.c:162
+msgid "WARNING: nothing exported\n"
+msgstr ""
+
+#: g10/getkey.c:163
+msgid "too many entries in pk cache - disabled\n"
+msgstr ""
+
+#: g10/getkey.c:261
+msgid "too many entries in unk cache - disabled\n"
+msgstr ""
+
+#: g10/getkey.c:967
 #, c-format
 msgid "using secondary key %08lX instead of primary key %08lX\n"
 msgstr ""
 
-#: g10/import.c:125 g10/trustdb.c:1046
+#: g10/import.c:125 g10/trustdb.c:1082
 #, c-format
 msgid "can't open file: %s\n"
 msgstr ""
@@ -1243,12 +1320,12 @@ msgstr ""
 msgid "skipping block of type %d\n"
 msgstr ""
 
-#: g10/import.c:148 g10/trustdb.c:1289 g10/trustdb.c:1358
+#: g10/import.c:148 g10/trustdb.c:1341 g10/trustdb.c:1410
 #, c-format
 msgid "%lu keys so far processed\n"
 msgstr ""
 
-#: g10/import.c:153 g10/trustdb.c:1122
+#: g10/import.c:153 g10/trustdb.c:1158
 #, c-format
 msgid "read error: %s\n"
 msgstr ""
@@ -1331,7 +1408,7 @@ msgstr ""
 msgid "no default public keyring\n"
 msgstr ""
 
-#: g10/import.c:355 g10/openfile.c:105
+#: g10/import.c:355 g10/openfile.c:105 g10/sign.c:205 g10/sign.c:563
 #, c-format
 msgid "writing to '%s'\n"
 msgstr ""
@@ -1561,7 +1638,7 @@ msgstr ""
 msgid "Really sign? "
 msgstr ""
 
-#: g10/keyedit.c:303
+#: g10/keyedit.c:303 g10/sign.c:65
 #, c-format
 msgid "signing failed: %s\n"
 msgstr ""
@@ -1599,345 +1676,388 @@ msgstr ""
 msgid "Do you really want to do this? "
 msgstr ""
 
-#: g10/keyedit.c:489
+#: g10/keyedit.c:455
+msgid "moving a key signature to the correct place\n"
+msgstr ""
+
+#: g10/keyedit.c:490
 msgid "quit"
 msgstr ""
 
-#: g10/keyedit.c:489
+#: g10/keyedit.c:490
 msgid "quit this menu"
 msgstr ""
 
-#: g10/keyedit.c:490
+#: g10/keyedit.c:491
 msgid "q"
 msgstr ""
 
-#: g10/keyedit.c:491
+#: g10/keyedit.c:492
 msgid "save"
 msgstr ""
 
-#: g10/keyedit.c:491
+#: g10/keyedit.c:492
 msgid "save and quit"
 msgstr ""
 
-#: g10/keyedit.c:492
+#: g10/keyedit.c:493
 msgid "help"
 msgstr ""
 
-#: g10/keyedit.c:492
+#: g10/keyedit.c:493
 msgid "show this help"
 msgstr ""
 
-#: g10/keyedit.c:494
+#: g10/keyedit.c:495
 msgid "fpr"
 msgstr ""
 
-#: g10/keyedit.c:494
+#: g10/keyedit.c:495
 msgid "show fingerprint"
 msgstr ""
 
-#: g10/keyedit.c:495
+#: g10/keyedit.c:496
 msgid "list"
 msgstr ""
 
-#: g10/keyedit.c:495
+#: g10/keyedit.c:496
 msgid "list key and user ids"
 msgstr ""
 
-#: g10/keyedit.c:496
+#: g10/keyedit.c:497
 msgid "l"
 msgstr ""
 
-#: g10/keyedit.c:497
+#: g10/keyedit.c:498
 msgid "uid"
 msgstr ""
 
-#: g10/keyedit.c:497
+#: g10/keyedit.c:498
 msgid "select user id N"
 msgstr ""
 
-#: g10/keyedit.c:498
+#: g10/keyedit.c:499
 msgid "key"
 msgstr ""
 
-#: g10/keyedit.c:498
+#: g10/keyedit.c:499
 msgid "select secondary key N"
 msgstr ""
 
-#: g10/keyedit.c:499
+#: g10/keyedit.c:500
 msgid "check"
 msgstr ""
 
-#: g10/keyedit.c:499
+#: g10/keyedit.c:500
 msgid "list signatures"
 msgstr ""
 
-#: g10/keyedit.c:500
+#: g10/keyedit.c:501
 msgid "c"
 msgstr ""
 
-#: g10/keyedit.c:501
+#: g10/keyedit.c:502
 msgid "sign"
 msgstr ""
 
-#: g10/keyedit.c:501
+#: g10/keyedit.c:502
 msgid "sign the key"
 msgstr ""
 
-#: g10/keyedit.c:502
+#: g10/keyedit.c:503
 msgid "s"
 msgstr ""
 
-#: g10/keyedit.c:503
+#: g10/keyedit.c:504
 msgid "debug"
 msgstr ""
 
-#: g10/keyedit.c:504
+#: g10/keyedit.c:505
 msgid "adduid"
 msgstr ""
 
-#: g10/keyedit.c:504
+#: g10/keyedit.c:505
 msgid "add a user id"
 msgstr ""
 
-#: g10/keyedit.c:505
+#: g10/keyedit.c:506
 msgid "deluid"
 msgstr ""
 
-#: g10/keyedit.c:505
+#: g10/keyedit.c:506
 msgid "delete user id"
 msgstr ""
 
-#: g10/keyedit.c:506
+#: g10/keyedit.c:507
 msgid "addkey"
 msgstr ""
 
-#: g10/keyedit.c:506
+#: g10/keyedit.c:507
 msgid "add a secondary key"
 msgstr ""
 
-#: g10/keyedit.c:507
+#: g10/keyedit.c:508
 msgid "delkey"
 msgstr ""
 
-#: g10/keyedit.c:507
+#: g10/keyedit.c:508
 msgid "delete a secondary key"
 msgstr ""
 
-#: g10/keyedit.c:508
+#: g10/keyedit.c:509
 msgid "expire"
 msgstr ""
 
-#: g10/keyedit.c:508
+#: g10/keyedit.c:509
 msgid "change the expire date"
 msgstr ""
 
-#: g10/keyedit.c:509
+#: g10/keyedit.c:510
 msgid "toggle"
 msgstr ""
 
-#: g10/keyedit.c:509
+#: g10/keyedit.c:510
 msgid "toggle between secret and public key listing"
 msgstr ""
 
-#: g10/keyedit.c:511
+#: g10/keyedit.c:512
 msgid "t"
 msgstr ""
 
-#: g10/keyedit.c:512
+#: g10/keyedit.c:513
 msgid "pref"
 msgstr ""
 
-#: g10/keyedit.c:512
+#: g10/keyedit.c:513
 msgid "list preferences"
 msgstr ""
 
-#: g10/keyedit.c:513
+#: g10/keyedit.c:514
 msgid "passwd"
 msgstr ""
 
-#: g10/keyedit.c:513
+#: g10/keyedit.c:514
 msgid "change the passphrase"
 msgstr ""
 
-#: g10/keyedit.c:514
+#: g10/keyedit.c:515
 msgid "trust"
 msgstr ""
 
-#: g10/keyedit.c:514
+#: g10/keyedit.c:515
 msgid "change the ownertrust"
 msgstr ""
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:534
 msgid "can't do that in batchmode\n"
 msgstr ""
 
 #. check that they match
 #. FIXME: check that they both match
-#: g10/keyedit.c:559
+#: g10/keyedit.c:561
 msgid "Secret key is available.\n"
 msgstr ""
 
-#: g10/keyedit.c:576
+#: g10/keyedit.c:590
 msgid "keyedit.cmd"
 msgstr "Please enter \"help\"."
 
-#: g10/keyedit.c:576
+#: g10/keyedit.c:590
 msgid "Command> "
 msgstr ""
 
-#: g10/keyedit.c:602
+#: g10/keyedit.c:617
 msgid "Need the secret key to to this.\n"
 msgstr ""
 
-#: g10/keyedit.c:621
+#: g10/keyedit.c:638
 msgid "keyedit.save.okay"
 msgstr ""
 
-#: g10/keyedit.c:622
+#: g10/keyedit.c:639
 msgid "Save changes? "
 msgstr ""
 
-#: g10/keyedit.c:624
+#: g10/keyedit.c:641
 msgid "keyedit.cancel.okay"
 msgstr ""
 
-#: g10/keyedit.c:625
+#: g10/keyedit.c:642
 msgid "Quit without saving? "
 msgstr ""
 
-#: g10/keyedit.c:635
+#: g10/keyedit.c:652
 #, c-format
 msgid "update failed: %s\n"
 msgstr ""
 
-#: g10/keyedit.c:642
+#: g10/keyedit.c:659
 #, c-format
 msgid "update secret failed: %s\n"
 msgstr ""
 
-#: g10/keyedit.c:649
+#: g10/keyedit.c:666
 msgid "Key not changed so no update needed.\n"
 msgstr ""
 
-#: g10/keyedit.c:652 g10/keyedit.c:710
+#: g10/keyedit.c:669 g10/keyedit.c:727
 #, c-format
 msgid "update of trust db failed: %s\n"
 msgstr ""
 
-#: g10/keyedit.c:683
+#: g10/keyedit.c:700
 msgid "keyedit.sign_all.okay"
 msgstr ""
 
-#: g10/keyedit.c:684
+#: g10/keyedit.c:701
 msgid "Really sign all user ids? "
 msgstr ""
 
-#: g10/keyedit.c:685
+#: g10/keyedit.c:702
 msgid "Hint: Select the user ids to sign\n"
 msgstr ""
 
-#: g10/keyedit.c:721
+#: g10/keyedit.c:738
 msgid "You must select at least one user id.\n"
 msgstr ""
 
-#: g10/keyedit.c:723
+#: g10/keyedit.c:740
 msgid "You can't delete the last user id!\n"
 msgstr ""
 
-#: g10/keyedit.c:725
+#: g10/keyedit.c:742
 msgid "keyedit.remove.uid.okay"
 msgstr ""
 
-#: g10/keyedit.c:726
+#: g10/keyedit.c:743
 msgid "Really remove all selected user ids? "
 msgstr ""
 
-#: g10/keyedit.c:727
+#: g10/keyedit.c:744
 msgid "Really remove this user id? "
 msgstr ""
 
-#: g10/keyedit.c:750
+#: g10/keyedit.c:767
 msgid "You must select at least one key.\n"
 msgstr ""
 
-#: g10/keyedit.c:752
+#: g10/keyedit.c:769
 msgid "keyedit.remove.subkey.okay"
 msgstr ""
 
-#: g10/keyedit.c:754
+#: g10/keyedit.c:771
 msgid "Do you really want to delete the selected keys? "
 msgstr ""
 
-#: g10/keyedit.c:755
+#: g10/keyedit.c:772
 msgid "Do you really want to delete this key? "
 msgstr ""
 
-#: g10/keyedit.c:802
+#: g10/keyedit.c:819
 msgid "Invalid command  (try \"help\")\n"
 msgstr ""
 
-#: g10/keyedit.c:1180
+#: g10/keyedit.c:1197
 msgid "Please remove selections from the secret keys.\n"
 msgstr ""
 
-#: g10/keyedit.c:1186
+#: g10/keyedit.c:1203
 msgid "Please select at most one secondary key.\n"
 msgstr ""
 
-#: g10/keyedit.c:1190
+#: g10/keyedit.c:1207
 msgid "Changing exiration time for a secondary key.\n"
 msgstr ""
 
-#: g10/keyedit.c:1192
+#: g10/keyedit.c:1209
 msgid "Changing exiration time for the primary key.\n"
 msgstr ""
 
-#: g10/keyedit.c:1236
+#: g10/keyedit.c:1250
 msgid "No corresponding signature in secret ring\n"
 msgstr ""
 
-#: g10/keyedit.c:1296
+#: g10/keyedit.c:1310
 #, c-format
 msgid "No user id with index %d\n"
 msgstr ""
 
-#: g10/keyedit.c:1341
+#: g10/keyedit.c:1355
 #, c-format
 msgid "No secondary key with index %d\n"
 msgstr ""
 
+#: g10/mainproc.c:198
+msgid "public key encrypted data: Good DEK\n"
+msgstr ""
+
 #: g10/mainproc.c:201
 #, c-format
 msgid "public key decryption failed: %s\n"
 msgstr ""
 
+#: g10/mainproc.c:228
+msgid "decryption okay\n"
+msgstr ""
+
 #: g10/mainproc.c:231
 #, c-format
 msgid "decryption failed: %s\n"
 msgstr ""
 
 #: g10/mainproc.c:248
-msgid "note: sender requested \"for-your-eyes-only\"\n"
+msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
+msgstr ""
+
+#: g10/mainproc.c:250
+#, c-format
+msgid "original file name='%.*s'\n"
 msgstr ""
 
-#: g10/mainproc.c:842
+#: g10/mainproc.c:837
+msgid "signature verification suppressed\n"
+msgstr ""
+
+#: g10/mainproc.c:843
 #, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr ""
 
-#: g10/mainproc.c:850
+#: g10/mainproc.c:851
 msgid "BAD signature from \""
 msgstr ""
 
-#: g10/mainproc.c:851
+#: g10/mainproc.c:852
 msgid "Good signature from \""
 msgstr ""
 
-#: g10/mainproc.c:862
+#: g10/mainproc.c:865
 #, c-format
 msgid "Can't check signature: %s\n"
 msgstr ""
 
+#: g10/mainproc.c:938
+msgid "old style (PGP 2.x) signature\n"
+msgstr ""
+
+#: g10/mainproc.c:943
+msgid "invalid root packet detected in proc_tree()\n"
+msgstr ""
+
+#: g10/misc.c:88
+#, c-format
+msgid "can't disable core dumps: %s\n"
+msgstr ""
+
+#: g10/misc.c:90
+msgid "WARNING: Program may create a core file!\n"
+msgstr ""
+
+#: g10/parse-packet.c:109
+#, c-format
+msgid "can't handle public key algorithm %d\n"
+msgstr ""
+
 #: g10/passphrase.c:141
 msgid ""
 "\n"
@@ -1957,16 +2077,22 @@ msgstr ""
 "  Blurb, blurb,.... "
 
 #: g10/passphrase.c:174
-msgid "Enter pass phrase: "
+#, fuzzy
+msgid "Enter passphrase: "
 msgstr ""
+"Please enter the passhrase; this is a secret sentence \n"
+"  Blurb, blurb,.... "
 
 #: g10/passphrase.c:177
 msgid "passphrase.repeat"
 msgstr "Please repeat the last passphrase, so you are sure what you typed in."
 
 #: g10/passphrase.c:178
-msgid "Repeat pass phrase: "
+#, fuzzy
+msgid "Repeat passphrase: "
 msgstr ""
+"Please enter the passhrase; this is a secret sentence \n"
+"  Blurb, blurb,.... "
 
 #: g10/plaintext.c:102
 msgid "data not saved; use option \"--output\" to save it\n"
@@ -1980,11 +2106,33 @@ msgstr ""
 msgid "Please enter name of data file: "
 msgstr ""
 
+#: g10/plaintext.c:236
+msgid "reading stdin ...\n"
+msgstr ""
+
 #: g10/plaintext.c:299
 #, c-format
 msgid "can't open signed data '%s'\n"
 msgstr ""
 
+#: g10/pubkey-enc.c:78
+#, c-format
+msgid "anonymous receiver; trying secret key %08lX ...\n"
+msgstr ""
+
+#: g10/pubkey-enc.c:84
+msgid "okay, we are the anonymous receiver.\n"
+msgstr ""
+
+#: g10/pubkey-enc.c:136
+msgid "old encoding of the DEK is not supported\n"
+msgstr ""
+
+#: g10/pubkey-enc.c:183
+#, c-format
+msgid "NOTE: cipher algorithm %d not found in preferences\n"
+msgstr ""
+
 #: g10/seckey-cert.c:56
 #, c-format
 msgid "protection algorithm %d is not supported\n"
@@ -1995,7 +2143,7 @@ msgid "Invalid passphrase; please try again ...\n"
 msgstr ""
 
 #: g10/seckey-cert.c:215
-msgid "Warning: Weak key detected - please change passphrase again.\n"
+msgid "WARNING: Weak key detected - please change passphrase again.\n"
 msgstr ""
 
 #: g10/sig-check.c:155
@@ -2009,252 +2157,710 @@ msgstr ""
 
 #: g10/sig-check.c:170
 #, c-format
-msgid "warning: signature key expired %s\n"
+msgid "NOTE: signature key expired %s\n"
+msgstr ""
+
+#: g10/sign.c:69
+#, c-format
+msgid "%s signature from: %s\n"
+msgstr ""
+
+#: g10/sign.c:200 g10/sign.c:558
+#, c-format
+msgid "can't create %s: %s\n"
+msgstr ""
+
+#: g10/sign.c:296
+msgid "signing:"
+msgstr ""
+
+#: g10/sign.c:336
+#, c-format
+msgid "WARNING: '%s' is an empty file\n"
+msgstr ""
+
+#: g10/tdbio.c:115 g10/tdbio.c:1377
+#, c-format
+msgid "trustdb rec %lu: lseek failed: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:121 g10/tdbio.c:1384
+#, c-format
+msgid "trustdb rec %lu: write failed (n=%d): %s\n"
+msgstr ""
+
+#: g10/tdbio.c:231
+msgid "trustdb transaction to large\n"
+msgstr ""
+
+#: g10/tdbio.c:374
+#, c-format
+msgid "%s: can't access: %s\n"
+msgstr ""
+
+#: g10/ringedit.c:257 g10/tdbio.c:394
+#, c-format
+msgid "%s: can't create directory: %s\n"
+msgstr ""
+
+#: g10/ringedit.c:263 g10/tdbio.c:397
+#, c-format
+msgid "%s: directory created\n"
+msgstr ""
+
+#: g10/tdbio.c:401
+#, c-format
+msgid "%s: directory does not exist!\n"
+msgstr ""
+
+#: g10/openfile.c:101 g10/openfile.c:165 g10/ringedit.c:1235 g10/tdbio.c:407
+#, c-format
+msgid "%s: can't create: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:431
+#, c-format
+msgid "%s: failed to create version record: %s"
+msgstr ""
+
+#: g10/tdbio.c:435
+#, c-format
+msgid "%s: invalid trust-db created\n"
+msgstr ""
+
+#: g10/tdbio.c:437
+#, c-format
+msgid "%s: trust-db created\n"
+msgstr ""
+
+#: g10/tdbio.c:470
+#, c-format
+msgid "%s: invalid trust-db\n"
+msgstr ""
+
+#: g10/tdbio.c:504
+#, c-format
+msgid "%s: failed to create hashtable: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:512
+#, c-format
+msgid "%s: error updating version record: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:528 g10/tdbio.c:567 g10/tdbio.c:592 g10/tdbio.c:1310
+#: g10/tdbio.c:1337
+#, c-format
+msgid "%s: error reading version record: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:541
+#, c-format
+msgid "%s: error writing version record: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:1017
+#, c-format
+msgid "trustdb: lseek failed: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:1025
+#, c-format
+msgid "trustdb: read failed (n=%d): %s\n"
+msgstr ""
+
+#: g10/tdbio.c:1046
+#, c-format
+msgid "%s: not a trustdb file\n"
+msgstr ""
+
+#: g10/tdbio.c:1062
+#, c-format
+msgid "%s: version record with recnum %lu\n"
+msgstr ""
+
+#: g10/tdbio.c:1067
+#, c-format
+msgid "%s: invalid file version %d\n"
+msgstr ""
+
+#: g10/tdbio.c:1343
+#, c-format
+msgid "%s: error reading free record: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:129
+#: g10/tdbio.c:1351
+#, c-format
+msgid "%s: error writing dir record: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:1361
+#, c-format
+msgid "%s: failed to zero a record: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:1391
+#, c-format
+msgid "%s: failed to append a record: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:128
 msgid "The trust DB is corrupted; please run \"gpgm --fix-trust-db\".\n"
 msgstr ""
 
-#: g10/trustdb.c:407
+#: g10/trustdb.c:141
+#, c-format
+msgid "trust record %lu, req type %d: read failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:156
+#, c-format
+msgid "trust record %lu, type %d: write failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:170
+#, c-format
+msgid "trust record %lu: delete failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:184
+#, c-format
+msgid "trust db: sync failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:313
+#, c-format
+msgid "error reading dir record for LID %lu: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:320
+#, c-format
+msgid "lid %lu: expected dir record, got type %d\n"
+msgstr ""
+
+#: g10/trustdb.c:325
+#, c-format
+msgid "no primary key for LID %lu\n"
+msgstr ""
+
+#: g10/trustdb.c:330
+#, c-format
+msgid "error reading primary key for LID %lu: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:406
 #, c-format
 msgid "chained sigrec %lu has a wrong owner\n"
 msgstr ""
 
-#: g10/trustdb.c:454
+#: g10/trustdb.c:460
+#, c-format
+msgid "NOTE: secret key %08lX is NOT protected.\n"
+msgstr ""
+
+#: g10/trustdb.c:467
 #, c-format
 msgid "key %08lX: secret key without public key - skipped\n"
 msgstr ""
 
-#: g10/trustdb.c:460
+#: g10/trustdb.c:473
 #, c-format
 msgid "key %08lX: secret and public key don't match\n"
 msgstr ""
 
-#: g10/trustdb.c:470
+#: g10/trustdb.c:483
 #, c-format
 msgid "key %08lX: can't put it into the trustdb\n"
 msgstr ""
 
-#: g10/trustdb.c:476
+#: g10/trustdb.c:489
 #, c-format
 msgid "key %08lX: query record failed\n"
 msgstr ""
 
-#: g10/trustdb.c:485
+#: g10/trustdb.c:498
 #, c-format
 msgid "key %08lX: already in secret key table\n"
 msgstr ""
 
-#: g10/trustdb.c:488
+#: g10/trustdb.c:501
 #, c-format
 msgid "key %08lX: accepted as secret key.\n"
 msgstr ""
 
-#: g10/trustdb.c:495
+#: g10/trustdb.c:508
+#, c-format
+msgid "enumerate secret keys failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:682
+#, c-format
+msgid "lid %lu: read dir record failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:691
+#, c-format
+msgid "lid %lu: read key record failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:701
+#, c-format
+msgid "lid %lu: read uid record failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:710
+#, c-format
+msgid "lid %lu: read pref record failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:720
+#, c-format
+msgid "lid %lu: read sig record failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:915
+msgid "Ooops, no keys\n"
+msgstr ""
+
+#: g10/trustdb.c:919
+msgid "Ooops, no user ids\n"
+msgstr ""
+
+#: g10/trustdb.c:990 g10/trustdb.c:1008
 #, c-format
-msgid "enum_secret_keys failed: %s\n"
+msgid "user '%s' read problem: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:1292 g10/trustdb.c:1360
+#: g10/trustdb.c:993 g10/trustdb.c:1011
+#, c-format
+msgid "user '%s' list problem: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1001 g10/trustdb.c:1216
+#, c-format
+msgid "user '%s' not found: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1003 g10/trustdb.c:1218
+#, c-format
+msgid "problem finding '%s' in trustdb: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1006
+#, c-format
+msgid "user '%s' not in trustdb\n"
+msgstr ""
+
+#: g10/trustdb.c:1041
+#, c-format
+msgid ""
+"# List of assigned trustvalues, created %s\n"
+"# (Use \"gpgm --import-ownertrust\" to restore them)\n"
+msgstr ""
+
+#: g10/trustdb.c:1047
+msgid "directory record w/o primary key\n"
+msgstr ""
+
+#: g10/trustdb.c:1054
+#, c-format
+msgid "error reading key record: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1094
+msgid "line to long\n"
+msgstr ""
+
+#: g10/trustdb.c:1102
+msgid "error: missing colon\n"
+msgstr ""
+
+#: g10/trustdb.c:1107
+msgid "error: invalid fingerprint\n"
+msgstr ""
+
+#: g10/trustdb.c:1111
+#, fuzzy
+msgid "error: no ownertrust value\n"
+msgstr ""
+"It's up to you to assign a value here; this value will never be exported\n"
+"to any 3rd party.  We need it to implement the web-of-trust; it has nothing\n"
+"to do with the (implicitly created) web-of-certificates."
+
+#: g10/trustdb.c:1125
+#, c-format
+msgid "LID %lu: changing trust from %u to %u\n"
+msgstr ""
+
+#: g10/trustdb.c:1128
+#, c-format
+msgid "LID %lu: setting trust to %u\n"
+msgstr ""
+
+#: g10/trustdb.c:1136
+msgid "key not in trustdb, searching ring.\n"
+msgstr ""
+
+#: g10/trustdb.c:1139
+#, c-format
+msgid "key not in ring: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1143
+msgid "Oops: key is now in trustdb???\n"
+msgstr ""
+
+#. update the ownertrust
+#: g10/trustdb.c:1148
+#, c-format
+msgid "insert trust record failed: %s\n"
+msgstr ""
+
+#. error
+#: g10/trustdb.c:1154
+#, c-format
+msgid "error finding dir record: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1221
+#, c-format
+msgid "user '%s' not in trustdb - inserting\n"
+msgstr ""
+
+#: g10/trustdb.c:1224
+#, c-format
+msgid "failed to put '%s' into trustdb: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1271
+#, c-format
+msgid "%s: keyblock read problem: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1285
+#, c-format
+msgid "%s: update failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1288
+#, c-format
+msgid "%s: updated\n"
+msgstr ""
+
+#: g10/trustdb.c:1290
+#, c-format
+msgid "%s: okay\n"
+msgstr ""
+
+#: g10/trustdb.c:1305
+#, c-format
+msgid "lid %lu: dir record w/o key - skipped\n"
+msgstr ""
+
+#: g10/trustdb.c:1318
+#, c-format
+msgid "lid %lu: keyblock not found: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1327 g10/trustdb.c:1396
+#, c-format
+msgid "lid %lu: update failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1333 g10/trustdb.c:1402
+#, c-format
+msgid "lid %lu: updated\n"
+msgstr ""
+
+#: g10/trustdb.c:1337 g10/trustdb.c:1406
+#, c-format
+msgid "lid %lu: okay\n"
+msgstr ""
+
+#: g10/trustdb.c:1344 g10/trustdb.c:1412
 #, c-format
 msgid "%lu keys processed\n"
 msgstr ""
 
-#: g10/trustdb.c:1294
+#: g10/trustdb.c:1346
 #, c-format
 msgid "\t%lu keys skipped\n"
 msgstr ""
 
-#: g10/trustdb.c:1296 g10/trustdb.c:1362
+#: g10/trustdb.c:1348 g10/trustdb.c:1414
 #, c-format
 msgid "\t%lu keys with errors\n"
 msgstr ""
 
-#: g10/trustdb.c:1298 g10/trustdb.c:1364
+#: g10/trustdb.c:1350 g10/trustdb.c:1416
 #, c-format
 msgid "\t%lu keys updated\n"
 msgstr ""
 
-#: g10/trustdb.c:1366
+#: g10/trustdb.c:1380
+#, c-format
+msgid "lid ?: insert failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1385
+#, c-format
+msgid "lid %lu: insert failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1391
+#, c-format
+msgid "lid %lu: inserted\n"
+msgstr ""
+
+#: g10/trustdb.c:1418
 #, c-format
 msgid "\t%lu keys inserted\n"
 msgstr ""
 
 #: g10/trustdb.c:1421
 #, c-format
+msgid "enumerate keyblocks failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1466
+#, c-format
+msgid "check_trust: search dir record failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1473
+#, c-format
 msgid "key %08lX: insert trust record failed: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:1425
+#: g10/trustdb.c:1477
 #, c-format
 msgid "key %08lX.%lu: inserted into trustdb\n"
 msgstr ""
 
-#: g10/trustdb.c:1433
+#: g10/trustdb.c:1485
 #, c-format
 msgid "key %08lX.%lu: created in future (time warp or clock problem)\n"
 msgstr ""
 
-#: g10/trustdb.c:1440
+#: g10/trustdb.c:1492
 #, c-format
 msgid "key %08lX.%lu: expired at %s\n"
 msgstr ""
 
-#: g10/trustdb.c:1448
+#: g10/trustdb.c:1500
 #, c-format
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:1666
+#: g10/trustdb.c:1669 g10/trustdb.c:1698 g10/trustdb.c:2428
+msgid "WARNING: can't yet handle long pref records\n"
+msgstr ""
+
+#: g10/trustdb.c:1720
+#, c-format
+msgid "get_dir_record: search_record failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1783
 #, c-format
-msgid "note: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
+msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
 msgstr ""
 
-#: g10/trustdb.c:1670
+#: g10/trustdb.c:1787
 #, c-format
-msgid "note: sig rec %lu[%d] in hintlist of %lu but not marked\n"
+msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but not marked\n"
 msgstr ""
 
 #. we need the dir record
-#: g10/trustdb.c:1677
+#: g10/trustdb.c:1794
 #, c-format
 msgid "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
 msgstr ""
 
-#: g10/trustdb.c:1683
+#: g10/trustdb.c:1800
 #, c-format
 msgid "lid %lu: no primary key\n"
 msgstr ""
 
-#: g10/trustdb.c:1716
+#: g10/trustdb.c:1833
 #, c-format
 msgid "lid %lu: user id not found in keyblock\n"
 msgstr ""
 
-#: g10/trustdb.c:1720
+#: g10/trustdb.c:1837
 #, c-format
 msgid "lid %lu: user id without signature\n"
 msgstr ""
 
-#: g10/trustdb.c:1727
+#: g10/trustdb.c:1844
 #, c-format
 msgid "lid %lu: self-signature in hintlist\n"
 msgstr ""
 
-#: g10/trustdb.c:1738 g10/trustdb.c:2444 g10/trustdb.c:2526
+#: g10/trustdb.c:1855 g10/trustdb.c:2565 g10/trustdb.c:2647
 msgid "Valid certificate revocation"
 msgstr ""
 
-#: g10/trustdb.c:1739 g10/trustdb.c:2445 g10/trustdb.c:2527
+#: g10/trustdb.c:1856 g10/trustdb.c:2566 g10/trustdb.c:2648
 msgid "Good certificate"
 msgstr ""
 
-#: g10/trustdb.c:1748
+#: g10/trustdb.c:1865
 msgid "very strange: no public key\n"
 msgstr ""
 
-#: g10/trustdb.c:1796
+#: g10/trustdb.c:1913
 #, c-format
 msgid "hintlist %lu[%d] of %lu does not point to a dir record\n"
 msgstr ""
 
-#: g10/trustdb.c:1802
+#: g10/trustdb.c:1919
 #, c-format
 msgid "lid %lu does not have a key\n"
 msgstr ""
 
-#: g10/trustdb.c:1812
+#: g10/trustdb.c:1929
 #, c-format
 msgid "lid %lu: can't get keyblock: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:2022
+#: g10/trustdb.c:1986 g10/trustdb.c:2889
+#, c-format
+msgid "tdbio_search_dir failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:2139
 #, c-format
 msgid "key %08lX.%lu: Good subkey binding\n"
 msgstr ""
 
-#: g10/trustdb.c:2028 g10/trustdb.c:2070
+#: g10/trustdb.c:2145 g10/trustdb.c:2187
 #, c-format
 msgid "key %08lX.%lu: Invalid subkey binding: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:2043
+#: g10/trustdb.c:2160
 #, c-format
 msgid "key %08lX.%lu: Valid key revocation\n"
 msgstr ""
 
-#: g10/trustdb.c:2049
+#: g10/trustdb.c:2166
 #, c-format
 msgid "key %08lX.%lu: Invalid key revocation: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:2064
+#: g10/trustdb.c:2181
 #, c-format
 msgid "key %08lX.%lu: Valid subkey revocation\n"
 msgstr ""
 
-#: g10/trustdb.c:2164
+#: g10/trustdb.c:2281
 msgid "Good self-signature"
 msgstr ""
 
-#: g10/trustdb.c:2172
+#: g10/trustdb.c:2289
 msgid "Invalid self-signature"
 msgstr ""
 
-#: g10/trustdb.c:2183
+#: g10/trustdb.c:2300
 msgid "Valid user ID revocation\n"
 msgstr ""
 
-#: g10/trustdb.c:2190
+#: g10/trustdb.c:2307
 msgid "Invalid user ID revocation"
 msgstr ""
 
-#: g10/trustdb.c:2273
+#: g10/trustdb.c:2391
 msgid "Too many preferences"
 msgstr ""
 
-#: g10/trustdb.c:2286
-msgid "Too many preferences items"
+#: g10/trustdb.c:2405
+msgid "Too many preference items"
 msgstr ""
 
-#: g10/trustdb.c:2423
+#: g10/trustdb.c:2544
 msgid "Duplicated certificate - deleted"
 msgstr ""
 
-#: g10/trustdb.c:2455
-msgid "public key lost"
+#: g10/trustdb.c:2576
+msgid "Hmmm, public key lost?"
 msgstr ""
 
-#: g10/trustdb.c:2464 g10/trustdb.c:2547
+#: g10/trustdb.c:2585 g10/trustdb.c:2668
 msgid "Invalid certificate revocation"
 msgstr ""
 
-#: g10/trustdb.c:2465 g10/trustdb.c:2548
+#: g10/trustdb.c:2586 g10/trustdb.c:2669
 msgid "Invalid certificate"
 msgstr ""
 
-#: g10/status.c:246
-msgid "No help available"
+#: g10/trustdb.c:2601
+#, c-format
+msgid "uid %08lX.%lu/%02X%02X: has shadow dir %lu but is not yet marked.\n"
 msgstr ""
 
-#: g10/status.c:252
+#: g10/trustdb.c:2615
 #, c-format
-msgid "No help available for '%s'"
+msgid "sig record %lu[%d] points to wrong record.\n"
 msgstr ""
 
-#: g10/pubkey-enc.c:78
+#. that should never happen
+#: g10/trustdb.c:2859
 #, c-format
-msgid "anonymous receiver; trying secret key %08lX ...\n"
+msgid "insert_trust_record: keyblock not found: %s\n"
 msgstr ""
 
-#: g10/pubkey-enc.c:84
-msgid "okay, we are the anonymous receiver.\n"
+#: g10/trustdb.c:2877
+msgid "did not use primary key for insert_trust_record()\n"
 msgstr ""
 
-#: g10/pubkey-enc.c:183
+#: g10/ringedit.c:277
 #, c-format
-msgid "note: cipher algorithm %d not found in preferences\n"
+msgid "%s: can't create keyring: %s\n"
+msgstr ""
+
+#: g10/ringedit.c:283 g10/ringedit.c:1239
+#, c-format
+msgid "%s: keyring created\n"
+msgstr ""
+
+#: g10/ringedit.c:1412
+msgid "WARNING: 2 files with confidential information exists.\n"
+msgstr ""
+
+#: g10/ringedit.c:1413
+#, c-format
+msgid "%s is the unchanged one\n"
+msgstr ""
+
+#: g10/ringedit.c:1414
+#, c-format
+msgid "%s is the new one\n"
+msgstr ""
+
+#: g10/ringedit.c:1415
+msgid "Please fix this possible security flaw\n"
+msgstr ""
+
+#: g10/skclist.c:94
+#, c-format
+msgid "skipped '%s': %s\n"
+msgstr ""
+
+#: g10/skclist.c:100
+#, c-format
+msgid ""
+"skipped '%s': this is a PGP generated ElGamal key which is not secure for "
+"signatures!\n"
+msgstr ""
+
+#: g10/status.c:246
+msgid "No help available"
+msgstr ""
+
+#: g10/status.c:252
+#, c-format
+msgid "No help available for '%s'"
 msgstr ""
 
 #. do not overwrite
@@ -2275,11 +2881,6 @@ msgstr ""
 msgid "writing to stdout\n"
 msgstr ""
 
-#: g10/openfile.c:101 g10/openfile.c:165
-#, c-format
-msgid "%s: can't create: %s\n"
-msgstr ""
-
 #: g10/openfile.c:134
 #, c-format
 msgid "assuming signed data in '%s'\n"
@@ -2290,9 +2891,19 @@ msgstr ""
 msgid "%s: new options file created\n"
 msgstr ""
 
+#: g10/encr-data.c:59
+#, c-format
+msgid "%s encrypted data\n"
+msgstr ""
+
+#: g10/encr-data.c:61
+#, c-format
+msgid "encrypted with unknown algorithm %d\n"
+msgstr ""
+
 #: g10/encr-data.c:74
 msgid ""
-"Warning: Message was encrypted with a weak key in the symmetric cipher.\n"
+"WARNING: Message was encrypted with a weak key in the symmetric cipher.\n"
 msgstr ""
 
 #: g10/seskey.c:52
index 8d3bc29..3d6c0a4 100644 (file)
@@ -5,6 +5,7 @@
 # I also got inspiration from it.po by Marco d'Itri <md@linux.it>
 msgid ""
 msgstr ""
+"POT-Creation-Date: 1998-11-20 15:17+0100\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"
@@ -20,11 +21,11 @@ msgstr ""
 msgid "Warning: using insecure memory!\n"
 msgstr "Aviso: ¡se está usando memoria insegura!\n"
 
-#: util/miscutil.c:110
+#: util/miscutil.c:139
 msgid "yes"
 msgstr "sí"
 
-#: util/miscutil.c:111
+#: util/miscutil.c:140
 msgid "yY"
 msgstr "sS"
 
@@ -200,16 +201,19 @@ msgstr "El fichero existe. "
 msgid "Weak key"
 msgstr "Clave débil"
 
-#: util/logger.c:177
-msgid "Ohhhh jeeee ... this is a bug (%s:%d:%s)\n"
+#: util/logger.c:178
+#, fuzzy, c-format
+msgid "... this is a bug (%s:%d:%s)\n"
 msgstr "¡Oh! vaya... esto es un bug (%s:%d:%s)\n"
 
-#: util/logger.c:183
+#: util/logger.c:184
+#, c-format
 msgid "you found a bug ... (%s:%d)\n"
 msgstr "Ha encontrado Vd. un bug... (%s:%d)\n"
 
 #: cipher/rand-dummy.c:112
-msgid "warning: using insecure random number generator!!\n"
+#, fuzzy
+msgid "WARNING: using insecure random number generator!!\n"
 msgstr "Aviso: ¡se está usando un generador de números aleatorios inseguro!\n"
 
 #: cipher/rand-dummy.c:113
@@ -227,6 +231,7 @@ msgstr ""
 "\n"
 
 #: cipher/rand-unix.c:149
+#, c-format
 msgid ""
 "\n"
 "Not enough random bytes available.  Please do some other work to give\n"
@@ -237,7 +242,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:149
+#: g10/g10.c:155
 msgid ""
 "@Commands:\n"
 " "
@@ -245,123 +250,123 @@ msgstr ""
 "@Comandos:\n"
 " "
 
-#: g10/g10.c:152
+#: g10/g10.c:158
 msgid "|[file]|make a signature"
 msgstr "|[file]|hace una firma"
 
-#: g10/g10.c:153
+#: g10/g10.c:159
 msgid "|[file]|make a clear text signature"
 msgstr "|[file]|hace una firma en texto claro"
 
-#: g10/g10.c:154
+#: g10/g10.c:160
 msgid "make a detached signature"
 msgstr "hace una firma separada"
 
-#: g10/g10.c:155
+#: g10/g10.c:161
 msgid "encrypt data"
 msgstr "cifra datos"
 
-#: g10/g10.c:156
+#: g10/g10.c:162
 msgid "encryption only with symmetric cipher"
 msgstr "cifra sólo con un cifrado simétrico"
 
-#: g10/g10.c:157
+#: g10/g10.c:163
 msgid "store only"
 msgstr "sólo almacenar"
 
-#: g10/g10.c:158
+#: g10/g10.c:164
 msgid "decrypt data (default)"
 msgstr "descifra datos (predefinido)"
 
-#: g10/g10.c:159
+#: g10/g10.c:165
 msgid "verify a signature"
 msgstr "verifica una firma"
 
-#: g10/g10.c:161
+#: g10/g10.c:167
 msgid "list keys"
 msgstr "lista las claves"
 
-#: g10/g10.c:162
+#: g10/g10.c:168
 msgid "list keys and signatures"
 msgstr "lista las claves y firmas"
 
-#: g10/g10.c:163
+#: g10/g10.c:169
 msgid "check key signatures"
 msgstr "comprueba las firmas de las claves"
 
-#: g10/g10.c:164
+#: g10/g10.c:170
 msgid "list keys and fingerprints"
 msgstr "lista las claves y huellas dactilares"
 
-#: g10/g10.c:165
+#: g10/g10.c:171
 msgid "list secret keys"
 msgstr "lista las claves secretas"
 
-#: g10/g10.c:167
+#: g10/g10.c:173
 msgid "generate a new key pair"
 msgstr "genera un nuevo par de claves"
 
-#: g10/g10.c:169
+#: g10/g10.c:175
 msgid "remove key from the public keyring"
 msgstr "elimina la clave del anillo público"
 
-#: g10/g10.c:171
+#: g10/g10.c:177
 msgid "sign or edit a key"
 msgstr "firma o modifica una clave"
 
-#: g10/g10.c:172
+#: g10/g10.c:178
 msgid "generate a revocation certificate"
 msgstr "genera un certificado de revocación"
 
-#: g10/g10.c:174
+#: g10/g10.c:180
 msgid "export keys"
 msgstr "exporta las claves"
 
-#: g10/g10.c:176
+#: g10/g10.c:182
 msgid "import/merge keys"
 msgstr "importa/fusiona las claves"
 
-#: g10/g10.c:177
+#: g10/g10.c:184
 msgid "list only the sequence of packets"
 msgstr "lista sólo la secuencia de paquetes"
 
-#: g10/g10.c:180
+#: g10/g10.c:187
 msgid "export the ownertrust values"
 msgstr "exporta los valores de confianza"
 
-#: g10/g10.c:182
+#: g10/g10.c:189
 msgid "import ownertrust values"
 msgstr "importa los valores de confianza"
 
-#: g10/g10.c:184
+#: g10/g10.c:191
 msgid "|[NAMES]|update the trust database"
 msgstr "|[NOMBRES]|actualiza la base de datos de confianza"
 
-#: g10/g10.c:186
+#: g10/g10.c:193
 msgid "|[NAMES]|check the trust database"
 msgstr "|[NOMBRES]|comprueba la base de datos de confianza"
 
-#: g10/g10.c:187
+#: g10/g10.c:194
 msgid "fix a corrupted trust database"
 msgstr "arregla una base de datos de confianza dañada"
 
-#: g10/g10.c:188
+#: g10/g10.c:195
 msgid "De-Armor a file or stdin"
 msgstr "quita la armadura de un fichero o stdin"
 
-#: g10/g10.c:189
+#: g10/g10.c:196
 msgid "En-Armor a file or stdin"
 msgstr "crea la armadura a un fichero o stdin"
 
-#: g10/g10.c:190
+#: g10/g10.c:197
 msgid "|algo [files]|print message digests"
 msgstr "|algo [files]|imprime resúmenes de mensaje"
 
-#: g10/g10.c:191
+#: g10/g10.c:198
 msgid "print all message digests"
 msgstr "imprime todos los resúmenes de mensaje"
 
-#: g10/g10.c:198
+#: g10/g10.c:205
 msgid ""
 "@\n"
 "Options:\n"
@@ -371,131 +376,141 @@ msgstr ""
 "Opciones:\n"
 " "
 
-#: g10/g10.c:200
+#: g10/g10.c:207
 msgid "create ascii armored output"
 msgstr "crea una salida ascii con armadura"
 
-#: g10/g10.c:202
+#: g10/g10.c:209
 msgid "use this user-id to sign or decrypt"
 msgstr "usa este usuario para firmar o descifrar"
 
-#: g10/g10.c:203
+#: g10/g10.c:210
 msgid "use this user-id for encryption"
 msgstr "usa este usuario para cifrar"
 
-#: g10/g10.c:204
+#: g10/g10.c:211
 msgid "|N|set compress level N (0 disables)"
 msgstr "|N|establece nivel de compresión N (0 no comprime)"
 
-#: g10/g10.c:205
+#: g10/g10.c:213
 msgid "use canonical text mode"
 msgstr "usa modo de texto canónico"
 
-#: g10/g10.c:207
+#: g10/g10.c:215
 msgid "use as output file"
 msgstr "usa como fichero de salida"
 
-#: g10/g10.c:208
+#: g10/g10.c:216
 msgid "verbose"
 msgstr "prolijo"
 
-#: g10/g10.c:209
+#: g10/g10.c:217
+msgid "be somewhat more quiet"
+msgstr ""
+
+#: g10/g10.c:218
 msgid "force v3 signatures"
 msgstr "fuerza firmas v3"
 
-#: g10/g10.c:211
+#. { oDryRun, "dry-run",   0, N_("do not make any changes") },
+#: g10/g10.c:220
 msgid "batch mode: never ask"
 msgstr "proceso por lotes: nunca preguntar"
 
-#: g10/g10.c:212
+#: g10/g10.c:221
 msgid "assume yes on most questions"
 msgstr "asume \"sí\" en casi todas las preguntas"
 
-#: g10/g10.c:213
+#: g10/g10.c:222
 msgid "assume no on most questions"
 msgstr "asume \"no\" en casi todas las preguntas"
 
-#: g10/g10.c:214
+#: g10/g10.c:223
 msgid "add this keyring to the list of keyrings"
 msgstr "añade este anillo a la lista de anillos"
 
-#: g10/g10.c:215
+#: g10/g10.c:224
 msgid "add this secret keyring to the list"
 msgstr "añade este anillo secreto a la lista"
 
-#: g10/g10.c:216
+#: g10/g10.c:225
 msgid "|NAME|use NAME as default secret key"
 msgstr "|NOMBRE|usa NOMBRE como clave secreta por defecto"
 
-#: g10/g10.c:217
+#: g10/g10.c:226
+#, fuzzy
+msgid "|NAME| set terminal charset to NAME"
+msgstr "|NOMBRE|usa el algoritmo de cifrado NOMBRE"
+
+#: g10/g10.c:227
 msgid "read options from file"
 msgstr "lee opciones del fichero"
 
-#: g10/g10.c:219
+#: g10/g10.c:229
 msgid "set debugging flags"
 msgstr "establece los parámetros de depuración"
 
-#: g10/g10.c:220
+#: g10/g10.c:230
 msgid "enable full debugging"
 msgstr "habilita depuración completa"
 
-#: g10/g10.c:221
+#: g10/g10.c:231
 msgid "|FD|write status info to this FD"
 msgstr "|DF|escribe información de estado en descriptor DF"
 
-#: g10/g10.c:222
+#: g10/g10.c:232
 msgid "do not write comment packets"
 msgstr "no escribe paquetes de comentario"
 
-#: g10/g10.c:223
+#: g10/g10.c:233
 msgid "(default is 1)"
 msgstr "(por defecto es 1)"
 
-#: g10/g10.c:224
+#: g10/g10.c:234
 msgid "(default is 3)"
 msgstr "(por defecto es 3)"
 
-#: g10/g10.c:225
+#: g10/g10.c:236
 msgid "|FILE|load extension module FILE"
 msgstr "|FICHERO|carga módulo de extensiones FICHERO"
 
-#: g10/g10.c:226
+#: g10/g10.c:237
 msgid "emulate the mode described in RFC1991"
 msgstr "emula el modo descrito en la RFC1991"
 
-#: g10/g10.c:227
+#: g10/g10.c:238
 msgid "|N|use passphrase mode N"
 msgstr "|N|usa modo de contraseña N"
 
-#: g10/g10.c:229
+#: g10/g10.c:240
 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:231
+#: g10/g10.c:242
 msgid "|NAME|use cipher algorithm NAME for passphrases"
 msgstr ""
 "|NOMBRE|usa el algoritmo de cifrado NOMBRE para las\n"
 "contraseñas"
 
-#: g10/g10.c:233
+#: g10/g10.c:244
 msgid "|NAME|use cipher algorithm NAME"
 msgstr "|NOMBRE|usa el algoritmo de cifrado NOMBRE"
 
-#: g10/g10.c:234
+#: g10/g10.c:245
 msgid "|NAME|use message digest algorithm NAME"
 msgstr "|NOMBRE|usa algoritmo de resumen de mensaje NOMBRE"
 
-#: g10/g10.c:235
+#: g10/g10.c:246
 msgid "|N|use compress algorithm N"
 msgstr "|N|usa el algoritmo de compresión N"
 
-#: g10/g10.c:236
+#: g10/g10.c:247
 msgid "throw keyid field of encrypted packets"
 msgstr "elimina el campo keyid de los paquetes cifrados"
 
-#: g10/g10.c:244
+#: g10/g10.c:255
 msgid ""
 "@\n"
 "Examples:\n"
@@ -515,19 +530,19 @@ msgstr ""
 " --list-keys [nombres]      muestra las claves\n"
 " --fingerprint [nombres]    muestra las huellas dactilares\n"
 
-#: g10/g10.c:319
+#: g10/g10.c:333
 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:324
+#: g10/g10.c:338
 msgid "Usage: gpgm [options] [files] (-h for help)"
 msgstr "Uso: gpgm [opciones] [ficheros] (-h para ayuda)"
 
-#: g10/g10.c:326
+#: g10/g10.c:340
 msgid "Usage: gpg [options] [files] (-h for help)"
 msgstr "Uso: gpg [opciones] [ficheros] (-h para ayuda)"
 
-#: g10/g10.c:331
+#: g10/g10.c:345
 msgid ""
 "Syntax: gpgm [options] [files]\n"
 "GnuPG maintenance utility\n"
@@ -535,7 +550,7 @@ msgstr ""
 "Sintaxis: gpgm [opciones] [ficheros]\n"
 "Utilidad de mantenimiento de GnuPG\n"
 
-#: g10/g10.c:334
+#: g10/g10.c:348
 msgid ""
 "Syntax: gpg [options] [files]\n"
 "sign, check, encrypt or decrypt\n"
@@ -545,7 +560,7 @@ msgstr ""
 "firma, comprueba, cifra o descifra\n"
 "la operación por defecto depende del tipo de datos de entrada\n"
 
-#: g10/g10.c:340
+#: g10/g10.c:354
 msgid ""
 "\n"
 "Supported algorithms:\n"
@@ -553,202 +568,232 @@ msgstr ""
 "\n"
 "Algoritmos soportados:\n"
 
-#: g10/g10.c:415
+#: g10/g10.c:429
 msgid "usage: gpgm [options] "
 msgstr "uso: gpgm [opciones] "
 
-#: g10/g10.c:417
+#: g10/g10.c:431
 msgid "usage: gpg [options] "
 msgstr "uso: gpg [opciones] "
 
-#: g10/g10.c:458
+#: g10/g10.c:472
 msgid "conflicting commands\n"
 msgstr "comandos incompatibles\n"
 
-#: g10/g10.c:596
-msgid "note: no default option file '%s'\n"
+#: g10/g10.c:610
+#, fuzzy, c-format
+msgid "NOTE: no default option file '%s'\n"
 msgstr "nota: no existe fichero de opciones predefinido '%s'\n"
 
-#: g10/g10.c:600
+#: g10/g10.c:614
+#, c-format
 msgid "option file '%s': %s\n"
 msgstr "fichero de opciones '%s': %s\n"
 
-#: g10/g10.c:607
+#: g10/g10.c:621
+#, c-format
 msgid "reading options from '%s'\n"
 msgstr "leyendo opciones desde '%s'\n"
 
-#: g10/g10.c:778 g10/g10.c:790
+#: g10/g10.c:769
+#, fuzzy, c-format
+msgid "%s is not a valid character set\n"
+msgstr "Caracter no válido en el comentario\n"
+
+#: g10/g10.c:802 g10/g10.c:814
 msgid "selected cipher algorithm is invalid\n"
 msgstr "el algoritmo de cifra seleccionado no es válido\n"
 
-#: g10/g10.c:784 g10/g10.c:796
+#: g10/g10.c:808 g10/g10.c:820
 msgid "selected digest algorithm is invalid\n"
 msgstr "el algoritmo de resumen seleccionado no es válido\n"
 
-#: g10/g10.c:799
+#: g10/g10.c:823
+#, 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:801
+#: g10/g10.c:825
 msgid "completes-needed must be greater than 0\n"
 msgstr "completes-needed debe ser mayor que 0\n"
 
-#: g10/g10.c:803
+#: g10/g10.c:827
 msgid "marginals-needed must be greater than 1\n"
 msgstr "marginals-needed debe ser mayor que 1\n"
 
-#: g10/g10.c:806
-msgid "note: simple S2K mode (0) is strongly discouraged\n"
+#: g10/g10.c:829
+msgid "max-cert-depth must be in range 1 to 255\n"
+msgstr ""
+
+#: g10/g10.c:832
+#, fuzzy
+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:810
+#: g10/g10.c:836
 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:886
+#: g10/g10.c:912
+#, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "inicialización de la base de datos de confianza '%s' fallida\n"
 
-#: g10/g10.c:892
+#: g10/g10.c:918
 msgid "--store [filename]"
 msgstr "--store [nombre_fichero]"
 
-#: g10/g10.c:900
+#: g10/g10.c:926
 msgid "--symmetric [filename]"
 msgstr "--symmetric [nombre_fichero]"
 
-#: g10/g10.c:908
+#: g10/g10.c:934
 msgid "--encrypt [filename]"
 msgstr "--encrypt [nombre_fichero]"
 
-#: g10/g10.c:921
+#: g10/g10.c:947
 msgid "--sign [filename]"
 msgstr "--sign [nombre_fichero]"
 
-#. sign and encrypt the given file
-#: g10/g10.c:934
+#: g10/g10.c:960
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [nombre_fichero]"
 
-#: g10/g10.c:948
+#: g10/g10.c:974
 msgid "--clearsign [filename]"
 msgstr "--clearsign [nombre_fichero]"
 
-#: g10/g10.c:960
+#: g10/g10.c:986
 msgid "--decrypt [filename]"
 msgstr "--decrypt [nombre_fichero]"
 
-#: g10/g10.c:969
-msgid "--edit-key username"
+#: g10/g10.c:995
+#, fuzzy
+msgid "--edit-key username [commands]"
 msgstr "--edit-key nombre_usuario"
 
-#: g10/g10.c:977
+#: g10/g10.c:1011
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key nombre_usuario"
 
-#: g10/g10.c:980
+#: g10/g10.c:1014
 msgid "--delete-key username"
 msgstr "--delete-key nombre_usuario"
 
-#. prepare iobufs
-#: g10/encode.c:215 g10/g10.c:1003 g10/keylist.c:80
+#: g10/encode.c:216 g10/g10.c:1037 g10/sign.c:301
+#, c-format
 msgid "can't open %s: %s\n"
 msgstr "no puede abrirse '%s': %s\n"
 
-#: g10/g10.c:1014
+#: g10/g10.c:1048
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [id_usuario] [anillo]"
 
-#: g10/g10.c:1069
+#: g10/g10.c:1104
+#, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "eliminación de armadura fallida: %s\n"
 
-#: g10/g10.c:1077
+#: g10/g10.c:1112
+#, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "creación de armadura fallida: %s\n"
 
-#: g10/g10.c:1138
+#: g10/g10.c:1173
+#, c-format
 msgid "invalid hash algorithm '%s'\n"
 msgstr "algoritmo de distribución no válido '%s'\n"
 
-#: g10/g10.c:1220
+#: g10/g10.c:1256
 msgid "[filename]"
 msgstr "[nombre_fichero]"
 
-#: g10/decrypt.c:59 g10/g10.c:1222 g10/verify.c:66
+#: g10/g10.c:1260
+msgid "Go ahead and type your message ...\n"
+msgstr ""
+
+#: g10/decrypt.c:59 g10/g10.c:1263 g10/verify.c:66
+#, c-format
 msgid "can't open '%s'\n"
 msgstr "no puede abrirse '%s'\n"
 
-#: g10/g10.c:1269
-msgid "RSA keys are deprecated; please consider creating a new key and use this key in the future\n"
-msgstr "Las claves RSA están en desuso, considere la creación de una nueva clave para futuros usos\n"
+#: g10/g10.c:1312
+msgid ""
+"RSA keys are deprecated; please consider creating a new key and use this key "
+"in the future\n"
+msgstr ""
+"Las claves RSA están en desuso, considere la creación de una nueva clave "
+"para futuros usos\n"
 
-#. buffer to short, but this is okay
-#: g10/armor.c:341 g10/armor.c:381
+#: g10/armor.c:344 g10/armor.c:391
 msgid "armor header: "
 msgstr "cabecera de armadura: "
 
-#: g10/armor.c:346
+#: g10/armor.c:355
 msgid "invalid clearsig header\n"
 msgstr "cabecera de firma clara no válida\n"
 
-#: g10/armor.c:372
+#: g10/armor.c:382
 msgid "invalid armor header: "
 msgstr "cabecera de armadura no válida: "
 
-#: g10/armor.c:449
+#: g10/armor.c:459
+#, c-format
 msgid "armor: %s\n"
 msgstr "armadura: %s\n"
 
-#: g10/armor.c:493
+#: g10/armor.c:530
 msgid "invalid dash escaped line: "
 msgstr "Línea con guiones no válida: "
 
-#: g10/armor.c:562
+#: g10/armor.c:599
 msgid "invalid clear text header: "
 msgstr "cabecera de texto claro no válida: "
 
-#: g10/armor.c:794
+#: g10/armor.c:841
+#, c-format
 msgid "invalid radix64 character %02x skipped\n"
 msgstr "caracteres no válidos radix64 %02x ignorados\n"
 
-#: g10/armor.c:827
+#: g10/armor.c:874
 msgid "premature eof (no CRC)\n"
 msgstr "Fin de fichero prematuro\n"
 
-#: g10/armor.c:846
+#: g10/armor.c:893
 msgid "premature eof (in CRC)\n"
 msgstr "Fin de suma de comprobación prematuro\n"
 
-#: g10/armor.c:850
+#: g10/armor.c:897
 msgid "malformed CRC\n"
 msgstr "Suma de comprobación mal creada\n"
 
-#: g10/armor.c:854
+#: g10/armor.c:901
+#, c-format
 msgid "CRC error; %06lx - %06lx\n"
 msgstr "Error en suma de comprobación: %06lx - %06lx\n"
 
-#: g10/armor.c:873
+#: g10/armor.c:920
 msgid "premature eof (in Trailer)\n"
 msgstr ""
 
-#: g10/armor.c:877
+#: g10/armor.c:924
 msgid "error in trailer line\n"
 msgstr ""
 
-#: g10/armor.c:1131
+#: g10/armor.c:1178
 msgid "no valid RFC1991 or OpenPGP data found.\n"
 msgstr "RFC1991 no válida o datos OpenPGP no encontrados\n"
 
-#: g10/pkclist.c:71
+#: g10/pkclist.c:121
+#, fuzzy, c-format
 msgid ""
-"No owner trust defined for %lu:\n"
+"No trust value assigned to %lu:\n"
 "%4u%c/%08lX %s \""
 msgstr ""
 "No hay confianza definida para el propietario %lu:\n"
 "%4u%c/%08lX %s \""
 
-#: g10/pkclist.c:81
+#: g10/pkclist.c:131
 msgid ""
 "Please decide how far you trust this user to correctly\n"
 "verify other users' keys (by looking at passports,\n"
@@ -770,28 +815,28 @@ msgstr ""
 " 4 = Me fío completamente\n"
 " i = Mostrar más información\n"
 
-#: g10/pkclist.c:90
+#: g10/pkclist.c:140
 msgid " m = back to the main menu\n"
 msgstr " m = volver al menú principal\n"
 
 #. a string with valid answers
-#: g10/pkclist.c:95
+#: g10/pkclist.c:145
 msgid "sSmM"
 msgstr "iImM"
 
-#: g10/pkclist.c:99
+#: g10/pkclist.c:149
 msgid "edit_ownertrust.value"
 msgstr ""
 
-#: g10/pkclist.c:99
+#: g10/pkclist.c:149
 msgid "Your decision? "
 msgstr "Su decisión: "
 
-#: g10/pkclist.c:118
-msgid "You will see a list of signators etc. here\n"
-msgstr "Aquí se verá una lista de firmantes, etc.\n"
+#: g10/pkclist.c:169
+msgid "Certificates leading to an ultimately trusted key:\n"
+msgstr ""
 
-#: g10/pkclist.c:145
+#: g10/pkclist.c:197
 msgid ""
 "Could not find a valid trust path to the key.  Let's see whether we\n"
 "can assign some missing owner trust values.\n"
@@ -801,23 +846,71 @@ msgstr ""
 "si es posible asignar algunos valores de confianza perdidos.\n"
 "\n"
 
-#: g10/pkclist.c:168
+#: g10/pkclist.c:219
+msgid ""
+"No path leading to one of our keys found.\n"
+"\n"
+msgstr ""
+
+#: g10/pkclist.c:221
+msgid ""
+"No certificates with undefined trust found.\n"
+"\n"
+msgstr ""
+
+#: g10/pkclist.c:223
+#, fuzzy
 msgid ""
-"No owner trust values changed.\n"
+"No trust values changed.\n"
 "\n"
 msgstr ""
 "No se cambió ningún valor de confianza.\n"
 "\n"
 
-#: g10/pkclist.c:188
+#: g10/pkclist.c:238
+#, fuzzy, c-format
+msgid "key %08lX: key has been revoked!\n"
+msgstr "clave %08lX: aceptada como clave secreta.\n"
+
+#: g10/pkclist.c:243
 msgid "revoked_key.override"
 msgstr ""
 
-#: g10/pkclist.c:189 g10/pkclist.c:279
+#: g10/pkclist.c:244 g10/pkclist.c:335
 msgid "Use this key anyway? "
 msgstr "¿Usar esta clave de todas formas? "
 
-#: g10/pkclist.c:274
+#: g10/pkclist.c:266
+#, fuzzy, c-format
+msgid "%08lX: key has expired\n"
+msgstr "Nota: ¡Esta clave está caducada!\n"
+
+#: g10/pkclist.c:272
+#, c-format
+msgid "%08lX: no info to calculate a trust probability\n"
+msgstr ""
+
+#: g10/pkclist.c:288
+#, fuzzy, c-format
+msgid "%08lX: We do NOT trust this key\n"
+msgstr "ATENCIÓN: ¡Esta firma NO es de confianza!\n"
+
+#: g10/pkclist.c:294
+#, c-format
+msgid ""
+"%08lX: It is not sure taht this key really belongs to the owner\n"
+"but it is accepted anyway\n"
+msgstr ""
+
+#: g10/pkclist.c:300
+msgid "This key probably belongs to the owner\n"
+msgstr ""
+
+#: g10/pkclist.c:305
+msgid "This key belongs to us (we have the secret key)\n"
+msgstr ""
+
+#: g10/pkclist.c:330
 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"
@@ -829,51 +922,55 @@ msgstr ""
 "\"sí\" a la siguiente pregunta.\n"
 "\n"
 
-#: g10/pkclist.c:278
+#: g10/pkclist.c:334
 msgid "untrusted_key.override"
 msgstr ""
 
-#: g10/pkclist.c:283
+#: g10/pkclist.c:339
 msgid "WARNING: Using untrusted key!\n"
 msgstr "ATENCIÓN: ¡Usando una clave no fiable!\n"
 
-#: g10/pkclist.c:319
+#: g10/pkclist.c:375
 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:320
+#: g10/pkclist.c:376
 msgid "         This could mean that the signature is forgery.\n"
 msgstr "          Esto puede significar que la firma está falsificada.\n"
 
-#: g10/pkclist.c:341
+#: g10/pkclist.c:397
 msgid "Note: This key has expired!\n"
 msgstr "Nota: ¡Esta clave está caducada!\n"
 
-#: g10/pkclist.c:348
+#: g10/pkclist.c:404
 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"
+msgstr ""
+"ATENCIÓN: ¡Esta clave no está certificada por una firma de confianza!\n"
 
-#: g10/pkclist.c:350
-msgid "         There is no indication that the signature belongs to the owner.\n"
+#: g10/pkclist.c:406
+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:365
+#: g10/pkclist.c:421
 msgid "WARNING: We do NOT trust this key!\n"
 msgstr "ATENCIÓN: ¡Esta firma NO es de confianza!\n"
 
-#: g10/pkclist.c:366
+#: g10/pkclist.c:422
 msgid "         The signature is probably a FORGERY.\n"
 msgstr "         La firma es probablemente una FALSIFICACIÓN.\n"
 
-#: g10/pkclist.c:373
-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:429
+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:376
+#: g10/pkclist.c:432
 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:421
+#: g10/pkclist.c:477
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -881,75 +978,83 @@ msgstr ""
 "No se ha especificado un ID de usuario (puede usar \"-r\")\n"
 "\n"
 
-#: g10/pkclist.c:425
+#: g10/pkclist.c:481
 msgid "pklist.user_id.enter"
 msgstr ""
 
-#: g10/pkclist.c:426
+#: g10/pkclist.c:482
 msgid "Enter the user ID: "
 msgstr "Introduzca el ID de usuario: "
 
-#: g10/pkclist.c:437
+#: g10/pkclist.c:493
 msgid "No such user ID.\n"
 msgstr "ID de usuario inexistente.\n"
 
-#: g10/pkclist.c:471 g10/pkclist.c:498
+#: g10/pkclist.c:527 g10/pkclist.c:554
+#, c-format
 msgid "%s: skipped: %s\n"
 msgstr "%s: ignorado: %s\n"
 
-#: g10/pkclist.c:479
+#: g10/pkclist.c:535
+#, c-format
 msgid "%s: error checking key: %s\n"
 msgstr "%s: error comprobando la clave: %s\n"
 
-#: g10/pkclist.c:505
+#: g10/pkclist.c:561
 msgid "no valid addressees\n"
 msgstr "no hay direcciones válidas\n"
 
-#: g10/keygen.c:123
+#: g10/keygen.c:124
 msgid "writing self signature\n"
 msgstr "escribiendo autofirma\n"
 
-#: g10/keygen.c:161
+#: g10/keygen.c:162
 msgid "writing key binding signature\n"
 msgstr ""
 
-#: g10/keygen.c:387
+#: g10/keygen.c:388
 msgid "Please select what kind of key you want:\n"
 msgstr "Por favor seleccione tipo de clave deseado:\n"
 
-#: g10/keygen.c:389
+#: g10/keygen.c:390
+#, c-format
 msgid "   (%d) DSA and ElGamal (default)\n"
 msgstr "   (%d) DSA y ElGamal (por defecto)\n"
 
-#: g10/keygen.c:390
+#: g10/keygen.c:391
+#, c-format
 msgid "   (%d) ElGamal (sign and encrypt)\n"
 msgstr "   (%d) ElGamal (firma y cifrado)\n"
 
-#: g10/keygen.c:392
+#: g10/keygen.c:393
+#, c-format
 msgid "   (%d) ElGamal (encrypt only)\n"
 msgstr "   (%d) ElGamal (sólo cifrado)\n"
 
-#: g10/keygen.c:393
+#: g10/keygen.c:394
+#, c-format
 msgid "   (%d) DSA (sign only)\n"
 msgstr "   (%d) DSA (sólo firma)\n"
 
-#: g10/keygen.c:394
+#: g10/keygen.c:395
+#, c-format
 msgid "   (%d) ElGamal in a v3 packet\n"
 msgstr "   (%d) ElGamal en un paquete v3\n"
 
-#: g10/keygen.c:398
+#: g10/keygen.c:399
 msgid "keygen.algo"
 msgstr ""
 
-#: g10/keygen.c:398
+#: g10/keygen.c:399
 msgid "Your selection? "
 msgstr "Su elección: "
 
-#: g10/keygen.c:424
+#: g10/keygen.c:425
 msgid "Invalid selection.\n"
 msgstr "Elección no válida.\n"
 
-#: g10/keygen.c:436
+#: g10/keygen.c:437
+#, c-format
 msgid ""
 "About to generate a new %s keypair.\n"
 "              minimum keysize is  768 bits\n"
@@ -961,23 +1066,23 @@ msgstr ""
 "        el tamaño por defecto es 1024 bits\n"
 " el tamaño máximo recomendado en 2048 bits\n"
 
-#: g10/keygen.c:442
+#: g10/keygen.c:443
 msgid "keygen.size"
 msgstr ""
 
-#: g10/keygen.c:443
+#: g10/keygen.c:444
 msgid "What keysize do you want? (1024) "
 msgstr "¿De qué tamaño quiere la clave (1024)? "
 
-#: g10/keygen.c:448
+#: g10/keygen.c:449
 msgid "DSA only allows keysizes from 512 to 1024\n"
 msgstr "DSA sólo permite tamaños desde 512 a 1024\n"
 
-#: g10/keygen.c:450
+#: g10/keygen.c:451
 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:453
+#: g10/keygen.c:454
 msgid ""
 "Keysizes larger than 2048 are not suggested because\n"
 "computations take REALLY long!\n"
@@ -985,37 +1090,42 @@ 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:455
+#: g10/keygen.c:456
 msgid "keygen.size.huge.okay"
 msgstr ""
 
-#: g10/keygen.c:456
+#: g10/keygen.c:457
 msgid "Are you sure that you want this keysize? "
 msgstr "¿Seguro que quiere una clave de este tamaño? "
 
-#: g10/keygen.c:457
-msgid "Okay, but keep in mind that your monitor and keyboard radiation is also very vulnerable to attacks!\n"
+#: g10/keygen.c:458
+msgid ""
+"Okay, but keep in mind that your monitor and keyboard radiation is also very "
+"vulnerable to attacks!\n"
 msgstr ""
-"De acuerdo, ¡pero tenga en cuenta que las radiaciones de su monitor y teclado\n"
+"De acuerdo, ¡pero tenga en cuenta que las radiaciones de su monitor y "
+"teclado\n"
 "también son vulnerables a un ataque!\n"
 
-#: g10/keygen.c:464
+#: g10/keygen.c:465
 msgid "keygen.size.large.okay"
 msgstr ""
 
-#: g10/keygen.c:465
+#: g10/keygen.c:466
 msgid "Do you really need such a large keysize? "
 msgstr "¿De verdad necesita una clave tan grande? "
 
-#: g10/keygen.c:471
+#: g10/keygen.c:472
+#, c-format
 msgid "Requested keysize is %u bits\n"
 msgstr "El tamaño requerido es de %u bits\n"
 
-#: g10/keygen.c:474 g10/keygen.c:478
+#: g10/keygen.c:475 g10/keygen.c:479
+#, c-format
 msgid "rounded up to %u bits\n"
 msgstr "redondeados a %u bits\n"
 
-#: g10/keygen.c:491
+#: g10/keygen.c:492
 msgid ""
 "Please specify how long the key should be valid.\n"
 "         0 = key does not expire\n"
@@ -1031,95 +1141,100 @@ msgstr ""
 "      <n>m = la clave caduca en n meses\n"
 "      <n>y = la clave caduca en n años\n"
 
-#: g10/keygen.c:506
+#: g10/keygen.c:507
 msgid "keygen.valid"
 msgstr ""
 
-#: g10/keygen.c:506
+#: g10/keygen.c:507
 msgid "Key is valid for? (0) "
 msgstr "¿Validez de la clave (0)? "
 
-#: g10/keygen.c:517
+#: g10/keygen.c:518
 msgid "invalid value\n"
 msgstr "valor no válido\n"
 
-#: g10/keygen.c:522
+#: g10/keygen.c:523
 msgid "Key does not expire at all\n"
 msgstr "La clave nunca caduca\n"
 
-#: g10/keygen.c:528
+#. print the date when the key expires
+#: g10/keygen.c:529
+#, c-format
 msgid "Key expires at %s\n"
 msgstr "La clave caduca el %s\n"
 
-#: g10/keygen.c:532
+#: g10/keygen.c:534
 msgid "keygen.valid.okay"
 msgstr ""
 
-#: g10/keygen.c:533
+#: g10/keygen.c:535
 msgid "Is this correct (y/n)? "
 msgstr "¿Es correcto (s/n)? "
 
-#: g10/keygen.c:561
+#: g10/keygen.c:577
 msgid ""
 "\n"
-"You need a User-ID to identify your key; the software constructs the user id\n"
+"You need a User-ID to identify your key; the software constructs the user "
+"id\n"
 "from Real Name, Comment and Email Address in this form:\n"
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 msgstr ""
 "\n"
-"Necesita un identificativo de usuario para identificar su clave. El programa\n"
-"construye el identificativo a partir del Nombre Real, Comentario y Dirección\n"
+"Necesita un identificativo de usuario para identificar su clave. El "
+"programa\n"
+"construye el identificativo a partir del Nombre Real, Comentario y "
+"Dirección\n"
 "de Correo Electrónico de esta forma:\n"
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 
-#: g10/keygen.c:572
+#: g10/keygen.c:588
 msgid "keygen.name"
 msgstr ""
 
-#: g10/keygen.c:572
+#: g10/keygen.c:588
 msgid "Real name: "
 msgstr "Nombre y apellidos: "
 
-#: g10/keygen.c:576
+#: g10/keygen.c:592
 msgid "Invalid character in name\n"
 msgstr "Caracter no válido en el nombre\n"
 
-#: g10/keygen.c:578
+#: g10/keygen.c:594
 msgid "Name may not start with a digit\n"
 msgstr "El nombre no puede empezar con un número\n"
 
-#: g10/keygen.c:580
+#: g10/keygen.c:596
 msgid "Name must be at least 5 characters long\n"
 msgstr "El nombre debe tener al menos 5 caracteres\n"
 
-#: g10/keygen.c:588
+#: g10/keygen.c:604
 msgid "keygen.email"
 msgstr ""
 
-#: g10/keygen.c:588
+#: g10/keygen.c:604
 msgid "Email address: "
 msgstr "Dirección de correo electrónico: "
 
-#: g10/keygen.c:600
+#: g10/keygen.c:616
 msgid "Not a valid email address\n"
 msgstr "Dirección no válida\n"
 
-#: g10/keygen.c:608
+#: g10/keygen.c:624
 msgid "keygen.comment"
 msgstr ""
 
-#: g10/keygen.c:608
+#: g10/keygen.c:624
 msgid "Comment: "
 msgstr "Comentario: "
 
-#. no comment is okay
-#: g10/keygen.c:614
+#: g10/keygen.c:630
 msgid "Invalid character in comment\n"
 msgstr "Caracter no válido en el comentario\n"
 
-#: g10/keygen.c:634
+#: g10/keygen.c:650
+#, c-format
 msgid ""
 "You selected this USER-ID:\n"
 "    \"%s\"\n"
@@ -1129,19 +1244,19 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:637
+#: g10/keygen.c:653
 msgid "NnCcEeOoQq"
 msgstr "NnCcDdVvSs"
 
-#: g10/keygen.c:646
+#: g10/keygen.c:662
 msgid "keygen.userid.cmd"
 msgstr ""
 
-#: g10/keygen.c:647
+#: g10/keygen.c:663
 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:694
+#: g10/keygen.c:715
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -1149,11 +1264,11 @@ msgstr ""
 "Necesita una contraseña para proteger su clave secreta.\n"
 "\n"
 
-#: g10/keyedit.c:389 g10/keygen.c:702
+#: g10/keyedit.c:389 g10/keygen.c:723
 msgid "passphrase not correctly repeated; try again.\n"
 msgstr "contraseña repetida incorrecta, inténtelo de nuevo.\n"
 
-#: g10/keygen.c:708
+#: g10/keygen.c:729
 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"
@@ -1165,7 +1280,7 @@ msgstr ""
 "la opción \"--edit-key\".\n"
 "\n"
 
-#: g10/keygen.c:729
+#: g10/keygen.c:750
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (work in another window, move the mouse, utilize the\n"
@@ -1178,242 +1293,362 @@ msgstr ""
 "generador de números aleatorios mayor oportunidad de recoger suficiente\n"
 "entropía.\n"
 
-#: g10/keygen.c:799
+#: g10/keygen.c:820
 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:807
+#: g10/keygen.c:828
 msgid "DSA keypair will have 1024 bits.\n"
 msgstr "El par de claves DSA tendrá 1024 bits.\n"
 
-#: g10/keygen.c:813
+#: g10/keygen.c:834
 msgid "Key generation cancelled.\n"
 msgstr "Creación de claves cancelada.\n"
 
-#: g10/keygen.c:823
+#: g10/keygen.c:844
+#, c-format
 msgid "writing public certificate to '%s'\n"
 msgstr "escribiendo certificado público en '%s'\n"
 
-#: g10/keygen.c:824
+#: g10/keygen.c:845
+#, c-format
 msgid "writing secret certificate to '%s'\n"
 msgstr "escribiendo certificado privado en '%s'\n"
 
-#: g10/keygen.c:901
+#: g10/keygen.c:922
 msgid "public and secret key created and signed.\n"
 msgstr "Claves pública y secreta creadas y firmadas.\n"
 
-#: g10/keygen.c:903
+#: g10/keygen.c:924
 msgid ""
 "Note that this key cannot be used for encryption.  You may want to use\n"
 "the command \"--add-key\" to generate a secondary key for this purpose.\n"
 msgstr ""
 "Tenga en cuenta que esta clave no puede ser usada para cifrado. Puede usar\n"
-"el comando \"--add-key\" para crear una clave secundaria con este propósito.\n"
+"el comando \"--add-key\" para crear una clave secundaria con este "
+"propósito.\n"
 
-#: g10/keygen.c:917 g10/keygen.c:1002
+#: g10/keygen.c:938 g10/keygen.c:1023
+#, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Creación de la clave fallida: %s\n"
 
-#: g10/keygen.c:979
+#: g10/keygen.c:1000
 msgid "keygen.sub.okay"
 msgstr ""
 
-#: g10/keygen.c:980
+#: g10/keygen.c:1001
 msgid "Really create? "
 msgstr "¿Crear de verdad? "
 
-#: g10/encode.c:88
+#: g10/encode.c:88 g10/openfile.c:81 g10/openfile.c:158 g10/tdbio.c:417
+#: g10/tdbio.c:468
+#, c-format
 msgid "%s: can't open: %s\n"
 msgstr "%s: no puede abrirse: %s\n"
 
 #: g10/encode.c:107
+#, c-format
 msgid "error creating passphrase: %s\n"
 msgstr "error creando contraseña: %s\n"
 
-#: g10/encode.c:154 g10/encode.c:267
-msgid "%s: warning: empty file\n"
+#: g10/encode.c:155 g10/encode.c:269
+#, fuzzy, c-format
+msgid "%s: WARNING: empty file\n"
 msgstr "%s: atención: fichero vacío\n"
 
-#: g10/encode.c:221
+#: g10/encode.c:222
+#, c-format
 msgid "reading from '%s'\n"
 msgstr "leyendo desde '%s'\n"
 
-#: g10/encode.c:395
+#: g10/encode.c:397
+#, c-format
 msgid "%s encrypted for: %s\n"
 msgstr "%s cifrado para: %s\n"
 
-#: g10/getkey.c:854
+#: g10/export.c:162
+#, fuzzy
+msgid "WARNING: nothing exported\n"
+msgstr "ATENCIÓN: ¡Usando una clave no fiable!\n"
+
+#: g10/getkey.c:163
+msgid "too many entries in pk cache - disabled\n"
+msgstr ""
+
+#: g10/getkey.c:261
+msgid "too many entries in unk cache - disabled\n"
+msgstr ""
+
+#: g10/getkey.c:967
+#, 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"
 
-#: g10/import.c:106 g10/trustdb.c:1100
+#: g10/import.c:125 g10/trustdb.c:1082
+#, c-format
 msgid "can't open file: %s\n"
 msgstr "no puede abrirse el fichero: %s\n"
 
-#: g10/import.c:122
+#: g10/import.c:141
+#, c-format
 msgid "skipping block of type %d\n"
 msgstr "ignorando bloque de tipo %d\n"
 
-#: g10/import.c:132 g10/trustdb.c:1175
+#: g10/import.c:148 g10/trustdb.c:1341 g10/trustdb.c:1410
+#, c-format
+msgid "%lu keys so far processed\n"
+msgstr ""
+
+#: g10/import.c:153 g10/trustdb.c:1158
+#, c-format
 msgid "read error: %s\n"
 msgstr "error de lectura: %s\n"
 
-#: g10/import.c:273 g10/import.c:446
+#: g10/import.c:155
+#, c-format
+msgid "Total number processed: %lu\n"
+msgstr ""
+
+#: g10/import.c:157
+#, c-format
+msgid "          w/o user IDs: %lu\n"
+msgstr ""
+
+#: g10/import.c:159
+#, c-format
+msgid "              imported: %lu"
+msgstr ""
+
+#: g10/import.c:165
+#, c-format
+msgid "             unchanged: %lu\n"
+msgstr ""
+
+#: g10/import.c:167
+#, c-format
+msgid "          new user IDs: %lu\n"
+msgstr ""
+
+#: g10/import.c:169
+#, c-format
+msgid "           new subkeys: %lu\n"
+msgstr ""
+
+#: g10/import.c:171
+#, fuzzy, c-format
+msgid "        new signatures: %lu\n"
+msgstr "clave %08lX: %d nuevas firmas\n"
+
+#: g10/import.c:173
+#, c-format
+msgid "   new key revocations: %lu\n"
+msgstr ""
+
+#: g10/import.c:175
+#, fuzzy, c-format
+msgid "      secret keys read: %lu\n"
+msgstr "enum_secret_keys fallido: %s\n"
+
+#: g10/import.c:177
+#, fuzzy, c-format
+msgid "  secret keys imported: %lu\n"
+msgstr "clave %08lX: clave secreta importata\n"
+
+#: g10/import.c:179
+#, fuzzy, c-format
+msgid " secret keys unchanged: %lu\n"
+msgstr "enum_secret_keys fallido: %s\n"
+
+#: g10/import.c:321 g10/import.c:513
+#, c-format
 msgid "key %08lX: no user id\n"
 msgstr "clave %08lX: no hay id de usuario\n"
 
-#: g10/import.c:283
+#: g10/import.c:332
+#, c-format
 msgid "key %08lX: no valid user ids\n"
 msgstr "clave %08lX: no hay ids de usuario válidos\n"
 
-#: g10/import.c:285
+#: g10/import.c:334
 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:294 g10/import.c:512
+#: g10/import.c:345 g10/import.c:581
+#, c-format
 msgid "key %08lX: public key not found: %s\n"
 msgstr "clave %08lX: clave pública no encontrada: %s\n"
 
-#: g10/import.c:300
+#: g10/import.c:351
 msgid "no default public keyring\n"
 msgstr "no hay anillo público por defecto\n"
 
-#: g10/import.c:304
+#: g10/import.c:355 g10/openfile.c:105 g10/sign.c:205 g10/sign.c:563
+#, c-format
 msgid "writing to '%s'\n"
 msgstr "escribiendo en '%s'\n"
 
-#: g10/import.c:308 g10/import.c:363 g10/import.c:566
+#: g10/import.c:359 g10/import.c:419 g10/import.c:635
+#, c-format
 msgid "can't lock public keyring: %s\n"
 msgstr "no puede bloquearse el anillo público: %s\n"
 
-#: g10/import.c:311
+#: g10/import.c:362
+#, c-format
 msgid "can't write to keyring: %s\n"
 msgstr "no puede escribirse en el anillo: %s\n"
 
-#. we are ready
-#: g10/import.c:314
+#: g10/import.c:366
+#, c-format
 msgid "key %08lX: public key imported\n"
 msgstr "clave %08lX: clave pública importada\n"
 
-#: g10/import.c:323
+#: g10/import.c:379
+#, c-format
 msgid "key %08lX: doesn't match our copy\n"
 msgstr "clave %08lX: no se corresponde con nuestra copia\n"
 
-#: g10/import.c:336 g10/import.c:521
+#: g10/import.c:392 g10/import.c:590
+#, 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:343 g10/import.c:528
+#: g10/import.c:399 g10/import.c:597
+#, 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:360 g10/import.c:461 g10/import.c:563
+#: g10/import.c:416 g10/import.c:528 g10/import.c:632
 msgid "writing keyblock\n"
 msgstr "escribiendo bloque de claves\n"
 
-#: g10/import.c:366 g10/import.c:569
+#: g10/import.c:422 g10/import.c:638
+#, c-format
 msgid "can't write keyblock: %s\n"
 msgstr "no puede escribirse el bloque de claves: %s\n"
 
-#. we are ready
-#: g10/import.c:370
+#: g10/import.c:427
+#, c-format
 msgid "key %08lX: 1 new user-id\n"
 msgstr "clave %08lX: 1 nuevo id de usuario\n"
 
-#: g10/import.c:373
+#: g10/import.c:430
+#, c-format
 msgid "key %08lX: %d new user-ids\n"
 msgstr "clave %08lX: %d nuevos ids de usuario\n"
 
-#: g10/import.c:376
+#: g10/import.c:433
+#, c-format
 msgid "key %08lX: 1 new signature\n"
 msgstr "clave %08lX: 1 nueva firma\n"
 
-#: g10/import.c:379
+#: g10/import.c:436
+#, c-format
 msgid "key %08lX: %d new signatures\n"
 msgstr "clave %08lX: %d nuevas firmas\n"
 
-#: g10/import.c:382
+#: g10/import.c:439
+#, c-format
 msgid "key %08lX: 1 new subkey\n"
 msgstr "clave %08lX: 1 nueva subclave\n"
 
-#: g10/import.c:385
+#: g10/import.c:442
+#, c-format
 msgid "key %08lX: %d new subkeys\n"
 msgstr "clave %08lX: %d nuevas subclaves\n"
 
-#: g10/import.c:389
+#: g10/import.c:452
+#, c-format
 msgid "key %08lX: not changed\n"
 msgstr "clave %08lX: sin cambios\n"
 
-#: g10/import.c:464
+#: g10/import.c:531
+#, c-format
 msgid "can't lock secret keyring: %s\n"
 msgstr "no puede bloquearse el anillo secreto: %s\n"
 
-#: g10/import.c:467
+#: g10/import.c:534
+#, c-format
 msgid "can't write keyring: %s\n"
 msgstr "no puede escribirse el anillo: %s\n"
 
 #. we are ready
-#: g10/import.c:470
+#: g10/import.c:537
+#, 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:473
+#: g10/import.c:541
+#, c-format
 msgid "key %08lX: already in secret keyring\n"
 msgstr "clave %08lX: ya estaba en el anillo secreto\n"
 
-#: g10/import.c:477
+#: g10/import.c:546
+#, c-format
 msgid "key %08lX: secret key not found: %s\n"
 msgstr "clave %08lX: clave secreta no encontrada: %s\n"
 
-#: g10/import.c:506
+#: g10/import.c:575
+#, 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:539
+#: g10/import.c:608
+#, c-format
 msgid "key %08lX: invalid revocation certificate: %s - rejected\n"
 msgstr "clave %08lX: certificado de revocación no válido: %s - rechazado\n"
 
-#. we are ready
-#: g10/import.c:572
+#: g10/import.c:642
+#, c-format
 msgid "key %08lX: revocation certificate imported\n"
 msgstr "clave %08lX: certificado de revocación importado\n"
 
-#: g10/import.c:602
+#: g10/import.c:673
+#, c-format
 msgid "key %08lX: no user-id for signature\n"
 msgstr "clave %08lX: no hay id de usuario para la firma\n"
 
-#: g10/import.c:609
+#: g10/import.c:680
+#, c-format
 msgid "key %08lX: unsupported public key algorithm\n"
 msgstr "clave %08lX: algoritmo da clave pública no soportado\n"
 
-#: g10/import.c:610
+#: g10/import.c:681
+#, c-format
 msgid "key %08lX: invalid self-signature\n"
 msgstr "clave %08lX: autofirma no válida\n"
 
-#: g10/import.c:639
+#: g10/import.c:710
+#, c-format
 msgid "key %08lX: skipped userid '"
 msgstr "clave %08lX: ignorado id de usuario '"
 
-#: g10/import.c:662
+#: g10/import.c:733
+#, c-format
 msgid "key %08lX: revocation certificate at wrong place - skipped\n"
-msgstr "clave %08lX: certificado de revocación en sitio equivocado - ignorado\n"
+msgstr ""
+"clave %08lX: certificado de revocación en sitio equivocado - ignorado\n"
 
-#: g10/import.c:670
+#: g10/import.c:741
+#, 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:732
+#: g10/import.c:803
+#, c-format
 msgid "key %08lX: revocation certificate added\n"
 msgstr "clave %08lX: certificado de revocación añadido\n"
 
-#: g10/import.c:795 g10/import.c:831
+#: g10/import.c:866 g10/import.c:902
+#, c-format
 msgid "key %08lX: our copy has no self-signature\n"
 msgstr "clave %08lX: nuestra copia no tiene autofirma\n"
 
 #: g10/keyedit.c:81
+#, c-format
 msgid "%s: user not found\n"
 msgstr "%s: usuario no encontrado\n"
 
@@ -1426,6 +1661,7 @@ msgid "1 bad signature\n"
 msgstr "1 firma incorrecta\n"
 
 #: g10/keyedit.c:184
+#, c-format
 msgid "%d bad signatures\n"
 msgstr "%d firmas incorrectas\n"
 
@@ -1434,6 +1670,7 @@ msgid "1 signature not checked due to a missing key\n"
 msgstr "1 firma no comprobada por falta de clave\n"
 
 #: g10/keyedit.c:188
+#, c-format
 msgid "%d signatures not checked due to missing keys\n"
 msgstr "%d firmas no comprobadas por falta de clave\n"
 
@@ -1442,6 +1679,7 @@ msgid "1 signature not checked due to an error\n"
 msgstr "1 firma no comprobada por causa de un error\n"
 
 #: g10/keyedit.c:192
+#, c-format
 msgid "%d signatures not checked due to errors\n"
 msgstr "%d firmas no comprobadas por causa de un error\n"
 
@@ -1450,14 +1688,17 @@ msgid "1 user id without valid self-signature detected\n"
 msgstr "Detectado 1 id de usuario sin autofirma válida\n"
 
 #: g10/keyedit.c:196
+#, c-format
 msgid "%d user ids without valid self-signatures detected\n"
 msgstr "Detectados %d ids de usuario sin autofirma válida\n"
 
 #: g10/keyedit.c:258
+#, c-format
 msgid "Already signed by key %08lX\n"
 msgstr "Ya firmada por la clave %08lX\n"
 
 #: g10/keyedit.c:266
+#, c-format
 msgid "Nothing to sign with key %08lX\n"
 msgstr "Nada que firmar con la clave %08lX\n"
 
@@ -1477,7 +1718,8 @@ msgstr ""
 msgid "Really sign? "
 msgstr "¿Firmar de verdad? "
 
-#: g10/keyedit.c:303
+#: g10/keyedit.c:303 g10/sign.c:65
+#, c-format
 msgid "signing failed: %s\n"
 msgstr "firma fallida: %s\n"
 
@@ -1490,6 +1732,7 @@ msgid "Key is protected.\n"
 msgstr "La clave está protegida.\n"
 
 #: g10/keyedit.c:376
+#, c-format
 msgid "Can't edit this key: %s\n"
 msgstr "No puede editarse esta clave: %s\n"
 
@@ -1517,335 +1760,391 @@ msgstr ""
 msgid "Do you really want to do this? "
 msgstr "¿Realmente quiere hacer esto? "
 
-#: g10/keyedit.c:489
+#: g10/keyedit.c:455
+msgid "moving a key signature to the correct place\n"
+msgstr ""
+
+#: g10/keyedit.c:490
 msgid "quit"
 msgstr ""
 
-#: g10/keyedit.c:489
+#: g10/keyedit.c:490
 msgid "quit this menu"
 msgstr "sale de este menú"
 
-#: g10/keyedit.c:490
+#: g10/keyedit.c:491
 msgid "q"
 msgstr ""
 
-#: g10/keyedit.c:491
+#: g10/keyedit.c:492
 msgid "save"
 msgstr ""
 
-#: g10/keyedit.c:491
+#: g10/keyedit.c:492
 msgid "save and quit"
 msgstr "graba y sale"
 
-#: g10/keyedit.c:492
+#: g10/keyedit.c:493
 msgid "help"
 msgstr ""
 
-#: g10/keyedit.c:492
+#: g10/keyedit.c:493
 msgid "show this help"
 msgstr "muestra esta ayuda"
 
-#: g10/keyedit.c:494
+#: g10/keyedit.c:495
 msgid "fpr"
 msgstr ""
 
-#: g10/keyedit.c:494
+#: g10/keyedit.c:495
 msgid "show fingerprint"
 msgstr "muestra huella digital"
 
-#: g10/keyedit.c:495
+#: g10/keyedit.c:496
 msgid "list"
 msgstr ""
 
-#: g10/keyedit.c:495
+#: g10/keyedit.c:496
 msgid "list key and user ids"
 msgstr "lista clave e identificativos de usuario"
 
-#: g10/keyedit.c:496
+#: g10/keyedit.c:497
 msgid "l"
 msgstr ""
 
-#: g10/keyedit.c:497
+#: g10/keyedit.c:498
 msgid "uid"
 msgstr ""
 
-#: g10/keyedit.c:497
+#: g10/keyedit.c:498
 msgid "select user id N"
 msgstr "selecciona identificativo de usuario N"
 
-#: g10/keyedit.c:498
+#: g10/keyedit.c:499
 msgid "key"
 msgstr ""
 
-#: g10/keyedit.c:498
+#: g10/keyedit.c:499
 msgid "select secondary key N"
 msgstr "selecciona clave secundaria N"
 
-#: g10/keyedit.c:499
+#: g10/keyedit.c:500
 msgid "check"
 msgstr ""
 
-#: g10/keyedit.c:499
+#: g10/keyedit.c:500
 msgid "list signatures"
 msgstr "lista firmas"
 
-#: g10/keyedit.c:500
+#: g10/keyedit.c:501
 msgid "c"
 msgstr ""
 
-#: g10/keyedit.c:501
+#: g10/keyedit.c:502
 msgid "sign"
 msgstr ""
 
-#: g10/keyedit.c:501
+#: g10/keyedit.c:502
 msgid "sign the key"
 msgstr "firma la clave"
 
-#: g10/keyedit.c:502
+#: g10/keyedit.c:503
 msgid "s"
 msgstr ""
 
-#: g10/keyedit.c:503
+#: g10/keyedit.c:504
 msgid "debug"
 msgstr ""
 
-#: g10/keyedit.c:504
+#: g10/keyedit.c:505
 msgid "adduid"
 msgstr ""
 
-#: g10/keyedit.c:504
+#: g10/keyedit.c:505
 msgid "add a user id"
 msgstr "añade un identificativo de usuario"
 
-#: g10/keyedit.c:505
+#: g10/keyedit.c:506
 msgid "deluid"
 msgstr ""
 
-#: g10/keyedit.c:505
+#: g10/keyedit.c:506
 msgid "delete user id"
 msgstr "borra un identificativo de usuario"
 
-#: g10/keyedit.c:506
+#: g10/keyedit.c:507
 msgid "addkey"
 msgstr ""
 
-#: g10/keyedit.c:506
+#: g10/keyedit.c:507
 msgid "add a secondary key"
 msgstr "añade una clave secundaria"
 
-#: g10/keyedit.c:507
+#: g10/keyedit.c:508
 msgid "delkey"
 msgstr ""
 
-#: g10/keyedit.c:507
+#: g10/keyedit.c:508
 msgid "delete a secondary key"
 msgstr "borra una clave secundaria"
 
-#: g10/keyedit.c:508
+#: g10/keyedit.c:509
 msgid "expire"
 msgstr ""
 
-#: g10/keyedit.c:508
+#: g10/keyedit.c:509
 msgid "change the expire date"
 msgstr "cambia fecha de caducidad"
 
-#: g10/keyedit.c:509
+#: g10/keyedit.c:510
 msgid "toggle"
 msgstr ""
 
-#: g10/keyedit.c:509
+#: g10/keyedit.c:510
 msgid "toggle between secret and public key listing"
 msgstr "cambia entre lista de claves secretas y públicas"
 
-#: g10/keyedit.c:511
+#: g10/keyedit.c:512
 msgid "t"
 msgstr ""
 
-#: g10/keyedit.c:512
+#: g10/keyedit.c:513
 msgid "pref"
 msgstr ""
 
-#: g10/keyedit.c:512
+#: g10/keyedit.c:513
 msgid "list preferences"
 msgstr "muestra preferencias"
 
-#: g10/keyedit.c:513
+#: g10/keyedit.c:514
 msgid "passwd"
 msgstr ""
 
-#: g10/keyedit.c:513
+#: g10/keyedit.c:514
 msgid "change the passphrase"
 msgstr "cambia la contraseña"
 
-#: g10/keyedit.c:514
+#: g10/keyedit.c:515
 msgid "trust"
 msgstr ""
 
-#: g10/keyedit.c:514
+#: g10/keyedit.c:515
 msgid "change the ownertrust"
 msgstr "cambia valores de confianza"
 
-#: g10/keyedit.c:532
+#: g10/keyedit.c:534
 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:559
+#: g10/keyedit.c:561
 msgid "Secret key is available.\n"
 msgstr "Clave secreta disponible.\n"
 
-#: g10/keyedit.c:575
+#: g10/keyedit.c:590
 msgid "keyedit.cmd"
 msgstr ""
 
-#: g10/keyedit.c:575
+#: g10/keyedit.c:590
 msgid "Command> "
 msgstr "Comando> "
 
-#: g10/keyedit.c:600
+#: g10/keyedit.c:617
 msgid "Need the secret key to to this.\n"
 msgstr "Se necesita la clave secreta para hacer esto\n"
 
-#: g10/keyedit.c:619
+#: g10/keyedit.c:638
 msgid "keyedit.save.okay"
 msgstr ""
 
-#: g10/keyedit.c:620
+#: g10/keyedit.c:639
 msgid "Save changes? "
 msgstr "¿Grabar cambios? "
 
-#: g10/keyedit.c:622
+#: g10/keyedit.c:641
 msgid "keyedit.cancel.okay"
 msgstr ""
 
-#: g10/keyedit.c:623
+#: g10/keyedit.c:642
 msgid "Quit without saving? "
 msgstr "¿Salir sin grabar? "
 
-#: g10/keyedit.c:633
+#: g10/keyedit.c:652
+#, c-format
 msgid "update failed: %s\n"
 msgstr "actualización fallida: %s\n"
 
-#: g10/keyedit.c:640
+#: g10/keyedit.c:659
+#, c-format
 msgid "update secret failed: %s\n"
 msgstr "actualización de la clave secreta fallida: %s\n"
 
-#: g10/keyedit.c:647
+#: g10/keyedit.c:666
 msgid "Key not changed so no update needed.\n"
 msgstr "Clave sin cambios, no se necesita actualización.\n"
 
-#: g10/keyedit.c:650 g10/keyedit.c:708
+#: g10/keyedit.c:669 g10/keyedit.c:727
+#, c-format
 msgid "update of trust db failed: %s\n"
 msgstr "actualización de confianza fallida: %s\n"
 
-#: g10/keyedit.c:681
+#: g10/keyedit.c:700
 msgid "keyedit.sign_all.okay"
 msgstr ""
 
-#: g10/keyedit.c:682
+#: g10/keyedit.c:701
 msgid "Really sign all user ids? "
 msgstr "¿Firmar realmente todos los identificativos de usuario? "
 
-#: g10/keyedit.c:683
+#: g10/keyedit.c:702
 msgid "Hint: Select the user ids to sign\n"
 msgstr "Sugerencia: seleccione los identificativos de usuario a firmar\n"
 
-#: g10/keyedit.c:719
+#: g10/keyedit.c:738
 msgid "You must select at least one user id.\n"
 msgstr "Debe seleccionar por lo menos un identificativo de usuario.\n"
 
-#: g10/keyedit.c:721
+#: g10/keyedit.c:740
 msgid "You can't delete the last user id!\n"
 msgstr "¡No puede borrar el último identificativo de usuario!\n"
 
-#: g10/keyedit.c:723
+#: g10/keyedit.c:742
 msgid "keyedit.remove.uid.okay"
 msgstr ""
 
-#: g10/keyedit.c:724
+#: g10/keyedit.c:743
 msgid "Really remove all selected user ids? "
 msgstr "¿Borrar realmente todos los identificativos seleccionados? "
 
-#: g10/keyedit.c:725
+#: g10/keyedit.c:744
 msgid "Really remove this user id? "
 msgstr "¿Borrar realmente este identificativo? "
 
-#: g10/keyedit.c:748
+#: g10/keyedit.c:767
 msgid "You must select at least one key.\n"
 msgstr "Debe seleccionar por lo menos una clave.\n"
 
-#: g10/keyedit.c:750
+#: g10/keyedit.c:769
 msgid "keyedit.remove.subkey.okay"
 msgstr ""
 
-#: g10/keyedit.c:752
+#: g10/keyedit.c:771
 msgid "Do you really want to delete the selected keys? "
 msgstr "¿Borrar realmente las claves seleccionadas? "
 
-#: g10/keyedit.c:753
+#: g10/keyedit.c:772
 msgid "Do you really want to delete this key? "
 msgstr "¿Borrar realmente esta clave? "
 
-#: g10/keyedit.c:800
+#: g10/keyedit.c:819
 msgid "Invalid command  (try \"help\")\n"
 msgstr "Comando no válido (pruebe \"help\")\n"
 
-#: g10/keyedit.c:1178
+#: g10/keyedit.c:1197
 msgid "Please remove selections from the secret keys.\n"
 msgstr "Por favor, quite la selección de las claves secretas.\n"
 
-#: g10/keyedit.c:1184
+#: g10/keyedit.c:1203
 msgid "Please select at most one secondary key.\n"
 msgstr "Por favor, seleccione como máximo una clave secundaria\n"
 
-#: g10/keyedit.c:1188
+#: g10/keyedit.c:1207
 msgid "Changing exiration time for a secondary key.\n"
 msgstr "Cambiando caducidad de clave secundaria.\n"
 
-#: g10/keyedit.c:1190
+#: g10/keyedit.c:1209
 msgid "Changing exiration time for the primary key.\n"
 msgstr "Cambiando caducidad de clave primaria.\n"
 
-#: g10/keyedit.c:1234
+#: g10/keyedit.c:1250
 msgid "No corresponding signature in secret ring\n"
 msgstr "No hay firma correspondiente en anillo secreto\n"
 
-#: g10/keyedit.c:1294
+#: g10/keyedit.c:1310
+#, 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:1339
+#: g10/keyedit.c:1355
+#, c-format
 msgid "No secondary key with index %d\n"
 msgstr "No hay ninguna clave secundaria con el índice %d\n"
 
-#: g10/mainproc.c:200
+#: g10/mainproc.c:198
+#, fuzzy
+msgid "public key encrypted data: Good DEK\n"
+msgstr "descifrado de la clave pública fallido: %s\n"
+
+#: g10/mainproc.c:201
+#, c-format
 msgid "public key decryption failed: %s\n"
 msgstr "descifrado de la clave pública fallido: %s\n"
 
-#: g10/mainproc.c:230
+#: g10/mainproc.c:228
+#, fuzzy
+msgid "decryption okay\n"
+msgstr "descifrado fallido: %s\n"
+
+#: g10/mainproc.c:231
+#, c-format
 msgid "decryption failed: %s\n"
 msgstr "descifrado fallido: %s\n"
 
-#: g10/mainproc.c:247
-msgid "note: sender requested \"for-your-eyes-only\"\n"
+#: g10/mainproc.c:248
+#, fuzzy
+msgid "NOTE: sender requested \"for-your-eyes-only\"\n"
 msgstr "nota: el remitente solicitó \"sólo-para-tus-ojos\"\n"
 
-#: g10/mainproc.c:848
+#: g10/mainproc.c:250
+#, c-format
+msgid "original file name='%.*s'\n"
+msgstr ""
+
+#: g10/mainproc.c:837
+msgid "signature verification suppressed\n"
+msgstr ""
+
+#: g10/mainproc.c:843
+#, c-format
 msgid "Signature made %.*s using %s key ID %08lX\n"
 msgstr "Firma creada %.*s usando identificativo de clave %08lX\n"
 
-#: g10/mainproc.c:856
+#: g10/mainproc.c:851
 msgid "BAD signature from \""
 msgstr "Firma INCORRECTA de \""
 
-#: g10/mainproc.c:857
+#: g10/mainproc.c:852
 msgid "Good signature from \""
 msgstr "Firma correcta de \""
 
-#: g10/mainproc.c:868
+#: g10/mainproc.c:865
+#, c-format
 msgid "Can't check signature: %s\n"
 msgstr "Imposible comprobar la firma: %s\n"
 
+#: g10/mainproc.c:938
+msgid "old style (PGP 2.x) signature\n"
+msgstr ""
+
+#: g10/mainproc.c:943
+msgid "invalid root packet detected in proc_tree()\n"
+msgstr ""
+
+#: g10/misc.c:88
+#, fuzzy, c-format
+msgid "can't disable core dumps: %s\n"
+msgstr "no puede abrirse '%s': %s\n"
+
+#: g10/misc.c:90
+msgid "WARNING: Program may create a core file!\n"
+msgstr ""
+
+#: g10/parse-packet.c:109
+#, fuzzy, c-format
+msgid "can't handle public key algorithm %d\n"
+msgstr "no puede bloquearse el anillo público: %s\n"
+
 #: g10/passphrase.c:141
 msgid ""
 "\n"
@@ -1857,6 +2156,7 @@ msgstr ""
 "del usuario: \""
 
 #: g10/passphrase.c:150
+#, c-format
 msgid "(%u-bit %s key, ID %08lX, created %s)\n"
 msgstr "clave %2$s de %1$u bits, ID %3$08lX, creada el %4$s)\n"
 
@@ -1865,7 +2165,8 @@ msgid "passphrase.enter"
 msgstr ""
 
 #: g10/passphrase.c:174
-msgid "Enter pass phrase: "
+#, fuzzy
+msgid "Enter passphrase: "
 msgstr "Introduzca contraseña: "
 
 #: g10/passphrase.c:177
@@ -1873,7 +2174,8 @@ msgid "passphrase.repeat"
 msgstr ""
 
 #: g10/passphrase.c:178
-msgid "Repeat pass phrase: "
+#, fuzzy
+msgid "Repeat passphrase: "
 msgstr "Repita contraseña: "
 
 #: g10/plaintext.c:102
@@ -1888,11 +2190,36 @@ msgstr ""
 msgid "Please enter name of data file: "
 msgstr "Introduzca el nombre del fichero de datos: "
 
+#: g10/plaintext.c:236
+msgid "reading stdin ...\n"
+msgstr ""
+
 #: g10/plaintext.c:299
+#, c-format
 msgid "can't open signed data '%s'\n"
 msgstr "imposible abrir datos firmados '%s'\n"
 
+#: g10/pubkey-enc.c:78
+#, c-format
+msgid "anonymous receiver; trying secret key %08lX ...\n"
+msgstr "destinatario anónimo, probando clave secreta %08lX ...\n"
+
+#: g10/pubkey-enc.c:84
+msgid "okay, we are the anonymous receiver.\n"
+msgstr "De acuerdo, somo el destinatario anónimo.\n"
+
+#: g10/pubkey-enc.c:136
+#, fuzzy
+msgid "old encoding of the DEK is not supported\n"
+msgstr "el algoritmo de protección %d no está soportado\n"
+
+#: g10/pubkey-enc.c:183
+#, fuzzy, c-format
+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:56
+#, c-format
 msgid "protection algorithm %d is not supported\n"
 msgstr "el algoritmo de protección %d no está soportado\n"
 
@@ -1901,196 +2228,749 @@ msgid "Invalid passphrase; please try again ...\n"
 msgstr "Contraseña incorrecta, inténtelo de nuevo...\n"
 
 #: g10/seckey-cert.c:215
-msgid "Warning: Weak key detected - please change passphrase again.\n"
+#, fuzzy
+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:155
-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"
+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:165
 msgid "public key created in future (time warp or clock problem)\n"
-msgstr "clave pública creada en el futuro (salto en el tiempo o problemas con el reloj)\n"
+msgstr ""
+"clave pública creada en el futuro (salto en el tiempo o problemas con el "
+"reloj)\n"
 
 #: g10/sig-check.c:170
-msgid "warning: signature key expired %s\n"
+#, fuzzy, c-format
+msgid "NOTE: signature key expired %s\n"
 msgstr "atención: firma de la clave caducada el %s\n"
 
-#: g10/trustdb.c:122
+#: g10/sign.c:69
+#, fuzzy, c-format
+msgid "%s signature from: %s\n"
+msgstr "Firma INCORRECTA de \""
+
+#: g10/sign.c:200 g10/sign.c:558
+#, fuzzy, c-format
+msgid "can't create %s: %s\n"
+msgstr "no puede abrirse '%s': %s\n"
+
+#: g10/sign.c:296
+msgid "signing:"
+msgstr ""
+
+#: g10/sign.c:336
+#, fuzzy, c-format
+msgid "WARNING: '%s' is an empty file\n"
+msgstr "%s: atención: fichero vacío\n"
+
+#: g10/tdbio.c:115 g10/tdbio.c:1377
+#, fuzzy, c-format
+msgid "trustdb rec %lu: lseek failed: %s\n"
+msgstr "actualización de la clave secreta fallida: %s\n"
+
+#: g10/tdbio.c:121 g10/tdbio.c:1384
+#, c-format
+msgid "trustdb rec %lu: write failed (n=%d): %s\n"
+msgstr ""
+
+#: g10/tdbio.c:231
+msgid "trustdb transaction to large\n"
+msgstr ""
+
+#: g10/tdbio.c:374
+#, fuzzy, c-format
+msgid "%s: can't access: %s\n"
+msgstr "%s: no puede abrirse: %s\n"
+
+#: g10/ringedit.c:257 g10/tdbio.c:394
+#, fuzzy, c-format
+msgid "%s: can't create directory: %s\n"
+msgstr "%s: no puede abrirse: %s\n"
+
+#: g10/ringedit.c:263 g10/tdbio.c:397
+#, c-format
+msgid "%s: directory created\n"
+msgstr ""
+
+#: g10/tdbio.c:401
+#, c-format
+msgid "%s: directory does not exist!\n"
+msgstr ""
+
+#: g10/openfile.c:101 g10/openfile.c:165 g10/ringedit.c:1235 g10/tdbio.c:407
+#, fuzzy, c-format
+msgid "%s: can't create: %s\n"
+msgstr "%s: no puede abrirse: %s\n"
+
+#: g10/tdbio.c:431
+#, c-format
+msgid "%s: failed to create version record: %s"
+msgstr ""
+
+#: g10/tdbio.c:435
+#, c-format
+msgid "%s: invalid trust-db created\n"
+msgstr ""
+
+#: g10/tdbio.c:437
+#, c-format
+msgid "%s: trust-db created\n"
+msgstr ""
+
+#: g10/tdbio.c:470
+#, c-format
+msgid "%s: invalid trust-db\n"
+msgstr ""
+
+#: g10/tdbio.c:504
+#, c-format
+msgid "%s: failed to create hashtable: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:512
+#, fuzzy, c-format
+msgid "%s: error updating version record: %s\n"
+msgstr "%s: error comprobando la clave: %s\n"
+
+#: g10/tdbio.c:528 g10/tdbio.c:567 g10/tdbio.c:592 g10/tdbio.c:1310
+#: g10/tdbio.c:1337
+#, fuzzy, c-format
+msgid "%s: error reading version record: %s\n"
+msgstr "%s: error comprobando la clave: %s\n"
+
+#: g10/tdbio.c:541
+#, fuzzy, c-format
+msgid "%s: error writing version record: %s\n"
+msgstr "%s: error comprobando la clave: %s\n"
+
+#: g10/tdbio.c:1017
+#, fuzzy, c-format
+msgid "trustdb: lseek failed: %s\n"
+msgstr "actualización de la clave secreta fallida: %s\n"
+
+#: g10/tdbio.c:1025
+#, fuzzy, c-format
+msgid "trustdb: read failed (n=%d): %s\n"
+msgstr "actualización de confianza fallida: %s\n"
+
+#: g10/tdbio.c:1046
+#, fuzzy, c-format
+msgid "%s: not a trustdb file\n"
+msgstr "actualización de confianza fallida: %s\n"
+
+#: g10/tdbio.c:1062
+#, c-format
+msgid "%s: version record with recnum %lu\n"
+msgstr ""
+
+#: g10/tdbio.c:1067
+#, fuzzy, c-format
+msgid "%s: invalid file version %d\n"
+msgstr "cabecera de firma clara no válida\n"
+
+#: g10/tdbio.c:1343
+#, fuzzy, c-format
+msgid "%s: error reading free record: %s\n"
+msgstr "%s: error comprobando la clave: %s\n"
+
+#: g10/tdbio.c:1351
+#, fuzzy, c-format
+msgid "%s: error writing dir record: %s\n"
+msgstr "%s: error comprobando la clave: %s\n"
+
+#: g10/tdbio.c:1361
+#, c-format
+msgid "%s: failed to zero a record: %s\n"
+msgstr ""
+
+#: g10/tdbio.c:1391
+#, c-format
+msgid "%s: failed to append a record: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:128
 msgid "The trust DB is corrupted; please run \"gpgm --fix-trust-db\".\n"
 msgstr ""
 "La base de datos de confianza está dañada. Por favor, ejecute\n"
 "\"gpgm --fix-trust-db\".\n"
 
-#: g10/trustdb.c:389
+#: g10/trustdb.c:141
+#, c-format
+msgid "trust record %lu, req type %d: read failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:156
+#, c-format
+msgid "trust record %lu, type %d: write failed: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:170
+#, fuzzy, c-format
+msgid "trust record %lu: delete failed: %s\n"
+msgstr "actualización de la clave secreta fallida: %s\n"
+
+#: g10/trustdb.c:184
+#, fuzzy, c-format
+msgid "trust db: sync failed: %s\n"
+msgstr "actualización de confianza fallida: %s\n"
+
+#: g10/trustdb.c:313
+#, c-format
+msgid "error reading dir record for LID %lu: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:320
+#, c-format
+msgid "lid %lu: expected dir record, got type %d\n"
+msgstr ""
+
+#: g10/trustdb.c:325
+#, c-format
+msgid "no primary key for LID %lu\n"
+msgstr ""
+
+#: g10/trustdb.c:330
+#, fuzzy, c-format
+msgid "error reading primary key for LID %lu: %s\n"
+msgstr "error creando contraseña: %s\n"
+
+#: g10/trustdb.c:406
+#, c-format
 msgid "chained sigrec %lu has a wrong owner\n"
 msgstr ""
 
-#: g10/trustdb.c:436
+#: g10/trustdb.c:460
+#, fuzzy, c-format
+msgid "NOTE: secret key %08lX is NOT protected.\n"
+msgstr "Esta clave no está protegida.\n"
+
+#: g10/trustdb.c:467
+#, c-format
 msgid "key %08lX: secret key without public key - skipped\n"
 msgstr "clave %08lX: clave secreta sin clave pública - ignorada\n"
 
-#: g10/trustdb.c:442
+#: g10/trustdb.c:473
+#, c-format
 msgid "key %08lX: secret and public key don't match\n"
 msgstr "clave %08lX: las claves pública y secreta no se corresponden\n"
 
-#: g10/trustdb.c:452
+#: g10/trustdb.c:483
+#, c-format
 msgid "key %08lX: can't put it into the trustdb\n"
 msgstr "clave %08lX: imposible incluirla en la base de datos de confianza\n"
 
-#: g10/trustdb.c:458
+#: g10/trustdb.c:489
+#, c-format
 msgid "key %08lX: query record failed\n"
 msgstr "clave %08lX: petición de registro fallida\n"
 
-#: g10/trustdb.c:467
+#: g10/trustdb.c:498
+#, c-format
 msgid "key %08lX: already in secret key table\n"
 msgstr "clave %08lX: ya está en la tabla secreta\n"
 
-#: g10/trustdb.c:470
+#: g10/trustdb.c:501
+#, c-format
 msgid "key %08lX: accepted as secret key.\n"
 msgstr "clave %08lX: aceptada como clave secreta.\n"
 
-#: g10/trustdb.c:477
-msgid "enum_secret_keys failed: %s\n"
+#: g10/trustdb.c:508
+#, fuzzy, c-format
+msgid "enumerate secret keys failed: %s\n"
 msgstr "enum_secret_keys fallido: %s\n"
 
-#: g10/trustdb.c:1428
+#: g10/trustdb.c:682
+#, fuzzy, c-format
+msgid "lid %lu: read dir record failed: %s\n"
+msgstr "clave %08lX: inserción del registro de confianza fallida: %s\n"
+
+#: g10/trustdb.c:691
+#, fuzzy, c-format
+msgid "lid %lu: read key record failed: %s\n"
+msgstr "clave %08lX: inserción del registro de confianza fallida: %s\n"
+
+#: g10/trustdb.c:701
+#, fuzzy, c-format
+msgid "lid %lu: read uid record failed: %s\n"
+msgstr "clave %08lX: inserción del registro de confianza fallida: %s\n"
+
+#: g10/trustdb.c:710
+#, fuzzy, c-format
+msgid "lid %lu: read pref record failed: %s\n"
+msgstr "clave %08lX: inserción del registro de confianza fallida: %s\n"
+
+#: g10/trustdb.c:720
+#, fuzzy, c-format
+msgid "lid %lu: read sig record failed: %s\n"
+msgstr "clave %08lX: inserción del registro de confianza fallida: %s\n"
+
+#: g10/trustdb.c:915
+msgid "Ooops, no keys\n"
+msgstr ""
+
+#: g10/trustdb.c:919
+#, fuzzy
+msgid "Ooops, no user ids\n"
+msgstr "lista clave e identificativos de usuario"
+
+#: g10/trustdb.c:990 g10/trustdb.c:1008
+#, c-format
+msgid "user '%s' read problem: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:993 g10/trustdb.c:1011
+#, c-format
+msgid "user '%s' list problem: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1001 g10/trustdb.c:1216
+#, fuzzy, c-format
+msgid "user '%s' not found: %s\n"
+msgstr "%s: usuario no encontrado\n"
+
+#: g10/trustdb.c:1003 g10/trustdb.c:1218
+#, c-format
+msgid "problem finding '%s' in trustdb: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1006
+#, c-format
+msgid "user '%s' not in trustdb\n"
+msgstr ""
+
+#: g10/trustdb.c:1041
+#, c-format
+msgid ""
+"# List of assigned trustvalues, created %s\n"
+"# (Use \"gpgm --import-ownertrust\" to restore them)\n"
+msgstr ""
+
+#: g10/trustdb.c:1047
+msgid "directory record w/o primary key\n"
+msgstr ""
+
+#: g10/trustdb.c:1054
+#, fuzzy, c-format
+msgid "error reading key record: %s\n"
+msgstr "%s: error comprobando la clave: %s\n"
+
+#: g10/trustdb.c:1094
+msgid "line to long\n"
+msgstr ""
+
+#: g10/trustdb.c:1102
+msgid "error: missing colon\n"
+msgstr ""
+
+#: g10/trustdb.c:1107
+#, fuzzy
+msgid "error: invalid fingerprint\n"
+msgstr "muestra huella digital"
+
+#: g10/trustdb.c:1111
+#, fuzzy
+msgid "error: no ownertrust value\n"
+msgstr "exporta los valores de confianza"
+
+#: g10/trustdb.c:1125
+#, c-format
+msgid "LID %lu: changing trust from %u to %u\n"
+msgstr ""
+
+#: g10/trustdb.c:1128
+#, c-format
+msgid "LID %lu: setting trust to %u\n"
+msgstr ""
+
+#: g10/trustdb.c:1136
+msgid "key not in trustdb, searching ring.\n"
+msgstr ""
+
+#: g10/trustdb.c:1139
+#, fuzzy, c-format
+msgid "key not in ring: %s\n"
+msgstr "no puede escribirse el anillo: %s\n"
+
+#: g10/trustdb.c:1143
+msgid "Oops: key is now in trustdb???\n"
+msgstr ""
+
+#. update the ownertrust
+#: g10/trustdb.c:1148
+#, fuzzy, c-format
+msgid "insert trust record failed: %s\n"
+msgstr "clave %08lX: inserción del registro de confianza fallida: %s\n"
+
+#. error
+#: g10/trustdb.c:1154
+#, fuzzy, c-format
+msgid "error finding dir record: %s\n"
+msgstr "eliminación de armadura fallida: %s\n"
+
+#: g10/trustdb.c:1221
+#, c-format
+msgid "user '%s' not in trustdb - inserting\n"
+msgstr ""
+
+#: g10/trustdb.c:1224
+#, fuzzy, c-format
+msgid "failed to put '%s' into trustdb: %s\n"
+msgstr "inicialización de la base de datos de confianza '%s' fallida\n"
+
+#: g10/trustdb.c:1271
+#, c-format
+msgid "%s: keyblock read problem: %s\n"
+msgstr ""
+
+#: g10/trustdb.c:1285
+#, fuzzy, c-format
+msgid "%s: update failed: %s\n"
+msgstr "actualización fallida: %s\n"
+
+#: g10/trustdb.c:1288
+#, c-format
+msgid "%s: updated\n"
+msgstr ""
+
+#: g10/trustdb.c:1290
+#, c-format
+msgid "%s: okay\n"
+msgstr ""
+
+#: g10/trustdb.c:1305
+#, c-format
+msgid "lid %lu: dir record w/o key - skipped\n"
+msgstr ""
+
+#: g10/trustdb.c:1318
+#, fuzzy, c-format
+msgid "lid %lu: keyblock not found: %s\n"
+msgstr "clave %08lX: clave pública no encontrada: %s\n"
+
+#: g10/trustdb.c:1327 g10/trustdb.c:1396
+#, fuzzy, c-format
+msgid "lid %lu: update failed: %s\n"
+msgstr "actualización fallida: %s\n"
+
+#: g10/trustdb.c:1333 g10/trustdb.c:1402
+#, c-format
+msgid "lid %lu: updated\n"
+msgstr ""
+
+#: g10/trustdb.c:1337 g10/trustdb.c:1406
+#, c-format
+msgid "lid %lu: okay\n"
+msgstr ""
+
+#: g10/trustdb.c:1344 g10/trustdb.c:1412
+#, c-format
+msgid "%lu keys processed\n"
+msgstr ""
+
+#: g10/trustdb.c:1346
+#, fuzzy, c-format
+msgid "\t%lu keys skipped\n"
+msgstr "%s: ignorado: %s\n"
+
+#: g10/trustdb.c:1348 g10/trustdb.c:1414
+#, fuzzy, c-format
+msgid "\t%lu keys with errors\n"
+msgstr "Error de escritura"
+
+#: g10/trustdb.c:1350 g10/trustdb.c:1416
+#, c-format
+msgid "\t%lu keys updated\n"
+msgstr ""
+
+#: g10/trustdb.c:1380
+#, fuzzy, c-format
+msgid "lid ?: insert failed: %s\n"
+msgstr "actualización de la clave secreta fallida: %s\n"
+
+#: g10/trustdb.c:1385
+#, fuzzy, c-format
+msgid "lid %lu: insert failed: %s\n"
+msgstr "actualización de la clave secreta fallida: %s\n"
+
+#: g10/trustdb.c:1391
+#, c-format
+msgid "lid %lu: inserted\n"
+msgstr ""
+
+#: g10/trustdb.c:1418
+#, c-format
+msgid "\t%lu keys inserted\n"
+msgstr ""
+
+#: g10/trustdb.c:1421
+#, fuzzy, c-format
+msgid "enumerate keyblocks failed: %s\n"
+msgstr "enum_secret_keys fallido: %s\n"
+
+#: g10/trustdb.c:1466
+#, fuzzy, c-format
+msgid "check_trust: search dir record failed: %s\n"
+msgstr "clave %08lX: inserción del registro de confianza fallida: %s\n"
+
+#: g10/trustdb.c:1473
+#, c-format
 msgid "key %08lX: insert trust record failed: %s\n"
 msgstr "clave %08lX: inserción del registro de confianza fallida: %s\n"
 
-#: g10/trustdb.c:1432
+#: g10/trustdb.c:1477
+#, c-format
 msgid "key %08lX.%lu: inserted into trustdb\n"
 msgstr "clave %08lX.%lu: incluida en la base de datos de confianza\n"
 
-#: g10/trustdb.c:1440
+#: g10/trustdb.c:1485
+#, c-format
 msgid "key %08lX.%lu: created in future (time warp or clock problem)\n"
 msgstr ""
 "clave %08lX.%lu: creada en el futuro (salto en el tiempo o\n"
 "problemas con el reloj)\n"
 
-#: g10/trustdb.c:1447
+#: g10/trustdb.c:1492
+#, c-format
 msgid "key %08lX.%lu: expired at %s\n"
 msgstr "clave %08lX.%lu: caducada el %s\n"
 
-#: g10/trustdb.c:1455
+#: g10/trustdb.c:1500
+#, c-format
 msgid "key %08lX.%lu: trust check failed: %s\n"
 msgstr "clave %08lX.%lu: comprobación de confianza fallida: %s\n"
 
-#: g10/trustdb.c:1718
-msgid "note: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
+#: g10/trustdb.c:1669 g10/trustdb.c:1698 g10/trustdb.c:2428
+msgid "WARNING: can't yet handle long pref records\n"
 msgstr ""
 
-#: g10/trustdb.c:1722
-msgid "note: sig rec %lu[%d] in hintlist of %lu but not marked\n"
+#: g10/trustdb.c:1720
+#, fuzzy, c-format
+msgid "get_dir_record: search_record failed: %s\n"
+msgstr "actualización de la clave secreta fallida: %s\n"
+
+#: g10/trustdb.c:1783
+#, c-format
+msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but marked as checked\n"
+msgstr ""
+
+#: g10/trustdb.c:1787
+#, c-format
+msgid "NOTE: sig rec %lu[%d] in hintlist of %lu but not marked\n"
 msgstr ""
 
 #. we need the dir record
-#: g10/trustdb.c:1729
-msgid "sig rec %lu[%d] in hintlist of %u does not point to a dir record\n"
+#: g10/trustdb.c:1794
+#, c-format
+msgid "sig rec %lu[%d] in hintlist of %lu does not point to a dir record\n"
 msgstr ""
 
-#: g10/trustdb.c:1735
+#: g10/trustdb.c:1800
+#, c-format
 msgid "lid %lu: no primary key\n"
 msgstr ""
 
-#: g10/trustdb.c:1764
+#: g10/trustdb.c:1833
+#, c-format
 msgid "lid %lu: user id not found in keyblock\n"
 msgstr ""
 
-#: g10/trustdb.c:1771
+#: g10/trustdb.c:1837
+#, fuzzy, c-format
+msgid "lid %lu: user id without signature\n"
+msgstr "clave %08lX: no hay id de usuario para la firma\n"
+
+#: g10/trustdb.c:1844
+#, c-format
 msgid "lid %lu: self-signature in hintlist\n"
 msgstr ""
 
-#. valid signature
-#: g10/trustdb.c:1776
-msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: good signature (3)\n"
-msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma correcta (3)\n"
+#: g10/trustdb.c:1855 g10/trustdb.c:2565 g10/trustdb.c:2647
+#, fuzzy
+msgid "Valid certificate revocation"
+msgstr "Certificado incorrecto"
 
-#: g10/trustdb.c:1783
-msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: very strange: no public key\n"
-msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: extraño, no hay clave pública\n"
+#: g10/trustdb.c:1856 g10/trustdb.c:2566 g10/trustdb.c:2648
+#, fuzzy
+msgid "Good certificate"
+msgstr "Certificado incorrecto"
 
-#: g10/trustdb.c:1790 g10/trustdb.c:2225 g10/trustdb.c:2297
-msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: invalid signature: %s\n"
-msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma incorrecta: %s\n"
+#: g10/trustdb.c:1865
+msgid "very strange: no public key\n"
+msgstr ""
 
-#: g10/trustdb.c:1835
+#: g10/trustdb.c:1913
+#, c-format
 msgid "hintlist %lu[%d] of %lu does not point to a dir record\n"
 msgstr ""
 
-#: g10/trustdb.c:1841
+#: g10/trustdb.c:1919
+#, c-format
 msgid "lid %lu does not have a key\n"
 msgstr ""
 
-#: g10/trustdb.c:1851
+#: g10/trustdb.c:1929
+#, c-format
 msgid "lid %lu: can't get keyblock: %s\n"
 msgstr ""
 
-#: g10/trustdb.c:2096
-msgid "key %08lX.%lu, uid %02X%02X: good self-signature\n"
-msgstr "clave %08lX.%lu, uid %02X%02X: autofirma correcta\n"
+#: g10/trustdb.c:1986 g10/trustdb.c:2889
+#, fuzzy, c-format
+msgid "tdbio_search_dir failed: %s\n"
+msgstr "eliminación de armadura fallida: %s\n"
+
+#: g10/trustdb.c:2139
+#, fuzzy, c-format
+msgid "key %08lX.%lu: Good subkey binding\n"
+msgstr "clave %08lX: no hay id de usuario\n"
+
+#: g10/trustdb.c:2145 g10/trustdb.c:2187
+#, fuzzy, c-format
+msgid "key %08lX.%lu: Invalid subkey binding: %s\n"
+msgstr "clave %08lX: no hay ids de usuario válidos\n"
+
+#: g10/trustdb.c:2160
+#, fuzzy, c-format
+msgid "key %08lX.%lu: Valid key revocation\n"
+msgstr "clave %08lX.%lu: caducada el %s\n"
+
+#: g10/trustdb.c:2166
+#, fuzzy, c-format
+msgid "key %08lX.%lu: Invalid key revocation: %s\n"
+msgstr "clave %08lX: clave pública no encontrada: %s\n"
+
+#: g10/trustdb.c:2181
+#, fuzzy, c-format
+msgid "key %08lX.%lu: Valid subkey revocation\n"
+msgstr "clave %08lX: no hay ids de usuario válidos\n"
+
+#: g10/trustdb.c:2281
+#, fuzzy
+msgid "Good self-signature"
+msgstr "[autofirma]"
+
+#: g10/trustdb.c:2289
+#, fuzzy
+msgid "Invalid self-signature"
+msgstr "clave %08lX: autofirma no válida\n"
 
-#: g10/trustdb.c:2188
-msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: duplicated signature - deleted\n"
-msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma duplicada - borrada\n"
+#: g10/trustdb.c:2300
+#, fuzzy
+msgid "Valid user ID revocation\n"
+msgstr "Elección no válida.\n"
 
-#: g10/trustdb.c:2211
-msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: good signature (1)\n"
-msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma correcta (1)\n"
+#: g10/trustdb.c:2307
+#, fuzzy
+msgid "Invalid user ID revocation"
+msgstr "Elección no válida.\n"
 
-#: g10/trustdb.c:2218
-msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: weird: no public key\n"
-msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: raro, no hay clave pública\n"
+#: g10/trustdb.c:2391
+#, fuzzy
+msgid "Too many preferences"
+msgstr "muestra preferencias"
 
-#: g10/trustdb.c:2240
-msgid "key %08lX.%lu, uid %02X%02X: has shadow dir %lu but not yet marked.\n"
+#: g10/trustdb.c:2405
+msgid "Too many preference items"
 msgstr ""
 
-#. valid signature
-#: g10/trustdb.c:2279
-msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: good signature (2)\n"
-msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma correcta (2)\n"
+#: g10/trustdb.c:2544
+msgid "Duplicated certificate - deleted"
+msgstr ""
 
-#: g10/trustdb.c:2290
-msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: no public key\n"
-msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: no hay clave pública\n"
+#: g10/trustdb.c:2576
+#, fuzzy
+msgid "Hmmm, public key lost?"
+msgstr "Clave pública incorrecta"
 
-#: g10/trustdb.c:2386
-msgid "key %08lX: bogus key binding by %08lX\n"
+#: g10/trustdb.c:2585 g10/trustdb.c:2668
+#, fuzzy
+msgid "Invalid certificate revocation"
+msgstr "Certificado incorrecto"
+
+#: g10/trustdb.c:2586 g10/trustdb.c:2669
+#, fuzzy
+msgid "Invalid certificate"
+msgstr "Certificado incorrecto"
+
+#: g10/trustdb.c:2601
+#, c-format
+msgid "uid %08lX.%lu/%02X%02X: has shadow dir %lu but is not yet marked.\n"
+msgstr ""
+
+#: g10/trustdb.c:2615
+#, c-format
+msgid "sig record %lu[%d] points to wrong record.\n"
 msgstr ""
 
-#. key revocation
-#: g10/trustdb.c:2390
-msgid "key %08lX: bogus key revocation by %08lX\n"
+#. that should never happen
+#: g10/trustdb.c:2859
+#, fuzzy, c-format
+msgid "insert_trust_record: keyblock not found: %s\n"
+msgstr "clave %08lX: clave secreta no encontrada: %s\n"
+
+#: g10/trustdb.c:2877
+msgid "did not use primary key for insert_trust_record()\n"
 msgstr ""
 
-#. subkey revocation
-#: g10/trustdb.c:2394
-msgid "key %08lX: bogus subkey revocation by %08lX\n"
+#: g10/ringedit.c:277
+#, fuzzy, c-format
+msgid "%s: can't create keyring: %s\n"
+msgstr "no puede escribirse el anillo: %s\n"
+
+#: g10/ringedit.c:283 g10/ringedit.c:1239
+#, c-format
+msgid "%s: keyring created\n"
 msgstr ""
 
+#: g10/ringedit.c:1412
+msgid "WARNING: 2 files with confidential information exists.\n"
+msgstr ""
+
+#: g10/ringedit.c:1413
+#, c-format
+msgid "%s is the unchanged one\n"
+msgstr ""
+
+#: g10/ringedit.c:1414
+#, c-format
+msgid "%s is the new one\n"
+msgstr ""
+
+#: g10/ringedit.c:1415
+msgid "Please fix this possible security flaw\n"
+msgstr ""
+
+#: g10/skclist.c:94
+#, fuzzy, c-format
+msgid "skipped '%s': %s\n"
+msgstr "%s: ignorado: %s\n"
+
+#: g10/skclist.c:100
+#, fuzzy, c-format
+msgid ""
+"skipped '%s': 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/status.c:246
 msgid "No help available"
 msgstr "Ayuda no disponible"
 
 #: g10/status.c:252
+#, c-format
 msgid "No help available for '%s'"
 msgstr "Ayuda no disponible para '%s'"
 
-#: g10/pubkey-enc.c:78
-msgid "anonymous receiver; trying secret key %08lX ...\n"
-msgstr "destinatario anónimo, probando clave secreta %08lX ...\n"
-
-#: g10/pubkey-enc.c:84
-msgid "okay, we are the anonymous receiver.\n"
-msgstr "De acuerdo, somo el destinatario anónimo.\n"
-
-#: g10/pubkey-enc.c:183
-msgid "note: cipher algorithm %d not found in preferences\n"
-msgstr "nota: algoritmo de cifrado %d no encontrado en las preferencias\n"
-
 #. do not overwrite
 #: g10/openfile.c:58
+#, c-format
 msgid "File '%s' exists. "
 msgstr "El fichero '%s' ya existe. "
 
@@ -2102,14 +2982,80 @@ msgstr ""
 msgid "Overwrite (y/N)? "
 msgstr "¿Sobreescribir (s/N)? "
 
+#: g10/openfile.c:85
+#, fuzzy
+msgid "writing to stdout\n"
+msgstr "escribiendo en '%s'\n"
+
+#: g10/openfile.c:134
+#, fuzzy, c-format
+msgid "assuming signed data in '%s'\n"
+msgstr "imposible abrir datos firmados '%s'\n"
+
+#: g10/openfile.c:181
+#, c-format
+msgid "%s: new options file created\n"
+msgstr ""
+
+#: g10/encr-data.c:59
+#, fuzzy, c-format
+msgid "%s encrypted data\n"
+msgstr "cifra datos"
+
+#: g10/encr-data.c:61
+#, c-format
+msgid "encrypted with unknown algorithm %d\n"
+msgstr ""
+
 #: g10/encr-data.c:74
-msgid "Warning: Message was encrypted with a weak key in the symmetric cipher.\n"
-msgstr "Atención: mensaje cifrado con una clave débil en el cifrado simétrico.\n"
+#, fuzzy
+msgid ""
+"WARNING: Message was encrypted with a weak key in the symmetric cipher.\n"
+msgstr ""
+"Atención: mensaje cifrado con una clave débil en el cifrado simétrico.\n"
 
 #: g10/seskey.c:52
 msgid "weak key created - retrying\n"
 msgstr "creada clave débil - reintentando\n"
 
 #: g10/seskey.c:57
+#, c-format
 msgid "cannot avoid weak key for symmetric cipher; tried %d times!\n"
-msgstr "¡imposible evitar clave débil para cifrado simétrico después de %d intentos!\n"
+msgstr ""
+"¡imposible evitar clave débil para cifrado simétrico después de %d "
+"intentos!\n"
+
+#~ msgid "You will see a list of signators etc. here\n"
+#~ msgstr "Aquí se verá una lista de firmantes, etc.\n"
+
+#~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: good signature (3)\n"
+#~ msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma correcta (3)\n"
+
+#~ msgid ""
+#~ "key %08lX.%lu, uid %02X%02X, sig %08lX: very strange: no public key\n"
+#~ msgstr ""
+#~ "clave %08lX.%lu, uid %02X%02X, firma %08lX: extraño, no hay clave pública\n"
+
+#~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: invalid signature: %s\n"
+#~ msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma incorrecta: %s\n"
+
+#~ msgid "key %08lX.%lu, uid %02X%02X: good self-signature\n"
+#~ msgstr "clave %08lX.%lu, uid %02X%02X: autofirma correcta\n"
+
+#~ msgid ""
+#~ "key %08lX.%lu, uid %02X%02X, sig %08lX: duplicated signature - deleted\n"
+#~ msgstr ""
+#~ "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma duplicada - borrada\n"
+
+#~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: good signature (1)\n"
+#~ msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma correcta (1)\n"
+
+#~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: weird: no public key\n"
+#~ msgstr ""
+#~ "clave %08lX.%lu, uid %02X%02X, firma %08lX: raro, no hay clave pública\n"
+
+#~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: good signature (2)\n"
+#~ msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: firma correcta (2)\n"
+
+#~ msgid "key %08lX.%lu, uid %02X%02X, sig %08lX: no public key\n"
+#~ msgstr "clave %08lX.%lu, uid %02X%02X, firma %08lX: no hay clave pública\n"
index 553ab15..c7bfd99 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -5,7 +5,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: gnupg-0.4.1a\n"
-"POT-Creation-Date: 1998-11-08 18:21+0100\n"
+"POT-Creation-Date: 1998-11-20 15:17+0100\n"
 "PO-Revision-Date: 1998-10-29 19:01+0100\n"
 "Last-Translator: Gaël Quéri <gqueri@mail.dotcom.fr>\n"
 "Language-Team: French <fr@li.org>\n"
@@ -17,11 +17,11 @@ msgstr ""
 msgid "Warning: using insecure memory!\n"
 msgstr "Attention: utilisation de la mémoire non sûre!\n"
 
-#: util/miscutil.c:110
+#: util/miscutil.c:139
 msgid "yes"
 msgstr "oui"
 
-#: util/miscutil.c:111
+#: util/miscutil.c:140
 msgid "yY"
 msgstr "oO"
 
@@ -197,18 +197,19 @@ msgstr "Le fichier existe"
 msgid "Weak key"
 msgstr "Mauvaise clé"
 
-#: util/logger.c:177
+#: util/logger.c:178
 #, c-format
 msgid "... this is a bug (%s:%d:%s)\n"
 msgstr "... c'est un bug (%s:%d:%s)\n"
 
-#: util/logger.c:183
+#: util/logger.c:184
 #, c-format
 msgid "you found a bug ... (%s:%d)\n"
 msgstr "vous avez trouvé un bug ... (%s:%d)\n"
 
 #: cipher/rand-dummy.c:112
-msgid "warning: using insecure random number generator!!\n"
+#, fuzzy
+msgid "WARNING: using insecure random number generator!!\n"
 msgstr ""
 "attention: utilisation d'un générateur de nombres aléatoires peu sûr!!\n"
 
@@ -237,7 +238,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:152
+#: g10/g10.c:155
 msgid ""
 "@Commands:\n"
 " "
@@ -245,124 +246,124 @@ msgstr ""
 "@Commandes:\n"
 " "
 
-#: g10/g10.c:155
+#: g10/g10.c:158
 msgid "|[file]|make a signature"
 msgstr "|[fichier]|faire une signature"
 
-#: g10/g10.c:156
+#: g10/g10.c:159
 msgid "|[file]|make a clear text signature"
 msgstr "|[fichier]|faire une signature en texte clair"
 
-#: g10/g10.c:157
+#: g10/g10.c:160
 msgid "make a detached signature"
 msgstr "faire une signature détachée"
 
-#: g10/g10.c:158
+#: g10/g10.c:161
 msgid "encrypt data"
 msgstr "crypter les données"
 
-#: g10/g10.c:159
+#: g10/g10.c:162
 msgid "encryption only with symmetric cipher"
 msgstr "chiffrement symétrique seumement"
 
-#: g10/g10.c:160
+#: g10/g10.c:163
 msgid "store only"
 msgstr "pas d'action"
 
-#: g10/g10.c:161
+#: g10/g10.c:164
 msgid "decrypt data (default)"
 msgstr "décrypter les données (défaut)"
 
-#: g10/g10.c:162
+#: g10/g10.c:165
 msgid "verify a signature"
 msgstr "vérifier une signature"
 
-#: g10/g10.c:164
+#: g10/g10.c:167
 msgid "list keys"
 msgstr "lister les clés"
 
-#: g10/g10.c:165
+#: g10/g10.c:168
 msgid "list keys and signatures"
 msgstr "lister les clés et les signatures"
 
-#: g10/g10.c:166
+#: g10/g10.c:169
 msgid "check key signatures"
 msgstr "vérifier les signatures des clés"
 
-#: g10/g10.c:167
+#: g10/g10.c:170
 msgid "list keys and fingerprints"
 msgstr "lister les clés et les empreintes"
 
-#: g10/g10.c:168
+#: g10/g10.c:171
 msgid "list secret keys"
 msgstr "lister les clés secrètes"
 
-#: g10/g10.c:170
+#: g10/g10.c:173
 msgid "generate a new key pair"
 msgstr "générer une nouvelle paire de clés"
 
-#: g10/g10.c:172
+#: g10/g10.c:175
 msgid "remove key from the public keyring"
 msgstr "enlever la clé du porte-clés public"
 
-#: g10/g10.c:174
+#: g10/g10.c:177
 msgid "sign or edit a key"
 msgstr "signer ou éditer une clé"
 
-#: g10/g10.c:175
+#: g10/g10.c:178
 msgid "generate a revocation certificate"
 msgstr "générer un certificat de révocation"
 
-#: g10/g10.c:177
+#: g10/g10.c:180
 msgid "export keys"
 msgstr "exporter les clés"
 
-#: g10/g10.c:179
+#: g10/g10.c:182
 msgid "import/merge keys"
 msgstr "importer/fusionner les clés"
 
-#: g10/g10.c:181
+#: g10/g10.c:184
 msgid "list only the sequence of packets"
 msgstr "ne lister qu'une suite de paquets"
 
-#: g10/g10.c:184
+#: g10/g10.c:187
 msgid "export the ownertrust values"
 msgstr "exporter les valeurs de confiance"
 
-#: g10/g10.c:186
+#: g10/g10.c:189
 msgid "import ownertrust values"
 msgstr "importer les valeurs de confiance"
 
 #
-#: g10/g10.c:188
+#: g10/g10.c:191
 msgid "|[NAMES]|update the trust database"
 msgstr "|[NOMS]|mettre la base de confiance à jour"
 
-#: g10/g10.c:190
+#: g10/g10.c:193
 msgid "|[NAMES]|check the trust database"
 msgstr "|[NOMS]|vérifier la base de confiance"
 
-#: g10/g10.c:191
+#: g10/g10.c:194
 msgid "fix a corrupted trust database"
 msgstr "réparer une base de confiance corrompue"
 
-#: g10/g10.c:192
+#: g10/g10.c:195
 msgid "De-Armor a file or stdin"
 msgstr "Enlever l'armure d'un fichier ou de stdin"
 
-#: g10/g10.c:193
+#: g10/g10.c:196
 msgid "En-Armor a file or stdin"
 msgstr "Mettre une armure à un fichier ou à stdin"
 
-#: g10/g10.c:194
+#: g10/g10.c:197
 msgid "|algo [files]|print message digests"
 msgstr "|alg. [fich.]|indiquer les fonctions de hachage"
 
-#: g10/g10.c:195
+#: g10/g10.c:198
 msgid "print all message digests"
 msgstr "écrire toutes les fonctions de hachage"
 
-#: g10/g10.c:202
+#: g10/g10.c:205
 msgid ""
 "@\n"
 "Options:\n"
@@ -372,133 +373,138 @@ msgstr ""
 "Options:\n"
 " "
 
-#: g10/g10.c:204
+#: g10/g10.c:207
 msgid "create ascii armored output"
 msgstr "créer une sortie ascii armurée"
 
-#: g10/g10.c:206
+#: g10/g10.c:209
 msgid "use this user-id to sign or decrypt"
 msgstr "utiliser ce nom pour signer ou décrypter"
 
-#: g10/g10.c:207
+#: g10/g10.c:210
 msgid "use this user-id for encryption"
 msgstr "utiliser ce nom d'utilisateur pour crypter"
 
-#: g10/g10.c:208
+#: g10/g10.c:211
 msgid "|N|set compress level N (0 disables)"
 msgstr "|N|niveau de compression N (0 désactive)"
 
-#: g10/g10.c:210
+#: g10/g10.c:213
 msgid "use canonical text mode"
 msgstr "utiliser le mode de texte canonique"
 
-#: g10/g10.c:212
+#: g10/g10.c:215
 msgid "use as output file"
 msgstr "utiliser comme fichier de sortie"
 
-#: g10/g10.c:213
+#: g10/g10.c:216
 msgid "verbose"
 msgstr "bavard"
 
-#: g10/g10.c:214
+#: g10/g10.c:217
 msgid "be somewhat more quiet"
 msgstr "devenir beaucoup plus silencieux"
 
 #
-#: g10/g10.c:215
+#: g10/g10.c:218
 msgid "force v3 signatures"
 msgstr "forcer les signatures en v3"
 
 #. { oDryRun, "dry-run",   0, N_("do not make any changes") },
-#: g10/g10.c:217
+#: g10/g10.c:220
 msgid "batch mode: never ask"
 msgstr "mode automatique: ne jamais rien demander"
 
-#: g10/g10.c:218
+#: g10/g10.c:221
 msgid "assume yes on most questions"
 msgstr "supposer oui à la plupart des questions"
 
-#: g10/g10.c:219
+#: g10/g10.c:222
 msgid "assume no on most questions"
 msgstr "supposer non à la plupart des questions"
 
-#: g10/g10.c:220
+#: g10/g10.c:223
 msgid "add this keyring to the list of keyrings"
 msgstr "ajouter ce porte-clés à la liste des porte-clés"
 
-#: g10/g10.c:221
+#: g10/g10.c:224
 msgid "add this secret keyring to the list"
 msgstr "ajouter ce porte-clés secret à la liste"
 
-#: g10/g10.c:222
+#: g10/g10.c:225
 msgid "|NAME|use NAME as default secret key"
 msgstr "|NOM|utiliser NOM comme clé secrète par défaut"
 
-#: g10/g10.c:223
+#: g10/g10.c:226
+#, fuzzy
+msgid "|NAME| set terminal charset to NAME"
+msgstr "|NOM|utiliser l'algorithme de cryptage NOM"
+
+#: g10/g10.c:227
 msgid "read options from file"
 msgstr "lire les options du fichier"
 
-#: g10/g10.c:225
+#: g10/g10.c:229
 msgid "set debugging flags"
 msgstr "choisir les attributs de déboguage"
 
-#: g10/g10.c:226
+#: g10/g10.c:230
 msgid "enable full debugging"
 msgstr "permettre un déboguage complet"
 
-#: g10/g10.c:227
+#: g10/g10.c:231
 msgid "|FD|write status info to this FD"
 msgstr "|FD|écrire les informations d'état sur ce descripteur"
 
-#: g10/g10.c:228
+#: g10/g10.c:232
 msgid "do not write comment packets"
 msgstr "ne pas écrire de paquets de commentaire"
 
-#: g10/g10.c:229
+#: g10/g10.c:233
 msgid "(default is 1)"
 msgstr "(1 par défaut)"
 
-#: g10/g10.c:230
+#: g10/g10.c:234
 msgid "(default is 3)"
 msgstr "(3 par défaut)"
 
-#: g10/g10.c:231
+#: g10/g10.c:236
 msgid "|FILE|load extension module FILE"
 msgstr "|FICH|charger le module d'extension FICH"
 
-#: g10/g10.c:232
+#: g10/g10.c:237
 msgid "emulate the mode described in RFC1991"
 msgstr "émuler le mode décrit dans la RFC1991"
 
-#: g10/g10.c:233
+#: g10/g10.c:238
 msgid "|N|use passphrase mode N"
 msgstr "|N|utiliser le mode de mots de passe N"
 
-#: g10/g10.c:235
+#: g10/g10.c:240
 msgid "|NAME|use message digest algorithm NAME for passphrases"
 msgstr "|NOM|utiliser le hachage NOM pour les mots de passe"
 
-#: g10/g10.c:237
+#: g10/g10.c:242
 msgid "|NAME|use cipher algorithm NAME for passphrases"
 msgstr "|NOM|utiliser le cryptage NOM pour les mots de passe"
 
-#: g10/g10.c:239
+#: g10/g10.c:244
 msgid "|NAME|use cipher algorithm NAME"
 msgstr "|NOM|utiliser l'algorithme de cryptage NOM"
 
-#: g10/g10.c:240
+#: g10/g10.c:245
 msgid "|NAME|use message digest algorithm NAME"
 msgstr "|NOM|utiliser la fonction de hachage NOM"
 
-#: g10/g10.c:241
+#: g10/g10.c:246
 msgid "|N|use compress algorithm N"
 msgstr "|N|utiliser l'algorithme de compression N"
 
-#: g10/g10.c:242
+#: g10/g10.c:247
 msgid "throw keyid field of encrypted packets"
 msgstr "enlever l'identification des paquets cryptés"
 
-#: g10/g10.c:250
+#: g10/g10.c:255
 msgid ""
 "@\n"
 "Examples:\n"
@@ -518,20 +524,20 @@ msgstr ""
 " --list-keys [utilisateur]    montrer les clés\n"
 " --fingerprint [utilisateur]  montrer les empreintes\n"
 
-#: g10/g10.c:325
+#: g10/g10.c:333
 msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
 msgstr "Rapporter toutes anomalies à <gnupg-bugs@gnu.org>.\n"
 
-#: g10/g10.c:330
+#: g10/g10.c:338
 msgid "Usage: gpgm [options] [files] (-h for help)"
 msgstr "Utilisation: gpgm [options] [fichiers] (-h pour l'aide)"
 
-#: g10/g10.c:332
+#: g10/g10.c:340
 msgid "Usage: gpg [options] [files] (-h for help)"
 msgstr "Utilisation: gpg [options] [fichiers] (-h pour l'aide)"
 
 #
-#: g10/g10.c:337
+#: g10/g10.c:345
 msgid ""
 "Syntax: gpgm [options] [files]\n"
 "GnuPG maintenance utility\n"
@@ -539,7 +545,7 @@ msgstr ""
 "Syntaxe: gpgm [options] [fichiers]\n"
 "utilitaire de maitenance de GnuPG\n"
 
-#: g10/g10.c:340
+#: g10/g10.c:348
 msgid ""
 "Syntax: gpg [options] [files]\n"
 "sign, check, encrypt or decrypt\n"
@@ -549,7 +555,7 @@ msgstr ""
 "signer, vérifier, crypter ou décrypter\n"
 "l'opération par défaut dépend des données entrées\n"
 
-#: g10/g10.c:346
+#: g10/g10.c:354
 msgid ""
 "\n"
 "Supported algorithms:\n"
@@ -557,141 +563,156 @@ msgstr ""
 "\n"
 "Algorithmes supportés:\n"
 
-#: g10/g10.c:421
+#: g10/g10.c:429
 msgid "usage: gpgm [options] "
 msgstr "utilisation: gpgm [options] "
 
-#: g10/g10.c:423
+#: g10/g10.c:431
 msgid "usage: gpg [options] "
 msgstr "utilisation: gpg [options] "
 
-#: g10/g10.c:464
+#: g10/g10.c:472
 msgid "conflicting commands\n"
 msgstr "commandes en conflit\n"
 
-#: g10/g10.c:602
-#, c-format
-msgid "note: no default option file '%s'\n"
+#: g10/g10.c:610
+#, fuzzy, 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:606
+#: g10/g10.c:614
 #, c-format
 msgid "option file '%s': %s\n"
 msgstr "fichier d'options '%s' : %s\n"
 
-#: g10/g10.c:613
+#: g10/g10.c:621
 #, c-format
 msgid "reading options from '%s'\n"
 msgstr "lire les options de '%s'\n"
 
-#: g10/g10.c:787 g10/g10.c:799
+#: g10/g10.c:769
+#, fuzzy, c-format
+msgid "%s is not a valid character set\n"
+msgstr "Caractère invalide dans le commentaire\n"
+
+#: g10/g10.c:802 g10/g10.c:814
 msgid "selected cipher algorithm is invalid\n"
 msgstr "l'algorithme de cryptage sélectionné est invalide\n"
 
-#: g10/g10.c:793 g10/g10.c:805
+#: g10/g10.c:808 g10/g10.c:820
 msgid "selected digest algorithm is invalid\n"
 msgstr "la fonction de hachage sélectionnée est invalide\n"
 
-#: g10/g10.c:808
+#: g10/g10.c:823
 #, 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:810
+#: g10/g10.c:825
 msgid "completes-needed must be greater than 0\n"
 msgstr "le nombre de signatures complètes minimal doit être supérieur à 0\n"
 
-#: g10/g10.c:812
+#: g10/g10.c:827
 msgid "marginals-needed must be greater than 1\n"
 msgstr "le nombre de singatures marginales minimal doit être supérieur à 1\n"
 
-#: g10/g10.c:815
-msgid "note: simple S2K mode (0) is strongly discouraged\n"
+#: g10/g10.c:829
+msgid "max-cert-depth must be in range 1 to 255\n"
+msgstr ""
+
+#: g10/g10.c:832
+#, fuzzy
+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:819
+#: g10/g10.c:836
 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:895
+#: g10/g10.c:912
 #, 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:901
+#: g10/g10.c:918
 msgid "--store [filename]"
 msgstr "--store [nom du fichier]"
 
-#: g10/g10.c:909
+#: g10/g10.c:926
 msgid "--symmetric [filename]"
 msgstr "--symmetric [nom du fichier]"
 
-#: g10/g10.c:917
+#: g10/g10.c:934
 msgid "--encrypt [filename]"
 msgstr "--encrypt [nom du fichier]"
 
-#: g10/g10.c:930
+#: g10/g10.c:947
 msgid "--sign [filename]"
 msgstr "--sign [nom du fichier]"
 
-#: g10/g10.c:943
+#: g10/g10.c:960
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [nom du fichier]"
 
-#: g10/g10.c:957
+#: g10/g10.c:974
 msgid "--clearsign [filename]"
 msgstr "--clearsign [nom du fichier]"
 
-#: g10/g10.c:969
+#: g10/g10.c:986
 msgid "--decrypt [filename]"
 msgstr "--decrypt [nom du fichier]"
 
-#: g10/g10.c:978
-msgid "--edit-key username"
+#: g10/g10.c:995
+#, fuzzy
+msgid "--edit-key username [commands]"
 msgstr "--edit-key utilisateur"
 
-#: g10/g10.c:986
+#: g10/g10.c:1011
 msgid "--delete-secret-key username"
 msgstr "--delete-secret-key utilisateur"
 
-#: g10/g10.c:989
+#: g10/g10.c:1014
 msgid "--delete-key username"
 msgstr "--delete-key utilisateur"
 
-#: g10/encode.c:216 g10/g10.c:1012
+#: g10/encode.c:216 g10/g10.c:1037 g10/sign.c:301
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "ne peut ouvrir %s: %s\n"
 
-#: g10/g10.c:1023
+#: g10/g10.c:1048
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [utilisateur] [porte-clés]"
 
-#: g10/g10.c:1079
+#: g10/g10.c:1104
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "suppression d'armure non réussie: %s\n"
 
-#: g10/g10.c:1087
+#: g10/g10.c:1112
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "mise d'armure non réussie:%s \n"
 
-#: g10/g10.c:1148
+#: g10/g10.c:1173
 #, c-format
 msgid "invalid hash algorithm '%s'\n"
 msgstr "algorithme de hachage invalide&nbs