angular - CakePHP 3 和 Angular 6 的常用加密/解密技术是什么?
问题描述
我计划在 CakePHP 3 中加密数据,并需要在 Angular 6 上解密。另外,反之亦然。
如果您有这种经历,请分享您的想法。
提前致谢!
解决方案
cakephp 具有提供加密和解密的安全实用程序,AES-256
这里使用的是 cakephp doc 的示例
加密
//$value is the data
//Assuming key is stored somewhere it can be re-used for
$key = 'wt1U5MACWJFTXGenFoZoiLwQGrLgdbHA';
$result = Security::encrypt($value, $key);
解密
$key = 'wt1U5MACWJFTXGenFoZoiLwQGrLgdbHA';
$cipher = $user->secrets;
$result = Security::decrypt($cipher, $key);
Cakephp 中的加密将根据系统上可用的内容 使用openssl或mcrypt ,但mcrypt扩展在 PHP7.1 中已被弃用
有关更多信息,请查看 使用 Cakephp 加密和解密数据
Javascript 如果您正在寻找如何将它与 Javascript 框架一起使用,您应该寻找可以解密 AES 的库,这是一个示例
https://github.com/JamesMGreene/node-aes256
var decrypted = aes256.decrypt(key, encrypted);
key 是你在 CakePHP 中使用的那个, encrypted 是加密的数据。抱歉,我不是 AngularJS 开发人员,但您可以通过这种方式使用它。
推荐阅读
- python - 将字典中的值与输入数字进行比较
- unity3d - Unity Rewarded Interstitial with Google Mobile Ads v6.0.2 - 教程中的代码不起作用
- ios - Xcode:我设置了iOS 13.0的iOS部署目标;App Store 显示了对 iOS 11 的最低要求。为什么
- c++ - 引用另一个类对象初始化类指针对象
- java - 类型不匹配,必需:上下文,找到:单位
- node.js - 无法读取未定义的属性“表情符号”
- biopython - AttributeError:“Seq”对象没有属性“molecular_weight”错误?
- sql - SQL - 如何根据计数条件返回最大的 n?
- flutter - Flutter 调试 UI 问题
- powershell - 如何修剪字符串直到第一个大写字母