From f9d7a2887d89fc489345a627ea9b313e9fd2cc7b Mon Sep 17 00:00:00 2001 From: Michael Lodder Date: Tue, 17 Dec 2024 10:00:36 -0700 Subject: [PATCH] fix tests Signed-off-by: Michael Lodder --- samples/credentials/w3c_credential.json | 10 +- .../anoncreds_presentation_list.json | 2022 ++++++++--------- samples/presentations/w3c_presentation.json | 12 +- tests/equality-and-reveal.rs | 29 +- tests/flow.rs | 9 +- tests/out-of-range-panic.rs | 3 +- tests/real-id.rs | 96 +- 7 files changed, 1098 insertions(+), 1083 deletions(-) diff --git a/samples/credentials/w3c_credential.json b/samples/credentials/w3c_credential.json index aa6773d..4786a15 100644 --- a/samples/credentials/w3c_credential.json +++ b/samples/credentials/w3c_credential.json @@ -12,15 +12,15 @@ "name": "John Doe", "revocation_identifier": "91742856-6eda-45fb-a709-d22ebb5ec8a5" }, - "issuanceDate": "2024-07-31T21:39:16Z", + "issuanceDate": "2024-12-17T17:00:26Z", "issuer": { - "cred_def": "did:key:aa7edc5a5f59ff69a804ca823cd790b9", - "id": "did:key:aa7edc5a5f59ff69a804ca823cd790b9", - "schema": "did:key:3b30086c38ee158a79cf9948acefd418" + "cred_def": "did:key:cd60b1650d31e8c4bdf9f948ae10d44a", + "id": "did:key:cd60b1650d31e8c4bdf9f948ae10d44a", + "schema": "did:key:b0182bb87d708864543d223583386a25" }, "proof": { "proofPurpose": "assertionMethod", - "proofValue": "ukoGpc2lnbmF0dXJlg6ZtX3RpY2vZQDEwNTZlMjU3ODJlZDE0ZGJjNTY0YTE5ZjM2ZTMzOTc5OTMxYzBmYTQ0ZWU4OWQzNDk1YjVhNWE4OTI5MTE5Njmnc2lnbWFfMdlgYjUyZDcyNGM4ZTdhYjJiYzExYzRmMzYzYmRkMTJkMjUzNTNlNjNhODA0Nzc5MWFmZjE2MTViYWU5ZGVmZmY5NzM4MmM0OGU4MGE4YjBhOGM4YmIyNjk1NmVhZGM4NmVkp3NpZ21hXzLZYDgxMDhmMTAxNjE0NWQ5ZjA0YTdkYzU4MmU5YzBiOTcxMWZhNzcyOWI0Njk0NWQ5NjE2NzI3Mzk2YmZhNjc0YWExYWQyMjVhMzc0ZDVkZGU4NGZmMGJjMmM1YTQ0NmUyMIKxcmV2b2NhdGlvbl9oYW5kbGXZYGEzZGRhZWZkZWU4NGEwN2YxYWQzNDQ2ZjBlMzZiYmM0ZjBhNDI3YTg3NmZlMDFkMTE3ZGQ5MjJkODQ3ZGI0MTZmOGVlMWNkNGQ1YjUxMGI5NTEzMDkyZGI1ZjA1OTczMLByZXZvY2F0aW9uX2luZGV4AA", + "proofValue": "ukoGpc2lnbmF0dXJlg6ZtX3RpY2vZQDEwNTZlMjU3ODJlZDE0ZGJjNTY0YTE5ZjM2ZTMzOTc5OTMxYzBmYTQ0ZWU4OWQzNDk1YjVhNWE4OTI5MTE5Njmnc2lnbWFfMdlgYjUyZDcyNGM4ZTdhYjJiYzExYzRmMzYzYmRkMTJkMjUzNTNlNjNhODA0Nzc5MWFmZjE2MTViYWU5ZGVmZmY5NzM4MmM0OGU4MGE4YjBhOGM4YmIyNjk1NmVhZGM4NmVkp3NpZ21hXzLZYGI2YjU4NDU4MGY3MzVkZGRkMWZiMDIyNGNlYWEyNjMwNTUzMjc1OWVjOTM0MzlkMGQ3OGEyNjlkOTEyNmJhYzM4OTI1YjNjNjhlYzYzYWExODlhNDY5YzUzOTZlMDViMYKxcmV2b2NhdGlvbl9oYW5kbGXZYGI2ZWY3ODMzYTA3YTJmYWRlOWE0OWM4MzcwOGE0OWI5OTJkMTc3NWE0NDlhNTE0NjM1NDhlZmIyZDJkYzU0MDdhMmE4MDY0NWRkOGI5YzFhZTAyNzVlOTU3OTg4ZjE2N7ByZXZvY2F0aW9uX2luZGV4AA", "type": "DataIntegrityProof", "verificationMethod": "did:key:z6MkwXG2WjeQnNxSoynSGYU8V9j3QzP3JSqhdmkHc6SaVWoT/credential-definition" }, diff --git a/samples/presentations/anoncreds_presentation_list.json b/samples/presentations/anoncreds_presentation_list.json index 43a1514..73f4a7f 100644 --- a/samples/presentations/anoncreds_presentation_list.json +++ b/samples/presentations/anoncreds_presentation_list.json @@ -1,1109 +1,1109 @@ [ { "proofs": { - "99f04fc122c4aa7c15cf9267b8d038c4": { + "868be8a85019732bf8e0a6595444afdb": { "Range": { - "id": "99f04fc122c4aa7c15cf9267b8d038c4", + "id": "868be8a85019732bf8e0a6595444afdb", "proof": [ - 145, - 201, - 121, - 185, - 170, - 164, - 77, - 171, - 20, - 95, - 1, - 18, - 191, - 105, - 175, - 2, - 115, - 12, - 143, - 96, - 115, - 95, - 114, - 106, - 26, - 241, - 214, - 92, - 42, - 241, - 4, - 162, - 214, - 244, - 98, - 141, - 65, - 242, - 18, - 223, - 24, - 230, - 49, - 68, - 73, - 249, - 195, - 225, 184, - 248, + 147, 119, - 203, - 8, - 203, - 180, - 172, - 49, - 158, - 120, - 124, - 110, - 31, - 118, - 24, - 255, - 35, - 5, - 5, - 144, - 208, - 113, - 247, 253, - 255, - 188, - 94, - 160, - 149, - 83, - 123, - 194, - 249, - 136, - 44, - 84, - 230, + 132, 13, - 149, - 7, - 101, - 159, - 40, - 153, - 190, + 123, + 91, 2, - 141, - 153, - 109, - 86, - 180, - 201, - 165, - 34, - 168, - 22, - 54, - 106, - 67, + 184, + 6, + 134, + 8, 132, - 252, 213, - 84, - 196, - 83, - 221, - 96, - 227, - 42, - 145, - 192, - 242, - 88, - 123, - 70, - 119, - 80, - 83, - 115, + 12, 251, + 251, + 85, + 237, 132, - 225, - 58, - 207, - 47, - 199, - 125, - 75, - 192, - 250, - 115, - 98, - 108, - 139, - 69, - 130, + 144, + 240, + 109, + 24, + 114, + 126, + 140, + 227, + 141, 89, - 80, - 180, - 136, + 240, + 239, + 124, + 13, + 107, + 97, + 17, + 205, + 163, + 124, + 103, + 52, + 105, + 202, + 191, + 174, + 153, + 169, + 221, + 37, + 30, + 126, + 65, + 244, + 239, + 99, + 147, + 108, + 165, + 55, + 145, + 83, + 206, + 123, + 41, + 220, + 81, + 87, + 42, + 153, + 3, + 26, + 95, 170, - 72, - 161, - 195, - 44, + 182, 12, - 59, - 86, - 71, - 121, - 80, + 62, + 244, + 172, + 244, + 226, + 7, + 85, + 89, + 12, + 198, + 6, + 240, + 188, + 145, + 3, + 245, + 29, 238, - 56, - 91, - 154, - 223, - 121, - 232, - 126, - 92, - 84, - 122, - 249, - 21, + 19, + 162, + 69, 44, - 8, - 3, - 158, - 24, - 157, - 229, - 91, - 42, - 130, - 132, - 118, - 155, - 134, + 150, + 43, + 58, + 182, 104, - 155, - 56, - 118, - 74, + 104, + 8, 52, - 59, - 63, - 196, - 190, - 7, - 133, - 106, - 105, - 178, - 62, - 2, - 175, - 165, + 134, + 73, + 134, + 79, + 171, + 20, + 113, + 132, + 255, + 96, + 44, + 119, + 46, 51, - 87, - 81, - 197, - 59, - 36, - 47, - 30, - 72, + 234, + 253, + 40, + 241, + 69, + 190, + 233, + 70, + 94, + 121, + 243, + 247, + 152, 51, - 50, - 39, - 125, - 137, - 16, - 102, - 78, - 149, - 80, - 238, - 200, - 252, - 12, - 173, - 194, - 177, - 101, + 236, + 69, + 223, + 28, + 199, 169, - 127, - 185, - 246, + 120, + 181, + 68, + 180, + 81, + 144, + 215, + 157, + 100, + 181, + 98, + 253, + 96, + 34, + 147, + 225, + 146, 133, - 112, - 76, - 36, - 179, - 79, + 19, + 8, + 49, + 101, + 132, + 242, + 175, + 240, + 33, + 240, + 210, 176, - 121, - 232, - 120, - 251, - 255, 70, - 18, - 247, - 119, + 77, 213, - 148, - 32, - 12, - 42, - 70, + 15, + 143, + 35, + 186, + 10, + 106, 254, - 69, - 149, - 77, - 251, - 49, - 156, - 219, - 5, - 239, + 13, 2, - 231, - 243, + 132, + 169, + 37, + 25, + 50, + 92, + 55, + 108, + 240, + 35, + 247, + 37, + 25, + 208, + 126, + 210, + 202, 66, + 210, + 156, + 230, + 92, + 184, + 159, + 56, + 88, + 193, + 175, + 239, + 161, + 49, + 70, + 126, + 41, + 57, + 67, 45, - 142, - 26, - 116, - 122, - 171, - 43, - 42, + 239, + 85, + 175, + 96, + 78, + 52, + 211, + 185, + 30, + 137, + 101, + 241, + 243, + 245, 221, - 58, - 165, - 163, - 202, - 130, - 178, + 209, + 67, 18, - 68, + 195, + 152, + 194, + 104, + 165, + 73, 224, - 94, - 99, - 17, - 206, - 5, - 243, - 59, - 1, - 55, - 188, - 182, - 87, - 190, - 72, - 147, + 237, + 120, 71, - 241, - 51, + 171, + 213, + 120, + 12, + 238, + 146, + 106, + 11, + 110, + 161, + 17, + 229, + 37, + 175, + 152, + 82, + 119, + 65, + 54, + 65, + 111, + 36, + 251, + 160, + 86, + 185, + 164, + 58, + 186, 159, - 3, - 248, - 89, - 150, - 92, - 203, - 195, - 235, - 211, + 105, + 61, + 162, + 47, + 126, 125, - 31, - 153, - 185, + 22, + 201, + 225, + 69, + 86, 39, - 111, - 99, - 191, - 168, - 40, + 190, + 103, + 73, + 34, + 252, + 157, + 223, + 68, + 114, + 122, + 33, + 147, + 163, + 10, + 52, + 81, 116, - 77, - 214, - 82, - 205, - 173, - 12, - 42, - 12, - 160, - 183, - 228, - 117, - 62, - 31, + 225, + 136, + 116, + 91, + 121, + 188, 227, - 246, - 102, - 13, - 37, - 146, - 14, + 105, 56, - 140, - 175, - 6, - 182, - 151, - 8, - 193, - 214, - 14, - 7, - 11, - 30, - 107, - 42, - 221, - 170, + 127, + 39, + 139, + 119, + 64, + 242, + 198, + 3, + 143, + 201, + 109, + 21, + 69, + 202, 176, - 179, - 120, - 49, + 129, + 239, + 135, + 39, + 123, + 156, 222, - 120, + 230, + 68, + 225, + 42, + 93, + 184, 162, - 1, - 165, - 57, - 141, - 113, - 72, - 253, - 214, - 163, + 202, + 125, 84, + 202, + 171, + 64, + 208, + 150, + 130, + 108, + 23, + 3, + 186, + 206, + 106, + 162, + 4, + 251, + 171, + 179, + 204, + 124, + 83, + 198, + 174, + 151, + 249, + 39, + 200, + 225, + 137, + 105, 136, - 158, - 22, - 165, - 144, - 74, - 161, - 53, + 220, + 201, + 237, + 9, + 71, + 168, + 124, + 86, + 207, + 195, 159, + 243, + 212, + 126, + 215, + 199, + 22, + 39, 237, - 57, - 120, - 65, - 43, - 48, - 148, - 55, - 147, - 160, - 67, - 150, - 149, - 63, - 187, + 89, + 107, + 210, + 173, + 50, + 114, 157, - 131, 169, - 71, - 179, - 74, - 9, - 227, - 142, - 215, - 80, - 44, - 118, - 225, - 76, - 0, - 198, - 25, - 37, - 70, - 243, - 235, - 152, - 5, + 4, + 141, + 108, + 100, + 15, + 229, + 40, + 154, + 191, + 83, + 77, + 189, + 228, + 230, + 151, + 40, + 222, + 13, + 174, + 43, + 78, + 42, + 46, + 207, + 163, + 185, + 107, + 26, + 126, + 31, + 110, + 199, + 20, + 115, + 199, 44, - 198, - 200, + 137, + 85, + 71, + 220, + 187, + 219, + 253, 162, - 225, - 108, - 155, - 193, - 174, - 127, - 3, - 147, - 212, - 126, - 194, - 129, - 251, - 236, - 14, - 246, - 152, + 52, + 96, 6, - 120, - 160, - 211, - 255, - 230, - 189, - 252, - 19, - 104, - 37, - 62, - 8, - 125, - 229, - 5, - 72, - 12, - 57, - 24, - 9, - 13, - 166, - 159, - 135, - 145, - 171, - 77, + 47, + 51, + 36, + 217, + 248, + 46, + 114, + 248, + 141, + 172, + 85, + 158, + 111, + 69, + 196, + 64, + 138, + 76, + 29, + 4, 116, - 1, - 233, - 192, - 19, + 41, + 117, + 99, + 17, + 49, + 243, + 7, 43, - 204, + 54, + 62, + 250, + 201, + 223, + 177, + 104, + 205, + 228, 247, - 85, - 58, - 45, - 191, - 183, - 188, - 169, - 148, - 121, - 232, - 224, - 25, - 199, - 229, - 191, - 136, - 196, - 31, - 232, + 96, + 122, 166, + 158, + 184, + 137, + 67, + 28, + 251, + 42, + 122, 15, - 250, + 129, + 30, + 146, + 170, 172, - 60, - 34, - 83, - 186, - 228, - 183, - 189, - 72, - 139, - 213, - 121, - 147, + 6, + 57, + 114, + 111, + 127, + 235, + 19, + 156, 97, - 110, + 119, + 34, + 93, + 229, + 237, + 136, + 149, + 222, + 70, + 249, 24, - 142, - 94, - 178, - 18, + 152, + 79, + 152, + 176, + 207, + 174, + 255, + 179, 57, - 129, - 167, - 20, - 153, - 49, - 240, - 98, + 212, 210, - 106, - 130, - 102, - 134, - 68, + 55, + 183, + 230, + 126, + 135, + 181, + 9, + 73, + 76, 82, - 81, - 228, - 32, + 242, 83, - 184, - 157, - 252, - 123, - 229, - 78, - 251, - 234, - 237, - 219, - 250, - 249, - 54, - 0, 219, - 1, - 254, - 167, - 64, - 186, - 13, - 64, - 75, - 85, - 217, - 203, - 66, - 187, - 232, - 170, - 116, - 56, - 167, - 91, - 126, - 23, - 11, - 119, - 82, - 3, - 190, + 104, + 127, + 132, + 22, + 225, + 198, + 162, + 237, + 26, + 189, + 197, + 86, 165, - 54, - 62, - 161, - 112, - 136, + 193, + 2, + 4, + 150, + 254, 190, + 233, + 33, + 2, + 212, + 204, + 29, + 22, 223, - 9, - 153, - 218, - 255, - 113, - 189, - 1, - 167, - 151, - 183, - 49, - 12, - 240, + 159, + 106, + 210, + 142, + 230, + 116, + 244, + 130, + 221, + 249, + 6, + 26, + 172, + 178, + 147, + 125, + 29, 161, - 71, - 204, - 170, - 203, - 148, - 65, - 226, - 84, - 53, - 185, - 216, - 195, + 251, + 220, + 188, + 8, + 238, 113, - 139, - 255, - 23, - 141, - 35, + 168, + 192, + 90, + 94, + 116, + 71, + 81, + 133, + 44, + 14, + 3, + 158, + 196, + 191, + 24, + 101, + 199, + 146, + 248, + 166, + 52, + 168, 240, - 40, + 172, + 132, 140, - 104, - 185, - 83, - 230, - 97, - 144, - 246, - 117, - 216, - 146, + 130, + 110, + 166, 242, - 204, - 122, - 255, - 128, - 117, - 174, - 240, + 253, + 145, + 102, + 25, + 149, + 131, + 216, + 141, + 14, + 156, + 94, + 127, + 226, + 27, + 252, + 151, + 111, + 187, + 191, + 87, + 112, + 11, + 37, + 207, + 161, + 90, + 48, 42, - 104, - 113, + 200, + 7, + 109, + 149, 32, - 214, - 41, - 220, - 213, - 138, - 146, - 16, + 131, 161, - 206, - 37, - 85, - 188, - 82, - 197, - 103, - 31, - 181, - 82, - 146, - 200, - 137, - 250, + 51, + 239, 237, + 59, + 221, + 66, + 226, + 13, + 160, + 170, + 241, + 29, + 140, + 33, + 151, + 93, + 178, + 244, + 184, + 255, + 172, + 155, + 16, + 80, + 208, 91, - 92, - 248, - 61, - 55, - 249, - 144, - 99, - 169, + 201, + 176, + 135, + 77, + 96, 18, - 188, - 95, - 140, - 69, - 167, - 21, - 234, - 209, - 45, - 136, - 146, - 61, - 141, 105, - 211, - 62, - 85, - 74, - 134, - 222, - 172, + 153, + 205, + 119, + 76, + 234, + 192, + 7, 116, - 190, - 108, - 146, - 51, - 55, - 85, - 88, - 86, - 158, + 186, + 201, + 114, + 223, + 132, + 79, + 174, + 251, + 24, + 210, + 198, + 64, + 182, + 130, + 212, + 53, + 67, + 154, + 30, + 143, + 173, + 32, + 62, + 133, + 224, + 107, 26, - 178, - 184, - 242, - 203, - 37, + 177, + 7, + 153, 210, - 55, - 35, - 37, - 87, - 243, - 71, - 45, - 3, + 232, + 186, + 10, + 63, + 207, + 2, + 59, 150, - 34, - 35, - 27, - 37, - 231, - 223, + 112, + 204, + 6, + 76, + 17, + 130, + 115, + 46, + 88, + 19, + 2, + 14, + 151, + 89, + 115, + 51, + 215, + 135, + 152, + 186, + 36, + 0, 239, - 102, - 136, + 154, + 239, + 231, + 94, + 202, 225, - 127, - 144, - 54, - 93, - 215, - 180, + 185, + 60, + 166, + 27, + 65, + 247, + 10, + 140, + 105, + 210, + 108, 89, - 57, - 1, - 40, - 16, - 226, - 147, - 88, - 62, - 143, - 228, - 51, 146, - 52, - 49, - 222, + 16, + 136, + 131, + 86, + 3, 251, - 154, - 70, - 249, - 249, - 33, - 76, - 1, - 65, - 151, - 160, - 234, - 216, - 139, - 224, + 196, + 170, + 36, + 24, + 26, + 233, + 163, 173, - 76, - 178, - 101, - 255, - 240, - 114, - 54, - 116, - 137, - 178, - 55, - 172, - 143, - 158, - 81, - 59, - 161, - 62, - 61, - 152, + 192, + 163, + 243, + 179, + 15, + 4, 135, - 211, + 22, 128, - 157, - 175, - 223, - 243, - 159, - 124, - 16, + 108, + 247, + 112, + 192, + 247, + 64, + 204, + 201, 228, - 231, + 203, + 47, + 29, + 244, + 159, 105, - 24, - 121, - 119, - 228, - 96, - 104, - 182, - 27, - 250, - 89, - 120, - 134, - 229, - 139, - 134, - 43, + 189, + 0, + 122, + 37, 140, - 139, - 162, - 249, - 85, - 67, - 178, 227, - 151, - 255, - 126, + 215, + 229, 197, - 49, - 124, - 159, - 105, - 78, + 199, + 31, + 200, + 126, + 164, + 62, + 31, + 220, + 34, + 251, + 147, + 12, + 114, + 118, 73, + 212, + 19, + 118, + 176, + 10, + 44, + 208, + 175, + 42, + 131, + 199, 132, - 29, - 2, - 95, - 32, - 75, + 223, + 171, + 128, + 114, + 65, + 141, + 177, + 94, + 40, + 86, + 241, + 142, + 23, + 126, + 238, + 215, + 141, + 19, + 250, + 153, + 141, + 250, + 147, + 205, + 42, + 103, + 94, + 16, + 158, + 79, 10, - 183, - 233, - 159, + 205, + 205, + 218, + 62, + 68, + 255, + 235, 40, - 63, + 153, + 135, + 151, + 252, + 190, + 34, + 132, 191, - 161, - 53, - 234, - 1, - 253, + 227, + 247, + 243, + 130, + 245, + 190, + 123, + 4, + 64, + 148, 58, + 132, + 122, + 68, + 94, + 254, + 80, + 128, + 126, + 223, + 248, + 191, + 253, 237, - 120, - 22, - 1, - 175, + 208, + 222, + 38, + 158, + 121, + 91, + 99, + 117, + 167, + 21, 143, - 245, - 5, - 42, - 138, - 66, - 227, - 75, - 26, + 182, + 25, + 20, + 38, 205, - 179, - 95, - 81, - 33, - 62, - 103, - 142, - 53, - 6, - 158, - 208, - 177, - 80, + 91, 1, - 105, - 222, - 120, - 27, + 117, + 201, + 70, + 80, + 44, + 206, + 34, + 80, + 171, + 174, + 213, + 85, + 190, + 133, + 65, + 126, + 99, + 23, + 186, + 153, + 63, + 129, + 223, + 164, + 43, + 193, + 70, 42, - 182, - 69, - 234, - 68, - 47, - 47, - 187, - 155, - 97, - 234, - 221, - 240, - 207, - 62, - 78, - 77, - 11, + 133, + 137, 126, + 112, + 137, + 171, + 205, + 103, 98, - 24, - 241, - 43, - 46, - 144, - 242, - 198, - 229, - 9, - 51, - 106, + 215, + 102, + 92, 132, - 5, - 201, - 67, - 116, - 43, - 249, - 223, - 19, - 32, - 180, + 104, + 141, 58, - 21, - 106, - 111, - 111, - 233, - 64, - 223, - 73, - 63, - 144, - 48, - 225, - 117, - 43, - 62, - 27, 143, - 1, - 77, - 239, - 151, - 216, - 243, - 9, - 113, - 12, - 60, - 234, - 73, - 171, - 200, - 128, - 106, - 109, - 59, - 138, - 251, - 217, - 90, - 245, - 208, - 247, - 126, - 85, - 135, + 176, + 6, + 29, + 168, + 180, + 23, + 88, + 42, + 127, + 78, + 38, + 25, + 130, + 246, + 80, + 82, + 96, 212, + 245, 57, - 115, - 254, - 64, - 95, - 220, - 18, - 173, - 8, - 67, - 95, - 113, - 218, - 60, - 64, - 166, - 33, - 13, - 4, - 73, - 162, - 149, - 165, + 212, + 102, 9, - 129, - 101, - 157, - 175, - 75, - 4, - 44 + 46, + 100, + 239 ] } }, - "655f7fd86c0be3415879c8acb1b1a37a": { + "3a1f14c71f6c280533dfc94bbc8757b6": { "Signature": { - "id": "655f7fd86c0be3415879c8acb1b1a37a", + "id": "3a1f14c71f6c280533dfc94bbc8757b6", "disclosed_messages": { "1": "35e4bd4303a80f1ce65daacadcc6d47e8041b60f3ea810aae2dcbaca23d11a8b" }, "pok": { - "sigma_1": "830d6ce785df2ea006db1f70ece4ffe5b2e9c373fd6d02f108f0929a2b89665b8b0d5509547c7a4e182312fc63dd4f8a", - "sigma_2": "8ab0e85d0ccb3935ea25257ed0a2b6161e4682b1af85aae20621a1813206af1caa64f23a058dc4ac04035554893a18e6", - "commitment": "82a756007e3f446d3f435f110bc741976674d83c442d9ed5baae9eeb815f754fc90e0c8d8ec6d755210c0ea6c84466cf038a2af78514a4550738520e1cc207ff56cecabb9da66cac8e3f23f8f6db0953f6ca992cb984544290b6a9a3f3e7cdbc", + "sigma_1": "8d519bca209112b3d5fd4887ca6e1e96cca0b9d7b8a1ef08af2865ae577b0a11eee770d021a1be52dc53a81481248ac1", + "sigma_2": "95029b1982abcea16880caeb6d525792345bc40907406705d339def2a2d28115b3604cd95bcab0ad2121fae4fe943f1a", + "commitment": "9439a7c5b173d262fe9990ca0d4838ea50a343eff2abeebe768f1e0f6e8b24edaf995c0281b9a622b6716c5aca5d07b0112411962fe27b193409bdef90641c625bc913cec9f9ba3732dee79d8eeaf80b835c22efc45a67066a39573d12a702ed", "proof": [ - "58847cb81bbc6ddcfcfe06d7025fd6321145eeb393fc2088f6a0da279744f76f", - "0d88c7ff2e342f1398f65c0b4191cf9ed12d0419c3e0daf7081c5c0f72582ac2", - "40cb2515f226878957aff1957ce66b14f75aeed1ade092be1cb3138e0a6045ba", - "286cbc080846fa91bab5889a0ed4a04ee6e3e2ebcacfcee299a4ae13ab0ba286", - "616c5d2134f034eed2edb4908e672ea00b5d2856d6de9da21c4fe6f5b3ac717f" + "2313c6eb1182649999495ec641d6bfa4ebafb77be68d838fb44f97db08c1ff56", + "22554ca0d06d8ba0e4e3394b1ff8fbe48a1eef3fc07f4f6e519e0ea17b628e78", + "1da85f010d67d4cfaafea47c4604ff2e078cd557f90231e97d33f44972830349", + "09a71f3184557a88dc9b1da4cdda7e7936d0e8ff1d2da7e0ccb9622f1f5ad6fa", + "664929849a83d3bb93365e3412981ec098fe4b57d9ffd2b08b655731eef094d2" ] } } }, - "bfd030ca2dd21c618e006e6ff29d5d0d": { + "4d7e174ac7c12307cd46292b0d6c35d1": { "Revocation": { - "id": "bfd030ca2dd21c618e006e6ff29d5d0d", + "id": "4d7e174ac7c12307cd46292b0d6c35d1", "proof": { - "e_c": "977000f80f86cda0d63cdb59cf0ca9143311df6120be91beae640be42a4a21d00fc211abb3cc2de53c2fc38bae124521", - "t_sigma": "89782144205f37736346fb83cd9f9af6e577f637676515db1d8706efe5127414ebf4343b5764fda42cc65136d6313496", - "t_rho": "a64fbdb5d5ae47d4f0e6a3b3fd62254ab143e810c98274437336614d885e88d5d3c6ffc2b2ff0737176565fa6b7dd1c5", - "s_sigma": "68f78d6d870a37e92d7c34657c4c1ec9f7dd6b3a61173415b66e7f17a25a4ec3", - "s_rho": "5fcf6fa196af0a70b995ca18d8be7e75367ebdd1548b2faf22b5619d8d1b7cc6", - "s_delta_sigma": "60f8abbeff7dd8bf9c66d140fe51bae8e4f7cb904792a42c0ff6204ef53b3307", - "s_delta_rho": "4349cddd562e6e20b6e82b12bb7dbed07f0ca85ab66da445e429d0de4528c322", - "s_y": "40cb2515f226878957aff1957ce66b14f75aeed1ade092be1cb3138e0a6045ba" + "e_c": "8624c30c20e599b45e7aa758b064424bc69be678594380075899720665c6267e9c99f666a39c59583f4f41d9526adc80", + "t_sigma": "83772db7a66480d87b41c4b0312f629d6f06a56e90e507aa761475dd7da62fb0b2e1677953d4ba4618acb1feb28637be", + "t_rho": "a51e0c00071e3f07d8e080f620c9e04837129d6278d4bca217fad8b61c6a4e2d8b994a52bfc0dfb0e2a898587a091d54", + "s_sigma": "70955168a12b5ec6926ad7b423b1b00889210709ff04f6acb460f8175a2c3677", + "s_rho": "66bddd55b429a6d8921c4b1213a8839d8a743902be976b2141aada25c2cfe6bf", + "s_delta_sigma": "3a62a95786b2e6e98bb7b92daa1aa832139796a2009cfd06b9296b3f6a76ff35", + "s_delta_rho": "2a9244897f539bf31340d375326943a793359a5e43ce7922580c47f28af9264d", + "s_y": "1da85f010d67d4cfaafea47c4604ff2e078cd557f90231e97d33f44972830349" } } }, - "f3a52e135605e1f31024256238d60ab4": { + "6ec5c2bce95b9f004ea57b3b2b89eec2": { "Commitment": { - "id": "f3a52e135605e1f31024256238d60ab4", - "commitment": "a81652f9a261256a0572f061e146559bf1bf37ba796ad5ad101e9968d1ede0a5e181c860fcf0cb3922094f969aea6dfc", - "message_proof": "616c5d2134f034eed2edb4908e672ea00b5d2856d6de9da21c4fe6f5b3ac717f", - "blinder_proof": "2de7feb88b36e63039442720b08760383baf20d16e236f1e9d5db0af318491d9" + "id": "6ec5c2bce95b9f004ea57b3b2b89eec2", + "commitment": "921799fbc11028d0957c5e1c2b13d8d01d2dc43770c4f307c2b61f4578b81fa2c7b3da68011676a6eab9551af788df16", + "message_proof": "664929849a83d3bb93365e3412981ec098fe4b57d9ffd2b08b655731eef094d2", + "blinder_proof": "6cdfd3d999dfce9a0253dd45455705d8a9a9440baf649fb0c9109c9c7b5e12e4" } }, - "9c823caa2af54e95572baf58a3c7ffee": { + "70a4fd743dead8faeb7af4d04043f4f5": { "VerifiableEncryption": { - "id": "9c823caa2af54e95572baf58a3c7ffee", - "c1": "b951d368acc72f7195a2b1fbd587fb2ddadcf1bd213e63c1fe4c6fd223c6e51a9875713454a4ad3cfb24835346765b96", - "c2": "926c74ac7b63870998ee45e307aecea717804f7fb12013c7ee31d6344837ce4917c046dd6a2346d1313e6bdd56000fb1", - "message_proof": "40cb2515f226878957aff1957ce66b14f75aeed1ade092be1cb3138e0a6045ba", - "blinder_proof": "4e0fd2a651686794791fee1bc4850bb05e3597eec223e6840a27729c901c3fbc" + "id": "70a4fd743dead8faeb7af4d04043f4f5", + "c1": "881f267dd301cc17643ecce1358ae9c3808de6eed6f86c62680a9d49699d3f114d873d806e05f6b3334b5ea41e5ea74d", + "c2": "8385aa6aa44a89bc6e41d77ff72ffac30472d27fd1175ce1db1ef42415967d89c697335502852b7e92c78fa140516113", + "message_proof": "1da85f010d67d4cfaafea47c4604ff2e078cd557f90231e97d33f44972830349", + "blinder_proof": "23bf2976f64fdf3b4d6d3372165667ab7cce22d814e161605fcabdea1da4295a" } }, - "641a0e8b2caff6c946fdccabbe3965be": { + "e8cb8a4655f59f0dab82a5c4cd32ab72": { "Membership": { - "id": "641a0e8b2caff6c946fdccabbe3965be", + "id": "e8cb8a4655f59f0dab82a5c4cd32ab72", "proof": { - "e_c": "b045312d389bb608e721b11ae4cc18089c8008205ed27eafa4ef9ee055cf5e3eae1d6b52c03bd7292d495e4203b9d07d", - "t_sigma": "87b7ef65eb84f459811d275577ab20f0e7f56c4334f198354129c948648c7bdb2378addfa88b5e3769519b2c00ae5089", - "t_rho": "96dc624a81c6fdaa3498c965c6ebd6a81236e40851ea1dfd74f48a731e3c0c3a1fd6cc870bb161533197ea2e8bc5d8d3", - "s_sigma": "60431b51b6a43b9ea7f62f22744b4135e713c2dd9410c73c11305a67a35b9365", - "s_rho": "4924c263ac81baa9180873654a0b702bfab0ed2c9498b7863a965fdede194702", - "s_delta_sigma": "24a0088abb31b3130deb2ec25d8d9be2b655c361628bc46f07555450c489fbf9", - "s_delta_rho": "13c7bb1a9927c3a2c661d73d221ca49ff260d5390bcf6c674a1b3e5b62f390ea", - "s_y": "286cbc080846fa91bab5889a0ed4a04ee6e3e2ebcacfcee299a4ae13ab0ba286" + "e_c": "a0d16dfac5282971f1210457830a0b9c7759ce4720001c57711c0057b9f7a3b9e14e1e4e8f377b2c87be5031a8977419", + "t_sigma": "8a96fe7e510dce714196e73eae74d1197e55b7154b9ace805e3879b6dfbbf3343c1408adef553d214800111fd280459a", + "t_rho": "a7fcaecdb97aa99d2a7f028013d5afc11ed0c7de17f175ff9ea4b8554bb61b437a6878eb2a0f6057905129108046ff13", + "s_sigma": "4bb112b9a203b3dfb3bdb97981678d38136ed884175a38edf8fecf192aa13131", + "s_rho": "08e8358621453751ff5bdd1080302f5258bfb037b70f1330e7a7ef4531b47b23", + "s_delta_sigma": "232c62d4dfcf291a558b5b83ab011ab9c3ace9850f105582349876f44af8bb86", + "s_delta_rho": "5436b3603c3b35c7df612fe099a92afb4afad31b4c2b54bd2ac7ee4c321a4f4c", + "s_y": "09a71f3184557a88dc9b1da4cdda7e7936d0e8ff1d2da7e0ccb9622f1f5ad6fa" } } } }, - "challenge": "605f68a4dd37158af5132793b03625468d926bfd49d1940cef064b7888002f42", + "challenge": "1650f3ea7d3750b2ba818cf40b5b3cef763b0ca6cd4b826958a2198f961cf772", "disclosed_messages": [ [ - "655f7fd86c0be3415879c8acb1b1a37a", + "3a1f14c71f6c280533dfc94bbc8757b6", [ [ "name", @@ -1119,18 +1119,18 @@ ] }, { - "id": "502572173ecb35bf763709f5fbe23995", + "id": "d14ea114ab065dd4efc9ebefdc0888d5", "statements": { - "655f7fd86c0be3415879c8acb1b1a37a": { + "3a1f14c71f6c280533dfc94bbc8757b6": { "Signature": { "disclosed": [ "name" ], - "id": "655f7fd86c0be3415879c8acb1b1a37a", + "id": "3a1f14c71f6c280533dfc94bbc8757b6", "issuer": { - "id": "ff8de0e9bc6039253acf9d547a3047a4", + "id": "cc10a0a52432609ee401959a9eb83d99", "schema": { - "id": "a39744e6ce1b19ee4e95358c53feacdd", + "id": "29dc143824131d037f735b69ee302160", "label": "Test Schema", "description": "This is a test presentation schema", "blind_claims": [], @@ -1187,91 +1187,91 @@ ] }, "verifying_key": { - "w": "94bb6d2f149707f87593db41891e6796db0a7414fe71a79e073f2d0e8e2ad75a42e528f16716794b39679f0171cef407141d0cdc47c28a1266e8a9384f8a27e58dc9fa71094d905df1fccba5f0b6d6e497dd4ca0b6d571073e65ebffc44e19d1", - "x": "b76d535374004fec6cf4b132e37de2787cfcffad152b949113c9a5e4a9ad0a1da79192fb25f69acea4aade012566a01104c89d0791177d7be42e11d7c60fc88bf3da6a10ff213420b24777e0682351e5be7ba13c0c8909233b02d1886ffbb8e8", + "w": "885e72fc63392f2cb29c5c5a1f45551bf000cab46694c648326f90d12df7c2a8f2e916c100423264c140fb8aeccc4b5819fee5f575cc06888f7f9158c5fe83f7783b8392a81a4faaca5677fa28af454fc55e06eb422561e5d9935ae47f08ead6", + "x": "a3687ce9c19856699c3de9ed8af9011ea5ad3588581df6b886fdce425778d77b4d5ae1241660be695137cb1703b4d4d905347639f0fdf556e154c0b455628971b297469673ac55e5c73e506662386fe06ba4aff8c5e1d368fd850d8b15448138", "y": [ - "a9041be69c4fee6d761d970231e795c3c99d46c5c4d9e07a72bb78efb30ee4936d72378ad82792df8a0dddf0ccfb6f2d0e3113c2ebb4206f707135bf73a559c330c89a4f23762a63556aaa3a3b261253e5e30c1271f458b1bbeafff58feca025", - "a34482e8787fa6c031d3d4073165db47eb1cef84537723653c8b73d6dce9315462986d59cc9dca4e61e2d1ebd15a5dc21093a3624dcbbaf6b39e55637e8d0d3bb9a3ed98a756aa613464e99843ef55452a27b62dffb3b9db2ebdb741dc00f215", - "ade36348001f7e6f131ce679411d3d49f479ec456f7a8bc058a85ef6a15a5a55876ff2b88e0db77a8e0332a62528505d0c21dab9138f2e487358155d7a73d1e192dd3cd32be0d40e706aa836caf73c5fdb63062253f5ca0193331fa8de830650", - "83585e304de834ae89e552c6ac4a498c773d08eedb964b47c95290a0e129135e75434ee0718e96d1cb02ea4331c5ba5a1777ea290eaca648e74d591b2107e737b070160f1ba6f537d67706246f83c5b41295fb9f3c796bc4aa55cc54625b9e07" + "b146fcf35bd819d09f9c6c6c284196696b7e2cc4668dae9d487d521e0702f85513d5d6fd71fae9e5b1ce65ecb29bc89514149872c9efc192edd58491d603bc4c7bab6b9a47774da9ac1ba1e1d55c862027e238aa7e42b6992121eb9af594e684", + "b222930241ed59cce2fcbe15f237536bef48af4b5bfaead84b5bc01f50bd948761b3e1a35cf7b966418949a1ad45a3f813bd849590ceaecdb9c5687140388bd147dbfe104026dd689f68cbc27fa1b4b3ab25b0f19a0ee59e882c3724ea803aa3", + "820f7ff154090c33469d3fb714aa3a379d869158d85234b1a41aea2a8581b69182de1771a3d2799bf7e74f67134be2c6115abb8cd3196c1fdc96aa463862d76d44e5b870f2a8f382a9d9b6992f6887394eebdae4a024e608829b56cca76cebe5", + "806ad76b167f8ff602eabc3fffee5e08ae7c1bd8d55affcba4d9db0656662470df667c91bd6edbc0b1bec4b6892a63fd074aa3d805352f6c6d13858efd741cd6d21ff25dfaa92c2eec63c4a5ca0f0e14442905d1ab5fe6458054ed474f1bbd3e" ], "y_blinds": [ - "9253ca8add82f0717aa4a7d85021726b621f58f015b17bc70f0e0ac4b221dacb48db677cee889f0237939e0dc9347a7a", - "a9b85d4060dfe38f5be59ec5e5214cfe5d1a68c7045aaa2a322a77c3f7ff8a868ff2966ff1486c0e428b129a22ac65fd", - "a8cd233512037a833c9e0c0ab267c767a05aae82ef38f91389c0f78a814d3d935aa02e585baa0ffb1d136636a872d5a7", - "8af15132fee8bd22bddbdbafa24b0f322544ccd29ae5c92fafa3af3b59ad2180c6d7cde523cdf0bcdbd4bf6a9c21a547" + "a7692f013f685580e56d714e8e0f7244a1086f84147ef47a31aa868429799bfa675d2f7a3bd9d9e3f928394a11b2df29", + "98f73da6503f33146128a4d7698cb1d66c5df348e14a5f8175aaba4704a344246f6f2a4915079431888a735dd3e93f4d", + "89534374385c44ee99d8e3147c1f8c368d8152ce5e8775564f4b48cc50ab0e91f5376d3cbd6ed8e99ec215014291695f", + "8e24dbe92aae0b193c95d961c8e995f40174b54bf065501a64cbe88d2725aa4135ed12566d60db67975646fef03d0202" ] }, - "revocation_verifying_key": "ae60d28106f89c8da14a16f19efeda20fee1b858ef84f1067597aa53518c731a7a3e5bb04ae707c0f955ec62ae90f5c10d3d73eba6ec5ac60a067e57d68a4e7e6a849f3d34e2c977656f24a10da411e3f203a4c4cbf73f9dcccfc15481787b6d", - "verifiable_encryption_key": "b80a846bcb3c40ebb417ba13375ebe22ef0d82671d41c58da2fbd91881eb1734818e9359a34bb8809d64cdcdd89fe48c", - "revocation_registry": "984249bc4d972fd14891faaccfa2fb26dcb11fd26325e21cc8b6d7626b81e82589bbd85488da5fe17ce8c5877c3b122f" + "revocation_verifying_key": "8158546b1a005bfdef84a189f4727172133eb23a3df3b2548f4275029c720cfa69dd071ec9d71824e11d887ff8afa9cc0724819fba51085e8403e55506896d56440062d46288bbda091590dcb3af29508410b3f678b949cb9c69cac1e3742b24", + "verifiable_encryption_key": "907fb1af3a4f1d4a2e3ea6bab60084cab39a8da026e3bb2b965226c8d62672f1ecf36485d16152364a73a5875700e762", + "revocation_registry": "9210a556d42d71e67ab59e06b57bfdc285ae96a75dfd812f1be120550d41503214a33d1b75c68a25947b424730fa4932" } } }, - "bfd030ca2dd21c618e006e6ff29d5d0d": { + "4d7e174ac7c12307cd46292b0d6c35d1": { "Revocation": { - "id": "bfd030ca2dd21c618e006e6ff29d5d0d", - "reference_id": "655f7fd86c0be3415879c8acb1b1a37a", - "accumulator": "984249bc4d972fd14891faaccfa2fb26dcb11fd26325e21cc8b6d7626b81e82589bbd85488da5fe17ce8c5877c3b122f", - "verification_key": "ae60d28106f89c8da14a16f19efeda20fee1b858ef84f1067597aa53518c731a7a3e5bb04ae707c0f955ec62ae90f5c10d3d73eba6ec5ac60a067e57d68a4e7e6a849f3d34e2c977656f24a10da411e3f203a4c4cbf73f9dcccfc15481787b6d", + "id": "4d7e174ac7c12307cd46292b0d6c35d1", + "reference_id": "3a1f14c71f6c280533dfc94bbc8757b6", + "accumulator": "9210a556d42d71e67ab59e06b57bfdc285ae96a75dfd812f1be120550d41503214a33d1b75c68a25947b424730fa4932", + "verification_key": "8158546b1a005bfdef84a189f4727172133eb23a3df3b2548f4275029c720cfa69dd071ec9d71824e11d887ff8afa9cc0724819fba51085e8403e55506896d56440062d46288bbda091590dcb3af29508410b3f678b949cb9c69cac1e3742b24", "claim": 0 } }, - "f3a52e135605e1f31024256238d60ab4": { + "6ec5c2bce95b9f004ea57b3b2b89eec2": { "Commitment": { "message_generator": "b8d9649d22ec777e2e44901c008586d1f101da619fe2036eda26a71f01b27ef9e74b36b51f2dd13406e93fe00de1fee9", "blinder_generator": "96fbd3af691d823a8abff38ce7f24566187b890f5417da3f6a97c2a772172ce6ee72567cfcaf0daae12cdf77de47511c", - "id": "f3a52e135605e1f31024256238d60ab4", - "reference_id": "655f7fd86c0be3415879c8acb1b1a37a", + "id": "6ec5c2bce95b9f004ea57b3b2b89eec2", + "reference_id": "3a1f14c71f6c280533dfc94bbc8757b6", "claim": 3 } }, - "9c823caa2af54e95572baf58a3c7ffee": { + "70a4fd743dead8faeb7af4d04043f4f5": { "VerifiableEncryption": { "message_generator": "97f1d3a73197d7942695638c4fa9ac0fc3688c4f9774b905a14e3a3f171bac586c55e83ff97a1aeffb3af00adb22c6bb", - "encryption_key": "b80a846bcb3c40ebb417ba13375ebe22ef0d82671d41c58da2fbd91881eb1734818e9359a34bb8809d64cdcdd89fe48c", - "id": "9c823caa2af54e95572baf58a3c7ffee", - "reference_id": "655f7fd86c0be3415879c8acb1b1a37a", + "encryption_key": "907fb1af3a4f1d4a2e3ea6bab60084cab39a8da026e3bb2b965226c8d62672f1ecf36485d16152364a73a5875700e762", + "id": "70a4fd743dead8faeb7af4d04043f4f5", + "reference_id": "3a1f14c71f6c280533dfc94bbc8757b6", "claim": 0 } }, - "99f04fc122c4aa7c15cf9267b8d038c4": { + "868be8a85019732bf8e0a6595444afdb": { "Range": { - "id": "99f04fc122c4aa7c15cf9267b8d038c4", - "reference_id": "f3a52e135605e1f31024256238d60ab4", - "signature_id": "655f7fd86c0be3415879c8acb1b1a37a", + "id": "868be8a85019732bf8e0a6595444afdb", + "reference_id": "6ec5c2bce95b9f004ea57b3b2b89eec2", + "signature_id": "3a1f14c71f6c280533dfc94bbc8757b6", "claim": 3, "lower": 0, "upper": 44829 } }, - "641a0e8b2caff6c946fdccabbe3965be": { + "e8cb8a4655f59f0dab82a5c4cd32ab72": { "Membership": { - "id": "641a0e8b2caff6c946fdccabbe3965be", - "reference_id": "655f7fd86c0be3415879c8acb1b1a37a", - "accumulator": "b0729c310f4c3b03aa06ce0e67c389f73d3a4f3b3fee0f9586da2ba7c4a2f6c18d3697e09cfd5cc6c2a88b9b7d849e54", - "verification_key": "a512f6415c9f785cf8a7ef7608e5e511c81ad1a2e89fd9c6101cf36bd0fab92e5cf77275f325f95aeb944219b858aba4086ea26de5cebd0297f38410a2db68803f2f25f48ed6a4eb41bd1512c576100452a2d8613e4f20853069aee94af46500", + "id": "e8cb8a4655f59f0dab82a5c4cd32ab72", + "reference_id": "3a1f14c71f6c280533dfc94bbc8757b6", + "accumulator": "a5bbc96626299490b6735e5cce86de29168612686d5113200b00061ca8adadbbd95240033936c5d6f6a3ba0566e939db", + "verification_key": "a2c212e4924c10f3beb1620a972988469a21a783bef30d65ef73b5e766d29bf14df6ad29ee2320789d73bb36037e6d4111cfe55e4e171e4bc8cff854fd5cf1dd52561f727d7e768f6cbd0839fcc4cfda468db227df0c9b4d7993be5c64306305", "claim": 2 } } } }, [ - 159, - 29, - 221, - 119, - 194, - 230, - 251, - 11, - 50, - 100, - 115, - 22, - 6, - 19, - 164, - 41 + 108, + 20, + 181, + 112, + 72, + 76, + 12, + 138, + 107, + 224, + 94, + 1, + 107, + 34, + 43, + 217 ] ] \ No newline at end of file diff --git a/samples/presentations/w3c_presentation.json b/samples/presentations/w3c_presentation.json index 32b6b07..06d39a1 100644 --- a/samples/presentations/w3c_presentation.json +++ b/samples/presentations/w3c_presentation.json @@ -9,11 +9,11 @@ "proof": { "cryptosuite": "anoncreds-2024", "proofPurpose": "authentication", - "proofValue": "ukqEz2UA1YTQ2MDNkMjQyZTQwZmYxZDU1NGM3MDAyODBkOGVhOWEwNmMzZmVlNzJhZWFkNzc2OWMzOTE1YjBmZTZkZTA5", + "proofValue": "ukqEz2UA2NDY4YzFjY2I4ODM0Y2EwMDY4Yjc5MjU4YmI0ZmZmYzU2MzkxYTQzMGI5MWM1ZmYzN2IzY2YyY2U3NGRkYjBi", "type": "DataIntegrityProof", "verificationMethod": "did:key:z6MkwXG2WjeQnNxSoynSGYU8V9j3QzP3JSqhdmkHc6SaVWoT/credential-definition" }, - "schema": "did:key:ca02d8b31bfdb211a39a60ce3e340647", + "schema": "did:key:dc0457a84ad5553bd2e946491e1efc6a", "type": [ "VerifiablePresentation" ], @@ -45,13 +45,13 @@ "value": "John Doe" } }, - "issuanceDate": "2024-07-31T21:39:17Z", + "issuanceDate": "2024-12-17T17:00:26Z", "issuer": { - "id": "did:key:1fa8e9944149f9ce6bde97e769979fb9", - "schema": "did:key:98619070eec886aea28ceb232269cc16" + "id": "did:key:89e05327bc4113fbf8da66362970262d", + "schema": "did:key:24227bbb0b013b480bf524f6b71d8236" }, "proof": { - "proofValue": "ukqEyhtkgZmE4NzkzMWM5MzRhNDRlODgwMWIzYmJiM2EzM2M5ZDKBqk1lbWJlcnNoaXCComlk2SBmYTg3OTMxYzkzNGE0NGU4ODAxYjNiYmIzYTMzYzlkMqVwcm9vZoijZV9j2WA4MmM4NGZlZTM2ZDlmODkxNjExOWRlMWVhODQ3ZjUzNDMxNGI2MWNjMzk3MDA5NjQ3OWM4YjNhZGU2MTZkZjE5ZDc2NzQzMTAzNTQ5Yjk5ZWRjN2RjZmQ1NjNmYTljZjirc19kZWx0YV9yaG_ZQDQzOTdiM2NkZTMxMjljM2U3NjUwOTQ4N2U5OTlmZTk0NTM0MTZiYjRkZTNhMGI4YjFhYzUyZTJjYjk5MTI5Zjmtc19kZWx0YV9zaWdtYdlANGEzNGM1MGFhMzM3NGM1ZjE1MGRhMzUwZmVhYjNmMWYyN2UyMjA5ZjRlNGMzYWVlNWVkOWE2ODQ0ZjczMDAxNaVzX3Job9lAMTlhODk0OTk3MDg3N2MxZTc5ZjViZTJhMTQxYjBlMGI5MzQzMDljZWM4M2RhOGRjNjdlNDk2OTRiNTExYTUxNadzX3NpZ21h2UA1Y2RjNTUzMmZiNmY2Y2E5MzFmMWVkOWI0MjgwODE4MGM0MzVkNzRiOTY5NDNlMzRiNTY0ODMxMjRiNGI0NmRio3NfedlANjZiN2FhYTdjOWIwOTI5OTZhZGMxNDJkOGU3MDRkZTM4Mjg0NDRkZmZlY2E1Yjk1MDQ2MTE1NDMyNjBkYTY2MKV0X3Job9lgOTI5YzMyNzIzZTYzMWM5OTlkMTlkYjAyMjAzOGM3NGMyNzE1MThiYWJiNDc2OTg2NTczYzMxMmJlNDNkNjBmYzA4MTc5OGI3NDMwZGQwMjhiZGI1ZWZhZTUxYzNlMWVkp3Rfc2lnbWHZYGI3MmI0NTk0ZTU1M2MyMThmOWU4ZDJlMTEwYTYzZDI1MDU5MDU4ODYzNThmODBkOWIxZmRjZDYzMzljODhkOGEyYmJlZWUxMWZkMmExN2M5ZGVlNWNhYjNmMmJjMmI1YdkgYTllNDIzMWRlMGNhMmVmYmRiOTcwMzQwMGQ0N2VhMGWBqVNpZ25hdHVyZYOyZGlzY2xvc2VkX21lc3NhZ2VzgaEx2UAzNWU0YmQ0MzAzYTgwZjFjZTY1ZGFhY2FkY2M2ZDQ3ZTgwNDFiNjBmM2VhODEwYWFlMmRjYmFjYTIzZDExYThiomlk2SBhOWU0MjMxZGUwY2EyZWZiZGI5NzAzNDAwZDQ3ZWEwZaNwb2uEqmNvbW1pdG1lbnTZwDkxZmU4MGEzNmMyZjJhNTc5ZTljZWNlNThiMjA3ZjkzOWQwYzE5OWUzMmY3ZGQ2Y2NjNGFmYjVmNDJjYTdiMWZhYjFjN2NhYjdkOTEwM2YzNGZmYmFmNGIxOGM3NGEwODBiODY5N2E1MGE0NWI2YmYyZTQ5MTNhODc1ZjRlMDAxNWRmNjA5MDEwOWE5MGViMjIwZDBiNmI5ZWNiMGM1MmY1MDNjOTU1ZjU4NzM3ZDZkZTMzN2FlNTI1ZGU4YmQxNaVwcm9vZpXZQDVlMjhlN2I4YzhmMWNmNDI1MmNiNGFkMGEyY2NiZWFmMDkyY2U1ZTQ1NDc5MzdhZjg3ODMzMGZhYWQ2ZDBiNWXZQDM4MDBlZGViMjRhNzVhNDY2YmEzZjRiMzhjY2IwMDJiZWNhMDQ5ZjljOTMxMmUwYzQzYTJmYjYyYzZhYmNhMmLZQDUwMjViMDk1ZWUzM2Y3MzA5NTFmYTRiZjIxNmRjYjA5MWRmNjUxZjgxNmIzZTU0MDQwZDYyMTJkZDcyMTc2NWPZQDY2YjdhYWE3YzliMDkyOTk2YWRjMTQyZDhlNzA0ZGUzODI4NDQ0ZGZmZWNhNWI5NTA0NjExNTQzMjYwZGE2NjDZQDVkODFlMjI5MDk3YWZhNzU4NTA4YmMxMTFjYTBkZDUxYWQ2NjJlNDZhOTA2M2YzNjhmMGZmNDdmMWU2Y2U5MWSnc2lnbWFfMdlgODc1NDhkZjk2MzliMGQ0NTAzZTY0MGNiM2E2NGMxZDljOThhN2QzMWNkNjk4ZDFmNDAwNmU0ZmFjMThjM2NmMzY1ODYwODFjMTMwZGViM2NkOTg1MWNkZWUzOTZiYTBhp3NpZ21hXzLZYGI4NmU3YjA3ZTA4ZDc5NjI2NTQ4OWY1M2E0OTZmODI1YWYzZjQzMzQxOGNlOTE3OGZiNmI2NDM2YTRmNjUzYzYyOWQxZjRlODhmODc4Mjg1ZTc3YzQ5YTJmZGQ0OTRjMNkgYTRhMWM0NmE1NDFhMzIwYjQ4OTc5NzVkNGNhNzk3MTKBqkNvbW1pdG1lbnSErWJsaW5kZXJfcHJvb2bZQDQ4YTU3YjRmMDYzMjNmODBmYzE3Yjc2M2Q3YzJkOTkxNjA2NWE2YzlkODkyMzk3ZmE1NDVjNDE4YmYwM2JjNGaqY29tbWl0bWVudNlgODY1ODRhYWU3MGE5MGZhNDM2NjA3YmQ1OTYyOWViMDAxNmQxYmVhOThiNWFkMjQ4ZmU2ZjQ5ZjQwZWExZmRhNjViYWQ3ZDM2YjE2MzVlZDMyMDUyMDg3ODkxZWE5NmZmomlk2SBhNGExYzQ2YTU0MWEzMjBiNDg5Nzk3NWQ0Y2E3OTcxMq1tZXNzYWdlX3Byb29m2UA1ZDgxZTIyOTA5N2FmYTc1ODUwOGJjMTExY2EwZGQ1MWFkNjYyZTQ2YTkwNjNmMzY4ZjBmZjQ3ZjFlNmNlOTFk2SBlNDQ0YTZmY2E4OGRjYTI3ZGYwZmUzZWRkMDM1MWE4MYGqUmV2b2NhdGlvboKiaWTZIGU0NDRhNmZjYTg4ZGNhMjdkZjBmZTNlZGQwMzUxYTgxpXByb29miKNlX2PZYDk2NGU0NjY0OWIwNGUzOTU3MzYzOWY0NjUzNGJhZTU5OTI0MDIyOTM3YjVjM2I0ZTMxZDczYTI2OTFjY2NhZjk0Mjk2YjM1NzJmMTcwMmU5NjcxMmM0ZDZlNWMwNDlmNqtzX2RlbHRhX3Job9lAM2IyOTBiYWE2ZmI5Y2QwYTQyNDQ4MDJjMGE3ZGJmODY0MzkyNDg0Yjk2ZmI1YTJmNjIzNTU3ZWYxYTYyMjZhNq1zX2RlbHRhX3NpZ21h2UA1YmM4MTcwMDY0NDFjNzEzZGRmMWFhYWEwMGJlMmQwMGU3Y2NmOGYyYTE1NjE5MTJlNTRlOWY2MTJjMjRkNjRlpXNfcmhv2UAzZDI4Y2UwNWE4M2VjNDIyZGE5YjEwMzQ1ODZmNTBkYmJiOGI0N2E5YjI0MGZkYWE1OTI1YjY3NmJlYzc2YWMxp3Nfc2lnbWHZQDRhMjRkOThhNTQxYTI3MzI2ZDg2MzMxZWFhYzIxOTZmODE4OWIwZDhiY2E1MjdmYWRlZDQ0ODM5ZTE4NDMyOWWjc1952UA1MDI1YjA5NWVlMzNmNzMwOTUxZmE0YmYyMTZkY2IwOTFkZjY1MWY4MTZiM2U1NDA0MGQ2MjEyZGQ3MjE3NjVjpXRfcmhv2WBiNzg4MGViMmE2NjcwZjdhMDEwMGYyZjk2MjliODc2MDU2YzM4N2IxYzI2ZWJmYmZhYmY4YTk2OGI2OTU2OGI2ZTM5YTZmZjc2YmJmZTBkMDQ4NjZmYTE0NjBhYzBjYzandF9zaWdtYdlgYjJlMTVmMjViZWQ3ZDlkZjJhZWU2ZWNkM2M5MzI2ODJlMDU1MGVlZWMyZDQ5OGFlNjFiMmY3YWJkYzUwYmU3MzQ1ZGVmYTA0YTg3ZDYxOWY1MGU3YmQ0NWVjZjYzNDc12SAxMTgzM2ZkMmJmZDdhNDc2YjFlOGM4MDdmODhjY2ViMoGlUmFuZ2WComlk2SAxMTgzM2ZkMmJmZDdhNDc2YjFlOGM4MDdmODhjY2ViMqVwcm9vZtwEAMyTzIHM8RDM1jZ5Fcy6zNoaBzfMjsyyeMyeN8zfzK0MzPHM_Ch0zIxpzO7MsMyNPsyZzK08aDMPKmbMkQMDzI9jWlfMxMyPzILM8szNzPHMvG_M5syyzNoizIHM3synzOw-Q33M58zyScybzPLMpC3Mr8zeNU8MR1jMnszhzM5mPQBSFcycTcyezKIgBzpGQcytzKJEzPHM78yKAlMbzMwPJXkxzMLM2MzpDTByzNLMxgUMBczYzM5jUMzVbQgwWRbMt8ynzO_MjcydzM1vzP4szMzM8xzMoMyMUUpxXRzMpBoYXRjMsGjMp8zXQsyczK5XzOUSzOxIBMzMAMzgLgDM4MzNzMMmzMXMsMyZzK5GcszDzP7M5cz7bBjMsn_MvBNTzMl0zI7MgHnMnW4LzKnMnMzDexhNDQzM_lPMgcylJizM48zQPsyIzNgNEXQLzL3MihdwQU7M1WfMpcyjzOUSGMyuzI7MwBpbGMyvIsygQSgFP8ymzKwQJszcFczGzIZbzMgVVD_M8znMjsyyKcySKwrMkzXM8nlhP0cgRkLMs8znzNN0NytBVBVRzMFHWMzbzOvMnsy4RMyTdCEhZXrMzcyxzO3MjsyrzInMsEY2zK1FzKDMmjJJfcztKMzBIMzezJ0pScyUzJHMzcykCczkzJLM4GbM1GzMnFQtzJfM8zQNzJfM48z8zOTMgMyRzJ3M4MzRChjMq8ykO0XMuRnMm2XM-HYozPfM-RLM3xDMvsyRzNJSW0MOzPkQzMjMk8yfzJHM_MzVzMrMw8z3GcyHBQ45zMLM_MyMzJbMn8zeahpBzP_M0syYY8zgzL4wzJMRzLzM68zNzPrM8TgIzPjMsDdWEMzhMMzkOszgzI3M4U8_X2wczKBnXMyDzNrMrC_M3syxG8zUKDoozPPMzU3M8czvzJFazK4nzLQtzJ7MwczCzL56NUEvEnBDzIY6Icz-zMPM3lh-JMycY8yKawzMxEkNMhERzJchPszDU8ykLVtjJlhhzJzMzHjMzHQrUzrMnczYLWTMtMz4DjZjeszDzInMv8yuJEzMncyEzItLzIsEOMzWfsy0zKbMlsymzPDM2zHMs2d4zNHMkxTMuMy_zPEgC2fMx8yZQ8z9EXtUzMATBMzGekrMkcyezOMPzPnMmXrM2HNNzLtuzPfMhsy2zMnMs8z-M8yxzL0XzIgqzN_MvMzCJT_MvVJwCzLMs2gSJBABchTM-syszN3MyczLNGbM5hnMpsytzOYhzMfMt8zKzLfMlsygzLceIl82WcyKMSPM5cyaQUbMykp5zLouzOcGEEBrzKg3zO0AACLM_sz6cGtWzO4hzJbMm8yNzLsuZcynS8y-UHXMs8yIAy_M137MnMyNeMyYFWVwzPjMiG8RzLLMxU_M6hhuKEZOzPnMm8yzShlvZcyDzP7M1QjMhwvM5BvMsGTMkgVIzMPMrczBzMnM18y1L17M38yAzNHM6cy3zKLMt8yHzLTM-cy-YBQhNy4yP8yjzKhGzMR8ZjlAzJF1zL9bzL3MuyUnbsyGOz8vXDzMisz-zIMGI8yEzMl0zK3M6MzhXszvzLQtzPLMp8yMRczFYlbM3MyvK8y_NMyuA2pdHMzEzMczzIHM-0LM2CvMqn7MwwEFYgPMicyafFklS2F_zNPMpMzVDMzCzOrM6Mz0zITM9czQMWzM-8z-zKhTKxPM3QpRzLDMzsyyzJcVacz7KCNNOnMPzK16bkDMwgbM7czXzJMZzJYhzL7MhcypzLhGzP_M-czqDcyqzOQEzJ_MhwvMx2FxzNnMvsy7bBACICHM3szqzK9mzLwfzOnMuF4ifMznzJYfBszdzIYszLRuD8zKzOEAzKF4zKELL8yVzKfM_cz4zJfM3TjM110eTMzizPwzFzZOzMsDbMzZzJvMllTMsVFSMyttGszDasz-aWbMhMykzL89zOLM7MygzKJKbsyEAXDMtzzM38zYNMyLSsygzIISzMhifMzDzKpMzPVFzKPMvRnM8xtXzO7M7lnM28zKNXbMiE_M3MyrAMzmzNkAWhlj2SA1NDhiODlmZjg0YzY1ZWQzMGQ3OTJjOTc4MGFmODY3ZYG0VmVyaWZpYWJsZUVuY3J5cHRpb26FrWJsaW5kZXJfcHJvb2bZQDFkMzA4YTljOTkwNjI1MjAyODdhODJhMzI4NWEyYTJkODJmZWZiNTFkYzFkYjVhMDg3Njc4NzZkNDI0MzAyNDGiYzHZYGEzMjdmZjEwNzgzYjU1MDMzYzU0MWNlN2NlNTk3YzMxNWM5MmQ4ZjBmOTFiODkzZmNjYjNlNWJjZTBlNWZiZmJjMDlhOGEzZThjYzMyNDk2ZDFhNWQwODE2MDg4YThlYqJjMtlgYWM2ZDcxYTYwNWJhYTE3NmJlN2YwN2IyMTE5ZjZkMTFkYWRkYWNlMTIxMmMwOTU0MzYzNDY5M2RiZmU1YmU5YmQ1ODJhOTNhODE0ZmVmY2E3ZDg3ZGE0MmMzNmM3MGYyomlk2SA1NDhiODlmZjg0YzY1ZWQzMGQ3OTJjOTc4MGFmODY3Za1tZXNzYWdlX3Byb29m2UA1MDI1YjA5NWVlMzNmNzMwOTUxZmE0YmYyMTZkY2IwOTFkZjY1MWY4MTZiM2U1NDA0MGQ2MjEyZGQ3MjE3NjVj", + "proofValue": "ukqEyhtkgYTRlYWVhYmRjMDhmYWFkNmQzMjUwM2Q0Yzc5ZWRjNzaBtFZlcmlmaWFibGVFbmNyeXB0aW9uha1ibGluZGVyX3Byb29m2UA3M2Q4ZjJiZjg0YjM5MDcyY2U2NzhhNjlkNWQxNDdkMmFmOGNmZDE0NTliNTI3YzcxNWY4ZjRiYjg5ZTk0YzFmomMx2WA5NGZhNGNhMDI3YzJhZmMzMWUwNGJjNzA0NjMwYmFmMDgxNWVjMmZhM2ZhYjU0YzlkYTYzMzdhMjRhYmE2MDA1YTg3MjNjMDU3M2MwMzM2YTNmODExYWI0NjVkNjgyMziiYzLZYGI5ODAwNzNkYmQ5NjlkNGVmOWI0ZjNkYjY2OTU0OWEzY2IzZDU0NzRkY2M4ZWJmZDdmZTJlMDYyMTQ5NzVkNjgxODU1NmU2YWJlNGJlODU1OGRmMDlmZDhiYTk1ZDI1NqJpZNkgYTRlYWVhYmRjMDhmYWFkNmQzMjUwM2Q0Yzc5ZWRjNzatbWVzc2FnZV9wcm9vZtlANGRiYjg0YzAyNzlmNzgyNzNmZTk5Y2JmYjRjZmY5ODMxOTEwNzhiNTBiMTJiNjEwODcwYzRhNWU5N2M2YTA1M9kgMmUzZjA1ZDdhZjM3OGQyZDljMTlkODAxZTc5ZjhkZjmBqk1lbWJlcnNoaXCComlk2SAyZTNmMDVkN2FmMzc4ZDJkOWMxOWQ4MDFlNzlmOGRmOaVwcm9vZoijZV9j2WA5MTg3YTVmMjY5ZWI2OWIyODcwYWQzYzhkZTJiNWEyZDI0MWE5MTQyNDFhMzc3MGI1NWFlYzZkZWVmMmI5ZjJjNzUxMTQ3ZDI0NTEyMDE4ODI5ZGI4NDI2NjU0YjQyMjmrc19kZWx0YV9yaG_ZQDY1MTE3MGMyMzFkMGJhMTI4YjNjMGFlNWVkMTE4NzM0ZDFlMWI4NjA1ZmNjZWQwMGY5ODQ1Njk1MDFiOTJkYzGtc19kZWx0YV9zaWdtYdlAM2JmMjFhNmMzZTcxMjMzNDI4OTRlMWY4YzU3NDMxOTNkZGJkNDMxMTUzZjAzNGRjZDdkYjJlNjQ5N2ZlODlhZaVzX3Job9lAMmM1ZmQxM2ViYTZhOWI5M2EwOGY5MjU3MjU0MzJlOTNiYWRhZDRlMWViZjIwMWFiM2RmOGM3ZjljY2NlODM3Y6dzX3NpZ21h2UA0NzUwMTRmMWI0NTQ3ZDhiNjYxYzk2ZWEyMmM3MWQ0MmVmMzVmNzM4OGFhMGMzMWY2NzE1MmRiNGU4ZDRhNzVko3NfedlANTNkZGQxNDQ3N2E3NjFjM2I0YWVkNzI2NDRlYjk2MmViZDQ2MDg4NTM2MzM2MjkwM2VkYmQyYjc3MDRmYWFkNqV0X3Job9lgOTVlMGU1NDE3N2M3ZDFjNDQzMDMzZWM0YjI3YzBkYzNjMjM0ZjZjNjUyM2EzNWY0YTJjNDI1MzcxOTM4NDA5YmUzM2JiNmYwMzU0YThlY2Q1MmM4M2FiMGZiOTA0OGMxp3Rfc2lnbWHZYGE1YTk5MGRlN2QwMTVlNzNjMjEyNWVjNDYzMzA5YjJlOTI5ZGMyOGYwNTcxMjMxMzk5NTJkZTBlY2IyOGY3OTZjZTY3MzE0NWM1OGEwZWM3NWRlNTU2MTg1NTliNTIzY9kgMGVkZjE2YzU1ZGY0OWRjZGRkOWQwYTk5ZDViZWI1ZjaBqlJldm9jYXRpb26Comlk2SAwZWRmMTZjNTVkZjQ5ZGNkZGQ5ZDBhOTlkNWJlYjVmNqVwcm9vZoijZV9j2WBhODJjZmQ2YjJhMTY3ODA0OTg3YTZhNTUyYzg4ZWE1YTM2OWY0OTJiMGQzZDM4NzIwMDk0ZmU3N2MyYThjNjQ4YWU3YzM1MGMxMzEwYmM1M2ZjYWFjNDBiMTE0YmRhZTSrc19kZWx0YV9yaG_ZQDI4MjdiMGY1Y2JiOGIxYmM2NjA2YTdjMjE3Nzc3YzljNzE5YTQ1NWYwYzBhMzRhMTA4NWNlNmUyNTJkMGMxZTCtc19kZWx0YV9zaWdtYdlANjJiNDI4YTZmYTEzNmZiZWFhYmIxZjg2NDc3ZTkyNTE3Mjc3NjVkZDEyMjQ2YzVjNmZhNzQ0Mzk4MDg1ZDFmZKVzX3Job9lANTE5YmU5ODkzMzYxOTEyYTdhOTc3YzZhOTQzYzVjYjE1ZTRiZjdiMTE5ZGUwNzlhNWVmZmY4ODZlMzk5NzJkMKdzX3NpZ21h2UA2YjFlNmEyYjI5M2IxMzhhNDA2YzFjYTk1MTE5N2FkYWMwYmJhNDkwYjUzYTBhMGI3Njg0NTAzMTEwOThjYjQyo3NfedlANGRiYjg0YzAyNzlmNzgyNzNmZTk5Y2JmYjRjZmY5ODMxOTEwNzhiNTBiMTJiNjEwODcwYzRhNWU5N2M2YTA1M6V0X3Job9lgOTBlOGQ3MTkxNGQ2MWI2NzkzZTkyYWRjYWIzM2UzMTY0MTJkNjAxNzdjNjg1YWUxMzIyNzI1NmNhOTVmNjJhNWJjNmMzNWZlYmE1NGNkMmQ2NTE3ZjlmMTMyNDNhNTU4p3Rfc2lnbWHZYGE3ZmFhMDQwMWQ0MTQwZWZiMDRlMmE4YmRhZTk5Nzk5MTJjNGFjNDBmMTVjMGI4ZmI3MzRkNTllMGFiODdkZjIwZTAwYTJhYTRhMWMxOTk3YzM2NGY5NTg1YTdiNzhlYtkgZTEyYzgxOTk0ZjNlZDMyYzA5NTdkYTZlOWQxNDA3MDiBqVNpZ25hdHVyZYOyZGlzY2xvc2VkX21lc3NhZ2VzgaEx2UAzNWU0YmQ0MzAzYTgwZjFjZTY1ZGFhY2FkY2M2ZDQ3ZTgwNDFiNjBmM2VhODEwYWFlMmRjYmFjYTIzZDExYThiomlk2SBlMTJjODE5OTRmM2VkMzJjMDk1N2RhNmU5ZDE0MDcwOKNwb2uEqmNvbW1pdG1lbnTZwDk3ZDM5NmQyM2U5M2I5NGViNjVjYjQ5MzYzM2E1ZTg5MmVhNjhiY2MxMDE2MWUyMzM1ZjZhNWRiNmJmODY1OWVhOGFkOWRmYzhlMDdiMWE1NWZmMTI3MmM4YWEyMzc2ZTE0ODMxYjBjMjQ5Y2EwNzI1NjRiMzQzNDg1NTFmY2E5MzAzYjQzYWI4MDQ1MTUxYTFkODM1NjE3ZTg1ZTVkYzZhOWY3NTkwYmRhOWEzODllNWM5ZDViNzQ1ZTAxOGE0MqVwcm9vZpXZQDBjZTk0M2E0NzgxNWQzYjQzZTRmMWZjZTFlYWNkOTE1MjY1YjNjYmNhMjNhYjEyMWFkZjc4YjZkNzE5YmYzZmLZQDM5ZWE0YmIxMGRkMGEzMWEzOWY2MDg0ZDYwZTUxYTU5YzgwZDQzMGQ2Y2NhZTJjMWQ1MjgzMzM3ZWJjOGU4NzPZQDRkYmI4NGMwMjc5Zjc4MjczZmU5OWNiZmI0Y2ZmOTgzMTkxMDc4YjUwYjEyYjYxMDg3MGM0YTVlOTdjNmEwNTPZQDUzZGRkMTQ0NzdhNzYxYzNiNGFlZDcyNjQ0ZWI5NjJlYmQ0NjA4ODUzNjMzNjI5MDNlZGJkMmI3NzA0ZmFhZDbZQDI3Yzg1NWRmNjFjNGE1YWI3ZjNhNDU0OTkzYmY5NGE2M2UyYjgyMWVlOTA1YTViNjgwMmQ5ZDE1NzdmNmIzNzanc2lnbWFfMdlgYTA3MTg5OGQwNDRkNmJhMjdkYjE3MjNmMTRiMjk0MDJhMmQzNmU5NDczNWQ2ZDFhODQwNjZkODUyMTgxOTBhOTNiMGZkMjk3ZjNiNzA2OTQ4MWMwNzU0MDg2NTNkNzE3p3NpZ21hXzLZYDkzMzVkMTQxMTU1ODVkNTIwZDkwMWIxMDZmMmQzYzFhOGJjZDc4ZDM0NGQ5NDM2ZGZhYzAwNjNiZjJjMDQ1Mzg0YjA2MDdlZjBkZDFkNDQ2NzdjOTA5NzAzNTZhMzBlMdkgYWRlNzVlOGNmNTc3OWM1YmMyODZiYWNiMGZjNDUyMjSBqkNvbW1pdG1lbnSErWJsaW5kZXJfcHJvb2bZQDNjNTY5ZDhmMzhkNWU4MWU1MTM1YmZhYzdjZjE4ZDJiY2VjYTkwNjBjNmJlMWUzYTM2ODY1ZDRlZjBmNTg4ZWaqY29tbWl0bWVudNlgYTBkYjdjZjhiZTIyODJjN2QzODQ5YjJhMDNkMjU2ZGJmNWY4M2ZkZmI5NGQ0N2RiYzQzYjk5ZmU4YTgwZTZkODZlYTExZjIzOWIyNmVhMzljNzFjYjVmZWUxZGNlNmEzomlk2SBhZGU3NWU4Y2Y1Nzc5YzViYzI4NmJhY2IwZmM0NTIyNK1tZXNzYWdlX3Byb29m2UAyN2M4NTVkZjYxYzRhNWFiN2YzYTQ1NDk5M2JmOTRhNjNlMmI4MjFlZTkwNWE1YjY4MDJkOWQxNTc3ZjZiMzc22SBhZjlkMDg5Yzk5NjdmZjZiZjJlNDU1MjVmZDFlOGUwMIGlUmFuZ2WComlk2SBhZjlkMDg5Yzk5NjdmZjZiZjJlNDU1MjVmZDFlOGUwMKVwcm9vZtwEAMyVUsy3zLbM41LM1QI1T8zOPU_MpMzVd8y7U8yrFFhAzJXMxszWzPfMz3dtzNBGzPc4MgfM03HMgMyXzKUyeE3M7MzNzNFfzMXMuD3M8wBizLLMy0jMkGDM6hTMlUxGzOpYBi7M3cyZBVJRzOZGEsz3zPjMjszUzO3Mk8zqfcyOzMHM2czSzJw1C1QUHsy_HMzbzJDM91bMy24IeR5xzO3MlcyvBy9xbcz9GszBzKfMp8y9zJXMiFvMlsznzJZhzNzMhsyBzJclK8yizOHM-nwIJGjM_GF3Tk3Mv8yDzMPMhSDMscyMzOx9SCtzV8z0zMbMsQnM4QwoRVhDzJNPzIjMgUHMlnogawUAzPbMvm1OzKVuAcyDYczuzIA-zNvM4syCYszqLHQxXsy5PETM_wYIzLsuzJhSSsyfzLHMg8yWSgPMssy4zPXMi2zMh0F4IyLM3yfMjmkZzNTM6H8lOSvM3npMzKnMwcyqzPIWQczqzNvMthvMmB1DdAE9zIE8zNwfRnN4zIwDzN_M0sznzM1CzN14F0V7zMZ9NEPMnMz1XszkzKxPzIrM0nJ2Wcz3zLtxbS7M5MyhzOEPzNjM7wTM-WBLYcz6LnLMzSRmzO8lH8yqY8z9zPDM_U8nzL9IzOVOzKHMrUg-XszZzKhuzLIzzJzMpMytYS0MaiV6zOPM11R_zLFHzOjM2MyAzI_Myzx_S2fM4MzOfTLM-8zVBnkkzJ94zMrMnCodzOpFzL3MkszGzLDM6szxzKvMqczzzIDM2sz0YWPMjVPM_8y3NMzPzOPMgDLMpsy1VsyVzK9gLcz3STRGzJPM1MzrbkcgMzh3zMjMtcydzOTMoAjMscyeD8y4XMyFUQdIZMzvKSjMvnPM2WXMqsyjHMy4zNsTzIBMzMxwbMyYEMzmLnZWc8y8zPPMq8yOzI8hzP0eaMyYd8zECGjMq8zfR8yROcy4zJnMmX5DCVjMhMy8VSgdLcyVIMyBzKTMmTbMq0fM5My-zPjMszbM_W7Mo8zGzOXMz8y7P1AuzIfM7jDM-yHMxMz2zJnM2cyERS5TfMzmGMy1TCgkzMnMog87zPl2B8y8V8yZJcyJzI3M8MyLzK8KPmxIzMJJzK8YDsyEOczqPsynzNVee37Mpsy2zIHMksy_cUVJzKTMocyvLmzMtMykBXAeYszbRszqzM3MjVjM8UDMv8yNVyzM3wU1zLEFzPlwUsynPCMUzMYOzIjMihnMzcyXzJ5jzLQ_BUUBLgEtzL7MwV1DXsz0zIPM-VjM_BLMizjM-MzMzIjMlXHM5jLM78zOcsyGzMJqzJ_M_B7MwczazIsjzPTMv8zdzK7M4szlPjw7MEw3zMzMzsz6EMyHagDM5DXMrsykZsy9zO7MmQIAzL_MhsyvzM7M2syecisazPTMr8yszIPMm1cJzPPMhMzYGczvzKBqzPY7zPLMw8y0Jcz4Bcz1ES3Mm0gLETAmzJxszM41bMygPcyuzJQucMz7zKV_GEU1zOQ-zJXMoH4BRioVzPjM2Dg0zP3M08z-zMnM28znzMs-zN5Efczsdl59Zcy8zNzMq8y7zKXMmzPMoMyIWMyZGsy-FsyrCsyYzITMgid9zNMMzP9RzOZsBBwAKWxDzM_Mm8zTM8yUNwFRGcyXzNHMyFvMt8zizLnM0iRIYjrM38yXzIbMhczvEcyefMzBzOjM5x9_MX5ZP8y1zMRgzLvM0WVFzK4QG8yJJhzMsD0izM0veTFQIMyKzJ_MlMzSzLnMyRTMgMyjT8y0zO5aMHR_VgJgJTXMvMzNzOnM_jTMjMyqGsz4QXVlzJBNzPPMm8zJdzhYzKDMmVECzK3Mlsz1zIjMpMzkFszVacy5GszyR8yoFQrM8cyIzKfM7zPM_sywzLotzOZbCsyxzLoDBsyeGHF4zNDM0MyeJ1TMxMyjQmHMt8zLC1TM5Mz_zN3M32xzUsz1aTZyS8yAKcyyzL4DzOpHU8z7zPbMg353zPfM-cyTzM8XzMzMxE1nBkbMqGjM_AptCMyzMW1pzPEhzKrMzzrM_2vMxkvM8xQ1zIfMqA", "type": "AnonCredsPresentationProof2022" }, "type": [ diff --git a/tests/equality-and-reveal.rs b/tests/equality-and-reveal.rs index cdf0703..3b0456a 100644 --- a/tests/equality-and-reveal.rs +++ b/tests/equality-and-reveal.rs @@ -5,6 +5,8 @@ mod reveal_and_equality_tests { use credx::credential::{ClaimSchema, CredentialSchema}; use credx::error::Error; use credx::issuer::Issuer; + use credx::knox::ps::PsScheme; + use credx::knox::short_group_sig_core::short_group_traits::ShortGroupSignatureScheme; use credx::prelude::IssuerPublic; use credx::presentation::{Presentation, PresentationSchema}; use credx::statement::{EqualityStatement, SignatureStatement}; @@ -16,7 +18,6 @@ mod reveal_and_equality_tests { use rand_core::RngCore; use std::collections::BTreeSet; use std::fmt::Debug; - // ------------------------------------------------------------------------- // Setup some names for readability @@ -84,7 +85,7 @@ mod reveal_and_equality_tests { #[test] fn t00_reveal_ssn_a_no_equality() { let (isspub, iss) = setup_issuer(); - let r = run_test(&isspub, iss, "_", &REV_SSN, &REV_NONE, None); + let r = run_test::(&isspub, iss, "_", &REV_SSN, &REV_NONE, None); validate_disclosures(r, &REV_SSN, &REV_NONE) } @@ -93,7 +94,7 @@ mod reveal_and_equality_tests { #[test] fn t01_reveal_ssn_a_eq_names_unequal() { let (isspub, iss) = setup_issuer(); - let r = run_test(&isspub, iss, "Bob", &REV_SSN, &REV_NONE, Some(NAME_IX)); + let r = run_test::(&isspub, iss, "Bob", &REV_SSN, &REV_NONE, Some(NAME_IX)); assert_matches_error( r, Error::InvalidClaimData("equality statement - claims are not all the same"), @@ -105,7 +106,7 @@ mod reveal_and_equality_tests { #[test] fn t02_no_reveal_eq_names_equal() { let (isspub, iss) = setup_issuer(); - let r = run_test(&isspub, iss, "Alice", &REV_NONE, &REV_NONE, Some(NAME_IX)); + let r = run_test::(&isspub, iss, "Alice", &REV_NONE, &REV_NONE, Some(NAME_IX)); validate_disclosures(r, &REV_NONE, &REV_NONE) } @@ -114,7 +115,7 @@ mod reveal_and_equality_tests { #[test] fn t03_reveal_ssn_a_eq_names_equal() { let (isspub, iss) = setup_issuer(); - let r = run_test(&isspub, iss, "Alice", &REV_SSN, &REV_NONE, Some(NAME_IX)); + let r = run_test::(&isspub, iss, "Alice", &REV_SSN, &REV_NONE, Some(NAME_IX)); validate_disclosures(r, &REV_SSN, &REV_NONE) } @@ -132,7 +133,7 @@ mod reveal_and_equality_tests { #[should_panic] fn t04_reveal_ssn_b_eq_ssns_equal() { let (isspub, iss) = setup_issuer(); - let r = run_test(&isspub, iss, "_", &REV_NONE, &REV_SSN, Some(SSN_IX)); + let r = run_test::(&isspub, iss, "_", &REV_NONE, &REV_SSN, Some(SSN_IX)); validate_disclosures(r, &REV_NONE, &REV_NONE) } @@ -141,7 +142,7 @@ mod reveal_and_equality_tests { #[test] fn t05_reveal_ssn_a_eq_ssns_equal() { let (isspub, iss) = setup_issuer(); - let r = run_test(&isspub, iss, "_", &REV_SSN, &REV_NONE, Some(SSN_IX)); + let r = run_test::(&isspub, iss, "_", &REV_SSN, &REV_NONE, Some(SSN_IX)); assert_matches_error( r, Error::InvalidClaimData("revealed claim cannot be used with equality proof"), @@ -153,7 +154,7 @@ mod reveal_and_equality_tests { #[test] fn t06_reveal_ssn_b_eq_ssns_equal() { let (isspub, iss) = setup_issuer(); - let r = run_test(&isspub, iss, "_", &REV_NONE, &REV_SSN, Some(SSN_IX)); + let r = run_test::(&isspub, iss, "_", &REV_NONE, &REV_SSN, Some(SSN_IX)); assert_matches_error( r, Error::InvalidClaimData("revealed claim cannot be used with equality proof"), @@ -165,9 +166,9 @@ mod reveal_and_equality_tests { type Disclosures = IndexMap>; - fn run_test( - issuer_public: &IssuerPublic, - mut issuer: Issuer, + fn run_test( + issuer_public: &IssuerPublic, + mut issuer: Issuer, name_b: &str, reveal_a: &DisclosureReqs, reveal_b: &DisclosureReqs, @@ -212,8 +213,8 @@ mod reveal_and_equality_tests { let pres_sch_id = random_string(16, rand::thread_rng()); let (presentation_schema1, presentation_schema2): ( - PresentationSchema, - PresentationSchema, + PresentationSchema, + PresentationSchema, ) = match equality_index { None => ( PresentationSchema::new_with_id(&[ @@ -255,7 +256,7 @@ mod reveal_and_equality_tests { } } - fn setup_issuer() -> (IssuerPublic, Issuer) { + fn setup_issuer() -> (IssuerPublic, Issuer) { const LABEL: &str = "Test Schema"; const DESCRIPTION: &str = "This is a test presentation schema"; diff --git a/tests/flow.rs b/tests/flow.rs index 20fa073..b030f41 100644 --- a/tests/flow.rs +++ b/tests/flow.rs @@ -6,6 +6,7 @@ use credx::claim::{ use credx::credential::{ClaimSchema, CredentialSchema}; use credx::error::Error; use credx::issuer::Issuer; +use credx::knox::bbs::BbsScheme; use credx::prelude::{ MembershipClaim, MembershipCredential, MembershipRegistry, MembershipSigningKey, MembershipStatement, MembershipVerificationKey, @@ -77,7 +78,7 @@ fn test_presentation_1_credential_works() -> CredxResult<()> { let cred_schema = CredentialSchema::new(Some(LABEL), Some(DESCRIPTION), &[], &schema_claims)?; let before = Instant::now(); - let (issuer_public, mut issuer) = Issuer::new(&cred_schema); + let (issuer_public, mut issuer) = Issuer::::new(&cred_schema); println!("key generation time = {:?}", before.elapsed()); let before = std::time::Instant::now(); @@ -166,7 +167,7 @@ fn test_presentation_1_credential_works() -> CredxResult<()> { let before = Instant::now(); println!("proof verification: {:?}", before.elapsed()); let proof_data = serde_bare::to_vec(&presentation).unwrap(); - let presentation: Presentation = serde_bare::from_slice(&proof_data).unwrap(); + let presentation: Presentation = serde_bare::from_slice(&proof_data).unwrap(); println!("proof size = {}", proof_data.len()); presentation.verify(&presentation_schema, &nonce) } @@ -232,7 +233,7 @@ fn test_presentation_1_credential_alter_revealed_message_fails() -> CredxResult< println!("{}", serde_json::to_string(&cred_schema).unwrap()); - let (issuer_public, mut issuer) = Issuer::new(&cred_schema); + let (issuer_public, mut issuer) = Issuer::::new(&cred_schema); let credential = issuer.sign_credential(&[ RevocationClaim::from(CRED_ID).into(), @@ -369,7 +370,7 @@ fn test_blind_sign_request() -> CredxResult<()> { &schema_claims, )?; - let (issuer_public, mut issuer) = Issuer::new(&cred_schema); + let (issuer_public, mut issuer) = Issuer::::new(&cred_schema); let blind_claims = btreemap! { "link_secret".to_string() => ScalarClaim::from(Scalar::random(rand_core::OsRng)).into() }; let (request, blinder) = BlindCredentialRequest::new(&issuer_public, &blind_claims)?; diff --git a/tests/out-of-range-panic.rs b/tests/out-of-range-panic.rs index 61892a9..47d91c8 100644 --- a/tests/out-of-range-panic.rs +++ b/tests/out-of-range-panic.rs @@ -2,6 +2,7 @@ use blsful::inner_types::*; use credx::claim::{ClaimType, NumberClaim, RevocationClaim}; use credx::credential::{ClaimSchema, CredentialSchema}; use credx::error; +use credx::knox::bbs::BbsScheme; use credx::prelude::Issuer; use credx::presentation::{Presentation, PresentationSchema}; use credx::statement::{ @@ -44,7 +45,7 @@ fn test_out_of_range_panic() -> CredxResult<()> { }, ]; let cred_schema = CredentialSchema::new(Some(LABEL), Some(DESCRIPTION), &[], &schema_claims)?; - let (issuer_public, mut issuer) = Issuer::new(&cred_schema); + let (issuer_public, mut issuer) = Issuer::::new(&cred_schema); let credential = issuer.sign_credential(&[ RevocationClaim::from(CRED_ID).into(), NumberClaim::from(5).into(), diff --git a/tests/real-id.rs b/tests/real-id.rs index cfb5dea..2911e9a 100644 --- a/tests/real-id.rs +++ b/tests/real-id.rs @@ -2,6 +2,8 @@ use std::collections::HashMap; use blsful::inner_types::{ExpandMsgXmd, G1Projective}; use chrono::{Duration, Local, NaiveDate}; +use credx::knox::ps::PsScheme; +use credx::knox::short_group_sig_core::short_group_traits::ShortGroupSignatureScheme; use credx::{ claim::{ClaimData, ClaimType, HashedClaim, NumberClaim, RevocationClaim}, credential::{ClaimSchema, CredentialBundle, CredentialSchema}, @@ -34,7 +36,7 @@ fn real_id_implementation() { let _ = env_logger::builder().is_test(true).try_init(); // Setup: The issuers publish credential schemas in verifiable data registry (VDR) - let (vdr, bank_wallet, dos_wallet, ssa_wallet) = issuer_setup(); + let (vdr, bank_wallet, dos_wallet, ssa_wallet) = issuer_setup::(); // Department of Public Safety (DPS) creates presentation schema for the claims it requires from various issuers to verify the applicant for the purpose of issuing a Real ID let real_id_presentation_schema = create_real_id_presentation_schema(&vdr); @@ -76,13 +78,13 @@ fn real_id_implementation() { assert!(verification_status.is_ok(), "{:?}", verification_status); } -fn create_real_id_presentation_with_selective_disclosure( - real_id_presentation_schema: &PresentationSchema, - vc_soc_sec: &CredentialBundle, - vc_passport: &CredentialBundle, - vc_bank_stmt: &CredentialBundle, +fn create_real_id_presentation_with_selective_disclosure( + real_id_presentation_schema: &PresentationSchema, + vc_soc_sec: &CredentialBundle, + vc_passport: &CredentialBundle, + vc_bank_stmt: &CredentialBundle, nonce: &[u8], -) -> Result { +) -> Result, credx::prelude::Error> { let mut soc_sec_sig_st_id = Default::default(); let mut dos_passport_sig_st_id = Default::default(); let mut bank_statement_sig_st_id = Default::default(); @@ -109,7 +111,7 @@ fn create_real_id_presentation_with_selective_disclosure( } } - let alice_credentials_for_real_id: IndexMap = indexmap! { + let alice_credentials_for_real_id: IndexMap> = indexmap! { soc_sec_sig_st_id => vc_soc_sec.credential.clone().into(), dos_passport_sig_st_id => vc_passport.credential.clone().into(), bank_statement_sig_st_id => vc_bank_stmt.credential.clone().into(), @@ -124,7 +126,9 @@ fn create_real_id_presentation_with_selective_disclosure( alice_real_id_presentation } -fn create_real_id_presentation_schema(vdr: &HashMap) -> PresentationSchema { +fn create_real_id_presentation_schema( + vdr: &HashMap>, +) -> PresentationSchema { // Claims needed from Social Security Card issued by SSA let ssa_soc_sec_statements = create_soc_sec_statements_for_realid(&vdr); let soc_security_schema = vdr.get(SSA_DID).unwrap().schema.clone(); @@ -153,7 +157,7 @@ fn create_real_id_presentation_schema(vdr: &HashMap) -> Pr }; // Final step for creating the presentation schema - let mut real_id_statements: Vec = Vec::new(); + let mut real_id_statements: Vec> = Vec::new(); real_id_statements.append(&mut ssa_soc_sec_statements.to_vec()); real_id_statements.append(&mut dos_passport_statements.to_vec()); real_id_statements.append(&mut bank_statement_statements.to_vec()); @@ -164,9 +168,9 @@ fn create_real_id_presentation_schema(vdr: &HashMap) -> Pr real_id_presentation_schema } -fn create_bank_statement_statements_for_realid( - vdr: &HashMap, -) -> [Statements; 5] { +fn create_bank_statement_statements_for_realid( + vdr: &HashMap>, +) -> [Statements; 5] { let bank_public = vdr.get(&BANK_DID.to_string()).unwrap(); let current_date = Local::now().date_naive(); let schema = bank_public.schema.clone(); @@ -240,7 +244,7 @@ fn create_bank_statement_statements_for_realid( claim: schema.claim_indices.get_index_of("account_number").unwrap(), }; - let bank_statement_statements: [Statements; 5] = [ + let bank_statement_statements: [Statements; 5] = [ bank_statement_sig_st.into(), bank_statement_acc_st.into(), bank_statement_comm_st_start_date.into(), @@ -251,9 +255,9 @@ fn create_bank_statement_statements_for_realid( bank_statement_statements } -fn create_dos_passport_statements_for_realid( - vdr: &HashMap, -) -> [Statements; 7] { +fn create_dos_passport_statements_for_realid( + vdr: &HashMap>, +) -> [Statements; 7] { let dos_public = vdr.get(&DOS_DID.to_string()).unwrap(); let schema = dos_public.schema.clone(); let current_date = Local::now().date_naive(); @@ -365,7 +369,7 @@ fn create_dos_passport_statements_for_realid( .unwrap(), }; - let dos_passport_statements: [Statements; 7] = [ + let dos_passport_statements: [Statements; 7] = [ dos_passport_sig_st.into(), dos_passport_acc_st.into(), dos_passport_comm_st_dob.into(), @@ -378,7 +382,9 @@ fn create_dos_passport_statements_for_realid( dos_passport_statements } -fn create_soc_sec_statements_for_realid(vdr: &HashMap) -> [Statements; 3] { +fn create_soc_sec_statements_for_realid( + vdr: &HashMap>, +) -> [Statements; 3] { let ssa_public = vdr.get(&SSA_DID.to_string()).unwrap(); let schema = ssa_public.schema.clone(); @@ -404,7 +410,7 @@ fn create_soc_sec_statements_for_realid(vdr: &HashMap) -> claim: schema.claim_indices.get_index_of("soc_sec_number").unwrap(), }; - let soc_sec_statements: [Statements; 3] = [ + let soc_sec_statements: [Statements; 3] = [ soc_sec_sig_st.into(), soc_sec_acc_st.into(), soc_sec_verenc_st.into(), @@ -413,14 +419,14 @@ fn create_soc_sec_statements_for_realid(vdr: &HashMap) -> soc_sec_statements } -fn issuer_setup() -> ( - HashMap, - HashMap, - HashMap, - HashMap, +fn issuer_setup() -> ( + HashMap>, + HashMap>, + HashMap>, + HashMap>, ) { // issuer setup - let mut vdr: HashMap = HashMap::new(); + let mut vdr: HashMap> = HashMap::new(); // setup bank let bank_wallet = setup_bank(&mut vdr); // setup dos @@ -431,8 +437,10 @@ fn issuer_setup() -> ( (vdr, bank_wallet, dos_wallet, ssa_wallet) } -fn setup_ssa(vdr: &mut HashMap) -> HashMap { - let mut ssa_wallet: HashMap = HashMap::new(); +fn setup_ssa( + vdr: &mut HashMap>, +) -> HashMap> { + let mut ssa_wallet: HashMap> = HashMap::new(); let soc_sec_claims = define_soc_sec_claims_schemas(); assert!(!soc_sec_claims.is_empty(), "{:?}", soc_sec_claims); @@ -452,8 +460,10 @@ fn setup_ssa(vdr: &mut HashMap) -> HashMap ssa_wallet } -fn setup_dos(vdr: &mut HashMap) -> HashMap { - let mut dos_wallet: HashMap = HashMap::new(); +fn setup_dos( + vdr: &mut HashMap>, +) -> HashMap> { + let mut dos_wallet: HashMap> = HashMap::new(); // Passport Claim Schemas let passport_claims = define_passport_claims_schemas(); @@ -474,8 +484,10 @@ fn setup_dos(vdr: &mut HashMap) -> HashMap dos_wallet } -fn setup_bank(vdr: &mut HashMap) -> HashMap { - let mut bank_wallet: HashMap = HashMap::new(); +fn setup_bank( + vdr: &mut HashMap>, +) -> HashMap> { + let mut bank_wallet: HashMap> = HashMap::new(); let bank_stmt_claims = define_bank_statement_claims_schemas(); assert!(!bank_stmt_claims.is_empty(), "{:?}", bank_stmt_claims); @@ -644,11 +656,11 @@ fn define_bank_statement_claims_schemas() -> Vec { schema_claims.to_vec() } -fn request_bank_statement_credential( - bank_wallet: HashMap, -) -> CredxResult { +fn request_bank_statement_credential( + bank_wallet: HashMap>, +) -> CredxResult> { let current_date = Local::now().date_naive(); - let mut bank_a: Issuer = bank_wallet.get(&BANK_DID.to_string()).unwrap().to_owned(); + let mut bank_a: Issuer = bank_wallet.get(&BANK_DID.to_string()).unwrap().to_owned(); // Start date is 45 days in the past. Map dates to integers - it's the number of days since 1/1/1900 let forty_five_days_ago = current_date - Duration::days(45); @@ -673,9 +685,9 @@ fn request_bank_statement_credential( Ok(vc_bank_stmt) } -fn request_passport_credential( - dos_wallet: HashMap, -) -> CredxResult { +fn request_passport_credential( + dos_wallet: HashMap>, +) -> CredxResult> { // Map dates to integers - it's the number of days since 1/1/1900 let dob = chrono::NaiveDate::from_ymd_opt(2000, 02, 17).unwrap(); let dob_since_1900 = days_since_1_jan_1900(dob)?; @@ -702,9 +714,9 @@ fn request_passport_credential( Ok(vc_passport) } -fn request_social_security_credential( - ssa_wallet: HashMap, -) -> CredxResult { +fn request_social_security_credential( + ssa_wallet: HashMap>, +) -> CredxResult> { let claims: [ClaimData; 3] = [ RevocationClaim::from(Uuid::new_v4().to_string()).into(), HashedClaim::from("123-456-789").into(),