blob: 7b979a93f8689508efe28d4795acae0020c2912e [file] [log] [blame]
Tests structured cloning of ECDSA keys
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is true
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-256"
PASS importedKey.usages.join(',') is ""
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is true
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-256"
PASS clonedKey.usages.join(',') is ""
Serialized key bytes: 5c4b050e0101015b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78
PASS: Cloned key exported data should be [3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78] and was
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is true
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-256"
PASS importedKey.usages.join(',') is "verify"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is true
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-256"
PASS clonedKey.usages.join(',') is "verify"
Serialized key bytes: 5c4b050e0101115b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78
PASS: Cloned key exported data should be [3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78] and was
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is false
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-256"
PASS importedKey.usages.join(',') is ""
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is false
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-256"
PASS clonedKey.usages.join(',') is ""
Serialized key bytes: 5c4b050e0101005b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is false
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-256"
PASS importedKey.usages.join(',') is "verify"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is false
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-256"
PASS clonedKey.usages.join(',') is "verify"
Serialized key bytes: 5c4b050e0101105b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is true
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-384"
PASS importedKey.usages.join(',') is ""
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is true
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-384"
PASS clonedKey.usages.join(',') is ""
Serialized key bytes: 5c4b050e010201783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b9267
PASS: Cloned key exported data should be [3076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b9267] and was
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is true
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-384"
PASS importedKey.usages.join(',') is "verify"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is true
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-384"
PASS clonedKey.usages.join(',') is "verify"
Serialized key bytes: 5c4b050e010211783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b9267
PASS: Cloned key exported data should be [3076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b9267] and was
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is false
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-384"
PASS importedKey.usages.join(',') is ""
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is false
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-384"
PASS clonedKey.usages.join(',') is ""
Serialized key bytes: 5c4b050e010200783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b9267
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is false
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-384"
PASS importedKey.usages.join(',') is "verify"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is false
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-384"
PASS clonedKey.usages.join(',') is "verify"
Serialized key bytes: 5c4b050e010210783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b9267
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is true
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-521"
PASS importedKey.usages.join(',') is ""
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is true
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-521"
PASS clonedKey.usages.join(',') is ""
Serialized key bytes: 5c4b050e0103019e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee
PASS: Cloned key exported data should be [30819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee] and was
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is true
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-521"
PASS importedKey.usages.join(',') is "verify"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is true
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-521"
PASS clonedKey.usages.join(',') is "verify"
Serialized key bytes: 5c4b050e0103119e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee
PASS: Cloned key exported data should be [30819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee] and was
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is false
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-521"
PASS importedKey.usages.join(',') is ""
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is false
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-521"
PASS clonedKey.usages.join(',') is ""
Serialized key bytes: 5c4b050e0103009e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "public"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is false
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-521"
PASS importedKey.usages.join(',') is "verify"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "public"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is false
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-521"
PASS clonedKey.usages.join(',') is "verify"
Serialized key bytes: 5c4b050e0103109e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "private"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is true
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-256"
PASS importedKey.usages.join(',') is "sign"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "private"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is true
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-256"
PASS clonedKey.usages.join(',') is "sign"
Serialized key bytes: 5c4b050e0201098a01308187020100301306072a8648ce3d020106082a8648ce3d030107046d306b02010104201fe33950c5f461124ae992c2bdfdf1c73b1615f571bd567e60d19aa1f48cdf42a144034200047c110c66dcfda807f6e69e45ddb3c74f69a1484d203e8dc5ada8e9a9dd7cb3c70df448986e51bde5d1576f99901f9c2c6a806a47fd907643a72b835597efc8c6
PASS: Cloned key exported data should be [308187020100301306072a8648ce3d020106082a8648ce3d030107046d306b02010104201fe33950c5f461124ae992c2bdfdf1c73b1615f571bd567e60d19aa1f48cdf42a144034200047c110c66dcfda807f6e69e45ddb3c74f69a1484d203e8dc5ada8e9a9dd7cb3c70df448986e51bde5d1576f99901f9c2c6a806a47fd907643a72b835597efc8c6] and was
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "private"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is false
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-256"
PASS importedKey.usages.join(',') is "sign"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "private"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is false
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-256"
PASS clonedKey.usages.join(',') is "sign"
Serialized key bytes: 5c4b050e0201088a01308187020100301306072a8648ce3d020106082a8648ce3d030107046d306b02010104201fe33950c5f461124ae992c2bdfdf1c73b1615f571bd567e60d19aa1f48cdf42a144034200047c110c66dcfda807f6e69e45ddb3c74f69a1484d203e8dc5ada8e9a9dd7cb3c70df448986e51bde5d1576f99901f9c2c6a806a47fd907643a72b835597efc8c6
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "private"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is true
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-384"
PASS importedKey.usages.join(',') is "sign"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "private"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is true
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-384"
PASS clonedKey.usages.join(',') is "sign"
Serialized key bytes: 5c4b050e020209b9013081b6020100301006072a8648ce3d020106052b8104002204819e30819b0201010430a492ce8fa90084c227e1a32f7974d39e9ff67a7e8705ec3419b35fb607582bebd461e0b1520ac76ec2dd4e9b63ebae71a16403620004e55fee6c49d8d523f5ce7bf9c0425ce4ff650708b7de5cfb095901523979a7f042602db30854735369813b5c3f5ef86828f59cc5dc509892a988d38a8e2519de3d0c4fd0fbdb0993e38f18506c17606c5e24249246f1ce94983a5361c5be983e
PASS: Cloned key exported data should be [3081b6020100301006072a8648ce3d020106052b8104002204819e30819b0201010430a492ce8fa90084c227e1a32f7974d39e9ff67a7e8705ec3419b35fb607582bebd461e0b1520ac76ec2dd4e9b63ebae71a16403620004e55fee6c49d8d523f5ce7bf9c0425ce4ff650708b7de5cfb095901523979a7f042602db30854735369813b5c3f5ef86828f59cc5dc509892a988d38a8e2519de3d0c4fd0fbdb0993e38f18506c17606c5e24249246f1ce94983a5361c5be983e] and was
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "private"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is false
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-384"
PASS importedKey.usages.join(',') is "sign"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "private"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is false
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-384"
PASS clonedKey.usages.join(',') is "sign"
Serialized key bytes: 5c4b050e020208b9013081b6020100301006072a8648ce3d020106052b8104002204819e30819b0201010430a492ce8fa90084c227e1a32f7974d39e9ff67a7e8705ec3419b35fb607582bebd461e0b1520ac76ec2dd4e9b63ebae71a16403620004e55fee6c49d8d523f5ce7bf9c0425ce4ff650708b7de5cfb095901523979a7f042602db30854735369813b5c3f5ef86828f59cc5dc509892a988d38a8e2519de3d0c4fd0fbdb0993e38f18506c17606c5e24249246f1ce94983a5361c5be983e
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "private"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is true
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-521"
PASS importedKey.usages.join(',') is "sign"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "private"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is true
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-521"
PASS clonedKey.usages.join(',') is "sign"
Serialized key bytes: 5c4b050e020309f1013081ee020100301006072a8648ce3d020106052b810400230481d63081d3020101044201bd56bd106118eda246155bd43b42b8e13f0a6e25dd3bb376026fab4dc92b6157bc6dfec2d15dd3d0cf2a39aa68494042af48ba9601118da82c6f2108a3a203ad74a181890381860004012fbcaeffa6a51f3ee4d3d2b51c5dec6d7c726ca353fc014ea2bf7cfbb9b910d32cbfa6a00fe39b6cdb8946f22775398b2e233c0cf144d78c8a7742b5c7a3bb5d23009cdef823dd7bf9a79e8cceacd2e4527c231d0ae5967af0958e931d7ddccf2805a3e618dc3039fec9febbd33052fe4c0fee98f033106064982d88f4e03549d4a64d
PASS: Cloned key exported data should be [3081ee020100301006072a8648ce3d020106052b810400230481d63081d3020101044201bd56bd106118eda246155bd43b42b8e13f0a6e25dd3bb376026fab4dc92b6157bc6dfec2d15dd3d0cf2a39aa68494042af48ba9601118da82c6f2108a3a203ad74a181890381860004012fbcaeffa6a51f3ee4d3d2b51c5dec6d7c726ca353fc014ea2bf7cfbb9b910d32cbfa6a00fe39b6cdb8946f22775398b2e233c0cf144d78c8a7742b5c7a3bb5d23009cdef823dd7bf9a79e8cceacd2e4527c231d0ae5967af0958e931d7ddccf2805a3e618dc3039fec9febbd33052fe4c0fee98f033106064982d88f4e03549d4a64d] and was
PASS importedKey.extraProperty is "hi"
PASS importedKey.type is "private"
PASS typeof importedKey.extractable is 'boolean'
PASS importedKey.extractable is false
PASS importedKey.algorithm.name is "ECDSA"
PASS importedKey.algorithm.namedCurve is "P-521"
PASS importedKey.usages.join(',') is "sign"
PASS importedKey is not clonedKey
PASS clonedKey.extraProperty is undefined.
PASS clonedKey.type is "private"
PASS typeof clonedKey.extractable is 'boolean'
PASS clonedKey.extractable is false
PASS clonedKey.algorithm.name is "ECDSA"
PASS clonedKey.algorithm.namedCurve is "P-521"
PASS clonedKey.usages.join(',') is "sign"
Serialized key bytes: 5c4b050e020308f1013081ee020100301006072a8648ce3d020106052b810400230481d63081d3020101044201bd56bd106118eda246155bd43b42b8e13f0a6e25dd3bb376026fab4dc92b6157bc6dfec2d15dd3d0cf2a39aa68494042af48ba9601118da82c6f2108a3a203ad74a181890381860004012fbcaeffa6a51f3ee4d3d2b51c5dec6d7c726ca353fc014ea2bf7cfbb9b910d32cbfa6a00fe39b6cdb8946f22775398b2e233c0cf144d78c8a7742b5c7a3bb5d23009cdef823dd7bf9a79e8cceacd2e4527c231d0ae5967af0958e931d7ddccf2805a3e618dc3039fec9febbd33052fe4c0fee98f033106064982d88f4e03549d4a64d
PASS successfullyParsed is true
TEST COMPLETE