Skip to content
This repository has been archived by the owner. It is now read-only.
A Dart library for encryption/decryption mainly based on Bouncy Castle Java library
Dart Other
  1. Dart 99.3%
  2. Other 0.7%
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.settings Prepare for version 0.7.0 Mar 22, 2014
benchmark
lib
licenses Added scrypt license Jan 9, 2014
test
tool Prepare for version 0.7.0 Mar 22, 2014
.gitignore Adapt to Javascript compilation and testing Jan 28, 2014
LICENSE [#84] Dually license the project under Mozilla Public License as well… May 11, 2014
README.md Update README.md Feb 18, 2016
changelog.md
pubspec.yaml

README.md

WARNING NOTICE

CIPHER IS NO LONGER BEING MAINTAINED.

PLEASE CONSIDER USING THE NEWER FORK AT https://github.com/PointyCastle/pointycastle WHICH IS ACTIVELY DEVELOPED.

THANKS.

SORRY FOR ANY INCONVENIENCE (AND FOR SHOUTING ;-))

cipher

A Dart library for encryption and decryption. As of today, most of the classes are ports of Bouncy Castle from Java to Dart. The porting is almost always direct except for some classes that had been added to ease the use of low level data.

To make sure nothing fails, tests and benchmarks for every algorithm are provided. The expected results are taken from the Bouncy Castle Java version and also from standards, and matched against the results got from cipher.

As of the last release, the following algorithms are implemented:

Block ciphers:

  • AES

Asymmetric block ciphers:

  • RSA

Stream ciphers:

  • Salsa20

Block cipher modes of operation:

  • CBC (Cipher Block Chaining mode)
  • CFB (Cipher Feedback mode)
  • ECB (Electronic Code Book mode)
  • GCTR (GOST 28147 OFB counter mode)
  • OFB (Output FeedBack mode)
  • CTR (Counter mode)

Paddings:

  • PKCS7

Digests:

  • MD2
  • MD4
  • MD5
  • RIPEMD-128
  • RIPEMD-160
  • RIPEMD-256
  • RIPEMD-320
  • SHA-1
  • SHA-224
  • SHA-256
  • SHA-3
  • SHA-384
  • SHA-512
  • SHA-512/t
  • Tiger
  • Whirlpool

MACs:

  • HMAC

Signatures:

  • ECDSA
  • RSA

Password based key derivators:

  • PBKDF2
  • scrypt

Asymmetric key generators:

  • ECDSA
  • RSA

Entropy sources (true RNGs):

  • URL based (can be used, for example, with random.org)
  • File based (can be used, for example, with /dev/random)

Secure PRNGs:

  • Based on block cipher in CTR mode
  • Based on block cipher in CTR mode with auto reseed (for forward security)
You can’t perform that action at this time.