1
0
Fork 0
forked from lthn/blockchain
Commit graph

3328 commits

Author SHA1 Message Date
Claude
467c64d015
feat: RandomX PoW, LWMA difficulty, stratum mining.* protocol, new genesis
Replace ProgPowZ with RandomX for ASIC-resistant proof-of-work. The
full dataset is initialized multi-threaded at startup with the key
"LetheanRandomXv1". Thread-local VMs are created on demand.

Switch difficulty algorithm from Zano's 720-block window to LWMA-1
(zawy12) with a 60-block window for much faster convergence after
hashrate changes. Target block time set to 10s for PoW.

Add standard stratum mining.* protocol handlers (subscribe, authorize,
submit, extranonce.subscribe) alongside existing EthProxy eth_*
handlers, with automatic protocol detection and mining.notify
translation for XMRig-based miners.

Generate fresh Lethean genesis block and premine wallet. Replace all
remaining hardcoded Zano addresses in tests with runtime-generated
keys to avoid prefix mismatches. Link RandomX library across all
build targets.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 13:22:25 +00:00
Snider
88d4357628
New API Interface (#27)
This pull request introduces a comprehensive new API interface for the blockchain, leveraging OpenAPI v3 to facilitate direct consumption of chain data by GUI and web applications. This change significantly refines the project's build infrastructure, incorporating Conan for dependency management and CMake for configuration, alongside the integration of an OpenAPI Generator to produce SDKs for multiple languages. 

### Highlights

* **New API Interface**: Introduced a new API interface using OpenAPI v3 to enable GUI/WEB development to consume chain data without needing custom server applications.
* **Build System Enhancements**: Significant updates to the build system, including Makefile, CMake, and Conan configurations, to streamline the build process and support new functionalities.
* **Multi-language SDK Generation**: Integrated OpenAPI Generator to automatically create SDKs for various programming languages, including Go, Angular, and PHP, simplifying client-side integration.
2025-10-19 19:12:37 +01:00
Snider
dd7a19ac6f Lower min build version for hardforks 05 and 06
Updated ZANO_HARDFORK_05_MIN_BUILD_VER and ZANO_HARDFORK_06_MIN_BUILD_VER from 382 to 2 to allow compatibility with older builds.
2025-10-05 21:10:34 +01:00
Snider
eb60d4519c Revert "Use actual remote port for async connection"
This reverts commit 3e2bad36a6.
2025-10-05 20:44:13 +01:00
Snider
3e2bad36a6 Use actual remote port for async connection
Replaces usage of node_data.my_port with context.m_remote_port when establishing an async connection, ensuring the correct remote port is used for peer connections.
2025-10-05 20:03:58 +01:00
Snider
7f930b0fec Capture remote_ip by value in try_ping lambda
The lambda in try_ping now captures remote_ip by value instead of accessing context.m_remote_ip directly. This ensures the correct IP is used even if the context changes before the lambda executes.
2025-10-05 18:01:59 +01:00
Snider
c8acc964e3
Testnet updates (#22) 2025-10-05 14:00:36 +01:00
Snider
763d70bec2
Testnet 1 (#15) 2025-09-30 16:48:13 +01:00
llebubell
b02addf264
Centralised chain config (#4) 2025-09-25 16:38:18 +01:00
Snider
2f1011e27c
Final Build Foundations (#11) 2025-09-25 00:25:52 +01:00
Snider
a03d081287
Build Improvements (#10) 2025-09-24 21:01:35 +01:00
Snider
2eaa599066
GitHub Build Workflows (#7) 2025-08-30 17:46:00 +01:00
zano build machine
b9d85e1c09 === build number: 427 -> 428 === 2025-08-13 17:09:03 +03:00
zano build machine
de5e0caebd === build number: 426 -> 427 === 2025-08-12 19:51:10 +03:00
sowle
91ced14b2d
ui update (PR 158) 2025-08-12 19:50:17 +03:00
zano build machine
d7d0ba0a41 === build number: 425 -> 426 === 2025-08-11 00:17:35 +03:00
sowle
11d4bbf1da
crypto: generate_system_random_bytes_* refactored: improved error handling, win32 version moved to BCrypt API, split into normal and _or_die funcs
Thanks to @gitToki for spotting the error handling issue!
2025-08-10 05:24:25 +03:00
sowle
b9b175c00f
ui update (PR 157) 2025-08-07 11:34:25 +03:00
sowle
3a9245f743
crypto::random refactoring and improvements (credits to @dimmarvel for spotting the thread safety issue) 2025-07-31 04:14:10 +03:00
sowle
a93aefd507
ui update (PR 156) 2025-07-24 18:27:55 +03:00
sowle
260228433c
=== build number: 424 -> 425 === 2025-07-24 18:07:42 +03:00
sowle
d78911b344
Merge branch 'release' into develop
# Conflicts:
#	src/version.h.in
#	src/wallet/wallet_rpc_server.cpp
2025-07-24 18:04:36 +03:00
sowle
d9557d3bb1
clang compilation fix 2025-07-24 13:56:36 +03:00
sowle
334d26a4ac
=== build number: 423 -> 424 === 2025-07-24 05:38:14 +03:00
sowle
035f233bc7
transfer_so implemented +minor code cleanup 2025-07-24 05:25:17 +03:00
sowle
cd16b5c743
=== build number: 422 -> 423 === 2025-07-23 19:21:02 +03:00
sowle
b57fa844ef
ui update (PR 154, 155) 2025-07-23 19:20:19 +03:00
sowle
4618c240f2
Merge branch 'release' into develop
# Conflicts:
#	src/version.h.in
#	src/wallet/wallet_rpc_server.cpp
2025-07-23 13:22:24 +03:00
sowle
3e71f078ca
gcc warnings fixed 2025-07-22 21:47:22 +03:00
sowle
06573647b8
=== build number: 421 -> 422 === 2025-07-22 14:57:55 +03:00
sowle
06d6553473
tx_comment is temporary disabled 2025-07-22 14:57:02 +03:00
sowle
2c920287d3
=== build number: 420 -> 421 === 2025-07-22 05:10:00 +03:00
sowle
b0e00c0803
Merge branch 'ip_blacklisting' into release 2025-07-22 05:09:07 +03:00
cryptozoidberg
b0b30e20b2
sender/receiver disabled 2025-07-21 21:54:13 +04:00
sowle
1b8cfa0194
Merge branch 'release' into develop
# Conflicts:
#	src/version.h.in
2025-07-21 15:10:54 +03:00
sowle
0c48a01fbf
=== build number: 419 -> 420 === 2025-07-21 14:53:20 +03:00
cryptozoidberg
71cc7d1363
renamed field 2025-07-21 15:17:40 +04:00
sowle
68871b93ec
p2p minor improvements 2025-07-20 22:54:32 +03:00
cryptozoidberg
32194f88b1
p2p network manual configuration from config file 2025-07-20 18:41:27 +04:00
sowle
854c198415
reverted sanity check improvement 2025-07-20 02:34:45 +03:00
sowle
23cf10a4b8
Merge remote-tracking branch 'origin/release' into develop 2025-07-19 23:49:58 +03:00
cryptozoidberg
0e1618c496
sanity check improved 2025-07-19 14:48:10 +04:00
Dmitry Matsiukhov
4695229f2a
fix warnings (#546)
* fix warnings

* refactoring
2025-07-18 20:17:02 +03:00
sowle
97b17221d9
=== build number: 418 -> 419 === 2025-07-18 13:39:01 +03:00
sowle
98f5880ae6
Merge branch 'release' into develop 2025-07-18 13:38:36 +03:00
sowle
6c318fc34b
minor fix to please clang 2025-07-17 21:05:08 +03:00
sowle
9e81e7228c
Merge branch 'release' into develop 2025-07-17 19:16:29 +03:00
sowle
556746c194
currency_protocol: there's no hop in this place anymore 2025-07-17 19:05:35 +03:00
sowle
ee883a690c
Merge branch 'release' into develop
# Conflicts:
#	src/wallet/wallet2.cpp
2025-07-17 15:39:00 +03:00
sowle
2edb2e6fe4
=== build number: 416 -> 417 === 2025-07-17 15:36:42 +03:00