novacoin.git
10 years agoAbout dialog update. 8/head
CryptoManiac [Sat, 22 Feb 2014 18:24:17 +0000]
About dialog update.

10 years agoReplace util.h reference to fix building issues.
MASM fan [Fri, 21 Feb 2014 23:22:31 +0000]
Replace util.h reference to fix building issues.

10 years agoAdd new dns seed node.
MASM fan [Fri, 21 Feb 2014 07:57:51 +0000]
Add new dns seed node.

10 years agoMerge pull request #6 from CryptoManiac/current
0xDEADFACE [Thu, 20 Feb 2014 13:38:41 +0000]
Merge pull request #6 from CryptoManiac/current

Split hash functions to hash.h, add tx metadata hash

10 years agoExtend gettransaction RPC call result with hash of transaction metadata. 6/head
CryptoManiac [Wed, 19 Feb 2014 21:45:22 +0000]
Extend gettransaction RPC call result with hash of transaction metadata.

10 years agoSplit off hash.h from util.h
CryptoManiac [Wed, 19 Feb 2014 19:29:08 +0000]
Split off hash.h from util.h

10 years agoMerge pull request #4 from CryptoManiac/current
0xDEADFACE [Mon, 17 Feb 2014 18:18:47 +0000]
Merge pull request #4 from CryptoManiac/current

CheckTransaction() strengthening

10 years agoCheckTransaction() strengthening 4/head
CryptoManiac [Mon, 17 Feb 2014 18:07:38 +0000]
CheckTransaction() strengthening

10 years agoMerge pull request #3 from CryptoManiac/current
0xDEADFACE [Mon, 17 Feb 2014 15:49:29 +0000]
Merge pull request #3 from CryptoManiac/current

Report IP addresses while logging failed connections

10 years agoAdd -alertnotify=command option 3/head
CryptoManiac [Sun, 16 Feb 2014 22:52:24 +0000]
Add -alertnotify=command option

10 years agoReport IP addresses while logging failed connections
CryptoManiac [Sun, 16 Feb 2014 22:21:27 +0000]
Report IP addresses while logging failed connections

10 years agoAdd getunconfirmedbalance() RPC call, fix balance calculation.
MASM fan [Sun, 16 Feb 2014 16:21:21 +0000]
Add getunconfirmedbalance() RPC call, fix balance calculation.

10 years agoAdd -zapwallettxes cli/config option, used for wallet recovery
MASM fan [Sun, 16 Feb 2014 01:09:28 +0000]
Add -zapwallettxes cli/config option, used for wallet recovery

This diagnostic tool removes all "tx" records from the wallet db,
then forces a full rescan, to rebuild "tx" records accurately.

10 years agoHandle "conflicted" transactions properly
MASM fan [Sun, 16 Feb 2014 00:47:42 +0000]
Handle "conflicted" transactions properly

- Extend CMerkleTx::GetDepthInMainChain with the concept of a "conflicted" transaction - a transaction generated by the wallet that is not in the main chain or in the mempool, and, therefore, will likely never be confirmed.

- Exclamation mark icon for conflicted transactions
- Show mouseover status for conflicted transactions as "conflicted"
- Don't show inactive transactions on overview page overview

10 years agoAdd -enforcecanonical and -confchange options, rename IsConfirmed() to IsTrusted().
MASM fan [Sat, 15 Feb 2014 23:07:49 +0000]
Add -enforcecanonical and -confchange options, rename IsConfirmed() to IsTrusted().

-enforcecanonical=1
Allows user enforce transaction scripts to use canonical PUSH operators, enabled by default.

-confchange=1
Don't use unconfirmed change for transactions.

10 years agoCreate flags field for coin representation, use it for IsCoinBase, IsCoinStake and...
MASM fan [Sat, 15 Feb 2014 22:31:47 +0000]
Create flags field for coin representation, use it for IsCoinBase, IsCoinStake and IsPruned bits.

10 years agoPruned transactions serialization support.
MASM fan [Sat, 15 Feb 2014 15:56:59 +0000]
Pruned transactions serialization support.

10 years agoBump client version
MASM fan [Tue, 4 Feb 2014 17:54:37 +0000]
Bump client version

10 years agoRPC: p2pool related changes and getinfo improvement
MASM fan [Tue, 4 Feb 2014 17:50:58 +0000]
RPC: p2pool related changes and getinfo improvement

* getsubsidy [nTarget] - get proof-of-work subsidy for current or custom target;
* getinfo and getmininginfo are now provining proof-of-stake difficulty value.

10 years agoBugFix: free transactions are not allowed yet
MASM fan [Tue, 4 Feb 2014 17:29:58 +0000]
BugFix: free transactions are not allowed yet

