Added information regarding operation support strictly for RSA and ECDSA keys. Added ECDSA CSR public key extraction test.
This commit is contained in:
parent
f7b85f7935
commit
145fcc7c49
@ -16,7 +16,7 @@ class PubKeyFromCSR extends Operation {
|
|||||||
super();
|
super();
|
||||||
this.name = "Public Key from CSR";
|
this.name = "Public Key from CSR";
|
||||||
this.module = "PublicKey";
|
this.module = "PublicKey";
|
||||||
this.description = "Extracts the Public Key from a Certificate Signing Request.";
|
this.description = "Extracts the Public Key from a Certificate Signing Request. Currently only supports ECDSA and RSA.";
|
||||||
this.infoURL = "https://en.wikipedia.org/wiki/Certificate_signing_request";
|
this.infoURL = "https://en.wikipedia.org/wiki/Certificate_signing_request";
|
||||||
this.inputType = "string";
|
this.inputType = "string";
|
||||||
this.outputType = "string";
|
this.outputType = "string";
|
||||||
|
|||||||
@ -18,7 +18,17 @@ myh7wbLev8yPjAL+WSKoN45MuOlOrLBJp+lr3LlEWconRAfHpHPPhYcLbieaUZgx
|
|||||||
ia/tkQICn+jPRTFtN1Bkn+SdUKVx1W5HTKy4yTE3Km1yh0nPUS5MGBBFgWnKANo=
|
ia/tkQICn+jPRTFtN1Bkn+SdUKVx1W5HTKy4yTE3Km1yh0nPUS5MGBBFgWnKANo=
|
||||||
-----END CERTIFICATE REQUEST-----`;
|
-----END CERTIFICATE REQUEST-----`;
|
||||||
|
|
||||||
/* RSA 2048 Private Key for above CSR
|
const RSA_2048_CSR_PUB_KEY = `-----BEGIN PUBLIC KEY-----
|
||||||
|
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkhQAPH9yK8qU3hYi8hiJ
|
||||||
|
PycmBlcUn8qLjSKaYFd0GlK90rlMgiGvFOQVYM66y3PTXnmGilyOUxTqtyK4Yy2a
|
||||||
|
qyr3GY6OrsS8I8EgvKiOVd39eO6hehPPz9fCGmbSZ9FyRxFmPM2dbvcDB1EQeIgu
|
||||||
|
o7rM4OFIWMAIKils0ZfTjfGqqV0sadNXlLVV/lXuPhosSlgmX8TIy1mfE9a82FHw
|
||||||
|
v1tMJdTxST1RgUCgXgU0GihEYCyIzV+UJPxrxcLd21AXd+BoB/wsm4WoD9xgUBf/
|
||||||
|
mSexXFruDeLRexsZ+iGr4zxCCfOg3sYK0fVroM3KgcJnTTAOmyvQOF2oHpGPWqOE
|
||||||
|
RQIDAQAB
|
||||||
|
-----END PUBLIC KEY-----`;
|
||||||
|
|
||||||
|
/* RSA 2048 Private Key
|
||||||
-----BEGIN PRIVATE KEY-----
|
-----BEGIN PRIVATE KEY-----
|
||||||
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCSFAA8f3IrypTe
|
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCSFAA8f3IrypTe
|
||||||
FiLyGIk/JyYGVxSfyouNIppgV3QaUr3SuUyCIa8U5BVgzrrLc9NeeYaKXI5TFOq3
|
FiLyGIk/JyYGVxSfyouNIppgV3QaUr3SuUyCIa8U5BVgzrrLc9NeeYaKXI5TFOq3
|
||||||
@ -49,16 +59,30 @@ H2zqBm8koIaSdtBUYfsJM08=
|
|||||||
-----END PRIVATE KEY-----
|
-----END PRIVATE KEY-----
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const RSA_2048_CSR_PUB_KEY = `-----BEGIN PUBLIC KEY-----
|
// -------------------------------------------------------------
|
||||||
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkhQAPH9yK8qU3hYi8hiJ
|
|
||||||
PycmBlcUn8qLjSKaYFd0GlK90rlMgiGvFOQVYM66y3PTXnmGilyOUxTqtyK4Yy2a
|
const EC_PUB_KEY = `-----BEGIN PUBLIC KEY-----
|
||||||
qyr3GY6OrsS8I8EgvKiOVd39eO6hehPPz9fCGmbSZ9FyRxFmPM2dbvcDB1EQeIgu
|
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEtV2tWhuWHVvaZGpAfdbz6XK7YS8b
|
||||||
o7rM4OFIWMAIKils0ZfTjfGqqV0sadNXlLVV/lXuPhosSlgmX8TIy1mfE9a82FHw
|
qUx6D7VWiQkYidpzXWCTlnprARCO/2OK5t3EhUwZyPZueFr7lgIAFRFDkw==
|
||||||
v1tMJdTxST1RgUCgXgU0GihEYCyIzV+UJPxrxcLd21AXd+BoB/wsm4WoD9xgUBf/
|
|
||||||
mSexXFruDeLRexsZ+iGr4zxCCfOg3sYK0fVroM3KgcJnTTAOmyvQOF2oHpGPWqOE
|
|
||||||
RQIDAQAB
|
|
||||||
-----END PUBLIC KEY-----`;
|
-----END PUBLIC KEY-----`;
|
||||||
|
|
||||||
|
const EC_CSR = `-----BEGIN CERTIFICATE REQUEST-----
|
||||||
|
MIIBADCBpwIBADBFMQswCQYDVQQGEwJOQTETMBEGA1UECAwKU29tZS1TdGF0ZTEh
|
||||||
|
MB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMFkwEwYHKoZIzj0CAQYI
|
||||||
|
KoZIzj0DAQcDQgAEtV2tWhuWHVvaZGpAfdbz6XK7YS8bqUx6D7VWiQkYidpzXWCT
|
||||||
|
lnprARCO/2OK5t3EhUwZyPZueFr7lgIAFRFDk6AAMAoGCCqGSM49BAMCA0gAMEUC
|
||||||
|
IQCEswjMY+jmBXtUogwoZ9GjOb9g72ZAiiL3fbUIKKOuigIgK10fc/M2QSgfv9x6
|
||||||
|
r18dKfOku2+q1Sa9M08iee6hGUI=
|
||||||
|
-----END CERTIFICATE REQUEST-----`;
|
||||||
|
|
||||||
|
/* EC Private Key
|
||||||
|
-----BEGIN EC PRIVATE KEY-----
|
||||||
|
MHcCAQEEIA42NtMH8T9dPpbKlptxNcUmAIcv112fwJkn9XRYxbdMoAoGCCqGSM49
|
||||||
|
AwEHoUQDQgAEtV2tWhuWHVvaZGpAfdbz6XK7YS8bqUx6D7VWiQkYidpzXWCTlnpr
|
||||||
|
ARCO/2OK5t3EhUwZyPZueFr7lgIAFRFDkw==
|
||||||
|
-----END EC PRIVATE KEY-----
|
||||||
|
*/
|
||||||
|
|
||||||
TestRegister.addTests([
|
TestRegister.addTests([
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -130,11 +154,9 @@ MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEA
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "Public Key from CSR: corrupted Base64 body throws parse error",
|
name: "Public Key from CSR: EC P-256 returns correct public key",
|
||||||
input: `-----BEGIN CERTIFICATE REQUEST-----
|
input: EC_CSR,
|
||||||
!!THIS_IS_NOT_VALID_BASE64!!
|
expectedOutput: EC_PUB_KEY,
|
||||||
-----END CERTIFICATE REQUEST-----`,
|
|
||||||
expectedOutput: "Failed to parse CSR or extract public key:",
|
|
||||||
recipeConfig: [
|
recipeConfig: [
|
||||||
{
|
{
|
||||||
op: "Public Key from CSR",
|
op: "Public Key from CSR",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user