Credential Verification

Cypherpunk School issues Verifiable Credentials - cryptographically signed proof of course completion that YOU control.

How It Works

  1. Complete a course - Finish all lessons and exercises in your own git repo
  2. Get your DID - Your Decentralized Identifier (from Week 11 or create one)
  3. Generate completion proof - Run our script to verify your coursework
  4. Submit for credential - Send your proof to claim your credential
  5. Store it yourself - Your credential, your control

Claim Your Credential

Step 1: Complete the Course

Work through all 12 weeks of Cypherpunk 101 in your own git repo. Sign your commits with GPG (taught in Week 1).

Step 2: Generate Completion Proof

Download and run the completion proof script:

# Download the script
curl -O https://cypherpunkschool.com/tools/prove-completion.sh
chmod +x prove-completion.sh

# Run from your coursework repo
cd ~/your-cypherpunk-coursework
./prove-completion.sh --did "did:key:z6Mk..."

The script checks:

  • You have a git repo with signed commits
  • At least 12 signed commits (one per week)
  • Evidence of coursework in commit messages

It generates a completion-proof-YYYYMMDD.json file.

Step 3: Submit Your Proof

Email your completion proof to: [email protected]

Include:

  • Your completion-proof-*.json file
  • Your DID
  • (Optional) Link to your coursework repo

We’ll verify and issue your credential within a few days.


What Makes This Different?

Traditional certificates:

  • Stored on someone else’s server
  • Can be revoked without your consent
  • Require contacting the issuer to verify
  • You don’t control the data

Verifiable Credentials:

  • You hold your own credential
  • Cryptographically signed (can’t be forged)
  • Verifiable without contacting the issuer
  • Selective disclosure - prove only what you need

Zero-Knowledge Selective Disclosure

We support BBS+ signatures - an advanced cryptographic technique that lets you prove parts of your credential without revealing everything.

Example: Prove you completed “Cypherpunk 101” to an employer without revealing:

  • Your exact DID (privacy!)
  • Your grade
  • When you completed it

The verifier knows the credential is legitimate (signed by us) but only sees what YOU choose to share. This is real zero-knowledge proof in action.


Check Your Credential

Enter Your DID

If you've completed a course, enter your DID to retrieve your credential:


Verify a Credential

Paste Credential JSON

Have a credential? Paste it here to verify:


Credential Format

Cypherpunk School credentials follow the W3C Verifiable Credentials standard:

{
  "@context": [
    "https://www.w3.org/2018/credentials/v1",
    "https://w3id.org/security/suites/ed25519-2020/v1"
  ],
  "type": ["VerifiableCredential", "CypherpunkCourseCredential"],
  "issuer": {
    "id": "did:web:cypherpunkschool.com",
    "issuerName": "Cypherpunk School"
  },
  "issuanceDate": "2025-01-15T00:00:00Z",
  "credentialSubject": {
    "id": "did:key:z6Mk...",
    "courseName": "Cypherpunk 101",
    "completionDate": "2025-01-15",
    "grade": "Pass"
  },
  "proof": {
    "type": "Ed25519Signature2020",
    "verificationMethod": "did:web:cypherpunkschool.com#key-vc",
    "proofValue": "z..."
  }
}

Verification Methods

Verify Our Issuer DID

Our DID document is publicly available:

curl https://cypherpunkschool.com/.well-known/did.json

The #key-vc verification method is authorized for credential signing.

Third-Party Verifiers

You can verify credentials using:


Questions?

  • Week 11 of Cypherpunk 101 covers DIDs in depth
  • Bonus lesson: Self-Sovereign Identity (coming soon) will explain the full SSI ecosystem
  • Contact us for credential issues