An interactive, physical group theory stream cipher and peer-to-peer secure messaging application built on Astryx Design System (@astryxdesign/core + @astryxdesign/theme-neutral) and Three.js.
Cube Cryptography models cryptographic entropy through the
The application is built on Astryx components and design tokens wrapped under a custom dark neutralTheme:
- Chat System: Built using
@astryxdesign/core/Chat(ChatMessageList,ChatMessage,ChatMessageBubble,ChatSystemMessage, andChatSendButton). - Navigation & Layout:
TopNav,TopNavItem,Divider,Theme, and responsive drawer triggers withIconButton. - Form & Parameter Controls:
TextInput,TextArea,CheckboxInput,Slider, andSegmentedControl. - Progressive Disclosure & Feedback:
TabList,Tab,CollapsibleGroup,Collapsible,Tooltip,Kbd,StatusDot,Dialog, andDialogHeader. - Design Tokens: Complete color, radius, spacing, and typography token integration via
@astryxdesign/theme-neutral.
- Physical Permutation Engine: Interactive group theory introduction.
- Live Centerpiece Visualizer: Dual-mode (Encrypt/Decrypt) synchronized telemetry stream displaying Plaintext -> Keystream -> Ciphertext in real-time.
- Pipeline Walkthrough: 4-stage interactive walkthrough powered by Astryx
TabList. - Theoretical Specification: Mathematical breakdown with Astryx
CollapsibleGroup.
- 3D Permutation Studio: Full WebGL camera controls with real-time state hashing.
- Step-by-Step Operator: Live algebraic readout inspecting
(Input ± Sensor ± StepConstant) % 53 = Output. - Speed & Animation Controls: Real-time rotation speed adjustments via Astryx
Slider. - Research Guide: Modal walkthrough powered by Astryx
Dialog.
- Real-time WebRTC Mesh: Serverless peer-to-peer transmission via PeerJS with global STUN/TURN fallback.
- Live 3D Lattice Encryption: Outgoing messages mechanically rotate the sender's cube, transmitting the ciphertext stream; incoming messages physically rotate the receiver's cube during decryption.
- Channel Collision Detection: Prevents state desynchronization with automatic alerts.
- Story Archive: The origin story of the speedcubing accident, lost mouse incident, and the Eureka moment.
The cipher machine operates over the Rubik’s permutation group
Before encoding character
The generated ciphertext character
- UI Framework: React 19
- Design System: @astryxdesign/core & @astryxdesign/theme-neutral
- 3D Graphics Engine: Three.js
- P2P Transport: PeerJS (WebRTC)
- Build Tool: Vite
git clone -b astryx-redesign https://github.com/Geervan/Cube-Cryptography-Sim.git
cd Cube-Cryptography-Simnpm installnpm run devOpen http://localhost:5173 to explore the suite.
npm run build