-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
production V+ shows tampered credentials as valid #135
Comments
This is so bizarre. Using the credential above, if I change the top level 'name' property in the VC ("name": "James Chartrand - Test 2 of “Three Steps for an Entrepreneurial Mindset” Workshop") - changing the 'C' in Chartrand to an 'S' then it incorrectly shows as verified, i.e, it doesn't detect the tampering. |
Update: The problem seems to have something to do with the non-url id at the top level of the VC. The following two VCs are identical except that the second has 'urn:uuid' prefixing the top level id. It is only the first VC - without the 'urn:uuid' - that incorrectly shows the VC as verified when the top level name property is tampered with. Passes verification even after tampering (no urn:uuid prefixing the top level 'id'):
Fails verification after tampering (urn:uuid prefixes the top level 'id'):
|
This is only a problem with pre-VC2 libraries. The latest VC libs (which support VC2 and BitstringStatusList) don't allow a non-uri id at all, so the verification will always fail. |
Done and deployed 10/3/24 |
If I remove characters from the json of a valid verifiable credential and then try to verify in V+ it still shows as valid.
Here is a valid VC that correctly validates. But, remove any character, say from the top level 'name', and paste the json into V+
and it will still show as valid:
The text was updated successfully, but these errors were encountered: