[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GNU SASL 0.2.4

From: Simon Josefsson
Subject: GNU SASL 0.2.4
Date: Sat, 01 Jan 2005 21:25:46 +0100
User-agent: Gnus/5.110003 (No Gnus v0.3) Emacs/21.3.50 (gnu/linux)

GNU SASL version 0.2.4 has been released!

This version include a re-written implementation of DIGEST-MD5 for the
new API, some internationalization improvements in the PLAIN server, a
small number of fixes in the new (0.2.x) API functions, and a new
simple user database password lookup function API.

Alas, while rewriting the DIGEST-MD5 mechanism, I came to realize that
there were little analysis available in public on the security of
DIGEST-MD5.  Considering the recently demonstrated weakness in MD5,
and pending more information, I am now recommending users to consider
CRAM-MD5 instead of DIGEST-MD5.  The internal priority order reflect
this.  Unlike DIGEST-MD5, CRAM-MD5 is based on HMAC-MD5.  While
CRAM-MD5 also uses MD5, there has been some allegedly credible public
analysis that appear to suggest that HMAC-MD5 at least cannot be
trivially defeated as a consequence of the demonstrated MD5
vulnerability.  The downside of using CRAM-MD5 is that authorization
identities are not supported (e.g., when an administrators login on
behalf as someone else, aka proxy authentication).  I would appreciate
references to literature that would revert or reinforce this decision.
Discussion may be held on sci.crypt, one message regarding this:

Btw, appear to be down, so the links below are only
to my own site, without FTP.  I am sorry for the inconvenience.  The
release will be upload to eventually.


GNU SASL is an implementation of the Simple Authentication and
Security Layer framework and a few common SASL mechanisms.  SASL is
used by network servers (e.g., IMAP, SMTP) to request authentication
from clients, and in clients to authenticate against servers.

The project page of the library is available at:

Here are the compressed sources of the entire package:   (2.5MB)

Here are GPG detached signatures using key 0xB565716F:

Here are the compressed sources of the LGPL library (included above):   (560KB)

Here are GPG detached signatures using key 0xB565716F:

Here are the SHA-1 checksums:

e76d14c55d1210c3dc31dbeee9a0c46ac90237cb  gsasl-0.2.4.tar.gz
48dc8fc856f0dbdbbaa4cf6c6c9ed568b637da3d  gsasl-0.2.4.tar.gz.sig
994c127ece128f55d9149e2daf668fb6a5461c75  libgsasl-0.2.4.tar.gz
548e1e1f97789462b7a107d4eae38c6de40c6e53  libgsasl-0.2.4.tar.gz.sig

Here are the build reports for various platforms:

Noteworthy changes in the front-end (changes in library below):

** The CRAM-MD5 mechanism is now preferred over DIGEST-MD5.
This decision was based on recent public research that suggest MD5 is
broken, while HMAC-MD5 not immediately compromised, and the lack of
public analysis on what consequences the MD5 break have for
DIGEST-MD5.  Support for CRAM-SHA1 is under investigation, to enable
users to avoid MD5 completely

** Fixed a bug that prevented SMTP client from working.

** New configure option --disable-obsolete to remove backwards compatibility.
This is mostly intended to be used when compiling for platforms with
constrained memory/space resources.

** DIGEST-MD5 rewritten and enabled by default (see lib/NEWS for details).

** Command line tool now query for realm, hostname and service name properly.

** Documentation updates and improvements.

** Self test improvements.

** Update of gnulib files.

Noteworthy changes in the library:

** The DIGEST-MD5 mechanism is rewritten and enabled by default.
The implementation is written so it can be used separately from GNU
SASL in your own product, it only uses C89 and two external symbols
for MD5 and HMAC-MD5.  For more information, see digest-md5/README.

** Improvements to the PLAIN server.
It now prepare the incoming authid and password using SASLprep
(unassigned code point will be rejected).  It should also reject
invalid input better.

** Improved robustness of callback backwards compatibility.

** Memory leaks fixed.

** New simple user database API `gsasl_simple_getpass'.
This replaces gsasl_md5pwd_get_password.  The functionality is the
same, only the API changed (to remove fixed size buffer restrictions).

** New configure option --disable-obsolete to remove backwards compatibility.
This is mostly intended to be used when compiling for platforms with
constrained memory/space resources.

** Gnulib files were updated.

** API and ABI modifications.
gsasl_md5pwd_get_password: DEPRECATED.  Use gsasl_simple_getpass() instead.
gsasl_simple_getpass: ADD.  No buffer length restriction.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]