1 2011-11-13 00:12:35 iocor has quit (Quit: Computer has gone to sleep.)
   2 2011-11-13 00:13:49 karnac has joined
   3 2011-11-13 00:15:36 stalled has joined
   4 2011-11-13 00:16:17 TD has quit (Quit: TD)
   5 2011-11-13 00:16:39 <CIA-89> bitcoinj: miron@google.com * r260 /trunk/src/com/google/bitcoin/core/PeerGroup.java: Improve locking in PeerGroup. Do not use shutdownNow. Resolves issue 93
   6 2011-11-13 00:16:41 <roconnor> etotheipi_: hi, do you know how negative -1 is represented in scripts?
   7 2011-11-13 00:17:03 <etotheipi_> hmm... isn't that what OP_NEGATE is for?
   8 2011-11-13 00:17:06 <etotheipi_> or something along those lines
   9 2011-11-13 00:18:10 <etotheipi_> OP_1NEGATE
  10 2011-11-13 00:18:23 clr_ has quit (Ping timeout: 248 seconds)
  11 2011-11-13 00:19:15 <etotheipi_> roconnor, one trip up I ran into I just remembered... OP_0 actually pushes [] (empty array) onto the stack
  12 2011-11-13 00:19:35 <etotheipi_> roconnor, which evaluates to false AND has OP_SIZE=0
  13 2011-11-13 00:19:59 <etotheipi_> roconnor, that one tripped me up pretty bad when trying to debug those crazy scripts
  14 2011-11-13 00:23:27 <gmaxwell> denisx: \0/
  15 2011-11-13 00:23:53 <denisx> gmaxwell: but it has some limits
  16 2011-11-13 00:24:11 <denisx> it is only async up to the next call, then the last one must be finished
  17 2011-11-13 00:24:28 <sipa> hmm, what program?
  18 2011-11-13 00:24:33 <denisx> pushpool
  19 2011-11-13 00:24:45 <sipa> ok
  20 2011-11-13 00:24:58 <gmaxwell> denisx: ah, so you just moved them into a seperate thread and have a simple input queue or something like that?
  21 2011-11-13 00:25:08 <roconnor> etotheipi_: More specificially, how is -1 represented as a vector of chars?
  22 2011-11-13 00:25:13 <denisx> gmaxwell: no
  23 2011-11-13 00:25:21 <etotheipi_> roconnor, oh... that I don't actually know
  24 2011-11-13 00:25:26 <roconnor> etotheipi_: 0xff?
  25 2011-11-13 00:25:36 <etotheipi_> roconnor, I never saw a script that used -1, so I didn't need to figure it out
  26 2011-11-13 00:25:39 <roconnor> leading bit determines the sign?
  27 2011-11-13 00:25:43 <roconnor> etotheipi_: :)
  28 2011-11-13 00:25:45 <denisx> I simply switched from PQexecParams to PQsendQueryParams
  29 2011-11-13 00:25:50 <roconnor> etotheipi_: ok
  30 2011-11-13 00:25:55 <gmaxwell> denisx: if you're using the async api you could simply have an array of handles for getting the results and then you could have a bunch outstanding.. though one outstanding is probably enough.
  31 2011-11-13 00:26:01 64MAA32AG is now known as shadders
  32 2011-11-13 00:26:05 <sipa> roconnor: 79
  33 2011-11-13 00:26:56 OneFixt has quit (Ping timeout: 248 seconds)
  34 2011-11-13 00:27:31 <etotheipi_> roconnor,            CBigNum bn((int)opcode - (int)(OP_1 - 1));                  stack.push_back(bn.getvch());
  35 2011-11-13 00:27:49 <etotheipi_> that's from the src... so it's pushed back the same as all the other non-OP_0  OP_X codes
  36 2011-11-13 00:28:35 <etotheipi_> roconnor, damnit... you're right, I don't know
  37 2011-11-13 00:28:46 <etotheipi_> "OP_1 through OP_16 push single bytes (0x01 through 0x10) onto the stack."
  38 2011-11-13 00:28:56 <etotheipi_> I don't know how -1 would be represented, if not 0xff
  39 2011-11-13 00:29:59 <etotheipi_> It seems you can look at CBigNum::getvch() if the underlying value is -1
  40 2011-11-13 00:31:10 <sipa> i just looked at openssl's bn2mpi code
  41 2011-11-13 00:31:32 clr_ has joined
  42 2011-11-13 00:31:32 clr_ has quit (Client Quit)
  43 2011-11-13 00:31:51 <sipa> it seems negative numbers are indeed stored as two's complement
  44 2011-11-13 00:39:28 tyn has joined
  45 2011-11-13 00:39:40 theorb has joined
  46 2011-11-13 00:39:54 <roconnor> etotheipi_, sipa: in particular this implies that [0x7f] + [0x01] isn't [0x80] ... it is presumably [0x00,0x80]
  47 2011-11-13 00:40:34 theorbtwo has quit (Ping timeout: 256 seconds)
  48 2011-11-13 00:40:46 theorb is now known as theorbtwo
  49 2011-11-13 00:43:02 chrisb__ has joined
  50 2011-11-13 00:45:07 <etotheipi_> roconnor, but those aren't valid op_codes
  51 2011-11-13 00:45:30 <etotheipi_> roconnor, any numbers other than OP_1-OP_16 are represented with a PUSHDATA call first
  52 2011-11-13 00:45:57 <roconnor> etotheipi_: sorry, What I mean by what I wrote is PushData 0x7f, OP_1, OP_Add
  53 2011-11-13 00:46:09 <cjdelisle> You writing an alt client with scripting?
  54 2011-11-13 00:46:10 <sipa> roconnor: indeed
  55 2011-11-13 00:46:30 <roconnor> cjdelisle: an alt something;  I hesitate to call it a client at this point
  56 2011-11-13 00:46:45 <sipa> i think 'library' is the appropriate term?
  57 2011-11-13 00:46:57 <cjdelisle> just a script verifier would be awesome
  58 2011-11-13 00:47:11 * sipa wants a lazy script evaluator
  59 2011-11-13 00:47:36 <roconnor> cjdelisle: I'm writing a functional reference implemenation for validating blockchains
  60 2011-11-13 00:47:46 <cjdelisle> ooo
  61 2011-11-13 00:47:56 <cjdelisle> I have 1 suggestion!
  62 2011-11-13 00:48:00 <sipa> so you can write OP_1 (OP_CHECKSIG stuff) OP_OR OP_VERIFY, which doesn't execute the expensive signature verification
  63 2011-11-13 00:48:03 <roconnor> I mean functional is two different ways :D
  64 2011-11-13 00:48:17 <cjdelisle> oo functional programming :D
  65 2011-11-13 00:48:21 <cjdelisle> <3
  66 2011-11-13 00:48:49 <roconnor> cjdelisle: it already works on standard transactions ... well almost; it needs to handle orphan blocks
  67 2011-11-13 00:48:54 <roconnor> instead of crashing :D
  68 2011-11-13 00:49:34 OneFixt has joined
  69 2011-11-13 00:49:38 <roconnor> I forget if it crashes or simply forgets it
  70 2011-11-13 00:49:43 <CIA-89> bitcoin: Luke Dashjr * r71fd9cbc02a9 gentoo/net-p2p/ (26 files in 3 dirs): net-p2p/{bitcoind,bitcoin-qt,wxbitcoin}: Conform to stricter main-portage-tree guidelines
  71 2011-11-13 00:49:50 <roconnor> cjdelisle: what is your suggestion?
  72 2011-11-13 00:49:51 <cjdelisle> at least you didn't crash
  73 2011-11-13 00:50:00 OneFixt is now known as Guest29497
  74 2011-11-13 00:50:44 <cjdelisle> It takes transactions from stdin and it outputs transaction inputs which must be filled to stdout.
  75 2011-11-13 00:51:11 <roconnor> cjdelisle: I don't understand
  76 2011-11-13 00:51:26 Guest29497 has quit (Changing host)
  77 2011-11-13 00:51:26 Guest29497 has joined
  78 2011-11-13 00:51:44 <roconnor> oh I kinda understand, but not entirely
  79 2011-11-13 00:51:45 Guest29497 is now known as OneFixt
  80 2011-11-13 00:51:59 <cjdelisle> that way you can start one, feed it 100 blocks through stdin and it will begin validating, then you start another and feed it the next hundred blocks worth of transactions and you take everything output from process 2 and feed it to process 1.
  81 2011-11-13 00:52:38 <cjdelisle> so by chaining a bunch or processes you can do really fast validation on a many core processor
  82 2011-11-13 00:53:23 <cjdelisle> make any sense?
  83 2011-11-13 00:53:30 <roconnor> cjdelisle: what do I do if the blocks are not in order?
  84 2011-11-13 00:54:04 <cjdelisle> You would have to validate the headers in the main process but that's no big deal.
  85 2011-11-13 00:54:12 <roconnor> I just require each succesive block have the previous block as the prevblock and fail otherwise?
  86 2011-11-13 00:54:14 <cjdelisle> I think most of the work is validating the transactions.
  87 2011-11-13 00:54:16 <roconnor> cjdelisle: interesting idea
  88 2011-11-13 00:54:45 <roconnor> I was trying to figureout how to validate block in parallel optimistically
  89 2011-11-13 00:55:19 <cjdelisle> just be dumb and require everything to be passed to it
  90 2011-11-13 00:56:33 <cjdelisle> so the blocks are downloaded out of order
  91 2011-11-13 00:56:33 <cjdelisle> ?
  92 2011-11-13 00:56:53 <roconnor> cjdelisle: sometimes
  93 2011-11-13 00:57:07 <roconnor> sometimes there are chain forks
  94 2011-11-13 00:57:10 dan__ has joined
  95 2011-11-13 00:58:44 <cjdelisle> you can seperate the code for validating transactions from the code for making the chain
  96 2011-11-13 00:59:41 <roconnor> well, you cannot fully validate a transaction without being able to look up the inputs in the chain
  97 2011-11-13 00:59:59 <roconnor> and you cannot know what the chain is without knowing how the block fits into that chain.
  98 2011-11-13 01:00:32 <cjdelisle> you can decide what the headers are and what order without looking at the transactions.
  99 2011-11-13 01:01:52 <cjdelisle> assuming you know what all of the headers are, you can put the transactions in chronological order
 100 2011-11-13 01:02:36 <roconnor> I see, get all the headers and then validated later in parallel
 101 2011-11-13 01:02:42 <roconnor> that's a good idea
 102 2011-11-13 01:02:43 localhost has quit (Remote host closed the connection)
 103 2011-11-13 01:02:51 <cjdelisle> you don't need to get *all* of the headers
 104 2011-11-13 01:04:04 AStove has quit ()
 105 2011-11-13 01:04:05 <cjdelisle> actually yea, it would be easier to get all of the headers and resolve all forks first.
 106 2011-11-13 01:04:43 <cjdelisle> then you just chop the chronologically ordered list of transactions into groups and feed one group to each process.
 107 2011-11-13 01:05:04 <cjdelisle> inputs which that process can't validate itself, it sends via stdout to the next process
 108 2011-11-13 01:05:09 kiba has quit (Read error: Connection reset by peer)
 109 2011-11-13 01:05:32 <cjdelisle> if there's an input which cascades all the way down to the bottom process and out the other end, it's invalid.
 110 2011-11-13 01:06:37 localhost has joined
 111 2011-11-13 01:08:05 <cjdelisle> each process just needs to keep a list of all unspent transactions and if a transaction input gets sent to that process, it compares it to it's input list.
 112 2011-11-13 01:10:56 <roconnor> cjdelisle: it's a little complicated;  I don't think I would do this for a while
 113 2011-11-13 01:11:11 <roconnor> but overall it seems like a pretty good idea
 114 2011-11-13 01:11:16 <cjdelisle> indeed, writing a script validator is complicated alone
 115 2011-11-13 01:11:27 <roconnor> ya, I'm doing that bit anyways
 116 2011-11-13 01:11:41 <cjdelisle> I had considered doing it but if I were to do it I would have just hacked it into bitcoin :)
 117 2011-11-13 01:11:54 <roconnor> but if you validate a block optimistically, you still need to wait to make sure that the inputs are not from spent coins.
 118 2011-11-13 01:12:14 <roconnor> getting the logic right is a bit tricky
 119 2011-11-13 01:12:20 <cjdelisle> mm indeed
 120 2011-11-13 01:12:55 <cjdelisle> perhaps it would make more sense if the processes used bidirectional pipes
 121 2011-11-13 01:13:02 <cjdelisle> so they can really communicate
 122 2011-11-13 01:13:18 <sipa> rat which point you're really defining a protocol
 123 2011-11-13 01:13:22 <sipa> -r
 124 2011-11-13 01:13:30 <cjdelisle> indeed
 125 2011-11-13 01:13:55 <cjdelisle> which I would troll hard by doing it the satoshi way and just let everyone discover how it actually works later...
 126 2011-11-13 01:14:10 <cocktopus> hehe
 127 2011-11-13 01:15:37 a_meteorite has quit (Ping timeout: 260 seconds)
 128 2011-11-13 01:16:07 a_meteorite has joined
 129 2011-11-13 01:16:37 dan__ has quit (Quit: dan__)
 130 2011-11-13 01:17:12 dan__ has joined
 131 2011-11-13 01:17:16 dan__ has quit (Client Quit)
 132 2011-11-13 01:20:08 <roconnor> I still don't understand the purpose of CODE_SEPARATOR
 133 2011-11-13 01:23:54 crazy_imp has quit (Read error: Operation timed out)
 134 2011-11-13 01:28:20 crazy_imp has joined
 135 2011-11-13 01:29:47 Cory has quit (Ping timeout: 245 seconds)
 136 2011-11-13 01:30:00 eueeueue has joined
 137 2011-11-13 01:33:22 karnac has quit (Quit: karnac)
 138 2011-11-13 01:34:46 karnac has joined
 139 2011-11-13 01:35:23 <roconnor> wtf, there is a negative 0
 140 2011-11-13 01:35:59 <roconnor> sipa: I don't understand this format at all :(
 141 2011-11-13 01:37:12 <roconnor> etotheipi_, sipa: it looks like [0x80] is negative 0
 142 2011-11-13 01:37:35 <roconnor> rather than -128
 143 2011-11-13 01:37:39 <roconnor> I think
 144 2011-11-13 01:38:26 * roconnor thinks no one will ever be able to reimplement this protocol
 145 2011-11-13 01:39:48 Burgundy has joined
 146 2011-11-13 01:39:59 <roconnor> etotheipi_: I don't suppose you can test if PUSHDATA [0x80] OP_0 OP_EQUAL is true or false?
 147 2011-11-13 01:40:07 karnac has quit (Ping timeout: 260 seconds)
 148 2011-11-13 01:41:21 dan__ has joined
 149 2011-11-13 01:44:38 twobitcoins has quit (Ping timeout: 260 seconds)
 150 2011-11-13 01:47:51 copumpkin has joined
 151 2011-11-13 01:47:53 <roconnor> sipa: I think you are wrong, this isn't two's complement
 152 2011-11-13 01:48:46 Beremat has joined
 153 2011-11-13 01:52:02 <roconnor> but this is really confusing
 154 2011-11-13 01:54:07 SomeoneWeird has joined
 155 2011-11-13 01:54:07 SomeoneWeird has quit (Client Quit)
 156 2011-11-13 01:59:20 <devrandom> sipa: devrandom == mi...@google.com == mi...@hyper.to
 157 2011-11-13 01:59:50 denisx has quit (Quit: denisx)
 158 2011-11-13 02:01:21 denisx has joined
 159 2011-11-13 02:01:49 SomeoneWeird has joined
 160 2011-11-13 02:06:11 eueeueue has quit (Quit: Page closed)
 161 2011-11-13 02:09:11 Rabbit67890 has joined
 162 2011-11-13 02:09:16 <Rabbit67890> is the network clooged?
 163 2011-11-13 02:09:46 <Rabbit67890> in technical details
 164 2011-11-13 02:13:36 <gmaxwell> How is babby formed?
 165 2011-11-13 02:13:59 Cory has joined
 166 2011-11-13 02:14:00 Cory has quit (Changing host)
 167 2011-11-13 02:14:00 Cory has joined
 168 2011-11-13 02:14:02 Cory has quit (Excess Flood)
 169 2011-11-13 02:14:26 Guest32138 has joined
 170 2011-11-13 02:14:32 wasabi1 has joined
 171 2011-11-13 02:15:05 Guest32138 is now known as Cory
 172 2011-11-13 02:15:10 Cory has quit (Changing host)
 173 2011-11-13 02:15:10 Cory has joined
 174 2011-11-13 02:16:58 wasabi has quit (Ping timeout: 258 seconds)
 175 2011-11-13 02:20:13 <copumpkin> you need to do way instain mother
 176 2011-11-13 02:20:22 <copumpkin> who kill thier babby because these babby cant frigth back?
 177 2011-11-13 02:20:32 <copumpkin> it was in the news this mroing a mother in ar who had kill her three kids!
 178 2011-11-13 02:20:35 <Rabbit67890> ...
 179 2011-11-13 02:20:39 <cjdelisle> roconnor: where are you looking?
 180 2011-11-13 02:20:40 <copumpkin> they are taking the babby back to new york too lady to rest
 181 2011-11-13 02:20:49 <roconnor> cjdelisle: bignum.h
 182 2011-11-13 02:20:57 <copumpkin> my pary are with the rather, who lost his chrilden. i am truley sorry for your lots
 183 2011-11-13 02:20:59 <Rabbit67890> any devs willing to help?
 184 2011-11-13 02:21:37 <Rabbit67890> im stuck at 0 confirmations and broadcasts for one transaction
 185 2011-11-13 02:21:46 <Rabbit67890> and i pastebinned some part of my log http://pastebin.com/ZXTm39EY
 186 2011-11-13 02:21:57 <cjdelisle> looks like everyone hates your tx
 187 2011-11-13 02:21:59 <cjdelisle> too bad
 188 2011-11-13 02:22:08 <Rabbit67890> FFFFFFFUUUUUUUUUUUUUU
 189 2011-11-13 02:22:16 <Rabbit67890> that was 10 BTC
 190 2011-11-13 02:22:27 <gmaxwell> Rabbit67890: what version of the software are you using?
 191 2011-11-13 02:22:46 <Rabbit67890> 4.0-beta
 192 2011-11-13 02:22:50 Cory has quit (Ping timeout: 252 seconds)
 193 2011-11-13 02:23:02 <gmaxwell> Rabbit67890: any modifications to it?
 194 2011-11-13 02:23:06 <Rabbit67890> no
 195 2011-11-13 02:23:08 <gmaxwell> also, I don't see any retransmits there.
 196 2011-11-13 02:23:18 <gmaxwell> how long have you been waiting?
 197 2011-11-13 02:23:26 <Rabbit67890> a few mins
 198 2011-11-13 02:23:30 <gmaxwell> ...
 199 2011-11-13 02:23:32 <Rabbit67890> or 10 - 20 minutes
 200 2011-11-13 02:23:55 <gmaxwell> sometimes a transaction doesn't get confirmed in the first block after it. You're expecting it to move too quickly.
 201 2011-11-13 02:24:16 <Rabbit67890> i started on block 15035
 202 2011-11-13 02:24:16 devrandom has quit (Quit: leaving)
 203 2011-11-13 02:24:39 <gmaxwell> oh, you're not even synced with the blockchain yet?
 204 2011-11-13 02:24:48 <gmaxwell> how many blocks do you see right now?
 205 2011-11-13 02:24:52 <gmaxwell> ;;bc,blocks
 206 2011-11-13 02:24:53 <gribble> 153038
 207 2011-11-13 02:24:55 <Rabbit67890> i started on 15035, im on 15038
 208 2011-11-13 02:25:08 <Rabbit67890> it was block 15035 when i sent it
 209 2011-11-13 02:25:10 <gmaxwell> are you dropping some digits??
 210 2011-11-13 02:25:18 <Rabbit67890> no?
 211 2011-11-13 02:25:29 <gmaxwell> The network is at _153038_
 212 2011-11-13 02:25:31 <roconnor> Rabbit67890: dropped a 3
 213 2011-11-13 02:25:41 <Rabbit67890> no
 214 2011-11-13 02:25:47 <Rabbit67890> i started a few mins at 15035
 215 2011-11-13 02:25:56 <Rabbit67890> my count is at 15038
 216 2011-11-13 02:25:58 <roconnor> Rabbit67890: you started a few mins at 153035
 217 2011-11-13 02:26:39 <gmaxwell> roconnor: can't tell, he doesn't even recieve any blocks in that log segment.
 218 2011-11-13 02:26:59 <gmaxwell> roconnor: if you're really at 15038 and not 153038 then you'll need to wait a while while it syncs up.
 219 2011-11-13 02:27:20 groffer has quit (Quit: leaving)
 220 2011-11-13 02:27:24 <Rabbit67890> i mean 153038
 221 2011-11-13 02:27:30 <Rabbit67890> didnt notice that 3
 222 2011-11-13 02:27:59 <gmaxwell> 153037 processed no zero fee txns.
 223 2011-11-13 02:28:16 denisx has quit (Quit: denisx)
 224 2011-11-13 02:28:34 Zarutian has quit (Remote host closed the connection)
 225 2011-11-13 02:28:36 <Rabbit67890> im dumping everything
 226 2011-11-13 02:28:39 <Rabbit67890> except my wallet
 227 2011-11-13 02:28:53 <gmaxwell> Whats that mean?
 228 2011-11-13 02:29:02 <Rabbit67890> deleting %APPDATA%/Bitcoin
 229 2011-11-13 02:29:11 <gmaxwell> why?
 230 2011-11-13 02:29:22 <gmaxwell> You really sound like you're being far too impatient.
 231 2011-11-13 02:29:37 <gmaxwell> Also, by restarting you're delaying retransmission.
 232 2011-11-13 02:29:58 <gmaxwell> So if indeed your txn hadn't propagated well you're making it worse.
 233 2011-11-13 02:31:41 <gmaxwell> Rabbit67890: can you find your txn here? http://bitcoincharts.com/bitcoin/
 234 2011-11-13 02:33:35 <cjdelisle> looking at satoshi's templating tricks is like looking at God
 235 2011-11-13 02:34:57 <roconnor> what templating tricks?
 236 2011-11-13 02:34:59 <Rabbit67890> not really
 237 2011-11-13 02:35:14 <Rabbit67890> God --> Satoshi --> Pools --> Us :3
 238 2011-11-13 02:37:53 theymos has joined
 239 2011-11-13 02:38:26 dan__ has quit (Quit: dan__)
 240 2011-11-13 02:39:29 erus` has quit (Remote host closed the connection)
 241 2011-11-13 02:40:38 <Rabbit67890> w00t reloading fixed it
 242 2011-11-13 02:40:46 chrisb__ has quit (Quit: Ex-Chat)
 243 2011-11-13 02:40:50 <Rabbit67890> i think my chain was corrupted so i loaded a backup
 244 2011-11-13 02:47:39 <gmaxwell> Rabbit67890: no,... most likely having patience fixed it.
 245 2011-11-13 02:48:05 <gmaxwell> It probably just got confirmed in 153039 and would have been confirmed in 153039 regardless of what you did.
 246 2011-11-13 02:48:52 <Rabbit67890> and i just wonder why your not op here
 247 2011-11-13 02:49:07 <roconnor> sipa: I'm now very confused
 248 2011-11-13 02:49:29 <cjdelisle> roconnor: can you tell me where to look for the serialization of bignums? am I looking at getvch()/setvch()?
 249 2011-11-13 02:49:58 <roconnor> cjdelisle: ya there
 250 2011-11-13 02:50:16 <cjdelisle> bignum.h is fucking brilliant IMO
 251 2011-11-13 02:50:32 <roconnor> cjdelisle: I was also browsing at setint64 and setuint64
 252 2011-11-13 02:50:57 Turingi has quit (Read error: Connection reset by peer)
 253 2011-11-13 02:51:03 <cjdelisle> Using templates and operator overloading to make bignums act like ints
 254 2011-11-13 02:51:05 <cjdelisle> brilliant
 255 2011-11-13 02:51:47 <gmaxwell> cjdelisle: thats ... what operator overloading is there for!
 256 2011-11-13 02:51:48 <roconnor> cjdelisle: OTOH, wrapping an existing bignum library to make another bignum library is ... confusing.
 257 2011-11-13 02:52:20 <gmaxwell> overloading is a shit feature generally, but using it to make bignums, vectors, and matrixes work sanely is pretty much the only good use for it.
 258 2011-11-13 02:52:48 <cjdelisle> gmaxwell++
 259 2011-11-13 02:53:07 <cjdelisle> I can't stand that streaming with >> it's just pointless
 260 2011-11-13 02:53:52 <gmaxwell> yea, I was so confused when I first saw C++ code... You're ... right shifting a string?! wtf?!
 261 2011-11-13 02:54:18 <gmaxwell> What even more sad is the occasional stackoverflow question where someone is confused because they're unaware of the shift operators.
 262 2011-11-13 02:54:39 eastender has joined
 263 2011-11-13 02:54:44 <cjdelisle> I took 1 c++ class and just did as told, then went on and learned java and C, then came back and was like "oh I was doing that horrific hack"
 264 2011-11-13 02:55:06 <cjdelisle> Actually in my 1 semester of c++ I wrote...
 265 2011-11-13 02:55:11 <cjdelisle> a bignum library
 266 2011-11-13 02:56:40 <gmaxwell> Want to talk about crazy uses of overloading... I sometimes use a C++ library that makes it so you write some code that implements an arbitrarily complex function x=f(a,b,c,d,e,...) and the library gives you the partial derivatives δx/a,δx/b,δx/c,...
 267 2011-11-13 02:57:20 <gmaxwell> it's ... utterly hideous, and if anything goes wrong— misplace a character— the compiler spits 40 pages of template garbage.
 268 2011-11-13 02:57:28 <roconnor> gmaxwell: ya, you can do that using automatic forward differentation
 269 2011-11-13 02:57:31 <cjdelisle> That went over my head but ok
 270 2011-11-13 02:57:38 <roconnor> it isn't so much harder than implementing complex numbers
 271 2011-11-13 02:58:16 <gmaxwell> roconnor: well, its reverse mode to get the partials as a function of each of the inputs.. forward mode gets you the partials on the outputs.
 272 2011-11-13 02:58:52 <gmaxwell> But yea... its a lifesaver because correctly implementing derivatives for software you keep changing is impossibly annoying. But the libraries are also impossibly annoying.. :)
 273 2011-11-13 02:59:04 <roconnor> :)
 274 2011-11-13 02:59:12 <gmaxwell> (at least in C++, perhaps there are also solutions in other languages which are nicer)
 275 2011-11-13 02:59:22 <roconnor> I use it to do por
 276 2011-11-13 02:59:27 <roconnor> portfolio optimisation
 277 2011-11-13 03:00:47 Sedra- has joined
 278 2011-11-13 03:01:34 <gmaxwell> Ah, I use it for audio codec development. Drop a whole chunk of the codec, complete with a psychoacoustic model, into an optimizer... and do local optimizations on hundreds of parameters at once.
 279 2011-11-13 03:03:25 Sedra has quit (Ping timeout: 240 seconds)
 280 2011-11-13 03:07:52 Kiba has joined
 281 2011-11-13 03:07:55 <Kiba> hello
 282 2011-11-13 03:08:21 <theymos> Hi. I haven't seen you in a while.
 283 2011-11-13 03:11:51 Sedra has joined
 284 2011-11-13 03:14:24 Sedra- has quit (Ping timeout: 258 seconds)
 285 2011-11-13 03:15:10 wasabi has joined
 286 2011-11-13 03:16:19 Rabbit67890 has quit ()
 287 2011-11-13 03:17:19 wasabi1 has quit (Ping timeout: 240 seconds)
 288 2011-11-13 03:17:28 Sedra has quit (Ping timeout: 258 seconds)
 289 2011-11-13 03:18:03 karnac has joined
 290 2011-11-13 03:18:29 Sedra has joined
 291 2011-11-13 03:40:05 devrandom has joined
 292 2011-11-13 03:44:14 twobitcoins has joined
 293 2011-11-13 03:44:54 Sedra- has joined
 294 2011-11-13 03:46:06 theymos has quit (Remote host closed the connection)
 295 2011-11-13 03:47:02 Sedra has quit (Ping timeout: 240 seconds)
 296 2011-11-13 03:48:00 devrandom has quit (Ping timeout: 248 seconds)
 297 2011-11-13 03:50:08 Sedra- has quit (Ping timeout: 258 seconds)
 298 2011-11-13 03:52:26 <cocktopus> calling all devs, especially gavinandresen: http://research.microsoft.com/apps/pubs/default.aspx?id=156072 look at the PDF in that article
 299 2011-11-13 03:52:43 <cocktopus> microsoft's ideas to imporve bitcoin
 300 2011-11-13 03:52:49 <cocktopus> improve*
 301 2011-11-13 03:53:32 Burgundy has left ()
 302 2011-11-13 03:54:51 <OneFixt> whoa
 303 2011-11-13 03:55:04 devrandom has joined
 304 2011-11-13 03:55:12 <cocktopus> mathematical proofs showing how to prevent a sybil attack
 305 2011-11-13 03:55:52 <OneFixt> excellent
 306 2011-11-13 04:01:45 <imsaguy> good press is a wonderful thing
 307 2011-11-13 04:02:36 <imsaguy> although, I find it ironic that the one company the open source community loves to complain about is the one that did it
 308 2011-11-13 04:02:49 <cocktopus> lol me too
 309 2011-11-13 04:02:49 <imsaguy> well not one, but one of the biggest
 310 2011-11-13 04:02:56 devrandom has quit (Ping timeout: 248 seconds)
 311 2011-11-13 04:02:59 <imsaguy> maybe microsoft isn't so bad after all ;)
 312 2011-11-13 04:03:02 <cocktopus> but i bet they have ulterior motives
 313 2011-11-13 04:03:21 <cocktopus> they have been discussign plans for a distributed voting system
 314 2011-11-13 04:03:30 <cocktopus> who's to say it won't be based on bitcoin
 315 2011-11-13 04:06:29 Kolky has quit (Quit: Bye bye!)
 316 2011-11-13 04:09:12 TheSeven has quit (Disconnected by services)
 317 2011-11-13 04:09:33 [7] has joined
 318 2011-11-13 04:11:30 L0k111 has joined
 319 2011-11-13 04:11:58 L0k111 has left ()
 320 2011-11-13 04:14:46 devrandom has joined
 321 2011-11-13 04:21:23 wasabi has quit (Read error: Connection reset by peer)
 322 2011-11-13 04:30:54 <MimeNarrator> Is there seriously a vulnerability in wallet encryption in 0.4 client?
 323 2011-11-13 04:31:47 tyn has quit (Quit: Leaving)
 324 2011-11-13 04:41:28 XMPPwocky has quit (Ping timeout: 245 seconds)
 325 2011-11-13 04:43:06 RobinPKR_ has joined
 326 2011-11-13 04:43:29 RobinPKR has quit (Read error: Connection reset by peer)
 327 2011-11-13 04:43:29 RobinPKR_ is now known as RobinPKR
 328 2011-11-13 04:46:09 shads has joined
 329 2011-11-13 04:55:13 karnac has quit (Quit: karnac)
 330 2011-11-13 05:04:38 d4de has quit (Ping timeout: 240 seconds)
 331 2011-11-13 05:07:07 <phantomcircuit> MimeNarrator, yes if you take a wallet and then encrypt it the private key might still be in plaintext
 332 2011-11-13 05:08:15 <cocktopus> is it safe to assume that new wallets that are encryped before any transactions happen are safe?
 333 2011-11-13 05:08:31 <gmaxwell> MimeNarrator: I cringe to see it called serious. It absolutely is serious, but at the same time only a small minority use encryption at all— and its still more secure than not using encryption.
 334 2011-11-13 05:08:44 <gmaxwell> cocktopus: no. They aren't.
 335 2011-11-13 05:09:18 <MimeNarrator> gmaxwell: really? Why on earth are so many people using no encryption at all?
 336 2011-11-13 05:09:43 <cocktopus> as long as isn't s data destroying bug, then its cool with me, i protect my wallet with external means as well
 337 2011-11-13 05:09:51 <gmaxwell> MimeNarrator: ::shrugs:: Most users haven't even upgraded to 0.4 (the first version that has it available)
 338 2011-11-13 05:10:22 <gmaxwell> It's also a (minor) inconvenience, and people obviously believe their computers are secure.
 339 2011-11-13 05:10:25 maqr has quit (Read error: Connection reset by peer)
 340 2011-11-13 05:10:31 <MimeNarrator> Seems like encryption would be a very good incentive to upgrade. I'm surprised.
 341 2011-11-13 05:10:50 maqr has joined
 342 2011-11-13 05:10:53 <phantomcircuit> MimeNarrator, in practical terms it isn't worth a lot truth be told
 343 2011-11-13 05:11:03 <gmaxwell> What phantomcircuit said.
 344 2011-11-13 05:11:11 <gmaxwell> The actual improvement is real but modest.
 345 2011-11-13 05:11:17 <phantomcircuit> it just requires a *slightly* more sophisticated attack
 346 2011-11-13 05:11:24 <phantomcircuit> so
 347 2011-11-13 05:11:26 <phantomcircuit> whatevah
 348 2011-11-13 05:11:41 <gmaxwell> MimeNarrator: if there is a trojan on your system it can pull the key data out of memory or sniff your keyboard. It's only a few lines of modification to existing attack tools.
 349 2011-11-13 05:11:46 <MimeNarrator> sure, but upgrading is pretty easy.
 350 2011-11-13 05:12:28 <phantomcircuit> i think i speak for most users when i say
 351 2011-11-13 05:12:29 <phantomcircuit> meh
 352 2011-11-13 05:12:53 <MimeNarrator> if someone can run arbitrary code on your machine you're fucked. But at least it should prevent someone from easily copying your wallet.dat to a USB drive while you are away from your machine and taking your balance.
 353 2011-11-13 05:13:48 <gmaxwell> Looks like 4.0+ is about 35% of the network. More than last time I checked, still not that much.
 354 2011-11-13 05:14:17 <gmaxwell> MimeNarrator: yes. A real improvement, but thats not a particular attack people are usually worried about.
 355 2011-11-13 05:14:32 <gmaxwell> If I can attach USB to your computer I can also insert a keyboard shim.
 356 2011-11-13 05:14:44 <gmaxwell> http://www.keyghost.com/
 357 2011-11-13 05:16:52 <MimeNarrator> sure, it mostly deters very unsophisticated attackers, but that's a benefit. I'm not saying it's even close to perfect, but it's a good thing. I'm less concerned by the bug itself than by it's not getting caught sooner.
 358 2011-11-13 05:17:44 <gmaxwell> MimeNarrator: The 'bug' wasn't visible in the bitcoin source. It's due to BDB having non-obvious (though expectable) behaivor.
 359 2011-11-13 05:18:00 <MimeNarrator> ah
 360 2011-11-13 05:18:04 <gmaxwell> When the client deletes the database records for the old plain-text private keys... SURPRISE they aren't reliably deleted.
 361 2011-11-13 05:18:18 <MimeNarrator> that's unfortunate
 362 2011-11-13 05:18:34 d4de has joined
 363 2011-11-13 05:19:30 <cocktopus> wonder if it would be easier or possible even to simply overrite the old addresses with blank data before deleting
 364 2011-11-13 05:19:32 <gmaxwell> Just as a sanity check we should have scanned the files for them... but apparently no one did. I did a @#$@@!#! load of testing, but I was mostly concerned with accidently losing keys during reencryption, losing keys durning runtime, and deadlocks.
 365 2011-11-13 05:20:15 <gmaxwell> cocktopus: No. Thats the point. The database lets you replace/delete records but it doesn't actually do these operations in place. (and it shouldn't in order to reduce the risk of corruption if you're shutdown while updating the files)
 366 2011-11-13 05:21:07 <gmaxwell> cocktopus: in any case, the fix is (mostly) to create a new wallet and move the data over and nuke the old one.
 367 2011-11-13 05:21:19 aldiyen has quit (Read error: Operation timed out)
 368 2011-11-13 05:22:14 <cocktopus> yep ok
 369 2011-11-13 05:22:26 <MimeNarrator> so is there a timeframe on pushing a fix?
 370 2011-11-13 05:23:12 <gmaxwell> 'a few days'
 371 2011-11-13 05:23:26 <MimeNarrator> ah
 372 2011-11-13 05:24:27 <gmaxwell> The fixes are up but they need more testing and review (and backporting)
 373 2011-11-13 05:24:38 <gmaxwell> https://github.com/bitcoin/bitcoin/pull/635
 374 2011-11-13 05:25:04 <MimeNarrator> so transfering coins to a freshly installed client (with a fresh wallet.dat) would fix it, yes?
 375 2011-11-13 05:25:31 <gmaxwell> No.
 376 2011-11-13 05:25:35 <phantomcircuit> yes
 377 2011-11-13 05:25:40 aldiyen has joined
 378 2011-11-13 05:25:40 <gmaxwell> Gah. Stop.
 379 2011-11-13 05:25:49 <phantomcircuit> gmaxwell, yes
 380 2011-11-13 05:25:54 <gmaxwell> No. it will not, not until you're running a fixed version.
 381 2011-11-13 05:25:58 <cocktopus> ^
 382 2011-11-13 05:26:10 <gmaxwell> phantomcircuit: No sir. It will _NOT_. Because the keypool in the new wallet may have leaked.
 383 2011-11-13 05:26:23 <gmaxwell> (s/may/almost certantly will have/)
 384 2011-11-13 05:26:26 <phantomcircuit> gmaxwell, private keys generated as encrypted are written to the database unencrypted?
 385 2011-11-13 05:26:34 <phantomcircuit> lol
 386 2011-11-13 05:26:38 <gmaxwell> ...
 387 2011-11-13 05:26:45 <phantomcircuit> yeah i get it
 388 2011-11-13 05:26:48 <gmaxwell> I thought you knew how the software works?
 389 2011-11-13 05:26:49 <gmaxwell> okay.
 390 2011-11-13 05:26:55 <phantomcircuit> that's unfortunately
 391 2011-11-13 05:27:03 <phantomcircuit> i never looked at the encryption layer
 392 2011-11-13 05:28:41 <gmaxwell> Yea, the keypool is generated on startup. You encrypt after that.. so... The fact that the keypool hit the disk wasn't surprising, in fact it was a documented behaivor. The surprising and unfortunate part is that they stayed in the wallet.dat file afterwards.
 393 2011-11-13 05:29:47 <nanotube> i thought gavin ran some tests and found that doing a bunch of compactions fixed it as well?
 394 2011-11-13 05:30:29 d4de has quit (Ping timeout: 258 seconds)
 395 2011-11-13 05:30:46 <gmaxwell> nanotube: nope. he still had one left behind in some runs.
 396 2011-11-13 05:30:51 <phantomcircuit> nanotube, that's a game of probabilities
 397 2011-11-13 05:32:04 <nanotube> heh ic. sucks
 398 2011-11-13 05:41:37 Cory has joined
 399 2011-11-13 05:42:03 Cory is now known as Guest651
 400 2011-11-13 05:45:26 WakiMiko has joined
 401 2011-11-13 05:47:18 Guest651 has quit (Ping timeout: 259 seconds)
 402 2011-11-13 05:48:35 WakiMiko_ has quit (Ping timeout: 258 seconds)
 403 2011-11-13 05:49:05 enquirer has joined
 404 2011-11-13 06:03:29 TheZimm has joined
 405 2011-11-13 06:03:58 BurtyB has quit (Ping timeout: 276 seconds)
 406 2011-11-13 06:05:40 BurtyB has joined
 407 2011-11-13 06:06:15 Diablo-D3 has joined
 408 2011-11-13 06:17:48 d4de has joined
 409 2011-11-13 06:17:49 d4de has quit (Changing host)
 410 2011-11-13 06:17:49 d4de has joined
 411 2011-11-13 06:29:34 * roconnor managed to screw up implementing OP_NOT
 412 2011-11-13 06:33:59 <gmaxwell> Better than screwing up NOP, enh?
 413 2011-11-13 06:34:00 BurtyBB has joined
 414 2011-11-13 06:37:07 BurtyB has quit (Ping timeout: 276 seconds)
 415 2011-11-13 06:37:11 <roconnor> :D
 416 2011-11-13 06:37:22 <roconnor> I don't think I've implemented NOP actually
 417 2011-11-13 06:39:22 * roconnor wonders why pools haven't formed a cartel yet.
 418 2011-11-13 06:39:43 TheZimm has quit (Quit: Computer has gone to sleep.)
 419 2011-11-13 06:40:08 <justmoon> roconnor, cartels just invite others to come in and undercut the cartel
 420 2011-11-13 06:40:30 <gmaxwell> roconnor: who says they haven't? dum dum dum!
 421 2011-11-13 06:42:28 <roconnor> justmoon: the idea of the cartel would be to filter out (almost) all non-cartel blocks
 422 2011-11-13 06:42:49 <roconnor> giving more money to the cartel, and their pool members
 423 2011-11-13 06:43:04 <justmoon> then we would start working on filtering out the cartel
 424 2011-11-13 06:43:18 <bd_> roconnor: if you have less than 50% of the network's CPU power, then this actually works against you
 425 2011-11-13 06:43:35 <justmoon> bd_, pretty sure he assumes a cartel with >50%
 426 2011-11-13 06:43:36 <roconnor> bd_: a cartel of the top pools easily holds more than 50% of the network
 427 2011-11-13 06:43:52 <bd_> such a cartel breaks the network's security model :)
 428 2011-11-13 06:44:29 <roconnor> bd_: I'm not sure what you mean by that
 429 2011-11-13 06:44:33 larsivi has quit (Ping timeout: 260 seconds)
 430 2011-11-13 06:45:25 <bd_> a cartel holding >50% of the network's processing power could double-spend coins, by secretly minting blocks including a spending transaction for coin X, but not revealing them publically until another transaction spending X has been confirmed in another, shorter block chain
 431 2011-11-13 06:45:52 <roconnor> bd_: well pools rely on their members, so they pools can't do anything to piss them off very much.
 432 2011-11-13 06:46:24 <gmaxwell> bd_: secret fork mining and pool operation aren't super compatible.
 433 2011-11-13 06:46:25 <roconnor> but a cartel would actually enchance their member's returns, so they'd probably like that.
 434 2011-11-13 06:46:27 <bd_> roconnor: how often do most members get payouts? I could see a pool pulling this off in a timespan shorter than a typical payout interval
 435 2011-11-13 06:46:37 <gmaxwell> Though I guess the fact that we've got >1TH of pps pools makes it more possible.
 436 2011-11-13 06:46:50 <bd_> assuming the recipient of the voided txn only needs an hour or two worth of confirmations
 437 2011-11-13 06:47:32 <gmaxwell> the loss of rate during the forking time would still be quite visible.
 438 2011-11-13 06:48:05 <bd_> not if the pool makes up for it by paying its members extra out of pocket in the meantime
 439 2011-11-13 06:48:08 <gmaxwell> (and people show up whining every time there is an unlucky run)
 440 2011-11-13 06:48:23 <Graet> what long term advantage is there to pool owners to collude to do this?
 441 2011-11-13 06:48:29 <gmaxwell> bd_: no, the lack of the pools hashpower on the main chain is still visible.
 442 2011-11-13 06:48:40 <roconnor> bd_: whether or not it breaks the security model or not, the incentives seem to be in place for cartel forming.
 443 2011-11-13 06:48:43 <gmaxwell> Graet: none. They could debase bitcoin in order to steal it...
 444 2011-11-13 06:48:54 <Graet> yep
 445 2011-11-13 06:49:10 <bd_> I suppose it would be self-defeating to do something that would reduce confidence in bitcoin security though
 446 2011-11-13 06:49:16 <Graet> yes
 447 2011-11-13 06:49:37 <justmoon> gmaxwell, would we checkpoint a cartel's profits out of existence? tricky question
 448 2011-11-13 06:49:49 <gmaxwell> justmoon: of course not.
 449 2011-11-13 06:50:02 <roconnor> It seems like the major pools will eventually form a cartel and become as evil as the banks bitcoiners are trying to subvert :)
 450 2011-11-13 06:50:14 <gmaxwell> roconnor: say you own $big_pool_x.  You want to form a cartel.  You ask $big_pool_y to join you.  Big pool y can maximize their income by simply publishing the request.
 451 2011-11-13 06:50:26 <nanotube> roconnor: unless the major pools become p2pool :)
 452 2011-11-13 06:50:59 <roconnor> gmaxwell: I'm not so sure about that.
 453 2011-11-13 06:51:14 <roconnor> nanotube: I guess I'm not familiar with p2pool
 454 2011-11-13 06:51:17 <gmaxwell> roconnor: depends on how stupid the hash power is.
 455 2011-11-13 06:52:20 <nanotube> roconnor: check out #p2pool and p2pool.org
 456 2011-11-13 06:52:33 <justmoon> gmaxwell, i don't think you can assume that it's rational not to form a cartel because you worry about bitcoin's value
 457 2011-11-13 06:52:36 <gmaxwell> roconnor: because of the frequent DOS attacks pretty much every pool miner is already setup to easily switch pools. If you found out some pool was doing evil that would endanger the success of bitcoin, you'd switch.
 458 2011-11-13 06:52:55 <justmoon> gmaxwell, a cartel could easily make some extra money without endangering bitcoin
 459 2011-11-13 06:53:06 <gmaxwell> justmoon: it's rational to not join a cartel containing a big pool because you can do better by exposing their evil.
 460 2011-11-13 06:53:11 <justmoon> I think it'd be the user who have an incentive to stop them mostly
 461 2011-11-13 06:53:37 BurtyBB has quit (Ping timeout: 248 seconds)
 462 2011-11-13 06:53:50 <gmaxwell> the ecosystem has mostly done an adequate job keeping the biggest pools below 50%.
 463 2011-11-13 06:53:59 <justmoon> gmaxwell, only if miners switch away from the cartel, not to it
 464 2011-11-13 06:54:20 <justmoon> gmaxwell, in essence you're just moving the argument back one step, i.e. what is rational to do for the miners
 465 2011-11-13 06:54:49 <justmoon> gmaxwell, in my opinion it would be joining a cartel if the cartel seems responsible (i.e. keep bitcoin competitive, just extract as much as they can get away with)
 466 2011-11-13 06:54:53 <gmaxwell> welp, the debate is kinda pointless— the motivations haven't changed and there is no evidence of this behavior.
 467 2011-11-13 06:55:11 <gmaxwell> In the prior three months solo mining I had zero invalid solutions (and a lot of luck)
 468 2011-11-13 06:55:52 <roconnor> gmaxwell: it is more profitable for you to join the cartel; because (1) they are now paying out more and (2) no one outside the cartel can mine.
 469 2011-11-13 06:56:23 <roconnor> ya, sorry for bringing this up
 470 2011-11-13 06:56:32 * roconnor moves it to #bitcoin
 471 2011-11-13 06:57:00 <gmaxwell> roconnor: and then people widely advertise that bitcoin's security model has been compromised and all your bitcoin lose value. ::shrugs::
 472 2011-11-13 06:58:02 BurtyB has joined
 473 2011-11-13 06:58:03 <justmoon> gmaxwell, it wouldn't compromise bitcoin's security - as long as the cartel is honest, just it's economic model and the fact that it's decentralized
 474 2011-11-13 06:58:55 <justmoon> it would become closer to something like swift perhaps
 475 2011-11-13 06:59:10 <roconnor> justmoon: I moved the conversation to #bitcoin
 476 2011-11-13 07:01:13 Guest651 has joined
 477 2011-11-13 07:01:26 Guest651 is now known as Cory
 478 2011-11-13 07:01:31 Cory has quit (Changing host)
 479 2011-11-13 07:01:32 Cory has joined
 480 2011-11-13 07:11:39 Beremat has quit (Quit: ( www.nnscript.com :: NoNameScript 4.22 :: www.esnation.com ))
 481 2011-11-13 07:18:04 devrandom has quit (Remote host closed the connection)
 482 2011-11-13 07:18:31 devrandom has joined
 483 2011-11-13 07:21:45 * roconnor thinks he doesn't understand how OP_CHECKMULT works
 484 2011-11-13 07:21:51 <roconnor> 0  30460221  30440220  2  048c006f  04b68ef7  0  3
 485 2011-11-13 07:22:05 <roconnor> 0  30460221...  30440220...  2  048c006f...  04b68ef7...  0  3
 486 2011-11-13 07:22:18 <roconnor> how can OP_CHECKMULT succeed on that stack?
 487 2011-11-13 07:22:34 <roconnor> there is no way that 2 is the signature for public key 0
 488 2011-11-13 07:24:16 <roconnor> etotheipi_: you still awake?
 489 2011-11-13 07:27:24 firesign has joined
 490 2011-11-13 07:30:39 molecular has quit (Ping timeout: 245 seconds)
 491 2011-11-13 07:31:08 molecular has joined
 492 2011-11-13 07:34:33 <gmaxwell> OP_CHECKMULT pops an extra element off the stack for no good reason.
 493 2011-11-13 07:34:39 <roconnor> oh I don't undrestand OP_CHECK_MULT
 494 2011-11-13 07:34:51 <gmaxwell> (I think that was the OP that did that)
 495 2011-11-13 07:34:57 <roconnor> the number of sigs and keys can be different :?
 496 2011-11-13 07:35:31 <roconnor> oh all sigs must match some public key?
 497 2011-11-13 07:36:16 <roconnor> wow
 498 2011-11-13 07:36:29 <roconnor> that is quite the number of CHECKSIGs that need to be executed
 499 2011-11-13 07:38:54 <gmaxwell> you looking at that dos attack transaction?
 500 2011-11-13 07:39:04 <roconnor> nope
 501 2011-11-13 07:39:14 <roconnor> Just trying to implement OP_CHECKMULTI
 502 2011-11-13 07:39:14 <gmaxwell> https://en.bitcoin.it/wiki/Incidents#OP_CHECKSIG_abuse
 503 2011-11-13 07:41:29 <roconnor> this OP_CHECKMULTI seems ... bizzare
 504 2011-11-13 07:43:06 <roconnor> and certainly not adquately documented on the wiki
 505 2011-11-13 07:44:46 <gmaxwell> roconnor: this patch implements using checkmulti in txn for the official client: https://github.com/groffer/bitcoin/commit/77f429dfaabd9a077662d2c66df72fa47addeff5
 506 2011-11-13 07:53:39 roconnor has quit (Remote host closed the connection)
 507 2011-11-13 08:00:21 <CIA-89> poolserverj: shadders * b2cbf2720659 r229 /poolserverj-main/ (8 files in 6 dirs):
 508 2011-11-13 08:00:21 <CIA-89> poolserverj: add flush link to mgmt ifc listWorkers method
 509 2011-11-13 08:00:21 <CIA-89> poolserverj: import Jine's version string patch
 510 2011-11-13 08:00:21 <CIA-89> poolserverj: build process change to tag version strings with build number
 511 2011-11-13 08:00:21 <CIA-89> poolserverj: update utils lib for above change
 512 2011-11-13 08:00:22 <CIA-89> poolserverj: shadders * 05f11a46ca80 r230 / (3 files in 3 dirs): catch nullpointer where bitcoin connection fails due to bad address
 513 2011-11-13 08:00:23 <CIA-89> poolserverj: shadders * 83e3f6857e69 r231 /poolserverj-core/src/main/java/com/shadworld/ (2 files in 2 dirs):
 514 2011-11-13 08:00:23 <CIA-89> poolserverj: fix errors reported in these posts:
 515 2011-11-13 08:00:24 <CIA-89> poolserverj: https://bitcointalk.org/index.php?topic=51226.msg613311#msg613311
 516 2011-11-13 08:00:24 <CIA-89> poolserverj: https://bitcointalk.org/index.php?topic=51226.msg614656#msg614656
 517 2011-11-13 08:00:25 <CIA-89> poolserverj: shadders * 3cde080ff0b7 r232 / (8 files in 8 dirs): (log message trimmed)
 518 2011-11-13 08:00:25 <CIA-89> poolserverj: Json rpc:
 519 2011-11-13 08:00:26 <CIA-89> poolserverj:  - extra debug output when failed to resolve auth realm credentials
 520 2011-11-13 08:00:26 <CIA-89> poolserverj:  - now registers auth realm keys using every variation of hostname/ipv4/ipv6/interface
 521 2011-11-13 08:00:27 <CIA-89> poolserverj:  - support unregistered realms by creating a clone with the requested realm if not found
 522 2011-11-13 08:00:27 <CIA-89> poolserverj: Extra trace targets to clean up some uneccesary default logging
 523 2011-11-13 08:01:07 <CIA-89> poolserverj: isDebug now true if debug || trace
 524 2011-11-13 08:07:05 <CIA-89> bitcoin: Wladimir J. van der Laan master * r405ce5a / src/qt/bitcoingui.cpp :
 525 2011-11-13 08:07:06 <CIA-89> bitcoin: Add model null pointer check (solves issue #595 and https://github.com/laanwj/bitcoin-qt/issues/29)
 526 2011-11-13 08:07:06 <CIA-89> bitcoin: Missed this one before, which can be triggered in race condition if window event arrives before model is set - http://git.io/0UBHRg
 527 2011-11-13 08:09:53 eastender has quit (Ping timeout: 248 seconds)
 528 2011-11-13 08:27:24 RazielZ has joined
 529 2011-11-13 08:31:16 <CIA-89> poolserverj: shadders * d5e730c5756c r233 /poolserverj-main/src/main/java/com/shadworld/poolserver/servlet/mgmt-header.html: fix javascript confirm message on mgmt interface shutdown and fireblockchange links
 530 2011-11-13 08:31:23 firesign has quit (Remote host closed the connection)
 531 2011-11-13 08:51:56 abragin has joined
 532 2011-11-13 08:51:56 abragin has quit (Changing host)
 533 2011-11-13 08:51:56 abragin has joined
 534 2011-11-13 08:59:56 Kiba` has joined
 535 2011-11-13 09:02:05 Kiba has quit (Ping timeout: 256 seconds)
 536 2011-11-13 09:04:32 num1 has joined
 537 2011-11-13 09:07:58 <coderrr> anyone see any mistakes here? http://coderrr.wordpress.com/2011/11/13/simplified-summary-of-microsoft-researchs-bitcoin-paper-on-incentivizing-transaction-propagation/
 538 2011-11-13 09:13:41 iddo has quit (Ping timeout: 258 seconds)
 539 2011-11-13 09:15:51 iddo has joined
 540 2011-11-13 09:17:40 <gmaxwell> coderrr: they're assuming that nodes are incentivized to not relay transactions because they want to keep the fees for themselves.
 541 2011-11-13 09:18:14 <gmaxwell> In reality forwarding is super duper cheap, and lots of nodes do it without mining. The originiator of the txn also has a good incentive to spread his transaction far and wide.
 542 2011-11-13 09:18:19 <gmaxwell> So it's all kinda moot.
 543 2011-11-13 09:18:27 <justmoon> for now.
 544 2011-11-13 09:18:46 <coderrr> gmaxwell, im not asking if the paper is accurate, just if my summary was accurate
 545 2011-11-13 09:19:29 <gmaxwell> Moreover, it would be really bad to bake more assuptions about the current craptastic p2p network into the system. The bitcoin algorithim is completely blind to the transport, and should stay that way.
 546 2011-11-13 09:20:19 <gmaxwell> There isn't any reason, e.g. that we couldn't have edge nodes simply hand txn directly to their pick of miners rather than p2p flooding them... it's just that there isn't any great way to bootstrap that, and back when all nodes were miners it didn't make sense.
 547 2011-11-13 09:20:50 <gmaxwell> IP multicast would be a pretty no-brainer thing to use for this, for example, if it actually worked across the internets.
 548 2011-11-13 09:21:29 <coderrr> i guess i'll add a disclaimer that im not supporting their assumptions :P
 549 2011-11-13 09:22:41 <gmaxwell> coderrr: there is other fun crap like, "find miners and then maxsybil txn before handing directly to them"
 550 2011-11-13 09:22:56 <coderrr> yea, i thot about that
 551 2011-11-13 09:23:16 <gmaxwell> also, there is a much easier way for miners to give incentives to people to relay to them.. just randomly use IP transactions to give lottery payouts to nodes that give them txn with big fees. :)
 552 2011-11-13 09:23:17 <coderrr> there could definitely be negative consequences of their proposed solution
 553 2011-11-13 09:24:44 <coderrr> gmaxwell,  hey the other day u and thomasv were talking about that word encoding stuff, was that just basically converting a number to base X and then using a word list as the digits ? or was it something totally different
 554 2011-11-13 09:25:12 <OneFixt> <gmaxwell> coderrr: there is other fun crap like, "find miners and then maxsybil txn before handing directly to them" <-- yeah, pools would maxsybil it themselves
 555 2011-11-13 09:25:49 <gmaxwell> coderrr: it was different— same end goal, but using multiple words and a list that was much smaller than the base of the number.
 556 2011-11-13 09:26:08 <coderrr> ah ic
 557 2011-11-13 09:27:49 <coderrr> i did a test of base 10^6 using unique two word pairs from the cablegate dump and it came out kinda interesting https://gist.github.com/3a9e65bb5d8509abef7d
 558 2011-11-13 09:27:55 <gmaxwell> OneFixt: nah, part of the basis of the argument here is that they'd want to give fee to relayers.
 559 2011-11-13 09:28:01 <coderrr> seemed like it might be easier to memorize
 560 2011-11-13 09:28:38 <OneFixt> gmaxwell: but wouldn't a large miner want to relay it and then mine it himself?
 561 2011-11-13 09:29:44 <coderrr> OneFixt, the reward is based on chain length
 562 2011-11-13 09:29:51 <coderrr> so if the chain is shorter u get a higher reward
 563 2011-11-13 09:29:59 <coderrr> so they actually dont need to maxsybl i think
 564 2011-11-13 09:30:07 <OneFixt> hm
 565 2011-11-13 09:30:37 <OneFixt> then the incentive is to not forward it... i'll have to read the paper in detail and not the summary
 566 2011-11-13 09:30:38 <coderrr> f + β (H  h + 1)
 567 2011-11-13 09:30:47 <coderrr> where H is max length and h is actual length
 568 2011-11-13 09:31:10 <coderrr> yea u should look at details is kinda complicated
 569 2011-11-13 09:31:39 <coderrr> that's H-h
 570 2011-11-13 09:31:50 <OneFixt> thankfully all nodes already do have an incentive to forward - the health of the network is the health of their wallets
 571 2011-11-13 09:32:16 <coderrr> yea, it's in no way an immediate problem
 572 2011-11-13 09:34:06 copumpkin has quit (Ping timeout: 260 seconds)
 573 2011-11-13 09:34:45 copumpkin has joined
 574 2011-11-13 09:37:47 <gmaxwell> coderrr: when I looked at it earlier they didn't seem to even try to address how you could create unstrippable txn chains.
 575 2011-11-13 09:38:08 <coderrr> yea, i didnt see that either
 576 2011-11-13 09:38:15 <gmaxwell> So I just assumed that they were using bitcoin as a ... toy idea that they could hang their useful payout scheme ideas on.
 577 2011-11-13 09:38:23 <coderrr> could be
 578 2011-11-13 09:38:47 <gmaxwell> In an actual implementation you would just strip off the identities of all the prior forwarding nodes and pass it on.
 579 2011-11-13 09:39:06 <coderrr> right, so is there a way to prevent that though
 580 2011-11-13 09:39:38 <OneFixt> i think any system to prevent that is a re-implementation of bitcoin itself
 581 2011-11-13 09:39:47 <gmaxwell> It could potentially be done in the right kinds of blinded cryptosystem, but not in anything that looks like bitcoin.
 582 2011-11-13 09:40:02 <coderrr> well their proposal is a pretty big reimplementation already
 583 2011-11-13 09:40:17 <gmaxwell> coderrr: its not a reimplementation at all though.
 584 2011-11-13 09:40:42 <coderrr> i mean i'm not sure their incentive proposal could jsut be tacked on
 585 2011-11-13 09:40:47 <gmaxwell> its a payment scheme that is unrelated to bitcoin that uses bitcoin to inspire the thoughts, as far as I can tell.
 586 2011-11-13 09:41:01 <OneFixt> i mean proving that the tx chain is unstripped, and doing it in a decentralized system, would require proof-of-work
 587 2011-11-13 09:41:13 <gmaxwell> OneFixt: yo dawg.
 588 2011-11-13 09:41:17 <OneFixt> =D
 589 2011-11-13 09:41:21 <coderrr> hah
 590 2011-11-13 09:41:24 <OneFixt> i heard you like work ;)
 591 2011-11-13 09:41:47 <gmaxwell> I heard you like decenteralized consensus algorithims...
 592 2011-11-13 09:42:15 <gmaxwell> But who will incentivize the relay of the relay incentive consensus blocks?
 593 2011-11-13 09:43:15 <gmaxwell> You can creat a system that works this way directly, e.g. when you relay a txn you encrypt (part of) it. And then the txn is eventually mined and in order to collect your reward you'd disclose the encryption keys you use.
 594 2011-11-13 09:43:27 <coderrr> they do say this: Each node on the path in the tree from the seed to the authorizer appears on this
 595 2011-11-13 09:43:28 <gmaxwell> but man, thats bloated and ugly.
 596 2011-11-13 09:43:41 <coderrr> chain (nodes are not able to remove their predecessors from the chain due to the use of cryptographic
 597 2011-11-13 09:43:45 <coderrr> signatures),
 598 2011-11-13 09:43:52 <coderrr> but i dont think they expand on it
 599 2011-11-13 09:44:00 <gmaxwell> yea, that doesn't make any sense however.
 600 2011-11-13 09:44:31 <gmaxwell> SIGNC(SIGNB(SIGNA(TX()))) .. I can strip it all the way down to TX().
 601 2011-11-13 09:44:51 <coderrr> i think the way it works is
 602 2011-11-13 09:45:10 <coderrr> when the originator sends it out, they sign it with the pubkey of who theyre sending it to
 603 2011-11-13 09:45:26 <coderrr> so its only valid if you have the correspodning privkey
 604 2011-11-13 09:45:35 <coderrr> so when u broadcast, you broadcast a diff tx to each node
 605 2011-11-13 09:45:35 <Graet> <gmaxwell> but man, thats bloated and ugly. <, um but fits with ms policy?
 606 2011-11-13 09:45:42 <coderrr> signed with their pubkey
 607 2011-11-13 09:45:42 <gmaxwell> Hm? still doesn't work.
 608 2011-11-13 09:45:46 <coderrr> does that work
 609 2011-11-13 09:45:50 <coderrr> ?
 610 2011-11-13 09:46:07 <gmaxwell> Graet: MS research does some neat stuff,.. that has nothing to do with MS's products. :)
 611 2011-11-13 09:46:23 <coderrr> hrm yea... cuz you can re-sign it urself, yea not sure
 612 2011-11-13 09:46:28 <gmaxwell> coderrr: No, because you can still strip it... yea.
 613 2011-11-13 09:47:18 <coderrr> ugh ,theres no way they overlooked that, theres gotta be something
 614 2011-11-13 09:47:49 <gmaxwell> lets see.. you take the txn and add to it SIGN_A(TXN+giving_to_coderr) .. then SIGN_CODEERR(SIGN_A(TXN+giving_to_coderr)+giving_to_Graet) ... then SIGN_GRAET(SIGN_CODEERR(SIGN_A(TXN+giving_to_coderr)+giving_to_Graet)+giving_to_OneFixt)
 615 2011-11-13 09:47:58 <gmaxwell> but .. thats horribly bloated too.
 616 2011-11-13 09:48:14 <coderrr> yea
 617 2011-11-13 09:48:22 <coderrr> that works right ?
 618 2011-11-13 09:48:34 devrandom has quit (Ping timeout: 248 seconds)
 619 2011-11-13 09:48:37 <gmaxwell> Yes, that works though. Terribly bloated and would also bloat the blockchain.
 620 2011-11-13 09:48:41 <coderrr> thats not really _that_ bloated
 621 2011-11-13 09:48:49 <gmaxwell> Perhaps there is a clever way to make that prunable though.
 622 2011-11-13 09:49:24 <gmaxwell> You'll and 2/3rds the size of a normal txn at every hop.
 623 2011-11-13 09:49:27 <coderrr> yea here it is
 624 2011-11-13 09:49:31 <coderrr> We modify
 625 2011-11-13 09:49:45 <coderrr> the protocol so that every node that transfers the transaction to its children cryptographically signs
 626 2011-11-13 09:49:59 <coderrr> the transaction, and specifically identifies the child to whom the information is being sent using that
 627 2011-11-13 09:50:04 <coderrr> child’s public key
 628 2011-11-13 09:50:34 <gmaxwell> Yes, so you need to add 190 bytes of data every hop... which is pretty terrible.
 629 2011-11-13 09:50:41 <gmaxwell> but yes, that would work.
 630 2011-11-13 09:51:01 <OneFixt> if the number of hops > H there's no more reward for forwarding?
 631 2011-11-13 09:51:22 <coderrr> yea
 632 2011-11-13 09:51:35 <OneFixt> wouldn't that stop all forwarding after H hops?
 633 2011-11-13 09:51:43 dlb76 has joined
 634 2011-11-13 09:51:44 <gmaxwell> Sure.
 635 2011-11-13 09:51:57 <coderrr> yea, but they assume forwading is already not happening due to no incentive
 636 2011-11-13 09:52:00 <gmaxwell> (even if they would have otherwise done it for free.. go go incentives fucking things up)
 637 2011-11-13 09:52:04 <coderrr> so its a better situation than that
 638 2011-11-13 09:52:19 <OneFixt> gmaxwell: exactly
 639 2011-11-13 09:52:28 <gmaxwell> coderrr: due to assuming there is a disincentive because nodes want to keep fees for themselves.
 640 2011-11-13 09:52:39 <gmaxwell> Which is a bad assumption for bitcoin.
 641 2011-11-13 09:53:28 <coderrr> yea, hard to predict the future though
 642 2011-11-13 09:53:37 <gmaxwell> hm. amusingly, if we changed how signature checking applied to scripts, OP_EVAL almost allows this scheme.
 643 2011-11-13 09:53:59 <gmaxwell> but the overhead is still terrible.
 644 2011-11-13 09:54:18 <OneFixt> if the problem were real, a much easier solution could be to simply modify each node to send to more than 8 nodes
 645 2011-11-13 09:54:31 PK has joined
 646 2011-11-13 09:54:48 <gmaxwell> OneFixt: just get miners announce deposit IP addressess, and have nodes deliver it to miners themselves.
 647 2011-11-13 09:54:52 <OneFixt> or to have an available list of mining nodes
 648 2011-11-13 09:54:56 <gmaxwell> jinx
 649 2011-11-13 09:54:58 <OneFixt> right
 650 2011-11-13 09:54:59 MobiusL is now known as LinuxKernel
 651 2011-11-13 09:55:31 <gmaxwell> you can also encourage behavior by playing a little lottery using ip transactions, though we're going to remove them. :(
 652 2011-11-13 09:56:15 <OneFixt> ip tx do sound impossible to secure
 653 2011-11-13 09:56:24 <OneFixt> though interesting to play with
 654 2011-11-13 09:57:23 <OneFixt> you could always have servers give a bitcoin address when a standardized request is sent to them though
 655 2011-11-13 09:57:34 <OneFixt> that emulates sending by ip
 656 2011-11-13 09:58:54 <gmaxwell> OneFixt: hm. I don't see what complaint you have about IP transactions which wouldn't apply to anything substantially similar.
 657 2011-11-13 09:59:10 <OneFixt> how does it work with computers on a shared ip?
 658 2011-11-13 09:59:47 <gmaxwell> OneFixt: if you were able to measure the node you wanted to incentivize then you have a way of communicating with it already.
 659 2011-11-13 10:00:32 <gmaxwell> e.g. if you're trying to reward nodes for relaying to you... you have a connection up for it to relay to you over.. or if you're trying to incentivze people to run listening nodes or running a current version.. you just connect to it.
 660 2011-11-13 10:01:40 <gmaxwell> There are two risks with IP transactions, one applies here one doesn't. The one that doesn't is the MITM risk... there isn't a risk because you don't care about the particular identity of the node for a good-behavior-lottery.
 661 2011-11-13 10:01:45 <OneFixt> yes that's true, i was just drifting off into general thought about IP t
 662 2011-11-13 10:01:45 <OneFixt> tx
 663 2011-11-13 10:01:50 <gmaxwell> The other risk is the marked bills attack.
 664 2011-11-13 10:02:12 <gmaxwell> Where you rain 1e-8 coins on all the nodes you can connect to...
 665 2011-11-13 10:02:38 <gmaxwell> then when you see those used in txn you'll learn the IPs of the persons originating the txn.
 666 2011-11-13 10:02:44 <gmaxwell> And that.. I have no solutions for.
 667 2011-11-13 10:03:13 <OneFixt> that's a neat attack
 668 2011-11-13 10:04:18 <gmaxwell> yea, also applicable to things like blackmarket sites.. rain nanocoins on them.. and then use the nanocoins to identify txn from the blackmarket showing up at exchanges.
 669 2011-11-13 10:04:24 MimeNarrator has quit (Ping timeout: 245 seconds)
 670 2011-11-13 10:05:03 <OneFixt> the site could potentially identify and launder those nanocoins
 671 2011-11-13 10:05:33 <gmaxwell> Yes. Potentially. Any attack has a countermeasure.
 672 2011-11-13 10:05:51 devrandom has joined
 673 2011-11-13 10:05:52 <extor> Can someone explain to me why I must have an account on bit-pay in order to use the WHMCS plugin here? https://bit-pay.com/clientBilling.html
 674 2011-11-13 10:05:55 <gmaxwell> Likewise you could improve things for the iptxn case by doing the same in the client.  In practice, no one will .. lots of complexity.
 675 2011-11-13 10:06:44 <extor> Couldn't I just look at the sauce and mod it to work with my own wallet?
 676 2011-11-13 10:07:24 <Habbie> extor, presumably, that WHMCS plugin uses the bit-pay API, not the bitcoind API. But looking at the source is always informative.
 677 2011-11-13 10:08:04 <extor> Habbie, it just makes me wonder why bit-pay would set themselves up as a middleman for a supposedly anonymous currency. Puzzling.
 678 2011-11-13 10:08:47 <Habbie> extor, if you're running a hosting service, why would you care about anonymity on your end?
 679 2011-11-13 10:09:20 <extor> Habbie, I don't.
 680 2011-11-13 10:09:57 <Habbie> and presumably, bit-pay makes some money off transactions
 681 2011-11-13 10:10:35 <gmaxwell> They'll also pay you in USD rather than bitcoin, if you want.
 682 2011-11-13 10:11:11 <gmaxwell> (I'd never heard of them before now— for all I know its a scam. :) )
 683 2011-11-13 10:11:16 <extor> Oh I didn't know bit-pay would convert it for you
 684 2011-11-13 10:11:27 <gmaxwell> extor: see their FAQ
 685 2011-11-13 10:11:56 <extor> There's another WHMCS plugin that is supposed to not work right now. I wish I was code savvy so I could just mod it for my use
 686 2011-11-13 10:12:09 <gmaxwell> No time to learn like the present.
 687 2011-11-13 10:12:14 <OneFixt> gmaxwell: they have some nice videos http://youtu.be/YZ-pqo0cLcE
 688 2011-11-13 10:12:37 Shaded has joined
 689 2011-11-13 10:13:53 <OneFixt> http://youtu.be/DNpcf9rSBIk   win
 690 2011-11-13 10:14:48 <gmaxwell> do.. people use QR codes to send data between phones like that!@#?!
 691 2011-11-13 10:15:10 <OneFixt> i don't even have a phone capable of it so i don't know =)
 692 2011-11-13 10:15:31 <gmaxwell> IRDA ... Bluetooth.. oh fuck it, lets jus display hieroglyphics. Perhaps the next gen phones will just use smoke signals.
 693 2011-11-13 10:16:07 <OneFixt> we should yell private keys at each other
 694 2011-11-13 10:16:46 <gmaxwell> hm. I should make a scheme to encode binary -> obscenity.
 695 2011-11-13 10:17:06 <OneFixt> i can actually see that having a place in the world
 696 2011-11-13 10:22:31 <justmoon> so what would be a better way than QR?
 697 2011-11-13 10:24:12 <OneFixt> semaphores
 698 2011-11-13 10:24:28 <gmaxwell> "MONKLEIGH DOMINATRIX PENAS TESTICLE PAKI KUNT KIKE PUSSY VITTU ARSCHLOCH MIBUN ASSHOLES NIGGA SEXY OROSPU RECKTUM MASTERBATE NAZIS PICKA PAKY PACKI DOMINATRICKS ENEMA KLOOTZAK INJUN FAEN TEETS AZZHOLE HELVETE KNOB FUCKING ORGASUM" < here is a bitcoin address in 'badcode'.   (don't blame me for the poorly spelled badwords, I got them from the internets)
 699 2011-11-13 10:24:43 <OneFixt> i do like qr though, since it can be printed
 700 2011-11-13 10:25:01 <gmaxwell> justmoon: there have been many different protocols for device to device communication over the years. QR is pretty darn crude, but I guess nothing else actually work(s/ed).
 701 2011-11-13 10:25:30 <gmaxwell> sure, for printed things QR isn't especially ugly... but for device to device it seems weird.
 702 2011-11-13 10:26:11 <gmaxwell> (because you'd probably like to have a duplex channel that can retransmit.. perhaps with low latency and high bandwidth too)
 703 2011-11-13 10:26:30 TD has joined
 704 2011-11-13 10:31:45 <Eliel> has this paper been talked about yet? http://research.microsoft.com/pubs/156072/bitcoin.pdf
 705 2011-11-13 10:32:36 <coderrr> Eliel, yea scroll up
 706 2011-11-13 10:32:45 <OneFixt> gmaxwell: what's the algo for the words? alphabetic ordering of each letter signifying 1 or 0?
 707 2011-11-13 10:33:04 <OneFixt> hm, that could be a fun encoding...
 708 2011-11-13 10:34:07 AStove has joined
 709 2011-11-13 10:34:53 MimeNarrator has joined
 710 2011-11-13 10:34:58 MimeNarrator has quit (Changing host)
 711 2011-11-13 10:34:59 MimeNarrator has joined
 712 2011-11-13 10:40:21 datagutt has joined
 713 2011-11-13 10:49:22 devrandom has quit (Ping timeout: 248 seconds)
 714 2011-11-13 10:49:54 chrisb__ has joined
 715 2011-11-13 10:50:59 devrandom has joined
 716 2011-11-13 10:54:12 <Eliel> hmm... the entities that would have the incentive to encourage relaying of transactions are the owner of the transaction, the receiver of the transaction and in a subtle way, miners.
 717 2011-11-13 10:54:37 <Eliel> miners have the incentive to get transactions but not to spread them to other miners.
 718 2011-11-13 10:54:58 <Eliel> while sender and receiver have the incentive to get the tx to every miner out there.
 719 2011-11-13 10:56:05 <Eliel> so, if this is ever implemented, it sounds very much like it ought to be part of the fee system.
 720 2011-11-13 10:56:35 <Eliel> and the central management it needs handled either by sender or receiver or both.
 721 2011-11-13 11:02:56 <coderrr> Eliel, there's probably an incentive for miners to relay it also, you assume some other miners probably have the tx already, so if you dont relay it you might not solve the block first and get nothing, but if you do relay it, some miner in your chain may solve it and then you at least get  some reward
 722 2011-11-13 11:04:10 <coderrr> how that is optimized is what the math in the paper deals with i think
 723 2011-11-13 11:04:43 <Eliel> ah, yes, true. But it still needs central management of the chain so it doesn't get falsified.
 724 2011-11-13 11:04:49 lfm has quit (Ping timeout: 245 seconds)
 725 2011-11-13 11:04:56 wolfspra1l has quit (Ping timeout: 240 seconds)
 726 2011-11-13 11:05:07 <coderrr> Eliel, what do you mean ?
 727 2011-11-13 11:05:19 <Eliel> the incentive chain proposed in the paper
 728 2011-11-13 11:05:34 <coderrr> i mena, what do you mean by falsified ?
 729 2011-11-13 11:05:55 wolfspraul has joined
 730 2011-11-13 11:05:57 <Eliel> well, nodes have an incentive to drop it all out and pretend they started it.
 731 2011-11-13 11:06:29 <coderrr> Eliel, we went over that earlier, how its possilbe to make it so you cant do that
 732 2011-11-13 11:06:43 <Eliel> I better reread it, I think I missed it
 733 2011-11-13 11:06:57 <coderrr> <gmaxwell> lets see.. you take the txn and add to it SIGN_A(TXN+giving_to_coderr) .. then SIGN_CODEERR(SIGN_A(TXN+giving_to_coderr)+giving_to_Graet) ... then SIGN_GRAET(SIGN_CODEERR(SIGN_A(TXN+giving_to_coderr)+giving_to_Graet)+giving_to_OneFixt)
 734 2011-11-13 11:07:02 <coderrr>  We modify
 735 2011-11-13 11:07:16 <coderrr>  the protocol so that every node that transfers the transaction to its children cryptographically signs
 736 2011-11-13 11:07:30 <coderrr>  the transaction, and specifically identifies the child to whom the information is being sent using that
 737 2011-11-13 11:07:36 <coderrr>  child’s public key
 738 2011-11-13 11:08:06 <coderrr> so you dont broadcast the same data to each node, you broadcast a unique tx that specifies the pubkey that it's being sent to
 739 2011-11-13 11:09:02 <Eliel> how does that prevent yanking the path off the tx?
 740 2011-11-13 11:09:47 <Eliel> the Tx still needs to be clearly readably, what's to prevent a node from just pretending they're the first relay?
 741 2011-11-13 11:10:00 Raccoon has quit (Ping timeout: 255 seconds)
 742 2011-11-13 11:14:37 <coderrr> SIGN_A(TXN+giving_to_coderr)
 743 2011-11-13 11:14:49 <coderrr> only A can change that giving_to_coderr to giving_to_eliel
 744 2011-11-13 11:15:01 devrandom has quit (Remote host closed the connection)
 745 2011-11-13 11:15:45 <coderrr> they change the protocol to require that you include that giving_to field at each point
 746 2011-11-13 11:16:15 <Eliel> oh, you mean A is the sender and that signature is part of the transaction? It can't be replaced by someone else while keeping the Tx valid?
 747 2011-11-13 11:16:31 <coderrr> right
 748 2011-11-13 11:18:05 <Eliel> ok, that way it could work.
 749 2011-11-13 11:18:30 <Eliel> although, it'd also serve to quite clearly identify the nodes on the network too.
 750 2011-11-13 11:18:36 <Eliel> Not sure if that's desired.
 751 2011-11-13 11:19:11 lfm has joined
 752 2011-11-13 11:20:44 erus` has joined
 753 2011-11-13 11:20:55 <TD> i posted to the forum thread about it
 754 2011-11-13 11:21:06 <TD> https://bitcointalk.org/index.php?topic=51712.0
 755 2011-11-13 11:21:12 devrandom has joined
 756 2011-11-13 11:21:13 <TD> broadcast is probably going to become less important over time
 757 2011-11-13 11:21:15 <TD> hey devrandom
 758 2011-11-13 11:27:02 larsivi has joined
 759 2011-11-13 11:31:29 marf_away has joined
 760 2011-11-13 11:43:02 iocor has joined
 761 2011-11-13 11:44:54 Sedra has joined
 762 2011-11-13 12:00:12 wolfspraul has quit (Ping timeout: 260 seconds)
 763 2011-11-13 12:01:05 wolfspraul has joined
 764 2011-11-13 12:07:45 erus` has quit (Ping timeout: 240 seconds)
 765 2011-11-13 12:08:27 Lexa has joined
 766 2011-11-13 12:14:22 erle- has joined
 767 2011-11-13 12:15:46 copumpkin has quit (Ping timeout: 258 seconds)
 768 2011-11-13 12:16:12 copumpkin has joined
 769 2011-11-13 12:50:57 copumpkin has quit (Ping timeout: 260 seconds)
 770 2011-11-13 12:51:23 copumpkin has joined
 771 2011-11-13 12:51:32 wolfspraul has quit (Ping timeout: 260 seconds)
 772 2011-11-13 12:51:51 wolfspraul has joined
 773 2011-11-13 12:52:03 enquirer has quit (Quit: back soon)
 774 2011-11-13 12:52:17 bodom has joined
 775 2011-11-13 12:55:40 copumpkin has quit (Ping timeout: 245 seconds)
 776 2011-11-13 12:55:46 devrandom has quit (Ping timeout: 248 seconds)
 777 2011-11-13 12:56:06 copumpkin has joined
 778 2011-11-13 13:06:37 karnac has joined
 779 2011-11-13 13:07:49 devrandom has joined
 780 2011-11-13 13:11:41 karnac has quit (Remote host closed the connection)
 781 2011-11-13 13:14:57 cryptoxchange has quit (Read error: Connection reset by peer)
 782 2011-11-13 13:15:03 shads has quit (Quit: Leaving)
 783 2011-11-13 13:16:20 cryptoxchange has joined
 784 2011-11-13 13:24:44 karnac has joined
 785 2011-11-13 13:28:45 Mad7Scientist has quit (Read error: Connection reset by peer)
 786 2011-11-13 13:38:28 Shaded has quit (Quit: Shaded)
 787 2011-11-13 13:40:09 LinuxKernel is now known as MobiusL
 788 2011-11-13 13:42:57 erus` has joined
 789 2011-11-13 13:44:36 cjdelisle has joined
 790 2011-11-13 13:44:57 Bwild has quit (Ping timeout: 258 seconds)
 791 2011-11-13 13:45:07 AStove has joined
 792 2011-11-13 13:45:07 aldiyen has joined
 793 2011-11-13 13:45:07 sshc has joined
 794 2011-11-13 13:45:07 Internet13 has joined
 795 2011-11-13 13:45:07 cloudbank has joined
 796 2011-11-13 13:45:07 Edward_Black has joined
 797 2011-11-13 13:45:07 acdb has joined
 798 2011-11-13 13:45:07 cocktopus has joined
 799 2011-11-13 13:45:07 T_X has joined
 800 2011-11-13 13:45:07 Workbench has joined
 801 2011-11-13 13:45:07 sneak has joined
 802 2011-11-13 13:45:07 flok has joined
 803 2011-11-13 13:45:07 tg has joined
 804 2011-11-13 13:45:07 mologie has joined
 805 2011-11-13 13:45:07 rphlx has joined
 806 2011-11-13 13:45:07 jercos has joined
 807 2011-11-13 13:45:07 MJDMJD has joined
 808 2011-11-13 13:45:07 darksk1ez has joined
 809 2011-11-13 13:45:07 darkskiez has joined
 810 2011-11-13 13:45:07 lupine_85 has joined
 811 2011-11-13 13:45:07 drazak has joined
 812 2011-11-13 13:45:07 niekie has joined
 813 2011-11-13 13:45:07 abbe has joined
 814 2011-11-13 13:45:07 Lolcust has joined
 815 2011-11-13 13:45:07 mac-mini has joined
 816 2011-11-13 13:45:07 MagicalTux has joined
 817 2011-11-13 13:45:07 SeriousWorm has joined
 818 2011-11-13 13:45:07 lianj has joined
 819 2011-11-13 13:45:07 pierre` has joined
 820 2011-11-13 13:45:07 mu-b has joined
 821 2011-11-13 13:46:13 Daniel0108 has joined
 822 2011-11-13 13:49:28 sneak has quit (Ping timeout: 240 seconds)
 823 2011-11-13 13:50:19 sneak has joined
 824 2011-11-13 13:50:19 sneak has quit (Changing host)
 825 2011-11-13 13:50:19 sneak has joined
 826 2011-11-13 13:53:35 Daniel0108 has quit (Changing host)
 827 2011-11-13 13:53:35 Daniel0108 has joined
 828 2011-11-13 13:59:35 nameless1 has joined
 829 2011-11-13 14:01:24 kinlo has joined
 830 2011-11-13 14:01:24 molecular has joined
 831 2011-11-13 14:01:24 zeiris has joined
 832 2011-11-13 14:01:24 MasterChief has joined
 833 2011-11-13 14:01:24 t3a has joined
 834 2011-11-13 14:01:24 Ken` has joined
 835 2011-11-13 14:01:24 edcba has joined
 836 2011-11-13 14:01:24 JStoker has joined
 837 2011-11-13 14:01:24 MacRohard has joined
 838 2011-11-13 14:01:24 Eliel has joined
 839 2011-11-13 14:01:24 CIA-89 has joined
 840 2011-11-13 14:01:24 Kobier_ has joined
 841 2011-11-13 14:01:24 Moredrea1 has joined
 842 2011-11-13 14:01:24 pasky has joined
 843 2011-11-13 14:01:24 Insti has joined
 844 2011-11-13 14:01:24 Snapman has joined
 845 2011-11-13 14:01:24 bushing has joined
 846 2011-11-13 14:01:24 codemojo has joined
 847 2011-11-13 14:01:24 bobke has joined
 848 2011-11-13 14:01:24 Keefe has joined
 849 2011-11-13 14:01:24 ajp6 has joined
 850 2011-11-13 14:01:24 tcatm has joined
 851 2011-11-13 14:01:24 IO- has joined
 852 2011-11-13 14:02:23 Bwild has joined
 853 2011-11-13 14:02:43 MVXA has joined
 854 2011-11-13 14:02:44 Daviey has joined
 855 2011-11-13 14:02:44 a_meteorite has joined
 856 2011-11-13 14:04:37 jandd has joined
 857 2011-11-13 14:05:23 stalled has joined
 858 2011-11-13 14:22:33 wolfspraul has quit (Ping timeout: 260 seconds)
 859 2011-11-13 14:30:07 wolfspraul has joined
 860 2011-11-13 14:32:18 Titanium has quit ()
 861 2011-11-13 14:46:33 TD has quit (Quit: TD)
 862 2011-11-13 14:47:12 graingert has joined
 863 2011-11-13 14:53:07 devrandom has quit (Ping timeout: 248 seconds)
 864 2011-11-13 15:00:39 devrandom has joined
 865 2011-11-13 15:04:45 Turingi has joined
 866 2011-11-13 15:04:45 Turingi has quit (Changing host)
 867 2011-11-13 15:04:45 Turingi has joined
 868 2011-11-13 15:08:58 lfm has quit (Read error: Operation timed out)
 869 2011-11-13 15:09:13 lfm has joined
 870 2011-11-13 15:23:25 enquirer has joined
 871 2011-11-13 15:37:45 karnac has quit (Quit: karnac)
 872 2011-11-13 15:48:04 enquirer has quit (Read error: Operation timed out)
 873 2011-11-13 15:55:33 Clipse has joined
 874 2011-11-13 15:56:05 eueueue has joined
 875 2011-11-13 15:56:44 chrisb__ has quit (Quit: Ex-Chat)
 876 2011-11-13 15:59:38 zapnap has joined
 877 2011-11-13 16:00:37 Kolky has joined
 878 2011-11-13 16:02:55 Phoebus has joined
 879 2011-11-13 16:05:31 enquirer has joined
 880 2011-11-13 16:06:28 chrisb__ has joined
 881 2011-11-13 16:06:40 chrisb__ has quit (Remote host closed the connection)
 882 2011-11-13 16:07:15 BurtyB has quit (Ping timeout: 248 seconds)
 883 2011-11-13 16:09:53 BurtyB has joined
 884 2011-11-13 16:14:10 eueueue has quit (Quit: Page closed)
 885 2011-11-13 16:23:21 theorbtwo has quit (Ping timeout: 258 seconds)
 886 2011-11-13 16:25:14 pickett has quit (Remote host closed the connection)
 887 2011-11-13 16:30:55 pickett has joined
 888 2011-11-13 16:32:59 gjs278 has joined
 889 2011-11-13 16:39:23 p0s has joined
 890 2011-11-13 16:39:25 Sedra- has joined
 891 2011-11-13 16:42:09 Sedra has quit (Ping timeout: 252 seconds)
 892 2011-11-13 16:44:46 PK has quit ()
 893 2011-11-13 16:49:36 mortikia has quit (Remote host closed the connection)
 894 2011-11-13 16:50:02 mortikia has joined
 895 2011-11-13 16:55:48 mortikia has quit (Ping timeout: 244 seconds)
 896 2011-11-13 16:56:07 mortikia has joined
 897 2011-11-13 17:01:07 Kiba` is now known as kiba
 898 2011-11-13 17:01:43 karnac has joined
 899 2011-11-13 17:01:58 karnac has quit (Client Quit)
 900 2011-11-13 17:03:17 karnac has joined
 901 2011-11-13 17:04:35 mortikia has quit (Ping timeout: 244 seconds)
 902 2011-11-13 17:07:53 gjs278 has quit (Remote host closed the connection)
 903 2011-11-13 17:09:03 mortikia has joined
 904 2011-11-13 17:09:52 tower has quit (Quit: | ReactOS - The FOSS alternative to MS Windows! | http://www.reactos.org/ | join #ReactOS |)
 905 2011-11-13 17:10:44 mortikia has quit (Disconnected by services)
 906 2011-11-13 17:16:13 mortikia has joined
 907 2011-11-13 17:16:29 gjs278 has joined
 908 2011-11-13 17:20:09 tower has joined
 909 2011-11-13 17:22:56 mortikia has quit (Disconnected by services)
 910 2011-11-13 17:25:01 mortikia has joined
 911 2011-11-13 17:26:57 <CIA-89> bitcoinjs/node-bitcoin-p2p: Stefan Thomas master * r263c5dc / lib/db/leveldb/storage.js : Actually obey path from config url. (+8 more commits...) - http://git.io/wCwY9w
 912 2011-11-13 17:33:00 mortikia has quit (Ping timeout: 244 seconds)
 913 2011-11-13 17:33:47 <CIA-89> bitcoinjs/node-bitcoin-p2p: Stefan Thomas master * r6b165fb / (3 files in 3 dirs): Implemented index for spent outpoints in LevelDB backend. - http://git.io/-zXsXg
 914 2011-11-13 17:33:48 <CIA-89> bitcoinjs/node-bitcoin-p2p: Stefan Thomas master * r7984db0 / (test/blockchain.js test/simnet.js test/storage.js): Unique prefixes for all unittest temporary datastores. - http://git.io/9qlgnw
 915 2011-11-13 17:33:48 <CIA-89> bitcoinjs/node-bitcoin-p2p: Stefan Thomas master * rfb7c097 / bin/bitcoinjs : Fixed bitcoinjs test command line for Node.js 0.6. - http://git.io/N8N9eA
 916 2011-11-13 17:35:21 karnac has quit (Quit: karnac)
 917 2011-11-13 17:37:10 wasabi has joined
 918 2011-11-13 17:37:15 cjdelisle has quit (Read error: Operation timed out)
 919 2011-11-13 17:39:15 mortikia has joined
 920 2011-11-13 17:40:08 cjdelisle has joined
 921 2011-11-13 17:40:50 <CIA-89> libbitcoin: genjix * re92c1798de6d / (21 files in 7 dirs): bdb plugin reading/saving blocks with txs.
 922 2011-11-13 17:43:51 mortikia has quit (Ping timeout: 244 seconds)
 923 2011-11-13 17:48:41 karnac has joined
 924 2011-11-13 17:48:53 roconnor has joined
 925 2011-11-13 17:49:09 <roconnor> sipa: I don't suppose you'd be interested in editing the wiki to state how negative numbers are represented.
 926 2011-11-13 17:50:11 <cjdelisle> isn't an MPI just represented as a 2's complement byte array?
 927 2011-11-13 17:50:27 <cjdelisle> it should be well documented in the openssl documentation
 928 2011-11-13 17:50:30 erle- has quit (Quit: erle-)
 929 2011-11-13 17:51:29 Lolcust has quit (Ping timeout: 240 seconds)
 930 2011-11-13 17:51:57 <sipa> cjdelisle: apparently not - it has an explicit sign bit
 931 2011-11-13 17:52:14 <cjdelisle> where do you get this infoz?
 932 2011-11-13 17:52:29 <sipa> from openssl's crypto/bn/bn_mpi.c
 933 2011-11-13 17:52:42 <sipa> i misread it earlier
 934 2011-11-13 17:52:47 dan__ has joined
 935 2011-11-13 17:53:15 <sipa> but if the number of bits to represent the absolute value is a multiple of 8, an extra byte is prepended in front
 936 2011-11-13 17:53:24 <cjdelisle> hmm, I think it's documented in the libgcrypt documentation since it can export to "openssl format"
 937 2011-11-13 17:53:33 <sipa> and the sign is just encoded by (|= 0x80)'ing the first byte
 938 2011-11-13 17:55:25 bodom has quit (Remote host closed the connection)
 939 2011-11-13 17:55:31 mortikia has joined
 940 2011-11-13 17:56:47 <cjdelisle> sipa: that is 2's complement, the only difference is that they truncate the top byte if it happens to be 0
 941 2011-11-13 17:56:58 <sipa> no
 942 2011-11-13 17:57:08 <sipa> -1 is encoded as 0x81
 943 2011-11-13 17:57:14 <sipa> not as 0xFF
 944 2011-11-13 17:58:31 <cjdelisle> oh ic
 945 2011-11-13 17:58:48 <cjdelisle> so it's an extra flag bit but if the top byte is 0x00 then it's dropped
 946 2011-11-13 17:58:55 <cjdelisle> makes sense to me
 947 2011-11-13 17:59:12 <cjdelisle> I remember, this is documented in the gcrypt documentation.
 948 2011-11-13 17:59:28 AStove has quit ()
 949 2011-11-13 17:59:47 <sipa> it also means that the number 128 would be encoded as 0x00 0x80
 950 2011-11-13 17:59:53 mortikia has quit (Ping timeout: 240 seconds)
 951 2011-11-13 18:00:00 <sipa> as 0x80 means negative zero
 952 2011-11-13 18:00:06 <cjdelisle> oh indeed
 953 2011-11-13 18:00:20 <cjdelisle> so the top number 0 isn't *always* dropped.
 954 2011-11-13 18:00:24 <cjdelisle> goodjob openssl
 955 2011-11-13 18:00:33 <sipa> 18:38:47 < sipa> but if the number of bits to represent the absolute value is a multiple of 8, an extra byte is prepended in front
 956 2011-11-13 18:01:40 <Eliel> what if the governments of several big countries (with most of the bitcoin mining power) made a law that dictates that they're not allowed to include any transaction in any blocks they mine unless the target (and/or sender) addresses are on an approved addresses list.
 957 2011-11-13 18:02:43 <sipa> that would cripple bitcoin, even for allowed purposes
 958 2011-11-13 18:03:08 <Eliel> yes, it would. It'd basically mean mandatory registration of your addresses.
 959 2011-11-13 18:03:28 <sipa> which would cripple bitcoin, even for those willing to use registered addresses
 960 2011-11-13 18:03:44 <sipa> privacy of the system relies on using frsh addresses
 961 2011-11-13 18:04:26 mortikia has joined
 962 2011-11-13 18:04:30 <Eliel> basically, I'm wondering if there's any way to counter that.
 963 2011-11-13 18:05:03 <sipa> such a law would mean outlawing bitcoin's intended usage
 964 2011-11-13 18:08:19 mortikia has quit (Remote host closed the connection)
 965 2011-11-13 18:09:31 Sthebig has quit (Quit: /quit)
 966 2011-11-13 18:09:35 caedes has joined
 967 2011-11-13 18:10:27 <etotheipi_> on that note, how difficult do you think it would be to add encryption to node-to-node communication?
 968 2011-11-13 18:11:01 mortikia has joined
 969 2011-11-13 18:11:02 <etotheipi_> it wouldn't require a protocol change, would it?
 970 2011-11-13 18:11:23 <sipa> not that hard, but i'm not sure how useful it would be
 971 2011-11-13 18:11:47 <etotheipi_> well, even if they can identify the BTC packets, they can't identify which transactions are in them
 972 2011-11-13 18:12:03 <sipa> if "they" are powerful enough, they'll just mitm
 973 2011-11-13 18:12:29 <sipa> end-to-end encryption only works against passive eavesdroppers
 974 2011-11-13 18:12:46 eueueue has joined
 975 2011-11-13 18:13:22 <etotheipi_> actually you're right:  the law would affect the miners, not the individual nodes -- and even with encrypted communication, it should be fairly easy to identify which miner created a block
 976 2011-11-13 18:14:12 <wumpus> just run it over tor...
 977 2011-11-13 18:14:30 <etotheipi_> but I think that the pools would have to follow suit
 978 2011-11-13 18:15:01 <sipa> wumpus: yes, that's even how satoshi used bitcoin
 979 2011-11-13 18:15:13 <wumpus> there's really no use in implementing overlay or encryption support in bitcoin itself, it's a too big a responsibility and very hard to do right
 980 2011-11-13 18:15:16 <etotheipi_> most blocks are mined by the pools, and with anyone being able to connect to each pool, it would be fairly easy to determine which pool created a block
 981 2011-11-13 18:15:42 <etotheipi_> wumpus, fair enough
 982 2011-11-13 18:15:43 <wumpus> see how much time it takes people like ioerror to make tor *reasonably* private, a overlay network which has one specific function is really doomed to fail
 983 2011-11-13 18:16:03 <wumpus> sipa: yup
 984 2011-11-13 18:16:55 mortikia has quit (Disconnected by services)
 985 2011-11-13 18:16:57 <sipa> well, end-to-end encryption (not a full overlay) does already have an advantage: privacy from passive attackers
 986 2011-11-13 18:17:22 <sipa> but using tor is easier, and has more advantages
 987 2011-11-13 18:17:44 <etotheipi_> sipa, and Tor is not trivial to use... not for average users
 988 2011-11-13 18:17:53 <wumpus> tor is very easy to use with the bundle
 989 2011-11-13 18:17:56 <wumpus> much easier than bitcoin
 990 2011-11-13 18:18:05 <roconnor> etotheipi_: do you mean network encryption between peers? or something affecting the blockchain?
 991 2011-11-13 18:18:19 <etotheipi_> the really devoted folks will figure it out, but the average user won't, and I think the average user needs it in order for it to be useful
 992 2011-11-13 18:18:38 <wumpus> tor is really focusing on the average user/activist lately
 993 2011-11-13 18:18:51 mortikia has joined
 994 2011-11-13 18:18:55 <sipa> etotheipi_: then maybe we need a bitcoin distribution that contains tor, and automatically uses it
 995 2011-11-13 18:18:55 <etotheipi_> roconnor, I was just throwing out the idea of encrypted communication as a thought experiment about what it would achieve... it sounds like not much, though
 996 2011-11-13 18:19:02 <wumpus> sipa: yes
 997 2011-11-13 18:19:04 <Eliel> there is some work being done towards moving bitcoin blocks over freenet, for example.
 998 2011-11-13 18:19:06 <wumpus> that'd be a good idea
 999 2011-11-13 18:19:11 <etotheipi_> sipa, I had thought about that... but it's really tough for developers, too
1000 2011-11-13 18:19:26 <etotheipi_> tor-integrated-into-client is in my long-term plans
1001 2011-11-13 18:19:35 <wumpus> maybe even use a patched bitcoin that can *only* use the bundled tor, so make it extra safe (the tor bundle does similar things with the packaged applications)
1002 2011-11-13 18:19:36 <sipa> freenet is indeed antoher option
1003 2011-11-13 18:19:40 <etotheipi_> but first I have to get *a* client implemented :)
1004 2011-11-13 18:19:54 <roconnor> etotheipi_: there is a group interested on distributing the blockchain (and transactions?) through freenet
1005 2011-11-13 18:19:59 <roconnor> on #btcfn
1006 2011-11-13 18:20:23 <wumpus> does freenet also support socks? or does it require specific support?
1007 2011-11-13 18:20:29 <Eliel> freenet and it's darknet mode could theoretically work in china too.
1008 2011-11-13 18:20:43 <Eliel> wumpus: freenet isn't a gateway protocol.
1009 2011-11-13 18:20:59 <wumpus> tor also works in china, though you can't use the published relays
1010 2011-11-13 18:21:04 <sipa> wumpus: freenet is an anonymous distributed storage engine, afaik
1011 2011-11-13 18:21:15 <wumpus> ahh I was confused with i2p
1012 2011-11-13 18:22:03 wasabi1 has joined
1013 2011-11-13 18:23:29 mortikia has quit (Ping timeout: 240 seconds)
1014 2011-11-13 18:24:32 <roconnor> sipa: Do you know of any theorem that the memory usage of the script in O(n^2) in the lenght of the script?
1015 2011-11-13 18:24:32 <etotheipi_> anyone know if there's a way to guarantee that python will clean up/deallocate memory?
1016 2011-11-13 18:24:40 <roconnor> anyone looked into this?
1017 2011-11-13 18:24:49 wasabi has quit (Ping timeout: 256 seconds)
1018 2011-11-13 18:25:00 <sipa> roconnor: wah?
1019 2011-11-13 18:28:03 mortikia has joined
1020 2011-11-13 18:29:52 <eueueue> Hi, is it possible know how many clients are connected on the network?
1021 2011-11-13 18:30:05 <eueueue> how many people are with bitcoin client opened
1022 2011-11-13 18:30:22 <CIA-89> libbitcoin: genjix * r79ca5761c170 / (21 files in 7 dirs): bdb plugin reading/saving blocks with txs.
1023 2011-11-13 18:31:04 <eueueue> abd distinguish it by country
1024 2011-11-13 18:31:17 <wumpus> etotheipi_: use the gc module
1025 2011-11-13 18:32:38 chrisb__ has joined
1026 2011-11-13 18:32:39 <roconnor> sipa: the operations that have been disabled: multiplication, etc, seem to be designed to limit the memory use of scripting computations
1027 2011-11-13 18:32:41 <wumpus> though with cpython it's the case that object immediately are deallocated once the refcount goes to zero afaik, so gc mainly cleans up reference cycles
1028 2011-11-13 18:32:54 <Eliel> eueueue: http://bitcoinstatus.rowit.co.uk/
1029 2011-11-13 18:33:02 <eueueue> will see
1030 2011-11-13 18:33:35 <eueueue> Eliel: not possible real time?
1031 2011-11-13 18:33:43 riush has quit (Quit: Leaving)
1032 2011-11-13 18:33:53 <Eliel> eueueue: if you want accuracy, no.
1033 2011-11-13 18:33:58 br00t has joined
1034 2011-11-13 18:34:05 <eueueue> ok
1035 2011-11-13 18:34:10 Beremat has joined
1036 2011-11-13 18:34:11 <etotheipi_> wumpus, thanks, I'll look into that... I'm using cpython, and it looks like gc doesn't allow me to explicitly state what memory to clean up, but it can improve the situation
1037 2011-11-13 18:34:20 <etotheipi_> err.. *not* using cpython
1038 2011-11-13 18:35:33 <etotheipi_> I've got a pure-python module which does ECDSA signing, and I want to make sure it's cleaning up after itself
1039 2011-11-13 18:35:59 <wumpus> cpython is the default python that most people are using
1040 2011-11-13 18:36:20 <sipa> roconnor: it is my impression that disabling all those operations was over-cautious
1041 2011-11-13 18:36:25 <etotheipi_> it's not critical, though, because I intend to offload all such secure operations to C++ (pulled in via SWIG) where I have better control... but I want to keep the pure-python part functional
1042 2011-11-13 18:36:39 <wumpus> sipa: yes, afaik it was just to be sure
1043 2011-11-13 18:37:05 <wumpus> some operations were unsafe, so it was decided that everything not directly needed was disabled
1044 2011-11-13 18:37:36 <etotheipi_> wumpus, ohh... I'm thinking of a C-code importer module for python... I thought cpython was one of them, but I got mixed up
1045 2011-11-13 18:38:00 <wumpus> etotheipi_:  maybe you're confused with cython :)
1046 2011-11-13 18:38:07 <etotheipi_> wumpus, that's exactly it
1047 2011-11-13 18:38:50 <wumpus> but for security it's  a different story; gc doesn't give you any guarantee that the memory is overwritten, just freed for re-use
1048 2011-11-13 18:39:32 llama has joined
1049 2011-11-13 18:39:41 Cusipzzz has joined
1050 2011-11-13 18:40:04 <etotheipi_> wumpus, that's better than nothing, though, since the biggest concern would be swapping
1051 2011-11-13 18:40:15 <etotheipi_> if the memory is "freed", It wouldn't be swapped, as far as I know
1052 2011-11-13 18:40:26 <sipa> surely it can
1053 2011-11-13 18:40:38 <sipa> it is not erased, just marked available for reuse
1054 2011-11-13 18:40:46 eueueue has quit (Quit: Page closed)
1055 2011-11-13 18:40:48 <sipa> and unused parts are easily swapped out
1056 2011-11-13 18:41:11 <etotheipi_> sipa, agreed that it's not erased, but why would the system swap memory that is only "available" for use
1057 2011-11-13 18:41:15 <luke-jr> Linux doesn't really free memory ever
1058 2011-11-13 18:41:26 <sipa> because the system doesn't know it is available
1059 2011-11-13 18:41:38 <sipa> only the memory allocator (which is user space)
1060 2011-11-13 18:41:40 <etotheipi_> damnit
1061 2011-11-13 18:41:40 <luke-jr> glibc just marks it free for reuse *within the application*
1062 2011-11-13 18:41:50 <etotheipi_> okay, you guys win
1063 2011-11-13 18:42:24 <etotheipi_> this is why I'm using secure allocators in C++... but I wanted to maintain some sense of "security" even the pure-python module is used
1064 2011-11-13 18:42:28 <luke-jr> the only way to really allocate/free memory in Linux is mmap
1065 2011-11-13 18:42:49 <etotheipi_> but it sounds like it's not easy to get python to really clean up that memory
1066 2011-11-13 18:43:08 gjs278 has quit (Remote host closed the connection)
1067 2011-11-13 18:44:17 Lolcust_Backup has joined
1068 2011-11-13 18:44:21 <Lolcust_Backup> join bitcoin
1069 2011-11-13 18:44:30 <sipa> roconnor: did you read about my idea for a lazy script evaluator
1070 2011-11-13 18:45:02 gjs278 has joined
1071 2011-11-13 18:47:29 sshc has quit (Ping timeout: 240 seconds)
1072 2011-11-13 18:48:16 sshc has joined
1073 2011-11-13 18:56:33 theorbtwo has joined
1074 2011-11-13 18:57:11 <roconnor> sipa: nope
1075 2011-11-13 19:00:31 <wumpus> luke-jr: afaik at least for large allocations glibc's malloc uses mmap/mmunmap
1076 2011-11-13 19:00:39 <roconnor> sipa: what is it?
1077 2011-11-13 19:02:00 <luke-jr> wumpus: true
1078 2011-11-13 19:04:05 <cjdelisle> wow I can't believe there are no converters for switching between openssl MPI and like any other format...
1079 2011-11-13 19:04:39 <cjdelisle> I looked up the gcrypt apis and they don't parse or serialize openssl mpi, only openpgp's
1080 2011-11-13 19:07:08 firesign has joined
1081 2011-11-13 19:11:08 Lolcust has joined
1082 2011-11-13 19:11:47 eueueue has joined
1083 2011-11-13 19:16:05 br00t has quit (Quit: Leaving)
1084 2011-11-13 19:17:21 <eueueue> Make sense use other bitcoin clients, only when they be able to export private keys?
1085 2011-11-13 19:18:40 Clipse has quit (Read error: Connection reset by peer)
1086 2011-11-13 19:18:53 dan__ has quit (Quit: dan__)
1087 2011-11-13 19:20:56 <copumpkin> http://research.microsoft.com/pubs/156072/bitcoin.pdf ?
1088 2011-11-13 19:21:34 erle- has joined
1089 2011-11-13 19:21:59 karnac has quit (Quit: karnac)
1090 2011-11-13 19:22:11 erle- has quit (Client Quit)
1091 2011-11-13 19:22:24 erle- has joined
1092 2011-11-13 19:24:44 <firesign> copumpkin: fun paper read ja
1093 2011-11-13 19:25:18 <roconnor> copumpkin: do you have a summery?
1094 2011-11-13 19:25:34 <copumpkin> I've only read the abstract, but I can summarize that for you if you want :P
1095 2011-11-13 19:29:15 zapnap has quit (Remote host closed the connection)
1096 2011-11-13 19:29:54 <firesign> paper clean ja
1097 2011-11-13 19:30:31 PK has joined
1098 2011-11-13 19:37:48 * roconnor still hasn't got CHECKMULTI right :/
1099 2011-11-13 19:38:04 <sipa> i believe bitcoin doesn't get it right either
1100 2011-11-13 19:38:06 <etotheipi_> yeah, it's a pain
1101 2011-11-13 19:38:18 <etotheipi_> although if you have OP_CHECKSIG, it's a lot easier
1102 2011-11-13 19:38:32 <firesign> reward microsoft research people
1103 2011-11-13 19:39:07 <roconnor> etotheipi_: the specification for CHECKMULTISIG is very bizzare to me.
1104 2011-11-13 19:39:23 <roconnor> firesign: oh is it written by microsoft research?
1105 2011-11-13 19:39:33 <etotheipi_> oh, I am looking at my code now... I tried following the Satoshi client implementaiton, and it was a mess
1106 2011-11-13 19:39:36 <firesign> paper copumpkin link
1107 2011-11-13 19:39:57 <roconnor> etotheipi_: good for you; I tried following the wiki, and it was a disaster :D
1108 2011-11-13 19:40:11 <firesign> http://research.microsoft.com/pubs/156072/bitcoin.pdf
1109 2011-11-13 19:40:15 <etotheipi_> roconnor, which wiki?
1110 2011-11-13 19:40:48 <roconnor> etotheipi_: https://en.bitcoin.it/wiki/Script
1111 2011-11-13 19:41:25 <roconnor> firesign: ya, microsoft research is pretty great.  It is important for them not to be confused with mircosoft
1112 2011-11-13 19:41:39 <etotheipi_> roconnor, the wiki doesn't really tell you much
1113 2011-11-13 19:41:48 <roconnor> nope
1114 2011-11-13 19:41:56 <etotheipi_> I highly recommend looking at the satoshi implementation, or mine (which is basically the same thing, just in python)
1115 2011-11-13 19:41:58 <firesign> PR good for M$ responsible social
1116 2011-11-13 19:42:10 <roconnor> "For each signature and public key pair, OP_CHECKSIG is executed". <-- this is false
1117 2011-11-13 19:42:17 <etotheipi_> right...
1118 2011-11-13 19:42:38 <etotheipi_> it seems that you can have more pubKeys than sigs
1119 2011-11-13 19:42:45 <etotheipi_> and it will walk down the list for each sig looking for a key
1120 2011-11-13 19:42:54 <etotheipi_> but they must be in the same order
1121 2011-11-13 19:43:09 <roconnor> etotheipi_: the tricky bit was trying to figure out from which end they walk down
1122 2011-11-13 19:43:41 <etotheipi_> roconnor, just FYI... I recognize the value of working towards the standards, and I definitely think the standards should be updated to reflect the intent of code
1123 2011-11-13 19:43:53 <etotheipi_> roconnor, the problem is, the Satoshi implementation is essentially "truth"
1124 2011-11-13 19:44:05 <etotheipi_> regardless of whether it matches the spec
1125 2011-11-13 19:44:21 <etotheipi_> (or intent, for that matter)
1126 2011-11-13 19:44:49 <roconnor> yep
1127 2011-11-13 19:45:06 <roconnor> and that is why OP_MULTISIG pops an extra stack item
1128 2011-11-13 19:45:08 <etotheipi_> so I would default towards that
1129 2011-11-13 19:45:09 * roconnor sighs
1130 2011-11-13 19:45:31 <etotheipi_> I copied all 0.4.0 code into a MSVS project and use it to go scavenger hunting for these details
1131 2011-11-13 19:45:52 <roconnor> Why didn't they just fix the CHECKMUTLISIG before people started using it?
1132 2011-11-13 19:46:14 <etotheipi_> I bet no one noticed, since OP_CHECKMULTISIG isn't standard... there wasn't any scripts in the blockchain for them to realize it was wrong
1133 2011-11-13 19:46:43 <roconnor> if there weren't any scripts in the block chain with the opcode, then you can just change the meaning of the opcode :)
1134 2011-11-13 19:47:22 <etotheipi_> the problem is that it's still possible to inject scripts with those opcodes in the blockchain, even though the default client doesn't consider them standard
1135 2011-11-13 19:47:31 <roconnor> that is true
1136 2011-11-13 19:47:53 <etotheipi_> once the devs make that change, someone can mine a block with a tx that is invalid in the old chain but valid in the new chain (or vice versa) and fork the network
1137 2011-11-13 19:47:56 <roconnor> you'd have to check that none of the scripts have this opcode; even the unexecuted ones
1138 2011-11-13 19:53:43 karnac has joined
1139 2011-11-13 19:53:51 <etotheipi_> anyone have an update on the wallet-encryption update?
1140 2011-11-13 19:55:16 <etotheipi_> anyone want to donate to me for finding that bug ? :))
1141 2011-11-13 19:55:38 <roconnor> etotheipi_: I can give you some testnet coins :)
1142 2011-11-13 19:55:39 <etotheipi_> (err.. for disclosing the bug, instead of exploiting it... that's a bit more accurage)
1143 2011-11-13 19:55:55 AStove has joined
1144 2011-11-13 19:57:09 <copumpkin> MSR is behind a big chunk of the haskell development
1145 2011-11-13 19:57:11 <copumpkin> so I'm a fan :)
1146 2011-11-13 19:58:47 <roconnor> etotheipi_: heh, right; since you found the bug you should be able to exploit it to donate to yourself :P
1147 2011-11-13 20:01:00 cronopio has joined
1148 2011-11-13 20:02:03 io_error has joined
1149 2011-11-13 20:02:03 io_error has quit (Changing host)
1150 2011-11-13 20:02:03 io_error has joined
1151 2011-11-13 20:03:03 Phoebus has quit (Quit: Leaving)
1152 2011-11-13 20:03:28 <etotheipi_> I suppose I could, if I had anyone elses' backed up wallets... but I'm more interested in seeing BTC succeed
1153 2011-11-13 20:03:53 <etotheipi_> nothing will destroy the community faster than peoples' money just magically disappearing
1154 2011-11-13 20:03:53 <roconnor> :D
1155 2011-11-13 20:04:01 <sipa> etotheipi_: there's a pull request with a fix
1156 2011-11-13 20:04:09 <sipa> but it needs testing
1157 2011-11-13 20:04:30 <etotheipi_> sipa, I assume you need to compile the client yourself...?
1158 2011-11-13 20:04:38 <sipa> yes
1159 2011-11-13 20:04:55 <etotheipi_> gah... I would like to test it, but I could spend all day trying to figure that out
1160 2011-11-13 20:07:24 <phantomcircuit> A node in the network has an incentive to keep
1161 2011-11-13 20:07:24 <phantomcircuit> the knowledge of any transaction that offers a fee for itself, as any other node that becomes aware of the
1162 2011-11-13 20:07:24 <phantomcircuit> transaction will compete to authorize the transaction first and claim the associated fee
1163 2011-11-13 20:07:25 <phantomcircuit> ahah
1164 2011-11-13 20:07:34 <phantomcircuit> the entire premise of their paper is non sensical
1165 2011-11-13 20:07:45 <phantomcircuit> that only applies to miners who comprise a tiny% of the network
1166 2011-11-13 20:07:47 <phantomcircuit> idiots
1167 2011-11-13 20:08:12 <etotheipi_> I haven't read it, but I suppose it's more relevant in the far future when the miners are the only really feasible nodes to be verifying the blocks/txs
1168 2011-11-13 20:08:32 <etotheipi_> lightweight nodes aren't supposed to forward txs unless they can verify they are valid
1169 2011-11-13 20:08:45 <cjdelisle> phantomcircuit: thankyou for the synopsys, I started on page 1 and it looked interestingish, now I don't need to read it :)
1170 2011-11-13 20:08:48 <roconnor> phantomcircuit: seems fine to me; why should miners broadcast transactions?
1171 2011-11-13 20:08:50 <etotheipi_> so the only nodes that would be forwarding (in a future with a multi-terabyte blockchain) is the miners
1172 2011-11-13 20:09:07 <phantomcircuit> roconnor, they shouldn't, but who gives a shit they're a tiny % of the network
1173 2011-11-13 20:09:38 <phantomcircuit> etotheipi_, wrong you'd still have the lightweight client connected to multiple nodes, so at the very least you would be connected to multiple miner
1174 2011-11-13 20:10:04 <etotheipi_> phantomcircuit, I don't know what you mean by multiple miner
1175 2011-11-13 20:10:05 <phantomcircuit> the entire basis of their criticism is false
1176 2011-11-13 20:10:11 <phantomcircuit> miners
1177 2011-11-13 20:10:27 <etotheipi_> oh, sorry, misread that
1178 2011-11-13 20:11:17 <etotheipi_> arguably, you are correct... in such a future, if you broadcast a tx, you'll explicitly connect to a bunch of miners and make sure they each get it
1179 2011-11-13 20:11:32 <etotheipi_> so.... yeah, I agree with you
1180 2011-11-13 20:11:38 <phantomcircuit> a 17 page paper that boils down to "lol we dumb"
1181 2011-11-13 20:11:50 semb has joined
1182 2011-11-13 20:12:03 <firesign> msr correct when txn fee strong
1183 2011-11-13 20:12:43 <phantomcircuit> firesign, wat
1184 2011-11-13 20:13:15 <etotheipi_> on the topic of huge blockchains, I'm trying to thresh out an idea (most likely debated thousands of times)
1185 2011-11-13 20:13:16 <phantomcircuit> this paper shows a fundamental failure to comprehend the basic economics of the situation
1186 2011-11-13 20:13:32 <phantomcircuit> it is in the best interest of the initial sender to forward the transaction to as many peers as possible
1187 2011-11-13 20:13:33 <etotheipi_> but basically allowing, even miners to forget early blockchain
1188 2011-11-13 20:13:41 <phantomcircuit> the cost of doing so is effectively zero
1189 2011-11-13 20:13:43 Rav3nSw0rd has quit (Remote host closed the connection)
1190 2011-11-13 20:13:59 <firesign> no, txn forwarding expensive when scale up
1191 2011-11-13 20:14:07 <phantomcircuit> mining is so close to being a perfect market that the expected profits from running a mining operation are also zero
1192 2011-11-13 20:14:28 Rav3nSw0rd has joined
1193 2011-11-13 20:14:30 Rav3nSw0rd has quit (Read error: Connection reset by peer)
1194 2011-11-13 20:14:32 <phantomcircuit> firesign, no actually it isn't
1195 2011-11-13 20:15:15 <phantomcircuit> firesign, since i can connect to say 100 peers and send them all the transaction i can practically guarantee that miners wont be able to keep my transaction to themselves
1196 2011-11-13 20:15:34 <phantomcircuit> their solution is some crazy ass scheme to incentivize forwarding transactions
1197 2011-11-13 20:15:50 <phantomcircuit> when the real solution it simply to have the first peer that's sending connect to more nodes temporarily
1198 2011-11-13 20:16:09 <phantomcircuit> truly a stunning failure to understand the situtation
1199 2011-11-13 20:16:25 RazielZ has quit (Quit: Leaving)
1200 2011-11-13 20:24:52 BurtyB has quit (Ping timeout: 248 seconds)
1201 2011-11-13 20:26:09 <roconnor> copumpkin: did you write elliptic curve bindings for haskell?
1202 2011-11-13 20:26:20 <copumpkin> nope, bindings to what?
1203 2011-11-13 20:26:36 <roconnor> presumably to openssl
1204 2011-11-13 20:26:39 <copumpkin> nah
1205 2011-11-13 20:26:46 <copumpkin> I thought you'd already written your own EC code in pure haskell
1206 2011-11-13 20:26:49 <etotheipi_> roconnor, if you were a real man, you'd implement it yourself
1207 2011-11-13 20:26:52 <roconnor> I did
1208 2011-11-13 20:26:54 datagutt has quit (Quit: Computer has gone to sleep.)
1209 2011-11-13 20:26:55 <copumpkin> etotheipi_: ^
1210 2011-11-13 20:27:10 <copumpkin> never question the manliness of roconnor
1211 2011-11-13 20:27:26 <etotheipi_> I was tempted to, in python... since they have arbitrary length integers
1212 2011-11-13 20:27:32 <etotheipi_> but someone else did it already (Lis)
1213 2011-11-13 20:27:40 <etotheipi_> I thought it would be fun
1214 2011-11-13 20:27:47 <roconnor> it was fun :D
1215 2011-11-13 20:27:52 <etotheipi_> but surely I don't actually have the time for it
1216 2011-11-13 20:28:09 <roconnor> well, FWIW, it is much easier than the rest of bitcoin
1217 2011-11-13 20:28:33 <copumpkin> roconnor: how general are your elliptic curves?
1218 2011-11-13 20:28:36 <etotheipi_> yeah, well once you get EC-Point addition, I guess the rest isn't that bad
1219 2011-11-13 20:28:51 <roconnor> copumpkin: it is somewhat optimized for this specific curve
1220 2011-11-13 20:28:55 <copumpkin> ah
1221 2011-11-13 20:29:14 <copumpkin> so it's not abstracted over a field
1222 2011-11-13 20:29:29 <roconnor> copumpkin: one of the curve pameters, a, is 0
1223 2011-11-13 20:29:47 <roconnor> which means you can remove some arithmetic
1224 2011-11-13 20:29:58 <copumpkin> I see
1225 2011-11-13 20:30:17 chrisb__ has quit (Quit: Ex-Chat)
1226 2011-11-13 20:30:53 <firesign> sb goto -10
1227 2011-11-13 20:30:57 <etotheipi_> roconnor, obviously you're a big fan of Haskell... I got into it briefly a couple years ago, but my impression was that the compilers aren't actually good at optimizing it (i.e. multithreading)
1228 2011-11-13 20:31:17 BurtyB has joined
1229 2011-11-13 20:31:17 <copumpkin> etotheipi_: quite the opposite :P although the situation has improved significantly over the past couple of years
1230 2011-11-13 20:31:19 <etotheipi_> sure, there's a lot of other advantages of functional languages
1231 2011-11-13 20:31:47 <etotheipi_> but one of my issues was that "optimal" haskell seemed to still be slower than C++, and not multithreaded to the extent I expected
1232 2011-11-13 20:31:56 <copumpkin> oh, sure it is
1233 2011-11-13 20:32:17 <copumpkin> but it's not that much slower than C++ :) and tends to be a hell of a lot safer (and friendlier, once you're used to it)
1234 2011-11-13 20:32:43 <etotheipi_> I'm not disagreeing... I really do believe in the value of functional languages (I'm a mathematician... it's tough not to like it)
1235 2011-11-13 20:32:50 <firesign> phantomcircuit: no incentive others relay txn. presume majority perfectly trusty, no verify
1236 2011-11-13 20:33:29 <copumpkin> consider that good GHC-compiled code approaches around 2-3x of good C code, and GHC performs almost no low-level optimizations
1237 2011-11-13 20:33:36 <etotheipi_> but when you take away the fact that it wasn't even close to C++ in terms of speed, I couldn't convince myself to dive in too deep
1238 2011-11-13 20:33:42 <phantomcircuit> firesign, your english isn't good enough for me to understand you
1239 2011-11-13 20:33:45 <copumpkin> things will change faster now that we have our nice LLVM back-end
1240 2011-11-13 20:34:04 <etotheipi_> well maybe I'll give it another shot... someday
1241 2011-11-13 20:34:20 <copumpkin> I recommend it :)
1242 2011-11-13 20:34:27 <copumpkin> besides, there's more to programming than speed
1243 2011-11-13 20:34:35 <firesign> phantomcircuit: you send txn to 100. why 100 relay txn?
1244 2011-11-13 20:34:58 <phantomcircuit> again
1245 2011-11-13 20:35:00 <copumpkin> although I do think speed is important :)
1246 2011-11-13 20:35:02 <etotheipi_> copumpkin, I'm not disagreeing... but my application at the time was pretty speed-critical
1247 2011-11-13 20:35:04 <copumpkin> yeah
1248 2011-11-13 20:35:21 * copumpkin got sucked down the rabbit hole a couple of years ago
1249 2011-11-13 20:35:26 <copumpkin> never looked back :)
1250 2011-11-13 20:35:27 <etotheipi_> I got sucked into CUDA
1251 2011-11-13 20:35:29 <roconnor> etotheipi_: my main purpose is to understand the bitcoin protocol; my secondary purpose it to make a semi-formal functional specification of the bitcoin protocol.
1252 2011-11-13 20:35:50 <etotheipi_> my workplace ended up putting high-power NVIDIA GPUs in all the computers
1253 2011-11-13 20:36:02 <etotheipi_> so for "speed", CUDA programming was a much better choice than haskell
1254 2011-11-13 20:36:11 <etotheipi_> 100x speedup in some situations
1255 2011-11-13 20:37:18 <copumpkin> not mutually exclusive anymore :D
1256 2011-11-13 20:37:31 <copumpkin> we have a couple of libraries for doing CUDA in haskell now, but I'm not sure how good they are :)
1257 2011-11-13 20:37:41 <etotheipi_> copumpkin, it is mutually exclusive when you only have time to learn one
1258 2011-11-13 20:37:45 <copumpkin> yep
1259 2011-11-13 20:37:45 <etotheipi_> both were completely foreign to me
1260 2011-11-13 20:39:35 <copumpkin> yeah
1261 2011-11-13 20:39:37 <copumpkin> what kind of math?
1262 2011-11-13 20:39:45 <copumpkin> (did you study)
1263 2011-11-13 20:39:49 <etotheipi_> we're doing a lot of image processing
1264 2011-11-13 20:40:20 <etotheipi_> oh... just "applied" math... mainly focused on stochastic processes
1265 2011-11-13 20:40:30 <etotheipi_> but took quite a bit of crypto, too
1266 2011-11-13 20:40:37 <copumpkin> ah, cool
1267 2011-11-13 20:42:14 <etotheipi_> I think it was a good choice... but of course my brain is wired for it
1268 2011-11-13 20:42:31 <etotheipi_> as such Bitcoin development is a lot of fun
1269 2011-11-13 20:44:51 karnac has quit (Quit: karnac)
1270 2011-11-13 20:50:33 eastender has joined
1271 2011-11-13 20:52:02 firesign has quit (Quit: leaving)
1272 2011-11-13 20:55:43 <cjdelisle> Is the coinbase placed in the location for the sigscript in the coinbase transaction?
1273 2011-11-13 20:55:46 cande has joined
1274 2011-11-13 20:56:02 <cjdelisle> I've been looking through the specs and I figured it would be easier to just ask
1275 2011-11-13 20:56:20 <etotheipi_> cjdelisle, this is why I made these pics:  https://bitcointalk.org/index.php?topic=29416.0
1276 2011-11-13 20:56:39 <etotheipi_> there's 3 standard types of TxIns, and two types of TxOuts... they're all shown there
1277 2011-11-13 20:56:53 <extor> etotheipi_, what does your work use CUDA for?
1278 2011-11-13 20:56:56 <cjdelisle> ok thanks
1279 2011-11-13 20:57:12 <copumpkin> so have people thought about the issue raised in that MSR paper?
1280 2011-11-13 20:57:28 <copumpkin> the incentives to nodes to relay transactions
1281 2011-11-13 20:57:30 <etotheipi_> cjdelisle, the coinbase TxIns have arbitrary scripts... you can put anything there... and they're frequently used as an extra nonce field
1282 2011-11-13 20:57:39 <etotheipi_> extor, we do image processing at my work
1283 2011-11-13 20:57:48 <etotheipi_> so CUDA is an excellent tool for it
1284 2011-11-13 20:58:00 <extor> etotheipi_, you're a captcha farm? *snicker*
1285 2011-11-13 20:58:07 <etotheipi_> extor, haha.... not quite
1286 2011-11-13 20:58:20 <cjdelisle> I'm looking for the where they place the merged mining stuff
1287 2011-11-13 20:58:44 <etotheipi_> but we regularly need to perform 9x9 convolutions over 1024x1024 images.... that's dirt slow on a CPU
1288 2011-11-13 20:58:44 <extor> I'm thinking of making a captcha farm but not quite sure how feasable it is
1289 2011-11-13 20:58:49 Bwild has quit (Quit: leaving)
1290 2011-11-13 20:59:03 <graingert> extor: amazon mech turch
1291 2011-11-13 20:59:09 <extor> convolutions as in re-rendering the pic to a thumbnail?
1292 2011-11-13 20:59:15 <copumpkin> etotheipi_: at what point do convolutions become faster using the convolution theorem?
1293 2011-11-13 20:59:20 <copumpkin> I've wondered this before
1294 2011-11-13 20:59:25 <etotheipi_> well, I don't remember where I left it, but I my https://github.com/etotheipi/CUDA-Image-Processing library worked really well
1295 2011-11-13 20:59:36 <etotheipi_> copumpkin, you mean using FFTs?
1296 2011-11-13 20:59:37 <copumpkin> I guess when your mask is fairly large
1297 2011-11-13 20:59:38 <copumpkin> yeah
1298 2011-11-13 20:59:42 skitixch has joined
1299 2011-11-13 20:59:43 <extor> graingert, oh that's a good idea but there's still some visual captchas that can be solved by OCR and the right algos
1300 2011-11-13 21:00:00 <etotheipi_> copumpkin, your kernel size needs to be on the order of the size of the image
1301 2011-11-13 21:00:04 <copumpkin> yeah
1302 2011-11-13 21:00:13 <etotheipi_> well wait... I shouldn't say "on the order"
1303 2011-11-13 21:00:19 EPiSKiNG- has quit ()
1304 2011-11-13 21:00:26 luke-jr has quit (Read error: Connection reset by peer)
1305 2011-11-13 21:00:31 <etotheipi_> regular convolution gets extraordinarily slow with increasing PSF size
1306 2011-11-13 21:00:40 <etotheipi_> (PSF here, because we're simulating blur)
1307 2011-11-13 21:00:46 <copumpkin> ah
1308 2011-11-13 21:00:59 <skitixch> Hey, would someone knowledgable about websockets mind taking a look at this and see if they can figure out what's going wrong? https://gist.github.com/1215530
1309 2011-11-13 21:01:21 <etotheipi_> I was able to fit everything nicely into shared memory in the CUDA blocks up to 25x25 PSFs... beyond that, I would probably switch to FFT-based
1310 2011-11-13 21:02:03 EskimoBob has quit (Read error: Connection reset by peer)
1311 2011-11-13 21:04:02 luke-jr has joined
1312 2011-11-13 21:04:55 <extor> are the built in vidya cards on AMD Phenom mobos usually CUDA compliant? I should check the chipsets just in case I've got a mining situation at hand
1313 2011-11-13 21:05:13 <etotheipi_> I seriously doubt it
1314 2011-11-13 21:05:42 <etotheipi_> I'm spoiled, though... at work there's no question about money or savings... just get GTX 580s for all the computers
1315 2011-11-13 21:05:47 <etotheipi_> two of 'em, if they fit
1316 2011-11-13 21:07:26 <etotheipi_> extor, actually I misread your message
1317 2011-11-13 21:07:46 <etotheipi_> AMD bought ATI and uses ATI chipsets on all their stuff
1318 2011-11-13 21:07:57 <etotheipi_> CUDA is proprietary *NVIDIA*
1319 2011-11-13 21:07:59 <extor> $600 each wow. I saw a chart a couple days ago that showed how many dollars and watts each GPU cost and how many hased/min it could do
1320 2011-11-13 21:08:09 EPiSKiNG- has joined
1321 2011-11-13 21:08:21 <etotheipi_> you have to use OpenCL if you want to do GPU proc on ATI chips
1322 2011-11-13 21:09:00 <etotheipi_> the new AMD Llano CPUs *do* have quite a few cores in them, and you can use OpenCL on them
1323 2011-11-13 21:09:08 <extor> yeah still would be nice to divert some of the GPU power of my 10 frankenservers to mining if possible. Right now they're just sitting half empty holding a few VPS
1324 2011-11-13 21:09:31 <extor> LLano CPUs are the bulldozers?
1325 2011-11-13 21:09:37 <etotheipi_> extor, no
1326 2011-11-13 21:10:13 <etotheipi_> Llano is aimed more at midrange consumers who wouldn't mind having a decent GPU for light gaming, but not enough to purchase a dedicated GPU
1327 2011-11-13 21:10:27 <extor> Ahh the FX ones perhaps
1328 2011-11-13 21:10:59 <etotheipi_> bulldozer chips don't have the GPU cores... they're meant to be just powerful CPUs
1329 2011-11-13 21:11:00 <extor> I wonder if these could be made to do double duty without too much of an increase in wattage consumptuon
1330 2011-11-13 21:11:12 * Mqrius always wonders if it's prudent to start a completely different topic of conversation, if there's already a conversation going on in the channel...
1331 2011-11-13 21:11:54 <extor> babby says: yes!
1332 2011-11-13 21:12:38 <Mqrius> I've figured out a way for someone to securely generate a vanity address for someone else. (It's not that hard, really: http://bitcointalk.org/index.php?topic=25804.msg615923#msg615923 ) I was wondering though, if this could be expanded to securely generating vanity addresses for lots of people at the same time.
1333 2011-11-13 21:12:40 <Mqrius> The problems involved seem to resemble multi-party signatures, albeit somewhat different. Maybe someone more knowledgeable in that field has an idea on how to implement it? (justmoon?)
1334 2011-11-13 21:14:31 <etotheipi_> Mqrius, looks like a fun problem I'd like to dig into, but I'm way too distracted at the moment
1335 2011-11-13 21:15:20 <gmaxwell> Mqrius: I posted the same scheme previously. :)
1336 2011-11-13 21:15:26 <Mqrius> :) Are there any good papers on EC multi-key signing with threshold yet? I could see if I could understand it.
1337 2011-11-13 21:15:49 <gmaxwell> Mqrius: thought I only came up with it because bytecoin said it was possible.
1338 2011-11-13 21:16:04 <Mqrius> gmaxwell: Heh, didn't see it. It's nearly trivial for just 2 people though :P
1339 2011-11-13 21:16:41 <CIA-89> bips: genjix master * r3ef3138 / bip-0014.md :
1340 2011-11-13 21:16:41 <CIA-89> bips: BIP: 14
1341 2011-11-13 21:16:41 <CIA-89> bips: Title: BIP Protocol Version and User Agent - http://git.io/x4BTYA
1342 2011-11-13 21:17:29 <Mqrius> with a few more people, you could still ask for everyone's private key except for the person whose vanity address was found, but that would be troublesome, since all users need to be communicated with.
1343 2011-11-13 21:17:36 <gmaxwell> Mqrius: to get multiparty speed up... sum several starting keys.. then increment.. if you find a solution you can give it to any of the starting key paries by telling them the sum of the rest and the increment.
1344 2011-11-13 21:17:47 ejnahc has quit (Remote host closed the connection)
1345 2011-11-13 21:18:16 <Mqrius> gmaxwell: Yup. But ideally you would set up a site that wouldn't require contacting a user unless his address was found
1346 2011-11-13 21:19:20 Shaded has joined
1347 2011-11-13 21:19:30 Lolcust has quit (Ping timeout: 240 seconds)
1348 2011-11-13 21:19:35 p0s has quit (Remote host closed the connection)
1349 2011-11-13 21:19:43 <gmaxwell> Mqrius: why would it? he wouldn't need to be contacted except at signup.
1350 2011-11-13 21:20:20 <Mqrius> Well, you need the sum of the rest, so you need to contact all the rest to get the privkey they were using, and add that
1351 2011-11-13 21:20:45 <Mqrius> Well, yeah, there's 2 distinct setups you could consider. 1 node searching for a lot of users (for a fee), or the distributed version where a lot of users search for a lot of users (probably fee-less).
1352 2011-11-13 21:21:04 <gmaxwell> No you don't.
1353 2011-11-13 21:21:25 <gmaxwell> oh darn, yes you do.
1354 2011-11-13 21:21:29 <Mqrius> Sure you do. :)
1355 2011-11-13 21:21:29 <gmaxwell> Blonde moment.
1356 2011-11-13 21:22:16 <Mqrius> But yeah, the fully distributed search is easier, since all nodes are online searching anyway, but as soon as 1 node is offline, it doesn't work anymore.
1357 2011-11-13 21:22:36 <gmaxwell> obvious way to solve this is by writing a daemon.
1358 2011-11-13 21:22:43 <Mqrius> Myeah...
1359 2011-11-13 21:23:12 wasabi has joined
1360 2011-11-13 21:23:47 <Mqrius> But I was wondering if there's a way to do this where just 2 private keys are enough. Like with threshold multikey signing, you would need just the "finder"'s privkey, who found the vanity address, and the person's privkey whose address was actually found
1361 2011-11-13 21:23:54 <Mqrius> But I'm not sure if that's feasible.
1362 2011-11-13 21:24:13 <Mqrius> It just reminded me of multikey signing :P
1363 2011-11-13 21:24:23 <gmaxwell> no, It's not fesable, at least not without changing the type of keys and signing algo.
1364 2011-11-13 21:24:36 wasabi1 has quit (Ping timeout: 248 seconds)
1365 2011-11-13 21:25:57 <Mqrius> Hmm, I suppose I should look into multikey signing to find out why that /is/ possible, while this isn't :)
1366 2011-11-13 21:26:38 Lolcust has joined
1367 2011-11-13 21:28:46 skitixch has quit (Quit: skitixch)
1368 2011-11-13 21:29:06 karnac has joined
1369 2011-11-13 21:29:13 Bwild has joined
1370 2011-11-13 21:30:28 amiller has quit (Ping timeout: 248 seconds)
1371 2011-11-13 21:31:28 freewil has quit (Quit: Leaving)
1372 2011-11-13 21:32:32 <etotheipi_> roconnor, earlier, you asked about run time of scripts based on size:  I was wondering if you noticed the check in the main client that disallows scripts with more than one sigOP per 34 bytes...
1373 2011-11-13 21:33:30 <etotheipi_> I don't know if that's part of the "spec" so to say... but it does consider tx's invalid if they don't meet that criteria
1374 2011-11-13 21:34:55 ThomasV has joined
1375 2011-11-13 21:35:01 ThomasV has quit (Changing host)
1376 2011-11-13 21:35:01 ThomasV has joined
1377 2011-11-13 21:37:43 AStove has quit ()
1378 2011-11-13 21:39:41 TD has joined
1379 2011-11-13 21:40:41 PK has quit ()
1380 2011-11-13 21:49:08 <roconnor> etotheipi_: ya, I haven't impelemented any of the arbitrary limitations yet
1381 2011-11-13 21:50:01 <roconnor> etotheipi_: I guess I want to make an idealized bitcoin engine first
1382 2011-11-13 21:50:26 <roconnor> I was thinking of adding a statistics gathering monad which then could be used to easily enforce these arbitary limits
1383 2011-11-13 21:50:50 * roconnor found his bug in CHECKMULTISIG
1384 2011-11-13 21:51:01 <roconnor> I was decoding public keys before they were used
1385 2011-11-13 21:51:12 <roconnor> so decoding the public key "0x00" failed
1386 2011-11-13 21:51:30 <cjdelisle> cool
1387 2011-11-13 21:51:48 <etotheipi_> haha, that's similar to what happened to me
1388 2011-11-13 21:51:53 <etotheipi_> trying to Hash160 an OP_0
1389 2011-11-13 21:52:26 eoss has joined
1390 2011-11-13 21:54:52 <etotheipi_> ugh... is anyone here really familar with crypto++?
1391 2011-11-13 21:55:15 <etotheipi_> I cannot, for my life, figure out how to do ECDSA with double-hashing...
1392 2011-11-13 22:00:49 <Mqrius> etotheipi_: I think I read somewhere that a hash160 of an op_0 needs to be predefined...
1393 2011-11-13 22:01:05 <Mqrius> I don't really know what I'm talking about though.
1394 2011-11-13 22:06:06 TheZimm has joined
1395 2011-11-13 22:07:00 TheZimm has quit (Client Quit)
1396 2011-11-13 22:07:08 OneFixt has quit (Read error: Connection reset by peer)
1397 2011-11-13 22:07:11 <devrandom> TD[gone]: hey, that was 3am here...
1398 2011-11-13 22:07:19 <TD> heh
1399 2011-11-13 22:07:26 <TD> yeah sorry. i realized that afterwards
1400 2011-11-13 22:07:32 OneFixt has joined
1401 2011-11-13 22:07:32 OneFixt has quit (Changing host)
1402 2011-11-13 22:07:32 OneFixt has joined
1403 2011-11-13 22:07:49 eoss has quit (Quit: Leaving)
1404 2011-11-13 22:08:16 <devrandom> TD: what's up?
1405 2011-11-13 22:09:01 <TD> not a whole lot. was just saying "hey". you know, casual style ;)
1406 2011-11-13 22:09:29 <TD> i was starting to think about a selectcoins implementation. i'm thinking using a constraint solver might be the way to go
1407 2011-11-13 22:09:47 <TD> painful and large dependency, but might as well get the best solution done once and not have to revisit it later
1408 2011-11-13 22:10:10 <devrandom> I did a constraint logic programming language in undergrad
1409 2011-11-13 22:10:35 <devrandom> are there libraries out there for this purpose these days?
1410 2011-11-13 22:10:36 <TD> yeah, me too. universities love that stuff, for some reason. too bad they never mentioned memory management, hah
1411 2011-11-13 22:10:43 <TD> yeah, there are some for java
1412 2011-11-13 22:11:07 <devrandom> thinking...
1413 2011-11-13 22:11:19 <devrandom> it's an optimization problem I suppose
1414 2011-11-13 22:11:22 <etotheipi_> Mqrius, I got it working... because yes, it is supposed to be carefully defined and I didn'
1415 2011-11-13 22:11:32 <etotheipi_> devrandom, I feel like I came up with a really good algo
1416 2011-11-13 22:11:38 <Mqrius> Nice
1417 2011-11-13 22:11:48 <devrandom> TD: maybe it is equivalent to knapsack?
1418 2011-11-13 22:12:03 <TD> that's how satoshi did it, sort of. etotheipi_ wrote up a description
1419 2011-11-13 22:12:09 semb has quit (Remote host closed the connection)
1420 2011-11-13 22:12:18 <TD> it basically does a multipass knapsack problem. but there are some things it doesn't deal with
1421 2011-11-13 22:12:26 <TD> it'll produce suboptimal solutions in some cases
1422 2011-11-13 22:12:31 <etotheipi_> mine?
1423 2011-11-13 22:12:54 <etotheipi_> if you only plug in random solutions, it will come up suboptimal
1424 2011-11-13 22:13:03 <TD> no, i meant satoshis
1425 2011-11-13 22:13:16 <TD> sorry. i don't recall your algorithm (or didn't read it yet)
1426 2011-11-13 22:13:21 <etotheipi_> but that's why I have 2 dozen non-random solutions that I throw in there... one for each type of starting conditions
1427 2011-11-13 22:13:35 <etotheipi_> I don't actually know how the satoshi implementation works
1428 2011-11-13 22:13:56 <devrandom> etotheipi_: you came up with a general solution to the knapsack problem?  isn't it supposed to be NP?
1429 2011-11-13 22:14:00 <etotheipi_> the gist of my solution is, don't sweat coming up with one, massively-complicated, end-all algorithm
1430 2011-11-13 22:14:11 <etotheipi_> devrandom, I don't "solve" the problem, I just find a decent solution
1431 2011-11-13 22:14:45 <devrandom> okay, that makes sense then
1432 2011-11-13 22:14:59 <etotheipi_> I came up with one, elaborate, end-all, solution *evaluator*... then try 2 dozen different techniques of sort-then-take-top-N elements->=-target value
1433 2011-11-13 22:15:35 <etotheipi_> then I create all sorts of naive solutions, and even a bunch of random solutions... just throw them into a list:  and the evaluator sorts them
1434 2011-11-13 22:15:49 <etotheipi_> the "best" one for the moment wins...
1435 2011-11-13 22:16:10 <TD> i suspect it's better to try and reuse a general constraint solver than come up with an algorithm specifically for this problem. it _feels_ like the sort of thing a constraint solver should be good at
1436 2011-11-13 22:16:18 <TD> but i could well be wrong
1437 2011-11-13 22:16:27 <TD> pretty much anything is better than what bitcoinj has now
1438 2011-11-13 22:16:40 <etotheipi_> even better... the evaluator depends on a set of weights -- so you can change the weighting if you prefer max-anonymity on this tx-- or temporarily want to avoid zero-conf inputs
1439 2011-11-13 22:16:48 <devrandom> etotheipi_: cool... is there code or docs to look at?
1440 2011-11-13 22:17:34 <devrandom> TD: etotheipi_: maybe we can try both and see which works well under different conditions.  Probably a merchant and a consumer will have different coin distributions, etc. .
1441 2011-11-13 22:18:04 <etotheipi_> devrandom, there's a lot of code, but you can see the evaluator on line 3213 in https://github.com/etotheipi/PyBtcEngine/blob/master/pybtcengine.py
1442 2011-11-13 22:18:43 <etotheipi_> it computes 6 weights, and then the next method linearly combines the scores with the 6 weights, and picks the best solution
1443 2011-11-13 22:19:07 <etotheipi_> err  *it computes 6 _scores_ and then linearly combines them with the weights
1444 2011-11-13 22:19:47 <TD> wow
1445 2011-11-13 22:19:49 <TD> that's a lot of code
1446 2011-11-13 22:19:50 <etotheipi_> I throw in all sorts of naive solutions--mostly sorting by size or priority.... some sorting with grouped addresses.... lots of solutions aiming for 2x target
1447 2011-11-13 22:20:47 <etotheipi_> ignore the specific solutions, and just look at the method in 3213... it shows you how I evaluate a score in [0,1] for each of priority, numAddressLinking, allowFree, output anonymity, etc
1448 2011-11-13 22:21:27 <etotheipi_> once you have that method... you can throw in 2000 shitty solutions, and as long as one of them produces a decent solution, the evaluator will find it
1449 2011-11-13 22:22:05 <TD> i'll have to study this when i'm more awake
1450 2011-11-13 22:22:29 <etotheipi_> I really nailed the output-anonymity score...
1451 2011-11-13 22:22:35 <etotheipi_> which makes me the most happy :)
1452 2011-11-13 22:23:21 Two1One2 has quit (Quit: Quit)
1453 2011-11-13 22:23:29 <devrandom> I suppose the scorer and the soulution finder are orthogonal
1454 2011-11-13 22:23:33 wasabi1 has joined
1455 2011-11-13 22:24:00 <etotheipi_> I don't know if orthogonal is the right word, but they are independent
1456 2011-11-13 22:24:18 erska_ has quit (Ping timeout: 255 seconds)
1457 2011-11-13 22:25:42 <etotheipi_> just remember, there isn't really a "solution-finder", there are a ton of naive solutions added to a list, and the scorer figures out which one is best based on the weights you gave it
1458 2011-11-13 22:26:08 erska has joined
1459 2011-11-13 22:26:15 <etotheipi_> then each solution I add to that list is usually good at a different kind of starting condition
1460 2011-11-13 22:26:27 iddo has quit (Changing host)
1461 2011-11-13 22:26:27 iddo has joined
1462 2011-11-13 22:26:36 wasabi has quit (Ping timeout: 245 seconds)
1463 2011-11-13 22:27:36 <devrandom> TD: do the constraint satisfaction libs do local optimization?  i.e. backtrack and try a variation?
1464 2011-11-13 22:27:47 <TD> some do
1465 2011-11-13 22:27:53 <etotheipi_> arguably, though, you could use some kind of simplex algorithm
1466 2011-11-13 22:28:38 pickett has quit (Remote host closed the connection)
1467 2011-11-13 22:28:39 Lolcust- has joined
1468 2011-11-13 22:28:40 <etotheipi_> I'll have to think of a good reason, mathematically, why I prefer my method (besides the fact it seems to work really well)
1469 2011-11-13 22:28:58 Lolcust has quit (Quit: Oh shi...)
1470 2011-11-13 22:29:21 <devrandom> I guess this is not really knapsack, because you can always return change
1471 2011-11-13 22:29:43 <etotheipi_> well, I believe finding an "optimal" solution would still be NP-hard
1472 2011-11-13 22:31:28 <etotheipi_> given a target combined-score (given a set of weights), it would be NP-complete to determine if a subset exists that satisfies it
1473 2011-11-13 22:32:57 <devrandom> lag...
1474 2011-11-13 22:34:29 <roconnor> damn
1475 2011-11-13 22:35:02 <roconnor> if OP_CHECKSIG fails to decode the publickey, then False is pushed onto the stack rather than the script failing
1476 2011-11-13 22:35:15 <roconnor> I really should be writing this all down
1477 2011-11-13 22:35:20 <etotheipi_> right, it's not OP_CHECKSIGVERIFY
1478 2011-11-13 22:36:48 pickett has joined
1479 2011-11-13 22:44:08 eueueue has quit (Quit: Page closed)
1480 2011-11-13 22:46:23 <roconnor> etotheipi_: I'm starting to think gavin is wrong.  No one should ever reimplement bitcoin :P
1481 2011-11-13 22:46:36 <etotheipi_> roconnor, I pretty much agree with you
1482 2011-11-13 22:46:45 <etotheipi_> that's why I'm focused on a not-full-client
1483 2011-11-13 22:47:58 <etotheipi_> I have lots of ideas for user interface, and efficiently doing what a user wants to be done... but it would take me a year to get all the protocols implemented correctly...
1484 2011-11-13 22:48:30 <etotheipi_> that's why I'm skipping all the verification stuff, and all the networking
1485 2011-11-13 22:48:36 Lolcust- has quit (Quit: Oh shi...)
1486 2011-11-13 22:48:45 caedes has quit (Ping timeout: 240 seconds)
1487 2011-11-13 22:48:46 <etotheipi_> and I'm pretty sure Gavin has warned against reimplementing it
1488 2011-11-13 22:48:47 abragin has quit ()
1489 2011-11-13 22:48:55 <roconnor> true
1490 2011-11-13 22:49:03 <roconnor> though he also said he supports reimplementation efforts
1491 2011-11-13 22:49:09 Lolcust has joined
1492 2011-11-13 22:49:25 <cjdelisle> reimplementation will help weed out any latent bugs
1493 2011-11-13 22:49:26 <etotheipi_> I think ideal would be a networking/verification engine
1494 2011-11-13 22:49:36 <cjdelisle> because to rewrite something you must understand it perfectly.
1495 2011-11-13 22:49:58 <etotheipi_> so that devs like me, can latch onto a "perfect" implementation of all that stuff I don't care about... and focus on competing clients
1496 2011-11-13 22:50:05 <etotheipi_> no risk of forking the blockchain
1497 2011-11-13 22:50:52 <roconnor> etotheipi_: isn't the standard client by definition a perfect implementation?
1498 2011-11-13 22:51:05 <etotheipi_> cjdelisle, that's a very good point -- also there's no better way to learn about something than by implementing it yourself
1499 2011-11-13 22:51:30 <etotheipi_> roconnor, that was my point:  if I can actually use the standard client *engine* in my client, then I have a "perfect" implementation
1500 2011-11-13 22:52:11 <roconnor> why aren't use using the standard client with python bindings or rpc?
1501 2011-11-13 22:52:14 <etotheipi_> that's why my client will, at least to start, require having the std client open, and connect to it through localhost.... it will only see my client as another node, one that only asks for inv and occasionally sends it txs
1502 2011-11-13 22:52:17 EvanR has joined
1503 2011-11-13 22:52:48 io_error has quit (Remote host closed the connection)
1504 2011-11-13 22:52:59 <etotheipi_> unfortunately, the std client is one blob of spaghetti... there's no real way to decouple the GUI from the rest of it...
1505 2011-11-13 22:53:48 <roconnor> oh
1506 2011-11-13 22:53:50 <roconnor> okay
1507 2011-11-13 22:54:01 <etotheipi_> err.. not just the GUI... but all the wallet stuff
1508 2011-11-13 22:54:03 <EvanR> we need a haskell client
1509 2011-11-13 22:54:06 <etotheipi_> :)
1510 2011-11-13 22:54:23 <roconnor> EvanR: python can bind to Haskell?
1511 2011-11-13 22:54:41 <EvanR> sounds frankensteiny
1512 2011-11-13 22:54:45 wolfspraul has quit (Ping timeout: 258 seconds)
1513 2011-11-13 22:54:48 <EvanR> but probably, via C
1514 2011-11-13 22:55:05 <roconnor> sounds fun
1515 2011-11-13 22:56:46 <cjdelisle> decoupling the gui is something best done one piece at a time
1516 2011-11-13 22:58:55 <cjdelisle> figure out what apis are called, make a list, dev RPCs for each, allow rpc to use a persistent telnetish connection to avoid polling for things like block and connection counts
1517 2011-11-13 22:59:41 Lolcust has quit (Quit: Oh shi...)
1518 2011-11-13 23:00:08 Lolcust has joined
1519 2011-11-13 23:00:40 <extor>  I'm intrigued by the number of people who make their living by playing poker online. Some of them also seem to be programmers. I used to think that online gambling was just a scam like the lottery where the house always wins. http://en.wikipedia.org/wiki/Amir_Taaki
1520 2011-11-13 23:01:15 <EvanR> well poker isnt gambling ;)
1521 2011-11-13 23:01:30 <etotheipi_> I used to kinda make a living playing poker, in college
1522 2011-11-13 23:02:03 <etotheipi_> was making about $40/hr
1523 2011-11-13 23:03:04 <etotheipi_> it was fantastic, but quite stressful ... it's still gambling just gambling with an edge
1524 2011-11-13 23:03:27 AAA_awright has quit (Read error: Connection reset by peer)
1525 2011-11-13 23:03:28 <etotheipi_> if you play well, you'll win in the long run... but the short-term can look a LOT different than the long run
1526 2011-11-13 23:03:30 <Eliel> I tried it out at small stakes and did manage to double the money I started with but I didn't enjoy it so I gave up.
1527 2011-11-13 23:03:54 AAA_awright has joined
1528 2011-11-13 23:04:14 <etotheipi_> the variance of that game is sky-high
1529 2011-11-13 23:04:29 <roconnor> heh
1530 2011-11-13 23:04:59 iocor has quit (Quit: Computer has gone to sleep.)
1531 2011-11-13 23:05:02 caedes has joined
1532 2011-11-13 23:05:10 <roconnor> one thing I learned playing in fake markets that there is a small upside if you have an edge, but if you screw up there is an unlimited downside.
1533 2011-11-13 23:05:19 <roconnor> I'm glad I learned that with fake money
1534 2011-11-13 23:05:30 <etotheipi_> and i learned it with a lot of real money
1535 2011-11-13 23:06:02 <etotheipi_> although I still came out WAAAY ahead... my lifetime profits probably could've been double if I never sat down at the "big game" like I did half-a-dozen times
1536 2011-11-13 23:06:55 <etotheipi_> I didn't feel like I was beaten (skill-wise), but one bad decision can destroy 8 hours of great play/profit
1537 2011-11-13 23:07:08 <roconnor> I can believe that
1538 2011-11-13 23:07:28 <roconnor> that's the feeling I get when I look at the unlimited downside
1539 2011-11-13 23:07:31 <etotheipi_> I started designing a pokerbot
1540 2011-11-13 23:07:48 <etotheipi_> actually got pretty far with neural nets and SVMs, but I never got it online
1541 2011-11-13 23:18:47 spq has quit (Read error: Connection reset by peer)
1542 2011-11-13 23:19:06 kish has quit (Remote host closed the connection)
1543 2011-11-13 23:19:13 kish has joined
1544 2011-11-13 23:19:37 <nanotube> poker bot design, step 1: give bot good poker face. :)
1545 2011-11-13 23:19:39 spq has joined
1546 2011-11-13 23:19:49 <etotheipi_> :)
1547 2011-11-13 23:20:24 eueueue has joined
1548 2011-11-13 23:20:37 GMP has quit (Read error: Connection reset by peer)
1549 2011-11-13 23:20:37 hostilewind has quit (Ping timeout: 256 seconds)
1550 2011-11-13 23:21:00 iocor has joined
1551 2011-11-13 23:21:35 BCBot has quit (Ping timeout: 260 seconds)
1552 2011-11-13 23:22:46 <eueueue> Hi, sorry if is a stupied question, but I was reading abour serval project that use a wireless mesh network: http://p2pfoundation.net/Serval
1553 2011-11-13 23:23:14 <eueueue> http://en.wikipedia.org/wiki/Wireless_mesh_network
1554 2011-11-13 23:23:42 <nanotube> so far, it's not even a question :)
1555 2011-11-13 23:23:55 <eueueue> I would like to know if is possible for example bitcoin android client use this kind of network to propragate blockchain
1556 2011-11-13 23:24:02 <eueueue> without neeed to have internet
1557 2011-11-13 23:24:22 <eueueue> probably crazy newbie question
1558 2011-11-13 23:24:25 <eueueue> hehe
1559 2011-11-13 23:24:48 <eueueue> just amazing with p2p possibilities
1560 2011-11-13 23:24:51 <sipa> you could propagate the blockchain using pigeons
1561 2011-11-13 23:25:08 <eueueue> what is pigeons?
1562 2011-11-13 23:25:16 <sipa> aq kind of bird
1563 2011-11-13 23:25:53 <sipa> but if the delay of the network becomes close to ten minutes, you'll get lots of stalw blocks
1564 2011-11-13 23:25:56 <sipa> stale
1565 2011-11-13 23:26:43 BCBot has joined
1566 2011-11-13 23:28:01 <eueueue> you were kidding with me right sipa?
1567 2011-11-13 23:28:13 <eueueue> probably my question was stupid
1568 2011-11-13 23:28:14 <eueueue> hehe
1569 2011-11-13 23:28:33 <eueueue> sorry for my english
1570 2011-11-13 23:28:38 <roconnor> eueueue: the larger point is the the blockchain can be distriubted by people by any means they like
1571 2011-11-13 23:28:57 <sipa> the serious answer: any network is good, including mesh networks, as long as the network delay is in the order of seconds
1572 2011-11-13 23:29:11 <eueueue> understand
1573 2011-11-13 23:29:13 <eueueue> thanks
1574 2011-11-13 23:29:33 <roconnor> and depending on your application, you could even tollerate larger delays
1575 2011-11-13 23:30:30 <gmaxwell> I thought there was someone distributing the blockchain on freenet. Did that go anywhere?
1576 2011-11-13 23:30:35 <luke-jr> eueueue: Bitcoin needs to be interconnected to work
1577 2011-11-13 23:30:37 <roconnor> I was wonder if amount of work done above a transaction would be a better measure of amount of confirmation than the number of blocks?
1578 2011-11-13 23:30:40 <roconnor> *wondering
1579 2011-11-13 23:31:13 <roconnor> gmaxwell: I still have some interest in that; I've been siting on #btcfn
1580 2011-11-13 23:31:45 sacarlson has quit (Ping timeout: 260 seconds)
1581 2011-11-13 23:32:12 hostilewind has joined
1582 2011-11-13 23:33:50 <gmaxwell> roconnor: work done over the available computing capacity, or times the cost of work is better.. and blocks is a fair proxy for those.
1583 2011-11-13 23:34:55 <eueueue> the function that we will have the option to confirm on other device to allow spend btc. Will be possible without any business?
1584 2011-11-13 23:34:58 <gmaxwell> (cost of work is a metric for offline/isolation attacks, vs available capacity is the metric for chain racing attacks)
1585 2011-11-13 23:35:19 <gmaxwell> eueueue: can you restate that?
1586 2011-11-13 23:36:38 <eueueue> I don't know if the correct name is multi sign. Example: I want to spend btc here on my pc. But will be approved only if I confirm it on a mobile app
1587 2011-11-13 23:37:01 <eueueue> is it possible to have this without any company service
1588 2011-11-13 23:37:21 <eueueue> example: without need to pay taxes for it
1589 2011-11-13 23:37:28 <gmaxwell> Yes, you could do that all on your own without any third party service. Someone will have to make the software for it.
1590 2011-11-13 23:37:45 freewil has joined
1591 2011-11-13 23:37:45 freewil has quit (Changing host)
1592 2011-11-13 23:37:45 freewil has joined
1593 2011-11-13 23:37:59 <eueueue> It's not necessary any central network?
1594 2011-11-13 23:38:23 <gmaxwell> No central party is required.
1595 2011-11-13 23:38:28 <eueueue> good
1596 2011-11-13 23:38:29 erle- has quit (Quit: erle-)
1597 2011-11-13 23:38:31 <eueueue> thanks
1598 2011-11-13 23:41:11 <TD> i have a colleague who is interested in mesh networks
1599 2011-11-13 23:41:25 <TD> he is intruiged by the idea of using bitcoin to pay nodes for routing traffic
1600 2011-11-13 23:42:05 <TD> how to do it efficiently in a packet switched network is, i think, a topic of interest in academia at the moment
1601 2011-11-13 23:43:34 <eueueue> Is it planned things like: I want people donate 50 bitcoins for a key, but I only receive the coins if all donated be 50 bitcoins or more. If is 49, all bitcoins donated will back to people who donated
1602 2011-11-13 23:43:37 <eueueue> ?
1603 2011-11-13 23:43:54 <TD> yes
1604 2011-11-13 23:43:59 <TD> that's called an assurance contract
1605 2011-11-13 23:44:06 <eueueue> in this case is necessary third parties?
1606 2011-11-13 23:44:16 <TD> https://en.bitcoin.it/wiki/Contracts#Example_3:_Assurance_contracts
1607 2011-11-13 23:44:43 <TD> people make "pledges". the pledge is only activated, ie the coins are only taken from you, if enough pledges are made to reach the target
1608 2011-11-13 23:45:05 <eueueue> thanks
1609 2011-11-13 23:45:08 <TD> you don't need a third party, but you do need somebody to run the contract - ie, decide what the target is (50 BTC or whatever) and collect the pledges (run the software)
1610 2011-11-13 23:45:11 <eueueue> will read
1611 2011-11-13 23:45:20 sacarlson has joined
1612 2011-11-13 23:49:05 graingert has quit (Remote host closed the connection)
1613 2011-11-13 23:59:34 <roconnor> w00t, passed CHECKMULTSIG