1
1
libgcrypt - The GNU crypto library
2
2
------------------------------------
5
Copyright 2000, 2002, 2003, 2004, 2005, 2006,
6
2007 Free Software Foundation, Inc.
5
Copyright 2000, 2002, 2003, 2004, 2007,
6
2008 Free Software Foundation, Inc.
8
8
This file is free software; as a special exception the author gives
9
9
unlimited permission to copy and/or distribute it, with or without
21
21
Libgcrypt is a general purpose crypto library based on the code
22
used in GnuPG. We can't start with a new version number because
23
libgcrypt was part of gnupg 1.1 and some applications already used
24
it and tested for the version number. We believe that the API can
25
stay as it is, except that new functions may be added in the
28
Libgcrypt depends on the library `libgpg-error', which must be
29
installed correctly before Libgcrypt is to be built.
22
used in GnuPG. Libgcrypt depends on the library `libgpg-error',
23
which must be installed correctly before Libgcrypt is to be built.
24
Libgcrypt is distributed under the LGPL, see the section "License"
31
The download canonical location for libgcrypt is:
33
ftp://ftp.gnupg.org/gcrypt/libgcrypt/
35
To build libgcrypt you need libgpg-error:
37
ftp://ftp.gnupg.org/gcrypt/libgpg-error/
39
You should get the latest versions of course.
41
After building and installing the libgpg-error package, you may
42
continue with Libgcrypt installation As with allmost all GNU
43
packages, you just have to do
50
The "make check" is not required but a good idea to see whether
51
the library works as expected. The check takes some while and
52
prints some benchmarking results. Before doing "make install" you
53
probably need to become root.
55
To build libgcrypt for Microsoft Windows, you need to have the
56
mingw32 cross-building toolchain installed. Instead of running a
57
plain configure you use
59
./autogen.sh --build-w32
63
By default this command sequences expectsd a libgpg-error
64
installed below $HOME/w32root and installs libgcrypt to that
65
directory too. See the autogen.sh code for details.
67
The documentation is available as an Info file (gcrypt.info). To
68
build documentation in PDF, run this:
38
81
list is available at http://lists.gnupg.org .
44
Most of this library is distributed under the terms of the GNU
45
Lesser General Public License (LGPL); see the file COPYING.LIB for
46
the actual terms. However some parts are distributed under the
47
GNU General Public License (GPL) so if you configure Libgcrypt to
48
include these modules, you have to comply with the conditions of
49
the GPL as found in the file COPYING. The modules under the GPL
52
rndunix - Entropy gatherer for Unices without a /dev/random
53
rndw32 - Entropy gatherer for MS Windows
55
The documentation is available under the terms of the GNU Free
56
Documentation License; see the file COPYING.DOC for the terms.
58
This library used to be available under the GPL - this was changed
59
with version 1.1.7 with the rationale that there are now many free
60
crypto libraries available and many of them come with capabilities
61
similar to Libcrypt. We decided that to foster the use of
62
cryptography in Free Software an LGPLed library would make more
63
sense because it avoids problems due to license incompatibilities
64
between some Free Software licenses and the GPL.
66
Please note that in many cases it is better for a library to be
67
licensed under the GPL, so that it provides an advantage for free
68
software projects. The Lesser GPL is so named because it does
69
less to protect the freedom of the users of the code that it
70
covers. See http://www.gnu.org/philosophy/why-not-lgpl.html for
76
86
Here is a list of configure options which are sometimes useful
108
118
features not provided by the system, like 64bit
109
119
data types. With these switches it is possible
110
120
to select exactly those algorithm modules, which
121
should be built. The algorithms are to be
122
separated by spaces, commas or colons. To view
123
the list used with the current build the program
124
tests/version may be used.
126
--disable-endian-check
127
Don't let configure test for the endianness but
128
try to use the OS provided macros at compile
129
time. This is helpful to create OS X fat binaries.
131
--enable-random-daemon
132
Include support for a global random damon and
133
build the daemon. This is an experimental feature.
135
--enable-mpi-path=EXTRA_PATH
136
Prepend EXTRA_PATH to list of CPU specific
137
optimizations. For example, if you want to add
138
optimizations forn a Intel Pentium 4 compatible
140
--enable-mpi-path=pentium4/sse2:pentium4/mmx
141
Take care: The generated library may crash on
145
Force the use of the random gathering module
146
NAME. Default is either to use /dev/random or
147
the auto mode. Possible values for NAME are:
148
egd - Use the module which accesses the
149
Entropy Gathering Daemon. See the webpages
150
for more information about it.
151
unix - Use the standard Unix module which does not
152
have a very good performance.
153
linux - Use the module which accesses /dev/random.
154
This is the first choice and the default one
155
for GNU/Linux or *BSD.
156
auto - Compile linux, egd and unix in and
157
automagically select at runtime.
159
--disable-padlock-support
160
Disable support for the PadLock engine of VIA
161
processors. The default is to use PadLock if
162
available. Try this if you get problems with
170
The library is distributed under the terms of the GNU Lesser
171
General Public License (LGPL); see the file COPYING.LIB for the
172
actual terms. The helper programs (gcryptrnd and getrandom) as
173
well as the documentation are distributed under the terms of the
174
GNU General Public License (GPL); see the file COPYING for teh
177
This library used to be available under the GPL - this was changed
178
with version 1.1.7 with the rationale that there are now many free
179
crypto libraries available and many of them come with capabilities
180
similar to Libcrypt. We decided that to foster the use of
181
cryptography in Free Software an LGPLed library would make more
182
sense because it avoids problems due to license incompatibilities
183
between some Free Software licenses and the GPL.
185
Please note that in many cases it is better for a library to be
186
licensed under the GPL, so that it provides an advantage for free
187
software projects. The Lesser GPL is so named because it does
188
less to protect the freedom of the users of the code that it
189
covers. See http://www.gnu.org/philosophy/why-not-lgpl.html for
116
196
See the file AUTHORS.
198
Commercial grade support for Libgcrypt is available; please see
199
http://www.gnupg.org/service.html .
202
This file is Free Software; as a special exception the authors gives
203
unlimited permission to copy and/or distribute it, with or without
204
modifications, as long as this notice is preserved. For conditions
205
of the whole package, please see the file COPYING. This file is
206
distributed in the hope that it will be useful, but WITHOUT ANY
207
WARRANTY, to the extent permitted by law; without even the implied
208
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.