AES256

Contents

This cordova ionic plugin allows you to perform AES 256 encryption and decryption on the plain text. It's a cross-platform plugin which supports both Android and iOS. The encryption and decryption are performed on the device native layer so that the performance is much faster.

https://github.com/Ideas2IT/cordova-aes256

Stuck on a Cordova issue?

Installation

Community Enterprise
ionic cordova plugin add cordova-plugin-aes256-encryption npm install @ionic-native/aes-256
Ionic EE comes with fully supported and maintained plugins from the Ionic Team. Learn More   or   Contact Us
ionic activate-native-ee --key=YOURPRODUCTKEY ionic integrations add @ionic-native/aes-256

Supported Platforms

  • Android
  • iOS

Usage

import { AES256 } from '@ionic-native/aes-256/ngx';

private secureKey: string;
private secureIV: string;

constructor(private aes256: AES256) {
   this.generateSecureKeyAndIV(); // To generate the random secureKey and secureIV
}

...

async generateSecureKeyAndIV() {
   this.secureKey = await this.aes256.generateSecureKey('random password 12345'); // Returns a 32 bytes string
   this.secureIV = await this.aes256.generateSecureIV('random password 12345'); // Returns a 16 bytes string
}

this.aes256.encrypt(this.secureKey, this.secureIV, 'testdata')
  .then(res => console.log('Encrypted Data: ',res))
  .catch((error: any) => console.error(error));

this.aes256.decrypt(this.secureKey, this.secureIV, 'encryptedData')
  .then(res => console.log('Decrypted Data : ',res))
  .catch((error: any) => console.error(error));


* this.aes256.generateSecureKey('random password 12345')
  .then(res => console.log('Secure Key : ',res))
  .catch((error: any) => console.error(error));


* this.aes256.generateSecureIV('random password 12345')
  .then(res => console.log('Secure IV : ',res))
  .catch((error: any) => console.error(error));