×

深圳网站建设—APP开发—网站制作—小程序开发_博纳网络公司

0755 -
82538016
82560826
网站制作资讯

APP开发后台制作如何使用“AES对称加密”

文章编辑:网站建设 文章来源:APP开发 浏览量:

 我们知道,在移动互联的今天,很多APP图标充斥着我们的手机屏幕,由此也可以看出各行业对APP平台制作的的需求很大,但是怎样才能做一个好的、安全的APP平台,除了要求前端代码的严谨以外,后台对各个环节的安全加密工作也非常重要。今天深圳APP开发--博纳网络就APP项目开发后台加密制作经验做一个详细分享:

一、APP开发后台如何使用AES对称加密
1.对称加密的原理
采用单钥密码系统的加密万法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密,假设有原始数据“1000”,把1000加5就得到密文“1005”,得到密文“1005”后减5就得到原始数据“1000”。把原始数据加5就是加密算法,把密文减5就是解密算法,密钥就是5。
本文举例说明所用的是AES这种通用的对称加密算法,APP开发公司程序员在本文中描述AES加解密的格式如下:AES加密(data ,secretKey)其中data为所需要加解密的数据secretKev为密钥。
2.AES算法加密App后台返回的token数据
在前面文章URL签名“中提到URL签名有个缺点:当用户第次登录后用户的个人信息如下。这些个人信息是以明文返回,存在被黑客截取的风险。可以用下面的方法解决这个问题,后台返回给App用户个人信息的流程如下
  (1)用户在App后台登录后得到“个人信息”。

(2)App后台当前时间戳为1425860757,用时间戳“1425860757生成HTTP请求头Token-Param。
Token-Param:1425860757
(3)取HTTPS协议中HTTP请求头Token-Param的值的22位长度作为密钥secretKev。
(4)HIAES算法把个人信息用密钥secretKev加密,再进行base64编码,最后用HTTPS协议返回给App。HTTPSt/Jii内容如下。
◆客户端解密App后台返回的内容流程如下。
  (1)取HTTPS协议中HTTP请求头Token-Param的值的22位长度作为密钥secretKey。
  (2)把HTTP bodv的数据先用base64算法解码,用AES算法把解码后的数据用密钥secretKev解密,得到用户的个人信息。
AIlS算法加密请求过程中所有的敏感数据
  URL签名有个缺点:URL签名只能保护token值却没法保护其他敏感数据,例如,当更新用户昵称时,用户数据在传输过程中应该是被加
密的。AES同时加密了两方面的数据。
·token
·用户数据
下面以加密用户昵称为例子说明。
客户端加密更新用户昵称API请求的流程如下。
(1)客户端昵称数据
(2)客户程序中可得到的当前时间戳:1425860767
  (3)用时间戳1425860767”生成HTTP请求头Token-Param。

(4)取请求头Tokeu-Paraln的221.1/长度作为密钥secretKev,用AES算法把token用密钥把secretKey加密,再用base64编码得到新的HTTP请求头
(5)用token作为密钥secretKev2.用AES算法把昵称数据用密钥secretKev2加密,再用base64编码得HTTP bodv。
(6)最后App发送给Appj占台的HTTPS请求如下

◆后台解密更新用户昵称数据的流程。
(1)取HTTPS协议中HTTP请求头Tokeu-Param的22位长度作为密钥secretKev。
(2)把HTTP请求头Token-Data的数据先用base64算法解码,用AES算法把解码后的数据用密钥secretKev解密,得到token。
(3)把HTTP bodv的数据先用base64算法解码得到data,再以token为密钥secretKev2,用AES算法把data用密钥secretKev2解密得到昵称为“jeff”。
    注意:以上Token-Param和Token-Data都是深圳APP开发公司程序员自定义的HTTP请求头,是因为程序员个人习惯才这样命名。AES算法中的密钥不是固定不变的,文中举例取请求头Token-Param的22位长度作为密钥,各位APP开发爱好者可以根据项目的实际情况自行设计密钥
◆更进一步的通信安全
  在上面AES对称加密”中提及的加密方法也不是万能的,如果App被黑客反编译了.黑客就知道整个通信的加密过程(知道使用的加密算法和如何获取密钥).如果又同时截取了API的请求数据,那么整个安全措施就无效。
下面是更进步的加密措施
使用自定义的通信协议传输敏感信息。
使用DES(非对称加密算法)加强通信的安全性。
使用邦邦加密、爱加密等第三方工具对App进行加密。涉及到特别敏感的信息(例如支付密码),每次都需要用户输入支付密码确认,支付密码永远不在App端保存
使用自主开发的输入控件输入敏感信息,支付宝支付的输入框就是个典型的例子,如图3所示
深圳APP开发公司,对于APP后台通信安全服务制作方法,本文就介绍到这里,博纳网络编辑整理。

当前文章链接:/construction/appkaifa/1367.html
如果您觉得案例还不错请帮忙分享:

[声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【qin@198bona.com 】,我们在确认后,会立即删除,保证您的版权。