Skip to content

Commit

Permalink
Merge ae059b0 into 0a670e8
Browse files Browse the repository at this point in the history
  • Loading branch information
simonas-notcat authored Jun 29, 2021
2 parents 0a670e8 + ae059b0 commit bd97c39
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 13 deletions.
5 changes: 3 additions & 2 deletions __tests__/shared/handleSdrMessage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,8 @@ export default (testContext: {
},
})

expect(credentials[0].credentials[0]).toHaveProperty('proof.jwt')
expect(credentials[0].credentials[0]).toHaveProperty('hash')
expect(credentials[0].credentials[0]).toHaveProperty('verifiableCredential.proof.jwt')
})

it('should create verifiable presentation', async () => {
Expand All @@ -138,7 +139,7 @@ export default (testContext: {
'@context': ['https://www.w3.org/2018/credentials/v1'],
type: ['VerifiablePresentation'],
issuanceDate: new Date().toISOString(),
verifiableCredential: credentials[0].credentials,
verifiableCredential: credentials[0].credentials.map(c => c.verifiableCredential),
},
proofFormat: 'jwt',
save: true,
Expand Down
8 changes: 4 additions & 4 deletions packages/cli/src/sdr.ts
Original file line number Diff line number Diff line change
Expand Up @@ -303,13 +303,13 @@ sdr
name: item.claimType + ' ' + (item.essential ? '(essential)' : '') + item.reason,
choices: item.credentials.map((c) => ({
name:
c.credentialSubject[item.claimType] +
c.verifiableCredential.credentialSubject[item.claimType] +
' (' +
c.type.join(',') +
c.verifiableCredential.type.join(',') +
') issued by: ' +
c.issuer.id +
c.verifiableCredential.issuer.id +
' ' +
shortDate(c.issuanceDate) +
shortDate(c.verifiableCredential.issuanceDate) +
' ago',
value: c,
})),
Expand Down
17 changes: 16 additions & 1 deletion packages/selective-disclosure/plugin.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -369,7 +369,7 @@
"credentials": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VerifiableCredential"
"$ref": "#/components/schemas/UniqueVerifiableCredential"
}
}
},
Expand All @@ -379,6 +379,21 @@
],
"description": "The credentials that make up a response of a Selective Disclosure"
},
"UniqueVerifiableCredential": {
"type": "object",
"properties": {
"hash": {
"type": "string"
},
"verifiableCredential": {
"$ref": "#/components/schemas/VerifiableCredential"
}
},
"required": [
"hash",
"verifiableCredential"
]
},
"IValidatePresentationAgainstSdrArgs": {
"type": "object",
"properties": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ describe('@veramo/selective-disclosure-helper', () => {

const result = await actionHandler.validatePresentationAgainstSdr({ presentation, sdr }, context)

expect(result.claims[0].credentials[0].credentialSubject['firstName']).toEqual('Alice')
expect(result.claims[0].credentials[0].verifiableCredential.credentialSubject['firstName']).toEqual('Alice')
expect(result.valid).toEqual(true)
})

Expand Down
8 changes: 6 additions & 2 deletions packages/selective-disclosure/src/action-handler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ import {
} from './types'
import { schema } from './'
import { createJWT } from 'did-jwt'
import { blake2bHex } from 'blakejs'
import Debug from 'debug'

/**
Expand Down Expand Up @@ -148,7 +149,7 @@ export class SelectiveDisclosure implements IAgentPlugin {

result.push({
...credentialRequest,
credentials: credentials.map((c) => c.verifiableCredential),
credentials,
})
}
return result
Expand Down Expand Up @@ -214,7 +215,10 @@ export class SelectiveDisclosure implements IAgentPlugin {

claims.push({
...credentialRequest,
credentials,
credentials: credentials.map(vc => ({
hash: blake2bHex(JSON.stringify(vc)),
verifiableCredential: vc
})),
})
}
return { valid, claims }
Expand Down
5 changes: 2 additions & 3 deletions packages/selective-disclosure/src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@ import {
IDIDManager,
IKeyManager,
IPluginMethodMap,
VerifiableCredential,
VerifiablePresentation,
} from '@veramo/core'
import { IDataStoreORM } from '@veramo/data-store'
import { IDataStoreORM, UniqueVerifiableCredential } from '@veramo/data-store'
import { ICredentialIssuer } from '@veramo/credential-w3c'

/**
Expand Down Expand Up @@ -113,7 +112,7 @@ export interface ICredentialRequestInput {
* @beta
*/
export interface ICredentialsForSdr extends ICredentialRequestInput {
credentials: VerifiableCredential[]
credentials: UniqueVerifiableCredential[]
}

/**
Expand Down

0 comments on commit bd97c39

Please sign in to comment.