forked from krzyzanowskim/ObjectivePGP
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
205 lines (173 loc) · 6.57 KB
/
CHANGELOG
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
Version 0.99.2
- Fix ECDH secret subkey binding signature generation. #195
Version 0.99.1
- Fix ED25119 signature calculation. #192
- Generate ECC keys. #190
- Support compression in siguature packet. #191
Version 0.99.0
- Elliptic-Curves support (RFC6637 https://datatracker.ietf.org/doc/html/rfc6637). #141
- Elliptic-curve Diffie–Hellman.
- Elliptic Curve Digital Signature Algorithm.
- Enabling encrypt-only algorithms to encrypt. #187
- Other fixes and improvements.
Version 0.17.0
- macOS arm64 support
- update dependencies
- Swift Package Manager support
- Available as XCFramework
Version 0.16.0
- Fixes detection whether message can be encrypted with a key. #115 #158
Version 0.15.0
- Fixes key expiration dates (again).
- Detect and reject malformed packets.
Version 0.14.0
- Improve decryption memory usage.
- Fixes key expiration dates.
Version 0.13.0
- Fixes issue where expirationData value was missing for expired keys. Fixes #120.
- Improves logging setup by respecting PGP_LOG_LEVEL setting.
- Updates cryptography engine.
Version 0.12.3
- No more NSException is returned. Check for error or or return status instead.
- Use NS_NOESCAPE for Objective-C and Swift.
Version 0.12.2
- Fixes multiple users keys certificates support. Fixes #113
Version 0.12.1
- By convention, the subkeys provide encryption services if flags doesn't specify otherwise.
Version 0.12.0
- Adds Elgamal support.
- Improves reading armored messages.
- API: Exposes primaryUser for the key.
Version 0.11.0
- Fixes signature verification bypass (CM-02-003)
- Fixes dearmoring ignores unknown characters (CM-02-004)
- Fixes armored header-footer bug (CM-02-005)
- Fixes handling of unexpected packets (CM-02-007)
- Fixes crash in `-[PGPKeyring importKey:fromPath:]`
Version 0.10.0
- Adds Symmetrically Encrypted Data Packet support. Fixes #91
- Adds multikey signatures.
- Adds Symmetric-Key Encrypted Session Key Packets support.
- Adds TwoFish cipher support.
- Adds ability to determine keys that a message has been encrypted.
- Adds support for custom OpenPGP CFB mode used in Symmetrically Encrypted Data Packets. Fixes #99
- Improves decryption and signed messages validation.
- Improves "gnu-dummy" GPG extension support.
- Fixes partial length packets calculations.
- Fixes reading armored messages without checksum.
- Fixes password protected DSA keys support. #106
- API: Refactor and simplyfy public API of `ObjectivePGP` due to internal improvements.
- API: PGPPartialKeyPublic -> PGPKeyTypePublic
- API: PGPPartialKeySecret -> PGPKeyTypeSecret
- API: Introduces PGPKeyring.
Version 0.9.5
- Methods that get keys as parameter are now class methods, +[ObjectivePGP ...]
- Adds decrypt:usingKeys:....
- Adds Blowfish cipher support.
- Adds user image attribute support.
- Improves verify calls to accept armored data.
Version 0.9.4
- Fixes generation subkeys with passphrase.
- Improves memory usage when reading messages.
Version 0.9.3
- Fixes public key equality checks.
- Ignores invalid/broken signature subpackets.
Version 0.9.2
- Fixes nullability and undefined behaviours issues.
- Fixes issue where subkey should be used to sign for some keys.
- Fixes packets equality issues.
- Improves gnu-dummy support.
- Improves ZIP compression support.
- Sets default key size for key generator to 3072 bits.
- Improves error handling.
Version 0.9.1
- Fixes subkeys generation.
- Adds support for embedded signatures.
- PGPArmor return String now.
Version 0.9
- Fixes keys management (import/export issues).
- Fixes instances equality.
- Fixes partial packets with zero body length.
- Improves objects copying (NSCopying for packets).
- Reverts NSSet collections to NSArray.
- Updates public API (cleanups).
- Updates tests.
- Updates documentations.
Version 0.8
- Adds public and private keys generation feature with PGPKeyGenerator
- Adds methods to import and remove key instance
- Adds expirationDate property to a key instance
- Improves subkeys handling
- Exports keys data without reusing imported raw data.
- Fixes edge cases of decryption data with password encrypted key
- Fixes exporting private macros
- Fixes packets equality checks
- Fixes signature verifying flow, return on fail
- Fixes parsing corrupted input data.
Version 0.7
- Fixes TripleDSA decryption.
- Fixes MPI memleak.
- Fixes reading certificate sym. algs.
- Improves DSA keys support.
- Improves signature subpackets.
- Apply OpenPGP errata #2270.
Version 0.6.2
- Avoids assertion failing to decrypt packet when signing
- Supports "critical bit"
Version 0.6.1
- Adds PGPKey.keyID property
- Adds Swift Playground with a sample Swift code
- Builds dynamic frameworks for iOS and macOS
- Builds ObjC and Swift modules
Version 0.6
- Update public API
- Update documentation
- Use modern Objective-C
- Annotate nullability
- Improve PGPKey in the way that the single key consists of two partial keys. (#44)
- Improve support for private and public key in the single file (#44, #49)
- Calculate incremental S2K hash to reduce memory overhead (#49)
- Support for gnu-dummy S2K (#53)
- Fixes buffer overrun in RSA
- Build Static Frameworks for iOS and macOS
- Assume that by convention, the top-level key provides signature services
- Drop external openssl dependency.
Version 0.5
- Improve BZip2 compression
- Fix exporting keys
- Fix decryption for some RSA keys
- minor improvements and fixes
- Extend library with One-Pass encryption
- Removed newline transformation in PGPLiteralPacket
- Partial Packet Length Support
- ZIP compression support
- Signature Verification: find the correct key by the issuerKeyID
- Harden Signature verification
- Support integrity protected status
Version 0.4.2
- Fix length header for some double-octet length
Version 0.4.0
- ObjectivePGP goes Open Source
Version 0.3.2
- CHANGE error handling for sign/verify methods
- FIX disable check for signing key while it can be public to verify.
Version 0.3.1
- NEW multiple keys for single encryption
- NEW error codes PGPErrorPassphraseRequired, PGPErrorPassphraseInvalid
- CHANGE export armored data with \n instead \r\n
- FIX decrypt message using key encrypted with password
- FIX handling armored data regarding newline
Version 0.3
- NEW encrypt for multiple recipients at once
- NEW decrypt with multiple recipients
- NEW read key from file without importing to keyring
- NEW import keys with or without duplicates
- NEW Support for V3 of signature packets
- NEW armv7s binary added
- IMPROVED overall error handling
- IMPROVED preferred key algorithm chooser
- FIX handle DSA keys for encryption
- FIX self certificate validation check
- FIX export multiple keys to single file
- FIX reading user id packet
- FIX other minor fixes