jsrsasign的签名实现
参考jsrsa签名实现参考基于jsrsasign框架的vue在rsa的签名过程参考:https://www.jianshu.com/p/78821648d6ff应用库: http://kjur.github.io/jsrsasign/ github: https://github.com/machinewu/jsrsasign这个是由前端用私钥签名,后端用公钥验证的过程。前端生成随机的32位随机
参考jsrsa签名实现
参考:https://www.jianshu.com/p/78821648d6ff
应用库: http://kjur.github.io/jsrsasign/
github: https://github.com/machinewu/jsrsasign
这个是由前端用私钥签名,后端用公钥验证的过程。
前端生成随机的32位随机数,然后用私钥加密,然后转成base64格式,这些方法都在jsrsasign中有对应方法,官网中有说明。
这个前端的加密签名过程用了我一天的时间,崩溃到怀疑人生啊!!
主要参考是第二个,虽然是vue的,但是讲解比较清楚。
为什么一个加密过程花费了我一天的时间!总结了下
1. 还是对加密解密的一些概念不懂,leader给了一个私钥“MIIBUgIBADANBgkqhkiG9w0BAQEFAASCATwwggE4AgEAAkEAgDR9FwK5Je5TNE8KP2X5j7VUP1ioWs2mSNk+mWWbYTQ3AXfLPPdRhHFCVfBfmFopc3azL+9l9YMqaYfV+uyEZQIDAQABAkB76T9VtC4a+SO2FQbEi90PBqUsrJXbXZRwKHiWblwlL5n5DaFmqBTGU1ZsZxW17vQss254Om4Ct97DHCAYVjhBAiEA4LGn6nyXW1AcVRkBibZV3EYKOqoNsQb9tR3EE4clW0kCIQCSEUhhB3fEzpK1/8c2Lk1ty03zzL4bmULfJfj7YTOkPQIgSYR3P3bCgyMEEifbY/afwzG7eRRY5Ho4GsGBfS4z39kCIAnIOIWu/1lh0Dd6ErhRL4RL2kOakZy9jdnt7BfBsbitAh89IAnbzwvHMSeSCv3eXzh+NgQHQeUJD7EVcm7BD0pl”,我直接就去库中找api,可是忽略了蜜月需要带有‘—–BEGIN PRIVATE KEY—–’以及相应的尾标识。
2. 然后开始不知道PCK#8和PCK#1,虽然现在也不知道。。。不过仔细看官网的api说明还是可以摸索到正确答案的。
3. 就是一直验证不通过我开始用
sig.updateHex(uuid);其实应该用
4. 最后获取签名的时候用sig.sign()而不是sig.hSgin或者别的其他
5. 给后端传签名的时候,加号没有了,然后就用了encodeURICompoent来转码,后端解码,done!
注意:
更多推荐
所有评论(0)