电竞比分网-中国电竞赛事及体育赛事平台

分享

Java實(shí)現(xiàn)微信小程序加密數(shù)據(jù)解密算法

 Java幫幫 2020-01-02


一、概述

我們下載的算法示例如下:

木有Java??! 木有Java??! 木有Java??!

那么如何解決這個(gè)問題,我們一起來實(shí)現(xiàn)Java版本的微信小程序加密數(shù)據(jù)解密算法。

二、實(shí)現(xiàn)Java版本的微信小程序加密數(shù)據(jù)解密算法

1、創(chuàng)建項(xiàng)目

這里,我們創(chuàng)建一個(gè)Maven工程,具體創(chuàng)建步驟略。

2、配置pom.xml

我們在pom.xml中加入如下配置。

3、實(shí)現(xiàn)AES類

4、實(shí)現(xiàn)WxPKCS7Encoder類

5、實(shí)現(xiàn)WXCore類

這個(gè)類主要是對具體算法的封裝,統(tǒng)一對外提供方法。


三、測試

1、運(yùn)行Java版微信小程序加密數(shù)據(jù)解密算法

這里我們就直接運(yùn)行WXcore類的main方法,這里的測試數(shù)據(jù)都是從Python版微信小程序加密數(shù)據(jù)解密算法的示例程序中提出來的。我們的運(yùn)行結(jié)果如下:

{"openId":"oGZUI0egBJY1zhBYw2KhdUfwVJJE","nickName":"Band","gender":1,"language":"zh_CN","city":"Guangzhou","province":"Guangdong","country":"CN","avatarUrl":"http://wx./mmopen/vi_32/aSKcBBPpibyKNicHNTMM0qJVh8Kjgiak2AHWr8MHM4WgMEm7GFhsf8OYrySdbvAMvTsw3mo8ibKicsnfN5pRjl1p8HQ/0","unionId":"ocMvos6NjeKLIBqg5Mr9QjxrP1FA","watermark":{"timestamp":1477314187,"appid":"wx4f4bc4dec97d474b"}}

2、運(yùn)行Python版微信小程序加密數(shù)據(jù)解密算法

這里我們在python環(huán)境中直接運(yùn)行微信官方提供的Python版小程序加密數(shù)據(jù)解密算法,結(jié)果如下:

{u'province': u'Guangdong', u'openId': u'oGZUI0egBJY1zhBYw2KhdUfwVJJE', u'language': u'zh_CN', u'city': u'Guangzhou', u'gender': 1, u'avatarUrl': u'http://wx./mmopen/vi_32/aSKcBBPpibyKNicHNTMM0qJVh8Kjgiak2AHWr8MHM4WgMEm7GFhsf8OYrySdbvAMvTsw3mo8ibKicsnfN5pRjl1p8HQ/0', u'watermark': {u'timestamp': 1477314187, u'appid': u'wx4f4bc4dec97d474b'}, u'country': u'CN', u'nickName': u'Band', u'unionId': u'ocMvos6NjeKLIBqg5Mr9QjxrP1FA'}

通過對比以上結(jié)果可知,我們自行使用Java實(shí)現(xiàn)的Java版微信小程序加密數(shù)據(jù)解密算法與微信官方提供的Python版小程序加密數(shù)據(jù)解密算法結(jié)果一致。

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多