微信加密BASE64编码报告.docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微信加密BASE64编码报告

XXX课程报告题目:微信中的密码技术(Base 64编码)院系:专业:组别:学生姓名:学号:目 录摘要1微信中的密码技术1一、引言1二、两种加密算法介绍12.1 RSA公钥加密算法12.2 AES随机密钥加密算法3三、Protocol Buffer通信协议4四、微信通信系统登录验证和通信流程44.1 登录验证流程44.2 通信交互流程5Base64 编码7一、引言7二、Base64编解码原理72.1 Base64编码原理72.2 Base64解码9三、应用举例10结束语11参考文献12微信中的密码技术(Base 64编码)摘要根据课程要求安排,本报告主要包括两部分内容,即微信中的密码技术和Base 64 编码。本报告讨论了现阶段主流社交软件微信系统的加密原理,其基于RSA加密、随机AES私钥的加密方式设计是通信保密的关键核心,也是目前绝大部分移动端社交软件的主流加密方式。Base 64编码,解决了网络传输中的不可见字符的传送,对实际应用有着特殊的意义。报告中简单研究了Base64编码的由来,以及其编解码的原理,通过学习研究,较好了掌握了微信加密技术的相关原理和Base64编解码原理,达到了课程学习的目的。微信中的密码技术引言微信是由腾讯公司开发的社交软件,用户可使用该软件发送语音、视频、图片和文字。微信的系统使用平台包括手机、平板、个人电脑等,新版本微信增加了公众平台、朋友圈和消息推送等功能,作为一个大众化的社交软件,微信现在已经拥有了6亿用户,日均活跃用户超过1亿。现阶段微信已经成为中国网络最主流的社交软件,其通信的安全保密性也一直为大家所关注。微信系统所使用的加密算法是现下绝大部分通信软件中较为常见的RSA密钥和AES随机密钥加密算法,此部分主要介绍微信通信加密技术中的RSA加密和随机AES私钥的加密,其加密方式在现有通信社交软件中属于最高加密等级,破解其加密算法获取微信通信内容具有极大的难度。两种加密算法介绍2.1 RSA公钥加密算法RSA公钥加密算法是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的,1987年首次公布。RSA就是他们三人姓氏开头字母拼在一起组成的。RSA公钥加密算法是目前最有影响力的公钥加密算法。从提出到现在已近三十多年,能够抵抗到目前为止已知所有密码攻击,已被ISO推荐为公钥数据加密标准。RSA加密算法属于公开密钥密码体制,即使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥(在计算机上是不可行的)”的密码体制。同时,RSA加密算法还属于非对称算法,公钥加密私钥解密,或者私钥加密公钥解密,公钥和私钥的关系是唯一的,公钥不等于私钥。它的安全性在于密钥的长度,密钥长度越长,安全系数越高,微信用的是1024位的密钥,以当前计算机速度破解它需要两年。RSA加密算法加密流程(如图1):(1)加密端产生明文字符串,获取CER认证公钥。(2)加密机制通过Encoding指定不同的代码页,把字符串转化成不同页码对应的编码,表现为Byte[]形式,再将Byte[]字节流明文发送。(3)使用CER证书的公钥对Byte[]字节流明文进行加密操作,以Byte[]密文形式发送。加密解密图1 RSA加解密算法流程图相对应的解密流程(如图1):(1)将公钥转化为PFX证书的私钥,使用PFX证书的私钥对Byte[]密文进行解密,还原为Byte[]明文字节流。(2)使用加密时Encoding使用的代码页,把Byte[]形式的明文转化成是字符串明文并发送。2.2 AES随机密钥加密算法AES是一个新的可以用于保护电子数据的加密算法。明确地说,AES是一个迭代的、对称密钥分组的密码,它可以使用128、192和256位密钥,并且用128位分组加密和解密数据。与公共密钥密码使用密码不同,对称密钥密码使用相同的密钥加密和解密数据。通过分组密码返回的加密数的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换和替换输入数据。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。AES具体加解密流程,如图2所示。图2 AES加解密算法流程微信通信中使用的是128位的AES随机密钥。128位AES的加密强度是56位DES加密强度的1021倍还多,假设可以制造一部可以在1秒内破解DES密码的机器,那么使用这台机器破解一个128位AES密码需要大约149亿万年的时间。目前的解密技术下,AES只有知道密钥才能解,不知道密钥至今尚没有可行的破解方式。Protocol Buffer通信协议微信通信系统采用的是Protocol Buffer作为通信协议,用来构造和解析数据。Protocol Buffer是Google的一

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档