ecdsa
Pure Rust implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA) as specified in FIPS 186-4 (Digital Signature Standard), implemented generically over elliptic curves, providing RFC6979 deterministic signing support as well as randomized signatures and signature verification
0.17.0
206M downloads/mo
#489 most downloaded on crates.io
RustCrypto/signatures
What this package is like to depend on
Last release 1 months ago
02 Jul 2026
Release timing varies
gaps range from 9 days to 2 months
Nearly every release is documented
notes for 39 of 39 stable releases
24 versions withdrawn
withdrawn after publishing
8 years old
111 releases · first in 2018
19 releases in the last 12 months
see the full history below
Release timeline
111 releases · Oct 2018 to Jul 2026Releases
latest 60 of 111-
0.17.002 Jul 2026Release notes
Open source →Added
- DER support for
SignatureWithOid(#786) EcdsaCurvemarker trait (#787)- Recoverable
RandomizedPrehashSignerimpl forSigningKey(#878) - Implement
MultipartSigner/Verifier(#982) getrandomfeature (#1107)- Implement
crypto_common::Generatetrait forSigningKey(#1140) - Implement
HashonSignatureandVerifyingKey(#1309)
Changed
- Make
Signature::normalize_sinfallible (#780) - Use
NonZeroScalararguments tosign_prehashed(#794) - Upgrade to the 2024 edition; bump MSRV to 1.85 (#913)
- Rename
DigestPrimitivetoDigestAlgorithm(#996) - Bump
serdectdependency to v0.4 - new wire format for binary serializations (#1048) - Support new
signature::DigestSigner/VerifierAPI (#1064) - Bump
derto v0.8 (#1232) - Bump
digestto v0.11 (#1237) - Bump
sha2dependency to v0.11 (#1267) - Bump
spkito v0.8 (#1303) - Bump
signatureto v3 (#1321) - Move low-S normalization check into
verify_prehashed(#1379) - Bump
elliptic-curveto v0.14 (#1391) - Low-level RFC6979 signing functions are now infallible (#1395, #1411)
- Bump
rfc6979to v0.6 (#1404) - Move
Array*bounds toEcdsaCurve(#1408)
Removed
SignPrimitiveandVerifyPrimitivetraits (#793)signature::PrehashSignatureimplementation forSignature(#1007)VerifyingKey::recover*no longer performs signature verification (#1381)
Fixed
- DER support for
-
0.17.0-rc.2329 Jun 2026 pre-release -
0.17.0-rc.2223 Jun 2026 pre-releaseRelease notes
Open source →Release PR: RustCrypto/traits#2466
Also cuts an
ecdsav0.17.0-rc.22 prerelease -
0.17.0-rc.2123 Jun 2026 pre-release -
0.17.0-rc.2017 Jun 2026 pre-release -
0.17.0-rc.1910 Jun 2026 pre-releaseNothing published for this version
-
0.17.0-rc.1828 Apr 2026 pre-releaseNothing published for this version
-
0.17.0-rc.1715 Apr 2026 pre-releaseNothing published for this version
-
0.17.0-rc.1602 Feb 2026 pre-releaseNothing published for this version
-
0.17.0-rc.1502 Feb 2026 pre-releaseNothing published for this version
-
0.17.0-rc.1424 Jan 2026 pre-releaseNothing published for this version
-
0.17.0-rc.1320 Jan 2026 pre-releaseNothing published for this version
-
0.17.0-rc.1208 Jan 2026 pre-releaseNothing published for this version
-
0.17.0-rc.1104 Jan 2026 pre-releaseNothing published for this version
-
0.17.0-rc.1030 Dec 2025 pre-releaseNothing published for this version
-
0.17.0-rc.922 Nov 2025 pre-releaseNothing published for this version
-
0.17.0-rc.822 Oct 2025 pre-releaseNothing published for this version
-
0.17.0-rc.713 Sep 2025 pre-releaseNothing published for this version
-
0.17.0-rc.603 Sep 2025 pre-releaseNothing published for this version
-
0.17.0-rc.516 Jul 2025 pre-releaseNothing published for this version
-
0.17.0-rc.403 Jul 2025 pre-releaseNothing published for this version
-
0.17.0-rc.320 Jun 2025 pre-releaseNothing published for this version
-
0.17.0-rc.214 Jun 2025 pre-releaseNothing published for this version
-
0.17.0-rc.106 Jun 2025 pre-releaseNothing published for this version
-
0.17.0-rc.029 May 2025 pre-releaseNothing published for this version
-
0.17.0-pre.920 Sep 2024 pre-releaseNothing published for this version
-
0.17.0-pre.820 Sep 2024 pre-releaseNothing published for this version
-
0.17.0-pre.727 Jul 2024 pre-releaseNothing published for this version
-
0.17.0-pre.627 Jul 2024 pre-releaseNothing published for this version
-
0.17.0-pre.502 Feb 2024 pre-releaseNothing published for this version
-
0.17.0-pre.419 Jan 2024 pre-releaseNothing published for this version
-
0.17.0-pre.317 Jan 2024 pre-releaseNothing published for this version
-
0.17.0-pre.211 Jan 2024 pre-releaseNothing published for this version
-
0.17.0-pre.110 Jan 2024 pre-releaseNothing published for this version
-
0.17.0-pre.009 Jan 2024 pre-releaseNothing published for this version
-
0.16.916 Nov 2023 -
0.16.821 Jul 2023Release notes
Open source →Added
hazmat::{sign_prehashed, verify_prehashed}(#731)
Changed
- Refactor
Signatureconstructors and improve docs (#730)
-
0.16.711 May 2023 -
0.16.610 Apr 2023 -
0.16.509 Apr 2023 -
0.16.405 Apr 2023 -
0.16.305 Apr 2023 -
0.16.228 Mar 2023 -
0.16.108 Mar 2023 -
0.16.002 Mar 2023 -
0.16.0-rc.028 Feb 2023 pre-releaseNothing published for this version
-
0.16.0-pre.103 Feb 2023 pre-releaseNothing published for this version
-
0.16.0-pre.001 Feb 2023 pre-releaseNothing published for this version
-
0.15.123 Jan 2023 -
0.15.015 Jan 2023Release notes
Open source →Added
DigestPrimitive::Digestnow has bounds that work with RFC6979 (#568)*Signer/*Verifierimpls forder::Signature(#569)VerifyingKeyrecovery support (#576)- Trial recovery support (#580)
Changed
- Signature now internally structured with
randscomponents (#565) SigningKey::verifying_keynow returns a reference (#567)- Refactor
prehash_to_field_bytestobits2fieldfree function (#574) - Rename
signfeature tosigning(#610) - Rename
verifyfeature toverifyingfeatures (#610) - Bump
signaturecrate dependency to v2.0 (#614)
-
0.15.0-rc.108 Jan 2023 pre-releaseNothing published for this version
-
0.15.0-rc.004 Jan 2023 pre-releaseNothing published for this version
-
0.15.0-pre.111 Dec 2022 pre-releaseNothing published for this version
-
0.15.0-pre.006 Nov 2022 pre-releaseNothing published for this version
-
0.14.828 Sep 2022Release notes
Open source →Added
- Impl
From<SigningKey>forSecretKey(#548)
Fixed
- Prehash must receive zero-pads on left (#547)
- Impl
-
0.14.715 Sep 2022 -
0.14.613 Sep 2022 -
0.14.507 Sep 2022 -
0.14.416 Aug 2022 -
0.14.327 Jun 2022 withdrawnRelease notes
Open source →