iOS移动端使用AES加密注意事项
来源:互联网 发布:护眼有什么软件 编辑:程序博客网 时间:2024/06/05 19:29
移动端特点
1.需要和后台进行交互
2.本身可以加密解密找到对应的框架很多
例如kelp404写的安全框架,还要AESCrypt
3.不是独立的,需要和后台统一
后台常见
1.java写的后台
2.php写的后台
由于目前主要用的java 所以这里主要说下java部分的内容
java 使用import org.apache.commons.codec.binary.Base64;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
这是后端的加密解密使用的包
iOS解密:
NSData *dd=[str dataUsingEncoding:NSUTF8StringEncoding]; NSData *data2=[GTMBase64 decodeData:dd]; NSString *aesresult=[SecurityUtil decryptAESData:data2]; NSData *jsonData = [aesresult dataUsingEncoding:NSUTF8StringEncoding]; NSDictionary *result = [NSJSONSerialization JSONObjectWithData: jsonData options:0 error:&error];
1.把接收到的字符串进行utf8格式的转换转成nsdata
2.用data在进行base64的解操作
3.进行AES解密 返回一个字符串类型
4.在把这个字符串转换成utf8格式的nsdata
5.用这个nsdata进行json解析,解析成字典形式
之后就是常见的解析和本地UI更新的操作过程了
这里我附上我用上的SecurityUtil工具类
工具类地址
注意事项:
解密是加密的逆过程
如本文中是java先进行aes加密再进行base64加密那么在前端解密的时候正好和它相反,在前端加密的时候是应该和java的顺序保持一致
也就是先尽心aes加密再进行base64解密
备注:
以上观点是实际操作中遇到的问题并进行的总结
总结的注意事项是基本思维模式下进行的,如果你的设计有更复杂的交互那么需要根据具体情况进行具体分析,这里是AES的ECB模式至于其它模式需要使用iv参数量
0 0
- iOS移动端使用AES加密注意事项
- 使用iOS 原生AES加密
- iOS AES加密解密的使用
- iOS RSA,AES加密(使用openssl)
- ios AES 加密
- ios aes加密
- iOS AES 256加密
- iOS AES 加密
- ios android aes 加密
- iOS加密:AES+Base64
- java使用AES加密
- java使用AES加密
- java使用AES加密
- JAVA AES加密使用
- 使用AES加密用户密码
- CryptoJS 使用AES加密
- iOS中使用RNCryptor对文件进行AES加密/解密
- IOS 使用AES/ECB/PKCS7Padding 加密、解密数据
- 解析Swift中闭包的循环引用
- ios UITableview 刷新某一个cell 或 section
- java使用listIterator逆序arraylist示例分享
- jquery判断小数点两位跟自动删除小数两位后的数字
- zookeeper HA 实现负载均衡
- iOS移动端使用AES加密注意事项
- 修改centos系统时间为重庆时间(当前时间)
- 华为路由器dhcp简单配置实例
- c++中的string常用函数用法总结
- 使用 ubuntu builder
- 构造函数语义学
- xshell或putty上 按小键盘上的数字键并不能输入数字的解决办法
- JavaScript 中一些值的比较,熟悉规范
- spark:kmeans测试