>

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

user1 • 12 次点击

var jse = new JSEncrypt();
var pk =‘MFswDQYJKoZIhvcNAQEBBQADSgAwRwJA4eeQZu0GkgzXYypfcKRxRiclJC0Q5A5+T+EXcSpcaZlq/eMyy4oJIUfvYsCsvIhAENB2YCTVmdLjWeHbSPXKJQIDAQAB’;
jse.setPublicKey(pk);
console.log(jse.getPublicKeyB64());

结果输出是 MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAOHnkGbtBpIM12MqX3CkcUYnJSQtEOQOfk/hF3EqXGmZav3jMsuKCSFH72LArLyIQBDQdmAk1ZnS41nh20j1yiUCAwEAAQ==

key 竟然变了,请问是 JSEncrypt 内部做了啥转换?

user1

好奇为什么不自己直接看源码 https://github.com/travist/jsencrypt/tree/master/lib

pk 并没有原样保存,而是内部自己转换了,转换的过程就在源码里

user2

因为你是 setPubliclicKey getPublicKey"B64" 啊,方法名也不是对称的

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

1
20 / 页
总数 21