MCPcopy Index your code
hub / github.com/nodejs/node / assertPrivateKey

Function assertPrivateKey

test/parallel/test-crypto-pqc-key-objects-slh-dsa.js:76–100  ·  view source on GitHub ↗
(key)

Source from the content-addressed store, hash-verified

74 }
75
76 function assertPrivateKey(key) {
77 assertKey(key);
78 assert.strictEqual(key.type, 'private');
79 assertPublicKey(createPublicKey(key));
80 key.export({ format: 'der', type: 'pkcs8' });
81 assert.strictEqual(key.export({ format: 'pem', type: 'pkcs8' }), keys.private);
82 const jwk = key.export({ format: 'jwk' });
83 assertPrivateJwk(jwk);
84 assert.strictEqual(key.equals(createPrivateKey({ format: 'jwk', key: jwk })), true);
85 assert.ok(createPublicKey({ format: 'jwk', key: jwk }));
86
87 // Raw format round-trip
88 const rawPriv = key.export({ format: 'raw-private' });
89 assert(Buffer.isBuffer(rawPriv));
90 const importedPriv = createPrivateKey({
91 key: rawPriv, format: 'raw-private', asymmetricKeyType,
92 });
93 assert.strictEqual(importedPriv.equals(key), true);
94 assert.throws(() => createPrivateKey({
95 key: rawPriv, format: 'raw-seed', asymmetricKeyType,
96 }), { code: 'ERR_CRYPTO_INCOMPATIBLE_KEY_OPTIONS' });
97 assert.throws(() => createPublicKey({
98 key: rawPriv, format: 'raw-seed', asymmetricKeyType,
99 }), { code: 'ERR_CRYPTO_INCOMPATIBLE_KEY_OPTIONS' });
100 }
101
102 if (!hasOpenSSL(3, 5)) {
103 assert.throws(() => createPublicKey(keys.public), {

Calls 9

createPublicKeyFunction · 0.85
createPrivateKeyFunction · 0.85
assertKeyFunction · 0.70
assertPublicKeyFunction · 0.70
assertPrivateJwkFunction · 0.70
assertFunction · 0.50
exportMethod · 0.45
equalsMethod · 0.45
okMethod · 0.45

Tested by

no test coverage detected