Skip to content

Commit

Permalink
Merge pull request #7 from singpass/release/0.1.1
Browse files Browse the repository at this point in the history
Add static w3 credentials v1 context file to default documents
  • Loading branch information
yuejun92 authored Oct 12, 2023
2 parents 873daff + 1de849f commit 427b01e
Show file tree
Hide file tree
Showing 4 changed files with 279 additions and 1 deletion.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Changelog

## 0.1.1 11 Oct 2023:

- Add static w3 credentials v1 context file to default documents

## 0.1.0 22 Sept 2023:

- Add in VP and VC verification for did:key to ensure VC did:key matches with VP did:key
Expand Down
273 changes: 273 additions & 0 deletions contextData/w3-credentials-v1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,273 @@
{
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"VerifiableCredential": {
"@id": "https://www.w3.org/2018/credentials#VerifiableCredential",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"cred": "https://www.w3.org/2018/credentials#",
"sec": "https://w3id.org/security#",
"xsd": "http://www.w3.org/2001/XMLSchema#",

"credentialSchema": {
"@id": "cred:credentialSchema",
"@type": "@id",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"cred": "https://www.w3.org/2018/credentials#",

"JsonSchemaValidator2018": "cred:JsonSchemaValidator2018"
}
},
"credentialStatus": { "@id": "cred:credentialStatus", "@type": "@id" },
"credentialSubject": { "@id": "cred:credentialSubject", "@type": "@id" },
"evidence": { "@id": "cred:evidence", "@type": "@id" },
"expirationDate": { "@id": "cred:expirationDate", "@type": "xsd:dateTime" },
"holder": { "@id": "cred:holder", "@type": "@id" },
"issued": { "@id": "cred:issued", "@type": "xsd:dateTime" },
"issuer": { "@id": "cred:issuer", "@type": "@id" },
"issuanceDate": { "@id": "cred:issuanceDate", "@type": "xsd:dateTime" },
"proof": { "@id": "sec:proof", "@type": "@id", "@container": "@graph" },
"refreshService": {
"@id": "cred:refreshService",
"@type": "@id",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"cred": "https://www.w3.org/2018/credentials#",

"ManualRefreshService2018": "cred:ManualRefreshService2018"
}
},
"termsOfUse": { "@id": "cred:termsOfUse", "@type": "@id" },
"validFrom": { "@id": "cred:validFrom", "@type": "xsd:dateTime" },
"validUntil": { "@id": "cred:validUntil", "@type": "xsd:dateTime" }
}
},

"VerifiablePresentation": {
"@id": "https://www.w3.org/2018/credentials#VerifiablePresentation",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"cred": "https://www.w3.org/2018/credentials#",
"sec": "https://w3id.org/security#",

"holder": { "@id": "cred:holder", "@type": "@id" },
"proof": { "@id": "sec:proof", "@type": "@id", "@container": "@graph" },
"verifiableCredential": {
"@id": "cred:verifiableCredential",
"@type": "@id",
"@container": "@graph"
}
}
},

"EcdsaSecp256k1Signature2019": {
"@id": "https://w3id.org/security#EcdsaSecp256k1Signature2019",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"sec": "https://w3id.org/security#",
"xsd": "http://www.w3.org/2001/XMLSchema#",

"challenge": "sec:challenge",
"created": { "@id": "http://purl.org/dc/terms/created", "@type": "xsd:dateTime" },
"domain": "sec:domain",
"expires": { "@id": "sec:expiration", "@type": "xsd:dateTime" },
"jws": "sec:jws",
"nonce": "sec:nonce",
"proofPurpose": {
"@id": "sec:proofPurpose",
"@type": "@vocab",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"sec": "https://w3id.org/security#",

"assertionMethod": {
"@id": "sec:assertionMethod",
"@type": "@id",
"@container": "@set"
},
"authentication": {
"@id": "sec:authenticationMethod",
"@type": "@id",
"@container": "@set"
}
}
},
"proofValue": "sec:proofValue",
"verificationMethod": { "@id": "sec:verificationMethod", "@type": "@id" }
}
},

