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

Function assertPrivateKey

test/parallel/test-crypto-pqc-key-objects-ml-dsa.js:76–101  ·  view source on GitHub ↗
(key, hasSeed)

Source from the content-addressed store, hash-verified

74 }
75
76 function assertPrivateKey(key, hasSeed) {
77 assertKey(key);
78 assert.strictEqual(key.type, 'private');
79 assertPublicKey(createPublicKey(key));
80 key.export({ format: 'der', type: 'pkcs8' });
81 if (hasSeed) {
82 assert.strictEqual(key.export({ format: 'pem', type: 'pkcs8' }), keys.private_seed_only);
83 const jwk = key.export({ format: 'jwk' });
84 assertPrivateJwk(jwk);
85 assert.strictEqual(key.equals(createPrivateKey({ format: 'jwk', key: jwk })), true);
86 assert.ok(createPublicKey({ format: 'jwk', key: jwk }));
87
88 // Raw seed round-trip
89 const rawSeed = key.export({ format: 'raw-seed' });
90 assert(Buffer.isBuffer(rawSeed));
91 assert.strictEqual(rawSeed.byteLength, 32);
92 const importedPriv = createPrivateKey({
93 key: rawSeed, format: 'raw-seed', asymmetricKeyType,
94 });
95 assert.strictEqual(importedPriv.equals(key), true);
96 } else {
97 assert.strictEqual(key.export({ format: 'pem', type: 'pkcs8' }), keys.private_priv_only);
98 assert.throws(() => key.export({ format: 'jwk' }),
99 { code: 'ERR_CRYPTO_OPERATION_FAILED', message: 'key does not have an available seed' });
100 }
101 }
102
103 if (!hasOpenSSL(3, 5) && !process.features.openssl_is_boringssl) {
104 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

Used in the wild real call sites across dependent graphs

searching dependent graphs…