pub package GitHub GitHub top language GitHub language count

r_crypto

Rust backend support crypto flutter library, much faster than Dart-implementation library, light-weight library.

Some crypto support hardware accelerate.

Support Algorithm

Hashes

  • MD5
  • SHA1
  • SHA2
    • SHA224
    • SHA256
    • SHA384
    • SHA512-trunc224
    • SHA512-trunc256
  • SHA3
    • SHA3-224
    • SHA3-256
    • SHA3-384
    • SHA3-512
    • SHAKE-128
    • SHAKE-256
    • KECCAK224
    • KECCAK256
    • KECCAK384
    • KECCAK512
  • Whirlpool
  • Blake2
    • Blake2b
    • Blake2s
  • Blake3
  • Groestl
    • Groestl224
    • Groestl256
    • Groestl384
    • Groestl512
    • GroestlBig
    • GroestlSmall
  • RIPEMD160 (RIPEMD-320 provides only the same security as RIPEMD-160)
  • Shabal
    • Shabal192
    • Shabal224
    • Shabal256
    • Shabal384
    • Shabal512

More digest will support soon.

Support Platform

  • Android
    • arm64-v8a
    • armeabi-v7a
    • x86
    • x86_64
  • iOS
    • arm64
    • x86_64
  • macOS
    • x86_64
    • arm64(WIP)

Example Usage

Hash

import 'package:r_crypto/r_crypto.dart';

//For fixed output length digest
rHash.hashString(HashType.MD5, input);
//For dynamic output length digest
rHash.hashString(HashType.blake3(length: 64), input);
//Also accept List<int> as parameter
rHash.hashList(HashType.KECCAK_224, [0,1,2]);
//Hash File
rHash.filePath(HashType.blake3(length: 32), path);

//Encode the list
hex.encode(list);

TODO

  • x Support file input
  • Support encrypt/decrypt algorithm

Libraries

r_crypto