aboutsummaryrefslogtreecommitdiff
path: root/src/cryptonote_config.h (follow)
AgeCommit message (Collapse)AuthorFilesLines
2019-10-11blockchain: use effective median block weight for penalty from v12moneromooo-monero1-0/+1
It was using the raw block weight median, which was not what was intended in ArticMine's design
2019-10-08Merge pull request #5915luigi11111-1/+1
8330e77 monerod can now sync from pruned blocks (moneromooo-monero)
2019-09-27monerod can now sync from pruned blocksmoneromooo-monero1-1/+1
If the peer (whether pruned or not itself) supports sending pruned blocks to syncing nodes, the pruned version will be sent along with the hash of the pruned data and the block weight. The original tx hashes can be reconstructed from the pruned txes and theur prunable data hash. Those hashes and the block weights are hashes and checked against the set of precompiled hashes, ensuring the data we received is the original data. It is currently not possible to use this system when not using the set of precompiled hashes, since block weights can not otherwise be checked for validity. This is off by default for now, and is enabled by --sync-pruned-blocks
2019-09-25RandomX integrationHoward Chu1-0/+1
Support RandomX PoW algorithm
2019-09-17blockchain: enforce 10 block age for spending outputsmoneromooo-monero1-0/+1
Some custom wallet code apparently ignores this, which causes users of that code to be fingerprinted
2019-09-14Merge pull request #5823luigi11111-0/+3
26072f1 blockchain: forbid v1 coinbase from v12 (moneromooo-monero) 555dc7c core: from v12, require consistent ring size for mixable txes (moneromooo-monero) d22dfb7 blockchain: reject rct signatures in coinbase txes from v12 (moneromooo-monero)
2019-08-19blockchain: reject rct signatures in coinbase txes from v12moneromooo-monero1-0/+1
2019-08-19core: from v12, require consistent ring size for mixable txesmoneromooo-monero1-0/+1
We're supposed to have a fixed ring size now Already checked by MLSAG verification, but here seems more intuitive
2019-08-19blockchain: forbid v1 coinbase from v12moneromooo-monero1-0/+1
2019-08-15Merge pull request #5649luigi11111-0/+2
a182df2 Bans for RPC connections (hyc)
2019-07-17Added support for "noise" over I1P/Tor to mask Tx transmission.Lee Clagett1-0/+10
2019-06-16Bans for RPC connectionsHoward Chu1-0/+2
Make bans control RPC sessions too. And auto-ban some bad requests. Drops HTTP connections whenever response code is 500.
2019-04-23consensus: from v12, enforce >= 2 outputsmoneromooo-monero1-0/+1
2019-04-05cryptonote: rework block blob size sanity checkmoneromooo-monero1-2/+2
Use the actual block weight limit, assuming that weight is always greater or equal to size
2019-03-19Merge pull request #5199Riccardo Spagni1-0/+1
eef164f7 cryptonote_protocol_handler: search for syncing peers in "cruise mode" (moneromooo-monero)
2019-03-05Update 2019 copyrightbinaryFate1-1/+1
2019-03-04Merge pull request #5091Riccardo Spagni1-1/+1
123fc2a2 i2p: initial support (Jethro Grassie)
2019-03-04ArticMine's new block weight algorithmmoneromooo-monero1-0/+3
This curbs runaway growth while still allowing substantial spikes in block weight Original specification from ArticMine: here is the scaling proposal Define: LongTermBlockWeight Before fork: LongTermBlockWeight = BlockWeight At or after fork: LongTermBlockWeight = min(BlockWeight, 1.4*LongTermEffectiveMedianBlockWeight) Note: To avoid possible consensus issues over rounding the LongTermBlockWeight for a given block should be calculated to the nearest byte, and stored as a integer in the block itself. The stored LongTermBlockWeight is then used for future calculations of the LongTermEffectiveMedianBlockWeight and not recalculated each time. Define: LongTermEffectiveMedianBlockWeight LongTermEffectiveMedianBlockWeight = max(300000, MedianOverPrevious100000Blocks(LongTermBlockWeight)) Change Definition of EffectiveMedianBlockWeight From (current definition) EffectiveMedianBlockWeight = max(300000, MedianOverPrevious100Blocks(BlockWeight)) To (proposed definition) EffectiveMedianBlockWeight = min(max(300000, MedianOverPrevious100Blocks(BlockWeight)), 50*LongTermEffectiveMedianBlockWeight) Notes: 1) There are no other changes to the existing penalty formula, median calculation, fees etc. 2) There is the requirement to store the LongTermBlockWeight of a block unencrypted in the block itself. This is to avoid possible consensus issues over rounding and also to prevent the calculations from becoming unwieldy as we move away from the fork. 3) When the EffectiveMedianBlockWeight cap is reached it is still possible to mine blocks up to 2x the EffectiveMedianBlockWeight by paying the corresponding penalty. Note: the long term block weight is stored in the database, but not in the actual block itself, since it requires recalculating anyway for verification.
2019-02-26cryptonote_protocol_handler: search for syncing peers in "cruise mode"moneromooo-monero1-0/+1
When all our outgoing peer slots are filled, we cycle one peer at a time looking for syncing peers until we have at least two such peers. This brings two advantages: - Peers without incoming connections will find more syncing peers that before, thereby strengthening network decentralization - Peers will have more resistance to isolation attacks, as they are more likely to find a "good" peer than they were before
2019-01-30i2p: initial supportJethro Grassie1-1/+1
2019-01-28Adding initial support for broadcasting transactions over TorLee Clagett1-0/+1
- Support for ".onion" in --add-exclusive-node and --add-peer - Add --anonymizing-proxy for outbound Tor connections - Add --anonymous-inbounds for inbound Tor connections - Support for sharing ".onion" addresses over Tor connections - Support for broadcasting transactions received over RPC exclusively over Tor (else broadcast over public IP when Tor not enabled).
2019-01-28Merge pull request #5052Riccardo Spagni1-0/+1
b6534c40 ringct: remove unused senderPk from ecdhTuple (moneromooo-monero) 7d375981 ringct: the commitment mask is now deterministic (moneromooo-monero) 99d946e6 ringct: encode 8 byte amount, saving 24 bytes per output (moneromooo-monero) cdc3ccec ringct: save 3 bytes on bulletproof size (moneromooo-monero) f931e16c add a bulletproof version, new bulletproof type, and rct config (moneromooo-monero)
2019-01-22add a bulletproof version, new bulletproof type, and rct configmoneromooo-monero1-0/+1
This makes it easier to modify the bulletproof format
2019-01-22Pruningmoneromooo-monero1-0/+5
The blockchain prunes seven eighths of prunable tx data. This saves about two thirds of the blockchain size, while keeping the node useful as a sync source for an eighth of the blockchain. No other data is currently pruned. There are three ways to prune a blockchain: - run monerod with --prune-blockchain - run "prune_blockchain" in the monerod console - run the monero-blockchain-prune utility The first two will prune in place. Due to how LMDB works, this will not reduce the blockchain size on disk. Instead, it will mark parts of the file as free, so that future data will use that free space, causing the file to not grow until free space grows scarce. The third way will create a second database, a pruned copy of the original one. Since this is a new file, this one will be smaller than the original one. Once the database is pruned, it will stay pruned as it syncs. That is, there is no need to use --prune-blockchain again, etc.
2018-10-31Expose limit-rate defaults from command line helpRaskaRuby1-0/+2
2018-10-22blocks: use auto-generated .c files instead of 'LD -r -b binary'xiphon1-0/+1
2018-10-08Revert "Merge pull request #4472"Riccardo Spagni1-1/+0
This reverts commit 79d46c4d551a9b1261801960095bf4d24967211a, reversing changes made to c9fc61dbb56cca442c775faa2554a7460879b637.
2018-10-04blocks: use auto-generated .c files instead of 'LD -r -b binary'xiphon1-0/+1
2018-09-11v8: per byte fee, pad bulletproofs, fixed 11 ring sizemoneromooo-monero1-1/+5
2018-09-11Add a define for the max number of bulletproof multi-outputsmoneromooo-monero1-0/+2
2018-06-11cryptonote_config: add get_config to refactor x = testnet ? ↵stoffu1-0/+56
config::testnet::X : stagenet ? config::stagenet::X : config::X
2018-03-18core: fix use of uninitialised datamoneromooo-monero1-1/+2
2018-03-07Bump min ring size from 5 to 7 from v7moneromooo-monero1-0/+1
2018-03-05Stagenetstoffu1-0/+26
2018-03-05Use `genesis_tx` parameter in `generate_genesis_block`. #3261Jean Pierre Dudey1-1/+1
* src/cryptnote_config.h: The constant `config::testnet::GENESIS_TX` was changed to be the same as `config::GENESIS_TX` (the mainnet's transaction) because the mainnet's transaction was being used for both networks. * src/cryptonote_core/cryptonote_tx_utils.cpp: The `generate_genesis_block` function was ignoring the `genesis_tx` parameter, and instead it was using the `config::GENESIS_TX` constant. That's why the testnet genesis transaction was changed. Also five lines of unused code were removed. Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-02-07tx_pool: add a max pool size, settable with --max-txpool-sizemoneromooo-monero1-0/+1
2018-02-01txpool: increase unmined tx expiry to three daysmoneromooo-monero1-1/+1
2018-01-26Update 2018 copyrightxmr-eric1-1/+1
2017-10-16subaddress: change prefix so that it starts with 8kenshi841-1/+1
2017-10-15Merge pull request #2469Riccardo Spagni1-0/+3
7adceee6 precomputed block hashes are now in blocks of N (currently 256) (moneromooo-monero)
2017-10-07Subaddresseskenshi841-0/+2
2017-09-25Merge pull request #2458Riccardo Spagni1-1/+0
7f2f6ee1 protocol: remove hop count on block propagation (moneromooo-monero)
2017-09-18precomputed block hashes are now in blocks of N (currently 256)moneromooo-monero1-0/+3
This shaves a lot of space off binaries
2017-09-17protocol: remove hop count on block propagationmoneromooo-monero1-1/+0
It is unused, as it was apparently a future optimization, and it leaks some information (though since pools publish thei blocks they find, that amount seems small).
2017-09-05json serialization for rpc-relevant monero typesThomas Winget1-0/+2
Structured {de-,}serialization methods for (many new) types which are used for requests or responses in the RPC. New types include RPC requests and responses, and structs which compose types within those. # Conflicts: # src/cryptonote_core/blockchain.cpp
2017-08-17cryptonote_protocol: large block sync size before v4moneromooo-monero1-0/+1
2017-08-08Change default block sync size from 200 to 20moneromooo-monero1-1/+1
With the new sync algorithm, the network overhead will be masked as the thread adding blocks isn't interrupted by network calls anymore. This should reduce memory usage a lot during sync.
2017-05-05Merge pull request #1701Riccardo Spagni1-0/+1
8277e67f Add anchor connections (Miguel Herranz)
2017-03-15Add intervening v5 fork for increased min block sizemoneromooo-monero1-0/+5
Minimum mixin 4 and enforced ringct is moved from v5 to v6. v5 is now used for an increased minimum block size (from 60000 to 300000) to cater for larger typical/minimum transaction size. The fee algorithm is also changed to decrease the base per kB fee, and add a cheap tier for those transactions which we do not care if they get delayed (or even included in a block).
2017-03-03core: quantize per kB fee to 8 decimalsmoneromooo-monero1-0/+1
2017-02-21update copyright year, fix occasional lack of newline at line endRiccardo Spagni1-1/+1
2017-02-10Add anchor connectionsMiguel Herranz1-0/+1
Based on https://eprint.iacr.org/2015/263.pdf 4. Anchor connections. Peer list serialisation version bumped to 5.
2017-01-28Update and use blockchain data files definesMiguel Herranz1-2/+2
2016-11-11Merge pull request #1263Riccardo Spagni1-0/+3
d61bd81 add lightweight block propagation ("fluffy blocks") (Dion Ahmetaj)
2016-11-09add lightweight block propagation ("fluffy blocks")Dion Ahmetaj1-0/+3
Added a new command to the P2P protocol definitions to allow querying for support flags. Implemented handling of new support flags command in net_node. Changed for_each callback template to include support flags. Updated print_connections command to show peer support flags. Added p2p constant for signaling fluffy block support. Added get_pool_transaction function to cryptnote_core. Added new commands to cryptonote protocol for relaying fluffy blocks. Implemented handling of fluffy block command in cryptonote protocol. Enabled fluffy block support in node initial configuration. Implemented get_testnet function in cryptonote_core. Made it so that fluffy blocks only run on testnet.
2016-10-31core: dynamic fee algorithm from ArticMinemoneromooo-monero1-0/+4
The fee will vary based on the base reward and the current block size limit: fee = (R/R0) * (M0/M) * F0 R: base reward R0: reference base reward (10 monero) M: block size limit M0: minimum block size limit (60000) F0: 0.002 monero Starts applying at v4
2016-10-12Change default dust threshold to equal fee per kbAwfulCrawler1-1/+1
2016-09-15Decrease minimum fee from 0.01/kB to 0.002/kBmoneromooo-monero1-1/+2
The wallet will start using that fee about two weeks after hard fork 3, when most people will likely have updated their daemons.
2016-08-28add rct to the protocolmoneromooo-monero1-1/+1
It is not yet constrained to a fork, so don't use on the real network or you'll be orphaned or rejected.
2016-01-29Fix V1/V2 use of hard fork related parametersmoneromooo-monero1-3/+3
Some of it uses hardcoded height, which will need some thinking for next (voted upon) fork.
2015-12-31updated copyright yearRiccardo Spagni1-1/+1
2015-12-14Revert connection limit to more customary 8Javier Smooth1-1/+1
2015-11-23Add IP blocking for misbehaving nodes (adapted from Boolberry)Javier Smooth1-0/+5
With minor cleanup and fixes (spelling, indent) by moneromooo
2015-11-13More changes for 2-min blocksJavier Smooth1-1/+2
Use the correct block time for realtime fuzz on locktime Use the correct block time to calculate next_difficulty on alt chains (will not work as-is with voting) Lock unit tests to original block time for now
2015-11-13Adjust difficulty target (2 min) and full reward zone (60 kbytes) for block ↵Javier Smooth1-3/+5
version 2
2015-10-25Fix leak on real output when using a very recent outputmoneromooo-monero1-0/+1
The wallet and the daemon applied different height considerations when selecting outputs to use. This can leak information on which input in a ring signature is the real one. Found and originally fixed by smooth on Aeon.
2015-10-10from hard fork 2, claim a quantized reward in coinbasemoneromooo-monero1-0/+1
The small leftover is carried forward
2015-06-12Integrated addresses (standard address plus payment id)moneromooo-monero1-0/+2
2015-03-04minimum subsidy for mining incentives, remove unused LEGACY_FEE definesmooth1-3/+1
2015-01-08Merge pull request #206Riccardo Spagni1-0/+2
1b46226 std::atomic_flag has no copy/move constructor, can't have a vector (Thomas Winget) df53c0a small typo in previous commit (Thomas Winget) 4a53898 DNS seed timeout and fallback (Thomas Winget)
2015-01-02year updated in licenseRiccardo Spagni1-1/+1
2014-12-15DNS seed timeout and fallbackThomas Winget1-0/+2
2014-11-11Disable legacy fees for nowiamsmooth1-1/+1
2014-11-09Remove DEFAULT_FEE, add temporary acceptance of too-small per-kb fee >= 0.1, ↵iamsmooth1-2/+4
denominations based on DEFAULT_DUST_THRESHOLD, document fee arg to create_transactions as unused, se DEFAULT_DUST_THRESHOLD for wallet dust collection instead of calcualted tx fee
2014-11-06per kb feesThomas Winget1-0/+1
2014-09-15Change testnet prefixZachary Michaels1-2/+2
2014-09-15Separate testnet address prefixZachary Michaels1-1/+1
2014-09-15Add testnet genesis tx as output by CN referenceZachary Michaels1-1/+1
2014-09-15Reorganize testnet constantsZachary Michaels1-20/+32
2014-09-15Add testnet constantsZachary Michaels1-0/+16
2014-08-23quick additional patchfluffypony1-2/+1
2014-08-23quick fee ramp to prevent spam attackfluffypony1-3/+4
2014-07-23License updated to BSD 3-clausefluffypony1-3/+29
2014-06-26set max block size for gbtmydesktop1-0/+1
2014-06-15proper tx_pool handling from CryptoZoidberg / BBRfluffypony1-0/+2
2014-05-250.8.8updatemydesktop1-3/+3
2014-04-30mac osx building fixesmydesktop1-1/+1
2014-04-30voting stoppedthankful_for_today1-1/+1
2014-04-25Changed block minor versionHenry Hartshorne1-1/+1
2014-04-18Bitmonero releasethankful_for_today1-9/+10
2014-04-07Improvements in JSON RPCAntonio Juarez1-1/+1
2014-04-02json rpc for wallet and bugfixAntonio Juarez1-16/+16
2014-03-03moved all stuff to githubAntonio Juarez1-0/+82