重新要求:-我们我们需要使用密钥和密码对消息映射中的单个字段进行加密。密钥是128位密钥,将被硬编码,与我们用来解密加密文本的密钥相同。
解决方案:-As为了解决这个问题,淘客网站,我们使用Base64算法编写了一个java代码他们是:-
Base64编码器和Base64解码器类用于对字段进行编码和解码。
代码对于E加密:-
public String Encryption(String CreditCard#No,Container Container)抛出StreamTransformationException{
String key="############";//128位密钥
BASE64Encoder encoder=new BASE64Encoder();
String encoded="";
try{
//创建密钥和密码
key aesKey=new SecretKeySpec(密钥.getBytes(),物联网的应用有哪些,"AES");
密码=密码.getInstance("AES");
//加密信用卡号
密码.init(Cipher.ENCRYPT\u模式,什么叫大数据,aesKey);
字节[]加密=密码.doFinal(信用卡)_否。getBytes());
编码=编码器.encode(加密);
/返回加密文本
返回编码;
}
catch(异常e){
e.printStackTrace();
return"加密时出错"+e.toString();
}
}
D代码加密:-
String Encryption(String encryptedValue,Container Container)抛出StreamTransformationException{
String key="################";//可以给任何128位密钥
BASE64Decoder decoder=new BASE64Decoder();
try{
//Create key and cipher
key aesKey=新建SecretKeySpec(密钥.getBytes(),物联网概念,"AES");
密码=密码.getInstance("AES");
//解密文本
密码.init(Cipher.DECRYPT\模式,aesKey);
字节[]加密字节=解码器.decodeBuffer(encryptedValue);
byte[]decryptedValue=密码.doFinal(加密字节);
//将输入字符串转换成字节以便解密
String decrypted=新字符串(decryptedValue,"UTF-8〃);
return decrypted;
}
catch(Exception e){
e.printStackTrace();
return"解密时出错"+e.toString();
}
}
映射输出:-
加密-
D加密:-
嗨Shankul
谢谢分享。另外,不鼓励使用sun.*软件包,因为它们是供内部使用的,物联网城市,并且可能会在没有警告的情况下更改。
请参阅下面关于Base64库的其他替代方案的讨论。
回复:使用UDF的Base64编码
Rgds
Eng Swee
感谢Eng提供此信息。我们正在处理pi7.11,获取的包不存在错误。很快我们就要升级到po7.5了,我希望DatatypeConverter会在那里出现。