AES加解密PHP与FLUTTER源码

2021-11-28|


1.PHP下的AES加解密

//aes加密
function aes_encode($message)
{
  return openssl_encrypt($message,"AES-256-CBC","这里需要32位长的密钥英文",0 ,"这里需要16位长的初始向量英文");
}

//aes解密
function aes_decode($encodeData)
{
  return openssl_decrypt($encodeData,"AES-256-CBC","这里需要32位长的密钥英文",0,"这里需要16位长的初始向量英文");
}

2.FLUTTER在的AES加解密

import 'package:encrypt/encrypt.dart';
class AESUTIL {
  //aes解密
  static String decode(String data) {
    final key = Key.fromUtf8('这里需要32位长的密钥英文');
    final iv = IV.fromUtf8("这里需要16位长的初始向量英文");
    final encrypter = Encrypter(AES(key, mode: AESMode.cbc));
    final decrypted = encrypter.decrypt(Encrypted.from64(data), iv: iv);
    return decrypted;
  }

  //aes加密
  static String encode(String data) {
    final key = Key.fromUtf8('这里需要32位长的密钥英文');
    final iv = IV.fromUtf8("这里需要16位长的初始向量英文");
    final encrypter = Encrypter(AES(key, mode: AESMode.cbc));
    final encrypted = encrypter.encrypt(data, iv: iv);
    return encrypted.base64;
  }
}

32位的英文密钥,16位的初始向量都是自己指定的。

在php端进行数据加密后,可以在flutter端进行解密。


标签: 英文 向量 密钥 需要 这里 AES encrypter final 解密 初始
出处: https://www.toutiao.com/a7035060205297697288/

文明发言,请先登录

文明上网理性发言,请遵守国家法律法规。

最新评论

©2003- 黑基网 黑名单存档手机版网站地图免责条款法律声明隐私保护