
고성능, 스트리밍 우선 컨테이너 포맷으로, 블록별 코덱 다형성과 강력한 데이터 복구 가능성을 제공합니다. Rust로 작성된 참조 구현.
.6cy 아카이브 형식의 Rust 구현으로 다음과 같은 기능을 제공합니다:
# 파일을 아카이브로 패킹
6cy pack -o archive.6cy -i file1.txt file2.txt
# 아카이브 내용 나열
6cy list archive.6cy
# 파일 추출
6cy unpack archive.6cy -C ./output_dir
# 아카이브 정보 보기
6cy info archive.6cy
# 암호화된 아카이브 생성
6cy pack -o secure.6cy -i sensitive.dat --password "mypassword"
# FEC를 사용한 오류 복구 (데이터 10개 샤드, 패리티 4개 샤드)
6cy pack -o resilient.6cy -i data/ --fec 10/4
# 콘텐츠 기반 청킹을 사용한 중복 제거
6cy pack -o dedup.6cy -i data/ --cdc --merkle
# 손상된 아카이브 복구
6cy recover damaged.6cy -o recovered.6cy
# 아카이브 병합
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 # 고수준 Archive 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에 문서화되어 있습니다.
| 명령어 | 설명 |
|---|
pack | 파일/디렉토리에서 아카이브 생성 |
unpack | 아카이브에서 파일 추출 |
list | 아카이브 내용 나열 |
info | 아카이브 메타데이터 표시 |
scan | 인덱스 없이 블록 스캔 |
recover | 손상된 아카이브에서 복구 가능한 데이터 추출 |
optimize | 다른 수준으로 재압축 |
merge | 여러 아카이브 결합 |
bench | RLE 사전 필터 벤치마크 |
vanta | 스테가노그래피 서브명령어 |