dart_blowfish 1.1.0 copy "dart_blowfish: ^1.1.0" to clipboard
dart_blowfish: ^1.1.0 copied to clipboard

A pure Dart implementation of the Blowfish encryption algorithm.

Dart Blowfish #

A pure Dart implementation of the Blowfish encryption algorithm, providing secure and efficient cryptographic operations.

Usage #

Basic Encryption #

import 'package:dart_blowfish/dart_blowfish.dart';

void main() {
  // Initialize cipher
  final cipher = Blowfish(
    key: Encoding.stringToU8('myKey'),
    mode: Mode.cbc,
    padding: Padding.pkcs5,
  );

  // Set IV for CBC mode
  cipher.setIv(Uint8List.fromList([1, 2, 3, 4, 5, 6, 7, 8]));

  // Encrypt data
  final encrypted = cipher.encode(Encoding.stringToU8('Hello World'));
  
  // Decrypt data
  final decrypted = cipher.decode(encrypted, returnType: Type.string);
}

Different Modes #

// ECB Mode
final ecbCipher = Blowfish(
  key: Encoding.stringToU8('myKey'),
  mode: Mode.ecb,
  padding: Padding.pkcs5,
);

// CBC Mode
final cbcCipher = Blowfish(
  key: Encoding.stringToU8('myKey'),
  mode: Mode.cbc,
  padding: Padding.pkcs5,
);
cbcCipher.setIv(myInitializationVector);

API Reference #

Main Classes #

  • Blowfish: Main cipher class
  • Encoding: String/byte array conversion utilities
  • Helpers: Utility functions for bitwise operations

Enums #

  • Mode: Encryption modes (ECB, CBC)
  • Padding: Padding methods (PKCS5, OneAndZeros, LastByte, None, Spaces)
  • Type: Return types for decoding (String, UInt8Array)
2
likes
150
points
31
downloads

Documentation

API reference

Publisher

verified publishersaturn.kim

Weekly Downloads

A pure Dart implementation of the Blowfish encryption algorithm.

Repository (GitLab)
View/report issues

License

GPL-3.0 (license)

More

Packages that depend on dart_blowfish