Mojic

Operation Ironclad: obfuscate C source code into a randomized, password-seeded stream of emojis.

Mojic (Magic + Emoji + Logic) is a CLI tool that transforms readable C code into an unrecognizable, chaotic stream of emojis. Unlike a simple substitution cipher, Mojic uses your password to seed a cryptographically strong PRNG, creating a unique "Emoji Universe" and rolling cipher for every session.

Key features

  • AES-256-CTR PRNG — a cryptographically secure PRNG (seeded via Scrypt) drives shuffling and polymorphism
  • Polymorphic keywords — common C keywords (int, void, return) map to emojis that change every time they appear, based on PRNG state — frequency analysis doesn't work
  • XOR whitening — raw data (whitespace, variable names) is XORed with the AES keystream before encoding, so repeating patterns like 4-space indentation never produce the same emoji sequence twice
  • Base-1024 compression — non-keyword code is compressed with a custom scheme (5 bytes → 4 emojis) to keep file size manageable
  • Integrity sealed — every file ends with an HMAC-SHA256 signature; tampering triggers an immediate FILE_TAMPERED error
  • Moon Header Protocol — metadata (salt + auth check) is encoded with a Moon/Clock phase alphabet (🌑🌒🕐), so an incorrect password is detected instantly, before decryption even starts
  • Stream architecture — built on Node.js Transform streams for large files with minimal memory footprint

Get started