转载自:
http://hi.baidu.com/nathan2007/blog/item/cf6814c73263c8ddd0006063.html
作者:nathan
花了好几天时间终于把飞信加密的密码用非.NET的方式给还原了,并用C++完全实现了一遍,回头把这个C++版的ShowPasswd贴上来。
看到有朋友问到飞信的加密方法,这里就把飞信用的加密和变换的方法一起简要介绍一下。
1.飞信的配置文件的加密方法
飞信的配置文件其实不是加密,只是进行了一下变换。这种变换的编码方法是:将原来的XML文本(UTF-8编码的)进行压缩,然后将压缩后的结果进行 base64编码,编码后的结果作为XML的DocumentElement的值,同时在XML的DocumentElement的Attributes 中,加上 StoreMode=1。
压缩采用的是标准GZIP算法,飞信用的是.NET的类库System.IO.Compression.GZipStream。
2.飞信的用户密码的加密方法
我们把飞信的配置文件还原,就会看到保存的密码。这个可是真正的加密了,采用的是TripleDES算法,依然是标准的DES算法,.NET的类库是 System.Security.Cryptography。配置文件中是加密以后的结果的BASE64编码。
加密和解密重要的是KEY和IV。IV (initialization vector)在飞信中是固定的值,KEY的算法是:取当前用户的SID(security identifiers),表示成字符形式(S-1-5-xx-xxxxxxxxx-xxxxxxxxx.....),求这个字串的MD5,KEY即为这个字符串的求MD5 Digest的值。TripleDES是对称加密算法,用同样的KEY和IV就可以将其解密了。
分享到:
相关推荐
"MHT"文件,如"飞信的协议按步骤进行分析 - 服务器应用 - BBFISH网络技术社区",通常是网页的存档格式,其中可能详细记录了飞信协议的逐步解析过程,包括每个步骤的详细描述、报文结构、数据加密解密等技术细节。...
为了保障用户隐私和安全,迷你飞信可能也内置了加密机制,保护用户的通信内容不被非法获取。 总的来说,迷你飞信是一个集简洁、实用和可学习性于一体的通信软件,它的核心在于利用飞信的技术实现短信交流和社交网络...
从nathan在百度上发布《飞信协议分析》到现在也有3年了,且当时分析的是飞信2006版本。这中间变化太多,也使得我在写PHP版本飞信发送程序是走了很多弯路。 我曾经拜读过superli_198的《让 PHP 程序利用飞信...
了解并分析飞信的源代码对于学习通信协议、移动应用开发以及理解大型项目架构具有很高的价值。 一、飞信的架构与技术栈 飞信作为一个复杂的多平台应用,可能采用了跨平台的开发框架,如Java或C++,以便同时支持PC...
8. **安全性能**:飞信作为企业级通讯工具,其安全性能不容忽视,2.0.1版本可能对数据加密和账户安全进行了加强,保护用户隐私。 9. **服务稳定性**:飞信依托中国移动强大的网络基础设施,服务稳定性高,即使在...
- 为了保障用户数据安全,飞信可能采用了加密技术,保护用户隐私和通信内容。 6. **局限性和后续发展**: 尽管飞信在当时具有一定的优势,但随着智能手机的普及和微信等新兴通讯应用的崛起,飞信逐渐失去了市场...
本文将详细探讨“移动飞信2010SP4”这一版本,分析其技术特点、功能优势以及在当时背景下为何受到用户的青睐。 首先,飞信2010SP4是飞信产品线的一个重要迭代,SP4代表Service Pack 4,通常意味着这是一个包含了多...
飞信是一款由中国移动开发的即时通讯软件,它允许用户通过短信、互联网或者WAP网络进行免费的文本、语音甚至视频通信。在这个特定的上下文中,我们讨论的是一个基于PHP的网页版飞信源码,这使得用户可以通过网页...
通过分析飞信PC端的源码,我们可以深入理解其工作原理,包括如何与移动通信网络交互,如何处理用户的输入,以及如何实现消息的加密和传输等关键功能。这对于想要从事即时通讯应用开发或者提升自己在该领域技能的...
本文将详细解析"飞信客户端接口规范和2008源码"这一主题,涵盖飞信的基本架构、客户端接口设计以及源码分析。 一、飞信客户端接口规范 飞信客户端接口规范是开发者实现飞信功能的关键指南,它定义了客户端如何与...
飞信是中国移动推出的一款即时通讯软件,它允许用户通过短信、语音、视频等多种方式与朋友、同事进行交流。在IT行业中,尤其是对于Java开发者来说,能够掌握飞信的Java开发接口是十分有价值的,因为这可以使得应用...
2. **分析API文档**:查阅飞信的官方API文档,了解发送短信的具体接口、请求格式、参数要求等信息。通常,这会涉及到HTTP请求方法(如POST或GET)、URL、请求头和请求体中的数据。 3. **构建HTTP请求**:在ASP页面...
飞信是中国移动推出的一款即时通讯软件,它允许用户通过短信、语音、视频等多种方式与朋友、同事进行交流。...通过学习和分析提供的源代码,开发者可以掌握飞信接口的使用技巧,进一步提升自己的编程技能。
10. 源码分析与学习:通过分析飞信客户端的源码,开发者可以深入理解飞信的内部工作原理,学习其他开发者的设计思路和编码技巧,这对于提升自身能力有很大帮助。 以上知识点涵盖了从基础的编程概念到具体的技术实现...
飞信是中国移动推出的一款即时通讯软件,它集短信、语音、视频、数据等多种通信方式于一体,为用户提供便捷的跨平台沟通体验。2009年是飞信发展的一个重要阶段,这个时期的“飞信2009新版本”带来了诸多改进和新特性...
7. **加密解密**:为了保护通信安全,飞信可能使用SSL/TLS进行加密,源码中可能包含对这些加密算法的使用。 8. **错误处理和日志记录**:良好的错误处理机制和日志记录是任何软件的重要部分,源码会包含异常处理和...
4. **数据加密与安全**:考虑到飞信涉及到用户信息的传输,源码可能包含了一些数据加密算法,如AES或RSA,用于保证通信过程中的数据安全。 5. **UI界面设计**:易语言提供了图形用户界面(GUI)的构建工具,源码中...
飞信接口通常包括注册、登录、发送短信等方法。开发者需要先注册成为飞信开发者,获取API密钥和应用ID,以便在请求中进行身份验证。这些接口通常以HTTP或HTTPS形式提供,使用POST请求携带必要的参数。 2. **PHP...
飞信机器人是一款集成在Nagios监控系统中的自动化工具,其主要目的是为了更高效地处理Nagios产生的报警信息。Nagios是一款广泛使用的开源网络监控系统,它能够实时监测网络服务、主机状态以及各种系统资源,如CPU...