Matlab AES加密解密的例子

高级加密标准助手类。

1.7 k下载

更新2019年10月15日

查看许可协议

AES加密解密的例子中,适用于字符串和结构。

基于:https://howtodoinjava.com/security/java-aes-encryption-example/

“数据加密标准(DES)加密算法被认为是高度不安全;消息使用DES加密解密了蛮力一天内由机器如电子前沿基金会(EFF)的深裂缝。”

“更安全的加密算法AES(高级加密标准的对称加密算法。美国使用AES加密来保护敏感但非机密材料,所以我们可以说它是足够安全的。”

1。AES加密和解密
让我们看看一个例子使用AES加密的Matlab程序。

classdef AES <处理
% UNTITLED总结这个类的就在这里
%的详细解释

属性(访问=私人)
secretKey
密码
结束

方法
函数obj = AES(秘密,算法)
% AES构造这个类的一个实例
%算法选项https://docs.oracle.com/javase/9/docs/specs/security/standard-names.html messagedigest-algorithms
进口java.security.MessageDigest;
进口以;
进口java.util.Arrays;
进口javax.crypto.Cipher;

关键=字符串(秘密).getBytes (“utf - 8”);
沙= MessageDigest.getInstance(算法);
关键= sha.digest(关键);
关键=数组。copyOf(关键、16);
obj。secretKey = javaObject (javax.crypto.spec。SecretKeySpec”键,“AES”);
obj。密码= . getinstance (“AES /欧洲/ PKCS5Padding”);
结束

函数加密=加密(obj strToEncrypt)
%加密该方法的总结
%的详细解释
进口java.util.Base64;
进口以;
进口javax.crypto.Cipher;

obj.cipher.init(密码。ENCRYPT_MODE obj.secretKey);
加密=字符串(Base64.getEncoder () .encodeToString (obj.cipher.doFinal (string (strToEncrypt) .getBytes (“utf - 8”))));
结束

函数加密= encryptStructuredData (obj structuredData)
加密= obj.encrypt (jsonencode (structuredData));
结束

解密函数= decryptStructuredData (obj encryptedStructuredData)
解密= jsondecode (obj.decrypt (encryptedStructuredData));
结束

解密函数=解密(obj strToDecrypt)
%解密该方法的总结
%的详细解释
进口javax.crypto.Cipher;
进口以;
进口java.util.Base64;

obj.cipher.init(密码。DECRYPT_MODE obj.secretKey);
解密=字符串(字符串(obj.cipher.doFinal (Base64.getDecoder () .decode (strToDecrypt))));
结束
结束
结束

2。加密和解密的例子
让我们来测试如果我们能够得到解密字符串加密的字符串。

secretKey = " ssshhhhhhhhhhh !”;
算法= " sha - 1”;
aes = aes (secretKey算法);

originalString = " howtodoinjava.com ";
encryptedString = aes.encrypt (originalString);
decryptedString = aes.decrypt (encryptedString);

disp (originalString);
disp (encryptedString);
disp (decryptedString);

输出:

howtodoinjava.com
Tg2Nn7wUZOQ6Xc + 1 lenkztq9zdf9a2 / RBRiqJBCIX6o =
howtodoinjava.com

Matlab结构使用以下功能:
- encryptStructuredData (structureToEncrypt)
- decryptStructuredData (encryptedStructure)

下面让我你的问题和评论。
快乐学习! !

引用作为

丹尼尔(2023)。Matlab AES加密解密的例子(//www.tianjin-qmedu.com/matlabcentral/fileexchange/73037-matlab-aes-encryption-decryption-example), MATLAB中央文件交换。检索

MATLAB版本兼容性
创建R2019b
兼容任何释放
平台的兼容性
窗户 macOS Linux
类别
找到更多的在加密/密码帮助中心MATLAB的答案

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

版本 发表 发布说明
1.0.0