@diap/sdk 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +86 -86
  3. package/dist/agent-auth.d.ts +96 -0
  4. package/dist/agent-auth.d.ts.map +1 -0
  5. package/dist/agent-auth.js +343 -0
  6. package/dist/agent-auth.js.map +1 -0
  7. package/dist/agent-verification.d.ts +158 -0
  8. package/dist/agent-verification.d.ts.map +1 -0
  9. package/dist/agent-verification.js +237 -0
  10. package/dist/agent-verification.js.map +1 -0
  11. package/dist/config-manager.d.ts +156 -0
  12. package/dist/config-manager.d.ts.map +1 -0
  13. package/dist/config-manager.js +241 -0
  14. package/dist/config-manager.js.map +1 -0
  15. package/dist/did-builder.d.ts +62 -0
  16. package/dist/did-builder.d.ts.map +1 -0
  17. package/dist/did-builder.js +315 -0
  18. package/dist/did-builder.js.map +1 -0
  19. package/dist/did-cache.d.ts +133 -0
  20. package/dist/did-cache.d.ts.map +1 -0
  21. package/dist/did-cache.js +273 -0
  22. package/dist/did-cache.js.map +1 -0
  23. package/dist/identity-manager.d.ts +87 -0
  24. package/dist/identity-manager.d.ts.map +1 -0
  25. package/dist/identity-manager.js +196 -0
  26. package/dist/identity-manager.js.map +1 -0
  27. package/dist/index.d.ts +43 -0
  28. package/dist/index.d.ts.map +1 -0
  29. package/dist/index.js +52 -0
  30. package/dist/index.js.map +1 -0
  31. package/dist/ipfs-bidirectional-verification.d.ts +201 -0
  32. package/dist/ipfs-bidirectional-verification.d.ts.map +1 -0
  33. package/dist/ipfs-bidirectional-verification.js +298 -0
  34. package/dist/ipfs-bidirectional-verification.js.map +1 -0
  35. package/dist/ipfs-client.d.ts +151 -0
  36. package/dist/ipfs-client.d.ts.map +1 -0
  37. package/dist/ipfs-client.js +623 -0
  38. package/dist/ipfs-client.js.map +1 -0
  39. package/dist/ipfs-node-manager.d.ts +136 -0
  40. package/dist/ipfs-node-manager.d.ts.map +1 -0
  41. package/dist/ipfs-node-manager.js +232 -0
  42. package/dist/ipfs-node-manager.js.map +1 -0
  43. package/dist/ipns-manager.d.ts +182 -0
  44. package/dist/ipns-manager.d.ts.map +1 -0
  45. package/dist/ipns-manager.js +268 -0
  46. package/dist/ipns-manager.js.map +1 -0
  47. package/dist/key-manager.d.ts +48 -0
  48. package/dist/key-manager.d.ts.map +1 -0
  49. package/dist/key-manager.js +231 -0
  50. package/dist/key-manager.js.map +1 -0
  51. package/dist/kubo-installer.d.ts +115 -0
  52. package/dist/kubo-installer.d.ts.map +1 -0
  53. package/dist/kubo-installer.js +205 -0
  54. package/dist/kubo-installer.js.map +1 -0
  55. package/dist/libp2p/encrypted-peer-id.d.ts +24 -0
  56. package/dist/libp2p/encrypted-peer-id.d.ts.map +1 -0
  57. package/dist/libp2p/encrypted-peer-id.js +134 -0
  58. package/dist/libp2p/encrypted-peer-id.js.map +1 -0
  59. package/dist/nonce-manager.d.ts +176 -0
  60. package/dist/nonce-manager.d.ts.map +1 -0
  61. package/dist/nonce-manager.js +382 -0
  62. package/dist/nonce-manager.js.map +1 -0
  63. package/dist/p2p/hyperswarm-communicator.d.ts +252 -0
  64. package/dist/p2p/hyperswarm-communicator.d.ts.map +1 -0
  65. package/dist/p2p/hyperswarm-communicator.js +469 -0
  66. package/dist/p2p/hyperswarm-communicator.js.map +1 -0
  67. package/dist/p2p/iroh-communicator.d.ts +216 -0
  68. package/dist/p2p/iroh-communicator.d.ts.map +1 -0
  69. package/dist/p2p/iroh-communicator.js +408 -0
  70. package/dist/p2p/iroh-communicator.js.map +1 -0
  71. package/dist/pubsub-authenticator.d.ts +246 -0
  72. package/dist/pubsub-authenticator.d.ts.map +1 -0
  73. package/dist/pubsub-authenticator.js +384 -0
  74. package/dist/pubsub-authenticator.js.map +1 -0
  75. package/dist/real-name-auth.d.ts +238 -0
  76. package/dist/real-name-auth.d.ts.map +1 -0
  77. package/dist/real-name-auth.js +259 -0
  78. package/dist/real-name-auth.js.map +1 -0
  79. package/dist/types/did.d.ts +76 -0
  80. package/dist/types/did.d.ts.map +1 -0
  81. package/dist/types/did.js +5 -0
  82. package/dist/types/did.js.map +1 -0
  83. package/dist/types/errors.d.ts +42 -0
  84. package/dist/types/errors.d.ts.map +1 -0
  85. package/dist/types/errors.js +69 -0
  86. package/dist/types/errors.js.map +1 -0
  87. package/dist/types/index.d.ts +9 -0
  88. package/dist/types/index.d.ts.map +1 -0
  89. package/dist/types/index.js +9 -0
  90. package/dist/types/index.js.map +1 -0
  91. package/dist/types/key.d.ts +43 -0
  92. package/dist/types/key.d.ts.map +1 -0
  93. package/dist/types/key.js +5 -0
  94. package/dist/types/key.js.map +1 -0
  95. package/dist/types/zkp.d.ts +80 -0
  96. package/dist/types/zkp.d.ts.map +1 -0
  97. package/dist/types/zkp.js +16 -0
  98. package/dist/types/zkp.js.map +1 -0
  99. package/dist/utils/crypto.d.ts +24 -0
  100. package/dist/utils/crypto.d.ts.map +1 -0
  101. package/dist/utils/crypto.js +65 -0
  102. package/dist/utils/crypto.js.map +1 -0
  103. package/dist/utils/encoding.d.ts +36 -0
  104. package/dist/utils/encoding.d.ts.map +1 -0
  105. package/dist/utils/encoding.js +80 -0
  106. package/dist/utils/encoding.js.map +1 -0
  107. package/dist/utils/logger.d.ts +24 -0
  108. package/dist/utils/logger.d.ts.map +1 -0
  109. package/dist/utils/logger.js +37 -0
  110. package/dist/utils/logger.js.map +1 -0
  111. package/dist/zkp/key-generator.d.ts +56 -0
  112. package/dist/zkp/key-generator.d.ts.map +1 -0
  113. package/dist/zkp/key-generator.js +165 -0
  114. package/dist/zkp/key-generator.js.map +1 -0
  115. package/dist/zkp/simplified-backend.d.ts +23 -0
  116. package/dist/zkp/simplified-backend.d.ts.map +1 -0
  117. package/dist/zkp/simplified-backend.js +77 -0
  118. package/dist/zkp/simplified-backend.js.map +1 -0
  119. package/dist/zkp/snarkjs-backend.d.ts +150 -0
  120. package/dist/zkp/snarkjs-backend.d.ts.map +1 -0
  121. package/dist/zkp/snarkjs-backend.js +218 -0
  122. package/dist/zkp/snarkjs-backend.js.map +1 -0
  123. package/dist/zkp/universal-manager.d.ts +44 -0
  124. package/dist/zkp/universal-manager.d.ts.map +1 -0
  125. package/dist/zkp/universal-manager.js +181 -0
  126. package/dist/zkp/universal-manager.js.map +1 -0
  127. package/package.json +2 -2
