期刊鉴别 论文检测 免费论文 特惠期刊 学术答疑 发表流程

微信加密通信原理分析

时间:2014-01-18 14:32 文章来源:http://www.lunwenbuluo.com 作者:瞿晓海 薛质 点击次数:

  【摘要】基于移动客户端的保密通信原理,本文讨论了现阶段主流社交软件微信系统的通信方式和加密原理,其基于RSA加密、随机AES私钥的加密方式设计是通信保密的关键核心,也是目前绝大部分移动端社交软件的主流加密方式。
  【关键词】微信;RSA加密;随机AES私钥
  1引言
  微信是由腾讯公司开发的社交软件,用户可使用该软件发送语音、视频、图片和文字。微信的系统使用平台包括手机、平板、个人电脑等,新版本微信增加了公众平台、朋友圈和消息推送等功能,作为一个大众化的社交软件,微信现在已经拥有了6亿用户,日均活跃用户超过1亿。现阶段微信已经成为中国网络最主流的社交软件,其通信的安全保密性也一直为大家所关注。
  本文介绍了微信所使用的通信保密算法和通信流程,其基于RSA加密、随机AES私钥的加密方式设计是通信保密的关键核心,也是目前绝大部分移动终端社交软件的主流加密方式。在现有技术能力下,破解密钥、获取微信通信内容的难度较大。
  2微信通信系统所使用的加密算法和通信协议
  微信系统所使用的加密算法是现下绝大部分通信软件中较为常用的RSA密钥和AES随机密钥加密算法,其加密方式在现有通信社交软件中属于最高加密等级,破解其加密算法具有极大的难度。
  微信通信中用到的几种加密算法。
  2.1RSA公钥加密算法
  RSA加密算法:目前最有影响力的公钥加密算法,从提出到现在已近二十年,能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。
  RSA属于公开密钥密码体制。所谓的公开密钥密码体制就是使用不同的加密密钥与解密密钥,是一种"由已知加密密钥推导出解密密钥在计算上是不可行的"密码体制。
  RSA属于非对称算法,公钥加密私钥解密,或者私钥加密公钥解密,公钥和私钥的关系是唯一的,公钥不等于私钥。RSA安全性在于密钥的长度,密钥长度越长,安全系数越高,微信用的1024位的密钥,据说目前计算机速度破解需要2年。
  RSA加密算法加密流程。
  1)加密端产生明文字符串,获取CER认证公钥。
  2)加密机制通过Encoding指定不同的代码页,把字符串转化成不同页码对应的编码,表现为byte[]形式,再将Byte[]字节流明文发送。
  3)使用CER证书的公钥对byte[]字节流明文进行加密操作,以byte[]密文形式发送。
  相对应解密流程:
  1)将公钥转化为PFX证书的私钥,使用PFX证书的私钥对byte[]密文进行解密,还原为byte[]明文字节流。
  2)使用加密时Encoding使用的代码页,把byte[]形式的明文转化成是字符串明文并发送。
  目前解密技术能力下可行的破解RSA的方法是:替换公钥。就是把流程图中步骤3、4里面的公钥换成自己所掌握的公钥,然后就可以用自己的公钥和私钥去解密,还原出通信的byte[]字节流明文。
  2.2AES随机密钥加密算法
  AES是一个新的可以用于保护电子数据的加密算法。明确地说,AES是一个迭代的、对称密钥分组的密码,它可以使用128、192和256位密钥,并且用128位(16字节)分组加密和解密数据。与公共密钥密码使用密钥对不同,对称密钥密码使用相同的密钥加密和解密数据。通过分组密码返回的加密数的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换(Permutations)和替换(Substitutions)输入数据。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。
  微信通信中使用的128位的AES随机密钥,128位AES的加密强度是56位DES加密强度的1021倍还多,假设可以制造一部可以在1秒内破解DES密码的机器,那么使用这台机器破解一个128位AES密码需要大约149亿万年的时间。
  AES具体加解密流程如图2所示。
  目前的解密技术下,AES只有知道密钥才能解,不知道密钥至今尚没有可行的破解方式。
  2.3ProtocolBuffer通信协议
  微信通信系统选用ProtocolBuffer作为通信协议。
  ProtocolBuffer:是Google的一种数据交换的格式,Google公司内部的混合语言数据标准,目前已经正在使用的有超过48,162种报文格式定义和超过12,183个.proto文件。他们用于RPC系统和持续数据存储系统。

  •   论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
  •   论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
  •  
  •   论文投稿客服QQ: 论文投稿2863358778 论文投稿2316118108
  •  
  •   论文投稿电话:15995089042
  •  
  •   论文投稿邮箱:lunwenbuluo@126.com

相关内容

联系方式

  • 论文投稿客服QQ: 论文投稿2863358778
  • 论文投稿客服QQ: 论文投稿2316118108
  • 论文投稿电话:15995089042
  • 论文投稿邮箱:lunwenbuluo@126.com

热门排行

 
QQ在线咨询
咨询热线:
159-9508-9042
微信号咨询:
15995089042