RSAGenerate
는 공개 키,하지만 진수의 공개 키 지수를 고려하지 않습니다. 이것을 φ (n)와 일치해야하므로주의해서 선택해야합니다. 좋은 값은 다른 구현과의 호환성을 위해 10001
(16 진수)입니다.
공개 키
N 및
E 설정하여 개인 키를 만들 수있다
:
var pubkey = new RSAKey();
pubkey.n = privKey.n;
pubkey.e = privKey.e;
가 forge docs는 RSA 키 쌍과 동일한 공개 지수로서 생성되는 방식을 세 가지 실시 예를 포함을 위 :
// generate an RSA key pair synchronously
var keypair = rsa.generateKeyPair({bits: 2048, e: 0x10001});
// generate an RSA key pair asynchronously (uses web workers if available)
// use workers: -1 to run a fast core estimator to optimize # of workers
rsa.generateKeyPair({bits: 2048, workers: 2}, function(err, keypair) {
// keypair.privateKey, keypair.publicKey
});
// generate an RSA key pair in steps that attempt to run for a specified period
// of time on the main JS thread
var state = rsa.createKeyPairGenerationState(2048, 0x10001);
var step = function() {
// run for 100 ms
if(!rsa.stepKeyPairGenerationState(state, 100)) {
setTimeout(step, 1);
}
else {
// done, turn off progress indicator, use state.keys
}
};
// turn on progress indicator, schedule generation to run
setTimeout(step);
'E'를 신중하게 선택해야하는 사용자입니까? 라이브러리가 * n * s.t를 생성하지 않습니다. 'E'는 φ (* n *)와 양분입니까? – Kar
예, 사용자가 선택해야하지만 일반적으로 다른 구현과의 호환성을 위해 0x10001로 설정됩니다. –
알겠습니다. 그렇다면 0x10001을 고수하는 것이 안전할까요? – Kar