CryptoJS AES Encryption/Decryption For Flutter/Dart

Ching Sue Hok
1 min readMar 11, 2020

If you using CryptoJS below AES encryption for your website/react native and you need it for flutter app or dart web application

var CryptoJS = require("crypto-js");

// Encrypt
var ciphertext = CryptoJS.AES.encrypt('my message', 'secret key 123').toString();

// Decrypt
var bytes = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');
var originalText = bytes.toString(CryptoJS.enc.Utf8);

console.log(originalText); // 'my message'

Two extra dependency you need to your dart code is

tuple: ^1.0.3
encrypt: ^4.0.0

Below is the helper code for your and import it to use as in example code.

Example code

import 'package:app/utils/cryptojs_aes_encryption_helper.dart';String plainText = 'PlainText is Me';
var encrypted = encryptAESCryptoJS(plainText, "password");
var decrypted = decryptAESCryptoJS(encrypted, "password");

--

--