-
Notifications
You must be signed in to change notification settings - Fork 80
/
Release_notes.txt
267 lines (159 loc) · 7.94 KB
/
Release_notes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
================================================================================
v2.25 Intel Intelligent Storage Acceleration Library Crypto Release Notes
================================================================================
================================================================================
RELEASE NOTE CONTENTS
================================================================================
1. KNOWN ISSUES
2. FIXED ISSUES
3. CHANGE LOG & FEATURES ADDED
================================================================================
1. KNOWN ISSUES
================================================================================
* Perf tests do not run in Windows environment.
* 32-bit lib is not supported in Windows.
* 32-bit lib is not validated.
================================================================================
2. FIXED ISSUES
================================================================================
v2.25
* Fixed build with gcc 11.1.
* Fixed SHA512 internal reference function parameters.
* Fixed SM3 lane handling for aarch64.
* Replaced non-VEX encoded with VEX-encoded instructions in AES-XTS implementation.
* Fixed clang compilation with older assemblers.
* Fixed SHA512 calculation error on aarch64.
* Fixed MD5/SHA1/SHA256/SHA512 base functions for small inputs (less than block size).
* Fixed AES-XTS OpenSSL calls, limiting the input size, as per restrictions in 3.0 version.
* Fixed Windows build on test applications.
* Fixed SHA1 context structure to force alignment for lengths array.
v2.21
* Put correct vec instruction versions in aes_cbc_enc_{128,192,256}(). May help
performance on some systems.
v2.20
* Fix issue with new aes_gcm API, aes_gcm_pre_256 was incorrect.
* Multi-buffer hash max length extended. Previous max length for
{sha1,sha256,sha512,md5}_mb was 4095MB. While there is still a 4GB limit for
each submit, the total hashed length can now be larger then 4GB.
v2.18
* Fix for multi-buffer hash when total length is above 512MB.
v2.14
* Building in unit directories is no longer supported removing the issue of
leftover object files causing the top-level make build to fail.
v2.9
* Multi-buffer MD5 AVX2 tests fixed to work on FreeBSD 9.1 by explicitly aligning
structures.
v2.7
* Unit tests and examples are now supported in Windows environment
================================================================================
3. CHANGE LOG & FEATURES ADDED
================================================================================
v2.25
* Added new API including parameter checking (starting with isal_ prefix).
* Added new API returning the library version.
* Added FIPS mode, including self tests in NIST approved algorithms (more information in https://github.com/intel/isa-l_crypto/blob/master/FIPS.md).
* Deprecated previous API in favour of new API (more information in https://github.com/intel/isa-l_crypto/wiki/New-API-introduced-from-v2.25).
* Optimized AES-GCM for AVX512-VAES x86 implementation.
* Optimized SM3 for AVX512 x86 implementation.
* Optimized MD5 and SM3 for aarch64.
* New optimized version of AES-CBC and AES-XTS for aarch64.
* Optimized multi-hash SHA1-Murmur for aarch64.
* Optimized multi-hash SHA1 for aarch64.
* Added ACVP test applications for AES-CBC, AES-GCM, AES-XTS and SHA1/256/512.
* Removed YASM support, so only NASM assembler is supported for x86.
* Bumped minimum NASM version to 2.14.01, which supports all x86 ISA used in this library.
v2.24
* New optimized version of AES-CBC decode
* New AVX2, 8 lane version of multi-buffer SM3
* Added support for big-endian architectures
v2.23
* New optimized versions of block ciphers AES-GCM and AES-XTS.
* New optimized versions of multi-buffer SM3 hashing. Removed experimental
status.
v2.22
* New multi-buffer SM3 functions. Experimental base functions only.
* New multi-arch support.
v2.21
* Multi-buffer hash performance improvement for Intel(R) Atom(tm) processors.
New by-2 shani versions for multi-buffer sha1 & sha256.
* New base functions for multi-buffer hashes.
md5_mb, sha1_mb, sha256_mb, sha512_mb.
v2.20
* New functions
- Non-temporal versions of aes_gcm added.
* Multi-buffer hash improvement
- Increase max length of hash in {sha1,sha256,sha512,md5}_mb to > 4GB.
v2.19
* Multi-buffer hash (sha1_mb, sha256_mb)
- Choose fast single buffer routine to do flush operation if lanes aren't full.
- Add SHA-NI support for Goldmont and Cannonlake.
* AES-GCM interface updates.
- New interface separates the expanded keys and other context into two
structures. The old interface is maintained for backward compatibility.
- User no longer has to append the GCM_IV_END_MARK manually to then end of iv
as this is now done automatically. This update should also improve performance
of small packets.
* Rolling hash is released.
v2.18
* New multi-hash SHA256-based version.
v2.16
* Split lib from non-crypto functions.
v2.15
* Multi-buffer hash updates. New AVX512 versions for multi-buffer SHA1, SHA256,
SHA512, MD5 and SHA1+murmur3_x64_128 stitched.
* Removes restrictions on AAD length in AES-GCM. Previously AAD length was
limited to a multiple of 4 bytes. Now any AAD length is allowed.
* Nasm support. ISA-L ported to build with nasm or yasm assembler.
* Windows DLL support. Windows builds DLL by default.
* The older, deprecated multi-buffer API has been removed.
v2.14
* New multi-hash sha1 function and multi-hash sha1 + murmur3_x64_128 stitched.
Multi-hash is designed to give the performance of multi-buffer cryptographic
hashes with a synchronous single buffer interface.
* New AES-GCM and AES-CBC functions added.
* Autoconf and autotools build allows easier porting to additional systems.
Previous make system still available to embedded users with Makefile.unx.
* The AES key expand functions that were used for AES-XTS with pre-expanded keys
now expand the decrypt keys in a different order. The order that decrypt keys
are stored and used by XTS_AES_128_dec_expanded_key() is reversed from
previous versions to be compatible with CBC and GCM key expansion. The
aes_keyexp_*() and XTS_AES_128_dec_expanded_key() functions should work the
same when paired together.
* Includes update for building on Mac OS X/darwin systems. Add --target=darwin
to ./configure step.
v2.10
* Added multi-buffer MD5 in the new hash API. Includes multi-binary capability,
no restriction on update length and other benefits of the CTX API.
v2.9
* New multi-buffer hash API. The new API brings the following new features to
multi-buffer hashes. The older API is still included but may be deprecated in
future releases.
- Multibinary functionality. Call one function and the appropriate
architecture-specific version is fixed up at runtime.
- No restriction on update length. Submitting an update block no longer has
to have length a multiple of the fundamental block size.
* New expanded key tests added for AES-XTS 128 and 256
v2.7
* New AVX2 versions for mb_md5 and mb_sha512 hashing code have been added.
v2.6
* Update buffer functionality added to mb_md5, mb_sha256 and mb_sha512 hashing
code. Requires API changes to current interface to specify job type and total
length of hash.
* New AVX2 versions for mb_sha1 and mb_sha256 hashing code have been added.
v2.5
* New feature for multi-buffer SHA-1, update buffer. mb_sha1 non-finalize jobs
can now be submitted by setting flags in job structure. Requires API changes
to current interface to specify job type and total length of hash.
v2.4
* Added new multi-buffer SHA-512: mb_sha512. SSE, AVX versions.
v2.3
* Added improved AES XTS versions.
v2.2
* Added new AVX versions of multi-buffer hashes
* Changed type in the interface struct for multi-buffer hashes
the len field in the following structures :JOB_SHA1,JOB_MD5,
JOB_SHA256 is now a 32-bit int.
v2.0
* Added AES XTS units aes_xts_128, aes_xts_256
v1.3
* Added new multi-buffer units for SHA-256 and MD5: mb_sha256, mb_md5.