Skip to content

Improve CLI output when a DID fails verification #227

@thobson88

Description

@thobson88

When using the trustchain-cli did verify CLI command in the case of a DID that fails the verification process, the output should give a meaningful "Verification Failed" message.

Currently it prints the Rust error variant to the terminal.

Example:

$ trustchain-cli did verify --did did:ion:test:EiByIMb7iIuvToiU299nmRIS4oA3tjCN7mhARaeIdEQddA
Error: CommitmentFailure(FailedContentVerification("[[{\"kty\":\"EC\",\"crv\":\"secp256k1\",\"x\":\"0cXIVhXNPJG9tumd0ZYDfrPFAnk9r_OLIbPTA9N-04I\",\"y\":\"f9Cfa4kOhaER6yUIlX3edeDI-6w3mPEUMnokcSzuA_8\"}],[\"https://www.safeparking.co.uk\",\"https://payments.safe-parking.co.uk\"]]", "{\"deltas\":[{\"patches\":[{\"action\":\"replace\",\"document\":{\"publicKeys\":[{\"id\":\"Bwe-yO7L8nCUkZaUZehuKPqXnNeeKU4drzc6if6ixKQ\",\"type\":\"JsonWebSignature2020\",\"publicKeyJwk\":{\"kty\":\"EC\",\"crv\":\"secp256k1\",\"x\":\"0cXIVhXNPJG9tumd0ZYDfrPFAnk9r_OLIbPTA9N-04I\",\"y\":\"f9Cfa4kOhaER6yUIlX3edeDI-6w3mPEUMnokcSzuA_8\"},\"purposes\":[\"assertionMethod\",\"authentication\",\"keyAgreement\",\"capabilityInvocation\",\"capabilityDelegation\"]}],\"services\":[{\"id\":\"TrustchainID\",\"type\":\"Identity\",\"serviceEndpoint\":\"https://www.safeparking.co.uk\"},{\"id\":\"payment-url\",\"type\":\"WebUrl\",\"serviceEndpoint\":\"https://payments.saefparking.co.uk\"}]}}],\"updateCommitment\":\"EiCTWZfZJQnJccs-o01Difv7wQZeZ7TUhtexIin2A0DkHA\"},{\"patches\":[{\"action\":\"add-services\",\"services\":[{\"id\":\"trustchain-controller-proof\",\"type\":\"TrustchainProofService\",\"serviceEndpoint\":{\"controller\":\"did:ion:test:EiBUjEaDDN1ROq6WgtBgIqpQZAZRu5XKNroOshi_sIDzsw\",\"proofValue\":\"eyJhbGciOiJFUzI1NksifQ.IkVpQXpQU2ZfOUZucjBiUExDbHlKcGVEWmtCQk9FN1M2elZ4Sjh1d0tUV1otc3ci.P5NZ2uwkRDhREcT19MExhJk6E3poRxAlmpcek42V2fdf688pmKK4v4MIDSgXF_JAWdkmGVEYRg4kdopD8OUb6A\"}}]}],\"updateCommitment\":\"EiBNMT54InEMhxdZOIFM5v-bFrcWKi8EX_Rch0k-lZ9lTA\"},{\"patches\":[{\"action\":\"add-services\",\"services\":[{\"id\":\"trustchain-controller-proof\",\"type\":\"TrustchainProofService\",\"serviceEndpoint\":{\"controller\":\"did:ion:test:EiC8hnHRr8kZUFThypBKFsHuzY8jhs4KttnLeJymF-upRQ\",\"proofValue\":\"eyJhbGciOiJFUzI1NksifQ.IkVpQXc1NkR5bXhWSWdneUFINV9uQXQxYWhnbEl2YWxPc254cEl0ZC1wN2hnMlEi.Pa3Qi-Bknh7gnt-2Lcf7hsmQ0ylklJZreOODp0aNZugsrLrL8uI-EsGqQOKckq-hDSP-ZrN6JF02XL2kArjSmA\"}}]}],\"updateCommitment\":\"EiC355nJqmgqJKDbZS-VGj5J7feAffjPLreULIydyN6gqw\"}]}"))

Metadata

Metadata

Assignees

No one assigned

    Labels

    CLIRelates to the Trustchain CLIgood first issueGood for newcomers

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions