Commit Graph

16 Commits

Author SHA1 Message Date
NikitolProject
6292b41159 feat(02-01): format types, crypto pipeline, and compression module
- Implement Header and TocEntry structs matching FORMAT.md byte layout
- Add write_header (40 bytes) and write_toc_entry (101+name_len bytes) serialization
- Add read_header, read_toc_entry, read_toc deserialization with validation
- Implement AES-256-CBC encrypt/decrypt with PKCS7 padding via cbc crate
- Add HMAC-SHA-256 compute/verify over IV||ciphertext (encrypt-then-MAC)
- Add SHA-256 hash for original file integrity
- Implement gzip compress/decompress with deterministic mtime(0)
- Add should_compress heuristic for known compressed file extensions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 23:58:08 +03:00
NikitolProject
c647f3a90e feat(02-01): project scaffolding with Cargo, CLI skeleton, and key module
- Initialize Rust project with aes, cbc, hmac, sha2, flate2, clap, rand, anyhow dependencies
- Add clap derive CLI with pack/unpack/inspect subcommands
- Add hardcoded 32-byte AES-256 key constant
- Create stub modules for format, crypto, compression, archive
- All 7 source files in place, cargo build succeeds

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 23:56:09 +03:00
NikitolProject
673c1191a0 docs(02-core-archiver): create phase plan 2026-02-24 23:49:46 +03:00
NikitolProject
9cdb4be248 chore: set verifier and checker models to inherit (Opus) 2026-02-24 23:45:36 +03:00
NikitolProject
cc7ff6db10 docs(02): research phase domain — Rust crypto stack, binary format, CLI patterns 2026-02-24 23:44:54 +03:00
NikitolProject
9125b388da docs(phase-1): complete phase execution 2026-02-24 23:31:04 +03:00
NikitolProject
3cb6512157 docs(01-01): complete format specification plan
- SUMMARY.md with execution metrics and self-check
- STATE.md updated: Phase 1 complete, decisions logged
- ROADMAP.md updated: Phase 1 progress 1/1
- REQUIREMENTS.md: FMT-05 marked complete

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 23:24:33 +03:00
NikitolProject
1c698fec91 feat(01-01): add worked example with annotated hex dump and shell reference appendix
- Worked example: 2-file archive (hello.txt + data.bin) with 323 bytes total
- Real SHA-256 hashes computed for both files
- Full annotated hex dump with byte-by-byte field annotations
- Step-by-step shell decode walkthrough with dd/xxd commands
- Shell reference functions: read_le_u16, read_le_u32, verify_hmac, decrypt_file
- Kotlin reference: decrypt, HMAC verify, gzip decompress, SHA-256 verify
- Busybox compatibility notes with od fallback for xxd
- All offsets verified internally consistent via automated check

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 23:22:06 +03:00
NikitolProject
fcd37f531b feat(01-01): write format specification with byte-level field definitions
- Archive header definition (40 bytes) with complete field table
- File table entry definition (11 fields, variable-length per entry)
- AES-256-CBC + HMAC-SHA-256 encryption pipeline with encrypt-then-MAC
- PKCS7 padding formula with 8 worked examples
- Gzip compression details with per-file flag
- Obfuscation features: XOR header, encrypted TOC, decoy padding
- Decode order of operations (full step-by-step)
- Version compatibility rules

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 23:18:37 +03:00
NikitolProject
ca443768e0 docs(01-format-specification): create phase plan 2026-02-24 23:09:12 +03:00
NikitolProject
041a00913b docs(01-format-specification): research phase domain 2026-02-24 23:05:52 +03:00
NikitolProject
e0627c8653 docs: create roadmap (6 phases) 2026-02-24 22:55:12 +03:00
NikitolProject
5181148131 docs: define v1 requirements 2026-02-24 22:52:35 +03:00
NikitolProject
40dcfd4ac0 docs: add project research 2026-02-24 22:51:05 +03:00
NikitolProject
914d88458a chore: add project config 2026-02-24 22:40:21 +03:00
NikitolProject
401431ae2f docs: initialize project 2026-02-24 22:36:56 +03:00