DIAP-TS-SDK/
├── src/ # 源代码目录
│ ├── index.ts # 主入口,导出所有公共 API ✅
│ ├── key-manager.ts # 密钥管理模块 ✅
│ ├── ipfs-client.ts # IPFS 客户端模块 ✅
│ ├── did-builder.ts # DID 构建器模块 ✅
│ ├── identity-manager.ts # 身份管理器模块 ✅
│ ├── agent-auth.ts # 智能体认证管理器 ✅
│ ├── types/ # 类型定义
│ │ ├── index.ts # 类型导出入口 ✅
│ │ ├── key.ts # 密钥相关类型 ✅
│ │ ├── did.ts # DID 相关类型 ✅
│ │ ├── zkp.ts # ZKP 相关类型 ✅
│ │ └── errors.ts # 错误类型 ✅
│ ├── utils/ # 工具函数
│ │ ├── crypto.ts # 加密工具 ✅
│ │ ├── encoding.ts # 编码工具 ✅
│ │ └── logger.ts # 日志工具 ✅
│ ├── zkp/ # 零知识证明模块
│ │ ├── universal-manager.ts # 通用 ZKP 管理器 ✅
│ │ ├── o1js-backend.ts # o1js 后端 ✅
│ │ └── simplified-backend.ts # 简化后端 ✅
│ └── libp2p/ # libp2p 相关
│ └── encrypted-peer-id.ts # PeerID 加密 ✅
├── examples/ # 示例代码
│ ├── basic-usage.ts # 基本使用示例 ✅
│ └── agent-auth.ts # 智能体认证示例 ✅
├── docs/ # 文档
│ └── IMPLEMENTATION_STATUS.md # 实现状态文档 ✅
├── package.json # 项目配置 ✅
├── tsconfig.json # TypeScript 配置 ✅
├── vitest.config.ts # 测试配置 ✅
├── .eslintrc.json # ESLint 配置 ✅
├── .prettierrc # Prettier 配置 ✅
├── .gitignore # Git 忽略文件 ✅
├── LICENSE # MIT 许可证 ✅
└── README.md # 项目说明 ✅
- ✅
key.ts- KeyPair, KeyFile, KeyBackup - ✅
did.ts- DIDDocument, VerificationMethod, Service, EncryptedPeerID - ✅
zkp.ts- NoirProverInputs, NoirProofResult, NoirVerificationResult - ✅
errors.ts- DIAPError 及所有子类 - ✅
index.ts- 统一导出
- ✅
crypto.ts- AES-256-GCM 加密/解密、密钥派生、随机数生成 - ✅
encoding.ts- Base58, Base64, Hex, Multibase 编码/解码 - ✅
logger.ts- Winston 日志系统
- ✅ KeyManager.generate() - 生成 Ed25519 密钥对
- ✅ KeyManager.fromPrivateKey() - 从私钥加载
- ✅ KeyManager.fromFile() / saveToFile() - 文件操作
- ✅ KeyManager.exportBackup() / importFromBackup() - 备份导入导出
- ✅ KeyManager.sign() / verify() - Ed25519 签名验证
- ✅ deriveDIDKey() - 派生 did:key 格式
- ✅ IpfsClient.newPublicOnly() - 使用公共网关
- ✅ IpfsClient.newWithRemoteNode() - 使用自定义节点
- ✅ upload() - 上传到 IPFS
- ✅ get() / getFromGateway() - 从 IPFS 获取
- ✅ pin() - 固定内容
- ✅ publishIpns() - IPNS 发布(占位符)
- ✅ DIDBuilder.addService() - 添加服务端点
- ✅ DIDBuilder.addPubsubService() - 添加 PubSub 服务
- ✅ DIDBuilder.buildDIDDocument() - 构建 DID 文档
- ✅ DIDBuilder.createAndPublish() - 创建并发布 DID
- ✅ getDIDDocumentFromCID() - 从 CID 获取 DID 文档
- ✅ verifyDIDDocumentIntegrity() - 验证 DID 文档完整性
- ✅ encryptPeerId() - 加密 PeerID
- ✅ decryptPeerIdWithSecret() - 解密 PeerID
- ✅ verifyPeerIdSignature() - 验证 PeerID 签名
- ✅ UniversalNoirManager - 通用 ZKP 管理器
- ✅ O1JSBackend - o1js 后端实现
- ✅ SimplifiedBackend - 简化后端(用于测试)
- ✅ IdentityManager.registerIdentity() - 注册智能体身份
- ✅ IdentityManager.generateBindingProof() - 生成 DID-CID 绑定证明
- ✅ IdentityManager.verifyIdentityWithZKP() - 使用 ZKP 验证身份
- ✅ IdentityManager.verifyPeerId() - 验证 PeerID
- ✅ AgentAuthManager.new() - 创建管理器
- ✅ AgentAuthManager.createAgent() - 创建智能体
- ✅ AgentAuthManager.registerAgent() - 注册智能体
- ✅ AgentAuthManager.generateProof() - 生成证明
- ✅ AgentAuthManager.verifyIdentity() - 验证身份
- ✅ AgentAuthManager.mutualAuthentication() - 双向认证
- ✅ AgentAuthManager.batchAuthenticationTest() - 批量认证测试
- ✅ 导出所有公共 API
- ✅ 版本信息
- 安装依赖:
npm install - 构建项目:
npm run build - 运行测试:
npm test - 查看示例: 运行
examples/目录下的示例代码
- 所有文件都已完整实现,包含完整的类型定义和错误处理
- 代码遵循 TypeScript 严格模式
- 使用 ES6 模块系统
- 与 Rust SDK 保持功能对应关系