请教 JSEncrypt.js 的一个代码问题

37 天前
 pinocc012
var jse = new JSEncrypt();
var pk ='MFswDQYJKoZIhvcNAQEBBQADSgAwRwJA4eeQZu0GkgzXYypfcKRxRiclJC0Q5A5+T+EXcSpcaZlq/eMyy4oJIUfvYsCsvIhAENB2YCTVmdLjWeHbSPXKJQIDAQAB';
jse.setPublicKey(pk);
console.log(jse.getPublicKeyB64());

结果输出是 MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAOHnkGbtBpIM12MqX3CkcUYnJSQtEOQOfk/hF3EqXGmZav3jMsuKCSFH72LArLyIQBDQdmAk1ZnS41nh20j1yiUCAwEAAQ==

key 竟然变了,请问是 JSEncrypt 内部做了啥转换?
1416 次点击
所在节点    JavaScript
2 条回复
lisongeee
37 天前
好奇为什么不自己直接看源码 https://github.com/travist/jsencrypt/tree/master/lib

pk 并没有原样保存,而是内部自己转换了,转换的过程就在源码里
zhhbstudio
31 天前
因为你是 setPubliclicKey getPublicKey"B64" 啊,方法名也不是对称的

转换的位置: https://github.com/travist/jsencrypt/blob/master/lib/JSEncryptRSAKey.js#L78

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1077431

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX