1622
|
Bitcoin / Technical Support / Re: Can my Bitcoins be stolen?
|
on: March 02, 2011, 11:18:48 PM
|
If there is a virus on your computer, and your bitcoins are stored on that computer, then there is nothing the bitcoin software can do to prevent that virus from eventually stealing your coins.
That said, allowing you to 'lock' your coins with a password, and requiring that you enter that password to send coins, is high on the list of things I'd like to see bitcoin do. That would make it harder for a virus to steal your coins.
But even then, a smart virus could lay in wait until you typed your password to unlock your wallet and take that opportunity to either capture your password or send the coins to a bad guy. If you can't trust your computer, don't store your life savings on it (and yes, bitcoin software also should make it easy to save some of your bitcoins on USB sticks or CD-R disks so they can be stored safely in your safe deposit box at your bank).
|
|
|
1625
|
Bitcoin / Development & Technical Discussion / JSON-RPC mass-pay
|
on: March 02, 2011, 12:21:17 AM
|
Add a mass-pay JSON-RPC method, provided that the user interface requires a TX fee parameter (NOTE: zero is a valid TX fee)
I've got a (private so far) patch that creates mass-pay transactions. API is: sendmulti <fromaccount> {address:amount,...} [minconf=1] [comment] This code in CTransaction::AcceptToMemoryPool will need to change, too: if (GetSigOpCount() > 2 || nSize < 100) return error("AcceptToMemoryPool() : nonstandard transaction"); (a mass-pay transaction will have N+1 OP_CHECKSIGs in it, where N is the number of people being paid). Replacing in the stock client with something like: if (GetSigOpCount() > 2) minFee += GetSigOpCount()*GetArgMoney("-masspayfee", CENT/100); ... seems like the right direction to go. BUT: I think a higher priority is figuring out how to deal with fees for the other two send methods.
|
|
|
1626
|
Bitcoin / Development & Technical Discussion / Re: CreateTransaction: suggest/enforce fee for big low-priority transactions
|
on: March 01, 2011, 10:02:34 PM
|
RE: limitfreerelay:
Agreed, that's better. I think we should start soft-coding the amount that is considered "free" instead of hard-coding CENT, and make the default less than 0.0001 BTC.
Separate subjects:
The entire transaction memory pool should be size-limited, with lower-priority transactions dropped.
I agree with Steve-- free transactions are a HUGE selling point, and I think rational miners should realize that their bitcoins will be more valuable if there are more users. And there will be more users if "free transactions" is a feature. I think we can come up with a solution where "normal" transactions are free, but spam or abnormally complicated transactions (yes, like those bitpenny rewards pooled mining participants are currently getting once a day) "require" a fee (where "require" is really "if you don't include a fee your transaction will probably never be confirmed.")
And finally... we've got a problem right now; lets think about what fix(es) move us in the right direction quickly, or think about fixes that will solve the current problem (that we may need to undo/rework later).
|
|
|
1627
|
Bitcoin / Bitcoin Discussion / Re: Transaction fee
|
on: March 01, 2011, 07:51:01 PM
|
Would it help if you restructured that way payments were sent so that it wouldn't always be new coins from the change of the last transaction? Like maybe break your stash into a bunch of .05 addresses and let them age and then you can send them out with no change?
No. The only way to "break your stash" is to create transactions that are broadcast; splitting your wallet into lots of small transactions makes the problem worse for you and everybody else (it is more 'expensive' to handle fistfulls of nickels and pennies, even in the bitcoin world).
|
|
|
1628
|
Bitcoin / Bitcoin Discussion / Re: Bitcoin Faucet is running dry
|
on: March 01, 2011, 06:28:00 PM
|
Thanks for the donations, everybody!
Catching up on questions:
Is the faucet supported entirely by donations? Not entirely-- the captchas have generated about $100, which will go into refilling it. It looks like captcha revenue is only covering about 1/4 of the cost of the coins, although the company that does the money-for-captchas is a startup looking for more advertisers. Actually, if you want to advertise a bitcoin-related business you should talk to them... (they're adscaptcha.com)
Was somebody abusing the faucet? Yep, somebody was exploiting a weakness in my IPv6-handling code. I've fixed the weakness (the faucet is now much stricter about what it considers "different" IPv6 addresses), but I think I'm fighting a losing battle-- the next step will be to require you to login with a valid google account to get coins. I hate to add another hoop to jump through...
Is it time to reduce the payout? Maybe soon, but I'd rather wait until the next release is out and then reduce the payouts another factor of 10 (so 'standard' payout if balance was above 500BTC would be 0.05BTC, and 0.005 when it was running low).
Can I add a link to bitcoinmonitor.com? Done.
|
|
|
1629
|
Bitcoin / Development & Technical Discussion / Re: CreateTransaction: suggest/enforce fee for big low-priority transactions
|
on: March 01, 2011, 06:07:55 PM
|
By the way, an important question: if I generate a 500KB block with only free transactions in it, it will be accepted by the network, right? Or this current "default fee policy" is not just for the default client, but for the protocol as a whole?
You can generate a 1MB block with only free transactions in it and it will get accepted (maximum block size is 1MB, although the standard bitcoin client will never generate blocks larger than 500K). That sounds like the pool needs to do it differently, not the network. If this is a pool payout to 500 people in a single transaction, then the pool needs to break it down into smaller transactions. I sent a few regular transactions yesterday and they were immediately included in solved blocks.
The problem isn't the pool payout-- the problem is that people participating in the pool end up with wallets full of tiny (e.g. penny-size) transactions. When they go to spend those tiny transactions, they're bundled up together to make a transaction that is small in value but large in size. Pools can mitigate the problem by requiring larger minimum payouts (e.g. 1 BTC instead of 0.01 BTC).
|
|
|
1630
|
Bitcoin / Development & Technical Discussion / Re: CreateTransaction: suggest/enforce fee for big low-priority transactions
|
on: March 01, 2011, 04:02:39 PM
|
This definitely needs fixing; it is another "people getting lots of very small change from mining pools" issue.
The code that controls this is CTransaction::GetMinFee() in main.h and CreateNewBlock() in main.cpp.
We should think about:
+ Is setting aside a specific amount of space for free transactions the right thing to do? Maybe blocks should just get filled in reverse priority order (with transactions with fees at the front of the line)
+ What to do with the current transaction backlog. If old, big, low-priority transactions get flushed, then there needs to be some way for the bitcoin client(s) that sent them to reclaim those coins. Perhaps the client should stop retransmitting, and reclaim, transactions if, oh, 5,000 blocks go by without the transaction getting accepted.
Or maybe it makes sense to let those old transactions trickle in; perhaps the next version of bitcoin should take the oldest transaction in the memory cache and add it to the generated block.
|
|
|
1631
|
Bitcoin / Development & Technical Discussion / CreateTransaction: suggest/enforce fee for big low-priority transactions
|
on: March 01, 2011, 03:39:08 PM
|
This is: https://github.com/bitcoin/bitcoin/issues#issue/86 currently (2011/03/01) a backlog of transactions that dont seem make it into blocks is building up (according to ArtForz now 670 transactions). People are starting to complain, see http://bitcointalk.org/index.php?topic=3835.msg57031#msg57031 for an example. This was discussed on #bitcoin-dev ArtForz> that tx should have a score of 20567855 ArtForz> so it falls short of the dPriority > COIN * 144 / 250 test ArtForz> and as tx size is > 4000, fAllowFree is never true for it theymos> Ah. So it will never confirm? ArtForz> probably not ArtForz> looks like the tx-sending code needs some fixing molecular> like not generate a tx with a score too low, or suggest to add a fee? ArtForz> yep ArtForz> check size and priority of transaction, if it's > 4kB and score < 57600000 require min fee ArtForz> maybe reduce the size limit to 3.5k or so, otherwise it can only get into an otherwise empty block Maybe the transaction cache should not be unlimited?
|
|
|
1632
|
Bitcoin / Bitcoin Discussion / Re: Transaction fee
|
on: March 01, 2011, 03:12:25 PM
|
Afaik it won't really speed it up in the current situation, but as soon as bitcoin becomes more popular it will help proceeding transactions faster.
Actually, I'm considering turning on transaction fees for the Bitcoin Faucet because small transactions with "new" coins are given very low priority, and recently new users are noticing that their Faucet coins are not arriving promptly.
|
|
|
1634
|
Bitcoin / Development & Technical Discussion / Re: [PULL] Full-precision display/entry for bitcoin amounts
|
on: March 01, 2011, 01:00:42 AM
|
That seems like an internationalization bug. What was wrong with using the correct localization?
I was tempted to do more than fix the rounding problem... ... but then sanity overwhelmed me. If you'd like to start a discussion of whether or not it is a good idea for one-thousand German bitcoin amounts to be displayed as "1.000,00", be my guest. I think there was such a discussion in the past, but I didn't pay attention to it. I think it would be nice if an amount like "1.001 BTC" (or even "1.001 tonal bitcoins") was unambiguous. RE: subcent throwaway change: turn it into a proper PULL request (yes, you'll have to-- horrors! -- use that evil, not 100%-pure-open-source github) and it'll happen faster.
|
|
|
1636
|
Bitcoin / Development & Technical Discussion / Re: [PULL] Full-precision display/entry for bitcoin amounts
|
on: February 28, 2011, 09:38:36 PM
|
It was LC_NUMERIC, I bet... (I'd just set LANG and unset the rest and assumed they'd all get picked up; internationalizing C++ applications is something I know very little about).
I modified the patch to format numbers the way they were formatted before: always , for the thousands separator, and . for the decimal point (instead of letting sprintf try to do the right thing).
|
|
|
1640
|
Bitcoin / Development & Technical Discussion / Re: Bitcoin Formula for Mac OS X
|
on: February 28, 2011, 12:48:51 PM
|
The official client uses an older version of Berkeley DB (4.8, according to build-osx.txt).
You're linking to Berkeley DB 5.1.19, so when you run your client it upgrades the bitcoin database files, which makes them incompatible with the official client.
|
|
|
|