@@ -0,0 +1,238 @@
1
+ /**
2
+ * DIAP TypeScript SDK - 实名认证模块
3
+ * 支持身份证绑定、用户 DID 身份锚定、智能体签名授权
4
+ */
5
+ /**
6
+ * 认证级别
7
+ */
8
+ export declare enum AuthLevel {
9
+ /** 基础认证(仅手机号等) */
10
+ Basic = "basic",
11
+ /** 中级认证(身份证绑定) */
12
+ Medium = "medium",
13
+ /** 高级认证(人脸识别+身份证) */
14
+ High = "high"
15
+ }
16
+ /**
17
+ * 用户类型
18
+ */
19
+ export declare enum UserType {
20
+ /** 实名用户 */
21
+ RealName = "realname",
22
+ /** 匿名用户 */
23
+ Anonymous = "anonymous",
24
+ /** 组织用户 */
25
+ Organization = "organization"
26
+ }
27
+ /**
28
+ * 智能体授权级别
29
+ */
30
+ export declare enum AgentAuthLevel {
31
+ /** 只读权限 */
32
+ ReadOnly = "read",
33
+ /** 读写权限 */
34
+ ReadWrite = "write",
35
+ /** 管理员权限 */
36
+ Admin = "admin",
37
+ /** 完全控制 */
38
+ FullControl = "full"
39
+ }
40
+ /**
41
+ * 实名认证凭证
42
+ */
43
+ export interface RealNameCredential {
44
+ /** 凭证 ID(唯一标识) */
45
+ credentialId: string;
46
+ /** 用户 DID(实名认证后获得的 DID) */
47
+ userDid: string;
48
+ /** 加密的身份证号(Base64 编码) */
49
+ encryptedIdNumber: string;
50
+ /** 加密的姓名(Base64 编码) */
51
+ encryptedName: string;
52
+ /** 认证时间 */
53
+ authTime: string;
54
+ /** 认证机构(可选) */
55
+ authAuthority?: string;
56
+ /** 认证级别 */
57
+ authLevel: AuthLevel;
58
+ }
59
+ /**
60
+ * 用户身份信息
61
+ */
62
+ export interface UserIdentity {
63
+ /** 用户 DID */
64
+ did: string;
65
+ /** 关联的实名凭证 ID */
66
+ credentialId: string;
67
+ /** 用户类型 */
68
+ userType: UserType;
69
+ /** 创建时间 */
70
+ createdAt: string;
71
+ /** 用户公钥 */
72
+ publicKey: string;
73
+ }
74
+ /**
75
+ * 智能体授权信息
76
+ */
77
+ export interface AgentAuthorization {
78
+ /** 授权 ID */
79
+ authorizationId: string;
80
+ /** 授权者 DID(用户 DID) */
81
+ authorizerDid: string;
82
+ /** 被授权的智能体 DID */
83
+ agentDid: string;
84
+ /** 授权时间 */
85
+ authorizedAt: string;
86
+ /** 授权有效期(可选) */
87
+ expiresAt?: string;
88
+ /** 授权级别 */
89
+ authLevel: AgentAuthLevel;
90
+ /** 授权范围(可为空表示全部权限) */
91
+ scope?: string[];
92
+ /** 授权签名 */
93
+ signature: string;
94
+ }
95
+ /**
96
+ * 智能体元数据(用于签名)
97
+ */
98
+ export interface AgentMetadata {
99
+ /** 智能体 DID */
100
+ agentDid: string;
101
+ /** 智能体名称 */
102
+ name: string;
103
+ /** 智能体类型 */
104
+ agentType: string;
105
+ /** 创建时间 */
106
+ createdAt: string;
107
+ /** 智能体公钥 */
108
+ publicKey: string;
109
+ /** 附加数据(可选) */
110
+ extra?: Record<string, unknown>;
111
+ }
112
+ /**
113
+ * 签名数据
114
+ */
115
+ export interface AgentSignature {
116
+ /** 签名者 DID */
117
+ signerDid: string;
118
+ /** 被签名的智能体 DID */
119
+ agentDid: string;
120
+ /** 签名 */
121
+ signature: string;
122
+ /** 签名时间 */
123
+ signedAt: string;
124
+ /** 签名版本 */
125
+ version: string;
126
+ }
127
+ /**
128
+ * 授权链(用于验证智能体的授权来源)
129
+ */
130
+ export interface AuthorizationChain {
131
+ /** 链 ID */
132
+ chainId: string;
133
+ /** 根授权者(用户 DID) */
134
+ rootAuthorizer: string;
135
+ /** 授权路径 */
136
+ authorizationPath: AgentAuthorization[];
137
+ /** 链创建时间 */
138
+ createdAt: string;
139
+ }
140
+ /**
141
+ * 实名认证管理器
142
+ */
143
+ export declare class RealNameAuthManager {
144
+ private keypair;
145
+ /**
146
+ * 创建实名认证管理器
147
+ */
148
+ constructor();
149
+ /**
150
+ * 设置密钥对
151
+ */
152
+ setKeypair(keypair: {
153
+ did: string;
154
+ publicKey: Uint8Array;
155
+ privateKey: Uint8Array;
156
+ }): void;
157
+ /**
158
+ * 创建用户 DID(基于实名认证)
159
+ */
160
+ createUserDid(keypair: {
161
+ did: string;
162
+ }): string;
163
+ /**
164
+ * 生成实名认证凭证
165
+ */
166
+ createCredential(keypair: {
167
+ did: string;
168
+ publicKey: Uint8Array;
169
+ privateKey: Uint8Array;
170
+ }, idNumber: string, name: string, authLevel: AuthLevel): Promise<RealNameCredential>;
171
+ /**
172
+ * 对智能体进行签名授权
173
+ */
174
+ authorizeAgent(authorizerKeypair: {
175
+ did: string;
176
+ privateKey: Uint8Array;
177
+ }, agentDid: string, authLevel: AgentAuthLevel, scope?: string[], expiresAt?: string): Promise<AgentAuthorization>;
178
+ /**
179
+ * 验证智能体授权签名
180
+ */
181
+ verifyAgentAuthorization(authorization: AgentAuthorization, authorizerPublicKey: Uint8Array): Promise<boolean>;
182
+ /**
183
+ * 创建智能体签名
184
+ */
185
+ signAgentCreation(signerKeypair: {
186
+ did: string;
187
+ privateKey: Uint8Array;
188
+ }, agentMetadata: AgentMetadata): Promise<AgentSignature>;
189
+ /**
190
+ * 验证智能体创建签名
191
+ */
192
+ verifyAgentSignature(agentSignature: AgentSignature, signerPublicKey: Uint8Array, agentMetadata: AgentMetadata): Promise<boolean>;
193
+ /**
194
+ * 加密个人信息
195
+ */
196
+ encryptPersonalInfo(keypair: {
197
+ privateKey: Uint8Array;
198
+ }, data: string): Promise<string>;
199
+ /**
200
+ * 解密个人信息
201
+ */
202
+ decryptPersonalInfo(keypair: {
203
+ privateKey: Uint8Array;
204
+ }, encrypted: string): Promise<string>;
205
+ /**
206
+ * 从私钥派生 AES 密钥
207
+ */
208
+ private deriveAesKey;
209
+ /**
210
+ * 签名
211
+ */
212
+ private sign;
213
+ /**
214
+ * 验证签名
215
+ */
216
+ private verify;
217
+ /**
218
+ * 生成凭证 ID
219
+ */
220
+ private generateCredentialId;
221
+ /**
222
+ * 生成哈希
223
+ */
224
+ private generateHash;
225
+ /**
226
+ * ArrayBuffer 转 Base64
227
+ */
228
+ private arrayBufferToBase64;
229
+ /**
230
+ * Base64 转 ArrayBuffer
231
+ */
232
+ private base64ToArrayBuffer;
233
+ }
234
+ /**
235
+ * 创建实名认证管理器
236
+ */
237
+ export declare function createRealNameAuthManager(): RealNameAuthManager;
238
+ //# sourceMappingURL=real-name-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"real-name-auth.d.ts","sourceRoot":"","sources":["../src/real-name-auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,259 @@
1
+ /**
2
+ * DIAP TypeScript SDK - 实名认证模块
3
+ * 支持身份证绑定、用户 DID 身份锚定、智能体签名授权
4
+ */
5
+ import { logger } from './utils/logger.js';
6
+ /**
7
+ * 认证级别
8
+ */
9
+ export var AuthLevel;
10
+ (function (AuthLevel) {
11
+ /** 基础认证(仅手机号等) */
12
+ AuthLevel["Basic"] = "basic";
13
+ /** 中级认证(身份证绑定) */
14
+ AuthLevel["Medium"] = "medium";
15
+ /** 高级认证(人脸识别+身份证) */
16
+ AuthLevel["High"] = "high";
17
+ })(AuthLevel || (AuthLevel = {}));
18
+ /**
19
+ * 用户类型
20
+ */
21
+ export var UserType;
22
+ (function (UserType) {
23
+ /** 实名用户 */
24
+ UserType["RealName"] = "realname";
25
+ /** 匿名用户 */
26
+ UserType["Anonymous"] = "anonymous";
27
+ /** 组织用户 */
28
+ UserType["Organization"] = "organization";
29
+ })(UserType || (UserType = {}));
30
+ /**
31
+ * 智能体授权级别
32
+ */
33
+ export var AgentAuthLevel;
34
+ (function (AgentAuthLevel) {
35
+ /** 只读权限 */
36
+ AgentAuthLevel["ReadOnly"] = "read";
37
+ /** 读写权限 */
38
+ AgentAuthLevel["ReadWrite"] = "write";
39
+ /** 管理员权限 */
40
+ AgentAuthLevel["Admin"] = "admin";
41
+ /** 完全控制 */
42
+ AgentAuthLevel["FullControl"] = "full";
43
+ })(AgentAuthLevel || (AgentAuthLevel = {}));
44
+ /**
45
+ * 实名认证管理器
46
+ */
47
+ export class RealNameAuthManager {
48
+ keypair = null;
49
+ /**
50
+ * 创建实名认证管理器
51
+ */
52
+ constructor() {
53
+ logger.info('🔐 实名认证管理器已创建');
54
+ }
55
+ /**
56
+ * 设置密钥对
57
+ */
58
+ setKeypair(keypair) {
59
+ this.keypair = keypair;
60
+ logger.info(`✅ 密钥对已设置: ${keypair.did}`);
61
+ }
62
+ /**
63
+ * 创建用户 DID(基于实名认证)
64
+ */
65
+ createUserDid(keypair) {
66
+ return keypair.did;
67
+ }
68
+ /**
69
+ * 生成实名认证凭证
70
+ */
71
+ async createCredential(keypair, idNumber, name, authLevel) {
72
+ const encKeypair = { privateKey: keypair.privateKey };
73
+ const encryptedId = await this.encryptPersonalInfo(encKeypair, idNumber);
74
+ const encryptedName = await this.encryptPersonalInfo(encKeypair, name);
75
+ const credentialId = await this.generateCredentialId(keypair.publicKey, idNumber);
76
+ return {
77
+ credentialId,
78
+ userDid: keypair.did,
79
+ encryptedIdNumber: encryptedId,
80
+ encryptedName,
81
+ authTime: new Date().toISOString(),
82
+ authLevel,
83
+ };
84
+ }
85
+ /**
86
+ * 对智能体进行签名授权
87
+ */
88
+ async authorizeAgent(authorizerKeypair, agentDid, authLevel, scope, expiresAt) {
89
+ // 创建授权数据
90
+ const authData = [authorizerKeypair.did, agentDid, Date.now().toString(), authLevel].join('|');
91
+ // 签名
92
+ const signature = await this.sign(authData, authorizerKeypair.privateKey);
93
+ // 生成授权 ID
94
+ const authorizationId = await this.generateHash(authorizerKeypair.did + agentDid);
95
+ return {
96
+ authorizationId,
97
+ authorizerDid: authorizerKeypair.did,
98
+ agentDid,
99
+ authorizedAt: new Date().toISOString(),
100
+ expiresAt,
101
+ authLevel,
102
+ scope,
103
+ signature,
104
+ };
105
+ }
106
+ /**
107
+ * 验证智能体授权签名
108
+ */
109
+ async verifyAgentAuthorization(authorization, authorizerPublicKey) {
110
+ try {
111
+ // 重建授权数据
112
+ const authTime = new Date(authorization.authorizedAt).getTime();
113
+ const authData = [
114
+ authorization.authorizerDid,
115
+ authorization.agentDid,
116
+ authTime.toString(),
117
+ authorization.authLevel,
118
+ ].join('|');
119
+ // 验证签名
120
+ return await this.verify(authData, authorization.signature, authorizerPublicKey);
121
+ }
122
+ catch (error) {
123
+ logger.error(`❌ 验证失败: ${error}`);
124
+ return false;
125
+ }
126
+ }
127
+ /**
128
+ * 创建智能体签名
129
+ */
130
+ async signAgentCreation(signerKeypair, agentMetadata) {
131
+ const signData = JSON.stringify(agentMetadata);
132
+ const signature = await this.sign(signData, signerKeypair.privateKey);
133
+ return {
134
+ signerDid: signerKeypair.did,
135
+ agentDid: agentMetadata.agentDid,
136
+ signature,
137
+ signedAt: new Date().toISOString(),
138
+ version: '1.0',
139
+ };
140
+ }
141
+ /**
142
+ * 验证智能体创建签名
143
+ */
144
+ async verifyAgentSignature(agentSignature, signerPublicKey, agentMetadata) {
145
+ try {
146
+ const signData = JSON.stringify(agentMetadata);
147
+ return await this.verify(signData, agentSignature.signature, signerPublicKey);
148
+ }
149
+ catch {
150
+ return false;
151
+ }
152
+ }
153
+ /**
154
+ * 加密个人信息
155
+ */
156
+ async encryptPersonalInfo(keypair, data) {
157
+ const key = await this.deriveAesKey(keypair.privateKey);
158
+ const nonce = crypto.getRandomValues(new Uint8Array(12));
159
+ const cryptoKey = await crypto.subtle.importKey('raw', key.buffer, { name: 'AES-GCM' }, false, ['encrypt']);
160
+ const encrypted = await crypto.subtle.encrypt({ name: 'AES-GCM', iv: nonce }, cryptoKey, new TextEncoder().encode(data));
161
+ const combined = new Uint8Array(nonce.length + encrypted.byteLength);
162
+ combined.set(nonce);
163
+ combined.set(new Uint8Array(encrypted), nonce.length);
164
+ return this.arrayBufferToBase64(combined);
165
+ }
166
+ /**
167
+ * 解密个人信息
168
+ */
169
+ async decryptPersonalInfo(keypair, encrypted) {
170
+ const combined = this.base64ToArrayBuffer(encrypted);
171
+ const nonce = combined.slice(0, 12);
172
+ const ciphertext = combined.slice(12);
173
+ const key = await this.deriveAesKey(keypair.privateKey);
174
+ const cryptoKey = await crypto.subtle.importKey('raw', key.buffer, { name: 'AES-GCM' }, false, ['decrypt']);
175
+ const decrypted = await crypto.subtle.decrypt({ name: 'AES-GCM', iv: nonce }, cryptoKey, ciphertext);
176
+ return new TextDecoder().decode(decrypted);
177
+ }
178
+ // 私有辅助方法
179
+ /**
180
+ * 从私钥派生 AES 密钥
181
+ */
182
+ async deriveAesKey(privateKey) {
183
+ const data = new Uint8Array(privateKey.length + 16);
184
+ data.set(privateKey);
185
+ data.set(new TextEncoder().encode('DIAP_AES_KEY'), privateKey.length);
186
+ const hashBuffer = await crypto.subtle.digest('SHA-256', data.buffer);
187
+ return new Uint8Array(hashBuffer);
188
+ }
189
+ /**
190
+ * 签名
191
+ */
192
+ async sign(data, privateKey) {
193
+ const keyData = privateKey.slice(0, 32);
194
+ const cryptoKey = await crypto.subtle.importKey('raw', keyData.buffer, { name: 'HMAC', hash: 'SHA-256' }, false, ['sign']);
195
+ const signature = await crypto.subtle.sign('HMAC', cryptoKey, new TextEncoder().encode(data));
196
+ return this.arrayBufferToBase64(new Uint8Array(signature));
197
+ }
198
+ /**
199
+ * 验证签名
200
+ */
201
+ async verify(data, signature, publicKey) {
202
+ const keyData = publicKey.slice(0, 32);
203
+ const cryptoKey = await crypto.subtle.importKey('raw', keyData.buffer, { name: 'HMAC', hash: 'SHA-256' }, false, ['verify']);
204
+ const signatureBytes = this.base64ToArrayBuffer(signature);
205
+ return crypto.subtle.verify('HMAC', cryptoKey, signatureBytes.buffer, new TextEncoder().encode(data));
206
+ }
207
+ /**
208
+ * 生成凭证 ID
209
+ */
210
+ async generateCredentialId(publicKey, idNumber) {
211
+ const data = new Uint8Array(publicKey.length + new TextEncoder().encode(idNumber).length);
212
+ data.set(publicKey);
213
+ data.set(new TextEncoder().encode(idNumber), publicKey.length);
214
+ const hashBuffer = await crypto.subtle.digest('SHA-256', data.buffer);
215
+ return this.arrayBufferToBase64(new Uint8Array(hashBuffer));
216
+ }
217
+ /**
218
+ * 生成哈希
219
+ */
220
+ async generateHash(data) {
221
+ const hashBuffer = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(data));
222
+ return this.arrayBufferToBase64(new Uint8Array(hashBuffer));
223
+ }
224
+ /**
225
+ * ArrayBuffer 转 Base64
226
+ */
227
+ arrayBufferToBase64(buffer) {
228
+ let binary = '';
229
+ for (let i = 0; i < buffer.length; i++) {
230
+ binary += String.fromCharCode(buffer[i]);
231
+ }
232
+ return btoa(binary);
233
+ }
234
+ /**
235
+ * Base64 转 ArrayBuffer
236
+ */
237
+ base64ToArrayBuffer(base64) {
238
+ const binary = atob(base64);
239
+ const bytes = new Uint8Array(binary.length);
240
+ for (let i = 0; i < binary.length; i++) {
241
+ bytes[i] = binary.charCodeAt(i);
242
+ }
243
+ return bytes;
244
+ }
245
+ }
246
+ // ============================================================================
247
+ // 便捷函数
248
+ // ============================================================================
249
+ /**
250
+ * 创建实名认证管理器
251
+ */
252
+ export function createRealNameAuthManager() {
253
+ return new RealNameAuthManager();
254
+ }
255
+ // ============================================================================
256
+ // 导出
257
+ // ============================================================================
258
+ // 注意: RealNameCredential, AuthLevel, UserType 等已在声明时导出
259
+ //# sourceMappingURL=real-name-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"real-name-auth.js","sourceRoot":"","sources":["../src/real-name-auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * DID 相关类型定义
3
+ */
4
+ /**
5
+ * W3C DID 文档
6
+ */
7
+ export interface DIDDocument {
8
+ /** DID Context */
9
+ '@context': string[];
10
+ /** DID 标识符 */
11
+ id: string;
12
+ /** 验证方法列表 */
13
+ verificationMethod: VerificationMethod[];
14
+ /** 认证方法引用 */
15
+ authentication: string[];
16
+ /** 服务端点列表(可选) */
17
+ service?: Service[];
18
+ /** 创建时间 (ISO 8601) */
19
+ created: string;
20
+ }
21
+ /**
22
+ * 验证方法
23
+ */
24
+ export interface VerificationMethod {
25
+ /** 验证方法 ID */
26
+ id: string;
27
+ /** 类型 */
28
+ type: string;
29
+ /** 控制器 DID */
30
+ controller: string;
31
+ /** Multibase 编码的公钥 */
32
+ publicKeyMultibase: string;
33
+ }
34
+ /**
35
+ * 服务端点
36
+ */
37
+ export interface Service {
38
+ /** 服务 ID */
39
+ id: string;
40
+ /** 服务类型 */
41
+ type: string;
42
+ /** 服务端点 */
43
+ serviceEndpoint: any;
44
+ /** PubSub 主题列表(可选) */
45
+ pubsubTopics?: string[];
46
+ /** 网络地址列表(可选) */
47
+ networkAddresses?: string[];
48
+ }
49
+ /**
50
+ * 加密的 PeerID
51
+ * 使用 Ed25519 私钥派生 AES-256 密钥加密 PeerID
52
+ */
53
+ export interface EncryptedPeerID {
54
+ /** AES-256-GCM 加密的 PeerID 字节 */
55
+ ciphertext: Uint8Array;
56
+ /** 12 bytes AES-GCM nonce */
57
+ nonce: Uint8Array;
58
+ /** Ed25519 签名(对 ciphertext + nonce 的签名) */
59
+ signature: Uint8Array;
60
+ /** 加密方法标识 */
61
+ method: string;
62
+ }
63
+ /**
64
+ * DID 发布结果
65
+ */
66
+ export interface DIDPublishResult {
67
+ /** DID 标识符 */
68
+ did: string;
69
+ /** IPFS CID */
70
+ cid: string;
71
+ /** DID 文档 */
72
+ didDocument: DIDDocument;
73
+ /** 加密的 PeerID */
74
+ encryptedPeerId: EncryptedPeerID;
75
+ }
76
+ //# sourceMappingURL=did.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did.d.ts","sourceRoot":"","sources":["../../src/types/did.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,kBAAkB;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc;IACd,EAAE,EAAE,MAAM,CAAC;IACX,aAAa;IACb,kBAAkB,EAAE,kBAAkB,EAAE,CAAC;IACzC,aAAa;IACb,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,iBAAiB;IACjB,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IACpB,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,cAAc;IACd,EAAE,EAAE,MAAM,CAAC;IACX,SAAS;IACT,IAAI,EAAE,MAAM,CAAC;IACb,cAAc;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,YAAY;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,eAAe,EAAE,GAAG,CAAC;IACrB,sBAAsB;IACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB;IACjB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,gCAAgC;IAChC,UAAU,EAAE,UAAU,CAAC;IACvB,6BAA6B;IAC7B,KAAK,EAAE,UAAU,CAAC;IAClB,2CAA2C;IAC3C,SAAS,EAAE,UAAU,CAAC;IACtB,aAAa;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,cAAc;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,iBAAiB;IACjB,eAAe,EAAE,eAAe,CAAC;CAClC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * DID 相关类型定义
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=did.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did.js","sourceRoot":"","sources":["../../src/types/did.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * 错误处理框架
3
+ */
4
+ /**
5
+ * DIAP SDK 基础错误类
6
+ */
7
+ export declare class DIAPError extends Error {
8
+ code: string;
9
+ details?: any | undefined;
10
+ constructor(message: string, code: string, details?: any | undefined);
11
+ }
12
+ /**
13
+ * 密钥管理错误
14
+ */
15
+ export declare class KeyManagementError extends DIAPError {
16
+ constructor(message: string, details?: any);
17
+ }
18
+ /**
19
+ * IPFS 错误
20
+ */
21
+ export declare class IPFSError extends DIAPError {
22
+ constructor(message: string, details?: any);
23
+ }
24
+ /**
25
+ * ZKP 错误
26
+ */
27
+ export declare class ZKPError extends DIAPError {
28
+ constructor(message: string, details?: any);
29
+ }
30
+ /**
31
+ * DID 错误
32
+ */
33
+ export declare class DIDError extends DIAPError {
34
+ constructor(message: string, details?: any);
35
+ }
36
+ /**
37
+ * 验证错误
38
+ */
39
+ export declare class VerificationError extends DIAPError {
40
+ constructor(message: string, details?: any);
41
+ }
42
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAGzB,IAAI,EAAE,MAAM;IACZ,OAAO,CAAC,EAAE,GAAG;gBAFpB,OAAO,EAAE,MAAM,EACR,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,GAAG,YAAA;CAOvB;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,SAAS;gBACnC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;CAK3C;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,SAAS;gBAC1B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;CAK3C;AAED;;GAEG;AACH,qBAAa,QAAS,SAAQ,SAAS;gBACzB,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;CAK3C;AAED;;GAEG;AACH,qBAAa,QAAS,SAAQ,SAAS;gBACzB,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;CAK3C;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,SAAS;gBAClC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;CAK3C"}