From 149af3ea5c47caf94dc698d00515e5a7223197c6 Mon Sep 17 00:00:00 2001 From: "Andy Miller (IMS)" <48326098+amiller-ims@users.noreply.github.com> Date: Tue, 16 May 2023 12:11:01 +0900 Subject: [PATCH] Add a simple did:web method sample Depends on wellspring 2022 portal app --- .../org/oneedtech/inspect/vc/Samples.java | 3 +- .../resources/ob30/simple-did-key-method.json | 33 +++++ .../resources/ob30/simple-did-web-method.json | 119 +++--------------- 3 files changed, 51 insertions(+), 104 deletions(-) create mode 100644 inspector-vc/src/test/resources/ob30/simple-did-key-method.json diff --git a/inspector-vc/src/test/java/org/oneedtech/inspect/vc/Samples.java b/inspector-vc/src/test/java/org/oneedtech/inspect/vc/Samples.java index ab74a9e..b0f2607 100644 --- a/inspector-vc/src/test/java/org/oneedtech/inspect/vc/Samples.java +++ b/inspector-vc/src/test/java/org/oneedtech/inspect/vc/Samples.java @@ -11,7 +11,8 @@ public class Samples { public static final class JSON { public final static Sample COMPLETE_JSON = new Sample("ob30/complete.json", false); public final static Sample SIMPLE_JSON = new Sample("ob30/simple.json", true); - public final static Sample SIMPLE_DID_METHOD_JSON = new Sample("ob30/simple-did-method.json", true); + public final static Sample SIMPLE_DID_KEY_METHOD_JSON = new Sample("ob30/simple-did-key-method.json", true); + public final static Sample SIMPLE_DID_WEB_METHOD_JSON = new Sample("ob30/simple-did-web-method.json", true); public final static Sample SIMPLE_MULTIPLE_PROOF_JSON = new Sample("ob30/simple-multiple-proofs.json", true); public final static Sample SIMPLE_JSON_NOPROOF = new Sample("ob30/simple-noproof.json", false); public final static Sample SIMPLE_JSON_UNKNOWN_TYPE = new Sample("ob30/simple-err-type.json", false); diff --git a/inspector-vc/src/test/resources/ob30/simple-did-key-method.json b/inspector-vc/src/test/resources/ob30/simple-did-key-method.json new file mode 100644 index 0000000..764298f --- /dev/null +++ b/inspector-vc/src/test/resources/ob30/simple-did-key-method.json @@ -0,0 +1,33 @@ +{ + "@context" : [ "https://www.w3.org/2018/credentials/v1", "https://purl.imsglobal.org/spec/ob/v3p0/context.json", "https://purl.imsglobal.org/spec/ob/v3p0/extensions.json", "https://w3id.org/security/suites/ed25519-2020/v1" ], + "id" : "urn:uuid:280c19b6-9680-4a37-ba84-e38b1a4e4584", + "type" : [ "VerifiableCredential", "AchievementCredential" ], + "issuer" : { + "type" : [ "Profile" ], + "name" : "Andy F. Miller", + "id" : "urn:uuid:6f2e33e5-7a29-4155-840a-59483ba10164" + }, + "issuanceDate" : "2022-11-10T07:38:00-08:00", + "name" : "test 1", + "credentialSubject" : { + "id" : "urn:uuid:6f2e33e5-7a29-4155-840a-59483ba10164", + "type" : [ "AchievementSubject" ], + "achievement" : { + "id" : "urn:uuid:35258e6f-4c05-4215-8ada-38a5a5b80510", + "type" : [ "Achievement" ], + "achievementType" : "Achievement", + "name" : "test 1", + "description" : "This is a test achievement", + "criteria" : { + "narrative" : "There is no criteria" + } + } + }, + "proof" : [ { + "type" : "Ed25519Signature2020", + "created" : "2022-11-16T20:39:53Z", + "proofPurpose" : "assertionMethod", + "verificationMethod" : "did:key:z6MkwAQmEfso8UjHJZTQajRtqR5hDxAD95iJD4z53XnKCFms", + "proofValue" : "z361ueyGzREPvsWdnWUfkzTKXEd6u2DPPu2kDw3pDERJmzDFCqsuaPneqcRgz2hk9ycaNDYmC4Fy9c6S6BDDt5fVB" + } ] +} diff --git a/inspector-vc/src/test/resources/ob30/simple-did-web-method.json b/inspector-vc/src/test/resources/ob30/simple-did-web-method.json index 57c8b7c..8b6c156 100644 --- a/inspector-vc/src/test/resources/ob30/simple-did-web-method.json +++ b/inspector-vc/src/test/resources/ob30/simple-did-web-method.json @@ -5,130 +5,43 @@ "https://purl.imsglobal.org/spec/ob/v3p0/extensions.json", "https://w3id.org/security/suites/ed25519-2020/v1" ], - "id": "http://localhost:8082/credentials/a9821486-26fc-4a89-924b-ed2521395003", + "id": "http://dc.1edtech.org/wellspring2022/wellspring-portal/credentials/5d7b7ff6-b1d5-47d5-83df-faf22533ba8f", "type": [ "VerifiableCredential", "AchievementCredential" ], "issuer": { - "id": "did:web:localhost%3A8082:profiles:1bb90bff-8fda-49eb-884c-0fa9d209d178", + "id": "did:web:dc.1edtech.org:wellspring2022:wellspring-portal:profiles:7ad80b28-4f3f-414d-85ec-6c0684344e5c", "type": "Profile", "name": "Wellspring School" }, - "awardedDate": "2023-05-02T00:33:00Z", - "issuanceDate": "2023-05-15T23:56:14Z", - "expirationDate": "2024-05-02T02:47:00Z", - "name": "Achievement 2", - "description": "This is a short description.", - "evidence": [ - { - "type": "Evidence", - "audience": "General", - "description": "My photos", - "genre": "Photography", - "name": "Photography portfolio", - "narrative": "This is __all__ of my photos" - } - ], + "awardedDate": "2023-05-16T11:27:00Z", + "issuanceDate": "2023-05-16T03:06:16Z", + "name": "Simple assertion of achievement 1", "credentialSubject": { - "id": "did:web:localhost%3A8082:profiles:abb48d60-5619-4b6f-9f3f-699b7c4b49cd", + "id": "did:web:dc.1edtech.org:wellspring2022:wellspring-portal:profiles:d4e1f6ad-9696-41cb-8729-8ff741f96c6a", "type": "AchievementSubject", "achievement": { - "id": "http://localhost:8082/achievements/5e5f7f83-cf05-49d1-81a7-d9cb6b0ffece", + "id": "http://dc.1edtech.org/wellspring2022/wellspring-portal/achievements/c44d8939-c237-4420-902c-9af305b15e2f", "type": "Achievement", - "achievementType": "Course", - "alignment": [ - { - "type": "Alignment", - "targetFramework": "Construction Accounting", - "targetName": "Preparing cost estimates and bids", - "targetType": "CFItem", - "targetUrl": "https://casenetwork.imsglobal.org/uri/c865f9de-aea3-11eb-86a8-0242ac140003", - "targetFrameworkIdentifier": "bdf9b670-aea3-11eb-85bc-0242ac140003", - "targetIdentifier": "c865f9de-aea3-11eb-86a8-0242ac140003" - } - ], - "creditsAvailable": 3, + "achievementType": "Achievement", "criteria": { - "narrative": "This is the criteria:\r\n1. First criteria\r\n1. Second criteria" + "narrative": "The credential must pass verification." }, - "description": "This is a short description", - "fieldOfStudy": "Biology", - "humanCode": "B-101", - "@language": "en", - "name": "Achievement 2", - "resultDescription": [ - { - "id": "25838e15-81af-4582-97a9-932e07a8f3ce", - "type": "ResultDescription", - "allowedValue": [ - "A", - "B", - "C", - "D", - "F" - ], - "name": "Grade", - "requiredLevel": "431eff1b-0981-4656-9b0c-8a3957f481e7", - "requiredValue": "C", - "resultType": "LetterGrade", - "rubricCriterionLevel": [ - { - "id": "a6204c1f-f2e9-4cd7-b06b-727ca7564778", - "type": "RubricCriterionLevel", - "description": "Basic level", - "level": "Basic", - "name": "Basic", - "points": "1" - }, - { - "id": "431eff1b-0981-4656-9b0c-8a3957f481e7", - "type": "RubricCriterionLevel", - "description": "Advanced level", - "level": "Advanced", - "name": "Advanced", - "points": "2" - } - ], - "valueMax": "A", - "valueMin": "C" - } - ], - "specialization": "Nanotechnology", - "tag": [ - "this", - " that", - " the other" - ], - "version": "1" + "description": "This is a test achievement.", + "name": "Achievement 1" }, - "activityEndDate": "2023-03-31T02:47:00Z", - "activityStartDate": "2023-01-01T02:47:00Z", - "creditsEarned": 3, - "licenseNumber": "1234567890", - "narrative": "This is a **longer** description.", - "result": [ - { - "type": "Result", - "achievedLevel": "a6204c1f-f2e9-4cd7-b06b-727ca7564778", - "resultDescription": "25838e15-81af-4582-97a9-932e07a8f3ce", - "status": "Completed", - "value": "A" - } - ], - "role": "Arbitrator", "source": { - "id": "did:web:localhost%3A8082:profiles:1bb90bff-8fda-49eb-884c-0fa9d209d178", + "id": "did:web:dc.1edtech.org:wellspring2022:wellspring-portal:profiles:7ad80b28-4f3f-414d-85ec-6c0684344e5c", "type": "Profile", "name": "Wellspring School" - }, - "term": "Winter" + } }, "proof": { "type": "Ed25519Signature2020", - "created": "2023-05-15T23:56:14Z", + "created": "2023-05-16T03:06:16Z", "proofPurpose": "assertionMethod", - "verificationMethod": "did:web:localhost%3A8082:profiles:1bb90bff-8fda-49eb-884c-0fa9d209d178#key-0", - "proofValue": "zpwCWNLeW5GUaJCzNxUPeLB2S7eXyukudaqKbVDUcZtQUJpTtXu2evP73Siv63V6FYipcP8WrVYovgZ1HrsKHKZZ" + "verificationMethod": "did:web:dc.1edtech.org:wellspring2022:wellspring-portal:profiles:7ad80b28-4f3f-414d-85ec-6c0684344e5c#key-0", + "proofValue": "z3hxUKSkeLNyk9dj9RuY8K6Zp7SjdQz6C3ueM9KiD24ex5oAQ1K4txZ92jXybLYwp42fzMtR4fNqvFuev6NkQJKyP" } } \ No newline at end of file