客户端加密机制

原创 2016年08月31日 09:28:26

在做开发的过程中,数据安全一直是重中之重。不管你是做在线商城、网络支付还是商品推送,客户和金额等敏感信息的安全问题一定要考虑到。

其实在客户端主要做的是数据的可见性,主要的安全问题还是放在服务端,毕竟所有的数据都是在服务端,服务端收到数据还会进行校验,还要看是否是重放攻击等。

而客户端要做的 无非是 防止反编译和传输数据加密。防止反编译最常用的就是代码混淆,当然还有好几种其他的方式可以一同使用(例如:结构混淆)。

传输机密这个做的就比较多了,一般的都会做传输数据加密。有的公司做的app不存在敏感信息,有时候不用加密,只用post get 方式也是可以的。我之前的加密是用的DES 和RSA 加密方式。先生成一个DESKey 然后 用RSA公钥加密DESKey,然后用DESKey 加密数据,最后将加密后的数据和加密后的DESKey一同传输到后台,后台先用RSA私钥解密DESKey 然后用解密后的DESKey解密数据。这是整个加解密过程后来,因为后台解密速度达不到要求(后台解密压力太大,因为RSA解密太耗时。客户端可能没什么感觉,但是服务端在相同的时间可能并发很多解密,所以对服务端压力很大),所以进行了改进。先和服务端交换DESKey(先将加密后的DESKey传输到后台),返回交换成功后,在将用DESKey加密的数据传输到后台。这样做服务端可以用传输间隙进行解密,适当的缓解服务端压力。
再后来,我们做的换了加密方式,使用加密机。加密方式使用AES 和 RSA 加密,先生成16位的AESKey,然后用生成的AESKey加密数据,RSA公钥加密AESKey,然后算出加密后AESKey长度,将长度做成6位的16进值数,加密后的数据同理,最后拼接成一串字符串,将字符串传输到后台。
AES和DES加密都是对称加密,RSA是非对称加密,至于AES和DES的区别,可以自己去查一下。

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

手机客户端数据传输加密设计

登陆的时候进行一次双向非对称协议1.客户端先发起非对称请求2.服务端返回一次非对称响应3.在返回数据中用请求密钥及响应密钥返回在业务数据的加密中就可以使用对称密钥加密4.在业务数据请求是用请求密钥对称...

客户端/服务器 http加密方案----对称与非对称加密

加密技术一般分为两类 1.对称加密,即加密与解密用的是同一把秘钥,常用的对称加密技术有DES,3DES,AES. 2.非对称加密,加密与解密用的是不同的秘钥,常用的非对称加密技术有RSA.下面举例...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

【U3D】初识Behavior Designer行为树(一)

本系列文章由@萌萌的一天 出品,未经博主允许不得转载。   Behavior Designer行为树插架介绍         Behavior Designer是U3D AssetStore上很优...

客户端加密机制

在做开发的过程中,数据安全一直是重中之重。不管你是做在线商城、网络支付还是商品推送,客户和金额等敏感信息的安全问题一定要考虑到。 其实在客户端主要做的是数据的可见性,主要的安全问题还是放在服务端,毕...

客户端加密

由于Android应用没有像web开发中的session机制,所以采用PHPSESSID的方式,是没有办法获取客户端登录状态的。         这种情况下,如何在用户登录后,服务器端获取用户登录状态...

android客户端加密代码

java简单加密算法,能够实现简单的加密。 package com.devchina.scurity; import java.security.SecureRandom; import jav...

Cocos2d-x客户端代码加密

继昨天的资源加密之后,今天继续来说下代码如何加密。 讲原理的网上一大把,讲加密原因也是,本博注重的是如何让新手一步步完成代码加密。 一、下载quici-cocos2d-x quick-cocos2d...

Cocos2d-x客户端资源加密

安卓打包的apk文件只是做了简单的压缩,通过解压缩可以获取资源文件,如果不想图片资源被别人看到,那么可以对图片进行加密。 cocos2d-x提供了xxtea加密和解密算法,先将图片进行加密,这样就打不...

加密解密算法,客户端C++加密,服务端PHP解密

这里有两个我之前经常用的加密/解密的字符串函数: /** * 可逆的字符串加密函数 * @param int $txtStream 待加密的字符串内容 * @param int $password 加...

客户端JavaScript加密数据,服务端Java解密数据

在普通的页面提交时,如果没有使用SSL,提交的数据将使用纯文本的方式发送。如果使用抓包工具可以轻易地截获一些关键数据。 jCryption是一个jQuery插件,能够加密由Forms提交的POST/G...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)