27 KiB
27 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.13.8 (2023-11-18)
Changed
SecretKey::from_slicenow allows >=24-bytes (#1412)
0.13.7 (2023-11-15)
Added
0.13.6 (2023-10-02)
Fixed
- Minimum supported
hkdfversion is v0.12.1 (#1353) - Minimum supported
serde_jsonversion forjwkfeature is v1.0.47 (#1354) - Minimum supported
tapversion forbitsfeature is v1.0.1 (#1355)
0.13.5 (2023-05-19)
Changed
- Faster
PublicKey::from_encoded_point(#1310)
Fixed
alloc+arithmeticfeatures w/osec1feature (#1301)
0.13.4 (2023-04-08)
Changed
- Bump
hex-literalto v0.4 (#1295)
Fixed
0.13.3 (2023-04-04)
Added
- Impl
AssociatedAlgorithmIdentifierforSecretKeyandPublicKey(#1286)
Changed
Fixed
FieldBytesEncodingprovided impl (#1287)
0.13.2 (2023-03-08)
Added
0.13.1 (2023-03-01)
Added
SecretKey::from_sliceshort input support (#1256)
0.13.0 (2023-02-28)
Added
PublicKey::to_sec1_bytes(#1102)- Forward
stdfeature tosec1dependency (#1131) NonIdentitywrapper type (#1176)- Impl
serdetraits forNonZeroScalar(#1178) MulByGeneratortrait (#1198)NonZeroScalar::invert_vartime(#1207)BlindedScalartype (#1208)point::Doubletrait (#1218)FieldBytesEncodingtrait (#1235)Invert::invert_vartime(#1239)
Changed
- Allow bigger
c1constant inOsswuMapParams(#1024) - Rename
Curve::UInt=>Curve::Uint(#1191) - Use weak feature activation (#1192, #1194)
- Consolidate
CurveArithmetictrait (#1196) - Rename
SecretKey::to_pem=>::to_sec1_pem(#1202) - Rename
ScalarCoretoScalarPrimitive(#1203) - Use
CryptoRngCoretrait (#1206) - Refactor field element decoding/encoding (#1220)
- Update VOPRF identifier type (#1175)
- Rename
SecretKey::as_scalar_core=>::as_scalar_primitive(#1228) - Rename
Reduce::from_bytes_reduced=>::reduce_bytes(#1225, #1229) - Consolidate
AffineCoordinatestrait (#1237) - Allow multiple
dsts in thehash2curveAPI (#1238) - Have
serdefeature activatepkcs8(#1245) - Dependency upgrades:
Removed
impl_field_element!macro (#1165)- Direct
dercrate dependency (#1195) AffineArithmetic,ProjectiveArithmetic,ScalarArithmetictraits (#1196)- Toplevel re-exports except for
AffinePoint,ProjectivePoint, andScalar(#1223) Reducemethods (#1225)- Blanket impl for
Invert(#1242)
0.12.3 (2022-08-01)
Added
- Aliases for SEC1 compressed/uncompressed points (#1067)
Fixed
arithmetic+serdefeature combo (#1066)
0.12.2 (2022-07-01)
Changed
- Bump
crypto-bigintto v0.4.8 (#1039)
0.12.1 (2022-06-12)
Added
Changed
0.12.0 (2022-05-08)
Added
ecdh::SharedSecret::extractHKDF helper (#1007)
Changed
- Bump
digestdependency to v0.10 (#883, #904) - Make
NonZeroScalar::invertinfallible (#894) ToCompactEncodedPointnow returnsCtOption(#895)- Move
hash2fieldintohash2curvemodule (#903) - Bump
ffandgroupdependencies to v0.12 (#994) - Use
serdectcrate (#996) - Replace
AlgorithmParamterswithAssociatedOid(#1001) - Bump
crypto-bigintdependency to v0.4 (#1005) - Bump
derdependency to v0.6 (#1006) - Bump
pkcs8dependency to v0.9 (#1006) - Bump
sec1dependency to v0.3 (#1006) - Bump
pem-rfc7468dependency to v0.6 (#1009)
Removed
Zeroizeimpl fromecdh::SharedSecret(#978)
0.11.12 (2022-01-30)
Changed
- Disable
bitsfeature on docs.rs due to nightly breakage (#927)
0.11.11 (2022-01-30)
- No changes; triggering a docs.rs rebuild
0.11.10 (2022-01-27)
Changed
0.11.9 (2022-01-17) [YANKED]
Changed
- Activate
bits,hash2curve, andvoprffeatures on docs.rs (#891)
0.11.8 (2022-01-15) [YANKED]
Added
- Impl
ZeroizeOnDropon appropriate items (#884)
Changed
0.11.7 (2022-01-14) [YANKED]
Added
- Initial hash-to-field support (#854, #855, #871, #874)
- Initial hash-to-curve support (#865, #876)
- Impl
MulforNonZeroScalar*NonZeroScalar(#857, #862) Reduce::from_*e_digest_reduced(#869)VoprfParameterstrait (#878)
0.11.6 (2021-12-20)
Added
- Type conversions chart (#852)
0.11.5 (2021-12-05)
Changed
- Revised
LinearCombinationtrait (#835)
0.11.4 (2021-12-04) [YANKED]
Added
LinearCombinationtrait (#832)
0.11.3 (2021-12-03) [YANKED]
Added
ReduceNonZerotrait (#827)
0.11.2 (2021-12-03) [YANKED]
Changed
- Bump
pem-rfc7468dependency to v0.3 (#825)
0.11.1 (2021-11-21) [YANKED]
Added
NonZeroScalar::from_uint(#822)
0.11.0 (2021-11-19) [YANKED]
Added
ScalarCore<C>type (#732)PrimeCurveArithmetictrait (#739)- SEC1 private key support (#762)
Reducetrait (#768)- Re-export
ffandPrimeField(#796) Encodingbound onCurve::UInt(#806)scalar::IsHightrait (#814, #815)Negimpl forNonZeroScalar<C>(#816)AffineXCoordinatetrait (#817)serdesupport for scalar andPublicKeytypes (#818)
Changed
- Bump
ff+groupto v0.11 (#730) - Make
SecretKey::to_jwk_stringself-zeroizing (#742) - Use
sec1crate'sEncodedPoint(#771) - Make
FromEncodedPointreturn aCtOption(#782) - Rust 2021 edition upgrade; MSRV to 1.56 (#795)
- Bump
crypto-bigintdependency to v0.3 (#807) - Use
sec1crate forpkcs8support (#809) - Bump
spkidependency to v0.5 release (#810) NonZeroScalaris now bounded onScalarArithmeticinstead ofProjectiveArithmetic(#812)
Fixed
Zeroizeimpl onNonZeroScalar(#785)
0.10.6 (2021-08-23)
Changed
- Bump
crypto-bigintdependency to v0.2.4 (#710)
0.10.5 (2021-07-20)
Changed
- Pin
zeroizedependency to v1.4 andsubtleto v2.4 (#689)
0.10.4 (2021-07-12)
Added
- Re-export
rand_core(#683)
0.10.3 (2021-06-21)
Changed
- Bump
crypto-bigintto v0.2.1 (#673)
0.10.2 (2021-06-14) [YANKED]
Added
ConstantTimeEqimpl forNonZeroScalar(#669)
0.10.1 (2021-06-09) [YANKED]
Added
- Explicit
Copybounds onPublicKey(#667)
0.10.0 (2021-06-07) [YANKED]
Added
ScalarBytes::from_uint(#651)dev::ScalarBytes(#652)ScalarArithmetictrait (#654)AffineArithmetictrait (#658)PointCompactiontrait and SEC1 tag support (#659)
Changed
- Bump
ffandgroupto v0.10; MSRV 1.51+ (#643) - Merge
CurveandOrdertraits (#644) - Use
crypto-bigintto representCurve::ORDER(#645) - Source
FieldSize<C>fromC::UInttype (#646) - Impl
ScalarBytes<C>usingC::UInt(#647) - Make
ScalarBytes<C>theSecretKey<C>internal repr (#649) - Bump
crypto-bigintto v0.2 (#662) - Bump
pkcs8to v0.7 (#662)
Removed
utilmodule (#648)
0.9.12 (2021-05-18)
Added
OrdandPartialOrdimpls onPublicKey(#637)
0.9.11 (2021-04-21)
Added
- Impl
subtletraits onScalarBytes<C>(#612)
Fixed
- Always re-export ScalarBytes (#613)
0.9.10 (2021-04-21)
Added
ScalarBytestype (#610)
0.9.9 (2021-04-21) [YANKED]
Added
Order::is_scalar_repr_in_range(#608)
0.9.8 (2021-04-21)
Added
- Define
OrderforMockCurve(#606)
0.9.7 (2021-04-21)
Added
Ordertrait (#603)
Fixed
- Warnings from
pkcs8imports (#604)
0.9.6 (2021-03-22)
Changed
- Bump
pkcs8dependency to v0.6 (#585)
0.9.5 (2021-03-17) [YANKED]
Added
Changed
0.9.4 (2021-02-18) [YANKED]
Fixed
- Breakage related to the
pkcs8v0.5.1 crate (#556)
0.9.3 (2021-02-16) [YANKED]
Changed
- Bump
pkcs8dependency to v0.5.0 (#549)
Fixed
- Workaround for bitvecto-rs/bitvec#105 (#550)
0.9.2 (2021-02-12) [YANKED]
Changed
- Flatten
weierstrassmodule (#542)
0.9.1 (2021-02-11) [YANKED]
Removed
BitViewre-export (#540)
0.9.0 (2021-02-10) [YANKED]
Added
- JWK support (#483)
sec1::ValidatePublicKeytrait (#485)hazmatcrate feature (#487)Resultalias (#534)
Changed
- Bump
ffandgroupcrates to v0.9 (#452) - Simplify ECDH trait bounds (#475)
- Flatten API (#487)
- Bump
pkcs8crate dependency to v0.4 (#493)
Removed
0.8.5 (2021-02-17)
Fixed
- Workaround for bitvecto-rs/bitvec#105 (#553)
0.8.4 (2020-12-23)
Fixed
- Rust
nightlyregression (#432)
0.8.3 (2020-12-22)
Fixed
- Regression in combination of
pem+zeroizefeatures (#429)
0.8.2 (2020-12-22) [YANKED]
Added
- Low-level ECDH API (#418)
devmodule (#419)- Impl
pkcs8::ToPrivateKeyforSecretKey<C>(#423) - Impl
pkcs8::ToPublicKeyforPublicKey<C>(#427)
Changed
- Bump
subtledependency to 2.4.0 (#414) - Bump
pkcs8dependency to v0.3.3 (#425) - Use
dercrate to parseSecretKey(#422)
Fixed
- Make
PublicKey::from_encoded_pointgo throughPublicKey::from_affine(#416)
0.8.1 (2020-12-16) [YANKED]
Fixed
- Builds on Rust
nightlycompiler (#412)
0.8.0 (2020-12-16) [YANKED]
Added
- Impl
subtle::ConditionallySelectableforsec1::EncodedPoint(#409) sec1::EncodedPoint::identity()method (#408)sec1::Coordinates::tagmethod (#407)- Support for SEC1 identity encoding (#401)
Changed
- Bump
pkcs8crate dependency to v0.3 (#405) - Ensure
PublicKey<C>is not the identity point (#404) - Have
SecretKey::secret_scalarreturnNonZeroScalar(#402)
Removed
SecretKey::secret_value(#403)
0.7.1 (2020-12-07)
Changed
- Have
SecretKey::secret_valuealways returnNonZeroScalar(#390)
0.7.0 (2020-12-06) [YANKED]
Added
- Impl
pkcs8::FromPublicKeyforPublicKey<C>(#385) - Impl
pkcs8::FromPrivateKeytrait forSecretKey<C>(#381, #383) - PKCS#8 PEM support (#382)
SecretKey::secret_value()method (#375)PublicKey<C>type (#363, #366)
Changed
- Rename
PublicKey::from_bytes()to::from_sec1_bytes()(#376) sec1::EncodedPointusesOptioninstead ofsubtle::CtOption(#367)- Bump
const-oidto v0.3; MSRV 1.46+ (#365, #381)
Fixed
ecdhrustdoc (#364)
0.6.6 (2020-10-08)
Added
- Derive
CloneonSecretBytes([#330])
0.6.5 (2020-10-08)
Fixed
- Work around
nightly-2020-10-06breakage (#328)
0.6.4 (2020-10-08)
Added
- Impl
From<SecretBytes<C>>forFieldBytes<C>(#326)
0.6.3 (2020-10-08)
Added
SecretBytesnewtype (#324)
0.6.2 (2020-09-24)
Added
sec1::EncodedPoint::to_untagged_bytes()method (#312)
0.6.1 (2020-09-21)
Fixed
sec1::EncodedPoint::decompress(#309)
0.6.0 (2020-09-11) [YANKED]
Added
arithmeticfeature (#293)- Generic curve/field arithmetic using the
ffandgroupcrates (#287, #291, #292) sec1::Coordinates(#286)weierstrass::point::Compressiontrait (#283, #300)- Arithmetic helper functions (#281)
digestfeature andFromDigesttrait (#279)- impl
DerefforNonZeroScalar(#278) - Conditionally impl
InvertforNonZeroScalar(#277) NonZeroScalar::to_bytes(#276)EncodedPoint::decompress(#275)sec1::Tag(#270)weierstrass::point::Decompresstrait (#266)allocfeature +EncodedPoint::to_bytes()(#265)
Changed
- Renamed
Arithmetictrait topoint::ProjectiveArithmetic(#300) - Replaced
Arithmetic::ScalarandArithmetic::AffinePointwithScalar<C>andAffinePoint<C>(#300) - Made
SecretKey<C>inner type generic (#297) - Renamed
ElementBytes<C>toFieldBytes<C>(#296) - MSRV 1.44 (#292)
- Minimum
subtleversion now v2.3 (#290) - Renamed
Curve::ElementSizeto::FieldSize(#282) - Refactor
PublicKeyintosec1::EncodedPoint(#264)
Removed
0.5.0 (2020-08-10)
Added
Arithmetictrait (#219)Generatetrait (#220, #226)- Toplevel
Curvetrait (#223) Inverttrait (#228)FromPublicKeytrait (#229, #248)- Re-export
zeroize(#233) - OID support (#240, #245)
NonZeroScalartype (#241)Generatortrait (#241)weierstrass::PublicKey::compressmethod (#243)- Derive
CloneonSecretKey(#244) - Generic Elliptic Curve Diffie-Hellman support (#251)
Changed
- Moved repo to https://github.com/RustCrypto/traits (#213)
- Rename
ScalarBytestoElementBytes(#246) - Rename
CompressedCurvePoint/UncompressedCurvePointtoCompressedPoint/UncompressedPoint
0.4.0 (2020-06-04)
Changed
- Bump
generic-arraydependency from v0.12 to v0.14
0.3.0 (2020-01-15)
Added
Scalarstruct type
Changed
- Repository moved to https://github.com/RustCrypto/elliptic-curves
Removed
- Curve definitions/arithmetic extracted out into per-curve crates
0.2.0 (2019-12-11)
Added
secp256r1(P-256) point compression and decompression
Changed
- Bump MSRV to 1.37
0.1.0 (2019-12-06)
- Initial release