PackageTrack
Sign in Get early access

crypto

Implementations of SHA, MD5, and HMAC cryptographic functions.

3.0.7 1000K downloads/mo #7 most downloaded on pub.dev dart-lang/core

What this package is like to depend on

Last release 9 months ago

04 Nov 2025

Release timing varies

gaps range from 3 weeks to 1.3 years

Some releases are documented

notes for 28 of 78 stable releases

Nothing withdrawn

no release was ever pulled

13 years old

79 releases · first in 2013

1 release in the last 12 months

see the full history below

Release timeline

79 releases · May 2013 to Nov 2025
2014 2016 2018 2020 2022 2024 2026
Release Pre-release

Releases

latest 60 of 79
  1. 3.0.7 04 Nov 2025
    Release notes
    • Run dart format with the new style.
    • Performance improvements.
    • Updated web conditional import to use js_interop to support WebAssembly.
    Open source →
    Release notes
    • Run dart format with the new style.
    • Performance improvements.
    • Updated web conditional import to use js_interop to support WebAssembly.
    Open source →
  2. 3.0.6 16 Oct 2024
    Release notes
    • Move to dart-lang/core monorepo.
    Open source →
  3. 3.0.5 15 Aug 2024
    Release notes
    • Revert switch to enable fast "sinks" on Wasm because it breaks dart2js with server mode.
    Open source →
  4. 3.0.4 13 Aug 2024
    Release notes
    • Fix WebAssembly support.
    • Require Dart 3.4
    Open source →
  5. 3.0.3 04 May 2023
    Release notes
    • Require Dart 2.19.0.
    • Add topics to pubspec.yaml.
    Open source →
  6. 3.0.2 27 Apr 2022
    Release notes
    • Require Dart 2.14.0.
    • Fix bug calculating hashes for content larger than 512MB when compiled to JS.
    Open source →
  7. 3.0.1 01 Apr 2021
    Release notes
    • Fix doc links in README.
    Open source →
  8. 3.0.0 02 Feb 2021
    Release notes
    • Stable release for null safety.
    • Adds SHA-2 512/224 and SHA-2 512/256 from FIPS 180-4
    • Removes newInstance instance members on some classes and updates documentation.
    Open source →
  9. 3.0.0-nullsafety.0 30 Dec 2020 pre-release

    Nothing published for this version

  10. 2.1.5 20 May 2020
    Release notes
    • Improve example and package description to address package site maintenance suggestions.
    Open source →
  11. 2.1.4 06 Dec 2019
    Release notes
    • BugFix: padding was incorrect for some SHA-512/328.
    Open source →
  12. 2.1.3 10 Sep 2019
    Release notes
    • Security vulnerability: Fixed constant-time comparison in Digest.
    Open source →
  13. 2.1.2 20 Aug 2019
    Release notes
    • Fix bug in SHA-2 384/512 blocksize.
      • Added HMAC-SHA-2 test vectors
    Open source →
  14. 2.1.1 06 Aug 2019
    Release notes
    • Added a workaround for a bug in DDC (used in build_web_compilers 1.x). This bug is not present in DDK (used in build_web_compilers 2.x).
    Open source →
  15. 2.1.1+1 06 Aug 2019
    Release notes
    • Bump version number for publish mishap (spare file uploaded with pub publish).
    Open source →
  16. 2.1.0 05 Aug 2019
    Release notes
    • Added SHA384, and SHA512
      • Add Sha224 + Refactor
      • Support 32bit and 64bit operations for SHA384/51
      • Add conditional imports
      • De-listify 32bit allocations
      • Add sha monte tests for 224,256,384, and 512
    Open source →
  17. 2.0.6 13 Jul 2018

    Nothing published for this version

  18. 2.0.5 15 Jun 2018
    Release notes
    • Changed the max message size instead to 0x3ffffffffffff, which is the largest portable value for both JS and the Dart VM.
    Open source →
  19. 2.0.3 03 May 2018
    Release notes
    • Move to package:web.
    • Require Dart 3.5
    Open source →
    Release notes
    • Updated SDK version to 2.0.0-dev.17.0
    Open source →
  20. 2.0.2 19 Jul 2017
    Release notes
    • Prepare HashSink implementation for limiting integers to 64 bits in Dart language.
    Open source →
  21. 2.0.2+1 19 Sep 2017
    Release notes
    • Fix SDK constraint.
    Open source →
  22. 2.0.1 03 Jun 2016
    Release notes
    • Support convert 2.0.0.
    Open source →
  23. 2.0.0 03 Jun 2016
    Release notes

    Note: There are no APIs in 2.0.0 that weren't also in 0.9.2. Packages that would use 2.0.0 as a lower bound should use 0.9.2 instead—for example, crypto: ">=0.9.2 <3.0.0".

    • Hash and Hmac no longer extend ChunkedConverter.
    Open source →
  24. 1.1.1 21 Apr 2016
    Release notes
    • Properly close sinks passed to Hash.startChunkedConversion() when ByteConversionSink.close() is called.
    Open source →
  25. 1.1.0 14 Apr 2016
    Release notes
    • Hmac and Hash now extend the new ChunkedConverter class from dart:convert.

    • Fix all strong mode warnings.

    Open source →
  26. 1.0.0 28 Mar 2016
    Release notes
    • All APIs that were deprecated in 0.9.2 have been removed. No new APIs have been added. Packages that would use 1.0.0 as a lower bound should use 0.9.2 instead—for example, crypto: ">=0.9.2 <2.0.0".
    Open source →
  27. 0.9.2 23 Mar 2016
    Release notes
    • Hash, MD5, SHA1, and SHA256 now implement Converter. They convert between List<int>s and the new Digest class, which represents a hash digest. The Converter APIs—Hash.convert() and Hash.startChunkedConversion—should be used in preference to the old APIs, which are now deprecated.

    • SHA1, SHA256, and HMAC have been renamed to Sha1, Sha256, and Hmac, respectively. The old names still work, but are deprecated.

    • Top-level sha1, sha256, and md5 fields have been added to make it easier to use those hash algorithms without having to instantiate new instances.

    • Hashing now works correctly for input sizes up to 2^64 bytes.

    Deprecations

    • Hash.add, Hash.close, and Hash.newInstance are deprecated. Hash.convert should be used for hashing single values, and Hash.startChunkedConversion should be used for hashing streamed values.

    • SHA1 and SHA256 are deprecated. Use the top-level sha1 and sha256 fields instead.

    • While the MD5 class is not deprecated, the new MD5() constructor is. Use the top-level md5 field instead.

    • HMAC is deprecated. Use Hmac instead.

    • Base64Codec, Base64Encoder, Base64Decoder, Base64EncoderSink, Base64DecoderSink, and BASE64 are deprecated. Use the Base64 APIs in dart:convert instead.

    • CryptoUtils is deprecated. Use the Base64 APIs in dart:convert and the hex APIs in the convert package instead.

    Open source →
  28. 0.9.2+1 23 Mar 2016
    Release notes
    • Avoid core library methods that don't work on dart2js.
    Open source →
  29. 0.9.1 16 Sep 2015
    Release notes
    • Base64 convert returns an Uint8List
    • Base64 codec and encoder can now take an encodePaddingCharacter
    • Implement a Base64 codec similar to codecs in 'dart:convert'
    Open source →
  30. 0.9.0 06 Nov 2013
    Release notes
    • ChangeLog starts here.
    Open source →
  31. 0.8.10 01 Nov 2013

    Nothing published for this version

  32. 0.8.10+3 04 Nov 2013

    Nothing published for this version

  33. 0.8.10+4 05 Nov 2013

    Nothing published for this version

  34. 0.8.9 31 Oct 2013

    Nothing published for this version

  35. 0.8.8 30 Oct 2013

    Nothing published for this version

  36. 0.8.7 28 Oct 2013

    Nothing published for this version

  37. 0.8.6 24 Oct 2013

    Nothing published for this version

  38. 0.8.5 21 Oct 2013

    Nothing published for this version

  39. 0.8.4 19 Oct 2013

    Nothing published for this version

  40. 0.8.3 17 Oct 2013

    Nothing published for this version

  41. 0.8.2 14 Oct 2013

    Nothing published for this version

  42. 0.8.1 04 Oct 2013

    Nothing published for this version

  43. 0.8.0 03 Oct 2013

    Nothing published for this version

  44. 0.7.6 27 Sep 2013

    Nothing published for this version

  45. 0.7.6+4 01 Oct 2013

    Nothing published for this version

  46. 0.7.5 21 Sep 2013

    Nothing published for this version

  47. 0.7.4 18 Sep 2013

    Nothing published for this version

  48. 0.7.3+1 16 Sep 2013

    Nothing published for this version

  49. 0.7.2 06 Sep 2013

    Nothing published for this version

  50. 0.7.2+1 08 Sep 2013

    Nothing published for this version

  51. 0.7.1 03 Sep 2013

    Nothing published for this version

  52. 0.7.0 28 Aug 2013

    Nothing published for this version

  53. 0.6.21+3 26 Aug 2013

    Nothing published for this version

  54. 0.6.20+1 22 Aug 2013

    Nothing published for this version

  55. 0.6.19 19 Aug 2013

    Nothing published for this version

  56. 0.6.17 10 Aug 2013

    Nothing published for this version

  57. 0.6.17+2 12 Aug 2013

    Nothing published for this version

  58. 0.6.15+2 05 Aug 2013

    Nothing published for this version

  59. 0.6.15+3 06 Aug 2013

    Nothing published for this version

  60. 0.6.14 02 Aug 2013

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive