
高性能、ストリーミングファーストのコンテナ形式で、ブロックごとのコーデック多態性と堅牢なデータ復旧機能を備えています。Rustによるリファレンス実装。
.6cyアーカイブフォーマットのRust実装。特徴:
# Pack files into an archive
6cy pack -o archive.6cy -i file1.txt file2.txt
# List archive contents
6cy list archive.6cy
# Extract files
6cy unpack archive.6cy -C ./output_dir
# View archive info
6cy info archive.6cy
# Create encrypted archive
6cy pack -o secure.6cy -i sensitive.dat --password "mypassword"
# Use FEC for error recovery (10 data shards, 4 parity shards)
6cy pack -o resilient.6cy -i data/ --fec 10/4
# Use content-defined chunking for deduplication
6cy pack -o dedup.6cy -i data/ --cdc --merkle
# Recover from damaged archive
6cy recover damaged.6cy -o recovered.6cy
# Merge archives
6cy merge archive1.6cy archive2.6cy -o merged.6cy
use sixcy::Archive;
let opts = sixcy::PackOptions {
default_codec: sixcy::CodecId::Zstd,
level: 3,
use_cdc: true,
build_merkle: true,
..Default::default()
};
let mut ar = Archive::create("data.6cy", opts)?;
ar.add_file("readme.txt", b"Hello, world!")?;
ar.finalize()?;
src/
├── archive.rs # 高レベルアーカイブAPI
├── block.rs # ブロックフォーマット (84バイトヘッダ)
├── superblock.rs # アーカイブヘッダ (512バイト)
├── codec/ # 圧縮コーデックレジストリ
├── crypto/ # AES-256-GCM + Argon2id
├── cdc.rs # Gear64コンテンツ定義チャンキング
├── fec.rs # Reed-Solomon前方誤り訂正
├── merkle.rs # バイナリMerkleツリー + 証明
├── sharding.rs # Shamirの秘密分散
├── stego.rs # LSBステガノグラフィ
├── chaos.rs # ブロックスクランブルユーティリティ
├── io_stream/ # アーカイブリーダー/ライター
├── index/ # ファイルインデックス管理
├── recovery/ # インデックスバイパス復旧スキャナ
├── perf.rs # パフォーマンスユーティリティ
└── plugin.rs # コーデックプラグイン用C ABI
現在: v2.1.0 (format_version = 2)
.6cyフォーマットはspec.mdに文書化されています。
| Command | Description |
|---|
pack | ファイル/ディレクトリからアーカイブを作成 |
unpack | アーカイブからファイルを抽出 |
list | アーカイブ内容を一覧表示 |
info | アーカイブメタデータを表示 |
scan | インデックスなしでブロックをスキャン |
recover | 破損したアーカイブから復元可能なデータを抽出 |
optimize | 異なるレベルで再圧縮 |
merge | 複数のアーカイブを結合 |
bench | RLEプリフィルタのベンチマーク |
vanta | ステガノグラフィサブコマンド |