Browse Source

They are called Hush Arrakis Chains (HACs) now

mvstuff
Duke 2 months ago
parent
commit
65c4c5c8de
  1. 4
      doc/hsc.md
  2. 2
      src/chainparams.cpp
  3. 2
      src/hush_bitcoind.h
  4. 2
      src/hush_utils.h
  5. 2
      src/init.cpp
  6. 2
      src/miner.cpp
  7. 2
      src/net.cpp
  8. 2
      src/pow.cpp
  9. 2
      src/wallet/asyncrpcoperation_sendmany.cpp

4
doc/hsc.md

@ -1,10 +1,10 @@
# Hush Smart Chains
# Hush Arrakis Chains
An overview of HSCs can be found here:
https://git.hush.is/hush/hush-smart-chains
Hush Smart Chains allow you to create a privacy coin with no custom C++ code, just running one command!
Hush Arrakis Chains allow you to create a privacy coin with no custom C++ code, just running one command!
The new coin that is created can use either Equihash PoW (ASIC or GPU) or RandomX PoW (CPU).
## HSC Creator

2
src/chainparams.cpp

@ -117,7 +117,7 @@ public:
consensus.nPowMaxAdjustDown = 32; // 32% adjustment down
consensus.nPowMaxAdjustUp = 16; // 16% adjustment up
// we are emulating old node behavior at startup, they used 150s
consensus.nPowTargetSpacing = 150; // 75; // HUSH is 75 seconds, Hush Smart Chains are 60 seconds by default
consensus.nPowTargetSpacing = 150; // 75; // HUSH is 75 seconds, Hush Arrakis Chains are 60 seconds by default
consensus.nPowAllowMinDifficultyBlocksAfterHeight = boost::none;
// HUSH never had Sprout in our blockchain history, but some internals require *knowing* about Sprout
// or it breaks backward compatibility. We do what we can.

2
src/hush_bitcoind.h

@ -948,7 +948,7 @@ CAmount GetBlockSubsidy(int nHeight, const Consensus::Params& consensusParams);
// This function defines the Hush Founders Reward (AKA Dev Tax)
// 10% of all block rewards go towards Hush core team
// If you do not like this, you are encouraged to fork the chain
// or start your own Hush Smart Chain: https://git.hush.is/hush/hush-smart-chains
// or start your own Hush Arrakis Chain: https://git.hush.is/hush/hush-smart-chains
// HUSH supply curve cannot be exactly represented via CLI args, so we do it ourselves.
// You specify the BR, and the FR % gets added so 10% of 12.5 is 1.25
// but to tell the AC params, I need to say "11% of 11.25" is 1.25

2
src/hush_utils.h

@ -1611,7 +1611,7 @@ uint64_t hush_block_subsidy(int height)
return subsidy;
}
// wrapper for more general supply curves of Hush Smart Chains
// wrapper for more general supply curves of Hush Arrakis Chains
uint64_t hush_sc_block_subsidy(int nHeight)
{
// Find current era, start from beginning reward, and determine current subsidy

2
src/init.cpp

@ -1128,7 +1128,7 @@ bool AppInit2(boost::thread_group& threadGroup, CScheduler& scheduler)
LogPrintf("%s: parameter interaction: -externalip set -> setting -discover=0\n", __func__);
}
// Read asmap file by default for HUSH3 and all Hush Smart Chains
// Read asmap file by default for HUSH3 and all Hush Arrakis Chains
if (GetArg("-asmap",1)) {
fs::path asmap_path = fs::path(GetArg("-asmap", ""));

2
src/miner.cpp

@ -1128,7 +1128,7 @@ void static RandomXMiner()
char randomxHash[RANDOMX_HASH_SIZE];
rxdebug("%s: created randomxHash of size %d\n", RANDOMX_HASH_SIZE);
char randomxKey[82]; // randomx spec says keysize of >60 bytes is implementation-specific
// initial randomx key is unique to every Hush Smart Chain, and has at least 9 bytes (2^9=128 bits) of entropy
// initial randomx key is unique to every Hush Arrakis Chain, and has at least 9 bytes (2^9=128 bits) of entropy
// since magic is 4 bytes, rpc port is 4 bytes and smart chain symbol must be at least 1 character long
snprintf(randomxKey, 81, "%08x%s%08x", ASSETCHAINS_MAGIC, SMART_CHAIN_SYMBOL, ASSETCHAINS_RPCPORT);

2
src/net.cpp

@ -2733,7 +2733,7 @@ bool CNode::GetTlsValidate()
{
if (tlsValidate == eTlsOption::FALLBACK_UNSET)
{
// This is useful for private Hush Smart Chains, that want to exist
// This is useful for private Hush Arrakis Chains, that want to exist
// on a closed VPN with an internal CA or trusted cert system, or
// various other use cases
if ( GetBoolArg("-tlsvalidate", false)) {

2
src/pow.cpp

@ -578,7 +578,7 @@ unsigned int CalculateNextWorkRequired(arith_uint256 bnAvg,
return bnNew.GetCompact();
}
// HUSH does not use these functions but Hush Smart Chains can opt-in to using more bleeding edge DAA's
// HUSH does not use these functions but Hush Arrakis Chains can opt-in to using more bleeding edge DAA's
// ASIC chains do not need these protections as much -- Duke Leto
unsigned int lwmaGetNextWorkRequired(const CBlockIndex* pindexLast, const CBlockHeader *pblock, const Consensus::Params& params)
{

2
src/wallet/asyncrpcoperation_sendmany.cpp

@ -363,7 +363,7 @@ bool AsyncRPCOperation_sendmany::main_impl() {
/**
* SCENARIO #0 (All HUSH and Hush Smart Chains)
* SCENARIO #0 (All HUSH and Hush Arrakis Chains)
* Sprout not involved, so we just use the TransactionBuilder and we're done.
* We added the transparent inputs to the builder earlier.
*/

Loading…
Cancel
Save