# Dna Storage

> Use when working with DNA — development rules

- Skill: `liaosw97/dna-storage` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add liaosw97/dna-storage`
- Raw SKILL.md: https://api.skillmd.com/api/skills/liaosw97/dna-storage/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: liaosw97 (https://skillmd.com/u/liaosw97)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/liaosw97/dna-storage

---


## 核心原则
- **数据完整性**：确保存储数据的可靠性和可恢复性
- **编码效率**：最大化DNA分子的信息密度
- **长期稳定**：实现百年级别的数据保存
- **随机访问**：支持高效的数据检索和读取
- **成本优化**：平衡存储成本和访问效率

## 技术栈
- **合成技术**：寡核苷酸合成、酶法合成、芯片合成
- **存储介质**：干燥DNA、DNA微球、化石DNA
- **读取技术**：纳米孔测序、Illumina测序、PacBio测序
- **编码方案**：旋转编码、喷泉码、Reed-Solomon码
- **分析工具**：BioPython, SeqKit, custom encoders

## 最佳实践
1. **编码方案设计**
   - 使用喷泉码实现高编码效率
   - 添加冗余数据抵抗合成/测序错误
   - 设计避免同聚物的编码规则
   - 实现索引系统支持随机访问

2. **分子序列优化**
   - 控制 GC 含量在 40-60% 范围
   - 避免发夹结构和二级结构
   - 消除重复序列和酶切位点
   - 添加引物结合位点

3. **存储介质选择**
   - 短期：缓冲液中的 DNA（-20°C）
   - 中期：干燥 DNA 或 DNA 微球
   - 长期：化石 DNA 或合成石英封装
   - 建立多副本异地备份

4. **随机访问实现**
   - PCR 引物实现选择性检索
   - 使用条形码标记数据块
   - 设计分层索引结构
   - 实现并行检索优化

5. **错误控制机制**
   - 多重冗余编码
   - 错误校正码（ECC）
   - 一致性校验和验证
   - 定期完整性检查

## 关键约定
1. **编码格式**
   ```
   DNA文件块结构:
   [5'引物][索引][数据][校验][3'引物]

   字母映射示例:
   00 -> A, 01 -> C, 10 -> G, 11 -> T
   ```

2. **质量控制**
   - 序列长度：150-200nt（主流合成）
   - GC含量：40-60%
   - 理论容量：~215 PB/gram

3. **工作流程**
   ```python
   # 编码流程
   def encode_to_dna(data):
       bits = to_binary(data)
       encoded = fountain_encode(bits)
       sequences = dna_map(encoded)
       return sequences

   # 解码流程
   def decode_from_dna(sequences):
       bits = dna_unmap(sequences)
       data = fountain_decode(bits)
       return data
   ```

4. **存储规格**
   ```yaml
   storage_spec:
     encoding: fountain_code
     redundancy: 1.1x
     chunk_size: 100MB
     expected_lifetime: 100+ years
     read_accuracy: 99.99%
   ```

