Provided by: gnutls-doc_3.5.18-1ubuntu1.6_all bug

NAME

       gnutls_srp_set_server_fake_salt_seed - API function

SYNOPSIS

       #include <gnutls/gnutls.h>

       void   gnutls_srp_set_server_fake_salt_seed(gnutls_srp_server_credentials_t   cred,  const
       gnutls_datum_t * seed, unsigned int salt_length);

ARGUMENTS

       gnutls_srp_server_credentials_t cred
                   is a gnutls_srp_server_credentials_t type

       const gnutls_datum_t * seed
                   is the seed data, only needs to be valid until the function returns;  size  of
                   the seed must be greater than zero

       unsigned int salt_length
                   is the length of the generated fake salts

DESCRIPTION

       This  function  sets  the  seed  that is used to generate salts for invalid (non-existent)
       usernames.

       In order to prevent attackers from guessing valid usernames, when a user  does  not  exist
       gnutls  generates  a  salt  and  a  verifier and proceeds with the protocol as usual.  The
       authentication will ultimately fail, but the client cannot tell whether  the  username  is
       valid (exists) or invalid.

       If  an  attacker  learns the seed, given a salt (which is part of the handshake) which was
       generated when the seed was in use, it can tell whether or not the  authentication  failed
       because  of  an  unknown username.  This seed cannot be used to reveal application data or
       passwords.

        salt_length should represent the salt length  your  application  uses.   Generating  fake
       salts longer than 20 bytes is not supported.

       By    default    the    seed    is    a    random    value,    different   each   time   a
       gnutls_srp_server_credentials_t is allocated and fake salts are 16 bytes long.

SINCE

       3.3.0

REPORTING BUGS

       Report bugs to <bugs@gnutls.org>.
       Home page: http://www.gnutls.org

COPYRIGHT

       Copyright © 2001-2022 Free Software Foundation, Inc., and others.
       Copying and distribution of this file, with or without modification, are permitted in  any
       medium without royalty provided the copyright notice and this notice are preserved.

SEE ALSO

       The   full   documentation  for  gnutls  is  maintained  as  a  Texinfo  manual.   If  the
       /usr/share/doc/gnutls/ directory does not contain the HTML form visit

       http://www.gnutls.org/manual/