1 NEWS for SoftHSM -- History of user visible changes
3 SoftHSM 2.5.0 - 2018-09-24
5 * Issue #323: Support for EDDSA with vendor defined mechanisms.
6 (Patch from Francis Dupont)
7 * Issue #362: CMake Build System Support for SoftHSM.
8 (Patch from Constantine Grantcharov)
9 * Issue #368: Support migrating 32-bit SoftHSMv1 DB on 64-bit system (LP64).
10 * Issue #385: Default is not to build EDDSA since it has not been released in
12 * Issue #387: Windows: Add VS2017 detection to Configure.py.
13 (Patch from Jaroslav Imrich)
14 * Issue #412: Replace PKCS11 headers with a version from p11-kit.
15 (Patch from Alexander Bokovoy)
18 * Issue #366: Support cross-compilation.
19 (Patch from Michael Weiser)
20 * Issue #377: Duplicate symbol error with custom p11test.
21 * Issue #386: Use RDRAND in OpenSSL if that engine is available.
22 * Issue #388: Update DBTests.cpp to fix x86 test failure.
24 * Issue #393: Not setting CKA_PUBLIC_KEY_INFO correctly.
26 * Issue #401: Wrong key and keyserver mentioned in installation documentation.
27 (Patch from Berry A.W. van Halderen)
28 * Issue #408: Remove mutex callbacks after C_Finalize().
29 (Patch from Alexander Bokovoy)
32 SoftHSM 2.4.0 - 2018-02-27
34 * Issue #135: Support PKCS#8 for GOST.
35 * Issue #140: Support for CKA_ALLOWED_MECHANISMS.
36 (Patch from Brad Hess)
37 * Issue #141: Support CKA_ALWAYS_AUTHENTICATE for private key objects.
38 * Issue #220: Support for CKM_DES3_CMAC and CKM_AES_CMAC.
39 * Issue #226: Configuration option for Windows build to enable build with
41 * Issue #325: Support for CKM_AES_GCM.
42 * Issue #334: Document that initialized tokens will be reassigned to another
43 slot (based on the token serial number).
44 * Issue #335: Support for CKM_RSA_PKCS_PSS.
45 (Patch from Nikos Mavrogiannopoulos)
46 * Issue #341: Import AES keys with softhsm2-util.
47 (Patch from Pavel Cherezov)
48 * Issue #348: Document that OSX needs pkg-config to detect cppunit.
49 * Issue #349: softhsm2-util will check the configuration and report any
50 issues before loading the PKCS#11 library.
53 * Issue #345: Private objects are presented to security officer in search
55 * Issue #358: Race condition when multiple applications are creating and
59 SoftHSM 2.3.0 - 2017-07-03
61 * Issue #130: Upgraded to PKCS#11 v2.40.
62 * Minor changes to some return values.
63 * Added CKA_DESTROYABLE to all objects. Used by C_DestroyObject().
64 * Added CKA_PUBLIC_KEY_INFO to certificates, private, and public key
65 objects. Will be accepted from application, but SoftHSM will
66 currently not calculate it.
67 * Issue #142: Support for CKM_AES_CTR.
68 * Issue #155: Add unit tests for SessionManager.
69 * Issue #189: C_DigestKey returns CKR_KEY_INDIGESTIBLE when key
70 attribute CKA_EXTRACTABLE = false. Whitelist SHA algorithms to allow
71 C_DigestKey in this case.
72 * Issue #225: Show slot id after initialization.
73 * Issue #247: Run AppVeyor (Windows CI) for each PR and merge.
74 * Issue #257: Set CKA_DECRYPT/CKA_ENCRYPT flags on key import to true.
75 (Patch from Martin Domke)
76 * Issue #261: Add support for libeaycompat lib for FIPS on Windows.
77 (Patch from Matt Hauck)
78 * Issue #262: Support importing ECDSA P-521 in softhsm-util.
79 * Issue #276: Support for Botan 2.0.
80 * Issue #279: Editorial changes from Mountain Lion to Sierra.
81 (Patch from Mike Neumann)
82 * Issue #283: More detailed error messages when initializing SoftHSM.
83 * Issue #285: Support for LibreSSL.
84 (Patch from Alon Bar-Lev)
85 * Issue #286: Update .gitignore.
86 (Patch from Alon Bar-Lev)
87 * Issue #291: Change to enable builds and reports on new Jenkinks
89 * Issue #293: Detect cppunit in autoconf.
90 (Patch from Alon Bar-Lev)
91 * Issue #309: CKO_CERTIFICATE and CKO_PUBLIC_KEY now defaults to
93 * Issue #314: Update README with information about logging.
94 * Issue #330: Adjust log levels for failing to enumerate object store.
95 (Patch from Nikos Mavrogiannopoulos)
98 * Issue #216: Better handling of CRYPTO_set_locking_callback() for OpenSSL.
99 * Issue #265: Fix deriving shared secret with ECC.
100 * Issue #280: HMAC with sizes less than L bytes is strongly discouraged.
101 Set a lower bound equal to L bytes in ulMinKeySize and check it when
102 initializing the operation.
103 * Issue #281: Fix test of p11 shared library.
104 (Patch from Lars Silvén)
105 * Issue #289: Minor fix of 'EVP_CipherFinal_ex'.
106 (Patch from Viktor Tarasov)
107 * Issue #297: Fix build with cppunit.
108 (Patch from Ludovic Rousseau)
109 * Issue #302: Export PKCS#11 symbols from the library.
110 (Patch from Ludovic Rousseau)
111 * Issue #305: Zero pad key to fit the block in CKM_AES_KEY_WRAP.
112 * Issue #313: Detecting CppUnit when using Macports.
113 (Patch from mouse07410)
116 SoftHSM 2.2.0 - 2016-12-05
118 * Issue #143: Delete a token using softhsm2-util.
119 * Issue #185: Change access mode bits for /var/lib/softhsm/tokens/
120 to 1777. All users can now create tokens, but only access their own.
121 (Patch from Rick van Rein)
122 * Issue #186: Reinitializing a token will now keep the token, but all
123 token objects are deleted, the user PIN is removed and the token
125 * Issue #190: Support for OpenSSL 1.1.0.
126 * Issue #198: Calling C_GetSlotList with NULL_PTR will make sure that
127 there is always a slot with an uninitialized token available.
128 * Issue #199: The token serial number will be used when setting the slot
129 number. The serial number is set after the token has been initialized.
130 (Patch from Lars Silvén)
131 * Issue #203: Update the command utils to use the token label or serial
132 to find the token and its slot number.
133 * Issue #209: Possibility to test other PKCS#11 implementations with the
135 (Patch from Lars Silvén)
136 * Issue #223: Mark public key as non private by default.
137 (Patch from Nikos Mavrogiannopoulos)
138 * Issue #230: Install p11-kit module, to disable use --disable-p11-kit.
139 (Patch from David Woodhouse)
140 * Issue #237: Add windows continuous integration build.
141 (Patch from Peter Polačko)
144 * Issue #201: Missing new source file and test configuration in the
145 Windows build project.
146 * Issue #205: ECDSA P-521 support for OpenSSL and better test coverage.
147 * Issue #207: Fix segmentation faults in loadLibrary function.
148 (Patch from Jaroslav Imrich)
149 * Issue #215: Update the Homebrew install notes for OSX.
150 * Issue #218: Fix build warnings.
151 * Issue #235: Add the libtool install command for OSX.
152 (Patch from Mark Wylde)
153 * Issue #236: Use GetEnvironmentVariable instead of getenv on Windows.
154 (Patch from Jaroslav Imrich)
155 * Issue #239: Crash on module unload with OpenSSL.
156 (Patch from David Woodhouse)
157 * Issue #241: Added EXTRALIBS to Windows utils project.
158 (Patch from Peter Polačko)
159 * Issue #250: C++11 not detected.
160 * Issue #255: API changes in Botan 1.11.27.
161 * Issue #260: Fix include guard to check WITH_FIPS.
162 (Patch from Matt Hauck)
163 * Issue #268: p11test fails on 32-bit systems.
164 * Issue #270: Build warning about "converting a string constant".
165 * Issue #272: Fix C++11 check to look for unique_ptr.
166 (Patch from Matt Hauck)
169 SoftHSM 2.1.0 - 2016-03-14
171 * Issue #136: Improved guide and build scripts for Windows.
172 (Thanks to Jaroslav Imrich)
173 * Issue #144: The password prompt in softhsm2-util can now be
174 interrupted (ctrl-c).
175 * Issue #166: Add slots.removable config option.
176 (Patch from Sumit Bose)
177 * Issue #180: Windows configure script improvements.
178 (Patch from Arnaud Grandville)
181 * Issue #128: Prioritize the return values in C_GetAttributeValue.
182 (Patch from Nicholas Wilson)
183 * Issue #129: Fix errors reported by Visual Studio 2015.
184 (Patch from Jaroslav Imrich)
185 * Issue #132: Handle the CKA_CHECK_VALUE correctly for certificates
186 and symmetric key objects.
187 * Issue #154: Fix the Windows build and destruction order of objects.
188 (Patch from Arnaud Grandville)
189 * Issue #162: Not possible to create certificate objects containing
190 CKA_CERTIFICATE_CATEGORY, CKA_NAME_HASH_ALGORITHM, or
191 CKA_JAVA_MIDP_SECURITY_DOMAIN.
192 * Issue #163: Do not attempt decryption of empty byte strings.
193 (Patch from Michal Kepien)
194 * Issue #165: Minor changes after a PVS-Studio code analysis, and
195 C_EncryptUpdate crash if no ciphered data is produced.
196 (Patch from Arnaud Grandville)
197 * Issue #169: One-byte buffer overflow in call to EVP_DecryptUpdate.
198 * Issue #171: Problem while closing library that is initialized but
199 improperly finalized.
200 * Issue #173: Adjust return values for the template parsing.
201 * Issue #174: C_DeriveKey() error with leading zero bytes.
202 * Issue #177: CKA_NEVER_EXTRACTABLE set to CK_FALSE on objects
203 created with C_CreateObject.
204 * Issue #182: Resolve compiler warning.
205 (Patch from Josh Datko)
206 * Issue #184: Stop discarding the global OpenSSL libcrypto state.
207 (Patch from Michal Trojnara)
208 * SOFTHSM-123: Fix library cleanup on BSD.
211 SoftHSM 2.0.0 - 2015-07-17
213 * SOFTHSM-121: Test cases for C_DecryptUpdate/C_DecryptFinal.
214 * Support C_DecryptUpdate/C_DecryptFinal for symmetric algorithms.
215 (Patch from Thomas Calderon)
218 * SOFTHSM-120: Segfault after renaming variables.
221 SoftHSM 2.0.0b3 - 2015-04-17
223 * SOFTHSM-113: Support for Botan 1.11.15
224 * SOFTHSM-119: softhsm2-util: Support ECDSA key import
225 (Patch from Magnus Ahltorp)
226 * SUPPORT-139: Support deriving generic secrets, DES, DES2, DES3, and AES.
227 Using DH, ECDH or symmetric encryption.
230 * SOFTHSM-108: A marked as trusted certificate cannot be imported.
231 * SOFTHSM-109: Unused parameter and variable warnings.
232 * SOFTHSM-110: subdir-objects warnings from autoreconf.
233 * SOFTHSM-111: Include FIPS-NOTES.md in dist.
234 * SOFTHSM-112: CKM_AES_KEY_WRAP* conflict in pkcs11.h.
235 * SOFTHSM-114: Fix memory leak in a test script.
236 * SOFTHSM-115: Fix static analysis warnings.
237 * SUPPORT-154: A marked as non-modifiable object cannot be generated.
238 * SUPPORT-155: auto_ptr is deprecated in C++11, use unique_ptr.
239 * SUPPORT-157: Derived secrets were truncated after encryption and
240 could thus not be decrypted.
241 * Mutex should call MutexFactory wrapper functions.
242 (Patch from Jerry Lundström)
243 * Return detailed error message to loadLibrary().
244 (Patch from Petr Spacek)
247 SoftHSM 2.0.0b2 - 2014-12-28
249 * SOFTHSM-50: OpenSSL FIPS support.
250 * SOFTHSM-64: Updated build script for Windows.
251 * SOFTHSM-100: Use --free with softhsm2-util to initialize the first
253 * SOFTHSM-103: Allow runtime configuration of log level.
254 * SOFTHSM-107: Support for CKM_<symcipher>_CBC_PAD.
255 * Add support for CKM_RSA_PKCS_OAEP key un/wrapping.
256 (Patch from Petr Spacek)
257 * Use OpenSSL EVP interface for AES key wrapping.
258 (Patch from Petr Spacek)
259 * Allow reading configuration file from user's home directory.
260 (Patch from Nikos Mavrogiannopoulos)
263 * SOFTHSM-102: C_DeriveKey() uses OBJECT_OP_GENERATE.
264 * Coverity found a number of issues.
267 SoftHSM 2.0.0b1 - 2014-09-10
269 * SOFTHSM-84: Check that all mandatory attributes are given during
270 the creation process.
271 * SOFTHSM-92: Enable -fvisibility=hidden on per default
272 * SUPPORT-137: Implement C_EncryptUpdate and C_EncryptFinal
273 (Patch from Martin Paljak)
274 * Add support for CKM_RSA_PKCS key un/wrapping
275 (Patch from Petr Spacek)
278 * SOFTHSM-66: Attribute handling when using multiple threads
279 * SOFTHSM-93: Invalid C++ object recycling.
280 * SOFTHSM-95: umask affecting the calling application.
281 * SOFTHSM-97: Check if Botan has already been initialized.
282 * SOFTHSM-98: Handle mandatory attributes for DSA, DH, and ECDSA
284 * SOFTHSM-99: Binary encoding of GOST values.
285 * SUPPORT-136: softhsm2-keyconv creates files with sensitive material
289 SoftHSM 2.0.0a2 - 2014-03-25
291 * SOFTHSM-68: Display a better configure message when there is a
292 version of Botan with a broken ECC/GOST/OID implementation.
293 * SOFTHSM-70: Improved handling of the database backend.
294 * SOFTHSM-71: Supporting Botan 1.11.
295 * SOFTHSM-76: Do not generate RSA keys smaller than 1024 bit when
296 using the Botan crypto backend.
297 * SOFTHSM-83: Support CKA_VALUE_BITS for CKK_DH private key object.
298 * SOFTHSM-85: Rename libsofthsm.so to libsofthsm2.so and prefix the
299 command line utilties with softhsm2-.
300 * SOFTHSM-89: Use constants and not strings for signaling algorithms.
301 * SUPPORT-129: Possible to use an empty template in C_GenerateKey.
302 The class and key type are inherited from the generation mechanism.
303 Some mechanisms do however require a length attribute. [SOFTHSM-88]
304 * SUPPORT-131: Support RSA-PSS using SHA1, SHA224, SHA256, SHA384,
305 or SHA512. [SOFTHSM-87]
308 * SOFTHSM-39: Fix 64 bit build on sparc sun4v.
309 * SOFTHSM-69: GOST did not work when you disabled ECC.
310 * SOFTHSM-78: Correct the attribute checks for a number of objects.
311 * SOFTHSM-80: Prevent segfault in OpenSSL GOST HMAC code.
312 * SOFTHSM-91: Fix a warning from static code analysis.
313 * Fixed a number of memory leaks.
316 SoftHSM 2.0.0a1 - 2014-02-10
318 This is the first alpha release of SoftHSMv2. It focuses on a higher
319 level of security by encrypting sensitive information and using
320 unswappable memory. There is also a more generalized crypto backend,
321 where you can use Botan or OpenSSL.