post_quantum 1.0.0-prerelease.8 copy "post_quantum: ^1.0.0-prerelease.8" to clipboard
post_quantum: ^1.0.0-prerelease.8 copied to clipboard

unlisted

Dart implementation of NIST's post-quantum algorithm candidates, Kyber and Dilithium.

1
likes
90/ 160
pub points
2%
popularity

We analyzed this package 36 hours ago, and awarded it 90 pub points (of a possible 160):

OK
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: MIT.

failed
Provide documentation
0 / 20trigger folding of the section

0/10 points: 20% or more of the public API has dartdoc comments

30 out of 197 API elements (15.2 %) have documentation comments.

Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API. Document at least 20% of the public API elements.

To highlight public API members missing documentation consider enabling the public_member_api_docs lint.

Some symbols that are missing documentation: post_quantum, post_quantum.Dilithium, post_quantum.Dilithium.Dilithium.level2, post_quantum.Dilithium.Dilithium.level3, post_quantum.Dilithium.Dilithium.level5.

0/10 points: Package has an example

No example found.

See package layout guidelines on how to add an example.

failed
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 6 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

  • ✓ Web

0/0 points: WASM compatibility

Unable to detect compatibility with runtime wasm, and this package will not be rewarded full points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

failed
Pass static analysis
0 / 50trigger folding of the section

0/50 points: code has no errors, warnings, lints, or formatting issues

Found 13 issues. Showing the first 2:

ERROR: The method 'randomBytes' isn't defined for the type 'Dilithium'.

lib/src/algorithms/dilithium/dilithium.dart:327:18

    ╷
327 │       rhoPrime = randomBytes(64);
    │                  ^^^^^^^^^^^
    ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/algorithms/dilithium/dilithium.dart

INFO: Missing a corresponding override of 'hashCode'.

lib/src/algorithms/dilithium/abstractions/dilithium_private_key.dart:143:17

    ╷
143 │   bool operator ==(covariant DilithiumPrivateKey other) {
    │                 ^^
    ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/algorithms/dilithium/abstractions/dilithium_private_key.dart

OK
Support up-to-date dependencies
40 / 40trigger folding of the section

10/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
hashlib ^1.16.0 1.21.1 1.21.1
Transitive dependencies
Package Constraint Compatible Latest
hashlib_codecs - 2.6.0 2.6.0

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

10/10 points: Package supports latest stable Dart and Flutter SDKs

20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.15, Dart 3.5.4.

Check the analysis log for details.

1
likes
90
pub points
2%
popularity

Publisher

unverified uploader

Dart implementation of NIST's post-quantum algorithm candidates, Kyber and Dilithium.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

hashlib

More

Packages that depend on post_quantum