Cryptographic Trust. Developer First.
Whether you're a creator protecting your work or a platform integrating verification infrastructure — Truthlocks gives you the cryptographic primitives you need.
Protect your code & content
Prove authorship of code, research, designs, and digital content with a single CLI command. Every protection creates a cryptographic proof anchored to an immutable transparency log.
# Install the CLI
npm install -g @truthlock/protect
# Authenticate with your account
truthlock-protect login --token <your-token>
# Protect any file with a single command
truthlock-protect protect ./my-project/main.ts
# ✓ Protected successfully!
# Attestation: att_k7x2m9...
# Proof: https://verify.truthlocks.com/proof/att_k7x2m9...Protect CLI
One command to protect any file. SHA-256 hash, digital signature, and transparency log entry — automatically.
GitHub Actions
Auto-protect your code on every push or release. Add a single workflow file to your repo.
Verification Badges
Add verified badges to your README. Show cryptographic proof that your code is authentic.
Public Portfolio
All your protected work in one place. Share your portfolio with a single link.
Integrate verification infrastructure
Add cryptographic verification to your platform with our SDKs and APIs. Mint attestations, manage issuers, and build trust workflows for businesses, institutions, and governments.
import { TruthlockClient } from '@truthlock/sdk';
const client = new TruthlockClient({
apiKey: process.env.TRUTHLOCK_API_KEY,
environment: 'production',
});
// Mint a verification attestation
const attestation = await client.attestations.mint({
issuer_id: 'iss_your_issuer',
schema_id: 'identity.kyc.basic',
claims: {
subject: { name: 'Jane Doe', email: 'jane@example.com' },
document: { type: 'passport', country: 'US' },
},
recipient_email: 'jane@example.com',
});
// Verify an attestation
const result = await client.verify.verifyOnline({
attestation_id: attestation.attestation_id,
});import truthlock "github.com/truthlocks/sdk-go"
client := truthlock.NewClient(
truthlock.WithAPIKey(os.Getenv("TRUTHLOCK_API_KEY")),
)
att, err := client.Attestations.Mint(ctx, &truthlock.MintRequest{
IssuerID: "iss_your_issuer",
SchemaID: "identity.kyc.basic",
Claims: claims,
})JavaScript SDK
Type-safe SDK with automatic auth, retries, and idempotency. Published on npm — no special config needed.
Go SDK
Native Go module with zero external dependencies. Available via the public Go module proxy.
REST API
Complete REST API for attestation minting, verification, issuer management, governance, and audit.
Transparency Log
Every attestation is anchored in an append-only Merkle tree. Independently auditable by anyone.
Ship with proof
Creators protect their work. Platforms integrate verification. Everyone verifies independently. Free tier included.
