Commit Graph

322 Commits

Author SHA1 Message Date
UdjinM6
74551e9f31 HasCollateralInputs should check only for at least 1 collateral (not 2) - fix endless loop 2015-02-23 20:42:13 +03:00
Evan Duffield
b5f6f0e7a7 minimum collateral amount
In the case where collateral is made as COLLATERAL*5, then
used 4 times, it will result in an input exactly COLLATERAL sized.
When used as a collateral transaction this will result in 1 input of
COLLATERAL and zero outputs (due to collateral being paid solely in fees).
zero output transactions aren't supported, so it'll result in DS failure.
2015-02-18 12:17:45 -07:00
UdjinM6
55faae269c clear out DS fee 2015-02-18 15:31:40 +03:00
UdjinM6
287b357e32 fix %% calculation on keypool generation 2015-02-15 02:23:16 +03:00
evan82
a9ff5617e9 Merge pull request #177 from UdjinM6/v0.11.1.x_fix_gui_performance_issues
V0.11.2.x Performance and UI Fixes Pack
2015-02-12 16:50:17 -07:00
UdjinM6
90b2a44045 wallet - fix locks / cleanup a bit 2015-02-12 16:26:32 +03:00
Evan Duffield
23ea75f737 Add maximum out value for IX via spork 2015-02-11 08:08:55 -07:00
Evan Duffield
9f91d3cd9e fixed possibility of IX getting a lack of fees 2015-02-08 22:38:22 -07:00
UdjinM6
c8c14effff use wallet db to save ds flag / debug 2015-02-08 17:03:39 +03:00
evan82
01356fca76 Merge pull request #167 from UdjinM6/v0.11.1.x_fix_SelectCoins_best_sub_loops
optimize SelectCoinsMinConf best subset loops
2015-02-07 13:12:30 -07:00
evan82
c187e8288c Merge pull request #164 from UdjinM6/v0.11.1.x_optimize_notifytxchanges_call
call NotifyTransactionChanged for the same prevout tx hash only once per tx commit
2015-02-07 13:01:34 -07:00
UdjinM6
ab28751bbe fix 2015-02-07 08:19:02 +03:00
UdjinM6
a30b439259 optimize SelectCoins best subset debug output 2015-02-07 07:39:25 +03:00
UdjinM6
dc19605ec7 call NotifyTransactionChanged for the same prevout tx hash only once per tx commit 2015-02-06 07:25:46 +03:00
UdjinM6
16f725961a - use only trusted coins to calculate anon balance/avg rounds
- use only non-conflicted coins to calculate denom balance
- move GetDepthInMainChain and some conditions out of loops
2015-02-06 04:53:28 +03:00
Evan Duffield
4064c2f5ef Improved IX security / quicker tx scanning 2015-02-04 14:59:19 -07:00
UdjinM6
1583469c49 use only completely anonymized denoms when sending ds tx 2015-02-04 20:37:30 +03:00
Evan Duffield
6faa140c49 reference node fix 2015-02-04 08:57:09 -07:00
Evan Duffield
65612697ca Added better error messages 2015-02-04 08:37:49 -07:00
Evan Duffield
454154c18f fixed min IX fee 2015-02-04 05:00:17 -07:00
Evan Duffield
b1c772a190 minimum fees for IX 2015-02-04 03:44:41 -07:00
UdjinM6
877405c8fb use more common syntax to make it clear that actually 6 confirmations are required for IX to work / +comments 2015-02-04 13:20:33 +03:00
Evan Duffield
f4b26d6f10 Enforcing IX locks
- Scan IX locks on new blocks to make sure no conflicting txes are present
- Upon completion of a IX lock, check for conflicts and remove blocks if needed
2015-02-03 15:40:00 -07:00
Evan Duffield
13175a3c52 Fixed minconfirmations for IX 2015-02-03 15:20:13 -07:00
evan82
62bdb540f3 Merge pull request #155 from UdjinM6/v0.11.1.x_fix_conflicted
clear vValue in SelectCoinsMinConf - should fix an issue with conflicted txes
2015-02-03 14:51:12 -07:00
UdjinM6
1d3e296613 clear vValue in SelectCoinsMinConf - should fix issue with conflicted txes 2015-02-04 00:00:54 +03:00
UdjinM6
0ca6b1c91c do not use IX coins until we have at least 1 blockchain confirmation 2015-02-03 23:25:00 +03:00
UdjinM6
a59e3ae3d3 every ds related function should ignore ix depth and use blockchain depth instead 2015-02-03 12:55:25 +03:00
Evan Duffield
2992907d91 Better DOS protection, fixed min confirmations 2015-02-02 10:33:52 -07:00
Evan Duffield
5b0d0146b0 only update when tx is found 2015-02-02 05:06:43 -07:00
Evan Duffield
1377b71347 ignore IX confirmations when forming new tx 2015-02-01 10:21:43 -07:00
Evan Duffield
b1d701275a only use inputs with 5 confirmations for IX 2015-02-01 09:30:58 -07:00
evan82
2158023d4c Merge pull request #139 from UdjinM6/fix_more_usage_of_IsDenominatedAmount
use IsDenominatedAmount instead of loops and GetInputDarksendRounds where applicable
2015-01-30 07:41:59 -07:00
evan82
366435253f Merge pull request #138 from UdjinM6/fix_AvailableCoins
always get only confirmed coins by AvailableCoins for every DS relative action
2015-01-30 07:40:13 -07:00
UdjinM6
52dabd1166 always get only confirmed coins by AvailableCoins 2015-01-30 01:15:04 +03:00
UdjinM6
84b0e6f587 use IsDenominatedAmount instead of loops and GetInputDarksendRounds where applicable 2015-01-29 13:36:18 +03:00
UdjinM6
6f7f19fdcc fix updateDarksendProgress / add isDenominatedAmount and GetNormalizedAnonymizedBalance 2015-01-28 10:35:17 +03:00
evan82
1598d8e7a6 Merge pull request #134 from UdjinM6/fix_creating_denominated
fixing pre-mix process of creation denominated amounts
2015-01-27 10:57:35 -07:00
Evan Duffield
de8a436363 fix overpaying for DSTX 2015-01-27 07:29:25 -07:00
UdjinM6
a07d637a48 don't use collateral amounts on CreateDenominated / make collateral inputs from all available coins and not only from non-denominated / IsCollateralAmount function 2015-01-27 07:13:34 +03:00
UdjinM6
144b24bee5 more fixes/cleanup/debug output to DS mixing 2015-01-26 00:18:26 +03:00
UdjinM6
9a4fac6bb6 fixing pre-mix process of creation denominated amounts 2015-01-25 02:57:55 +03:00
Evan Duffield
78fe35f06d Implemented DarkSend convertability
Darksend defaults to a new mode which enables inputs/outputs
of each session to be different. For example 10DRK can be input
and 1DRKx10 can be output. This strengthens the anonymity of
Darksend greatly, which also increasing the usability (Users who
run out of .1DRK denominations can simply turn on Darksend to
split up larger inputs).
2015-01-21 07:55:21 -07:00
Evan Duffield
bbd869589c Collateral issues / Exact denoms / Disabled denoms
- When attempting to connect to a masternode for submission into the pool a recursive call to DoAutoDenominate was used. This could possibly take more than 1 minute to complete if it found a string of bad masternodes, in which case the correct masternode was overwritten and replaced with an invalid one. Upon submission, the DS TX was given to the incorrect node causing collateral to be charged.
- To fix this I've removed the recursion and added a critical section to DoAutoDenominate.
- Exact input denominations are matched in PrepareDarksendDenominate to remove the possibility of having change in the pool
- Removed disabled denominations, not needed anymore
2015-01-20 10:33:52 -07:00
Evan Duffield
b40bfacb55 improved anonymity for smaller wallets 2015-01-20 02:42:15 -07:00
Evan Duffield
2737edbbf3 Removed non-denomational inputs (UdjinM6)
Exact amounts are now allocated directly to denominated
funds then submitted to the pool. This improves anonymity
by never having non-denomination inputs enter or exit the pool.
Randomness has also been added to the amount of each session to
improve anonymity.
2015-01-19 20:12:10 -07:00
Darkcoin
daab1083cf Merge pull request #116 from UdjinM6/110x_ds_fix2
110x ds fix2
2015-01-18 07:40:45 -07:00
UdjinM6
33a7c539ba another attempt to simplify ds and fix some issues 2015-01-15 17:41:56 +03:00
vertoe
b8e53a337c merge devel-0.9 2015-01-15 12:40:25 +01:00
vertoe
e6ce27defd Update copyright year 2015 2015-01-15 11:31:35 +01:00