@smartledger/bsv 3.2.2 → 3.3.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.
- package/CHANGELOG.md +279 -4
- package/README.md +266 -71
- package/bsv-covenant.min.js +26 -3
- package/bsv-gdaf.min.js +39 -0
- package/bsv-ltp.min.js +39 -0
- package/bsv-script-helper.min.js +2 -2
- package/bsv-security.min.js +3 -24
- package/bsv-shamir.min.js +12 -0
- package/bsv-smartcontract.min.js +10 -8
- package/bsv.bundle.js +7 -7
- package/bsv.min.js +10 -8
- package/build/webpack.bundle.config.js +2 -2
- package/build/webpack.config.js +2 -2
- package/build/webpack.covenant.config.js +2 -2
- package/build/webpack.gdaf.config.js +17 -0
- package/build/webpack.ltp.config.js +17 -0
- package/build/webpack.script-helper.config.js +2 -2
- package/build/webpack.security.config.js +2 -2
- package/build/webpack.smartcontract.config.js +2 -2
- package/bundle-entry.js +1 -265
- package/covenant-entry.js +1 -44
- package/docs/DOCUMENTATION_REVIEW_REPORT.md +295 -0
- package/docs/MODULE_REFERENCE_COMPLETE.md +330 -0
- package/docs/README.md +107 -79
- package/docs/advanced/LEGAL_TOKEN_PROTOCOL.md +411 -0
- package/docs/advanced/SMART_CONTRACT_GUIDE.md +1255 -0
- package/docs/advanced/UTXO_MANAGER_GUIDE.md +851 -0
- package/docs/api/LTP.md +334 -0
- package/docs/getting-started/INSTALLATION.md +410 -0
- package/docs/getting-started/QUICK_START.md +180 -0
- package/docs/migration/FROM_BSV_1_5_6.md +260 -0
- package/docs/technical/GDAF_DEVELOPER_INTERFACE.md +187 -0
- package/docs/technical/GDAF_IMPLEMENTATION_COMPLETE.md +190 -0
- package/docs/technical/SHAMIR_INTEGRATION_SUMMARY.md +165 -0
- package/docs/technical/roadmap.md +1250 -0
- package/docs/technical/trust_law.md +142 -0
- package/gdaf-entry.js +2 -0
- package/index.js +291 -0
- package/lib/crypto/shamir.js +360 -0
- package/lib/gdaf/attestation-signer.js +461 -0
- package/lib/gdaf/attestation-verifier.js +600 -0
- package/lib/gdaf/did-resolver.js +382 -0
- package/lib/gdaf/index.js +471 -0
- package/lib/gdaf/schema-validator.js +682 -0
- package/lib/gdaf/smartledger-anchor.js +486 -0
- package/lib/gdaf/zk-prover.js +507 -0
- package/lib/ltp/anchor.js +438 -0
- package/lib/ltp/claim.js +1026 -0
- package/lib/ltp/index.js +470 -0
- package/lib/ltp/obligation.js +945 -0
- package/lib/ltp/proof.js +828 -0
- package/lib/ltp/registry.js +702 -0
- package/lib/ltp/right.js +765 -0
- package/lib/smart_contract/API_REFERENCE.md +1 -1
- package/lib/smart_contract/EXAMPLES.md +2 -2
- package/lib/smart_contract/QUICK_START.md +2 -2
- package/lib/smart_contract/README.md +1 -1
- package/ltp-entry.js +2 -0
- package/package.json +48 -6
- package/script-helper-entry.js +1 -49
- package/security-entry.js +1 -70
- package/shamir-entry.js +1 -0
- package/smartcontract-entry.js +1 -133
- package/tests/test_builtin_verify.js +117 -0
- package/tests/test_debug_integration.js +71 -0
- package/tests/test_ecdsa_little.js +70 -0
- package/tests/test_shamir.js +221 -0
- package/tests/test_smartverify_der.js +110 -0
- package/tests/test_standalone_shamir.html +83 -0
- package/utilities/blockchain-state.js +155 -155
- package/utilities/blockchain-state.json +103293 -5244
- package/utilities/miner-simulator.js +354 -358
- package/utilities/mock-utxo-generator.js +54 -54
- package/utilities/raw-tx-examples.js +120 -122
- package/utilities/success-demo.js +104 -105
- package/utilities/transaction-examples.js +188 -188
- package/utilities/utxo-manager.js +91 -91
- package/utilities/wallet-setup.js +79 -80
- package/utilities/working-signature-demo.js +108 -110
- package/SECURITY.md +0 -75
- package/build/bsv-covenant.min.js +0 -10
- package/build/bsv-script-helper.min.js +0 -10
- package/build/bsv-security.min.js +0 -31
- package/build/bsv-smartcontract.min.js +0 -37
- package/build/bsv.bundle.js +0 -39
- package/build/bsv.min.js +0 -37
- package/validation_test.js +0 -97
- /package/docs/{ADVANCED_COVENANT_DEVELOPMENT.md → advanced/ADVANCED_COVENANT_DEVELOPMENT.md} +0 -0
- /package/docs/{CUSTOM_SCRIPT_DEVELOPMENT.md → advanced/CUSTOM_SCRIPT_DEVELOPMENT.md} +0 -0
- /package/docs/{block.md → api/BLOCKS.md} +0 -0
- /package/docs/{ecies.md → api/ECIES.md} +0 -0
- /package/docs/{networks.md → api/NETWORKS.md} +0 -0
- /package/docs/{script.md → api/SCRIPTS.md} +0 -0
- /package/docs/{transaction.md → api/TRANSACTIONS.md} +0 -0
- /package/docs/{unspentoutput.md → api/UTXO.md} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,9 +1,284 @@
|
|
|
1
|
-
# Changelog
|
|
1
|
+
# Changelog# Changelog
|
|
2
2
|
|
|
3
|
-
All notable changes to SmartLedger-BSV will be documented in this file.
|
|
4
3
|
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
|
|
5
|
+
All notable changes to SmartLedger-BSV will be documented in this file.All notable changes to SmartLedger-BSV will be documented in this file.
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
10
|
+
|
|
11
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
## [3.3.3] - 2025-10-28## [3.3.0] - 2025-10-22
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
### 🎉 Major Improvements### 🚀 MAJOR RELEASE: Legal Token Protocol (LTP) & Global Digital Attestation Framework (GDAF)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
#### 📁 Project Organization & Structure#### Revolutionary Legal Token Protocol Framework
|
|
24
|
+
|
|
25
|
+
- **Complete repository reorganization**: Moved legacy files to `/archive/` for better project structure- **Complete Legal Token Protocol (LTP)**: 6-module comprehensive legal framework
|
|
26
|
+
|
|
27
|
+
- **New `/demos/` directory**: Interactive HTML demonstrations for all SmartLedger-BSV modules - **lib/ltp/anchor.js**: Blockchain anchoring preparation primitives
|
|
28
|
+
|
|
29
|
+
- **Enhanced `/docs/` structure**: Comprehensive documentation with getting started guides, API references, and technical details - **lib/ltp/registry.js**: Token registry management primitives
|
|
30
|
+
|
|
31
|
+
- **Dedicated `/tests/` directory**: All test files properly organized and categorized - **lib/ltp/claim.js**: Legal claim validation and attestation primitives
|
|
32
|
+
|
|
33
|
+
- **New `/tools/` directory**: Development utilities and helper scripts - **lib/ltp/proof.js**: Cryptographic proof generation primitives
|
|
34
|
+
|
|
35
|
+
- **lib/ltp/right.js**: Legal rights token creation and validation primitives
|
|
36
|
+
|
|
37
|
+
#### 🚀 Interactive Demos - **lib/ltp/obligation.js**: Legal obligation token management primitives
|
|
38
|
+
|
|
39
|
+
- **Smart Contract Demo**: Full-featured HTML demo showcasing covenant creation, preimage parsing, script building, and UTXO generation
|
|
40
|
+
|
|
41
|
+
- **Web3Keys Demo**: Interactive key generation and cryptographic operations demonstration#### Primitives-Only Architecture Philosophy
|
|
42
|
+
|
|
43
|
+
- **Local development server**: Easy setup for testing demos locally- **No Blockchain Publishing**: Library provides preparation functions only
|
|
44
|
+
|
|
45
|
+
- **External System Integration**: Perfect for enterprise and custom implementations
|
|
46
|
+
|
|
47
|
+
#### 📚 Documentation Enhancements- **Maximum Flexibility**: Choose your own blockchain, storage, and UI frameworks
|
|
48
|
+
|
|
49
|
+
- **Complete API documentation**: Detailed reference for all modules and classes- **Clean Separation**: Cryptographic correctness separated from application logic
|
|
50
|
+
|
|
51
|
+
- **Getting Started guides**: Step-by-step tutorials for new developers
|
|
52
|
+
|
|
53
|
+
- **Advanced development guides**: In-depth coverage of complex topics#### Legal Token Framework Components
|
|
54
|
+
|
|
55
|
+
- **Migration documentation**: Guidelines for upgrading from previous versions- **46 LTP Primitive Methods**: Complete coverage across all legal token operations
|
|
56
|
+
|
|
57
|
+
- **Technical specifications**: Detailed implementation documentation - 4 Right Token Primitives (prepare, verify, transfer, validate)
|
|
58
|
+
|
|
59
|
+
- 5 Obligation Token Primitives (create, verify, fulfill, breach assessment, monitoring)
|
|
60
|
+
|
|
61
|
+
### 🔧 Technical Improvements - 5 Claim Validation Primitives (validate, attest, dispute, bulk processing, templates)
|
|
62
|
+
|
|
63
|
+
- 6 Proof Generation Primitives (signature, selective disclosure, ZK, legal validity)
|
|
64
|
+
|
|
65
|
+
#### ✅ Test Suite Enhancements - 8 Registry Management Primitives (registry setup, registration, approval, revocation, queries)
|
|
66
|
+
|
|
67
|
+
- **Fixed opcode mapping tests**: Updated tests to reflect Chronicle string operations (OP_SUBSTR, OP_LEFT, OP_RIGHT) - 4 Blockchain Anchoring Primitives (commitment, batch processing, verification, revocation)
|
|
68
|
+
|
|
69
|
+
- **Corrected opcode count**: Updated from 118 to 121 elements to include new Chronicle opcodes
|
|
70
|
+
|
|
71
|
+
- **Perfect test coverage**: All 534 tests now pass (100% success rate)#### W3C-Compliant Legal Standards
|
|
72
|
+
|
|
73
|
+
- **Updated reverseMap validation**: Fixed OP_NOP7 position validation (was incorrectly expecting OP_NOP10)- **PropertyTitle**: Complete property ownership claim schema
|
|
74
|
+
|
|
75
|
+
- **VehicleTitle**: Vehicle ownership and transfer documentation
|
|
76
|
+
|
|
77
|
+
#### 🛠️ Build System Updates- **PromissoryNote**: Financial obligation and debt instruments
|
|
78
|
+
|
|
79
|
+
- **Enhanced webpack configurations**: Improved build processes for all modules- **IntellectualProperty**: IP rights and licensing framework
|
|
80
|
+
|
|
81
|
+
- **Updated bundle outputs**: Refreshed all minified bundles with latest optimizations- **ProfessionalLicense**: Professional certification and licensing
|
|
82
|
+
|
|
83
|
+
- **Better development workflow**: Streamlined build and test processes- **MusicLicense**: Music rights and royalty management
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
#### 🧹 Code Quality Improvements#### Global Digital Attestation Framework (GDAF)
|
|
88
|
+
|
|
89
|
+
- **Linting fixes**: Resolved JavaScript Standard Style violations across utility files- **6-Module GDAF Implementation**: Complete W3C Verifiable Credentials compliance
|
|
90
|
+
|
|
91
|
+
- **Unused import cleanup**: Removed unused dependencies and imports - **lib/gdaf/attestation.js**: Digital attestation creation and verification
|
|
92
|
+
|
|
93
|
+
- **Syntax compatibility**: Fixed ES2020 optional chaining for broader compatibility - **lib/gdaf/identity.js**: Decentralized identity management
|
|
94
|
+
|
|
95
|
+
- **Code organization**: Better separation of concerns and cleaner file structure - **lib/gdaf/registry.js**: Attestation registry and discovery
|
|
96
|
+
|
|
97
|
+
- **lib/gdaf/credential.js**: W3C Verifiable Credentials implementation
|
|
98
|
+
|
|
99
|
+
### 🔒 Chronicle Integration - **lib/gdaf/proof.js**: Cryptographic proof systems
|
|
100
|
+
|
|
101
|
+
- **OP_SUBSTR support**: Full implementation of substring operations - **lib/gdaf/verification.js**: Multi-layer verification framework
|
|
102
|
+
|
|
103
|
+
- **OP_LEFT support**: Left substring extraction functionality
|
|
104
|
+
|
|
105
|
+
- **OP_RIGHT support**: Right substring extraction functionality#### Enhanced Cryptographic Primitives
|
|
106
|
+
|
|
107
|
+
- **Updated opcode mappings**: Proper integration of Chronicle string operations into opcode system- **Shamir Secret Sharing**: Complete k-of-n threshold cryptography
|
|
108
|
+
|
|
109
|
+
- **lib/crypto/shamir.js**: Production-ready SSS implementation
|
|
110
|
+
|
|
111
|
+
### 📦 Module Improvements - **bsv.createShares()**: Split secrets into threshold shares
|
|
112
|
+
|
|
113
|
+
- **bsv.reconstructSecret()**: Reconstruct from threshold shares
|
|
114
|
+
|
|
115
|
+
#### 💎 Utility Enhancements - **bsv.verifyShares()**: Validate share integrity
|
|
116
|
+
|
|
117
|
+
- **Blockchain state management**: Improved simulation and state tracking
|
|
118
|
+
|
|
119
|
+
- **UTXO management**: Enhanced UTXO generation and management tools### 🎯 Complete Legal Token Workflow Example
|
|
120
|
+
|
|
121
|
+
- **Transaction examples**: Comprehensive transaction building examples
|
|
122
|
+
|
|
123
|
+
- **Miner simulation**: Better blockchain mining simulation for development#### Real BSV Integration Demonstration
|
|
124
|
+
|
|
125
|
+
- **Success demonstration**: Working examples of successful operations- **Real Private Keys**: Actual BSV addresses and WIF keys generated
|
|
126
|
+
|
|
127
|
+
- **Mock UTXO System**: Complete testing framework without blockchain dependency
|
|
128
|
+
|
|
129
|
+
### 🐛 Bug Fixes- **Smart Contract Covenants**: Legal token enforcement through BSV covenants
|
|
130
|
+
|
|
131
|
+
- **Fixed demo script paths**: Corrected relative paths in HTML demos- **End-to-End Workflow**: From claim creation to token transfer with covenant validation
|
|
132
|
+
|
|
133
|
+
- **Resolved test failures**: All opcode-related test issues resolved
|
|
134
|
+
|
|
135
|
+
- **Build output corrections**: Fixed webpack output paths and configurations#### Example Results from `complete_ltp_demo.js`:
|
|
136
|
+
|
|
137
|
+
- **Import path fixes**: Corrected module import paths across the codebase- Property Right Token: `RT-1bd80ac44e27c3ec0f9dffdd2efffe07`
|
|
138
|
+
|
|
139
|
+
- Obligation Token: `OB-e87eb0388db36b8b5777118ae45c46d3`
|
|
140
|
+
|
|
141
|
+
### 🔄 Backwards Compatibility- Covenant Address: `1MhX6MRVE79Qn4CtQ6bkk5JJJeMCTXBwwo`
|
|
142
|
+
|
|
143
|
+
- **Maintained API compatibility**: All existing APIs remain functional- Transfer Transaction: `4b1125d5dfc53e0157b843b8d2e964922331dd509ca096f9a470bfda421b43e6`
|
|
144
|
+
|
|
145
|
+
- **Legacy file preservation**: Old files archived rather than deleted
|
|
146
|
+
|
|
147
|
+
- **Migration support**: Clear upgrade paths for existing applications### 🏗️ Architecture Excellence
|
|
148
|
+
|
|
149
|
+
- **Version consistency**: No breaking changes to core functionality
|
|
150
|
+
|
|
151
|
+
#### Interface Transformation
|
|
152
|
+
|
|
153
|
+
### 📈 Performance Improvements**Before (Application Framework):**
|
|
154
|
+
|
|
155
|
+
- **Optimized bundles**: Reduced bundle sizes through better webpack configurations```javascript
|
|
156
|
+
|
|
157
|
+
- **Faster tests**: Improved test execution speed through better organizationbsv.createRightToken() // Created AND published to blockchain
|
|
158
|
+
|
|
159
|
+
- **Enhanced development experience**: Faster build times and better error reportingbsv.validateLegalClaim() // Validated AND stored in database
|
|
160
|
+
|
|
161
|
+
bsv.anchorTokenBatch() // Created batch AND sent transaction
|
|
162
|
+
|
|
163
|
+
### 🎯 Developer Experience```
|
|
164
|
+
|
|
165
|
+
- **Interactive learning**: Hands-on demos for understanding SmartLedger-BSV capabilities
|
|
166
|
+
|
|
167
|
+
- **Better documentation**: Clear examples and comprehensive API coverage**After (Primitives-Only):**
|
|
168
|
+
|
|
169
|
+
- **Improved debugging**: Better error messages and debugging tools```javascript
|
|
170
|
+
|
|
171
|
+
- **Development tools**: Enhanced utilities for blockchain developmentbsv.prepareRightToken() // Prepares token structure only
|
|
172
|
+
|
|
173
|
+
bsv.prepareClaimValidation() // Validates structure only
|
|
174
|
+
|
|
175
|
+
### 📋 Quality Assurancebsv.prepareBatchCommitment() // Prepares commitment only
|
|
176
|
+
|
|
177
|
+
- **Complete test coverage**: 534/534 tests passing```
|
|
178
|
+
|
|
179
|
+
- **Linting compliance**: Full JavaScript Standard Style compliance
|
|
180
|
+
|
|
181
|
+
- **Build verification**: All builds complete successfully### 🛠️ New Development Tools & Testing
|
|
182
|
+
|
|
183
|
+
- **Cross-platform compatibility**: Verified functionality across different environments
|
|
184
|
+
|
|
185
|
+
#### Comprehensive Demo Suite
|
|
186
|
+
|
|
187
|
+
---- **complete_ltp_demo.js**: Full end-to-end LTP workflow with real BSV keys
|
|
188
|
+
|
|
189
|
+
- **simple_demo.js**: Architectural overview and primitives showcase
|
|
190
|
+
|
|
191
|
+
## Previous Versions- **architecture_demo.js**: Before/after comparison demonstration
|
|
192
|
+
|
|
193
|
+
- **gdaf_demo.js**: Complete GDAF framework demonstration
|
|
194
|
+
|
|
195
|
+
### [3.3.2] and earlier- **shamir_demo.js**: Threshold cryptography examples
|
|
196
|
+
|
|
197
|
+
Previous version history is available in the git commit log. This changelog format starts with version 3.3.3.
|
|
198
|
+
|
|
199
|
+
#### New NPM Scripts
|
|
200
|
+
|
|
201
|
+
---- **`npm run test:ltp`**: Complete Legal Token Protocol demonstration
|
|
202
|
+
|
|
203
|
+
- **`npm run test:ltp-primitives`**: Primitives-only architecture showcase
|
|
204
|
+
|
|
205
|
+
### 🚀 Getting Started- **`npm run test:architecture`**: Architectural transformation comparison
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
To get started with SmartLedger-BSV v3.3.3:### 📦 Enhanced Build System
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
```bash#### New Standalone Modules
|
|
214
|
+
|
|
215
|
+
npm install @smartledger/bsv@3.3.3- **bsv-ltp.min.js**: Complete Legal Token Protocol standalone module
|
|
216
|
+
|
|
217
|
+
```- **bsv-shamir.min.js**: Standalone Shamir Secret Sharing module
|
|
218
|
+
|
|
219
|
+
- **bsv-gdaf.min.js**: Complete GDAF framework module
|
|
220
|
+
|
|
221
|
+
Check out the interactive demos:
|
|
222
|
+
|
|
223
|
+
```bash#### Updated Keywords & Metadata
|
|
224
|
+
|
|
225
|
+
cd demos```json
|
|
226
|
+
|
|
227
|
+
python3 -m http.server 8080"legal-token-protocol", "ltp", "legal-tokens", "primitives-only",
|
|
228
|
+
|
|
229
|
+
# Open http://localhost:8080"legal-compliance", "property-rights", "obligations", "attestations",
|
|
230
|
+
|
|
231
|
+
```"gdaf", "global-digital-attestation", "w3c-credentials",
|
|
232
|
+
|
|
233
|
+
"verifiable-credentials", "shamir-secret-sharing", "threshold-cryptography"
|
|
234
|
+
|
|
235
|
+
### 📖 Documentation```
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
- **API Reference**: `/docs/api/`### 💫 Enterprise Integration Benefits
|
|
240
|
+
|
|
241
|
+
- **Getting Started**: `/docs/getting-started/`
|
|
242
|
+
|
|
243
|
+
- **Examples**: `/examples/`#### For Developers
|
|
244
|
+
|
|
245
|
+
- **Demos**: `/demos/`- ✅ Choose any blockchain platform (BSV, Bitcoin, Ethereum, etc.)
|
|
246
|
+
|
|
247
|
+
- ✅ Choose any storage solution (SQL, NoSQL, IPFS, etc.)
|
|
248
|
+
|
|
249
|
+
### 🔗 Links- ✅ Full architectural control and system integration
|
|
250
|
+
|
|
251
|
+
- ✅ Easy integration with existing business systems
|
|
252
|
+
|
|
253
|
+
- **GitHub**: https://github.com/codenlighten/smartledger-bsv
|
|
254
|
+
|
|
255
|
+
- **NPM**: https://npmjs.com/package/@smartledger/bsv#### For Enterprises
|
|
256
|
+
|
|
257
|
+
- **Documentation**: https://github.com/codenlighten/smartledger-bsv/tree/main/docs- ✅ No vendor lock-in to specific platforms
|
|
258
|
+
- ✅ Compliance with existing IT policies
|
|
259
|
+
- ✅ Legacy system compatibility
|
|
260
|
+
- ✅ Audit-friendly separation of concerns
|
|
261
|
+
|
|
262
|
+
#### For Security & Legal
|
|
263
|
+
- ✅ Isolated cryptographic operations
|
|
264
|
+
- ✅ Standardized legal token structures
|
|
265
|
+
- ✅ Predictable, deterministic behavior
|
|
266
|
+
- ✅ Regulatory compliance primitives
|
|
267
|
+
|
|
268
|
+
### 🔄 Migration from v3.2.x
|
|
269
|
+
|
|
270
|
+
#### Backward Compatibility
|
|
271
|
+
- All existing APIs remain functional
|
|
272
|
+
- New primitives-only methods added alongside existing functionality
|
|
273
|
+
- Gradual migration path available for existing applications
|
|
274
|
+
|
|
275
|
+
#### Recommended Migration Steps
|
|
276
|
+
1. Test new LTP primitives with existing data structures
|
|
277
|
+
2. Gradually replace direct blockchain operations with preparation primitives
|
|
278
|
+
3. Implement external systems for blockchain publishing and storage
|
|
279
|
+
4. Enjoy increased flexibility and architectural control
|
|
280
|
+
|
|
281
|
+
---
|
|
7
282
|
|
|
8
283
|
## [3.2.0] - 2025-10-19
|
|
9
284
|
|