neozip-blockchain 0.5.1
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.
- package/LICENSE +22 -0
- package/README.md +189 -0
- package/dist/browser/TokenVerifierBrowser.d.ts +63 -0
- package/dist/browser/TokenVerifierBrowser.d.ts.map +1 -0
- package/dist/browser/TokenVerifierBrowser.js +358 -0
- package/dist/browser/TokenVerifierBrowser.js.map +1 -0
- package/dist/browser/WalletManagerBrowser.d.ts +99 -0
- package/dist/browser/WalletManagerBrowser.d.ts.map +1 -0
- package/dist/browser/WalletManagerBrowser.js +434 -0
- package/dist/browser/WalletManagerBrowser.js.map +1 -0
- package/dist/browser/ZipkitMinterBrowser.d.ts +59 -0
- package/dist/browser/ZipkitMinterBrowser.d.ts.map +1 -0
- package/dist/browser/ZipkitMinterBrowser.js +337 -0
- package/dist/browser/ZipkitMinterBrowser.js.map +1 -0
- package/dist/browser/index.d.ts +12 -0
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +19 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/constants/index.d.ts +5 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/constants/index.js +21 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/constants/metadata.d.ts +18 -0
- package/dist/constants/metadata.d.ts.map +1 -0
- package/dist/constants/metadata.js +33 -0
- package/dist/constants/metadata.js.map +1 -0
- package/dist/constants/servers.d.ts +38 -0
- package/dist/constants/servers.d.ts.map +1 -0
- package/dist/constants/servers.js +54 -0
- package/dist/constants/servers.js.map +1 -0
- package/dist/core/ContractVersionRegistry.d.ts +63 -0
- package/dist/core/ContractVersionRegistry.d.ts.map +1 -0
- package/dist/core/ContractVersionRegistry.js +128 -0
- package/dist/core/ContractVersionRegistry.js.map +1 -0
- package/dist/core/WalletManager.d.ts +123 -0
- package/dist/core/WalletManager.d.ts.map +1 -0
- package/dist/core/WalletManager.js +360 -0
- package/dist/core/WalletManager.js.map +1 -0
- package/dist/core/ZipkitMinter.d.ts +155 -0
- package/dist/core/ZipkitMinter.d.ts.map +1 -0
- package/dist/core/ZipkitMinter.js +625 -0
- package/dist/core/ZipkitMinter.js.map +1 -0
- package/dist/core/ZipkitVerifier.d.ts +252 -0
- package/dist/core/ZipkitVerifier.d.ts.map +1 -0
- package/dist/core/ZipkitVerifier.js +1370 -0
- package/dist/core/ZipkitVerifier.js.map +1 -0
- package/dist/core/adapters/AdapterFactory.d.ts +22 -0
- package/dist/core/adapters/AdapterFactory.d.ts.map +1 -0
- package/dist/core/adapters/AdapterFactory.js +62 -0
- package/dist/core/adapters/AdapterFactory.js.map +1 -0
- package/dist/core/adapters/ContractVersionAdapter.d.ts +96 -0
- package/dist/core/adapters/ContractVersionAdapter.d.ts.map +1 -0
- package/dist/core/adapters/ContractVersionAdapter.js +9 -0
- package/dist/core/adapters/ContractVersionAdapter.js.map +1 -0
- package/dist/core/adapters/V2_10Adapter.d.ts +24 -0
- package/dist/core/adapters/V2_10Adapter.d.ts.map +1 -0
- package/dist/core/adapters/V2_10Adapter.js +87 -0
- package/dist/core/adapters/V2_10Adapter.js.map +1 -0
- package/dist/core/adapters/V2_11Adapter.d.ts +24 -0
- package/dist/core/adapters/V2_11Adapter.d.ts.map +1 -0
- package/dist/core/adapters/V2_11Adapter.js +87 -0
- package/dist/core/adapters/V2_11Adapter.js.map +1 -0
- package/dist/core/adapters/V2_50Adapter.d.ts +105 -0
- package/dist/core/adapters/V2_50Adapter.d.ts.map +1 -0
- package/dist/core/adapters/V2_50Adapter.js +263 -0
- package/dist/core/adapters/V2_50Adapter.js.map +1 -0
- package/dist/core/contracts.d.ts +169 -0
- package/dist/core/contracts.d.ts.map +1 -0
- package/dist/core/contracts.js +731 -0
- package/dist/core/contracts.js.map +1 -0
- package/dist/core/index.d.ts +24 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +82 -0
- package/dist/core/index.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -0
- package/dist/node/WalletManagerNode.d.ts +47 -0
- package/dist/node/WalletManagerNode.d.ts.map +1 -0
- package/dist/node/WalletManagerNode.js +203 -0
- package/dist/node/WalletManagerNode.js.map +1 -0
- package/dist/node/index.d.ts +12 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.js +21 -0
- package/dist/node/index.js.map +1 -0
- package/dist/ots/ZipkitOTS.d.ts +152 -0
- package/dist/ots/ZipkitOTS.d.ts.map +1 -0
- package/dist/ots/ZipkitOTS.js +544 -0
- package/dist/ots/ZipkitOTS.js.map +1 -0
- package/dist/ots/index.d.ts +9 -0
- package/dist/ots/index.d.ts.map +1 -0
- package/dist/ots/index.js +25 -0
- package/dist/ots/index.js.map +1 -0
- package/dist/types/index.d.ts +84 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +37 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/Logger.d.ts +73 -0
- package/dist/utils/Logger.d.ts.map +1 -0
- package/dist/utils/Logger.js +156 -0
- package/dist/utils/Logger.js.map +1 -0
- package/dist/utils/crc32.d.ts +6 -0
- package/dist/utils/crc32.d.ts.map +1 -0
- package/dist/utils/crc32.js +23 -0
- package/dist/utils/crc32.js.map +1 -0
- package/dist/zipstamp-server/CalendarManager.d.ts +238 -0
- package/dist/zipstamp-server/CalendarManager.d.ts.map +1 -0
- package/dist/zipstamp-server/CalendarManager.js +364 -0
- package/dist/zipstamp-server/CalendarManager.js.map +1 -0
- package/dist/zipstamp-server/ZipstampServerAPI.d.ts +427 -0
- package/dist/zipstamp-server/ZipstampServerAPI.d.ts.map +1 -0
- package/dist/zipstamp-server/ZipstampServerAPI.js +696 -0
- package/dist/zipstamp-server/ZipstampServerAPI.js.map +1 -0
- package/dist/zipstamp-server/ZipstampServerClient.d.ts +590 -0
- package/dist/zipstamp-server/ZipstampServerClient.d.ts.map +1 -0
- package/dist/zipstamp-server/ZipstampServerClient.js +433 -0
- package/dist/zipstamp-server/ZipstampServerClient.js.map +1 -0
- package/dist/zipstamp-server/ZipstampServerHelpers.d.ts +430 -0
- package/dist/zipstamp-server/ZipstampServerHelpers.d.ts.map +1 -0
- package/dist/zipstamp-server/ZipstampServerHelpers.js +503 -0
- package/dist/zipstamp-server/ZipstampServerHelpers.js.map +1 -0
- package/dist/zipstamp-server/index.d.ts +24 -0
- package/dist/zipstamp-server/index.d.ts.map +1 -0
- package/dist/zipstamp-server/index.js +67 -0
- package/dist/zipstamp-server/index.js.map +1 -0
- package/package.json +117 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ======================================
|
|
3
|
+
* ZipkitOTS.ts - OpenTimestamps Integration
|
|
4
|
+
* ======================================
|
|
5
|
+
*
|
|
6
|
+
* This module provides comprehensive OpenTimestamps (OTS) functionality,
|
|
7
|
+
* including timestamp creation, verification, certificate generation, and proof upgrades.
|
|
8
|
+
*
|
|
9
|
+
* Key Features:
|
|
10
|
+
* - Bitcoin blockchain timestamping via OpenTimestamps
|
|
11
|
+
* - Merkle root calculation and verification
|
|
12
|
+
* - OTS proof upgrade capabilities
|
|
13
|
+
* - Certificate generation for verified timestamps
|
|
14
|
+
*
|
|
15
|
+
* @fileoverview OpenTimestamps utilities for blockchain timestamping
|
|
16
|
+
* @author NeoWare Inc.
|
|
17
|
+
*/
|
|
18
|
+
import type { ZipkitLike, ZipEntryLike } from '../types';
|
|
19
|
+
export declare const TIMESTAMP_SUBMITTED = "META-INF/TS-SUBMIT.OTS";
|
|
20
|
+
export declare const TIMESTAMP_METADATA = "META-INF/TIMESTAMP.OTS";
|
|
21
|
+
export declare const CMP_METHOD: {
|
|
22
|
+
STORED: number;
|
|
23
|
+
DEFLATED: number;
|
|
24
|
+
};
|
|
25
|
+
declare global {
|
|
26
|
+
var _bitcore: any;
|
|
27
|
+
}
|
|
28
|
+
export interface TimestampResult {
|
|
29
|
+
merkleRoot: string | null;
|
|
30
|
+
ots: ArrayBuffer | null;
|
|
31
|
+
verified: boolean;
|
|
32
|
+
results: any | null;
|
|
33
|
+
error: string | null;
|
|
34
|
+
attestations: any | null;
|
|
35
|
+
upgradedOts: ArrayBuffer | null;
|
|
36
|
+
}
|
|
37
|
+
export interface TimestampInfo {
|
|
38
|
+
message: string;
|
|
39
|
+
results: string[];
|
|
40
|
+
attestDate: Date | null;
|
|
41
|
+
attestHeight: number | null;
|
|
42
|
+
submittedUri: string | null;
|
|
43
|
+
otsUpgraded: boolean;
|
|
44
|
+
}
|
|
45
|
+
export interface DeserializeOtsResult {
|
|
46
|
+
attestStr: string | null;
|
|
47
|
+
needsUpdateMsg: string | null;
|
|
48
|
+
attestationValues: any[];
|
|
49
|
+
}
|
|
50
|
+
export interface OtsVerifyResult {
|
|
51
|
+
status: 'none' | 'valid' | 'pending' | 'error';
|
|
52
|
+
message?: string;
|
|
53
|
+
blockHeight?: number;
|
|
54
|
+
attestedAt?: Date;
|
|
55
|
+
upgraded?: boolean;
|
|
56
|
+
upgradedOts?: Buffer;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Verifies an OpenTimestamps proof against a hash digest.
|
|
60
|
+
* @param hashDigest - SHA256 hash as hex string to verify
|
|
61
|
+
* @param ots - OpenTimestamps proof data
|
|
62
|
+
* @param options - Configuration options
|
|
63
|
+
* @param options.debug - Enable debug logging
|
|
64
|
+
* @returns Promise resolving to verification result, error object, or null if inputs invalid
|
|
65
|
+
*/
|
|
66
|
+
export declare function verifyOts(hashDigest: string | null, ots: ArrayBuffer | null, options?: {
|
|
67
|
+
debug?: boolean;
|
|
68
|
+
}): Promise<TimestampResult | {
|
|
69
|
+
error: string;
|
|
70
|
+
} | null>;
|
|
71
|
+
/**
|
|
72
|
+
* Converts a Node.js Buffer to an ArrayBuffer.
|
|
73
|
+
* @param buf - Buffer to convert
|
|
74
|
+
* @returns ArrayBuffer with same data
|
|
75
|
+
*/
|
|
76
|
+
export declare function bufferToArrayBuffer(buf: Buffer): ArrayBuffer;
|
|
77
|
+
/**
|
|
78
|
+
* Finds the OpenTimestamps entry in a ZIP file.
|
|
79
|
+
* Searches for TIMESTAMP_METADATA first, then TIMESTAMP_SUBMITTED.
|
|
80
|
+
* @param zip - Zipkit-like instance to search
|
|
81
|
+
* @returns ZIP entry containing OTS proof, or null if not found
|
|
82
|
+
*/
|
|
83
|
+
export declare function getOtsEntry(zip: ZipkitLike): ZipEntryLike | null;
|
|
84
|
+
/**
|
|
85
|
+
* Extracts OTS proof data from a ZIP entry.
|
|
86
|
+
* Prefers extractToBuffer when available (required for file-based ZIPs loaded with loadZipFile).
|
|
87
|
+
* @param zip - Zipkit-like instance
|
|
88
|
+
* @param otsEntry - ZIP entry containing OTS data
|
|
89
|
+
* @returns Promise resolving to OTS proof buffer, or null if extraction fails
|
|
90
|
+
*/
|
|
91
|
+
export declare function getOtsBuffer(zip: ZipkitLike, otsEntry: ZipEntryLike): Promise<Buffer | null>;
|
|
92
|
+
/**
|
|
93
|
+
* Safely extracts merkle root from a ZIP file.
|
|
94
|
+
* @param zip - Zipkit-like instance
|
|
95
|
+
* @returns Merkle root hash string, or null if not available
|
|
96
|
+
*/
|
|
97
|
+
export declare function getMerkleRootSafe(zip: ZipkitLike): string | null;
|
|
98
|
+
/**
|
|
99
|
+
* Verifies OpenTimestamps proof within a ZIP file.
|
|
100
|
+
* Extracts merkle root and OTS proof, then verifies against Bitcoin blockchain.
|
|
101
|
+
* @param zip - Zipkit-like instance containing files and OTS proof
|
|
102
|
+
* @returns Promise resolving to verification result with status: 'none', 'error', 'pending', or 'valid'
|
|
103
|
+
*/
|
|
104
|
+
export declare function verifyOtsZip(zip: ZipkitLike): Promise<OtsVerifyResult>;
|
|
105
|
+
/**
|
|
106
|
+
* Creates an OpenTimestamps proof for a hash digest.
|
|
107
|
+
* Submits hash to OpenTimestamps servers for Bitcoin blockchain anchoring.
|
|
108
|
+
* @param hashDigest - SHA256 hash as hex string to timestamp
|
|
109
|
+
* @param options - Configuration options
|
|
110
|
+
* @param options.debug - Enable debug logging
|
|
111
|
+
* @returns Promise resolving to OTS proof buffer, or null if creation failed
|
|
112
|
+
*/
|
|
113
|
+
export declare function createTimestamp(hashDigest: string | null, options?: {
|
|
114
|
+
debug?: boolean;
|
|
115
|
+
}): Promise<Buffer | null>;
|
|
116
|
+
/**
|
|
117
|
+
* Deserializes OpenTimestamps verification result into JSON format.
|
|
118
|
+
* Extracts blockchain attestation data and transaction details.
|
|
119
|
+
* @param tsResult - Timestamp verification result to deserialize
|
|
120
|
+
* @param options - Configuration options
|
|
121
|
+
* @param options.debug - Enable debug logging
|
|
122
|
+
* @returns Promise resolving to JSON string with attestation data, or null if failed
|
|
123
|
+
*/
|
|
124
|
+
export declare function deserializeOts(tsResult: TimestampResult, options?: {
|
|
125
|
+
debug?: boolean;
|
|
126
|
+
}): Promise<string | null>;
|
|
127
|
+
/**
|
|
128
|
+
* Parses timestamp verification result into readable information.
|
|
129
|
+
* Formats blockchain attestation data with human-readable messages and dates.
|
|
130
|
+
* @param verifyResult - Timestamp verification result to parse
|
|
131
|
+
* @returns Promise resolving to formatted timestamp information
|
|
132
|
+
*/
|
|
133
|
+
export declare function parseVerifyResult(verifyResult: TimestampResult): Promise<TimestampInfo>;
|
|
134
|
+
/**
|
|
135
|
+
* Upgrades OpenTimestamps proof in an existing ZIP file.
|
|
136
|
+
* Note: This function requires neozipkit for ZIP operations.
|
|
137
|
+
* @param zipFilePath - Path to ZIP file to upgrade
|
|
138
|
+
* @param upgradedOts - Buffer containing upgraded OTS proof
|
|
139
|
+
* @param zipkitInstance - Optional Zipkit instance for ZIP operations
|
|
140
|
+
* @returns Promise that resolves when upgrade is complete
|
|
141
|
+
* @throws Error if upgrade fails
|
|
142
|
+
*/
|
|
143
|
+
export declare function upgradeOTS(zipFilePath: string, upgradedOts: Buffer, zipkitInstance?: any): Promise<void>;
|
|
144
|
+
/**
|
|
145
|
+
* Creates a ZIP metadata entry containing OpenTimestamps proof.
|
|
146
|
+
* Note: This function requires a Zipkit instance for ZIP operations.
|
|
147
|
+
* @param zipKit - Zipkit-like instance to add metadata entry to
|
|
148
|
+
* @param ots - Buffer containing OpenTimestamps proof data
|
|
149
|
+
* @returns ZIP entry containing OTS metadata, or null if creation failed
|
|
150
|
+
*/
|
|
151
|
+
export declare function createOtsMetadataEntry(zipKit: any, ots: Buffer | null): any | null;
|
|
152
|
+
//# sourceMappingURL=ZipkitOTS.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ZipkitOTS.d.ts","sourceRoot":"","sources":["../../src/ots/ZipkitOTS.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAIzD,eAAO,MAAM,mBAAmB,2BAAgB,CAAC;AACjD,eAAO,MAAM,kBAAkB,2BAAgB,CAAC;AAEhD,eAAO,MAAM,UAAU;;;CAA6B,CAAC;AAgBrD,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,QAAQ,EAAE,GAAG,CAAC;CACnB;AA4DD,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,GAAG,EAAE,WAAW,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,GAAG,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iBAAiB,EAAE,GAAG,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,GAAG,EAAE,WAAW,GAAG,IAAI,EACvB,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5B,OAAO,CAAC,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAuDrD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAK5D;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CAgBhE;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWlG;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAOhE;AAcD;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,eAAe,CAAC,CA+B5E;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAiBtH;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,eAAe,EACzB,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAiDxB;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,YAAY,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC,CA2B7F;AAED;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAC9B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,cAAc,CAAC,EAAE,GAAG,GACnB,OAAO,CAAC,IAAI,CAAC,CAmJf;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAYlF"}
|