1# Changelog
2All notable changes to this project will be documented in this file.
3
4The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
7## 0.10.2 (2023-04-04)
8### Changed
9- Bump `spki` to v0.7.1 ([#981])
10
11[#981]: https://github.com/RustCrypto/formats/pull/981
12
13## 0.10.1 (2023-03-05)
14### Added
15- `sha1-insecure` feature ([#913])
16
17[#913]: https://github.com/RustCrypto/formats/pull/913
18
19## 0.10.0 (2023-02-26) [YANKED]
20### Changed
21- Use blanket impls for `Decode*` traits ([#785])
22- Bump `der` dependency to v0.7 ([#899])
23- Bump `spki` dependency to v0.7 ([#900])
24- Bump `pkcs5` dependency to v0.7 ([#901])
25
26[#785]: https://github.com/RustCrypto/formats/pull/785
27[#899]: https://github.com/RustCrypto/formats/pull/899
28[#900]: https://github.com/RustCrypto/formats/pull/900
29[#901]: https://github.com/RustCrypto/formats/pull/901
30
31## 0.9.0 (2022-05-08)
32### Added
33- Error conversion support to `pkcs8::spki::Error` ([#335])
34- Re-export `AssociatedOid` ([#645])
35
36### Changed
37- Use `finish_non_exhaustive` in `Debug` impls ([#245])
38- Replace `PrivateKeyDocument` with `der::SecretDocument` ([#571])
39- Bump `der` to v0.6 ([#653])
40- Bump `spki` to v0.6 ([#654])
41- Bump `pkcs5` to v0.5 ([#655])
42
43### Removed
44- `PrivateKeyDocument` ([#571])
45
46[#245]: https://github.com/RustCrypto/formats/pull/245
47[#335]: https://github.com/RustCrypto/formats/pull/335
48[#571]: https://github.com/RustCrypto/formats/pull/571
49[#645]: https://github.com/RustCrypto/formats/pull/645
50[#653]: https://github.com/RustCrypto/formats/pull/653
51[#654]: https://github.com/RustCrypto/formats/pull/654
52[#655]: https://github.com/RustCrypto/formats/pull/655
53
54## 0.8.0 (2021-11-16)
55### Added
56- Re-export `spki` crate ([#210])
57
58### Changed
59- Replace usages of `expect` with fallible methods ([#108])
60- Impl `From*Key`/`To*Key` traits on `Document` types ([#110])
61- Rename `From/ToPrivateKey` => `DecodePrivateKey`/`EncodePrivateKey` ([#121])
62- Rust 2021 edition upgrade; MSRV 1.56 ([#136])
63- Use `der::Document` to impl `*PrivateKeyDocument` ([#140])
64- Rename `Error::Crypto` => `Error::EncryptedPrivateKey` ([#213], [#214])
65- Bump `der` dependency to v0.5 ([#222])
66- Bump `spki` dependency to v0.5 ([#223])
67- Bump `pkcs5` dependency to v0.4 ([#224])
68- Replace `from_pkcs8_private_key_info` with `TryFrom` ([#230])
69
70### Removed
71- `*_with_le` PEM encoding methods ([#109])
72- PKCS#1 support; moved to `pkcs1` crate ([#124])
73- I/O related errors from key format crates ([#158])
74- `der::pem` export ([#211])
75
76[#108]: https://github.com/RustCrypto/formats/pull/108
77[#109]: https://github.com/RustCrypto/formats/pull/109
78[#110]: https://github.com/RustCrypto/formats/pull/110
79[#121]: https://github.com/RustCrypto/formats/pull/121
80[#124]: https://github.com/RustCrypto/formats/pull/124
81[#136]: https://github.com/RustCrypto/formats/pull/136
82[#140]: https://github.com/RustCrypto/formats/pull/140
83[#158]: https://github.com/RustCrypto/formats/pull/158
84[#210]: https://github.com/RustCrypto/formats/pull/210
85[#211]: https://github.com/RustCrypto/formats/pull/211
86[#213]: https://github.com/RustCrypto/formats/pull/213
87[#214]: https://github.com/RustCrypto/formats/pull/214
88[#222]: https://github.com/RustCrypto/formats/pull/222
89[#223]: https://github.com/RustCrypto/formats/pull/223
90[#224]: https://github.com/RustCrypto/formats/pull/224
91[#230]: https://github.com/RustCrypto/formats/pull/230
92
93## 0.7.6 (2021-09-14)
94### Added
95- `3des` and `des-insecure` features
96- `sha1` feature
97- Support for AES-192-CBC
98
99### Changed
100- Moved to `formats` repo ([#2])
101
102[#2]: https://github.com/RustCrypto/formats/pull/2
103
104## 0.7.5 (2021-07-26)
105### Added
106- Support for customizing PEM `LineEnding`
107
108### Changed
109- Bump `pem-rfc7468` dependency to v0.2
110
111## 0.7.4 (2021-07-25)
112### Added
113- PKCS#1 support
114
115## 0.7.3 (2021-07-24)
116### Changed
117- Use `pem-rfc7468` crate
118
119## 0.7.2 (2021-07-20)
120### Added
121- `Error::ParametersMalformed` variant
122
123## 0.7.1 (2021-07-20)
124### Added
125- `Error::KeyMalformed` variant
126
127## 0.7.0 (2021-06-07)
128### Added
129- ASN.1 error improvements
130
131### Changed
132- Merge `OneAsymmetricKey` into `PrivateKeyInfo`
133- Use scrypt as the default PBES2 KDF
134- Return `Result`(s) when encoding
135- Bump `der` to v0.4
136- Bump `spki` to v0.4
137- Bump `pkcs5` to v0.3
138
139## 0.6.1 (2021-05-24)
140### Added
141- Support for RFC5958's `OneAsymmetricKey`
142
143### Changed
144- Bump `der` to v0.3.5
145
146## 0.6.0 (2021-03-22)
147### Changed
148- Bump `der` dependency to v0.3
149- Bump `spki` dependency to v0.3
150- Bump `pkcs5` dependency to v0.2
151
152## 0.5.5 (2021-03-17)
153### Changed
154- Bump `base64ct` dependency to v1.0
155
156## 0.5.4 (2021-02-24)
157### Added
158- Encryption helper methods for `FromPrivateKey`/`ToPrivateKey`
159
160## 0.5.3 (2021-02-23)
161### Added
162- Support for decrypting/encrypting `EncryptedPrivateKeyInfo`
163- PEM support for `EncryptedPrivateKeyInfo`
164- `Error::Crypto` variant
165
166## 0.5.2 (2021-02-20)
167### Changed
168- Use `pkcs5` crate
169
170## 0.5.1 (2021-02-18) [YANKED]
171### Added
172- `pkcs5` feature
173
174### Changed
175- Bump `spki` dependency to v0.2.0
176
177## 0.5.0 (2021-02-16) [YANKED]
178### Added
179- Initial `EncryptedPrivateKeyInfo` support
180
181### Changed
182- Extract SPKI-related types into the `spki` crate
183
184## 0.4.1 (2021-02-01)
185### Changed
186- Bump `basec4ct` dependency to v0.2
187
188## 0.4.0 (2021-01-26)
189### Changed
190- Bump `der` crate dependency to v0.2
191- Use `base64ct` v0.1 for PEM encoding
192
193## 0.3.3 (2020-12-21)
194### Changed
195- Use `der` crate for decoding/encoding ASN.1 DER
196
197## 0.3.2 (2020-12-16)
198### Added
199- `AlgorithmIdentifier::parameters_oid` method
200
201## 0.3.1 (2020-12-16)
202### Changed
203- Bump `const-oid` dependency to v0.4
204
205## 0.3.0 (2020-12-16) [YANKED]
206### Added
207- `AlgorithmParameters` enum
208
209## 0.2.2 (2020-12-14)
210### Fixed
211- Decoding/encoding support for Ed25519 keys
212
213## 0.2.1 (2020-12-14)
214### Added
215- rustdoc improvements
216
217## 0.2.0 (2020-12-14)
218### Added
219- File writing methods for public/private keys
220- Methods for loading `*Document` types from files
221- DER encoding support
222- PEM encoding support
223- `ToPrivateKey`/`ToPublicKey` traits
224
225### Changed
226- `Error` enum
227- Rename `load_*_file` methods to `read_*_file`
228
229## 0.1.1 (2020-12-06)
230### Added
231- Helper methods to load keys from the local filesystem
232
233## 0.1.0 (2020-12-05)
234- Initial release
235