import { genKey, verifyKeyFromSignKey, pemFromVerifyKey, importVerifyKey, importSignKey, pemFromSignKey } from "./ECKey.js"; import { TypeLength } from "./TypeLength.js"; import { decodePEM } from "./utils.js"; test('gen_key', async () => { const [signKey, verifyKey] = await genKey(); expect(signKey.length).toEqual(TypeLength.ECDSA_PKCS8_P384_SignKey); expect(verifyKey.length).toEqual(TypeLength.ECDSA_SPKI_P384_VerifyKey); const pemVerifyKey = await pemFromVerifyKey(verifyKey); const verifyKey2 = decodePEM(pemVerifyKey, 'PUBLIC KEY')[0]; expect(verifyKey).toEqual(verifyKey2); }); test('convert', async () => { const [signKey, verifyKey] = await genKey(); const newVerifyKey = await verifyKeyFromSignKey(signKey); expect(verifyKey).toEqual(newVerifyKey); }) test('import sign_key', async() => { const [signKey, verifyKey] = await genKey(); const pemSignKey = pemFromSignKey(signKey); const signKey2 = decodePEM(pemSignKey, 'EC PRIVATE KEY')[0]; const signKeyObj = await importSignKey(signKey, true); const signKeyObj2 = await importSignKey(signKey2, true); expect(signKeyObj).toEqual(signKeyObj2); })