- Add
maxClockSkew
parameter to time comparison functions with a default of 5 minutes. This also constitutes a fix for decentralized systems where clocks are not expected to be perfectly in sync.
- Add support for VC 2.0 Verifiable Credentials issuance and verification.
- Add support for VC 2.0 Verifiable Presentations issuance and verification.
- Add support for VC 2.0
validFrom
andvalidUntil
. - Add Test vectors for VC 2.0 VCs & VPs.
- BREAKING: Default issuance now uses VC 2.0 context.
- BREAKING: DateTime validator is now an xml schema DateTime validator.
- Switch from
credentials-context
to@digitalbazaar/credentials-context
for v1 and v2 contexts. - Simplify context packages usage by using exported
contexts
directly. - Improve credentials context mapping to and from versions.
- Documentation in the README and tests for
bbs-2023
.
- Change
engines.node
to>=18
to support newer keys & suites.
- Required parameter error for "verifiableCredential" in
vc.derive
matches name of parameter.
- Allow
credentialStatus
arrays in credential status check.
- Add
derive()
API for deriving new verifiable credentials from existing ones, for the purpose of selective disclosure or unlinkable presentation.
- Ensure that
issuanceDate
is only checked on verification, not issuance.
- Fix bug with option overrides for verifying presentations.
- BREAKING: Remove ODRL and VC examples contexts from
./lib/contexts/
and from the default document loader. The contexts are now available in@digitalbazaar/odrl-context
and@digitalbazaar/credentials-examples-context
.
- Update dependencies.
- BREAKING: Remove support for
expansionMap
. (Removed in dependencies.)
- BREAKING: Remove support for
- BREAKING: Use
jsonld-signatures@11
andjsonld@8
to get newsafe
mode (and on by default when usingcanonize
) feature.
- BREAKING: Check if credential has expired when
expirationDate
property exists.
- Add optional param
now
toverifyCredential()
,createPresentation()
,verify()
, andissue()
.
- BREAKING: Convert to module (ESM).
- BREAKING: Require Node.js >=14.
- Update dependencies.
- BREAKING:
did-veres-one@15.0.0
used in tests.
- BREAKING:
- Lint module.
- Sync VC example context from vc-data-model spec source.
- Fix validation of
credentialSubject.id
,issuer
andevidence
-- if it's not a URI, reject the credential. - BREAKING: No longer pass in custom parameters to
issue()
.
- If
issuanceDate
is not set, default tonow()
on issuing.
- BREAKING: Rename library to
@digitalbazaar/vc
. - Update dependencies.
- BREAKING: Remove typescript def generation support.
- BREAKING: No longer shipping browser bundles.
- BREAKING: Move binaries from
bin/
to@digitalbazaar/vc-js-cli
.
- The results from verifying a presentation now includes
credentialId
which makes it possible to correlate success/failure messages with credentials.
- Improve error reporting when
suite
parameter is missing.
- Accept string value for a single VP context.
- Fix reporting of
credentialResults
inverify
output.
- Add
checkStatus
option. This is a function that can be passed that will be executed when a VC has acredentialStatus
attribute.
verifiableCredential
param is now optional increatePresentation()
.- BREAKING:
verify()
now only verifies presentations, not credentials, (since that will be the most common use case). For credentials, a separateverifyCredential()
method has been added. - BREAKING: Rename
verify()
'spurpose
parameter topresentationPurpose
.
- Multiple types for a VerifiableCredential no longer required (fix).
- Multiple
@context
s for a VC no longer required (fix).
- BREAKING: For VerifiablePresentations, break the async
createPresentation()
API into two separate calls: a synccreatePresentation()
and an asyncsignPresentation()
. - BREAKING: Change default proof purpose for VerifiablePresentations
from
assertionMethod
toauthentication
. - BREAKING: A
challenge
param is required when verifying a VP.
- Add support for optionally verifying unsigned presentations.
- Update docs.
- Evidence IDs are now optional.
- Update webpack build.
- Cleanups.
- Use
credentials-context
package. - Update dependencies.
- BREAKING: Add further checks for controller, suite and assertionMethod
- BREAKING: Node.js v6 support.
- Export
defaultDocumentLoader
in main vc.js.
- Initial version. See git history for changes.