From 3d7dc513b782407bd397b13771a631d9080d3aac Mon Sep 17 00:00:00 2001 From: Carlos O'Donell Date: Sat, 19 Oct 2013 00:11:31 -0400 Subject: [PATCH] Mention FIPS 140-2 compliance and Sun RPC. The Secure RPC implementation in glibc uses DES encryption during authentication of the user. This use of DES means that anyone using Sun RPC will likely not be compliant with FIPS 140-2 which forbids the use of DES. One solution to the compliance issue is to disable AUTH_DES and AUTH_KERB, both use DES, when in FIPS compliance mode. This is not a good idea because it disables all of the even mildly secure methods of authentication allowing only plain text methods. Instead we leave AUTH_DES and AUTH_KERB enabled in FIPS compliance mode and document the compliance issue in the manual. FIPS allows this, that is to say that if you can't fix it you must document the non-compliance. This commit adds documentation to that effect in the "DES encryption and password handling" section of the manual. --- ChangeLog | 5 +++++ manual/crypt.texi | 10 +++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index c72611e..d2de84a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2013-10-18 Carlos O'Donell + * manual/crypt.texi (Cryptographic Functions): Using SunRPC and + AUTH_DES will prevent FIPS 140-2 compliance. Add vindex for + AUTH_DES and cindex for FIPS 140-2. + (DES Encryption): Add cindex FIPS 46-3. + * locale/locarchive.h (struct locarhandle): Add fname. * locale/programs/localedef.c (main): Pass ARGV[remaining] if an optional argument was specified to --list-archive, diff --git a/manual/crypt.texi b/manual/crypt.texi index ef90590..9c65b95 100644 --- a/manual/crypt.texi +++ b/manual/crypt.texi @@ -30,8 +30,15 @@ message-digest algorithm that is compatible with modern BSD systems, and the other based on the Data Encryption Standard (DES) that is compatible with Unix systems. +@vindex AUTH_DES +@cindex FIPS 140-2 It also provides support for Secure RPC, and some library functions that -can be used to perform normal DES encryption. +can be used to perform normal DES encryption. The @code{AUTH_DES} +authentication flavor in Secure RPC, as provided by @theglibc{}, +uses DES and does not comply with FIPS 140-2 nor does any other use of DES +within @theglibc{}. It is recommended that Secure RPC should not be used +for systems that need to comply with FIPS 140-2 since all flavors of +encrypted authentication use normal DES. @menu * Legal Problems:: This software can get you locked up, or worse. @@ -203,6 +210,7 @@ header @file{crypt.h}. @node DES Encryption @section DES Encryption +@cindex FIPS 46-3 The Data Encryption Standard is described in the US Government Federal Information Processing Standards (FIPS) 46-3 published by the National Institute of Standards and Technology. The DES has been very thoroughly -- 2.7.4