From da46d48f1d6aab0682b966ab97968024d17eb6da Mon Sep 17 00:00:00 2001 From: Duke Date: Wed, 28 Jun 2023 08:46:47 -0400 Subject: [PATCH] Use 20 different taddrs/scriptpubs for testing dedevtax --- src/hush_globals.h | 41 +++++++++++++++++++++-------------------- util/gen_scriptpubs.pl | 28 ++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 20 deletions(-) create mode 100755 util/gen_scriptpubs.pl diff --git a/src/hush_globals.h b/src/hush_globals.h index 00d31f113..5b52155d8 100644 --- a/src/hush_globals.h +++ b/src/hush_globals.h @@ -284,27 +284,28 @@ uint64_t hush_current_supply(uint32_t nHeight) // the number of different devtax addresses/scriptpubs const uint32_t DEVTAX_NUM = 20; //TODO: production data + std::string DEVTAX_DATA[DEVTAX_NUM][2] = { -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, -{"RNnG51zYfnHk4dpNdVjjRGZ1RcV4cuMa95", "76a914941907aa5f85952bc8deff20f1e50aa676a2d8dd88ac"}, +{"RYL7P8UvJMQVFuNPz91jeq4TmBv5CAej3L", "76a914fcd8387af3ddfa3dccfc4c5fcc603a6ac6bb68c788ac"}, +{"RYMRJdP3xE8u3UfnPxGXt8y3zyvfJD6iS4", "76a914fd1798f1daa9db1a51b7008ed8595a38bd0578ae88ac"}, +{"RR7xJv69GtdePoyR91eHyAHh28kYAnY7bx", "76a914adc2c66f0a5ca17c38d645b32ceb7ac53c7f4d4a88ac"}, +{"RC8SkshVk9BxCJD3C3bYz6D5cBmXNtuxSj", "76a9141f40e303a47dbecb3e4a3adc2703ac35ae69df2288ac"}, +{"RRWSxaXahpyGrM8kuMEyitgfqZDopBFkYq", "76a914b203d771299fc7317f4c9d931ff56b07b9e0dd3b88ac"}, +{"RQqc39iRnwMbveLj3FRMpCa2CydRhnZsGV", "76a914aaab329b9e19f646f291079ec613d3ea73d520b888ac"}, +{"RSGF5nvmeePrxx7rTwGKUfMapfJ8quPEqf", "76a914ba4c3b09bb775ce40055a269c1e242ea4e7a916388ac"}, +{"RM1emY6avf5aJ17EvuGdxcNeseUFMp6HgM", "76a91480b1223b72f67a5729157948607bff335cc1e38b88ac"}, +{"RNDpw9DAiTM17ap8P5XMbeQmt7bLL6NEnc", "76a9148df6bca3744ee12a8caa39444bf3325997ff3eca88ac"}, +{"RJ7XsqfYatNgxVSoVPQFckhSiUzwqySaPh", "76a91460e57fe250719088391430421746f6f2c45795e788ac"}, +{"REHbigWNsGcmgkyNcJpBwpCrM2XkEqGxab", "76a91436ec5cfe756a35fa5f2fd059ae4b76fbe6baa85a88ac"}, +{"RPiWKtmkF7v6ms8GKZXLU1tEftRHeTushj", "76a9149e5b64807a87e5df1d3601eb0244b5a42f8f34b988ac"}, +{"RB6k2YBay7BmzcmJyaKNWBrHueWcX1D3vj", "76a91413f6586b53a11b9b2e197dabfb5aa261d0b7419c88ac"}, +{"RBQwd9U5VVtDxJzPggGGYivmSvsF2Mo6FV", "76a9141767835cbf20b4dc1300e6c3b983a246c1b1f65088ac"}, +{"RAWpKV2s34ZMDa5CySP7K5WsziBmLvR1u5", "76a9140d8bc91d908f52526e872ff3174a5cd644bb99b688ac"}, +{"RXwfnPpdaS5S1NHfRBVqdKf2reogjcn3CN", "76a914f899b359ed9a0a4b030c63961295972eaeb1f50488ac"}, +{"RMoGypC7yXefJzEkUsTnaRJGdM5ec6spBA", "76a9148952147a2dd0f3961c6704b4a2092724a04596ce88ac"}, +{"RTdpeFNcwxEkU2FM4nrweyEGVD2xfdPfxB", "76a914c9591b111bf40716dc7f92b99f8881bc1391fb1f88ac"}, +{"RBGHsu1LqDpg7wXEQvVZnZvCRLAUGEjHDb", "76a91415c4ad4b91f2a2217be02a2c25ebfa7afc237cc488ac"}, +{"RDLBJaf1Kz2F9FeznLomKjm7TtKvhSGqfb", "76a9142c711ab35a2b6245c6b9d5fac16e230ac7287caa88ac"}, }; // this is a deterministic consensus-changing function. All miners must be able diff --git a/util/gen_scriptpubs.pl b/util/gen_scriptpubs.pl new file mode 100755 index 000000000..765bca54c --- /dev/null +++ b/util/gen_scriptpubs.pl @@ -0,0 +1,28 @@ +#!/usr/bin/perl +# Copyright (c) 2016-2023 The Hush developers +# Distributed under the GPLv3 software license, see the accompanying +# file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html +use warnings; +use strict; +use JSON; + +# Generates taddrs/scriptpubs for testing the decentralized devtax +# all generated taddrs/scriptpubs will be part of existing wallet.dat + +my $N = shift || 20; +my $hush = "./src/hush-cli"; +my $getnew = "$hush getnewaddress"; +my $validate = "$hush validateaddress"; + +print "std::string DEVTAX_DATA[DEVTAX_NUM][2] = {\n"; + +for my $i (1 .. $N) { + my $taddr = qx{$getnew}; + chomp $taddr; + my $j = qx{$validate $taddr}; + my $json = decode_json($j); + my $scriptpub = $json->{scriptPubKey}; + printf qq!{"%s", "%s"},\n!, $taddr, $scriptpub; +} + +print "};\n";