10 years agoRPC: getrawtransaction and resendtx improvement
MASM fan [Sun, 2 Feb 2014 17:11:29 +0000]
RPC: getrawtransaction and resendtx improvement

10 years agoMerge pull request #2 from CryptoManiac/master v0.4.4.7-nvc
0xDEADFACE [Mon, 27 Jan 2014 06:24:13 +0000]
Merge pull request #2 from CryptoManiac/master

Disconnect buggy clients automatically.

10 years agoDisconnect buggy clients automatically.
Alex [Mon, 27 Jan 2014 01:36:28 +0000]
Disconnect buggy clients automatically.

10 years agoMerge pull request #1 from CryptoManiac/novacoin-next
0xDEADFACE [Sun, 26 Jan 2014 18:26:40 +0000]
Merge pull request #1 from CryptoManiac/novacoin-next

Merge "next" branch into master sources tree

10 years agoBump client version v0.4.4.7-nvc-next-testing2
alex [Sat, 25 Jan 2014 23:44:10 +0000]
Bump client version

10 years agoInclude winsock2.h before windows.h
alex [Sat, 25 Jan 2014 23:17:42 +0000]
Include winsock2.h before windows.h

10 years agoSet of several minor fixes:
alex [Sat, 25 Jan 2014 22:58:17 +0000]
Set of several minor fixes:

* Fix winsock.h warnings while building for Windows;
* Add MarkUnspent for confirmed wallet transactions.

10 years agoUpdate only if there are any mismatched coins v0.4.4.7-nvc-next-testing
alex [Fri, 24 Jan 2014 20:07:48 +0000]
Update only if there are any mismatched coins

10 years agoFix repairwallet to update walletmodel without restart.
alex [Fri, 24 Jan 2014 17:46:39 +0000]
Fix repairwallet to update walletmodel without restart.

10 years agoAdd transaction and block header timestamps to gettxout RPC call result.
alex [Thu, 23 Jan 2014 17:14:59 +0000]
Add transaction and block header timestamps to gettxout RPC call result.

10 years agoAdd gettxout and gettxoutsetinfo RPC calls
alex [Thu, 23 Jan 2014 00:00:02 +0000]
Add gettxout and gettxoutsetinfo RPC calls

10 years agoReplace CCoinsDB and CBlockTreeDB with LevelDB based implementations.
alex [Wed, 22 Jan 2014 23:51:50 +0000]
Replace CCoinsDB and CBlockTreeDB with LevelDB based implementations.

10 years agoReplace CChainDB instantiations with a global CBlockTreeDB instance
alex [Wed, 22 Jan 2014 22:35:06 +0000]
Replace CChainDB instantiations with a global CBlockTreeDB instance

10 years agoFix segfault on testnet
alex [Wed, 22 Jan 2014 20:03:35 +0000]
Fix segfault on testnet

10 years agoPrepare database format for multi-stage block processing
alex [Wed, 22 Jan 2014 20:00:57 +0000]
Prepare database format for multi-stage block processing

This commit adds a status field and a transaction counter to the block
indexes.

10 years agoReorganize at startup to best known block
alex [Wed, 22 Jan 2014 16:29:20 +0000]
Reorganize at startup to best known block

Trying to detect the presence of a better chain in chain.dat and then reorganize to this chain using existent blk files.

10 years agoSanity checking for coinstake inputs and checkwallet/repairwallet refactoring
alex [Wed, 22 Jan 2014 16:21:42 +0000]
Sanity checking for coinstake inputs and checkwallet/repairwallet refactoring

10 years agoDirect CCoins references
alex [Tue, 21 Jan 2014 21:43:39 +0000]
Direct CCoins references

Using the direct CCoins references to prevent excessive copying of CCoins in and out of the CCoinsView instances.

10 years agoValidation of coinstake now uses txPrev directly instead of CCoins object
alex [Tue, 21 Jan 2014 21:17:29 +0000]
Validation of coinstake now uses txPrev directly instead of CCoins object

10 years agoTransaction hash caching
alex [Tue, 21 Jan 2014 04:33:18 +0000]
Transaction hash caching

Use CBlock's vMerkleTree to cache transaction hashes, and pass them
along as argument in more function calls.

10 years agoAdd CCoinsViewCache::GetCoinsReadOnly() method for read-only caching to decrease...
alex [Mon, 20 Jan 2014 22:40:34 +0000]
Add CCoinsViewCache::GetCoinsReadOnly() method for read-only caching to decrease count of worthless flushing events;
Remove target mismatch messages from proof-of-stake miner;
Add generator field to getblock output.

