用途与实际影响
这项功能怎样使用
为什么需要它
双密码的产品价值来自可明确验证的内容分工,不来自“任何人都不可能发现”的口号。库文件、旧备份、反复快照和现实使用痕迹是不同证据;算法实现不能替人保证现实处境。
举个实际例子
“我明确要做一份双密码库:这个密码打开展示用材料,另一个打开自己的完整材料;请确认两个都对应正确内容。”本人提供两套材料与密码,工具分别自检,容量不足时保留原库。
最后我会得到什么
得到一个经两条密码路径分别核对的 VAULT03,或者具体的容量/输入失败说明。能证明的是本次两个密码打开了预期内容,不是面对面胁迫或任意技术分析下的绝对保证。
正常时
诱饵密码与真实密码各自打开对应材料,并通过写入前的双向自检。
发现问题时
真实层超出可用容量、密码安排或自检不成立时说明问题并保留原库。
入口不可用或证据不足时
无法打开原库、缺少必要密钥文件或没有合适的诱饵材料时停止,不代造真实内容或密码。
从哪里开始
在已接通本机 vault-workflow 的 AI 对话中明确提出建立双密码库,并分别指定真实层与诱饵层材料;两套凭据由本人在本地输入。
需要准备什么
- 两个密码分别应打开的材料
- 要新建还是从旧库迁移
- 目标库位置
- 两套凭据由本人在本地输入
从开始到拿到结果
- 1
确认两套内容
分清每个密码预期打开什么,并检查原库和可用容量;装不下就停止。
- 2
本地创建两层
工具在保留原库恢复路径的条件下生成双层容器,不替本人保管密码。
- 3
分别试开
两套密码各自解开并比对预期成员;报告历史旧备份仍可能泄露先前状态。
技术实现与依据
这里保留实现、关键条件、精确入口、历史记录和验证结果。
双层封装、容量拒绝与分别自检已实现关键规则与设计选择
两个密码的内容要分别验,不只测试“某个密码能打开”。
分桶空间由可见层决定,真实材料更大时必须调整明确提供的材料或取消。
改密、追加和本地编辑是否能保留另一层,需要看各自入口,不能从双层存在推断。
本模块用到的名词
- decoy(诱饵内容)
- 本人明确准备、由另一个密码打开的材料,不由 AI 猜测或编造为原文。
- bucket(容量桶)
- 把容器尺寸归到一组离散大小;这里依可见层决定,不能无限塞入真实层。
- opaque tail(未解开的尾部)
- 当前密码未能解释的尾部字节,可能是另一层,不能擅自当作可丢弃垃圾。
专业定义
本人明确需要时,让两个密码对应两份内容;容量和保留范围都有实际边界。
解决什么
防止双密码只实现了一个可打开结果,或用容量与外观推测代替内容核对。
当前怎样实现
- VAULT03 由公共格式头、主层 slot0 和尾部 slot1 组成;普通库尾部是随机填充,双层库尾部是经另一密码加密的真实内容。
- _pack_vault_v3 在双层模式把诱饵材料放到可见主层,真实材料放到尾部;_unpack_vault_v3 先试主层再试尾部,返回实际打开的层。
- _bucket_size 根据可见层总长度计算分桶,当前小库最少 64 KiB。隐藏内容必须容纳在该桶的尾部空间,超出时抛出明确错误,不无限增长来伪装同一容量性质。
- setup_decoy_mode先打开当前库、读取明确decoy_source/,建立双密码候选并分别核对两份内容;通过统一密文事务保存且保留独立旧库恢复副本。decoy_source/默认保留,不随加密成功自动删除。
- 公共标志不直接说明是否存在隐藏层。因此只打开主层不能证明尾部一定是无用填充,本地编辑也不能据此随意丢弃尾部。
- VAULT03改密、容量内追加和本地编辑保留未解锁槽位;需要改变容量或共享凭据时,rebuild以新副本承担变更。提供两个已知密码才可验证两层重建,不把保留不透明字节冒充已解锁验收。
执行流程
- 1
本人明确需要双密码,并提供各自应打开的材料。
- 2
验证当前库凭据和必要密钥文件。
- 3
按可见材料计算真实层可用容量,放不下则拒绝。
- 4
建立两层并分别解开比较预期内容。
- 5
确认实际结果、原库备份和后续维护边界。
边界
- 没有验证现实胁迫处境、取证分析或多次快照比较的不可识别性。
- 旧单层备份可能仍说明以前的内容状态,双层新库不会自动删除或改写历史。
- 不能为修一个编辑入口而新建隐藏层发现系统、托管两套密码或另一种容器格式。
失败与恢复
- 真实材料放不进尾部容量
- 明确拒绝并保留原库;提示调整本人提供的材料,不静默截断或只保存诱饵。
- 只有一个密码的自检通过
- 整个双层设置不能称完成,应保留对应失败与原件。
- 后续编辑可能改变另一未解锁层
- 只有容量和格式允许且保真证据成立时才编辑,否则拒绝并保留原密文。
真实入口
E:\Projects\Tools\vault-tool\vault_tool.py_bucket_size、双层封装/解包、setup_decoy_mode
E:\Projects\Tools\vault-tool\test_vault_tool.py双密码分别往返、分桶与容量拒绝
E:\.agents\skills\vault-workflow\scripts\vault_auth_helper.py本地编辑与未解锁槽位的保真边界
如何验证
- 本轮真实算法虚构样例中,真实密码打开 layer1、诱饵密码打开 layer0,分别取回对应内容。
- 测试可核对同可见材料的尺寸与超容量拒绝,不能转化为现实处境保证。
- 没有读取本人实际双密码库或使用真实口令。
与其他模块的关系
双层能力决定后续维护不能假装只存在一份内容;格式和凭据在密码与格式模块,日常查看仍使用相应本地入口。
