HomeAboutExperienceProjectsContactBlog
RésuméDex0/17
← Projects

GoCrypt

A Go CLI that stamps ownership into a PDF and seals it with AES-256-GCM.

OWNERDOC IDTIMEHASHTEXTPASSWORDPBKDF2 100KKEYAES-256-GCMHEADERREADABLESALT32 BNONCE12 BCIPHERTEXT53 BTAG16 B
Sealing…

Type and it seals as you go, in your browser, with the CLI's settings (PBKDF2-SHA256 at 100,000 rounds, then AES-256-GCM) and file layout, so a file sealed here opens with the CLI's decrypt. Your text stands in for the stamped PDF. Seal again for a fresh salt and nonce.

A fresh 32-byte salt and 12-byte nonce per file; the key comes from the password via PBKDF2. GCM authenticates the ciphertext, so tampering with it fails decryption. The readable header in front (owner, document ID, hash) is not covered by the tag.

Run protect on a PDF with an owner and a password. GoCrypt embeds provenance metadata (including a notice aimed at AI assistants that read the file), then encrypts the whole file with AES-256-GCM behind a short readable header, so only the password opens it.

Next: Keeneland race modelA hackathon XGBoost model that ranks the likely top finishers of Keeneland races.

Year
2025
Platform
Go CLI
Status
CLI prototype
Code
Private
Built with
Go, AES-256-GCM, PBKDF2, pdfcpu
  • 100k PBKDF2 iterations
  • 21 crypto tests

The code is private, so this page is an overview.