10 years agoMiner module fix
alex [Mon, 20 Jan 2014 21:46:52 +0000]
Miner module fix

10 years agoSome proof-of-stake checkings refactoring
alex [Mon, 20 Jan 2014 21:14:40 +0000]
Some proof-of-stake checkings refactoring

* Implement CBlock::CheckSignature() method for signatures and proofhash checking;
* Move PoW header signature checking to new CBlock::CheckLegacySignature() method;
* Remove some redundant messages from debug.log output;
* Make some DoS checkings harder.

Another changes:

* getblock and getblockbynumber RPC calls are now providing generator public key for proof-of-stake blocks.

10 years agoDon't create coins for empty coinbase transactions
alex [Mon, 20 Jan 2014 00:07:28 +0000]
Don't create coins for empty coinbase transactions

10 years agoBugfix: Get coinstake flag and timestamps from undo data
alex [Sun, 19 Jan 2014 23:25:07 +0000]
Bugfix: Get coinstake flag and timestamps from undo data

10 years agoAdd previous block checking in the proof-of-stake miner
alex [Sun, 19 Jan 2014 22:41:14 +0000]
Add previous block checking in the proof-of-stake miner

This should help against orphans.

10 years agoDon't reaccept coinstakes
alex [Sun, 19 Jan 2014 13:46:56 +0000]
Don't reaccept coinstakes

10 years agoUI fixes
alex [Sun, 19 Jan 2014 05:26:25 +0000]
UI fixes

* QT: sort transactions by date;
* RPC: repairwallet removes orphan related records from the wallet;
* Change currency symbol on coincontrol form, fix some typos.

10 years agoBugfix: don't resurrect coinstake transactions
alex [Sun, 19 Jan 2014 04:29:30 +0000]
Bugfix: don't resurrect coinstake transactions

10 years agoAdd new LevelDB wrapper
alex [Sun, 19 Jan 2014 01:09:23 +0000]
Add new LevelDB wrapper

10 years agoCheckpoint fix
alex [Sun, 19 Jan 2014 00:29:25 +0000]
Checkpoint fix

10 years agoFix timestamp violation
alex [Sun, 19 Jan 2014 00:02:31 +0000]
Fix timestamp violation

10 years agoBatch block connection during initial block download
alex [Sat, 18 Jan 2014 23:34:13 +0000]
Batch block connection during initial block download

This reduces the load on the database engine, as subsequent blocks often
update an earlier block's transaction already.

10 years agoUpdate checkpoints
alex [Sat, 18 Jan 2014 21:22:05 +0000]
Update checkpoints

10 years agochmod 0755 leveldb/build_detect_platform
alex [Sat, 18 Jan 2014 20:22:55 +0000]
chmod 0755 leveldb/build_detect_platform

10 years agoSwitch to CCoins & CCoinsView approach
alex [Sat, 18 Jan 2014 20:10:48 +0000]
Switch to CCoins & CCoinsView approach

This commit replaces old transactions index with unspent coins database
which contains a basic metadata like heights, amounts,
coinstake/coinbase flags and timestamps.

We still need access to blockchain for proof-of-stake blocks
validation. Current CheckProofOfStake() uses the coin database to
find the block height, and then scans that block to find the dependency
of coinstake kernel.

10 years agoUndo file creation
alexhz [Wed, 15 Jan 2014 19:18:38 +0000]
Undo file creation

Create files with block undo information for the transactions in it.

10 years agoOne file per block
alexhz [Wed, 15 Jan 2014 16:50:06 +0000]
One file per block

Block database now stores one file per block.

10 years agoAdd CTxUndo: transaction undo information
alexhz [Wed, 15 Jan 2014 14:34:46 +0000]
Add CTxUndo: transaction undo information

The CTxUndo class encapsulates data necessary to undo the effects of
a transaction on the txout set, namely the previous outputs consumed
by it (script + amount), and potentially transaction meta-data when
it is spent entirely.

10 years agoBasic classes for pruned version of transaction output list support
alexhz [Wed, 15 Jan 2014 13:28:24 +0000]
Basic classes for pruned version of transaction output list support

== CCoins: pruned list of transaction outputs ==

The CCoins class represents a pruned set of transaction outputs from
a given transaction. It only retains information about its height in
the block chain, whether it was a coinbase transaction, and its
unspent outputs (script + amount).

It has a custom serializer that has very low redundancy.

== Compact serialization for scripts ==

Special serializers for script which detect common cases and encode
them much more efficiently. 3 special cases are defined:
* Pay to pubkey hash (encoded as 21 bytes)
* Pay to script hash (encoded as 21 bytes)
* Pay to pubkey starting with 0x02, 0x03 or 0x04 (encoded as 33 bytes)

