docs

Log | Files | Refs | Activity

root / src / mojic / index.md

index.md (2284B)


      1 ---
      2 label: Mojic
      3 icon: lock
      4 order: 750
      5 ---
      6 
      7 # Mojic
      8 
      9 **Operation Ironclad: obfuscate C source code into a randomized, password-seeded stream of emojis.**
     10 
     11 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.
     12 
     13 !!!danger Project discontinued (v2.1.5)
     14 Mojic is discontinued. v2.1.5 is the final patch to the GitHub repository.
     15 
     16 The maintainer lost access to the npm account (forgotten password, and the recovery passcode file was lost during a Linux migration), so `npm install mojic` currently fails with a 404 — the published `@notamitgamer/mojic` dependency can no longer be patched.
     17 
     18 **To keep using it, install from source instead:**
     19 ```bash
     20 git clone https://github.com/notamitgamer/mojic.git
     21 cd mojic
     22 npm install
     23 npm link
     24 ```
     25 This makes the `mojic` command available globally, same as an npm install would.
     26 !!!
     27 
     28 ## Key features
     29 
     30 - **AES-256-CTR PRNG** — a cryptographically secure PRNG (seeded via Scrypt) drives shuffling and polymorphism
     31 - **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
     32 - **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
     33 - **Base-1024 compression** — non-keyword code is compressed with a custom scheme (5 bytes → 4 emojis) to keep file size manageable
     34 - **Integrity sealed** — every file ends with an HMAC-SHA256 signature; tampering triggers an immediate `FILE_TAMPERED` error
     35 - **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
     36 - **Stream architecture** — built on Node.js `Transform` streams for large files with minimal memory footprint
     37 
     38 ## Get started
     39 
     40 - [Installation](installation.md)
     41 - [CLI Usage](usage.md)
     42 - [How It Works (Operation Ironclad)](algorithm.md)
© notamitgamer • Site Built: 2026-09-05 01:53:16 UTC • git-mirror commit: c170d72 [view raw info]
Originally created with stagit • modified by notamitgamer
Forked from github.com/notamitgamer/git-mirror