BLSCT SubAddressPool #27809

pull aguycalled wants to merge 754 commits into bitcoin:master from navcoin:blsct-keypool changing 1212 files +245815 −291358
  1. aguycalled commented at 8:06 AM on June 3, 2023: none

    This PR adds support for the use of a SubAddress pool and the generation of different receiving addresses.

    getnewaddress RPC method pulls addresses from the pool and shows to the requester receiving addresses.

    By default it generates addresses under account 0.

  2. kick off ci eb1519c50f
  3. Merge remote-tracking branch 'gogoex/replace-mcl-clear-with-memset' into tx-blsct-fields 85de8a75f7
  4. fix validation_flush_tests.cpp 6c7fca1587
  5. fix test/functional/feature_taproot.py fa770c8247
  6. remove test/.idea c224fd6744
  7. update qa-assets repo 23e4c8ec18
  8. remove psbt functional test 3236aa5ccf
  9. remove spaces 3f9748af31
  10. remove spaces 539c34cd64
  11. Merge pull request #109 from gogoex/replace-mcl-clear-with-memset
    Replace mclBnXX_clear with memset to avoid segfault in static context
    e218c7ffc1
  12. update test_runner.py 4dbc93ec7d
  13. update COIN_SIZE c739610f53
  14. revert change 4d2b49bd78
  15. test log 4c72302eba
  16. more log b929c9a2d2
  17. more log c584623f8d
  18. more log e8cec12f4f
  19. update MAX_COINS_CACHE_BYTES bce041ec71
  20. disable test 5a8a80617e
  21. disable whole test e306301b29
  22. fix fuzzer dec9aadc42
  23. remove exceptions from signature serialization 8f8805c181
  24. trigger ci 5f9f7f707e
  25. add <Import Project=common.props /> 7513f2077c
  26. add blsct tx fields to stringifiers and jsonifiers ca8c09e605
  27. optional blsct fields 5b24d90274
  28. update param name comment 9b7bd7f013
  29. add missing files in libbitcoinconsensus.vcxproj 8e70b1888e
  30. add common.props import to libbitcoinconsensus.vcxproj 5e3c28c5fd
  31. add missing secp256k1 include 28a9695db0
  32. trigger ci 82e73220bd
  33. changes at common.props 1e7e1608e3
  34. increase memory for fuzzer task c9625a865e
  35. increase cpu for fuzzer task 4a56903b1b
  36. increase cpus for vs task 40400e2444
  37. reduce cpus for vs task 42bec30e31
  38. reduce cpus for vs task d8a97210f0
  39. reduce cpus for vs task b495766946
  40. limit threads in common.init.vcxproj and increase again instance cpus 1eeff2a65f
  41. set number of threads as parameter for msbuild in cirrus.yml instead 691ec3dff8
  42. revert 233409bcad
  43. trigger ci 87a6ab9517
  44. optional extended range proof jsonifier cee1044b06
  45. Update mcl_scalar.cpp 4b90e91c25
  46. Update mcl_scalar.cpp 674bc160a0
  47. Merge pull request #107 from navcoin/tx-blsct-fields
    Add BLSCT Transaction fields
    d8abe5a8bc
  48. Merge remote-tracking branch 'btc/master' into btc-master
    	.cirrus.yml
    	.github/ISSUE_TEMPLATE.md
    	.github/ISSUE_TEMPLATE/bug_report.md
    	.github/ISSUE_TEMPLATE/good_first_issue.md
    	REVIEWERS
    	ci/test/00_setup_env_i686_centos.sh
    	ci/test/00_setup_env_native_fuzz_with_msan.sh
    	ci/test/00_setup_env_native_msan.sh
    	ci/test/00_setup_env_win64.sh
    	ci/test/06_script_b.sh
    	configure.ac
    	doc/design/assumeutxo.md
    	src/Makefile.am
    	src/Makefile.qt_locale.include
    	src/qt/*
    	test/functional/test_framework/test_framework.py
    c4a1e34476
  49. Merge branch 'master' into btc-master
     Conflicts:
    	src/bitcoind.cpp
    	src/coins.cpp
    	src/coins.h
    	src/core_io.h
    	src/crypto/muhash.cpp
    	src/rpc/rawtransaction.cpp
    	src/test/script_tests.cpp
    	src/test/sighash_tests.cpp
    	src/test/validation_flush_tests.cpp
    258b0094f8
  50. Merge remote-tracking branch 'btc/master' into btc-master
     Conflicts:
    	src/qt/bitcoin.cpp
    	src/qt/bitcoingui.cpp
    	src/qt/bitcoingui.h
    	src/qt/guiutil.cpp
    	src/qt/initexecutor.cpp
    	src/qt/transactionview.cpp
    	src/qt/transactionview.h
    	src/qt/walletview.cpp
    	src/qt/walletview.h
    98e914b9c7
  51. Updated src/bitcoind.cpp to match upstream changes (Something happened in the previous merge where changes were skipped/missed somehow) 7bff1ae95f
  52. Updated src/rpc/rawtransaction.cpp (Had to revert some changes in 'getrawtransaction' func to match upstream 5f6498133f
  53. Fixed missing 'bool extendedRangeProof' para in TxToUniv function declaration a9a35db766
  54. Added LIBMCL and LIBBLS to navcoin_chainstate_LDADD 1c507a5c07
  55. Updated return 0; to be return nullptr since this func does not return an (int) 54fc4a6971
  56. Removed some GUI related code 9e7fcbc55c
  57. Updated the $GOAL to be "install\ instead of "deploy" since we don't have a GUI anymore 5bb50b3cdb
  58. Merge pull request #110 from mxaddict/btc-master
    Btc master 15/03/2023
    4623cbf7d9
  59. Added dandelion to BCLog:: in logging.h and logging.cpp 6bdf18fe92
  60. Added probing test for Dandelion++ 551fa58117
  61. Updated Dandelion++ probing test 6b5787f972
  62. Updated logging.cpp to handle BCLog::DANDELION in std::string LogCategoryToStr(BCLog::LogFlags category) db2a33ba0b
  63. OCD ac804aaaa2
  64. Added dandelion loop behavior test 5df2eb118c
  65. Better testing for Dandelion++ probing 7a505db862
  66. Added tx network loop test for Dandelion++ 587ed9cc40
  67. Added blackhole testing for Dandelion++ 1207712aca
  68. Updated the loop behavior and probing Dandelion++ tests to not have retries as they seem to be reliable without it 2fe0e497d3
  69. Updated the loop behavior and probing Dandelion++ tests to not have retries as they seem to be reliable without it 52f73f8063
  70. Updated comments in Dandelion++ test cases 3f74c805ed
  71. Added the 3 new tests to test_runner.py b15780bb10
  72. Removed COINBASE_MATURITY from Dandelion++ tests as they were unused 0c1a239fd7
  73. Updated Dandelion++ py tests to not rely on time travel for the probing and loop tests, and just add permissions for relay/mempool to the peer to bypass mempool security checks and directly access tx from mempool 09dd641fb7
  74. Updated some comments on the Dandelion++ tests 03b43b53f9
  75. Fixed a typo 62288b642c
  76. Added new MSG and INV types for DTX and DWTX for Dandelion++ 4130f072b7
  77. Added IsMsgDtx() and IsMsgDwtx() to CInv as well as modify IsGenTxMsg() to check for MSG_{DTX,DWTX} ba688a6c69
  78. Added MSG_DTX and MSG_DWTX to python test suite tools 6a934fca02
  79. Updated probing test to have 3 nodes instead of 1 36b58ffb28
  80. Updated Dandelion++ probing test to use circular network connection structure f27af96c89
  81. Updated tests to have comments higher up 7792a59325
  82. Updated tests to run MSG_DTX and MSG_DWTX in each case 5264d05021
  83. Added static const DANDELION_* globals a203c54aa2
  84. Added embargo time for stem phase mempool entries where needed d71e835061
  85. Fixed nTime/nEmbargo values c4db92a4bb
  86. OCD 92a4ac5b28
  87. Added embargo checking to 446f6f7928
  88. Better logic for embargo checking 2b61f763fb
  89. Added new message type DTX to fuzz test 5f7596fa65
  90. Reverted a change to src/test/validation_block_tests.cpp f7951c5e47
  91. Fixed time calculation for the embargo time 022946ac12
  92. Added comment to fix lint/tidy test 78a5146a3a
  93. Fix persistence for mempool 611f08c701
  94. Updated test/functional/p2p_dandelionpp_blackhole.py to only test DWTX 6e2be1655d
  95. Implemented more logic related to Dandelion++ like the MSG_DTX and MSG_DWTX support, mempool support, etc... 3387a193e9
  96. Added sync_all calls to dandelion tests e695db671d
  97. Fixed the logs 162dcf66b9
  98. Added more logging a5b381f2ec
  99. Updates to the test cases 7d4e71cd20
  100. Dandelion++ updates, should be working as expected now 2a41331dd6
  101. Reverted the change to CTransactionRef PeerManagerImpl::FindTxForGetData a478a90080
  102. Fixed some lint/tidy issues e07e1fa7d3
  103. Updated tests accoding to lint suggestions 3bd7dcb7e2
  104. Updated ShuffleStemRoutes to attempt reshuffle when no peers are selected to run faster on startup scenario b07315f2e9
  105. Changed the GUARD for m_next_stem_peer_shuffle 82c031c9b0
  106. Removed m_peer_mutex guards from void ShuffleStemRoutes(const std::vector<CNode*>& nodes) 7a6722bee9
  107. Added exclusive lock for !m_peer_mutex to ShuffleStemRoutes function a1f11d0187
  108. Added locks for tx_relay->m_tx_inventory_mutex in ShuffleStemRoutes d03bc9169c
  109. Removed [gui] from cirrus build for macOs e01501544c
  110. Updated test to check for dwtx instead of just wtx 2d362b283c
  111. Added MSG_DTX and MSG_DWTX to CInv processing for p2p.py c220d6c07e
  112. Change from OR syntax to in array syntax for checking MSG_* values 6670b63d2c
  113. Fix for a failure with old nodes that was waiting for MSG_TX instead of MSG_DTX 1e02d50451
  114. Fixed failure in p2p_tx_privacy.py 89aac7ba3d
  115. Updated how IsMsgTx() and IsMsgWtx work and removed IsMsgDtx and IsMsgWdtx 3683c249e2
  116. removed bool has_embargo from void RelayTransaction() as it's no longer used and added -dandelion flag for disabling dandelion to speed up some of the functional tests 48ce878333
  117. Revert "Fixed failure in p2p_tx_privacy.py"
    This reverts commit 89aac7ba3d300bb894124cd11ec9ac23e90a9cf7.
    d68e84d063
  118. Revert "Fix for a failure with old nodes that was waiting for MSG_TX instead of MSG_DTX"
    This reverts commit 1e02d504516461c9ba30acb39b008210f4ab7c22.
    66a00adcae
  119. Revert "Updated test to check for dwtx instead of just wtx"
    This reverts commit 2d362b283c1881ccafaf194aecd84b1a0f603c65.
    00bbc6643b
  120. Added `-dandelion` flag to tests that needed them and disabled for the rest ab753de739
  121. General refactoring and tying up lose ends 66c657d87d
  122. Removed a log call that is no longer needed 5394d71dae
  123. Implemented the fluff chance logic to pass value to ProcessTransaction for incoming DTX data d4b6ba64b4
  124. Reverted a code change that was no longer relevant 1d65702a82
  125. Fixed issue where accept_time was always uninitilized in fuzz/tx_pool.cpp f437298913
  126. removed unnecesary call to .GetHash() on a txid var 05e6b7697d
  127. Cleaned up some log calls to be condensed 608602deb3
  128. Disabled ShuffleStemRoutes when -dandelion=false 9d02c984aa
  129. Updated some of the dandelion tests and added a new fluff test f59e6403a0
  130. More changes to fluff test for dandelion 0af9051f58
  131. change fDandelionEnabled into a function 9b21d32aa4
  132. Merge branch 'dandelion-fresh' of github.com:mxaddict/navcoin into HEAD f3fab01673
  133. Updated embargo logic 20aef0f9df
  134. Added msg_dtx 977691b101
  135. Updated fluff testing logic 7af306f0b7
  136. Updated comment 79045e19aa
  137. Removed MSG_DWTX as we no longer use it 2e8bae0260
  138. Added test/functional/p2p_dandelionpp_fluffing.py to test runner cd60eb4a12
  139. Updating probing test cc441b0406
  140. Updated loop test 2fa7539caf
  141. Updated blackhole test to use only 2 nodes, we are just testing for the tx embargo expiry b2174fe8c3
  142. Updated loop test case for dandelion 3021334a50
  143. Merge branch 'dandelion-fresh' of github.com:mxaddict/navcoin into dandelion-fresh e16ac70a3e
  144. Updated node 1 and node 2 in loop test to be non dandelion to speed up the test aaa45d47f6
  145. Added missing calls to LOCK m_send_stem 12d67512cc
  146. Updated comment on loop test 43d808355f
  147. Added new test for mempool leak for Dandelion++ 6c4d58554f
  148. Removed some locks that were already locked f0cd1a4a76
  149. Moved the LOCK call to fix a crash 1df10552c4
  150. Removed CInv from py test as it was not used 65528f1a1d
  151. Made blackhole and mempool_leak tests more reliable b7f1d3689c
  152. Added msg_dtx to on_message parsing 7c772bc9c4
  153. More robust testing for blackhole and mempool leak 25b51e3a86
  154. Moved DANDELION related const values to new header file called `dandelion.h` 102ed18536
  155. Fixed include guards 6a359051f4
  156. Removed todo, we should not add an emabargo for orphaned tx that will be re added to mempool acda0cd3a3
  157. Merge pull request #81 from mxaddict/dandelion-fresh
    Dandelion++ Implementation
    795a59e033
  158. Merge remote-tracking branch 'btc/master' into btc-master
     Conflicts:
    	ci/test/00_setup_env_native_tidy.sh
    	ci/test/06_script_b.sh
    	src/chainparams.cpp
    	test/functional/rpc_psbt.py
    81d40f7916
  159. Updated skip_if_no_bitcoind_tracepoints call to be skip_if_no_navcoind_tracepoints 42eea14624
  160. Merge pull request #113 from mxaddict/btc-master
    Bitcoin upstream changes 24/03/2023
    f55303bf94
  161. Changes in serialization of transactions 14dbc73edb
  162. update test framework tx (de)serialization 6980f93a46
  163. trigger ci 66c974345a
  164. Merge pull request #114 from navcoin/improvements-serialization
    Changes in serialization of transactions
    6d1c3ed50e
  165. fix elements serialization cdfccb8df9
  166. Removed more GUI related depends configs 821d7b178a
  167. Merge pull request #115 from navcoin/fix-ser-elements
    Fix serialisation of Elements class
    104f453c65
  168. add working changes 7e5bebe8f6
  169. drop debug prints 9a0374712a
  170. add mistakenly dropped blockfiler.h in Makefile 37224ea77e
  171. fix typo 6bea4e743f
  172. fix typo 8ccb84130c
  173. fix typo 33754ab5b1
  174. replace sprintf w/ ostringstream. lower N in set mem proof setup d30f770815
  175. delete mistakenly copied file 1fea22bab4
  176. invoke ci 893919b85a
  177. improve verifying equations doc 5b2c52793e
  178. use bold font for vectors in verifying equations doc 76513a4198
  179. rename unity to zero 5374916241
  180. add bad input test case for set mem proof prover 6bdb3ad604
  181. invoke ci 1e583e8ec0
  182. create initial state of fiat-shamir with existing elements 608d7c29fb
  183. change comment 516a14ad28
  184. wip 9e12959d7e
  185. revert changes for testing d709665caf
  186. invoke ci 093dc2baac
  187. remove vector from de/serialization of elements 8c5dba36f1
  188. remove unused vector variable abf6280245
  189. remove maybe-uninitialized warning 98fba1d40f
  190. add elements de/serialization tests 1cd0890f48
  191. add scalar size check to test_serialize of elements_tests 1d33d4b699
  192. calculate inverses of xs in IIPA in one place 11d1e324db
  193. use more efficient algorithm in Element.Invert 1daf8c5717
  194. fix typo 021c603c71
  195. make generator deriver const and rename 105d459633
  196. generate c_factor with fiat-shamir and remove it from SetMemProof 08520beffb
  197. Merge pull request #118 from mxaddict/removed-qrencode-gui-from-depends
    Removed more GUI related depends configs
    c7b74828b5
  198. clean up Elements.Invert() d8767a6026
  199. add == and != operator overloads to SetMemProof and RangeProof and add th tests. Add deser test to RangeProof c34dc32478
  200. use fiat-shamir in place of str 9d2223b433
  201. rename transcript_gen to fiat_shamir. use fiat-shamir macros in range proof 8ba5e0c7a7
  202. add additional tests cases to set mem prover bf28d20126
  203. add set mem proof prover test case 9e5a4e0bf1
  204. fiat-shamir retry upon verification as well e35af47c43
  205. wip 6d1c7ca20b
  206. factor out pedersen commitment code to a class d77c84ec6e
  207. drop number of tries check in range proof prove 1fb3cacf71
  208. rename config to range proof setup 76aa226030
  209. integrate pedersen commitment generated for set membership proof to its setup class a1a4a15eb2
  210. invoke ci d9758da5fe
  211. fix elements invert for sanitizer error 1e4111cb53
  212. attempt to fix ci error 5f7b799076
  213. fix tests bef510d113
  214. fix tests 12f8b63eab
  215. make SetMemProofSetup::Get thread safe ce24fc4271
  216. make is_initialized class static variable b11b576ca0
  217. extend ys on verify side as well ec837f0af9
  218. make input power of 2 in the failing test f004117bd3
  219. Merge pull request #119 from gogoex/set-membership-proof
    Add set membership proof classes
    874dd0d373
  220. BLSCT Wallet KeyManager 672ca852c8
  221. Merge remote-tracking branch 'btc/master' into btc-master 48e9b89da5
  222. fixes 0b7c60ed47
  223. remove unused var 10d29a3b47
  224. remove unused fSkipCheck 9531d6094a
  225. add EXCLUSIVE_LOCKS_REQUIRED(cs_KeyStore); 35cde31625
  226. fix SetupBLSCTKeyMan caf0551ff9
  227. fixes src/wallet d864fcf8c6
  228. fix test/functional/tool_wallet.py 0293d4741e
  229. Merge pull request #116 from mxaddict/btc-master
    Upstream changes 05/11/2023
    03d181a3af
  230. Merge remote-tracking branch 'origin/master' into blsct-wallet-keygen 83158e0956
  231. Address ad4f9d7948
  232. walletload_test 53e4f49ad2
  233. fix headers 8066fe1798
  234. fixes abbb783e08
  235. add blsct::DoublePublicKey to ConsumeTxDestination 0271edd11b
  236. change constructors returned values 0c76785b44
  237. consume mclscalar 8ecb5f46fe
  238. m_blsct_key_manager d2bdc7bd4e
  239. do not move 5664d4cf5e
  240. do not return rand scalar when consuming in fuzzer 352d7026c5
  241. remove iszero check 984c8ac159
  242. remove iszero check test 34f9fa635e
  243. Fix doublepublickey encoding b8ab4a924f
  244. add log 1376adf52f
  245. remove log 876c3219fe
  246. unique_ptr for m_blsct_key_manager 5809e3e92a
  247. use std::move 975a711399
  248. Merge pull request #120 from navcoin/blsct-wallet-keygen
    BLSCT Wallet KeyManager
    6a8e55f3da
  249. BLSCT SubAddressPool 27d5e48f1e
  250. DrahtBot commented at 8:06 AM on June 3, 2023: contributor

    <!--e57a25ab6845829454e8d69fc972939a-->

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

  251. Remove unnecessary return 13b4977bae
  252. Retrigger CI d323020e76
  253. fanquake closed this on Jun 3, 2023

  254. bitcoin locked this on Jun 2, 2024
Contributors

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-29 03:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me