Skip to main content
AgentSanctionsPassCredential — the agent-side mirror of KYC. Wraps a Chainalysis sanctions screening result in a W3C Verifiable Credential that institutional clients can show auditors. The credential is signed by Glide’s institutional issuer key (a did:web:glide.co identity) via the @glideco/kms-signer abstraction, so the private key never leaves AWS KMS, GCP KMS, or HashiCorp Vault Transit. Verifiers fetch https://glide.co/.well-known/did.json to obtain the issuer’s public key and verify the signature standalone — no Glide API call required at verification time.

Install

npmjs.com/package/@glideco/kya-vc

What the credential proves

  1. The agent’s wallet (did:key, per-grant) and its delegating user’s vault were screened against OFAC SDN, UN Consolidated, EU financial sanctions, and UK HMT lists at issuanceDate.
  2. The screening came back clean, or where hits occurred, each was cleared (disposition: 'cleared-false-positive' or 'escalated').
  3. Credentials expire after 90 days — the regulatory norm for sanctions-screening freshness. Verifiers MUST reject expired credentials.
Screenings with disposition: 'blocked' are refused: issueAgentSanctionsPassCredential throws rather than issue a credential with an unresolved blocking hit.

Supported cryptosuites

rsa256 is explicitly rejected — Glide’s E19 plan targets ed25519 or es256 (matching App Attest’s P-256 curve).

Issue a credential

Validate a presented credential

Decode a proof value

Revocation via StatusList2021

Pass statusListUrl and statusListIndex to embed a credentialStatus block in the credential. If a screening result is later reversed (e.g., disposition changed to 'blocked'), flip the bit in the status list at that index — verifiers that fetch the status list will see revoked: true on their next check without requiring a new credential issuance.

Reading list