Other scripts up to 121 bytes require 1 byte + script length. Above
that, scripts up to 16505 bytes require 2 bytes + script length.

== Compact serialization for amounts ==

Special serializer/deserializer for amount values. It is optimized for
values which have few non-zero digits in decimal representation. Most
amounts currently in the txout set take only 1 or 2 bytes to
represent.

10 years agoCompact serialization for variable-length integers
alexhz [Wed, 15 Jan 2014 11:42:48 +0000]
Compact serialization for variable-length integers

Variable-length integers: bytes are a MSB base-128 encoding of the number.
The high bit in each byte signifies whether another digit follows. To make
the encoding is one-to-one, one is subtracted from all but the last digit.
Thus, the byte sequence a[] with length len, where all but the last byte
has bit 128 set, encodes the number:

  (a[len-1] & 0x7F) + sum(i=1..len-1, 128^i*((a[len-i-1] & 0x7F)+1))

  Properties:
  * Very small (0-127: 1 byte, 128-16511: 2 bytes, 16512-2113663: 3 bytes)
  * Every integer has exactly one encoding
  * Encoding does not depend on size of original integer type

10 years agoCheckpoint object replacement with std::pair & support for incompatible database...
alex [Tue, 14 Jan 2014 23:01:33 +0000]
Checkpoint object replacement with std::pair & support for incompatible database removal

10 years agoOrpho
alex [Tue, 14 Jan 2014 20:24:50 +0000]
Orpho

10 years agoSecond pre-release update
alex [Tue, 14 Jan 2014 20:18:47 +0000]
Second pre-release update

* Use maximum timeweight as a split/combine threshold (instead of age);
* Remove BDB transactions index support, include some basic optimizations of leveldb wrapper;
*

10 years agoTypo fix
alex [Sun, 12 Jan 2014 10:58:28 +0000]
Typo fix

10 years agoMerge branch 'master' of https://github.com/CryptoManiac/novacoin
alex [Sun, 12 Jan 2014 08:51:47 +0000]
Merge branch 'master' of https://github.com/CryptoManiac/novacoin

10 years agoPre-0.4.8 update
alex [Sun, 12 Jan 2014 08:47:13 +0000]
Pre-0.4.8 update

* New stake miner implementation, almost 100 times faster;
* Qt: Unification of coinbase and coinstake transactions processing;
* Switch to libdb-6.0.20 for windows builds.

10 years agoAdd check for OPTIMIZED_SALSA flag
Balthazar [Sun, 12 Jan 2014 01:15:19 +0000]
Add check for OPTIMIZED_SALSA flag

10 years agoMakefile update
alex [Sat, 11 Jan 2014 03:09:47 +0000]
Makefile update

10 years agoMerge pull request #8 from awoland/patch-3
Balthazar [Sun, 5 Jan 2014 16:55:18 +0000]
Merge pull request #8 from awoland/patch-3

Update guiutil.cpp

10 years agoUpdate guiutil.cpp
awoland [Sun, 5 Jan 2014 09:57:35 +0000]
Update guiutil.cpp

