Index: LayoutTests/crypto/subtle/ecdsa/cloneKey-expected.txt |
diff --git a/LayoutTests/crypto/subtle/clone-ecKey-public-expected.txt b/LayoutTests/crypto/subtle/ecdsa/cloneKey-expected.txt |
similarity index 62% |
rename from LayoutTests/crypto/subtle/clone-ecKey-public-expected.txt |
rename to LayoutTests/crypto/subtle/ecdsa/cloneKey-expected.txt |
index 990d0f5755b1234ec8a5b988e697de2690a8bf37..f949a3124890e49ea02f207f621e24434cd91825 100644 |
--- a/LayoutTests/crypto/subtle/clone-ecKey-public-expected.txt |
+++ b/LayoutTests/crypto/subtle/ecdsa/cloneKey-expected.txt |
@@ -1,4 +1,4 @@ |
-Tests structured cloning of EC public keys |
+Tests structured cloning of ECDSA keys |
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". |
@@ -26,41 +26,40 @@ 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.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-384" |
-PASS clonedKey.usages.join(',') is "" |
-Serialized key bytes: 3f004b050e010201783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b926700 |
-PASS: Cloned key exported data should be [3076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b9267] and was |
+PASS clonedKey.algorithm.namedCurve is "P-256" |
+PASS clonedKey.usages.join(',') is "verify" |
+Serialized key bytes: 3f004b050e0101115b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78 |
+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.extractable is false |
PASS importedKey.algorithm.name is "ECDSA" |
-PASS importedKey.algorithm.namedCurve is "P-521" |
+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.extractable is false |
PASS clonedKey.algorithm.name is "ECDSA" |
-PASS clonedKey.algorithm.namedCurve is "P-521" |
+PASS clonedKey.algorithm.namedCurve is "P-256" |
PASS clonedKey.usages.join(',') is "" |
-Serialized key bytes: 3f004b050e0103019e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee |
-PASS: Cloned key exported data should be [30819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee] and was |
+Serialized key bytes: 3f004b050e0101005b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78 |
PASS importedKey.extraProperty is "hi" |
PASS importedKey.type is "public" |
PASS typeof importedKey.extractable is 'boolean' |
-PASS importedKey.extractable is true |
+PASS importedKey.extractable is false |
PASS importedKey.algorithm.name is "ECDSA" |
PASS importedKey.algorithm.namedCurve is "P-256" |
PASS importedKey.usages.join(',') is "verify" |
@@ -68,12 +67,11 @@ 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.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: 3f004b050e0101115b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78 |
-PASS: Cloned key exported data should be [3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78] and was |
+Serialized key bytes: 3f004b050e0101105b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78 |
PASS importedKey.extraProperty is "hi" |
PASS importedKey.type is "public" |
@@ -81,7 +79,7 @@ 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.usages.join(',') is "" |
PASS importedKey is not clonedKey |
PASS clonedKey.extraProperty is undefined. |
PASS clonedKey.type is "public" |
@@ -89,8 +87,8 @@ 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: 3f004b050e010211783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b926700 |
+PASS clonedKey.usages.join(',') is "" |
+Serialized key bytes: 3f004b050e010201783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b926700 |
PASS: Cloned key exported data should be [3076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b9267] and was |
PASS importedKey.extraProperty is "hi" |
@@ -98,7 +96,7 @@ 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.algorithm.namedCurve is "P-384" |
PASS importedKey.usages.join(',') is "verify" |
PASS importedKey is not clonedKey |
PASS clonedKey.extraProperty is undefined. |
@@ -106,17 +104,17 @@ 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.algorithm.namedCurve is "P-384" |
PASS clonedKey.usages.join(',') is "verify" |
-Serialized key bytes: 3f004b050e0103119e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee |
-PASS: Cloned key exported data should be [30819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee] and was |
+Serialized key bytes: 3f004b050e010211783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b926700 |
+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-256" |
+PASS importedKey.algorithm.namedCurve is "P-384" |
PASS importedKey.usages.join(',') is "" |
PASS importedKey is not clonedKey |
PASS clonedKey.extraProperty is undefined. |
@@ -124,9 +122,9 @@ 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.algorithm.namedCurve is "P-384" |
PASS clonedKey.usages.join(',') is "" |
-Serialized key bytes: 3f004b050e0101005b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78 |
+Serialized key bytes: 3f004b050e010200783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b926700 |
PASS importedKey.extraProperty is "hi" |
PASS importedKey.type is "public" |
@@ -134,7 +132,7 @@ 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.usages.join(',') is "verify" |
PASS importedKey is not clonedKey |
PASS clonedKey.extraProperty is undefined. |
PASS clonedKey.type is "public" |
@@ -142,8 +140,44 @@ 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: 3f004b050e010210783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b926700 |
+ |
+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: 3f004b050e010200783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b926700 |
+Serialized key bytes: 3f004b050e0103019e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee |
+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: 3f004b050e0103119e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee |
+PASS: Cloned key exported data should be [30819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee] and was |
PASS importedKey.extraProperty is "hi" |
PASS importedKey.type is "public" |
@@ -167,7 +201,7 @@ 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.algorithm.namedCurve is "P-521" |
PASS importedKey.usages.join(',') is "verify" |
PASS importedKey is not clonedKey |
PASS clonedKey.extraProperty is undefined. |
@@ -175,43 +209,114 @@ 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.algorithm.namedCurve is "P-521" |
PASS clonedKey.usages.join(',') is "verify" |
-Serialized key bytes: 3f004b050e0101105b3059301306072a8648ce3d020106082a8648ce3d030107034200049cb0cf69303dafc761d4e4687b4ecf039e6d34ab964af80810d8d558a4a8d6f72d51233a1788920a86ee08a1962c79efa317fb7879e297dad2146db995fa1c78 |
+Serialized key bytes: 3f004b050e0103109e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee |
PASS importedKey.extraProperty is "hi" |
-PASS importedKey.type is "public" |
+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: 3f004b050e0201098a01308187020100301306072a8648ce3d020106082a8648ce3d030107046d306b02010104201fe33950c5f461124ae992c2bdfdf1c73b1615f571bd567e60d19aa1f48cdf42a144034200047c110c66dcfda807f6e69e45ddb3c74f69a1484d203e8dc5ada8e9a9dd7cb3c70df448986e51bde5d1576f99901f9c2c6a806a47fd907643a72b835597efc8c6 |
+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: 3f004b050e0201088a01308187020100301306072a8648ce3d020106082a8648ce3d030107046d306b02010104201fe33950c5f461124ae992c2bdfdf1c73b1615f571bd567e60d19aa1f48cdf42a144034200047c110c66dcfda807f6e69e45ddb3c74f69a1484d203e8dc5ada8e9a9dd7cb3c70df448986e51bde5d1576f99901f9c2c6a806a47fd907643a72b835597efc8c6 |
+ |
+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 "verify" |
+PASS importedKey.usages.join(',') is "sign" |
PASS importedKey is not clonedKey |
PASS clonedKey.extraProperty is undefined. |
-PASS clonedKey.type is "public" |
+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: 3f004b050e020209b9013081b6020100301006072a8648ce3d020106052b8104002204819e30819b0201010430a492ce8fa90084c227e1a32f7974d39e9ff67a7e8705ec3419b35fb607582bebd461e0b1520ac76ec2dd4e9b63ebae71a16403620004e55fee6c49d8d523f5ce7bf9c0425ce4ff650708b7de5cfb095901523979a7f042602db30854735369813b5c3f5ef86828f59cc5dc509892a988d38a8e2519de3d0c4fd0fbdb0993e38f18506c17606c5e24249246f1ce94983a5361c5be983e00 |
+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 "verify" |
-Serialized key bytes: 3f004b050e010210783076301006072a8648ce3d020106052b81040022036200040874a2e0b8ff448f0e54321e27f4f1e64d064cdeb7d26f458c32e930120f4e57dc85c2693f977eed4a8ecc8db981b4d91f69446df4f4c6f5de19003f45f891d0ebcd2fffdb5c81c040e8d6994c43c7feedb98a4a31edfb35e89a30013c3b926700 |
+PASS clonedKey.usages.join(',') is "sign" |
+Serialized key bytes: 3f004b050e020208b9013081b6020100301006072a8648ce3d020106052b8104002204819e30819b0201010430a492ce8fa90084c227e1a32f7974d39e9ff67a7e8705ec3419b35fb607582bebd461e0b1520ac76ec2dd4e9b63ebae71a16403620004e55fee6c49d8d523f5ce7bf9c0425ce4ff650708b7de5cfb095901523979a7f042602db30854735369813b5c3f5ef86828f59cc5dc509892a988d38a8e2519de3d0c4fd0fbdb0993e38f18506c17606c5e24249246f1ce94983a5361c5be983e00 |
PASS importedKey.extraProperty is "hi" |
-PASS importedKey.type is "public" |
+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: 3f004b050e020309f1013081ee020100301006072a8648ce3d020106052b810400230481d63081d3020101044201bd56bd106118eda246155bd43b42b8e13f0a6e25dd3bb376026fab4dc92b6157bc6dfec2d15dd3d0cf2a39aa68494042af48ba9601118da82c6f2108a3a203ad74a181890381860004012fbcaeffa6a51f3ee4d3d2b51c5dec6d7c726ca353fc014ea2bf7cfbb9b910d32cbfa6a00fe39b6cdb8946f22775398b2e233c0cf144d78c8a7742b5c7a3bb5d23009cdef823dd7bf9a79e8cceacd2e4527c231d0ae5967af0958e931d7ddccf2805a3e618dc3039fec9febbd33052fe4c0fee98f033106064982d88f4e03549d4a64d00 |
+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 "verify" |
+PASS importedKey.usages.join(',') is "sign" |
PASS importedKey is not clonedKey |
PASS clonedKey.extraProperty is undefined. |
-PASS clonedKey.type is "public" |
+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 "verify" |
-Serialized key bytes: 3f004b050e0103109e0130819b301006072a8648ce3d020106052b81040023038186000400f50a08703250c15f043c8c46e99783435245cf98f4f2694b0e2f8d029a514dd6f0b086d4ed892000cd5590107aae69c4c0a7a95f7cf74e5770a07d5db55bce4ab400f2c770bab8b9be4cdb6ecd3dc26c698da0d2599cebf3d904f7f9ca3a55e64731810d73cd317264e50baba4bc2860857e16d6cbb79501bc9e3a32bd172ea8a71dee |
+PASS clonedKey.usages.join(',') is "sign" |
+Serialized key bytes: 3f004b050e020308f1013081ee020100301006072a8648ce3d020106052b810400230481d63081d3020101044201bd56bd106118eda246155bd43b42b8e13f0a6e25dd3bb376026fab4dc92b6157bc6dfec2d15dd3d0cf2a39aa68494042af48ba9601118da82c6f2108a3a203ad74a181890381860004012fbcaeffa6a51f3ee4d3d2b51c5dec6d7c726ca353fc014ea2bf7cfbb9b910d32cbfa6a00fe39b6cdb8946f22775398b2e233c0cf144d78c8a7742b5c7a3bb5d23009cdef823dd7bf9a79e8cceacd2e4527c231d0ae5967af0958e931d7ddccf2805a3e618dc3039fec9febbd33052fe4c0fee98f033106064982d88f4e03549d4a64d00 |
PASS successfullyParsed is true |