dart_blowfish 1.1.0
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 classEncoding: String/byte array conversion utilitiesHelpers: 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)