1 2013-06-13 00:00:01 <gmaxwell> I want to buy it from you.
  2 2013-06-13 00:00:17 <helo> i liked the idea of atomic monetary-valued and colored-coin swaps that would bring irreversibility in transfer to non-bitcoin property
  3 2013-06-13 00:00:29 <gmaxwell> You don't need colored coins for that.
  4 2013-06-13 00:01:09 <gmaxwell> You tell the car "I want to sell you to gmaxwell. The sale is complete when someone shows you a txn paying 1 BTC to address 1helo.". The car produces a signed acknoweldgement and you give it to me.
  5 2013-06-13 00:01:29 <gmaxwell> then I pay you, and I show the car the transaction, and it switches who is allowed to start it.
  6 2013-06-13 00:02:34 <gmaxwell> Varrious variations of the protocol also work, in effect you can "color" any coin you want just a the instant you need to do something conditional on it.. and the coloration only creates state in the minds of the participants, not the bitcoin network.
  7 2013-06-13 00:03:15 <helo> payment protocol stuff
  8 2013-06-13 00:05:11 <gmaxwell> I'd like to know if there is actually a smart property use case that actually benfits in a deep way from colored coins, I don't believe I've seen one yet.  I think it's likely that one exists, but everything people have suggested that I've seen can be addressed with the same security properties without them.
  9 2013-06-13 00:06:37 <helo> ok, well this all sounds reasonable. thanks for taking the time to explain... i try to repeat your explanations when i hear others championing the bad ideas i've heard you debunk, if that's any consolation...
 10 2013-06-13 00:06:50 <gmaxwell> It is a major consolation.
 11 2013-06-13 00:07:07 <gmaxwell> And while I might sound grump, I like discussing this stuff??? otherwise I wouldn't do it.
 12 2013-06-13 00:08:23 <nsh> ACTION smiles
 13 2013-06-13 00:35:47 <Neozonz> does bitcoind listen on both connections if you have two interfaces?
 14 2013-06-13 00:35:53 <Neozonz> how does it decide which to listen on?
 15 2013-06-13 01:01:49 <helo> Neozonz: if you specify (one or more) -bind=IP, it will only listen on those interfaces
 16 2013-06-13 01:02:44 <helo> Neozonz: otherwise, it will bind to INADDR_ANY
 17 2013-06-13 01:03:24 <phantomcircuit> Luke-Jr, lol that is super dumb
 18 2013-06-13 01:03:30 <warren> hmmm, I haven't seen this before now "Status: 0/offline, has not been successfully broadcast yet"
 19 2013-06-13 01:03:40 <warren> I am connected to 8 nodes
 20 2013-06-13 01:03:47 <Luke-Jr> phantomcircuit: indeed
 21 2013-06-13 01:04:08 <Luke-Jr> saivann: how has something been positively received if nobody's ever heard of it? :P
 22 2013-06-13 01:05:09 <saivann> Luke-Jr : "positively received among developers and community members"?
 23 2013-06-13 01:05:39 <Luke-Jr> saivann: which developers or community members?
 24 2013-06-13 01:05:46 <Luke-Jr> I've never heard of it, though I've heard of at least 2 or 3 others
 25 2013-06-13 01:06:09 <saivann> Luke-Jr : At least Gavin and Mike Hearn
 26 2013-06-13 01:06:47 <saivann> And Jim
 27 2013-06-13 01:07:21 <saivann> And Andreas
 28 2013-06-13 01:07:26 <Luke-Jr> oh, this is slush's thing
 29 2013-06-13 01:07:29 <saivann> Yep
 30 2013-06-13 01:07:50 <Luke-Jr> "TREZOR uses an authentic offline transaction confirmation. Like that the entire process of setup and operation runs safely." lolenglish XD
 31 2013-06-13 01:08:01 <Luke-Jr> saivann: still, it doesn't seem fair to promote just one product when there are many
 32 2013-06-13 01:08:19 <saivann> Luke-Jr : Can you point me to other ones you know?
 33 2013-06-13 01:08:45 <Luke-Jr> saivann: there were 2 or 3 at the conference..
 34 2013-06-13 01:08:52 <Luke-Jr> Butterfly Labs's BitSafe was pretty popular
 35 2013-06-13 01:09:17 <Luke-Jr> the guys with the alcohol by the entrance I believe had something too, though I didn't figure out much in details
 36 2013-06-13 01:09:41 <Luke-Jr> as well as one booth in the center aisle, who had some kind of hardware wallet(?) in a creditcard-sized package
 37 2013-06-13 01:09:55 <Luke-Jr> ACTION should figure out where he put their sample
 38 2013-06-13 01:10:23 <Luke-Jr> found it: btchip.com
 39 2013-06-13 01:10:32 <saivann> The link is optional. Actually, we can link them all from the choose your wallet page once they are ready to ship..
 40 2013-06-13 01:10:38 <saivann> txs
 41 2013-06-13 01:12:15 <saivann> Luke-Jr : I removed the link, seems fair
 42 2013-06-13 01:17:07 <Luke-Jr> hmm, btchip.com seems to be not a complete hw wallet
 43 2013-06-13 01:17:24 <saivann> Yea, that's what I was wondering
 44 2013-06-13 01:18:48 <saivann> BFL Bitsafe has apparently no online presentation yet
 45 2013-06-13 01:19:56 <Luke-Jr> nba_btchip: hmm, I presume you're aware Bitcoin usually needs at least 2 outputs (and often more than 1 input) for transactions.. is that broken as implied by "Only a single point-to-point output"?
 46 2013-06-13 01:20:24 <Luke-Jr> nba_btchip: also, it would make sense to support sending to any arbitrary script equally - not just the (semi-deprecated!) pubkeyhash form ;)
 47 2013-06-13 01:21:31 <Luke-Jr> nba_btchip: it might also be wise to *not* expose IMPORT PRIVATE KEY to untrusted users (at all)
 48 2013-06-13 01:44:42 <Jc_Dev> can i query for details of various transactions using debug console of bitcoin-qt if i have the transaction hash?
 49 2013-06-13 01:45:18 <gmaxwell> if it is not a transaction in your wallet you'll need to be running with txindex=1
 50 2013-06-13 01:48:43 <Jc_Dev> gmaxwell: ah ok, thanks reindexing now (testnet of course), now i see additional commands in console window - awesome, thanks!
 51 2013-06-13 01:50:02 <Luke-Jr> gmaxwell: .. or if it's unspent :P
 52 2013-06-13 01:51:38 <gmaxwell> even if its unspent you can't get all the info
 53 2013-06-13 01:51:58 <gmaxwell> oh wait, yea you can.. durr
 54 2013-06-13 01:52:03 <gmaxwell> sorry. long week
 55 2013-06-13 01:52:23 <gmaxwell> (but thats only because sipa did something excessively clever there)
 56 2013-06-13 01:53:03 <Luke-Jr> gmaxwell: Mozilla keeping you busier than wherever it was before? XD
 57 2013-06-13 01:53:11 <gmaxwell> (the txout set data includes the height, as its needed for maturity, and he looks up the block)
 58 2013-06-13 01:53:27 <Luke-Jr> right
 59 2013-06-13 01:57:06 <Jc_Dev> ok i have it running with txindex=1, and i'm using gettransaction and then the transaction hash, but it doesn't seem to like it - is <txid> something other than the tx hash?
 60 2013-06-13 01:57:22 <Luke-Jr> you need getrawtransaction
 61 2013-06-13 01:57:39 <gmaxwell> e.g. getrawtransaction <txid> 1
 62 2013-06-13 01:58:02 <Jc_Dev> aha, that worked, thanks
 63 2013-06-13 02:21:48 <Jc_Dev> next bitcoin-qt console question - can i view the balance of a random address? i've tried getbalance and listunspent so far
 64 2013-06-13 02:24:15 <Luke-Jr> Jc_Dev: addresses do  not have balances
 65 2013-06-13 02:24:45 <Luke-Jr> http://bitcoin.stackexchange.com/questions/10090/how-to-get-an-addresss-balance-with-the-bitcoin-client/11595#11595
 66 2013-06-13 02:25:05 <Jc_Dev> yes, but that's the terminology of the command line for listunspent
 67 2013-06-13 02:25:18 <Jc_Dev> i realize it's really unspent outputs
 68 2013-06-13 02:25:42 <Luke-Jr> Jc_Dev: erm, no it isn't.
 69 2013-06-13 02:25:53 <Luke-Jr> listunspent makes no mention of balances
 70 2013-06-13 02:26:19 <Jc_Dev> i was referring the "address" terminology
 71 2013-06-13 02:26:35 <Luke-Jr> Jc_Dev: what about addresses?
 72 2013-06-13 02:26:40 <Luke-Jr> they don't have balances
 73 2013-06-13 02:27:20 <Jc_Dev> i realize that. i'm trying to see the unspent outputs associated with one.
 74 2013-06-13 02:28:37 <Luke-Jr> Jc_Dev: ah
 75 2013-06-13 02:28:49 <Luke-Jr> that *should* be possible.. but not sure it's exposed
 76 2013-06-13 02:29:13 <Jc_Dev> oh ok - so listunspent isn't what i'm looking for?
 77 2013-06-13 02:30:18 <Luke-Jr> Jc_Dev: it sounds like it is, but listunspent AIUI filters for wallet outputs right now :/
 78 2013-06-13 02:31:13 <Jc_Dev> oh ok
 79 2013-06-13 02:43:12 <sipa> Jc_Dev: that information is not maintained
 80 2013-06-13 02:43:39 <sipa> except for wallet addresses
 81 2013-06-13 02:44:36 <Luke-Jr> sipa: for unspent outputs???
 82 2013-06-13 02:45:11 <sipa> Luke-Jr: not indexed per address
 83 2013-06-13 02:45:32 <sipa> so it would mean a linear scan over the entire utxobset
 84 2013-06-13 02:46:00 <Jc_Dev> sipa: ok, fair enough, i'm actually doing that already, i'm just trying to double-check what i come up with against a third-party
 85 2013-06-13 02:46:59 <midnightmagic> Jc_Dev: for each unspent, bitcoind decoderawtransaction $( bitcoind getrawtransaction XXX ) and go through it until you find your vout, and from there you can add up the unspent bitcoins.
 86 2013-06-13 02:47:06 <sipa> you can use gettxoutb<txid> <vout> to fetchban arbitrary utxo
 87 2013-06-13 02:47:57 <midnightmagic> i think i have a perl script that does it somewhere.
 88 2013-06-13 02:50:06 <Jc_Dev> interesting - i might hold off on that for now and just assume it's coming up with the right number for the moment. i tried verifying against blockexplorer.com/testnet/search but it seems to be missing a bunch of transactions in its index
 89 2013-06-13 02:51:10 <Jc_Dev> for example, this appears to be a valid transaction but there's no results for it on blockexplorer: http://blockexplorer.com/testnet/search/94a6f4bac1fd7e0efc5815952a423a2001dcf31b79658b3a73977ea9ea25fcce
 90 2013-06-13 02:57:53 <midnightmagic> Jc_Dev: Ah, here it is. A messy, messy little script I used to use to build rawtx. http://paste.ubuntu.com/5760361/ (tx.pl notx, or tx.pl fromaddr toaddr minimumpay) first style is to print a summary, second is to build a transaction json suitable for feeding to bitcoind createrawtransaction. :-P
 91 2013-06-13 03:00:52 <Jc_Dev> midnightmagic: cool thanks - looks like i'll still have to get the equivalent of listunspent for a wallet that's not being tracked by bitcoind
 92 2013-06-13 03:01:57 <midnightmagic> you just need a tx and vout.
 93 2013-06-13 03:03:29 <Jc_Dev> right, but if i'm starting with an address i would first need to get a list of all associated tx with it right?
 94 2013-06-13 05:01:08 <PrimeStunna> hey
 95 2013-06-13 05:01:24 <PrimeStunna> anyone know how to prevent bit coin daemond lag
 96 2013-06-13 05:01:30 <PrimeStunna> when you're using many addresses on a site
 97 2013-06-13 05:19:34 <lado> Anyone here who believe that the price will fall to 50$ / per Bitcoin again?
 98 2013-06-13 05:21:23 <Luke-Jr> lado: off-topic
 99 2013-06-13 05:24:33 <wallet43> lado: #bitcoin-pricetalk
