主要难点,获取JWT内加密的token。
因为是打算使用写成c# winform版本的。所以折腾了很久。刚开始直接改写成c#版本始终有问题。最后决定先上eclipse,先使用java把数据读取出来。
最开始对于JWT不甚了解,花了不少时间去查询JWT的资料。而后,直接解析JWT的第二段payload得出自定义内容,里面有需要的token,但是是多重加密。
开始解密token,使用base64解密出字节数组。wing使用的是bouncycastle的base64,直接用其他base64解密的结果有点问题,只能下载个jar导入进去尝试,结果还是一样。结果发现是自己密钥错了。
好了,用eclipse把结果计算出来了。现在开始改写成c#版本!遇到的麻烦就是,c#很多都是直接转换成string处理了,这样的结果就是一直出异常。最后把所有的解码都取byte[]字节组,结果正常解析!
最麻烦的token总算解析出来了!
完成大部分充值功能后,发现wing不能充值metfone的话费!悲剧。
接下来只能去尝试paygo了。
C# AESCBC256 与 java AESCBC256 加解密https://www.cnblogs.com/mycing/p/8277693.html