Fix old bug in GUI with HtmlEscape(tooltip ...

10 years agoNew syncronized checkpoints policy: no immediate PoW block checkpointing.
alex [Fri, 3 Jan 2014 22:16:31 +0000]
New syncronized checkpoints policy: no immediate PoW block checkpointing.

10 years agoCompatibility improvements
alex [Thu, 2 Jan 2014 23:59:01 +0000]
Compatibility improvements

* Add a generic SALSA implementation and disable optimized implementations by default;
* Remove macroses from ARM SALSA implementation;
* Some misc defigition fixs to correct mingw-w64 compatibility issues.

10 years agoBump version to 0.4.4.6 v0.4.4.6-nvc
alex [Wed, 1 Jan 2014 01:51:32 +0000]
Bump version to 0.4.4.6

Changes list:

* Add checkpoints;
* Remove stake weight switch code;
* Remove output limit for testnet since publishing / for mainnet since 1 May 2014;
* Remove mandatory fee for testnet since publishing / for mainnet since 1 may 2014.

10 years agoCache scrypt hashes on disk
alex [Tue, 31 Dec 2013 17:04:16 +0000]
Cache scrypt hashes on disk

instead of recalculating every time. This policy is able to give us 10-20x startng speed up. User can disable caching with -fastindex=0 option.

Note that this commit makes blockindex code incompatible with old blockchain database files. You need to remove old blockchain files and syncronize with the network again.

Another changes:

1. Stake pooled keys are removed.

10 years agoMerge pull request #7 from cmonyoupick/master
Balthazar [Sun, 22 Dec 2013 03:58:17 +0000]
Merge pull request #7 from cmonyoupick/master

fixes scrypt-*.S for grsecurity-enabled kernels, noexecstack

10 years agofixes scrypt-*.S for grsecurity-enabled kernels, noexecstack
novacoind [Tue, 17 Dec 2013 15:11:14 +0000]
fixes scrypt-*.S for grsecurity-enabled kernels, noexecstack

10 years agoRPC: merge gettransaction output format fixes
alex [Wed, 6 Nov 2013 17:12:28 +0000]
RPC: merge gettransaction output format fixes

10 years agoAdd -mininput=value option
alex [Wed, 23 Oct 2013 19:44:46 +0000]
Add -mininput=value option

Allows user to set sultable input value limit

10 years agoFix
alex [Sun, 29 Sep 2013 21:19:05 +0000]
Fix

10 years agoTranslate
alex [Sun, 29 Sep 2013 21:15:58 +0000]
Translate

10 years agoMerge coin control features v0.4.4.5
alex [Sun, 29 Sep 2013 20:30:12 +0000]
Merge coin control features

Read this topic for additional info:

https://bitcointalk.org/index.php?topic=144331.0

10 years agoAdd dnsseed server
alex [Sun, 29 Sep 2013 15:28:53 +0000]
Add dnsseed server

10 years agoMerge branch 'master' of https://github.com/CryptoManiac/novacoin
alex [Sat, 28 Sep 2013 19:58:41 +0000]
Merge branch 'master' of https://github.com/CryptoManiac/novacoin

10 years agoRemove OpenMP flags for now
alex [Sat, 28 Sep 2013 19:57:26 +0000]
Remove OpenMP flags for now

10 years agoMerge pull request #6 from RoadTrain/patch-1
Balthazar [Sat, 28 Sep 2013 19:32:53 +0000]
Merge pull request #6 from RoadTrain/patch-1

USE_LEVELDB fix

10 years agoRevert GetBlockTrust changes
alex [Sat, 28 Sep 2013 17:56:25 +0000]
Revert GetBlockTrust changes

10 years agoUse HASH160 instead of public key for coinbase transaction
alex [Sat, 28 Sep 2013 13:58:23 +0000]
Use HASH160 instead of public key for coinbase transaction

10 years agoRemove legacy code, bump version number
alex [Sat, 28 Sep 2013 13:35:46 +0000]
Remove legacy code, bump version number

Full changes list:

* Don't check ECDSA signatures for PoW blocks ever, with exception for the first 9689 blocks;
* Remove ECDSA signing related code from mining RPC APIs;
* Trim leading zeros from the hex representation of trust score in the block dump functions;
* Don't check lk_max_locks if compiled with USE_LEVELDB flag;
* Add hash and stake modifier checkpoints for block #44200.

10 years agoUSE_LEVELDB fix
RoadTrain [Sun, 22 Sep 2013 23:43:50 +0000]
USE_LEVELDB fix

Make it grab USE_LEVELDB value from cmd params

10 years agoRemove ncurses dependency
alexhz [Mon, 16 Sep 2013 10:04:23 +0000]
Remove ncurses dependency

10 years agoRPC: sendalert params types casting
alex [Sun, 15 Sep 2013 22:41:55 +0000]
RPC: sendalert params types casting

10 years agoAdd scrypt-arm.o target
alex [Fri, 13 Sep 2013 16:14:41 +0000]
Add scrypt-arm.o target

10 years agoAdd ARM to architectures list
alex [Fri, 13 Sep 2013 14:11:40 +0000]
Add ARM to architectures list

10 years agoAdd ARM scrypt implementation
alex [Fri, 13 Sep 2013 14:09:16 +0000]
Add ARM scrypt implementation

10 years agoEnable -msse2 for 32 bit g++ only
Balthazar [Fri, 13 Sep 2013 13:59:45 +0000]
Enable -msse2 for 32 bit g++ only

10 years agoEnable -msse2 flag for i686 only.
Balthazar [Fri, 13 Sep 2013 13:37:41 +0000]
Enable -msse2 flag for i686 only.

10 years agoAdd missing files
alex [Tue, 10 Sep 2013 05:04:09 +0000]
Add missing files

10 years agoFix
alex [Sun, 8 Sep 2013 19:44:56 +0000]
Fix

10 years agoAdd trusted N for MainNet and TestNet, set denomination value to 50 coins
alex [Sun, 8 Sep 2013 19:41:39 +0000]
Add trusted N for MainNet and TestNet, set denomination value to 50 coins