100 2013-06-13 05:25:44 <lado> wallet43: thanks bro :)
101 2013-06-13 05:39:45 <nba_btchip> Luke-Jr ping. also from the previous point, having one single script type is useful for the "authorized address" mode where users only sign for addresses they authorized previously. forgot that point.
102 2013-06-13 05:40:19 <Luke-Jr> nba_btchip: so they can't authorize 3??? addresses? ;)
103 2013-06-13 05:41:11 <nba_btchip> not yet.
104 2013-06-13 05:41:29 <Luke-Jr> seems to me, the smartcard should be neutral to address forms, and just let the users authorize and scriptPubKey :p
105 2013-06-13 05:41:52 <nba_btchip> I mean you can but you wouldn't be able to use it as an authorized address today
106 2013-06-13 05:41:54 <nba_btchip> yes
107 2013-06-13 05:41:58 <nba_btchip> that's the new mode I was talking about
108 2013-06-13 05:42:10 <nba_btchip> still check input/outputs but sign an arbitrary script. I'll add that.
109 2013-06-13 05:44:08 <Luke-Jr> nba_btchip: btw, are you the guy I met at the Conference booth? :p
110 2013-06-13 05:51:42 <nba_btchip> yep
111 2013-06-13 05:54:13 <nba_btchip> I guess I should have joined irc before and save one firmware revision :)
112 2013-06-13 05:57:57 <Luke-Jr> ???
113 2013-06-13 06:26:57 <BlueMatt> runeks: outright crashes
114 2013-06-13 06:27:10 <BlueMatt> at the time I saw specifically std::bad_alloc
115 2013-06-13 10:30:01 <BlueMatt> anyone able to spin up a testnet miner quickly?
116 2013-06-13 10:40:31 <tumak_> BlueMatt: i'm running one
117 2013-06-13 10:41:17 <tumak_> "difficulty" : 403.05977321,
118 2013-06-13 10:41:18 <tumak_> :/
119 2013-06-13 10:43:43 <BlueMatt> na, I just got a block
120 2013-06-13 10:47:23 <sipa> a year ago, the hashrate was approximately 1/10 of what it is now
121 2013-06-13 10:48:43 <sipa> ACTION wonders what it will be in a year
122 2013-06-13 10:49:00 <coingenuity> to infinity...and beyond!
123 2013-06-13 10:49:12 <sipa> please don't overflow
124 2013-06-13 10:49:20 <sipa> negative infinity would be painful
125 2013-06-13 10:49:45 <coingenuity> heh
126 2013-06-13 11:17:48 <btcls> good morning
127 2013-06-13 11:18:43 <btcls> i am not understanding (after some googling/binging) - why I can not use a main bitcoin receive address forever ?
128 2013-06-13 11:19:28 <sipa> privacy
129 2013-06-13 11:19:44 <sipa> (not just yours)
130 2013-06-13 11:20:04 <btcls> oh
131 2013-06-13 11:20:34 <Luke-Jr> btcls: also, there is no other way to identify who sent to you
132 2013-06-13 11:20:52 <Luke-Jr> or why
133 2013-06-13 11:21:43 <btcls> good morning both sipa and Luke-Jr nice to see you both again
134 2013-06-13 11:22:51 <Luke-Jr> the first time you spend a coin sent to an address, you also expose your public key, which makes any other coins sent to the same address vulnerable when ECDSA is some day broken
135 2013-06-13 11:23:07 <btcls> anyway ...I figure that using a static recieve address for a customer (each different) would quite easily setup a merchant program where the person who needs their referrel money could verify it in the blockchain
136 2013-06-13 11:23:22 <Luke-Jr> it also sets a bad habit for when you need to one day upgrade to quantum-safe algorithms, which leak private key information when signing more than once
137 2013-06-13 11:23:57 <Luke-Jr> btcls: the new deterministic key stuff should make that easy without breaking the "one address per transaction" rule
138 2013-06-13 11:25:16 <btcls> kk ...I will have to write a search and replace public key to update affiliate layers
139 2013-06-13 11:25:49 <Luke-Jr> O.o
140 2013-06-13 11:25:55 <sipa> affiliate layers?
141 2013-06-13 11:26:14 <btcls> Website A sends person to me ... they buy ...i owe them a percentage
142 2013-06-13 11:27:24 <btcls> was thinking a static receive address per customer would allow the blockchain to verify if a person from Website A (unique address) purchased something
143 2013-06-13 11:28:13 <btcls> everytime i enter any room  "iwilcox" always enters
144 2013-06-13 11:28:27 <btcls> fyi
145 2013-06-13 11:28:59 <helo> if ECDSA is was broken today, what percentage of bitcoin will be immediately at risk?
146 2013-06-13 11:30:35 <btcls> so lets say i have a starting address S1 for website W1, W1 verifies in the block chain S1 received money, so I programatically change S1 to S2 and tell website W1 the new address
147 2013-06-13 11:30:54 <btcls> is there a security issue with that situation ?
148 2013-06-13 11:31:32 <btcls> it would be well known S1 and S2 belonged to my company
149 2013-06-13 12:07:00 <helo> that's not usually how things are done... usually you give every order a new address, associating them in a database with the order. so when your shipping system sees that an address received the appropriate funding, the order ships.
150 2013-06-13 12:07:54 <helo> so in order for someone to know all of the addresses that belong to your company, they'd have to ask all of your customers what addresses they paid to.
151 2013-06-13 12:08:56 <helo> single-use addresses are the best for privacy (and security if we assume bitcoin could survive ECDSA breaking)
152 2013-06-13 12:09:14 <helo> btcls: late reply^
153 2013-06-13 12:09:23 <btcls> helo: kk i will read up on ecdsa breaking ..
154 2013-06-13 12:09:29 <btcls> thanx
155 2013-06-13 12:10:26 <sipa> it's easy: before you do a transaction spending coins assigned to address X, the public key for X is not revealed
156 2013-06-13 12:10:42 <sipa> so you cannot even begin doing an ECDSA crack
157 2013-06-13 12:10:50 <tumak_> helo: not much of % of bitcoins actually, basically only people actually using bitcoin reuse addresses (thus expose pubkeys) :)
158 2013-06-13 12:16:32 <btcls> sipa: where the purpose is create an affiliate program, Alice sends Bob to address 1, Bob buys, Alice knows this because it is visible in the blockchain, Alice wants her percentage, I just tell Alice I will pay you but when i do you get another referral address - simple i think - i could send the new address for her to use in the message area of bitcoin-qt correct ??
159 2013-06-13 12:16:58 <helo> btcls: ignore the ECDSA breaking stuff, that was just a technical side-note
160 2013-06-13 12:17:01 <sipa> there is no 'message area'
161 2013-06-13 12:17:07 <sipa> bitcoin transactions do not contain messages
162 2013-06-13 12:17:45 <helo> if ECDSA breaks, then all hell will break loose
163 2013-06-13 12:17:46 <sipa> you can sign messages using private keys if you own the address
164 2013-06-13 12:18:00 <sipa> thus proving you own that address
165 2013-06-13 12:18:14 <helo> wallet encryption leaves public keys in plain text, doesn't it?
166 2013-06-13 12:18:24 <sipa> yes
167 2013-06-13 12:20:27 <warren> TheUni: what is your e-mail address?
168 2013-06-13 12:22:28 <helo> so aside from invalidating everyone's security assumptions based on wallet encryption (backups on dropbox, etc), there would have to be a new transaction type where you prove you have the public key (without revealing it) to then send the coin to an address generated from a different signing algo key
169 2013-06-13 12:23:02 <helo> i assume you guys have a better plan though ;)
170 2013-06-13 12:23:19 <nsh> plan A: shoot all the bad people in the kneecaps
171 2013-06-13 12:23:30 <tumak_> pla B: collect underpants
172 2013-06-13 12:23:36 <nsh> ACTION nods
173 2013-06-13 12:29:00 <Luke-Jr> helo: require ECDSA redemptions to broadcast a hash of the signature in advance of the actual pubkey/signature
174 2013-06-13 12:36:47 <nsh> what's the context of this discussion? i'm having trouble following?
175 2013-06-13 12:37:11 <nsh> s/?$/./
176 2013-06-13 12:38:09 <nsh> is this a proposal for affiliate schemes?
177 2013-06-13 12:38:21 <helo> it would be nice if there was another sig algo that was roughly as fitting as ECDSA to offer as an alternative
178 2013-06-13 12:38:57 <helo> nsh: nah, i was just asking about what the options would be if ECDSA was broken
179 2013-06-13 12:39:05 <nsh> oh ok
180 2013-06-13 12:39:32 <nsh> there's a few drop-in replacement options but all currently have some demerit (space efficiency primarily) as i understand it
181 2013-06-13 12:40:07 <helo> yeah
182 2013-06-13 12:42:46 <nsh> only actual attacks on ECDSA that i'm aware of have been massive implementation idiocy (Sony PS3) and timing-based attack on OpenSSL (which was fixed in 2011)
183 2013-06-13 12:43:04 <nsh> don't follow the literature though so there may be a range of theoretical weaknesses past the horizon
184 2013-06-13 13:19:15 <Steve132> In a bitcoin transaction, can someone explain a little more in-depth what the difference is between scriptSig and scriptPubKey
185 2013-06-13 13:19:37 <grau> !ticker
186 2013-06-13 13:19:38 <gribble> BTCUSD ticker | Best bid: 108.55000, Best ask: 109.09999, Bid-ask spread: 0.54999, Last trade: 108.55000, 24 hour volume: 12637.90423080, 24 hour low: 107.08900, 24 hour high: 110.89998, 24 hour vwap: 108.82674
187 2013-06-13 13:20:25 <nsh> Steve132, did you read: http://bitcoin.stackexchange.com/questions/8250/what-is-relation-between-scriptsig-and-scriptpubkey ?
188 2013-06-13 13:20:55 <sipa> Steve132: scriptPubKey is part of an output, and sets conditions about who can spend it
189 2013-06-13 13:21:17 <sipa> Steve132: scriptSig is part of an input, and is used to satisfy the conditions specified on the scriptPubKey of the output being spent
190 2013-06-13 13:22:21 <Steve132> thanks
191 2013-06-13 13:23:03 <Steve132> So, basically, when I send someone BTC, I'm sending them a scriptPubKey script that they have to figure out how to make...what, return true on the stack?
192 2013-06-13 13:23:51 <Steve132> And scriptSig is the stack that they are supplying as input to my program
193 2013-06-13 13:23:57 <Steve132> to spend
194 2013-06-13 13:24:16 <sipa> bingo
195 2013-06-13 13:24:41 <sipa> typically, a scriptPubKey is of the form "take two inputs, a signature and a pubkey, and check that hash(pubkey)==C, and that checksig(signature,pubkey,msg=<this transaction>) is valid"
196 2013-06-13 13:25:01 <sipa> and the scriptSig corresponding to it, is "push S, push P"
197 2013-06-13 13:25:05 <Steve132> thats "typical" though
198 2013-06-13 13:25:18 <Steve132> you can embed arbitrary "script" asm programs
199 2013-06-13 13:25:32 <sipa> yes, though only a few are whitelisted as standard
200 2013-06-13 13:25:38 <sipa> and non-standard ones don't get relayed
201 2013-06-13 13:25:45 <sipa> but if they end up in a block, they're valid
202 2013-06-13 13:25:50 <Steve132> well, wait a minute now
203 2013-06-13 13:26:02 <Steve132> so the programs have to be explicitly whitelisted?  or the opcodes?
204 2013-06-13 13:26:41 <sipa> the programs
205 2013-06-13 13:26:43 <Steve132> My impression from https://en.bitcoin.it/wiki/Contracts
206 2013-06-13 13:26:49 <sipa> the scriptPubKey, specifically
207 2013-06-13 13:26:58 <Steve132> was that you could make arbitrary interesting programs
208 2013-06-13 13:27:05 <sipa> you can
209 2013-06-13 13:27:10 <Steve132> so..what?
210 2013-06-13 13:27:22 <sipa> you'll just need to get them confirmed manually by a miner
211 2013-06-13 13:27:45 <Steve132> Is there a reason for that?
212 2013-06-13 13:27:47 <Luke-Jr> Steve132: Eligius will mine any transaction if you pay a sufficient fee
213 2013-06-13 13:27:51 <sipa> (and of course, if they're interested, they can easily be made standard)
214 2013-06-13 13:28:20 <Steve132> It seems like there's no point in having the ability to make cool non-standard transactions if they are rejected by 99% of the miners
215 2013-06-13 13:28:33 <sipa> nobody can reject them
216 2013-06-13 13:28:39 <sipa> but everyone can ignore them
217 2013-06-13 13:28:55 <Steve132> Right, obviously
218 2013-06-13 13:29:14 <Steve132> but I guess I mean, if you can't get your "interesting" transactions included in a block
219 2013-06-13 13:29:18 <sipa> Steve132: it's not entirely understood how every type of script is a danger for security/dos, especially those with opcodes that have never ever been used in a script on mainnet
220 2013-06-13 13:29:20 <Steve132> then why have them?
221 2013-06-13 13:29:27 <sipa> they're trivial to enable
222 2013-06-13 13:29:49 <sipa> while if the script language itself didn't support it, it would require a hard fork (~ years of work) to enable
223 2013-06-13 13:29:55 <Steve132> I understand not enabling potentially 'dangerous' opcodes
224 2013-06-13 13:30:04 <Steve132> but I'm saying, lets say I stick ONLY to the safe opcodes
225 2013-06-13 13:30:12 <Steve132> like under that Contracts example on the wiki
226 2013-06-13 13:30:20 <Steve132> You are saying that I can't actually use any of thsoe
227 2013-06-13 13:30:22 <Steve132> *those
228 2013-06-13 13:30:29 <sipa> you can experiment with them on testnet
229 2013-06-13 13:30:37 <Steve132> right, but I can't actually use them
230 2013-06-13 13:30:46 <sipa> on testnet you can :)
231 2013-06-13 13:31:21 <Steve132> But lets say I *actually* want to do one of those cool society-changing things
232 2013-06-13 13:31:46 <sipa> then you'll first need to implement them, test them, devise protocols to negotiate them between parties, ...
233 2013-06-13 13:31:47 <Steve132> that bitcoin is supposedly good for...like setting up a will or an escrow
234 2013-06-13 13:31:49 <Steve132> or whatever
235 2013-06-13 13:31:57 <Steve132> or assurance controls
236 2013-06-13 13:32:02 <Steve132> I can't ACTUALLY do any of them
237 2013-06-13 13:32:11 <sipa> it's an experiment
238 2013-06-13 13:32:47 <sipa> it supports many cool features at its core, but it's also a production system now that holds significant economic importance
239 2013-06-13 13:33:22 <sipa> and i'm sure that once people start playing with those contract types, they'll very quickly be standard
240 2013-06-13 13:34:51 <Steve132> I guess what I'm kind of lamenting is that platforms are cool
241 2013-06-13 13:35:10 <Steve132> and the ability for a lawyer in 2050 to have his bitcoin guy write code for an economic transaction
242 2013-06-13 13:35:16 <Steve132> that is special for the needs of his customer
243 2013-06-13 13:35:21 <Steve132> and boom it just works
244 2013-06-13 13:35:42 <Steve132> without having to get it standardized
245 2013-06-13 13:35:45 <Steve132> would be very very cool
246 2013-06-13 13:35:59 <sipa> once we learn more through experience from complex transactions, maybe entire classes of opcodes or programs can be made standard
247 2013-06-13 13:36:11 <sipa> it's really just being cautious with things that have never actually been used
248 2013-06-13 13:37:09 <Steve132> I understand, but I sorta thought some kind of hard size limit as well as the no turing-completeness thing would be enough of a dos prevention
249 2013-06-13 13:37:29 <sipa> maybe there's just outright bugs in the implementation of some opcodes
250 2013-06-13 13:37:31 <nsh> dos is not the main problem
251 2013-06-13 13:37:44 <Steve132> imagine if windows 95 only ran code for "standard" programs of a form that they pre-approved...that would have completely killed the PC market
252 2013-06-13 13:37:46 <sipa> (in fact, we know there are, and they can't just be fixed)
253 2013-06-13 13:37:52 <nsh> it's how easy it is to whoops some arithemtic in an opcode
254 2013-06-13 13:37:59 <nsh> and suddenly massive theft
255 2013-06-13 13:38:26 <Steve132> I'd agree with banning certain buggy opcodes
256 2013-06-13 13:38:32 <nsh> sipa, "can't" be fixed?
257 2013-06-13 13:38:46 <Steve132> but why ban all TRANSACTIOSN
258 2013-06-13 13:38:58 <sipa> Steve132: they're not banned
259 2013-06-13 13:39:05 <sipa> they're just discouraged
260 2013-06-13 13:39:08 <Steve132> Well, not banned, but right
261 2013-06-13 13:39:36 <Steve132> it would be like saying "Because multiplication is buggy on our intel processors, only write programs related to word-processing"
262 2013-06-13 13:40:14 <Steve132> Also, I mean, respectfully, given the 32-bit limit on the arithmetic opcodes, what opcodes are dangerous or buggy?
263 2013-06-13 13:40:23 <Steve132> It seems like those would be by far the easiest
264 2013-06-13 13:40:25 <Steve132> to get right
265 2013-06-13 13:40:57 <Luke-Jr> Steve132: the problem is nobody knows
266 2013-06-13 13:41:02 <Luke-Jr> there's no tests
267 2013-06-13 13:41:30 <Luke-Jr> if you'd like to put the effort into testing everything properly, that's how we can enable everything everywhere
268 2013-06-13 13:41:44 <sipa> if we knew, they'd be enabled; it's more things like a) make sure every implementation behaves _exactly_ the same way  b) they are no ways to make you do tons of useless signature checks  c) they are no ways to spam the blockchain without sufficient mechanisms to discourage it, ...
269 2013-06-13 13:45:54 <sipa> but really, show that things are useful and they'll be enabled
270 2013-06-13 13:46:42 <Steve132> My point is that that attitude is kind of the innovation killer
271 2013-06-13 13:47:02 <Steve132> "Demonstrate that you NEED to be allowed to do this thing, then we'll allow you to do it, citizen"
272 2013-06-13 13:47:36 <Steve132> The cathedral and the bazaar, really
273 2013-06-13 13:48:22 <Steve132> I mean, it doesn't matter...if the bitcoin devs think that the risk outweighs the potential gains, thats fine
274 2013-06-13 13:48:33 <Steve132> I'm not going to be able to change anyone's minds
275 2013-06-13 13:48:44 <Luke-Jr> Steve132: this is more of everyone at the bazaar declining to trade with your funny new coins because they've never heard of it before
276 2013-06-13 13:48:48 <Steve132> but it seems sorta like it will drastically limit bitcoin's potential
277 2013-06-13 13:49:42 <sipa> i wish bitcoin was just a playground, really
278 2013-06-13 13:50:09 <sipa> i think the economic significance it has seriously hurts innovation
279 2013-06-13 13:50:38 <sipa> and nonstandard scripts is just a very minor part of that
280 2013-06-13 13:52:15 <vrs> Steve132: there's money involved in bitcoin, if there weren't, it wouldn't be a bit as far as it is now
281 2013-06-13 13:52:43 <Steve132> I don't see why money being involved in it automatically makes addition untrustworthy
282 2013-06-13 13:52:53 <vrs> so as a project, I think it can afford to have a bit higher barrier of entry than most
283 2013-06-13 13:52:57 <Steve132> I mean, a lot of faith is put in the rest of the codebase
284 2013-06-13 13:53:19 <vrs> no I mean, look at this whole ecosystem of sites and third party services
285 2013-06-13 13:53:50 <vrs> Tor, in comparison, are struggling to keep their browser bundle up to date because they lack maintainers
286 2013-06-13 13:54:14 <vrs> or they did one, two years ago
287 2013-06-13 13:54:56 <Steve132> The argument seems to be that non-standard transactions are therefore insecure because they might involve money
288 2013-06-13 13:55:09 <vrs> hm no
289 2013-06-13 13:55:28 <vrs> well not my argument at least
290 2013-06-13 13:55:42 <Steve132> Ok?
291 2013-06-13 13:56:43 <Steve132> >but it seems sorta like it will drastically limit bitcoin's potential, sipa: the economic significance it has seriously hurts innovation.  Vrs: there's money involved in bitcoin, if there weren't, it wouldn't be a bit as far as it is now,
292 2013-06-13 13:56:59 <Steve132> vrs: what is your argument, then?
293 2013-06-13 13:57:40 <vrs> for an open source projects involving tricky algorithms, bitcoin does very very well
294 2013-06-13 13:58:17 <vrs> look at Tor or I2P or all the other things from the anonbib that haven't even been implement to see where such projects usually end up
295 2013-06-13 13:58:25 <vrs> or what they struggle with
296 2013-06-13 13:58:46 <vrs> project* implemented*
297 2013-06-13 13:59:35 <vrs> and I think the success of bitcoin as an open source project is due to the fact that money is behind it, potentially a lot
298 2013-06-13 14:00:03 <vrs> so you can't exactly apply the same popularity/entry barrier reasoning to it as to other OS projects
299 2013-06-13 14:00:43 <vrs> bitcoin doesn't need to be as inviting, as a project
300 2013-06-13 14:01:24 <vrs> some day somebody will come and build all these tests
301 2013-06-13 14:01:34 <vrs> and I think it won't be too long
302 2013-06-13 14:02:41 <Steve132> Would formal verification of a script-interpreter be sufficient?
303 2013-06-13 14:03:26 <vrs> if you can formalize what you want in the first place
304 2013-06-13 14:03:29 <vrs> I guess yes
305 2013-06-13 14:03:35 <vrs> I'm not one of the devs
306 2013-06-13 14:03:55 <Steve132> Like, sipa: are you saying the actual problem is that nobody has tested the script-interpreter?
307 2013-06-13 14:05:26 <Steve132> Also, can "script" be called something else, like "bitcoin bytecode" or "bit-code" or something?
308 2013-06-13 14:06:31 <sipa> Steve132: that is one of thr concerns, but not the only one
309 2013-06-13 14:07:31 <Steve132> its just confusing to call it "script" when its not really human read-able (in hex) and it describes something specific for a specific interpreter
310 2013-06-13 14:07:39 <Steve132> What are the other concerns?
311 2013-06-13 14:09:15 <vrs> Steve132, how would you formalize "DoS-resistant"?
312 2013-06-13 14:09:37 <vrs> or "economically discourages a DoS"?
313 2013-06-13 14:10:28 <Steve132> Well, since there are no loops, the CPU time of the interpreter in the worst case is the sum of the runtimes of each instruction
314 2013-06-13 14:10:30 <sipa> there arw justba myriad of problems we've seen in the past... quadratic execution time, malleability of signatures, potential ways to cause infinite loops (op_eval related), ways to insert data in the chain that doesn't get redeemed, unspecified behaviour, ability to steal outputs due to an op_return bug, transactions that relayed and were accepted but never confirmed, ...
315 2013-06-13 14:10:50 <sipa> and reasonig about all that is complicated by every extra possibility
316 2013-06-13 14:10:55 <Steve132> so a miner could compute the CPU time required with a simple pre-scan
317 2013-06-13 14:11:33 <Steve132> Just remove everything self-referential (no op_eval) and loops
318 2013-06-13 14:11:44 <sipa> these do not exist
319 2013-06-13 14:12:01 <Steve132> sipa: what does not exist?
320 2013-06-13 14:12:28 <sipa> the problem is that every piece of non-understood code makes changes harder, and this is an absolutely essential part in the consensus mechanism
321 2013-06-13 14:12:41 <sipa> especially code that is not used in practice
322 2013-06-13 14:12:55 <sipa> so please, if you want to see things enabled, use them
323 2013-06-13 14:13:57 <Steve132> If you are getting bored, debating me, I understand, I'm not trying to be rude...but forgive me, isn't it possible to limit the allowable opcodes to not allow any kind of recursion or looping or computability
324 2013-06-13 14:14:15 <Steve132> then you can know with certainty exactly how long they will take in the worst case?
325 2013-06-13 14:14:24 <sipa> Steve132: the language is explicitly designed to not allow recursion or looping, right from the start
326 2013-06-13 14:14:43 <sipa> however, at some point, a change was made that would almost have enabled a way to cause infinite loops
327 2013-06-13 14:14:46 <Steve132> Like, the halting problem proof only applies to turing machine languages...its completely possible to predict the halting state of other languages
328 2013-06-13 14:14:49 <sipa> and it was detected at the last moment only
329 2013-06-13 14:15:50 <sipa> it's just such an intricate part, and understanding everything involved is much more than some theoretic properties of the language
330 2013-06-13 14:16:05 <Steve132> You said it was op_eval related...but thats obvious...reflection is a type of recursion so reflection shouldn't be allowed.
331 2013-06-13 14:16:33 <Steve132> Besides, lets say hypothetically a miner DOES begin to mine an infinite loop...couldn't the miner just decide "this isn't worth it.  Done with this" and kill it?
332 2013-06-13 14:16:51 <sipa> YES THEY CAN
333 2013-06-13 14:16:55 <nsh> you can always have timeouts, but that's an indeterminism
334 2013-06-13 14:17:04 <sipa> but it's not about a specific vulnerability
335 2013-06-13 14:17:17 <sipa> i'm pretty sure that there is no way to do cause infinite loops now
336 2013-06-13 14:17:37 <sipa> it's that the more complex the scripts are, the more complex it is to reason about what effects it can have
337 2013-06-13 14:17:39 <nsh> bitcoin *is* an infinite loop
338 2013-06-13 14:17:51 <sipa> and that can be security effects, efficiency effects, economic effects
339 2013-06-13 14:17:52 <Steve132> >it's that the more complex the scripts are, the more complex it is to reason about what effects it can have
340 2013-06-13 14:17:57 <Steve132> I get that
341 2013-06-13 14:18:14 <sipa> so please, again: if you want complex scripts, use them
342 2013-06-13 14:18:25 <sipa> and that's the last i'm going to say about it
343 2013-06-13 14:18:30 <Steve132> but what effects could it have?  I mean, like what's the danger?  I can only spend outputs I have access too anyway
344 2013-06-13 14:18:34 <Steve132> so what's the problem?
345 2013-06-13 14:18:44 <epscy> causing forks?
346 2013-06-13 14:19:07 <Steve132> Whats the big deal if I put some weird complex code on it that ends up having a bug?  Shouldn't that be my right?
347 2013-06-13 14:19:17 <epscy> i would also be worried about blockchain bloat
348 2013-06-13 14:19:20 <sipa> causing forks, bloating the chain, having people accept transactions that don't confirm, software that crashes, ability to knock out mining nodes, slow down blocks, ...
349 2013-06-13 14:19:28 <Steve132> epscy: how could a script cause a fork?
350 2013-06-13 14:19:40 <sipa> Steve132: by inconsistent implementation
351 2013-06-13 14:19:45 <Steve132> Ok, I get it
352 2013-06-13 14:20:03 <Steve132> thanks for the discussion.  Sorry if I came off as hostile, just curious
353 2013-06-13 14:20:10 <epscy> i really don't like the idea of random stuff in the blockchain
354 2013-06-13 14:20:35 <Steve132> epscy: can't people do that already?
355 2013-06-13 14:20:38 <epscy> it's growing at a ridiculous rate as it is
356 2013-06-13 14:20:47 <epscy> Steve132: yeah i believe so
357 2013-06-13 14:21:05 <epscy> Steve132: though something like 55% of all txes in the blockchain are satoshidice
358 2013-06-13 14:23:31 <helo> killer ap 0_o
359 2013-06-13 14:23:41 <helo> *app
360 2013-06-13 14:23:44 <nsh> evolution isn't free...
361 2013-06-13 14:24:08 <helo> everybody dies as a result :/
362 2013-06-13 14:28:48 <Steve132> sipa: debate aside, what do you think of my idea to change the name of "script" to something else?
363 2013-06-13 14:29:30 <Luke-Jr> NACK, there are already people trying to special-case all standard scripts in their alt implementations -.-
364 2013-06-13 14:30:09 <Steve132> Luke-Jr: thats kind of why I think its a bad idea...an actual interpreter would be a really good idea.
365 2013-06-13 14:30:20 <Steve132> instead of a tree of special cases
366 2013-06-13 14:36:59 <kuzetsa> [Local NY time, about 3 hours ago 09:26:54] <helo> if ECDSA is was broken today, what percentage of bitcoin will be immediately at risk?
367 2013-06-13 14:37:15 <kuzetsa> ^how to change scripts to use new sigtypes... was that really how this discussion started?
368 2013-06-13 14:37:46 <kuzetsa> was a fascinating discussion (just caught up)
369 2013-06-13 14:50:22 <helo> hopefully so unlikely that it's irrelevant, but it would be kind of nice to have a widely discussed game plan in place
370 2013-06-13 14:51:45 <Steve132> helo: all of them?
371 2013-06-13 14:51:53 <Steve132> unless I'm wrong
372 2013-06-13 14:58:27 <helo> Steve132: without the corresponding public key (which is unknown until btc at an address has been sent at least once), exploiters couldn't move such outputs. but a transaction publishes the public key out of necessity, so any node receiving one post-ecdsa could rewrite it however they wanted. so to transfer from an ecdsa-signed output to some other signature algo output, someone would have to prove they own the private key somehow without sharing the publ
373 2013-06-13 14:58:34 <helo> blah
374 2013-06-13 14:59:44 <DBordello> What is considered valid proof of work?  sha256(sha256(block_header)) < target?
375 2013-06-13 15:01:05 <TheUni> warren: ping. still need me?
376 2013-06-13 15:04:15 <helo> DBordello: yep
377 2013-06-13 15:05:09 <DBordello> I am hearing about limit discussion about a ASIC killswitch for certain vendors.  Could you elaborate on how that is possible?
378 2013-06-13 15:19:35 <helo> a vendor could have a killswitch in their ASICs, that they could use to disable their customers ASICs?
379 2013-06-13 15:19:43 <helo> is that the kind of thing you're referring to?
380 2013-06-13 15:59:04 <pjorrit> that's an interesting idea
381 2013-06-13 17:03:14 <jgarzik> ACTION yawns
382 2013-06-13 17:04:04 <michagogo> jgarzik: FYI, looks like I've become a seed
383 2013-06-13 17:08:13 <michagogo> Oh, NO
384 2013-06-13 17:08:15 <michagogo> NONONONONO
385 2013-06-13 17:09:33 <nsh> ACTION powerblinks at michagogo 
386 2013-06-13 17:10:19 <michagogo> Oh, no
387 2013-06-13 17:10:23 <michagogo> This is bad
388 2013-06-13 17:10:34 <michagogo> I think I accidentally the file :-(
389 2013-06-13 17:10:44 <nsh> bootstrap.dat?
390 2013-06-13 17:11:24 <michagogo> Yes.
391 2013-06-13 17:11:38 <nsh> worse things happen at sea. it's not like there are no copies :)
392 2013-06-13 17:12:00 <michagogo> I was wondering if it would let me seed the 4.5gb torrent off the 7.8gb file
393 2013-06-13 17:12:23 <nsh> heh
394 2013-06-13 17:12:26 <michagogo> And it looks like it did, except that it sliced off the new part
395 2013-06-13 17:12:36 <michagogo> ;_;
396 2013-06-13 17:12:50 <pjorrit> yea torrents are controlling bitches
397 2013-06-13 17:12:52 <nsh> that is bad behaviour from your torrent software...
398 2013-06-13 17:13:41 <michagogo> ??Torrent, btw
399 2013-06-13 17:14:56 <nsh> maybe file a ticket. i'm having trouble imagining how truncating a file without warnings can be good policy
400 2013-06-13 17:16:41 <nsh> ACTION is still only at 0.16 ratio due to dire upstream bandwidth :/
401 2013-06-13 17:16:46 <michagogo> File a ticket? How/where?
402 2013-06-13 17:16:48 <matjeh> chattr +i bootstrap.dat
403 2013-06-13 17:17:02 <nsh> ;;google uTorrent bugs report
404 2013-06-13 17:17:03 <gribble> How to report a bug (Page 1) / Bug Reports / ??Torrent Community Forums: <https://forum.utorrent.com/viewtopic.php?id=29748>; Bug Reports (Page 1) / ??Torrent Community Forums: <http://forum.utorrent.com/viewforum.php?id=5>; ??Torrent Community Forums: <http://forum.utorrent.com/>
405 2013-06-13 17:17:57 <Ry4an> matjeh: or 'a'
406 2013-06-13 17:18:14 <Ry4an> it's an append-only format isn't it?
407 2013-06-13 17:18:29 <nsh> (michagogo, matjeh's command may recover your file depending on filesystem)
408 2013-06-13 17:18:36 <michagogo> nsh: NTFS
409 2013-06-13 17:18:41 <nsh> nm
410 2013-06-13 17:19:23 <nsh> probably easier to redownload
411 2013-06-13 17:26:31 <michagogo> Anyone have the magnet link for the 4.52gb bootstrap.dat?
412 2013-06-13 17:34:10 <nsh> i found:  magnet:?xt=urn:btih:6fe493ba606847eac163baf35aae9db319735482&dn=bootstrap.dat&tr=udp://tracker.openbittorrent.com:80&tr=udp://tracker.publicbt.com:80&tr=udp://tracker.ccc.de:80&tr=udp://tracker.istole.it:80
413 2013-06-13 17:34:22 <nsh> but that's 4.86GB
414 2013-06-13 17:34:34 <vrs> nsh: no, slicing the file sounds like normal behaviour
415 2013-06-13 17:34:56 <vrs> just dd the relevant part of the file to where the torrent should seed from, or make it read only
416 2013-06-13 17:35:21 <nsh> unprompted clobber is an easy way for users to shoot themselves in the foot
417 2013-06-13 17:35:28 <nsh> ACTION shrugs
418 2013-06-13 17:35:44 <vrs> well, torrent clients
419 2013-06-13 17:35:51 <vrs> they aren't exactly written as unix tools
420 2013-06-13 17:36:19 <nsh> ACTION nods
421 2013-06-13 17:37:25 <Ry4an> does AWS S3 still make every files available as a torrent by default?   I've used that for automatically updating bulk downloads in the past.
422 2013-06-13 17:38:23 <nsh> oh, that sounds neat
423 2013-06-13 17:38:31 <Ry4an> http://noisemore.wordpress.com/2006/03/14/amazon-s3-has-bittorrent-support/
424 2013-06-13 17:38:57 <Ry4an> you just throw ?torrent  after any GET and you get a generated .torrent instead
425 2013-06-13 17:39:25 <nsh> 5 ?? . Torrent URL : ???Torrent URL' generates a URL that is in the form of Bit Torrent file. Using this URL, object can be downloaded with a Bit Torrent client application. Since this application fetches data from various sources, it saves both time and bandwidth usage. It also eliminates the dependency from the particular host. To generate the torrent URL you need to click on ???Torrent Url??? button and you will get the url(s) with " ?torrent " suf
426 2013-06-13 17:39:25 <nsh> fix.
427 2013-06-13 17:39:34 <nsh> vintage march 2013: http://www.bucketexplorer.com/documentation/amazon-s3--how-to-generate-url-for-amazon-s3-file.html
428 2013-06-13 17:39:49 <Ry4an> mine was from 06
429 2013-06-13 18:05:43 <BlueMatt> yea the "if (fDebug) assert("mempool transaction missing input" == 0);" assert fails waaay too much if you mine yourself on testnet/regtestnet
430 2013-06-13 18:06:29 <sipa> the easy solution would be to remove that transaction from the mempool in that case
431 2013-06-13 18:06:37 <sipa> but i'd prefer finding out how it got there...
432 2013-06-13 18:08:11 <BlueMatt> if its a wallet tx it bypasses the get-in-mempool check for no real reason
433 2013-06-13 18:08:16 <BlueMatt> that just needs removed
434 2013-06-13 18:09:46 <BlueMatt> s/check/checks/
435 2013-06-13 18:12:23 <sipa> right, indeed
436 2013-06-13 18:13:19 <BlueMatt> I think ive done that in all of like 3 separate branches
437 2013-06-13 18:13:22 <BlueMatt> over like 2 years
438 2013-06-13 18:13:33 <BlueMatt> but all large branches that never got finished/merged
439 2013-06-13 18:15:00 <realazthat> wth is it with bitcoin projects and AGPL
440 2013-06-13 18:15:09 <BlueMatt> which ones
441 2013-06-13 18:15:09 <realazthat> ACTION burns them with fire
442 2013-06-13 18:15:14 <realazthat> several of them
443 2013-06-13 18:15:20 <BlueMatt> ACTION has a few, but relicenses if anyone asks
444 2013-06-13 18:15:47 <realazthat> armory, opentransactions,libbitcoin
445 2013-06-13 18:15:51 <BlueMatt> well, I think only one
446 2013-06-13 18:15:53 <BlueMatt> ahh
447 2013-06-13 18:16:21 <realazthat> bitcoin-abe
448 2013-06-13 18:16:59 <BlueMatt> anyone seen segfault at "int64 nValueIn = coins.vout[txin.prevout.n].nValue;" main.cpp:4255 with test-patches
449 2013-06-13 18:17:13 <realazthat> and this is just preposterous: "The project is licensed as AGPL with a lesser clause. It may be used within a proprietary project, but the core library and any changes to it must be published online"
450 2013-06-13 18:17:18 <realazthat> - libbitcoin
451 2013-06-13 18:17:25 <realazthat> why AGPL then ??!
452 2013-06-13 18:17:28 <realazthat> morons
453 2013-06-13 18:17:41 <BlueMatt> sipa: ^
454 2013-06-13 18:17:42 <realazthat> that is LGPL
455 2013-06-13 18:17:50 <Luke-Jr> realazthat: sounds like LAGPL :p
456 2013-06-13 18:18:02 <Luke-Jr> realazthat: AGPL = if you can access it over the network, you have a right to source
457 2013-06-13 18:18:03 <realazthat> why why use something like AGPL at all
458 2013-06-13 18:18:10 <realazthat> uch
459 2013-06-13 18:18:13 <realazthat> ACTION shudders
460 2013-06-13 18:18:16 <Luke-Jr> AGPL makes sense for network servers
461 2013-06-13 18:18:18 <Luke-Jr> like Eloipool
462 2013-06-13 18:18:38 <realazthat> tbh, in my mind, anything GPL is just waiting to be reimplemented as non-copyleft
463 2013-06-13 18:19:12 <nsh> that's because you're a freedom traitor, realazthat
464 2013-06-13 18:19:18 <Luke-Jr> license trolling is really off-topic here..
465 2013-06-13 18:19:23 <realazthat> :P
466 2013-06-13 18:19:31 <Luke-Jr> take it to #anime or something
467 2013-06-13 18:19:32 <Luke-Jr> :P
468 2013-06-13 18:19:33 <realazthat> I like free, real freedom
469 2013-06-13 18:19:35 <nsh> lol
470 2013-06-13 18:19:51 <Luke-Jr> realazthat: freedom to lock others up, you mean
471 2013-06-13 18:19:55 <realazthat> but AGPL is just something I can't touch
472 2013-06-13 18:20:13 <realazthat> Luke-Jr: I'll take that freedom, but not give it :D
473 2013-06-13 18:56:57 <Guest__> hello, can someone help me with bitcoind API - listunspent and createrawtransaction
474 2013-06-13 18:58:12 <nsh> Guest__, please state your problem in detail
475 2013-06-13 19:00:24 <Guest__> nsh, if I need to include tx like satoshidice do to create new transaction, how to deal with fees and low coin balance? e.g. I received tx for 0.1, but on this account I don't have enough coins, is it possible to get them from another account?
476 2013-06-13 19:01:04 <sipa> you can use any wallet coins (unspent outputs) as inputs to a transaction
477 2013-06-13 19:01:12 <sipa> the address they were sent to does not matter
478 2013-06-13 19:02:25 <Guest__> but if I for example has fresh wallet with two accounts A & B, A has 0.1 coin B has 0 coins, on the B account i receive tx for 0.1 coin, and for example i want to return 0.15 coins take 0.04 to change and rest to fees, how to create such raw transaction?
479 2013-06-13 19:03:52 <uberhaxlor__> http://www.instructables.com/id/Bitcoin-Simple-Sticky-Wallet/ sticky wallet please test and give feedback thanks ;)
480 2013-06-13 19:10:03 <gfawkes> question.. how exactly could i go about getting a single satoshi assigned to a single new address in my wallet?
481 2013-06-13 19:10:22 <sipa> why would you want that?
482 2013-06-13 19:10:38 <sipa> (in 0.8.2 you can't, btw)
483 2013-06-13 19:10:47 <pjorrit> setting up savings accounts for his kids obviously
484 2013-06-13 19:10:51 <gfawkes> well at some point we're gonna be at that level of granularity
485 2013-06-13 19:10:58 <sipa> maybe
486 2013-06-13 19:11:23 <gfawkes> so i'm gaming in my mind the ramifications of needing to exchange satoshis
487 2013-06-13 19:11:54 <gfawkes> if you got a single satoshi to a single address, then the private key could be exchanged
488 2013-06-13 19:12:14 <sipa> if you trust your peer
489 2013-06-13 19:12:32 <gfawkes> that kind of creates a derivative market
490 2013-06-13 19:12:45 <sipa> also, why only a single satoshi?
491 2013-06-13 19:12:54 <sipa> you can trade by trading keys in any case
492 2013-06-13 19:13:13 <sipa> but it's a pretty bad idea, as the receiver can't know the sender won't spend the coins from under him
493 2013-06-13 19:13:29 <gfawkes> who wouldn't want their satoshis to be exchanged for $1? :)
494 2013-06-13 19:13:44 <sipa> i don't see the relevance of the amount stored on it
495 2013-06-13 19:13:56 <nsh> ideas that end in "that creates a derivatives market" considered harmful
496 2013-06-13 19:13:58 <gfawkes> ot
497 2013-06-13 19:14:18 <gfawkes> it's like saying would you rather sell 12 packs of sodas or individual cans
498 2013-06-13 19:14:32 <gfawkes> some folks like to sell individual cans, others like to sell packs
499 2013-06-13 19:15:11 <gfawkes> right now we're kind of forced to sell blocks of bitcoins rather than individual satoshis
500 2013-06-13 19:15:45 <sipa> there is no 'forcing' as there is no inherent advantage to smaller amounts
501 2013-06-13 19:16:00 <sipa> an individual can has an advantage over a pack, in that it is ligher to carry for example
502 2013-06-13 19:16:21 <sipa> but that is not true for bitcoin: any coin is as easy to handle as any other, regardless of its value
503 2013-06-13 19:16:53 <sipa> hell, even 0 satoshi coins are possible in theory
504 2013-06-13 19:17:00 <sipa> go trade those!
505 2013-06-13 19:17:05 <michagogo> In theory?
506 2013-06-13 19:17:16 <sipa> they're non-standard and have been for a while
507 2013-06-13 19:17:17 <gfawkes> correct, you and i get that because of interest and technical understanding, but _people_ in general don't get that
508 2013-06-13 19:17:31 <gfawkes> they like their discrete little world
509 2013-06-13 19:17:53 <gfawkes> so if you sold someone "a bitcoin" that was a single satoshi
510 2013-06-13 19:18:05 <nsh> the lowest common denominator of comprehensive is no basis for technology
511 2013-06-13 19:18:22 <nsh> *comprehension
512 2013-06-13 19:18:34 <gfawkes> they'd be just as happy as long as that satoshi was worth the same as the fractional representation
513 2013-06-13 19:19:10 <gfawkes> im not saying that it is, but if someone was looking to retail bitcoins they'd be forced to deal with that
514 2013-06-13 19:20:26 <nsh> how many people do you know who retail cash?
515 2013-06-13 19:20:47 <gfawkes> lots, they call themselves We Buy Gold
516 2013-06-13 19:20:55 <nsh> ACTION frowns
517 2013-06-13 19:21:29 <gfawkes> there are literally a dozen gold purchasers and sellers in retail outlets within a 2 mile radius of where i am
518 2013-06-13 19:21:58 <gfawkes> people dont think of them as cash retailers though
519 2013-06-13 19:22:08 <gfawkes> but that's all they are
520 2013-06-13 19:22:23 <nsh> i imagine they are pawnbrokers, which is a pretty different line of business
521 2013-06-13 19:22:29 <gfawkes> nope
522 2013-06-13 19:22:44 <nsh> ok
523 2013-06-13 19:22:52 <gfawkes> http://www.cashforgolddallas.com/
524 2013-06-13 19:22:57 <gfawkes> that's an example
525 2013-06-13 19:25:03 <gfawkes> what would be interesting is to create some kind of micro/satoshi level transmission mechanism
526 2013-06-13 19:25:27 <gfawkes> such that people could actually leverage a satoshi w/o worrying about the 0.005 fee
527 2013-06-13 19:27:07 <nsh> gfawkes, http://bitcoin.stackexchange.com/questions/4937/are-there-any-active-bitcoin-leveraged-trading-platforms-available
528 2013-06-13 19:27:27 <nsh> bitcoin is not particularly suited to very small transactions
529 2013-06-13 19:28:00 <gfawkes> only right now because the fiat price is so low
530 2013-06-13 19:29:03 <nsh> there will always be a level at which relaying and mining transactions becomes uneconomic
531 2013-06-13 19:29:23 <nsh> the alternative is spam
532 2013-06-13 19:30:32 <gfawkes> right, but i'd bet that if a single satoshi was worth say $5USD, that there wouldn't be too many folks just spamming the network
533 2013-06-13 19:30:48 <gfawkes> it would become uneconomic to do so
534 2013-06-13 19:30:49 <phantomcircuit> gfawkes, there are very clear rules and regulations around the sale/purchase of gold for cash
535 2013-06-13 19:31:21 <phantomcircuit> those rules are in general much less strict than the ones FinCEN guidance would imply similar operations dealing in bitcoins would have to follow
536 2013-06-13 19:31:38 <phantomcircuit> largely because there are specific rules for gold in a lot of law
537 2013-06-13 19:31:47 <phantomcircuit> (which really doesn't make sense but whatever)
538 2013-06-13 19:31:59 <theorbtwo> phantomcircuit: Holdover from gold standards, I expect.
539 2013-06-13 19:32:16 <phantomcircuit> theorbtwo, hold over from long before that even i suspect
540 2013-06-13 19:32:31 <Guest__> checked https://people.xiph.org/~greg/signdemo.txt, but still dont get how to create a new raw transaction which is BIGGER than one that just camein, and if I dont have another unspent transaction to include with the new one?
541 2013-06-13 19:33:05 <phantomcircuit> sipa, can you remove a private key from the wallet?
542 2013-06-13 19:33:08 <phantomcircuit> (cleanly)
543 2013-06-13 19:33:38 <gmaxwell> Guest__: uh, you can't create a transaction with more funds than you have.
544 2013-06-13 19:34:25 <Guest__> gmaxwell, but if I have funds just not in the unspent list?
545 2013-06-13 19:34:58 <gfawkes> i think fincen is trying to cool things off a bit from reading the speech transcript released today (http://www.fincen.gov/news_room/speech/pdf/20130613.pdf)
546 2013-06-13 19:35:21 <gmaxwell> Guest__: does not compute
547 2013-06-13 19:35:29 <phantomcircuit> Guest__, you cant spent funds if they're spent already either
548 2013-06-13 19:35:42 <phantomcircuit> unless you're trying to generate a double spend
549 2013-06-13 19:35:49 <phantomcircuit> but the rpc code doesn't allow that
550 2013-06-13 19:35:56 <phantomcircuit> since it's not a useful thing to let people do
551 2013-06-13 19:36:03 <phantomcircuit> and it confuses some of the wallet code
552 2013-06-13 19:36:37 <Guest__> gmaxwell, phantomcircuit, then how satoshidice do this? is it always has a list of unspent transactions to include with?
553 2013-06-13 19:37:09 <Guest__> why it's not possible to include funds from wallet with the new rawtransaction?
554 2013-06-13 19:37:52 <gmaxwell> Your question doesn't make sense, sorry.
555 2013-06-13 19:38:42 <gmaxwell> That site also gets ripped off a fair amount, so you should be cautious in immitating them, whatever the heck you're doing.
556 2013-06-13 19:39:02 <Guest__> gmaxwell, satoshidice works with zero confirmations, it includes your transaction to send you winning amount
557 2013-06-13 19:39:47 <phantomcircuit> Guest__, they run their own client entirely
558 2013-06-13 19:39:52 <phantomcircuit> they do some very stupid things
559 2013-06-13 19:40:19 <phantomcircuit> indeed the only reason they aren't losing money is that the house edge is massive
560 2013-06-13 19:40:24 <gmaxwell> Guest__: I know how the site works.
561 2013-06-13 19:40:49 <Guest__> i know SD uses bitcoinj, they run it because bitcoin didn't have raw things until 0.7
562 2013-06-13 19:40:52 <gmaxwell> phantomcircuit: well, more because they wait for confirmation for txn which are not trivial amounts.
563 2013-06-13 19:41:35 <phantomcircuit> gmaxwell, not really if you do the math their house edge is large enough that even if you could pull off nearly 90% double spends you still would lose money
564 2013-06-13 19:41:45 <michagogo> gmaxwell: How can they get ripped off?
565 2013-06-13 19:41:55 <Guest__> but my question is how do SD creates new transaction with my input which is bigger?
566 2013-06-13 19:41:58 <gmaxwell> michagogo: double spend your losses.
567 2013-06-13 19:42:14 <michagogo> Guest__: They put in more inputs
568 2013-06-13 19:42:26 <gmaxwell> phantomcircuit: Try harder at math.
569 2013-06-13 19:42:35 <Guest__> gmaxwell i think about doublespent losses, they send you back you bid amount * 0.005. preventing you to doublespent
570 2013-06-13 19:42:38 <phantomcircuit> gmaxwell, hmm maybe that was for re rolling
571 2013-06-13 19:42:46 <michagogo> gmaxwell: Ah.
572 2013-06-13 19:43:05 <phantomcircuit> gmaxwell, yeah it is, iirc the point at which they start losing money is 84% of lossing transactions would need to get rerolled
573 2013-06-13 19:43:09 <michagogo> So not sending money when they shouldn't be, but rather just avoiding losses
574 2013-06-13 19:43:27 <michagogo> Though it may be hard to get your transaction propagated across the network...
575 2013-06-13 19:44:04 <gmaxwell> Guest__: you're confused and going to get you (or whomever you're working for) ripped off.
576 2013-06-13 19:44:31 <phantomcircuit> michagogo, find me their node and you'll find them bankrupt in no time
577 2013-06-13 19:45:19 <michagogo> Would they not broadcast the transaction widely before or at the same time as they broadcast the result?
578 2013-06-13 19:45:43 <phantomcircuit> michagogo, i doubt they broadcast the transaction at all
579 2013-06-13 19:45:46 <phantomcircuit> just the result
580 2013-06-13 19:45:50 <phantomcircuit> thus
581 2013-06-13 19:45:53 <phantomcircuit> find me their node
582 2013-06-13 19:46:05 <michagogo> Why would they not broadcast it?
583 2013-06-13 19:46:21 <phantomcircuit> michagogo, because it's not the obvious mechanism of action
584 2013-06-13 19:46:30 <Guest__> gmaxwell anyways i want to understand it. and my current problem is to get how to create rawtransaction with bigger outputs
585 2013-06-13 19:46:41 <phantomcircuit> the obvious mechanism is to simply process incoming transactions and broadcast the result
586 2013-06-13 19:46:50 <gmaxwell> Guest__: add more inputs.
587 2013-06-13 19:47:27 <phantomcircuit> Guest__, you need to read more about how things actually work before you're going to be able to do whatever it is you're trying to do
588 2013-06-13 19:47:39 <phantomcircuit> you seem to have a fundamental misunderstanding of how the network actually works
589 2013-06-13 19:47:47 <Guest__> gmaxwell i get it, but if in case SD my input is the only one they have in time, do they send money to themselves to include it or what?
590 2013-06-13 19:47:49 <phantomcircuit> michagogo, get it?
591 2013-06-13 19:48:18 <gmaxwell> Guest__: if your input is the only one they have that means they are bankrupt and can't make good on their bets.
592 2013-06-13 19:48:50 <nsh> i think what we're learning here is that you need capital to start a casino
593 2013-06-13 19:49:05 <phantomcircuit> nsh, only if the first bet is a winner
594 2013-06-13 19:49:12 <Guest__> okay, next question
595 2013-06-13 19:49:35 <nsh> phantomcircuit, right :)
596 2013-06-13 19:49:53 <phantomcircuit> damn i forget what i was doing
597 2013-06-13 19:50:07 <Guest__> with zero confirmation they include my input to prevent me from doublespending, which is better in that case include only my transaction or someone else too?
598 2013-06-13 19:50:30 <gmaxwell> it doesn't prevent you from double spending.
599 2013-06-13 19:51:24 <Guest__> in case the transaction will not be included in the block
600 2013-06-13 19:52:25 <phantomcircuit> michagogo, get it?
601 2013-06-13 19:52:43 <Luke-Jr> Guest__: spending an input does NOTHING to stop it from being double-spent
602 2013-06-13 19:54:03 <Luke-Jr> Guest__: also note *part* of the reason SD is afloat, is because they don't operate honestly - if someone double-spends them, they often leave numerous winners unpaid entirely
603 2013-06-13 19:54:19 <Guest__> yeap my bad, i meant if tx is invalid, both transaction will be declined
604 2013-06-13 19:55:36 <Guest__> Luke-Jr, yeap that's why i'm asking. if one transaction is invalid it will invalidate another, good, one.
605 2013-06-13 19:56:30 <Guest__> I thought to include only one transaction in createrawtransaction and cover it with own funds, to exclude rest transactions.
606 2013-06-13 19:57:17 <michagogo> phantomcircuit: I think so
607 2013-06-13 20:56:59 <lado> What's wrong with this course?
608 2013-06-13 20:59:11 <nsh> lado, make sense.