zoukankan      html  css  js  c++  java
  • 使用delphi+intraweb进行微信开发4—微信消息加解密

    示例代码已经放出!请移步使用delphi+intraweb进行微信开发1~4代码示例进行下载,虽为示例代码但是是从我项目中移出来的,封装很完备适于自行扩展和修改。

    上一讲当中我做了个简单的微信文本消息回显应用,当时是以微信明文方式实现的,其实微信推荐的是消息应该加密传输以增加安全性,所以这讲说说微信消息的加解密。

    在微信的帮助页面上可以下载微信消息加解密的例程,可惜的是没有Delphi语言的示例,网上搜索一番,没有人贡献出写好的Delphi版的微信加解密算法单元,好在有官方示例的C#版的,那就按照C#的改一个吧。

    微信消息是以AES算法进行的加密处理,而遗憾的是Delphi并没有内置的AES算法单元,必须找第三方实现的,不过一般第三方实现的算法都因为种种原因并不完善,需要使用者酌情修改,所以在基础算法支持上Delphi确实和.net以及java这类的开发语言比不了。

    呵呵,上网找Delphi版AES算法吧。在在这里要感谢cnpack开发组,他们不但推出一流的delphi开发环境增强组件还有开源组件包cnvcl,这个组件包中有SHA1、AES、MD5等多种算法单元,我打开AES算法单元查看,发现封装的很完美,ECB、CBC模式均支持,呵呵,幸福了02B69EAC

    参考C#示例代码一通修改测试,省略几昼夜苦干的吐槽终于开花结果:

    呵呵,这个或者是网上目前唯一的开源的Delphi版的微信加解密算法单元吧,激动!

    {*****************************************************************************}
    {                                                                             }
    {       泛思微平台                                                            }
    {                                                                             }
    {       版权所有 (C) 2016 石家庄泛思电子商务有限公司                          }
    {                                                                             }
    {       微信消息加密解密单元,使用DelphiXE2版本编写                           }
    {       作者:Delphi力量                                                      }
    { &n