0.8.3 - Fix SHA3 padding. - Fix Carthage builds. 0.8.2 - Fix SHA3 partial updates calculations. - Make ChaCha20 processing faster again. 0.8.1 - Adds Data(hex:) helper. - Adds HKDF (HMAC-based Extract-and-Expand Key Derivation Function) - Prevent ChaCha overflow error 0.8.0 - Adds SHA3 Keccak variants - Adds String.bytes helper to convert String to array of bytes - Improves AES performance - Speeds up compilation times with Swift 4 - Fixes: Blowfish minimum key size is 5 - Removes Ciphers "iv" parameter (value moved to BlockMode) - BlockMode uses associated value for IV value where apply e.g. .CBC(iv: ivbytes) - Refactors internal hacks no longer needed with Swift 4 0.7.2 - Adds Padding enum (.pkcs5, .pkcs7, .noPadding, .zeroPadding) - Removes Generics from the public API. - Slightly improves SHA1, SHA2, SHA3 performance. - Update SPM configuration for Swift 4 0.7.1 - Swift 4.0 compatibility release 0.7.0 - Swift 3.2 compatibility release 0.6.9 - Fixed padding issue where padding was not properly added in CTR mode. - Fixed thrown error on decrypting empty string, - Fixed CI build script. - Added String.encryptToBase64() 0.6.8 - Speed up MD5() - Faster Array(hex:) - Improve AES performance - Fix tvOS bitcode - Fix Blowfish CFB, OFB, CTR block modes. - Fix Blowfish for 32-bit arch. - Fix ChaCha20 preconditions 0.6.7 - Release for Xcode 8.2 - Fix playground example 0.6.6 - Rework ChaCha20 - Fix Poly1305 0.6.5 - Significant performance improvement when processing lange amount of data. - Degeneric functions and change Sequence -> Collection in generic constraints. 0.6.4 - More performance improvements - Add convenient Digest.sha2(bytes:variant) - New: Blowfish cipher 0.6.3 - Hotfix release - Fixes bitPadding() that breaks Digests calculations, introduced in 0.6.2 0.6.2 - SHA performance improvements by using less Swift in Swift - Fix public access to all digests classes 0.6.1 - Update tests. - New: RandomBytesSequence urandom values on Linux. - Throw appropriate error for AES with invalid input where padding is needed. - Improve performance, especially to SHA-1, SHA-2, PBKDF and related. - Set deployment targets for all platform. Fixes Carthage builds. - New: SHA-3 implementation (request #291) - SHA-1 conforms to Updatable protocol and may be calculated incrementally. - SHA-2 conforms to Updatable protocol and may be calculated incrementally. 0.6.0 - Remove bridge() workaround for Linux (not needed) - make MD5() public - Update README - Convenience HMAC initializer for String input 0.6.0-beta2 - SHA-2 fix #319 - HashProtocol -> Digest and refactor - MD5 conforms to Updatable protocol and may be calculated incrementally - Cipher protocol accepts Collection input now 0.6.0-beta1 - Swift 3 compatibility - Multiplatform, Single-scheme Xcode Project - Swift Package Manager fully supported (build and tests) - Improved Linux support - Travis configuration added - Public interface tests added - enum Authenticator -> protocol Authenticator - CRC -> Checksum - String.encrypt() returns hex string instead of Array - removed String.decrypt() - enum Hash -> struct Hash - Convenience initializer of Array of bytes with Hex string. Array(hex: "0xb1b1b2b2") - Fix reusability of ChaCha20 instance - Replace optional initializers with throwable initializers - Allow to set initial counter explicitly (AES block modes). RandomAccessCryptor.seek() 0.5.2 - Fix AES-CTR incremental updates. #287 - Fixed PBKDF2 tests. #295 - Fixed assertion check in PKCS7. #288 - Updatable protocol accept SequenceType in place of Array 0.5.1 - Fixed PBKDF2 not taking key length parameter into account - Switch to Array<> in code 0.5 - Added PBKDF1 https://tools.ietf.org/html/rfc2898#section-5.1 - Added PBKDF2 https://tools.ietf.org/html/rfc2898#section-5.2 - UpdatableCryptor protocol allows incremental encryption stream of data - CryptoSwift.playground - Docs update - Added reflection control to CRC-32 (Luís Silva) - Fix AES.init() (Pascal Pfiffner) 0.4.1 - fix NoPadding() 0.4 - Padding setup is now part of cipher constructor - Added PBKDF2 http://tools.ietf.org/html/rfc2898#section-5.2 - Add BlockCipher protocol - Rename Cipher -> CipherProtocol - Remove build-frameworks.sh script - Keep sensitive data in memory with SecureBytes - Allows direct use of HMAC and Poly1305 - README update - Fix missing Foundation import on Linux 0.3.1 - replace deprecated Bit with new enum. 0.3 - Swift 2.2 support - use generators for cipher block modes should reduce memory overload. - add OFB block mode - add PCBC block mode - String.decryptBase64ToString to decrypt Base64 encoded strings - broke up complicated expressions which were taking ages to compile 0.2.3 - enable bitcode setting for Debug on an Apple TV - faster compilation times - improve padding functions 0.2.2 - Fix ChaCha20 cipher - Replace for(;;) with for-in - Workaround for "NSString are not yet implicitly convertible to String" on Linux 0.2.1 - Fix linux build - re-add umbrella header 0.2 - Rabbit cipher (RFC4503) - Linux Swift support - Swift Package Manager support - tvOS support - Add optional seed to CRC - Add umbrella header (CryptoSwift.h) - Fix AES in CTR mode - Fix no padding support for CTR and CFB block modes - Fix access to AES.Error and ChaCha20.Error 0.1.1 - Fix Cococapods package (missing Foundation integration) 0.1.0 - Major performance improvements. - Transition from Optionals to throw error. - Replace enum Cipher with protocol for ciphers. - Added CRC16 - Fixed AES CFB decryption - Drop internal "Foundation" dependency, nonetheless it is supported as usual. 0.0.16 - Critical fix for private "md5" selector issue (#135) 0.0.15 - Fix 32-bit CTR block mode - Carthage support update - Mark as App-Extension-Safe API 0.0.14 - hexString -> toHextString() #105 - CTR (Counter mode) - Hex string is lowercase now - Carthage support - Tests update - Swift 2.0 support - overall update