Whilst the first quarter of the year was very much development-focused, the second quarter of the year was much more about getting on more exchanges. That isn’t to say there hasn’t been any development work – Far from it!
Before we get started, here is an overview of what we’ve been up to over the past 3 months so far:
EXCHANGES
• 4th April – Binance Listing https://twitter.com/GroestlcoinTeam/status/981458700115369984
• 6th April – CoinBit (Korean) Exchange Launches with GRS + 18,000 GRS giveaway https://twitter.com/GroestlcoinTeam/status/982557759681056769
• 9th April – SistemKoin (Turkish) Exchange Listing, USD&TRY pair https://twitter.com/GroestlcoinTeam/status/983312677526228992
• 11th April – CoinRail (Korean) Exchange Listing https://twitter.com/GroestlcoinTeam/status/983962884186234880
• 12th April - FuBT.Top (Hong Kong) Exchange Listing with 8000 GRS & 5x iPhone X giveaway https://twitter.com/GroestlcoinTeam/status/984325248156946433
• 13th April – Stocks.Exchange Exchange Listing https://twitter.com/GroestlcoinTeam/status/984688857600987136
• 4th May – OOOBTC (Singapore) Exchange Listing https://twitter.com/GroestlcoinTeam/status/992300595624067078
• 4th May – Neraex (Japanese) Exchange Listing https://twitter.com/GroestlcoinTeam/status/992314198943137792
• 14th May – Xchange.Me (No Registration) Listing https://twitter.com/GroestlcoinTeam/status/996041025704603653
• 15th May – All Shopify Merchants can now accept GRS Payments via the CoinPayments platform https://twitter.com/GroestlcoinTeam/status/996374887718686720
• 18th May – Easyrabbit (Anonymous, no Registration) Listing https://twitter.com/GroestlcoinTeam/status/997528581482995712
• 20th May - QIEX (Hong Kong) Exchange Listing with Fiat Pairs https://twitter.com/GroestlcoinTeam/status/997990300764262405
• 26th May - CoinDelta (Indian) Exchange Listing https://twitter.com/GroestlcoinTeam/status/1000410119757279233
• 30th May - Flyp.me (No Registration) Exchange Listing https://twitter.com/GroestlcoinTeam/status/1001805919280418817
• 1st June - Godex (No Registration) Exchange Listing https://twitter.com/GroestlcoinTeam/status/1002505924995637248
• 6th June – ChainRift Launches – New exchange with GRS featured https://twitter.com/GroestlcoinTeam/status/1004335928184369152
• 7th June – InstaSwap (No registration) Exchange Listing https://twitter.com/GroestlcoinTeam/status/1004813242441654272
• 12th June – KoinOK (Indian) Exchange Listing https://twitter.com/GroestlcoinTeam/status/1006542002484326400
That is 17 new exchanges in the past 3 months! Of course, Binance being the most exciting and thus causing the most excitement. It is great to know that when the bulls are back, they will have plenty of choice of where to trade Groestlcoin!
GROESTLCOIN DEVELOPMENT RELEASE
GROESTLCOIN CORE v2.16.0
Groestlcoin Core v2.16.0 is now available for download and brings both new features, bug fixes, and UI improvements, so it is recommended to upgrade to it if you are running a full node or local Groestlcoin Core Wallet.
We would like to quickly thank all exchanges, pools and services for upgrading diligently and before our release, all have upgraded smoothly and diligently.
What’s new?
This is a major release of Groestlcoin Core with many protocol-level improvements and code optimisations, featuring the technical equivalent of Bitcoin v0.16.0 but with Groestlcoin-specific patches. In summary, this update makes the Core wallet faster, prettier, cheaper and introduces great new control featuresand includes support to send/receive to/from BECH32 and SEGWIT addresses.
- Default transaction version bumped from 1 to 2
- QT Version upgraded
- Updated Splash Screen for Mainnet and Testnet
- Icons Overhauled to Groestlcoin colours
- Translations updated
- Minimum fee reduced
- Static builds for all platforms will be compiled from this release onwards
- Validation speed and network propagation performance have been greatly improved, leading to much shorter sync and initial block download times
- The script signature cache has been reimplemented as a "cuckoo cache", allowing for more signatures to be cached and faster lookups
- Assumed-valid blocks have been introduced which allows script validation to be skipped for ancestors of known-good blocks, without changing the security model
- In some cases, compact blocks are now relayed before being fully validated as per BIP152
- P2P networking has been refactored with a focus on concurrency and throughput. Network operations are no longer bottlenecked by validation. As a result, block fetching is several times faster than previous releases in many cases
- The UTXO cache now claims unused mem-pool memory. This speeds up initial block download as UTXO lookups are a major bottleneck there, and there is no use for the mem-pool at that stage
- Groestlcoin Core has supported automatically pruning the blockchain since 2.11.0 Pruning the blockchain allows for significant storage space savings as the clear majority of the downloaded data can be discarded after processing so very little of it remains on the disk. Manual block pruning can now be enabled by setting `-prune=1`. Once that is set, the RPC command `pruneblockchain` can be used to prune the blockchain up to the specified height or timestamp.
- The `getinfo` RPC command has been deprecated. Each field in the RPC call has been moved to another command's output with that command also givingadditional information that `getinfo` did not provide
- Previously the ZeroMQ notification system was unavailable on Windows due to various issues with ZMQ. These have been fixed upstream and now ZMQ can be used on Windows.
- The ability to nest RPC commands has been added to the debug console. This allows users to have the output of a command become the input to another command without running the commands separately. The nested RPC commands use bracket syntax (i.e. `getwalletinfo()`) and can be nested (i.e. `getblock(getblockhash(1))`). Simple queries can be done with square brackets where object values are accessed with either an array index or a non-quoted string (i.e. `listunspent()[0][txid]`). Both commas and spaces can be used to separate parameters in both the bracket syntax and normal RPC command syntax
- An RPC command and GUI toggle have been added to enable or disable all p2p network activity. The network status icon in the bottom right-hand corner is now the GUI toggle. Clicking the icon will either enable or disable all p2p network activity. If network activity is disabled, the icon will be greyed out with an X on top of it.
Additionally, the `setnetworkactive` RPC command has been added which does the same thing as the GUI icon. The command takes one Boolean parameter, `true` enables networking and `false` disables it. - When Groestlcoin Core is out-of-sync on start-up, a semi-transparent information layer will be shown over top of the normal display. This layer contains details about the current sync progress and estimates the amount of time remaining to finish syncing. This layer can also be hidden and subsequently unhidden by clicking on the progress bar at the bottom of the window.
- Commands sent over the JSON-RPC interface and through the `groestlcoin-cli` binary can now use named arguments. This follows the [JSON-RPC specification] (http://www.jsonrpc.org/specification) for passing parameters by-name with an object. `groestlcoin-cli` has been updated to support this by parsing `name=value` arguments when the `-named` option is given. Some examples:
- src/groestlcoin-cli -named help command="help"
- src/groestlcoin-cli -named getblockhash height=0
- src/groestlcoin-cli -named getblock blockhash=0000000000000036ae5aabb18a2d345d19d60ba1927f071af2aa8eec7a27d41d
- src/groestlcoin-cli -named sendtoaddress address="(snip)" amount="1.0" subtractfeefromamount=true
The order of arguments doesn't matter in this case. Named arguments are also useful to leave out arguments that should stay at their default value. The rarely-used arguments `comment` and `comment_to` to `sendtoaddress`, for example, can be left out. However, this is not yet implemented for many RPC calls, this is expected to land in a later release. The RPC server remains fully backwards compatible with positional arguments.
- The debug console maintains a history of previously entered commands that can be accessed by pressing the Up-arrow key so that users can easily reuse previously entered commands. Commands which have sensitive information such as passphrases and private keys will now have a `(...)` in place of the parameters when accessed through the history
- After resetting the options by clicking the `Reset Options` button in the options dialogue or with the `-resetguioptions` start-up option, the user will be prompted to choose the data directory again. This is to ensure that custom data directories will be kept after the option reset which clears the custom data directory set via the choose datadirdialogue
- Multiple peers can now be selected in the list of peers in the debug window. This allows for users to ban or disconnect multiple peers simultaneously instead of banning them one at a time
- An indicator has been added to the bottom right-hand corner of the main window to indicate whether the wallet being used is an HD This icon will be greyed out with an X on top of it if the wallet is not an HD wallet.
- UTXO set query (`GET /rest/getutxos/<checkmempool>/<txid>-<n>/<txid>-<n>/.../<txid>-<n>.<bin|hex|json>`) responses were changed to return status code `HTTP_BAD_REQUEST` (400) instead of `HTTP_INTERNAL_SERVER_ERROR` (500) when requests contain invalid parameters
- Since the changes in 2.13.3 to automatically limit the size of the mempool and improve the performance of block creation in mining code it has not been important for relay nodes or miners to set `-minrelaytxfee`. With this release the following concepts that were tied to this option have been separated out:
- Incremental relay fee used for calculating BIP 125 replacement and mempool (1000 GROs/kB)
- Calculation of threshold for a dust output. (effectively 3 * 1000 GROs/kB)
- Minimum fee rate of a package of transactions to be included in a block created by the mining code. If miners wish to set this minimum they can use the new `-blockmintxfee` option. (defaults to 1000 gros/kB)
The `-minrelaytxfee` option continues to exist but is recommended to be left unset.
- Since 2.13.3 fee estimation for a confirmation target of 1 block has been disabled. The fee slider will no longer be able to choose a target of 1 block. This is only a minor behaviour change as there was often insufficient data for this target anyway. `estimatefee 1` will now always return -1 and `estimatesmartfee 1` will start searching at a target of 2
- The default target for fee estimation is changed to 6 blocks in both the GUI (previously 25) and for RPC calls (previously 2)
- Peers manually added through the `-addnode` option or `addnode` RPC now have their own limit of eight connections which does not compete with other inbound or outbound connection usage and is not subject to the limitation imposed by the `-maxconnections` option
- New connections to manually added peers are performed more quickly
- A significant portion of the initial block download time is spent verifying scripts/signatures. Although the verification must pass to ensure the security of the system, no other result from this verification is needed: If the node knew the history of a given block were valid it could skip checking scripts for its ancestors.
- A new configuration option 'assumevalid' is provided to express this knowledge to the software. Unlike the 'checkpoints' in the past, this setting does not force the use of a particular chain: chains that are consistent with it are processed quicker, but other chains are still accepted if they'd otherwise be chosen as best. Also, unlike 'checkpoints' the user can configure which block history is assumed true, this means that even outdated software can sync more quickly if the setting is updated by the user
- Because the validity of a chain history is a simple objective fact it is much easier to review this setting. As a result, the software ships with a default value adjusted to match the current chain shortly before release. The use of this default value can be disabled by setting -assumevalid=0
- Before 2.16, `fundrawtransaction` was by default wallet stateless. In almost all cases `fundrawtransaction` does add a change-output to the outputs of the funded transaction. Before 2.16, the used keypool key was never marked as a change-address key and directly returned to the keypool (leading to address reuse). Before 2.16, calling `getnewaddress` directly after `fundrawtransaction` did generate the same address as the change-output address
- Since 2.16, fundrawtransaction does reserve the change-output-key from the keypool by default (optional by setting `reserveChangeKey`, default =`true`)
- Users should also consider using `getrawchangeaddress()` in conjunction with `fundrawtransaction`'s `change address` option
- Before 2.16, memory reserved for mempool (using the `-maxmempool` option) went unused during initial block download or IBD. In 2.16, the UTXO DB cache (controlled with the `-dbcache` option) borrows memory from the mempool when there is extra memory available. This may result in an increase in memory usage during IBD for those previously relying on only the `-dbcache` option to limit memory during that time
- In previous versions, getblocktemplate required segwit support from downstream clients/miners once the feature activated on the network. In this version, it now supports non-segwit clients even after activation, by removing all segwit transactions from the returned block template. This allows non-segwit miners to continue functioning correctly even after segwit has activated
- Due to the limitations in previous versions, getblocktemplate also recommended non-segwit clients to not signal for the segwit version-bit. Since this is no longer an issue, getblocktemplate now always recommends signalling segwit for all miners. This is safe because the ability to enforce the rule is the only required criteria for safe activation, not actually producing segwit-enabled blocks
- Memory usage for the UTXO cache is being calculated more accurately so that the configured limit (`-dbcache`) will be respected when memory usage peaks during cache flushes. The memory accounting in prior releases is estimated to only account for half the actual peak utilization
- The default `-dbcache` has also been changed in this release to 450MiB. Users who currently set `-dbcache` to a high value (e.g. to keep the UTXO more fully
- cached in memory) should consider increasing this setting to achieve the same cache performance as prior releases. Users on low-memory systems (such as systems with 1GB or less) should consider specifying a lower value for this parameter
- Bundled miniupnpc was updated to 2.0.20170509. This fixes an integer signedness error (present in MiniUPnPc v1.4.20101221 through v2.0) that allows remote attackers (within the LAN) to cause a denial of service or possibly have unspecified other impacts. This only affects users that have explicitly enabled UPnP through the GUI setting or through the `-UPnP` option, as since the last UPnP vulnerability (in Groestlcoin Core 2.1.0.6) it has been disabled by default. If you use this option, it is recommended to upgrade to this version as soon as possible
- The chainstate database (which is used for tracking UTXOs) has been changed from a per-transaction model to a per-output model. Advantages of this model are that it:
- Avoids the CPU overhead of deserializing and serializing the unused outputs;
- Has more predictable memory usage;
- Uses simpler code;
- Is adaptable to various future cache flushing strategies.
As a result, validating the blockchain during Initial Block Download (IBD) and reindex is ~30-40% faster, uses 10-20% less memory, and flushes to disk far less frequently. The only downside is that the on-disk database is 15% larger. During the conversion from the previous format, a few extra gigabytes may be used.
- Earlier versions experienced a spike in memory usage while flushing UTXO updates to disk. As a result, only half of the available memory was used as a cache, and the other half was reserved to accommodate flushing. This is no longer the case, and the entirety of the available cache (see `-dbcache`) is now actually used as cache. This reduces the flushing frequency by a factor of 2 or more
- In previous versions, signature validation for transactions has been cached when the transaction is accepted to the mempool. Version 2.16 extends this to cache the entire script validity. This means that if a transaction in a block has already been accepted to the mempool, the scriptSig does not need to be re-evaluated. Empirical tests show that this results in new block validation being 40-50% faster
- LevelDB has been upgraded to version 1.20. This version contains hardware acceleration for CRC on architectures supporting SSE 4.2. As a result, synchronization and block validation are now faster
- Refill of the keypool no longer flushes the wallet between each key which resulted in a ~20x speedup in creating a new wallet. Part of this speedup was used to increase the default keypool to 1000 keys to make recovery more robust
- Fee estimation has been significantly improved in version 2.16, with more accurate fee estimates used by the wallet and a wider range of options for advanced users of the `estimatesmartfee` and `estimaterawfee` RPCs
- Internally, estimates are now tracked on 3 different time horizons. This allows for longer targets and means estimates adjust more quickly to changes in conditions
- Estimates can now be conservative or economical. Conservative estimates use longer time horizons to produce an estimate which is less susceptible to rapid changes in fee conditions. Economical estimates use shorter time horizons and will be more affected by short-term changes in fee conditions. Economical estimates may be considerably lower during periods of low transaction activity (for example over weekends), but may result in transactions being unconfirmed if prevailing fees increase rapidly
- By default, the wallet will use conservative fee estimates to increase the reliability of transactions being confirmed within the desired target. For transactions that are marked as replaceable, the wallet will use an economical estimate by default, since the fee can be 'bumped' if the fee conditions change rapidly
- Estimates can now be made for confirmation targets up to 1008 blocks (one day)
- More data on historical fee rates is stored, leading to more precise fee estimates
- Transactions which leave the mempool due to eviction or other non-confirmed reasons are now considered by the fee estimation logic, leading to more accurate fee estimates
- The fee estimation logic will make sure enough data has been gathered to return a meaningful estimate. If there is insufficient data, a fallback default fee is used
- The `estimatefee` RPC is now deprecated in favour of using only `estimatesmartfee` (which is the implementation used by the GUI)
- The `estimatesmartfee` RPC interface has been changed:
- - The `nblocks` argument has been renamed to `conf_target` (to be consistent with other RPC methods).
- - An `estimate_mode` argument has been added. This argument takes one of the following strings: `CONSERVATIVE`, `ECONOMICAL` or `UNSET` (which defaults to `CONSERVATIVE`).
- - The RPC return object now contains an `errors` member, which returns errors encountered during processing.
- - If Groestlcoin Core has not been running for long enough and has not seen enough blocks or transactions to produce an accurate fee estimation, an error will be returned (previously a value of -1 was used to indicate an error, which could be confused for a feerate).
- A new `estimaterawfee` RPC is added to provide raw fee data. External clients can query and use this data in their own fee estimation logic.
Groestlcoin Core now supports loading multiple, separate wallets. The wallets are completely separated, with individual balances, keys and received transactions. Multi-wallet is enabled by using more than one `-wallet` argument when starting Groestlcoin, either on the command line or in the Groestlcoin config file. In Groestlcoin-Qt, only the first wallet will be displayed and accessible for creating and signing transactions. GUI selectable multiple wallets will be supported in a future version. However, even in 2.16 other loaded wallets will remain synchronized to the node's current tip in the background. This can be useful if running a pruned node, since loading a wallet where the most recent sync is beyond the pruned height results in having to download and revalidate the whole blockchain. Continuing to synchronize all wallets in the background avoids this problem. Note that while multi-wallet is now fully supported, the RPC multi-wallet interface should be considered unstable for version 2.16.0, and there may backwards-incompatible changes in future versions - When running Groestlcoin Core with a single wallet, there are no changes to the RPC interface or `groestlcoin-cli`. All RPC calls and `groestlcoin-cli` commands continue to work as before
- When running Groestlcoin Core with multi-wallet, all node-level RPC methods continue to work as before. HTTP RPC requests should be sent to the normal `<RPC IP address>:<RPC port>` endpoint, and `groestlcoin-cli` commands should be run as before. A node-level RPC method is any method which does not require access to the wallet.
- When running Groestlcoin Core with multi-wallet, wallet-level RPC methods must specify the wallet for which they're intended in every request. HTTP RPC requests should be send to the `<RPC IP address>:<RPC port>/wallet/<wallet name>` endpoint, for example `127.0.0.1:1441/wallet/wallet1.dat`. `groestlcoin-cli` commands should be run with a `-rpcwallet` option, for example, `groestlcoin-cli -rpcwallet=wallet1.dat getbalance`.
- A new node-level `listwallets` RPC method is added to display which wallets are currently loaded. The names returned by this method are the same as those used in the HTTP endpoint and for the `rpcwallet` argument.
- Groestlcoin Core has supported creating opt-in replace-by-fee (RBF) transactions since version 2.13.3. In version 2.16, creating an opt-in RBF transaction and replacing the unconfirmed transaction with a higher-fee transaction are both supported in the GUI.
- The concept of *free transactions* has been removed. High Coin Age Priority transactions would previously be allowed to be relayed even if they didn't attach a miner This is no longer possible since there is no concept of Coin Age Priority. The `-limitfreerelay` and `-relaypriority` options which controlled relay of free transactions have therefore been removed.
- The `-sendfreetransactions` option has been removed since almost all miners do not include transactions which do not attach a transaction fee.
- The `-blockprioritysize` option has been removed.
- The `estimatepriority` and `estimatesmartpriority` RPCs have been removed.
- The `getmempoolancestors`, `getmempooldescendants`, `getmempoolentry` and `getrawmempool` RPCs no longer return `startingpriority` and `currentpriority`.
- The `prioritisetransaction` RPC no longer takes a `priority_delta` argument, which is replaced by a `dummy` argument for backwards compatibility with clients using positional arguments. The RPC is still used to change the apparent fee-rate of the transaction by using the `fee_delta` argument.
- `-minrelaytxfee` can now be set to 0. If `minrelaytxfee` is set, then fees smaller than `minrelaytxfee` (per kB) are rejected from relaying, mining and transaction creation. This defaults to 10000 gro/kB.
- The `-printpriority` option has been updated to only output the fee rate and hash of transactions included in a block by the mining code.
- Version 2.16 introduced mempool persistence across restarts (the mempool is saved to a `mempool.dat` file in the data directory prior to shutting down and restores the mempool when the node is restarted). Version 2.16 also allows this feature to be switched on or off using the `-persistmempool` command-line option. By default, the option is set to true, and the mempool is saved on shutdown and reloaded on start-up. If set to false, the `mempool.dat` file will not be loaded on start-up or saved on shutdown.
- Several changes to the way Groestlcoin Core deals with peer connections and invalid blocks have been made, as a safety precaution against blockchain forks and misbehaving peers.
- Unrequested blocks with less work than the minimum-chain-work are now no longer processed even if they have more work than the tip (a potential issue during IBD where the tip may have low-work). This prevents peers from wasting the resources of a node.
- Peers which provide a chain with less work than the minimum-chain-work during IBD will now be disconnected.
- For a given outbound peer, we now check whether their best-known block has at least as much work as our tip. If it doesn't, and if we still haven't heard about a block with sufficient work after a 20-minute timeout, then we send a single ‘getheaders’message and wait 2 more minutes. If after two minutes their best-known block has insufficient work, we disconnect that peer. We protect 4 of our outbound peers from being disconnected by this logic to prevent excessive network topology changes because of this algorithm, while still ensuring that we have a reasonable number of nodes not known to be on bogus chains.
- Outbound (non-manual) peers that serve us block headers that are already known to be invalid (other than compact block announcements, because BIP 152 explicitly permits nodes to relay compact blocks before fully validating them) will now be disconnected.
- If the chain tip has not been advanced for over 30 minutes, we now assume the tip may be stale and will try to connect to an additional outbound peer. A periodic check ensures that if this extra peer connection is in use, we will disconnect the peer that least recently announced a new block.
- The set of all known invalid-themselves blocks (i.e. blocks which we attempted to connect but which were found to be invalid) are now tracked and used to check if new headers build on an invalid chain. This ensures that everything that descends from an invalid block is marked as such.
- Though blockmaxweight has been preferred for limiting the size of blocks returned by getblocktemplate since 2.13.3, blockmaxsize remained as an option for those who wished to limit their block size directly. Using this option resulted in a few UI issues as well as non-optimal fee selection and ever-so-slightly worse performance and has thus now been deprecated. Further, the blockmaxsize option is now used only to calculate an implied blockmaxweight, instead of limiting block size directly. Any miners who wish to limit their blocks by size, instead of by weight, will have to do so manually by removing transactions from their block template directly.
- The GUI settings will now be written to `guisettings.ini.bak` in the data directory before wiping them when the `-resetguisettings` argument is used. This can be used to retroactively troubleshoot issues due to the GUI settings.
- A hidden debug argument `-minimumchainwork` has been added to allow a custom minimum work value to be used when validating a chain.
- Groestlcoin Core 2.16.0 introduces full support for SEGWIT in the wallet and user interfaces. A new `-addresstype` argument has been added, which supports `legacy`, `p2sh-segwit` (default), and `bech32` addresses. It controls what kind of addresses are produced by `getnewaddress`, `getaccountaddress`, and `createmultisigaddress`. A `-changetype` argument has also been added, with the same options, and by default equal to `-addresstype`, to control which kind of change is used.
- A new `address_type` parameter has been added to the `getnewaddress` and `addmultisigaddress` RPCs to specify which type of address to generate.
- A `change_type` argument has been added to the `fundrawtransaction` RPC to override the `-changetype` argument for specific transactions.
- All segwit addresses created through `getnewaddress` or `*multisig` RPCs explicitly get their redeemscripts added to the wallet file. This means that downgrading after creating a segwit address will work, as long as the wallet file is up to date.
- All segwit keys in the wallet get an implicit redeemscript added, without it being written to the file. This means the recovery of an old backup will work, as long as you use new software.
- All keypool keys that are seen used in transactions explicitly get their redeemscripts added to the wallet files. This means that downgrading after recovering from a backup that includes a segwit address will work
Note:Some RPCs do not yet support segwit addresses. Notably, `signmessage`/`verifymessage` doesn't support segwit addresses, nor does `importmulti` currently. Support for segwit in those RPCs will continue to be added in future versions.
- P2WPKH change outputs are now used by default if any destination in the transaction is a P2WPKH or P2WSH output. This is done to ensure the change output is as indistinguishable from the other outputs as possible in either case.
- Full support for native SEGWIT addresses (BIP173 / Bech32) has now been added. This includes the ability to send to BIP173 addresses (including non-v0 ones) and generating these addresses.
- A checkbox has been added to the GUI to select whether a Bech32 address or P2SH-wrapped address should be generated when using SEGWIT addresses. When launched with `-addresstype=bech32` it is checked by default. When launched with `-addresstype=legacy` it is unchecked and disabled.
- Due to a backward-incompatible change in the wallet database, wallets created with version 2.16.0 will be rejected by previous versions. Also, version 2.16.0
- will only create hierarchical deterministic (HD) wallets. Note that this only applies to new wallets; wallets made with previous versions will not be upgraded to be HD.
- The send screen now uses RBF by default, regardless of `-walletrbf`. There is a checkbox to mark the transaction as final.
- The RPC default remains unchanged: to use RBF, launch with `-walletrbf=1` or use the `replaceable` argument for individual transactions.
- Groestlcoin Core now has more flexibility in where the wallets directory can be located. Previously wallet database files were stored at the top level of the Groestlcoin data directory. The behaviour is now:
- For new installations (where the data directory doesn't already exist), wallets will now be stored in a new `wallets/` subdirectory inside the data directory by default.
- For existing nodes (where the data directory already exists), wallets will be stored in the data directory root by default. If a `wallets/` subdirectory already exists in the data directory root, then wallets will be stored in the `wallets/` subdirectory by default.
- The location of the wallets directory can be overridden by specifying a `-walletdir=<path>` option where `<path>` can be an absolute path to a directory or directory
- Care should be taken when choosing the wallets directory location, as if it becomes unavailable during operation, funds may be lost.
- The minimum version of the GCC compiler required to compile Groestlcoin Core is now 4.8. No effort will be made to support older versions of GCC. The minimum version for the Clang compiler is still 3.3. Other minimum dependency versions can be found in `doc/dependencies.md` in the repository.
- Pruned nodes can now signal BIP159's NODE_NETWORK_LIMITED using service bits, in preparation for full BIP159 support in later versions. This would allow pruned nodes to serve the most recent blocks. However, the current change does not yet include support for connecting to these pruned peers.
- The SHA256 hashing optimizations for architectures supporting SSE4, which lead to ~50% speedups in SHA256 on supported hardware (~5% faster synchronization and block validation), have now been enabled by default. In previous versions, they were enabled using the `--enable-experimental-asm` flag when building but are now the default and no longer deemed experimental.
- Uses of "µGRS" in the GUI now also show the more colloquial term "Groestls".
- The option to reuse a previous address has now been removed. This was justified by the need to "resend" an invoice, but now that we have the request history, that need should be gone.
- Support for searching by TXID has been added, rather than just address and label.
- A "Use available balance" option has been added to the send coins dialogue, to add the remaining available wallet balance to a transaction output.
- A toggle for unblinding the password fields on the password dialogue has been added.
- Safe mode is now disabled by default and must be manually enabled (with `-disablesafemode=0`) if you wish to use it. Safe mode is a feature that disables a subset of RPC calls - mostly related to the wallet and sending - automatically in case certain problem conditions with the network are detected. However, developers have come to regard these checks as not reliable enough to act on automatically. Even with safe mode disabled, they will still cause warnings in the `warnings` field of the `getneworkinfo` RPC and launch the `-alertnotify` command.
- The `share/rpcuser/rpcuser.py` script was renamed to `share/rpcauth/rpcauth.py`. This script can be used to create `rpcauth` credentials for a JSON-RPC user.
- A new field `iswitness` is True for P2WPKH and P2WSH addresses ("grs1..." addresses), but not for P2SH-wrapped segwit
- The existing field `isscript` will now also report True for P2WSH addresses.
- A new field `embedded` is present for all script addresses where the script is known and matches something that can be interpreted as a known address. This is particularly true for P2SH-P2WPKH and P2SH-P2WSH addresses. The value for `embedded` includes much of the information `validateaddress` would report if invoked directly on the embedded address.
- For multi-sig scripts, a new `pubkeys` field was added that reports the full public keys involved in the script (if known). This is a replacement for the existing `addresses` field (which reports the same information but encoded as P2PKH addresses), represented in a more useful and less confusing way. The `addresses` field remains present for non-segwit addresses for backward compatibility.
- For all single-key addresses with known key (even when wrapped in P2SH or P2WSH), the `pubkey` field will be present. In particular, this means that invoking `validateaddress` on the output of `getnewaddress` will always report the `pubkey`, even when the address type is P2SH-P2WPKH.
- `importprunedfunds` only accepts two required arguments. Some versions accept an optional third argument, which was always ignored. Make sure to never pass more than two arguments.
- The first Boolean argument to `getaddednodeinfo` has been removed. This is an incompatible change.
- RPC command `getmininginfo` loses the "testnet" field in favour of the more generic "chain" (which has been present for years).
- A new RPC command `preciousblock` has been added which marks a block as precious. A precious block will be treated as if it were received earlier than a competing block.
- A new RPC command `importmulti` has been added which receives an array of JSON objects representing the intention of importing a public key, a private key, an address and script/p2sh.
- Use of `getrawtransaction` for retrieving confirmed transactions with unspent outputs has been deprecated. For now, this will still work, but in the future, it may change to only be able to retrieve information about transactions in the mempool or if `txindex` is enabled.
- A new RPC command `getmemoryinfo` has been added which will return information about the memory usage of groestlcoin This was added in conjunction with optimizations to memory management.
- A new RPC command `bumpfee` has been added which allows replacing an unconfirmed wallet transaction that signalled RBF with a new transaction that pays a higher fee and should be more likely to get confirmed quickly.
- The "currentblocksize" value in getmininginfo has been removed.
- `dumpwallet` no longer allows overwriting files. This is a security measure as well as prevents dangerous user mistakes.
- `backupwallet` will now fail when attempting to back up to the source file, rather than destroying the wallet.
- `listsinceblock` will now throw an error if an unknown `blockhash` argument value is passed, instead of returning a list of all wallet transactions since the genesis block. The behaviour is unchanged when an empty string is provided.
- A new RPC `rescanblockchain` has been added to manually invoke a blockchain rescan. The RPC supports start and end-height arguments for the rescan and can be used in a multiwallet environment to rescan the blockchain at runtime.
- A new `savemempool` RPC has been added which allows the current mempool to be saved to disk at any time to avoid it being lost due to crashes/power
- The first positional argument of `createrawtransaction` was renamed from `transactions` to `inputs`.
- The argument of `disconnectnode` was renamed from `node` to `address`.
- `abortrescan` stops current wallet rescan, e.g. when triggered by an `importprivkey` call.
- `combinerawtransaction` accepts a JSON array of raw transactions and combines them into a single raw transaction.
- `estimaterawfee` returns raw fee data so that customized logic can be implemented to analyse the data and calculate estimates. See for full details on changes to the fee estimation logic and interface.
- `getchaintxstats` returns statistics about the total number and rate of transactions in the chain.
- `listwallets` lists wallets which are currently loaded.
- `uptime` returns the total runtime of the `groestlcoind` server since its last start.
- When using Groestlcoin Core in multi-wallet mode, RPC requests for wallet methods must specify the wallet that they're intended for.
- The new database model no longer stores information about transaction versions of unspent outputs. This means that:
- The `gettxout` RPC no longer has a `version` field in the response.
- The `gettxoutsetinfo` RPC reports `hash_serialized_2` instead of `hash_serialized`, which does not commit to the transaction versions of unspent outputs but doescommit to the height and Coinbase information.
- The `getutxos` REST path no longer reports the `txvers` field in JSON format, and always reports 0 for transaction versions in the binary format
- The `estimatefee` RPC is deprecated. Clients should switch to using the `estimatesmartfee` RPC, which returns better fee estimates. See for full details on changes to the fee estimation logic and interface.
- The `gettxoutsetinfo` response now contains `disk_size` and `bogosize` instead of `bytes_serialized`. The first is a more accurate estimate of actual disk usage but is not deterministic. The second is unrelated to disk usage but is a database-independent metric of UTXO set size: it counts every UTXO entry as 50 + the length of its scriptPubKey.
- `signrawtransaction` can no longer be used to combine multiple transactions into a single transaction. Instead, use the new `combinerawtransaction` RPC.
- `fundrawtransaction` no longer accepts a `reserveChangeKey` option. This option used to allow RPC users to fund a raw transaction using a key from the keypool for the change address without removing it from the available keys in the keypool. The key could then be re-used for a `getnewaddress` call, which could potentially result in confusing or dangerous behaviour.
- `estimatepriority` and `estimatesmartpriority` have been removed.
- The `listunspent` RPC now takes a `query_options` argument, which is a JSON object containing one or more of the following members:
- `minimumAmount` - a number specifying the minimum value of each UTXO
- `maximumAmount` - a number specifying the maximum value of each UTXO
- `maximumCount` - a number specifying the minimum number of UTXOs
- `minimumSumAmount` - a number specifying the minimum sum value of all UTXOs
- The `getmempoolancestors`, `getmempooldescendants`, `getmempoolentry` and `getrawmempool` RPCs no longer return `startingpriority` and `currentpriority`.
- The `dumpwallet` RPC now returns the full absolute path to the dumped wallet. It used to return no value, even if successful.
- In the `getpeerinfo` RPC, the return object for each peer now returns an `addrbind` member, which contains the IP address and port of the connection to the peer. This is in addition to the `addrlocal` member which contains the IP address and port of the local node as reported by the peer.
- The `disconnectnode` RPC can now disconnect a node specified by node ID (as well as by IP address/port). To disconnect a node based on node ID, call the RPC with the new `nodeid` argument.
- The second argument in `prioritisetransaction` has been renamed from `priority_delta` to `dummy` since Groestlcoin Core no longer has a concept of coin age The `dummy` argument has no functional effect but is retained for positional argument compatibility.
- The `resendwallettransactions` RPC throws an error if the `-walletbroadcast` option is set to false.
- The second argument in the `submitblock` RPC argument has been renamed from `parameters` to `dummy`. This argument never had any effect, and the renaming is simply to communicate this fact to the user (Clients should, however, use positional arguments for `submitblock` to be compatible with BIP 22.)
- The `verbose` argument of `getblock` has been renamed to `verbosity` and now takes an integer from 0 to 2. Verbose level 0 is equivalent to `verbose=false`. Verbose level 1 is equivalent to `verbose=true`. Verbose level 2 will give the full transaction details of each transaction in the output as given by `getrawtransaction`. The old behaviour of using the `verbose` named argument and a Boolean value is still maintained for compatibility.
- `getblock` now returns RPC_MISC_ERROR if the block can't be found on disk (for example if the block has been pruned). Previously returned RPC_INTERNAL_ERROR.
- `pruneblockchain` now returns RPC_MISC_ERROR if the blocks cannot be pruned because the node is not in pruned mode. Previously returned RPC_METHOD_NOT_FOUND.
- `pruneblockchain` now returns RPC_INVALID_PARAMETER if the blocks cannot be pruned because the supplied timestamp is too late. Previously returned RPC_INTERNAL_ERROR.
- `pruneblockchain` now returns RPC_MISC_ERROR if the blocks cannot be pruned because the blockchain is too short. Previously returned RPC_INTERNAL_ERROR.
- `setban` now returns RPC_CLIENT_INVALID_IP_OR_SUBNET if the supplied IP address or subnet is invalid. Previously returned RPC_CLIENT_NODE_ALREADY_ADDED.
- `setban` now returns RPC_CLIENT_INVALID_IP_OR_SUBNET if the user tries to unban a node that has not previously been banned. Previously returned RPC_MISC_ERROR.
- `removeprunedfunds` now returns RPC_WALLET_ERROR if `groestlcoind` is unable to remove the transaction. Previously returned RPC_INTERNAL_ERROR.
- `removeprunedfunds` now returns RPC_INVALID_PARAMETER if the transaction does not exist in the wallet. Previously returned RPC_INTERNAL_ERROR.
- `fundrawtransaction` now returns RPC_INVALID_ADDRESS_OR_KEY if an invalid change address is provided. Previously returned RPC_INVALID_PARAMETER.
- `fundrawtransaction` now returns RPC_WALLET_ERROR if `groestlcoind` is unable to create the transaction. The error message provides further details. Previously returned RPC_INTERNAL_ERROR.
- `bumpfee` now returns RPC_INVALID_PARAMETER if the provided transaction has descendants in the wallet. Previously returned RPC_MISC_ERROR.
- `bumpfee` now returns RPC_INVALID_PARAMETER if the provided transaction has descendants in the mempool. Previously returned RPC_MISC_ERROR.
- `bumpfee` now returns RPC_WALLET_ERROR if the provided transaction has been mined or conflicts with a mined transaction. Previously returned RPC_INVALID_ADDRESS_OR_KEY.
- `bumpfee` now returns RPC_WALLET_ERROR if the provided transaction is not BIP 125 replaceable. Previously returned RPC_INVALID_ADDRESS_OR_KEY.
- `bumpfee` now returns RPC_WALLET_ERROR if the provided transaction has already been bumped by a different transaction. Previously returned RPC_INVALID_REQUEST.
- `bumpfee` now returns RPC_WALLET_ERROR if the provided transaction contains inputs which don't belong to this wallet. Previously returned RPC_INVALID_ADDRESS_OR_KEY.
- `bumpfee` now returns RPC_WALLET_ERROR if the provided transaction has multiple change outputs. Previously returned RPC_MISC_ERROR.
- `bumpfee` now returns RPC_WALLET_ERROR if the provided transaction has no change output. Previously returned RPC_MISC_ERROR.
- `bumpfee` now returns RPC_WALLET_ERROR if the fee is too high. Previously returned RPC_MISC_ERROR.
- `bumpfee` now returns RPC_WALLET_ERROR if the fee is too low. Previously returned RPC_MISC_ERROR.
- `bumpfee` now returns RPC_WALLET_ERROR if the change output is too small to bump the fee. Previously returned RPC_MISC_ERROR.
- The deprecated RPC `getinfo` was removed. It is recommended that the more specific RPCs are used: `getblockchaininfo` `getnetworkinfo` `getwalletinfo` `getmininginfo`
- The wallet RPC `getreceivedbyaddress` will return an error if called with an address,not in the wallet.
- The wallet RPC `addwitnessaddress` was deprecated and will be removed in future version, set the `address_type` argument of `getnewaddress`, or option `-addresstype=[bech32|p2sh-segwit]` instead.
- `dumpwallet` now includes hex-encoded scripts from the wallet in the dumpfile, and `importwallet` now imports these scripts, but corresponding addresses may not be added correctly, or a manual rescan may be required to find relevant transactions.
- The RPC `getblockchaininfo` now includes an `errors` field.
- A new `blockhash` parameter has been added to the `getrawtransaction` RPC which allows for a raw transaction to be fetched from a specific block if known, even without `-txindex` enabled.
- The `decoderawtransaction` and `fundrawtransaction` RPCs now have optional `iswitness` parameters to override the heuristic witness checks if necessary.
- The `walletpassphrase` timeout is now clamped to 2^30 seconds.
- Using addresses with the `createmultisig` RPC is now deprecated and will be removed in a later version. Public keys should be used instead.
- Blockchain rescans now no longer lock the wallet for the entire rescan process, so other RPCs can now be used at the same time (although results of balances/transactions may be incorrect or incomplete until the rescan is complete).
- The `logging` RPC has now been made public rather than hidden.
- An `initialblockdownload` boolean has been added to the `getblockchaininfo` RPC to indicate whether the node is currently in IBD or not.
- `minrelaytxfee` is now included in the output of `getmempoolinfo`
- `-debuglogfile=<file>` can be used to specify an alternative debug logging file.
- groestlcoin-cli now has an `-stdinrpcpass` option to allow the RPC password to be read from standard input.
- The `-usehd` option has been removed.
- groestlcoin-cli now supports a new `-getinfo` flag which returns an output like that of the now-removed `getinfo` RPC.
- Regtest support has been enabled and the JSON-RPC port is 18888.
- Segwit is always active in regtest mode by default.
ELECTRUM-GRS v3.1.2
Electrum-GRS is a lightweight "thin-client" Groestlcoin wallet Windows, MacOS and Linux based on a client-server protocol. Its main advantages over the original Groestlcoin client include support for multi-signature wallets and not requiring the download of the entire blockchain.
If you are an ordinary user of Groestlcoin and simply want the convenience of a web wallet with the security of a real application and support for multi-signature, then Electrum-GRS is the right choice for you.
Electrum-GRS continues to stay up-to-date with the latest versions, with an update from 3.0.6 to 3.1.2, bringing with it a host of new features.
What’s new?
- The Trezor One and Trezor T hardware wallets are now supported (Pending Trezor Firmware Update).
- The Ledger hardware wallets are now supported (Pending implementation).
- Capital gains: For each outgoing transaction, the difference between the acquisition and liquidation prices of outgoing coins is displayed in the wallet history. By default, historical exchange rates are used to compute acquisition and liquidation prices. These values can be entered manually, to match the actual price realised by the user. The order of liquidation of coins is the natural order defined by the blockchain; this results in capital gain values that are invariant to changes in the set of addresses that are in the wallet. Any other ordering strategy (such as FIFO, LIFO) would result in capital gain values that depend on the presence of other addresses in the wallet.
- Local Transactions: Transactions can be saved in the wallet without being broadcast. The inputs of local transactions are considered as spending, and their change outputs can be re-used in subsequent transactions. This can be combined with cold storage, to create several transactions before broadcasting them. Outgoing transactions that have been removed from the memory pool are also saved in the wallet and can be re-broadcast.
- Checkpoints: The initial download of a headers file was replaced with hard-coded checkpoints. The wallet uses one checkpoint per retargeting period. The headers for a retargeting period are downloaded only if transactions need to be verified in this period.
- The ‘privacy’ and ‘priority’ coin selection policies have been merged into one. Previously, the ‘privacy’ policy has been unusable because it was not prioritizing confirmed coins. The new policy is like ‘privacy’, except that it de-prioritizesaddresses that have unconfirmed coins.
- The 'Send' tab of the Qt GUI displays how transaction fees are computed from transaction size.
- The wallet history can be filtered by the time
- Replace-by-Fee is enabled by default. Note that this might cause some issues with wallets that do not display RBF transactions until they are confirmed.
- Watching-Only wallets and hardware wallets can be encrypted.
- The SSL checkbox option was removed from the GUI.
- BIP84: native SegwitP2WPKH scripts for BIP39 seeds and hardware wallets can now be created when specifying a BIP84 derivation path. This is usable with Trezor and Ledger.
- Windows: the binaries now include ZBar, and QR code scanning should work.
- The Wallet Import Format (WIF) for private keys that was extended in 3.0 is changed. Keys in the previous format can be imported, compatibility is maintained. Newly exported keys will be serialised as “script_type:original_wif_format_key”.
- BIP32 Master Keys for Test-Net once again have different version bytes than on Main-Net. For the Main-Net prefixes {x,y,Y,z,Z}|{pub,prv}, the corresponding Test-Net prefixes are {t,u,U,v,V}|{pub,prv}. Note that due to this change, Test-Net wallet files created with previous versions of Electrum must be considered broken, and they need to be recreated from seed words.
- A new version of the Electrum-GRS protocol is required by the client (version 1.2). Servers using older versions of the protocol will not be displayed in the GUI.
Electrum-GRS Android v3.1.2
Electrum-GRS Android is a new wallet and is the mobile equivalent to Electrum GRS 3.1.2, featuring the same benefits of Electrum-GRS over the standard core wallet, but on a mobile. You can restore your private keys generated on the Desktop Electrum seamlessly on the mobile equivalent.
NOTE: This is not to be confused with Electrum-GRS Android & Blackberry v.1.5.29 which was a fork of Coinomi (before they went closed-source). This version has now been rebranded to GroestlCoinomi to reflect this. GroestlCoinomi will continue to work but is now deprecated, so it is advised to move to another wallet if you are using this.
Features:
- Encrypted wallet – the file that contains your Groestlcoin is protected with a password. You are protected from thieves.
- Deterministic key generation – If you lose your wallet, you can recover it from its seed. You are protected from your own mistakes.
- Instant on – The client does not download the blockchain, it requests that information from a server. No delays, always up-to-date.
- Freedom and Privacy – The server does not store user accounts. You are not tied to a server, and the server does not need to know you.
- No scripts – Electrum-GRS does not download any scripts. A compromised server cannot send you arbitrary code and steal your Groestlcoin.
- No single point of failure – The server code is open source, and anyone can run a server by following the tutorial found on reddit and our forums.
- Transactions are signed locally – Your private keys are not shared with the server. You do not have to trust the server with your money.
- Firewall friendly – The client does not need to open a port, it simply polls the server for updates.
- Free& Open Source Software – Gnu GPL v3. Anybody can audit this code.
- Written in Python – The code is short and easy to review.
- User-Friendly – Support for Groestlcoin URIs, signed URIs and Groestlcoin aliases.
- No Lock-In – You can export your private keys and use them in other Groestlcoin clients.
- No Downtimes – Electrum-GRS servers are decentralised and redundant. Your wallet is never down.
- Proof Checking – Electrum-GRS Wallet verifies all the transactions in your history using SPV.
- Cold Storage – Keep your private keys offline and go online with a watch-only wallet. Sign transactions from a computer that is always offline. Broadcast them from a machine that does not have your keys.
- Multi-Sign – Split the permission to send your coins between several wallets using parallel BIP32 derivations and P2SH addresses (“2 of 2”, “2 of 3”). Compact serialisation format for unsigned or partially signed transactions, that includes the BIP32 master public key and derivation needed to sign inputs. Serialized transactions can be sent to co-signers or to cold storage using QR codes.
ANDROID & BLACKBERRY WALLET v5.24.2
A BIP-0032 compatible Hierarchical Deterministic Groestlcoin Wallet. The wallet allows you to send and receive Groestlcoins on your device using QR codes and URI links.
What’s new?
• Updated icons/graphics
• Can receive v2 transactions (if not RBF) without waiting for a block confirmation
• Fixed widget preview to reflect GRS
GROESTLCOINOMI
Formally Electrum-GRS Android & Blackberry, this wallet is now considered deprecated and will no longer receive updates.
What’s new?
- Rebranded to Groestlcoinomi to reflect that this is a Coinomi fork (When Coinomi was open-sourced)
- Updated Testnet Logo
- Now considered deprecated. The wallet will continue to work but it is advised to move to another wallet that is not deprecated to continue receiving updates.
GROESTLCOIN VANITYGEN v1.03B
Groestlcoin Vanitygen is a command-line vanity Groestlcoin address generator. You can add a unique flair when you ask people to send you Groestlcoin. Alternatively, vanitygen can be used to generate random addresses offline (like a paper wallet).
If you’re tired of the random, cryptic addresses generated by regular Groestlcoin clients, then Vanitygen is the right choice for you to create a more personalised address.
The speed of which this runs depends entirely on your hardware (more GPUs/processing power, the quicker you can get your address, or the longer the ‘custom’ part of the address will be!).
What’s new?
- Add compressed address support – By salfter
- Add OCL-Compressed Address Support – By scintilla
- Add keyconv compress support – By ryandotorg
- Apply bug fixes – By cmisare
P2POOL UPGRADE
The P2Pool software encodes the shares into what's called the share chain. This is very similar to the block chain used by Groestlcoin. This chain is built using the computational power miners use to find shares. All the P2Pool nodes maintain a copy of the share chain for the current block and use it to determine pay-outs to miners.
Decentralized pay-out pooling solves the problem of centralized mining pools degrading the decentralization of Groestlcoin and avoids the risk of hard to detect theft by pool operators. Because of the importance of strengthening Groestlcoin's decentralization, some Groestlcoin supporters donate to P2Pool miners, resulting in average returns above 100% of the expected reward.
What’s new?
- The first coin to accept BECH32 addresses (prefixed with ‘grs1’ as a pay-out address)
- P2Pool code adapted for Groestlcoin Core 2.16.0 due to the removal of certain RPC calls
GROESTLCOIN TESTNET RELEASES
These testnet releases help implement future releases and implementations faster than ever whilst maintaining the integrity of the main blockchain. The Groestlcoin Testnet is a developer’s playground and significantly speeds up the troubleshooting and development times of new releases.
GROESTLSIGHT TESTNET
Groestlsight Testnet is an open-source Groestlcoin Test-Net blockchain explorer with complete REST and WebSocket APIs that can be used for writing web wallets or other apps that need more advanced blockchain queries than provided by GroestlcoinD Testnet RPC.
Groestlsight Testnet REST API provides you with a convenient, powerful and simple way to read data from the Groestlcoin Test-Net network and build your own services with it.
Features:
- Support to verify signed messages online. Verify that a message comes from a specific Groestlcoin test-net address.
- Support to broadcast transactions online. Broadcast a raw transaction in hex format over the GroestlcoinTestnet Network.
- Fast – Fast Navigation using client-side javascript rendering with AngularJS.
- Multiple languages supported, including Japanese, German and Spanish.
- Mined By – Check which pool mined the block.
- Multiple platforms – Supports all browsers.
- API – Complete REST and WebSocket API for querying blocks, transactions, and addresses; and receiving live updates.
- Light – Thin data model using Groestlcoind RPC interface to validate blockchain Fast Groestlcoind blockchain synchronisation (~1hour for the entire livenet), using LevelDB for data storage and, optionally, raw groestlcoind data files processing.
- Exhaustive – Reports on double spend attempts, outpoints confirmations, outputs spend status reports, Input and Output hyperlinks in transactions.
- Open-Source – Open sourced, written in Node.JS and based on the powerful Groestlcore NodeJS library.
P2POOL TESTNET
The P2Pool network is now available on the Test-Net. Groestlcoin is the first coin with Bech32 support on P2Pool mainnet and testnet.
Features:
- No Registration Required, to Join a P2Pool, all you need is your pay-out address
- The P2Pool network is DDOS resistant, if the node you are mining on is down, you can just switch to another node, without losing any shares
- If a node is compromised, the attacker cannot steal any of the worker’s pay-outs
- Miners get higher payouts than normal pools because they receive transactions fees from block rewards
- SegWit compatible
- CSV compatible
- BECH32 compatible
- P2SH-Segwit compatible
- BIP65 compatible
- BIP66 compatible
- Requires Groestlcoin Core >= 2.16.0
- Bootstrap address list
- Small statistical advantages increasing income
- Control over your own pool node
- No need to trust a pool operator
- Immediate payments
- Helps to protect and keep the GroestlcoinTestnet network decentralised
- Open source, written in Python.
ANDROID & BLACKBERRY TESTNET WALLETS v5.24.2
This app allows you to send and receive test-net Groestlcoin on your Android/Blackberry device using QR codes and URI links. When using this app, please back up your wallet and email them to yourself! This will save your wallet in a password protected file. Then your test-net coins can be retrieved even if you lose your phone.
What's new?
- Updated Icons/Graphics (Modernised)
- Can receive v2 transactions (if not RBF) without waiting for a block confirmation
- Fixed widget preview to reflect GRS