fluttercommunity / community

Flutter Community - A central place for community made Flutter content.
1.58k stars 121 forks source link

Package Proposal: Steel Crypt #26

Closed AKushWarrior closed 4 years ago

AKushWarrior commented 5 years ago

Package Proposal: Steel Crypt

Dependency name (as used in pubspec.yaml): steel_crypt Current pub.dev Link: https://pub.dev/packages/steel_crypt Description: A comprehensive library of high-level, cryptographic API's, either manually defined or pulled from PointyCastle. This library currently supports hashing, symmetric two-way encryption, asymmetric two-way encryption, and key/IV generation. It also has a CLI, for conducting basic cryptography operations. Current maintainer: Aditya Kishore, akushwarrior@gmail.com, AKushWarrior Needs new maintainer after transfer: NO Reason for transfer: Flutter community currently does not have a full-featured, documented encryption utility. This package is that, and has an ease of use better than every other encryption package. Furthermore, it's written in pure Dart and prioritizes the safety of user data. Given that it's a helpful, secure utility, I'd like it to be available for use of the larger Flutter community. Comments: [ANY REMAINING THINGS YOU WANT TO TELL US]

slightfoot commented 5 years ago

I am really interested in your package. I'll need to look into it more. My first thought is to create another package called steel_crypt_cli and move the cli interface to that along with the args dependency.

I really like the idea of the pure dart implementation and I think its' worth looking at getting stats on its performance in dart2native vs. other solutions.

I'll catch up with @jeroen-meijer about this.

slightfoot commented 4 years ago

@jeroen-meijer what's your thoughts on this?

jeroen-meijer commented 4 years ago

Hi there,

This looks like a great library! I'd love to have it in the Flutter Community GitHub.

Though I can't say much about the validity of the hash functions themselves (I'm not a crypto-guy), I did review the codebase.

To do before approval

As soon as these issues are fixed, the package will get rereviewed and added to the Flutter Community.

  1. Documentation. The documentation is either missing, improperly formatted (using // instead of ///) or contains slightly incorrect spelling or grammar (such as missing periods). Please ensure all classes and fields have proper documentation. (Check the Dart doc guide for reference.) Running flutter analyze with API docs linter options shows that 5 doc issues were found and 353 public members lack documentation. To see which parts are missing, try adding these lines to the analysis_options.yaml file in the root of the project (next to lib, pubspec.yaml, etc.):
    linter:
    rules:
    ...
    - public_member_api_docs
    - package_api_docs
    - slash_for_doc_comments
  2. Tests. We'd like you to add tests for each hashing algorithm (or at least a couple per category) to verify they're correct and show users how to use them.

We're quite strict with code quality and documentation for new submissions. That's why I'd like to ask you to address the issues above.

Looks like a great package overall; well done! 👍🏻

Best regards.

jeroen-meijer commented 4 years ago

Heads up @AKushWarrior, I added a second bulletpoint next to the documentation.

jeroen-meijer commented 4 years ago

Hi there 👋🏻

Are there updates on this?

jeroen-meijer commented 4 years ago

Hi there,

I'm closing this due to inactivity. Feel free to reopen it whenever you're ready to continue to proposal process.

Thanks! 👋🏻