Phase 2: Universal Screen Recording
Phase 2 extends attribution to closed-source software through screen recording. While Phase 1 captures commands, Phase 2 captures pixels, heavier, but universal.
Core Stack: Rust (Client), Solana/Anchor (Registry), Arweave (Video Storage), AWS KMS (Identity)
Architecture Overview

The system operates under a hybrid Client-Server-Chain architecture. Proof of creation is captured locally with high performance, orchestrated via the cloud for fluid UX, and settled on blockchain for immutability.
The critical component is the Recorder Core, developed in Rust. It operates invisibly as a daemon, running continuously as a background process, while respecting user privacy.
Capture Technology: Smart Variable Frame Rate (S-VFR)
Unlike traditional video recorders, the system records Context Events:
Context Filter (Whitelist): Recorder remains in standby. Only activates when a whitelisted window gains focus (Blender, Photoshop, VS Code, etc.)
Input-Driven Capture:
Monitors global hooks (Mouse, Keyboard, MIDI, Wacom Tablet)
If
Delta_Pixels < 1%ANDInput_Events == 0for > 5s, enters Logical PauseThis results in video files that are 90% smaller than linear recordings
Local Integrity (Merkle Tree)
To prevent data corruption in long sessions:
The video is sliced into Chunks (10MB).
Each Chunk generates a Hash.
Hashes form a Merkle Tree in real-time.
The system saves snapshots of the
Merkle Rootlocally. If the PC crashes, the partial proof is recoverable.
Identity Management and Security (KMS)
The application uses a Silent Custodial Wallet model to eliminate entry barriers (Seed Phrases).
Key Architecture:
Generation: Private keys (Ed25519) are generated inside a cloud-based HSM (Hardware Security Module) (AWS KMS or Google Cloud KMS).
Isolation: The private key never leaves the HSM. Neither the developers nor the API database have access to it.
Signing: The API sends the Transaction Hash to the KMS -> KMS signs it -> API receives the signature and broadcasts it to Solana.
Sovereignty: The system must include an "Eject Wallet" function, where the KMS exports the private key once to the user, should they wish to assume full self-custody in the future.
Lineage Tracking (File System Watcher)
This module creates the asset family tree (parent/child relationships).
Detection Logic:
Monitoring: The Daemon uses native APIs (
ReadDirectoryChangesWon Windows,FSEventson Mac) to watch work directories.Fingerprinting: Upon detecting a
FILE_SAVEevent, it calculates the SHA-256 Hash of the file.Link: The system generates a local record linking:
[File Hash] <-> [Recording Session_ID]
Asynchronous Collaboration (Sidecars)
When a file moves between users:
The system scans for attached metadata (Sidecar JSON or embedded Metadata).
If User B imports a file created by User A, B's Recorder reads the original hash.
In the final registry, B's asset is marked as "Derivative Work", pointing to the Solana address of A's asset.
Collaboration Architecture
Synchronous Collaboration (Multiplayer)
Use Case: Teams working simultaneously in Figma, Google Docs, or Unity Multiplayer:
Handshake Protocol:
Host: Initiates session and generates a
Session_UUID.Guests: Enter the
Session_UUIDinto their recorders.Sync: A lightweight WebSocket maintains timestamp synchronization between participants.
Multi-Sig Registration: Instead of multiple isolated records, everyone's videos are grouped, and a single Asset is created on Solana. The
collaboratorsfield stores the list of involved wallets and their split %.
Asynchronous Collaboration (Sequential/Remixing)
Use Case: User A creates a 3D Model. User B downloads it next week to paint textures:
The "Sidecar" Transport:
When User A exports a file, the Recorder generates a metadata sidecar (e.g.,
model.obj.metaor embedded XMP).Content:
{ "original_creator": "Wallet_A", "asset_hash": "0xABC..." }.
Lineage Handshake:
User B imports the file. User B's Recorder scans the folder.
It identifies the Hash/Sidecar of User A.
The system flags the new session as a "Derivative Work".
Blockchain Pointer:
In the final Solana Registry for User B, the
parent_assetfield is filled with User A's Asset Address.This builds a Directed Acyclic Graph (DAG) of attribution, allowing royalties to cascade down to original creators.
API Orchestration
Persistence Flow:
Ingestion: The Client sends the encrypted video to an S3 Bucket (via Presigned URL).
Queue: A worker (BullMQ) picks up the job.
WORM Storage: The worker sends the video to Arweave through a Bundler (Irys).
Why Bundler? Ensures instant upload and payment in stablecoin, avoiding native Arweave network latency.
Return: Receives an
Arweave_TxID(permanent link).
Blockchain Registration: The worker assembles the Solana transaction with metadata and requests a signature from the KMS.
Blockchain Data Structure
Verification and Zero Knowledge (ZK) - Future Scope
To allow asset validation without revealing the raw video (trade secret).
The ZK Verifier will receive as Private Input:
The decrypted video.
The list of digital signatures from the software (proving the video shows genuine Photoshop, not a simulator).
And as Public Input:
The Final File Hash.
The Creator's Public Key.
Output: True (The video proves this creator generated this file using this software).
Mobile Considerations (Android/iOS)
Android: The Recorder runs as a Service with
USAGE_STATSpermission to detect active apps andMEDIA_PROJECTIONto record the screen.iOS: Due to "Sandboxing," automatic global recording is not permitted.
Solution: Implement as a Broadcast Upload Extension. The user must open the Control Center and start recording by selecting our App. The App processes the video stream in chunks, identical to the desktop logic.
Physical World (Camera): The iOS/Android App will have a "Work Camera" mode, which records video with timestamps and gyroscope/GPS data to prove the painting/sculpting was done at that location and time.
Data Flow Summary
Data
Origin
Intermediate Storage
Final Destination
Ownership
Creation Video
Recorder (Client)
S3 (Temporary)
Arweave (Encrypted)
Private (Owner)
Asset Hash
File Watcher
API DB
Solana Account
Public
Metadata (Software)
OS Hooks
API DB
Solana Account
Public
Private Keys
KMS (Generator)
HSM (Memory)
HSM (Never leaves)
Custodial
User journey

Last updated