"EcdsaSecp256r1Signature2019": {
"@id": "https://w3id.org/security#EcdsaSecp256r1Signature2019",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"sec": "https://w3id.org/security#",
"xsd": "http://www.w3.org/2001/XMLSchema#",

"challenge": "sec:challenge",
"created": { "@id": "http://purl.org/dc/terms/created", "@type": "xsd:dateTime" },
"domain": "sec:domain",
"expires": { "@id": "sec:expiration", "@type": "xsd:dateTime" },
"jws": "sec:jws",
"nonce": "sec:nonce",
"proofPurpose": {
"@id": "sec:proofPurpose",
"@type": "@vocab",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"sec": "https://w3id.org/security#",

"assertionMethod": {
"@id": "sec:assertionMethod",
"@type": "@id",
"@container": "@set"
},
"authentication": {
"@id": "sec:authenticationMethod",
"@type": "@id",
"@container": "@set"
}
}
},
"proofValue": "sec:proofValue",
"verificationMethod": { "@id": "sec:verificationMethod", "@type": "@id" }
}
},

"Ed25519Signature2018": {
"@id": "https://w3id.org/security#Ed25519Signature2018",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"sec": "https://w3id.org/security#",
"xsd": "http://www.w3.org/2001/XMLSchema#",

"challenge": "sec:challenge",
"created": { "@id": "http://purl.org/dc/terms/created", "@type": "xsd:dateTime" },
"domain": "sec:domain",
"expires": { "@id": "sec:expiration", "@type": "xsd:dateTime" },
"jws": "sec:jws",
"nonce": "sec:nonce",
"proofPurpose": {
"@id": "sec:proofPurpose",
"@type": "@vocab",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"sec": "https://w3id.org/security#",

"assertionMethod": {
"@id": "sec:assertionMethod",
"@type": "@id",
"@container": "@set"
},
"authentication": {
"@id": "sec:authenticationMethod",
"@type": "@id",
"@container": "@set"
}
}
},
"proofValue": "sec:proofValue",
"verificationMethod": { "@id": "sec:verificationMethod", "@type": "@id" }
}
},

"RsaSignature2018": {
"@id": "https://w3id.org/security#RsaSignature2018",
"@context": {
"@version": 1.1,
"@protected": true,

"challenge": "sec:challenge",
"created": { "@id": "http://purl.org/dc/terms/created", "@type": "xsd:dateTime" },
"domain": "sec:domain",
"expires": { "@id": "sec:expiration", "@type": "xsd:dateTime" },
"jws": "sec:jws",
"nonce": "sec:nonce",
"proofPurpose": {
"@id": "sec:proofPurpose",
"@type": "@vocab",
"@context": {
"@version": 1.1,
"@protected": true,

"id": "@id",
"type": "@type",

"sec": "https://w3id.org/security#",

"assertionMethod": {
"@id": "sec:assertionMethod",
"@type": "@id",
"@container": "@set"
},
"authentication": {
"@id": "sec:authenticationMethod",
"@type": "@id",
"@container": "@set"
}
}
},
"proofValue": "sec:proofValue",
"verificationMethod": { "@id": "sec:verificationMethod", "@type": "@id" }
}
},

"proof": { "@id": "https://w3id.org/security#proof", "@type": "@id", "@container": "@graph" }
}
}
1 change: 1 addition & 0 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ const bs58 = require("bs58");
let documents = {
"https://w3id.org/security/bbs/v1": require("./contextData/w3id-sec-bbs-v1.json"),
"https://w3id.org/did/v0.11": require("./contextData/w3id-did-v0.11.json"),
"https://www.w3.org/2018/credentials/v1": require("./contextData/w3-credentials-v1.json"),
};

let MyInfoVcVerifier = {};
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "myinfo-vc-verifier",
"version": "0.1.0",
"version": "0.1.1",
"description": "This package provides the functionality to verify a verifiable credential using @mattrglobal jsonld-signatures-bbs.",
"main": "index.js",
"scripts": {
Expand Down

0 comments on commit 427b01e

Please sign in to comment.