Skip to content

Releases: dolutech/cryptnote-php

v0.2.0

11 Jan 17:34
18e8238

Choose a tag to compare

[0.2.0] - 2026-01-11

Added

  • AES-256-GCM (AEAD) as default encryption method for both CryptNote and CryptNoteStandalone
  • Encryption versioning (encryption_version): v2 (GCM AEAD) and v1 (legacy CBC+HMAC)
  • Password policy enforcement: password_min_length (default: 12 characters)
  • Custom password validator: password_validator callable option
  • Require password option: require_password to force all notes to have a password
  • Key wrapping: enable_key_wrapping and wrapping_key options to protect per-note keys
  • Privacy mode: privacy_mode option to hide status details for missing/expired/invalid tokens
  • Secure deletion: secure_delete option for SQLite secure_delete pragma + DELETE journal mode
  • HMAC authentication for v1 CBC payloads (integrity verification)
  • Backward compatibility for legacy encrypted data without version prefix

Changed

  • Default encryption_method changed from AES-256-CBC to AES-256-GCM
  • Default password_min_length increased to 12 characters (was 8)
  • CryptNoteStandalone now uses versioned encryption format (v2: or v1: prefix)
  • Encrypted data format now includes version prefix for format identification
  • Improved documentation with security best practices

Security

  • GCM mode provides authenticated encryption (AEAD) - detects tampering
  • HMAC-SHA256 added for v1 CBC mode integrity verification
  • Stronger default password requirements
  • Optional key wrapping for defense in depth

v0.1.0

11 Jan 15:21

Choose a tag to compare

🔐 CryptNote PHP Library v0.1.0 - Initial Release

Welcome to the first public release of CryptNote PHP Library!

✨ What's New

This is the inaugural release of CryptNote, a powerful PHP library for creating encrypted, self-destructing messages with view limits and optional password protection.

Core Features

  • 🔐 AES-256-CBC Encryption - Military-grade encryption for your messages
  • 🔑 Password Protection - Optional PBKDF2 key derivation (100,000 iterations)
  • 👁️ View Limits - Messages self-destruct after 1-100 views
  • ⏰ Time Expiration - Set messages to expire up to 7 days
  • 📝 Markdown/HTML Support - Store and retrieve formatted content
  • 🗄️ SQLite Storage - Zero-configuration database included
  • 🧹 Auto Cleanup - Automatic removal of old, unviewed messages
  • 🔒 Secure Deletion - Data is overwritten before deletion

What's Included

  • ✅ Full-featured CryptNote class with SQLite storage
  • CryptNoteStandalone class for custom storage implementations
  • ✅ Comprehensive documentation (API Reference, Configuration, Security Guide)
  • ✅ Working examples (basic usage, standalone encryption, web interface)
  • ✅ Complete PHPUnit test suite
  • ✅ Production-ready code with security best practices

Requirements

  • PHP 8.0 or higher
  • OpenSSL extension
  • PDO extension with SQLite driver