1 2012-10-25 00:07:37 <D34TH> gmaxwell, i require 2^256 work reduction in real life
   2 2012-10-25 00:07:50 <D34TH> i shouldnt expect my miner to do more work than even i would
   3 2012-10-25 00:08:52 one_zero has joined
   4 2012-10-25 00:17:11 slush has joined
   5 2012-10-25 00:19:06 slush1 has quit (Ping timeout: 245 seconds)
   6 2012-10-25 00:22:04 maaku has quit (Quit: maaku)
   7 2012-10-25 00:26:25 copumpkin has joined
   8 2012-10-25 00:32:49 vampireb_ has quit (Quit: Lost terminal)
   9 2012-10-25 00:33:01 dvide has quit ()
  10 2012-10-25 00:35:08 GMP has joined
  11 2012-10-25 00:36:13 galambo has quit (Read error: Connection reset by peer)
  12 2012-10-25 00:36:14 <gmaxwell> https://crypto.stanford.edu/~dabo/pubs/abstracts/ssl-client-bugs.html
  13 2012-10-25 00:38:27 galambo has joined
  14 2012-10-25 00:38:28 <jrmithdobbs> do i even want to look at that or is it just going to make me mad at something
  15 2012-10-25 00:38:41 <jgarzik> What facilities does the bitcoin protocol require of OpenSSL?  My list is: ECDSA, SHA1, SHA256, RIPEMD160
  16 2012-10-25 00:38:57 <jgarzik> missing anything?  (this excludes stuff not required for bitcoin protocol, like wallet encryption)
  17 2012-10-25 00:39:00 <Luke-Jr> jgarzik: what do we use SHA1 for?
  18 2012-10-25 00:39:06 <jrmithdobbs> jgarzik: aes
  19 2012-10-25 00:39:12 <jgarzik> OP_SHA1
  20 2012-10-25 00:39:20 <jrmithdobbs> jgarzik: for wallet
  21 2012-10-25 00:39:20 <Luke-Jr> jgarzik: also, note we depend on non-standard/OpenSSL ECDSA extensions for now
  22 2012-10-25 00:39:23 <jgarzik> jrmithdobbs: bitcoin protocol does not require AES
  23 2012-10-25 00:39:35 <jrmithdobbs> jgarzik: oh i misread your second line
  24 2012-10-25 00:40:03 <jrmithdobbs> jgarzik: i think that's it
  25 2012-10-25 00:40:15 PiZZaMaN2K is now known as PiZZaMaN2K|away
  26 2012-10-25 00:41:04 <gmaxwell> jrmithdobbs: nah, probably won't make you mad... just a bit of caution for all the bitcoin stuff that uses SSL.
  27 2012-10-25 00:41:43 <gmaxwell> jgarzik: we use the openssl bignum stuff.
  28 2012-10-25 00:41:54 <gmaxwell> jgarzik: we also use its random pool.
  29 2012-10-25 00:42:13 optimator_ has joined
  30 2012-10-25 00:42:27 <gmaxwell> I'm not clear on where you're drawing the line on protocol, obviously the bignum stuff could be replaced but so could ECDSA, SHA1, SHA256, RIPEMD160.
  31 2012-10-25 00:42:35 <jrmithdobbs> gmaxwell: that's a long paper to point out "you should probably validate your cert chain"
  32 2012-10-25 00:42:48 <gmaxwell> jrmithdobbs: well, no, and that ~nothing does.
  33 2012-10-25 00:43:10 <jrmithdobbs> gmaxwell: except web browser, ya, i've seen another paper about this before ...
  34 2012-10-25 00:43:18 <jrmithdobbs> and some mail clients get it right
  35 2012-10-25 00:43:29 <jgarzik> gmaxwell: poking around with a minimal SPV client in C, and trying to map _minimal_ dependencies needed for operation
  36 2012-10-25 00:43:34 <gmaxwell> including a paypal merchant api and such.
  37 2012-10-25 00:43:49 <jgarzik> short term "use openssl" is obvious answer
  38 2012-10-25 00:43:57 <gmaxwell> jgarzik: yea, you certantly don't need openssl for that stuff.
  39 2012-10-25 00:44:00 <jgarzik> just trying to make sure I don't miss anything
  40 2012-10-25 00:44:15 <jrmithdobbs> oh wow, aws payments sdk =/
  41 2012-10-25 00:44:20 <sipa> we only use openssl for low-level functions - i believe those are generally correctly implemented
  42 2012-10-25 00:44:37 <sipa> the problem the paper discusses is mostly incorrect usage of the higher layers
  43 2012-10-25 00:44:55 <gmaxwell> sipa: yes, not us. But for example, you can add electrum to that list now.
  44 2012-10-25 00:45:06 <jrmithdobbs> the only thing thats kind of abused re: openssl in bitcoin is the bignum stuff iirc (and it's dumb stuff that doesn't matter)
  45 2012-10-25 00:45:09 optimator has quit (Ping timeout: 260 seconds)
  46 2012-10-25 00:45:18 <gmaxwell> or probably varrious apis that bitcoin webservices are using.
  47 2012-10-25 00:46:38 <gmaxwell> sipa: and we do use openssl for _ssl_ in fact, though it's probably pretty much the only case where failing to do cert validation is excusable.. but people have talked about stuff like HTTPS in bitcoin for payment protocols, for example.
  48 2012-10-25 00:50:32 * sipa ha
  49 2012-10-25 00:50:35 * sipa has
  50 2012-10-25 00:51:42 <sipa> but what alternative is there? sure if you disregard PKI's entirely, use our own EC keys for authentication and encryption, and move the problem of getting trusted host keys elsewhere...
  51 2012-10-25 00:53:23 <gmaxwell> sipa: Well, I didn't link the paper to suggest we not— just something to stack in the back of your mind as a common failure mode, esp the fact that common libraries (like curl) don't/haven't validate. I'll be paying attention to more infrastructure.
  52 2012-10-25 00:53:34 <gmaxwell> sipa: though for a payment protcol SSL has a serious limitation. :(
  53 2012-10-25 00:53:53 <gmaxwell> It doesn't provide non-repudiation tractable to the certificate.
  54 2012-10-25 00:54:38 root2_ has joined
  55 2012-10-25 00:54:50 <gmaxwell> And thats something I think a payment protocol should provide, even if its not mandatory or on by default.
  56 2012-10-25 00:57:51 root2 has quit (Ping timeout: 245 seconds)
  57 2012-10-25 00:59:47 root2_ is now known as root2
  58 2012-10-25 01:08:12 toffoo has joined
  59 2012-10-25 01:15:57 <amiller> how about s/miners/smelters
  60 2012-10-25 01:16:36 <amiller> in the long run, mining a block means taking the shavings off everyones worn down coins and casting them into a fresh shiny new one
  61 2012-10-25 01:17:22 <gmaxwell> yea, I like describing transactions as sending coins off to be reforged.
  62 2012-10-25 01:17:45 <amiller> i'm trying to figure out how to make a composable proof-of-work puzzle
  63 2012-10-25 01:17:51 <MC1984> bitcoins capacity for metaphor always amuses me
  64 2012-10-25 01:18:07 <MC1984> cos its the only real way to explain what the fuck its doing
  65 2012-10-25 01:18:28 <amiller> is there some puzzle for which you can take two 10-bit pow solutions, add 11-bits of work, and produce a 12-bit pow solution
  66 2012-10-25 01:18:47 <gmaxwell> amiller: just have your evaluation compose them.
  67 2012-10-25 01:18:53 <amiller> somehow it would have to invalidate/conclude the input of the components
  68 2012-10-25 01:19:25 <gmaxwell> amiller: you put the target in the input.
  69 2012-10-25 01:19:51 <gmaxwell> e.g. a 11 bit work is only valid as 11 bit work, even if it meets 12 bits of apparent work.
  70 2012-10-25 01:19:53 EPiSKiNG- has quit ()
  71 2012-10-25 01:21:00 nym has quit (Remote host closed the connection)
  72 2012-10-25 01:21:00 mndrix has quit (Remote host closed the connection)
  73 2012-10-25 01:21:01 Faradayy has quit (Remote host closed the connection)
  74 2012-10-25 01:24:30 <amiller> well sure, you'd commit to 11-bits of work, and you'd also commit to the two 10-bit solutions you were attempting to aggregate
  75 2012-10-25 01:26:15 D34TH has quit (Read error: Connection reset by peer)
  76 2012-10-25 01:27:05 mndrix has joined
  77 2012-10-25 01:33:46 optimator has joined
  78 2012-10-25 01:33:46 optimator has quit (Changing host)
  79 2012-10-25 01:33:46 optimator has joined
  80 2012-10-25 01:33:56 optimator_ has quit (Ping timeout: 255 seconds)
  81 2012-10-25 01:34:35 ibno has quit (Quit: Lämnar)
  82 2012-10-25 01:36:36 knotwork has quit (Read error: Connection reset by peer)
  83 2012-10-25 01:37:49 knotwork has joined
  84 2012-10-25 01:38:54 <amiller> H( nonce ||  left  || right || target )   ->  ( left/right bit || "0"*target || remainder )
  85 2012-10-25 01:40:48 freakazoid has quit (Ping timeout: 272 seconds)
  86 2012-10-25 01:40:49 <amiller> the proof would be a chain of nonces and the total work would be the sum of the targets in the chain
  87 2012-10-25 01:41:38 nym has joined
  88 2012-10-25 01:41:46 <amiller> it's okay if this is a semi lattice not a tree
  89 2012-10-25 01:42:02 <amiller> that means that left and right might share some children
  90 2012-10-25 01:42:09 <amiller> or in fact they might even be the same, left = right
  91 2012-10-25 01:43:24 <amiller> i can't tell if it matters whether or not there is the possibility of double counting here
  92 2012-10-25 01:50:22 <amiller> er, well actually the potential to double count is exactly the problem
  93 2012-10-25 01:52:23 slush1 has joined
  94 2012-10-25 01:54:06 slush has quit (Ping timeout: 244 seconds)
  95 2012-10-25 02:01:51 SupaDupa has joined
  96 2012-10-25 02:01:57 SupaDupa has left ()
  97 2012-10-25 02:01:57 SupaDupa has joined
  98 2012-10-25 02:01:57 SupaDupa has left ()
  99 2012-10-25 02:01:57 SupaDupa has joined
 100 2012-10-25 02:01:57 SupaDupa has left ()
 101 2012-10-25 02:01:58 SupaDupa has joined
 102 2012-10-25 02:01:59 SupaDupa has left ()
 103 2012-10-25 02:01:59 SupaDupa has joined
 104 2012-10-25 02:02:00 SupaDupa has left ()
 105 2012-10-25 02:02:01 SupaDupa has joined
 106 2012-10-25 02:02:02 SupaDupa has left ()
 107 2012-10-25 02:02:02 SupaDupa has joined
 108 2012-10-25 02:02:03 SupaDupa has left ()
 109 2012-10-25 02:02:04 SupaDupa has joined
 110 2012-10-25 02:02:05 SupaDupa has left ()
 111 2012-10-25 02:02:06 SupaDupa has joined
 112 2012-10-25 02:02:07 SupaDupa has left ()
 113 2012-10-25 02:02:07 SupaDupa has joined
 114 2012-10-25 02:02:08 SupaDupa has left ()
 115 2012-10-25 02:02:09 SupaDupa has joined
 116 2012-10-25 02:02:10 SupaDupa has left ()
 117 2012-10-25 02:02:11 SupaDupa has joined
 118 2012-10-25 02:02:12 SupaDupa has left ()
 119 2012-10-25 02:02:12 SupaDupa has joined
 120 2012-10-25 02:02:14 SupaDupa has left ()
 121 2012-10-25 02:02:14 SupaDupa has joined
 122 2012-10-25 02:02:15 SupaDupa has left ()
 123 2012-10-25 02:02:16 SupaDupa has joined
 124 2012-10-25 02:02:18 SupaDupa has left ()
 125 2012-10-25 02:02:18 SupaDupa has joined
 126 2012-10-25 02:05:49 AtomicComic has joined
 127 2012-10-25 02:08:55 EPiSKiNG- has joined
 128 2012-10-25 02:10:49 Faradayy has joined
 129 2012-10-25 02:10:51 <wizkid057> anyone have a c-snippet for validating an address handy?
 130 2012-10-25 02:12:34 AtomicComic has quit (Ping timeout: 245 seconds)
 131 2012-10-25 02:18:57 int0x27h has quit (Ping timeout: 260 seconds)
 132 2012-10-25 02:18:59 xisalty has quit (Ping timeout: 276 seconds)
 133 2012-10-25 02:20:32 <Luke-Jr> wizkid057: libblkmaker master
 134 2012-10-25 02:26:18 echelon has joined
 135 2012-10-25 02:27:24 <echelon> ok, ~/.bitcoin/blk0002.dat is larger than the blk0002.dat i used for -loadblock=
 136 2012-10-25 02:27:32 <echelon> but it seems it's still not done
 137 2012-10-25 02:27:58 maaku has joined
 138 2012-10-25 02:28:17 <gmaxwell> echelon: er you had no ~/.bitcoin/blk0*.dat when you started right?
 139 2012-10-25 02:28:25 <echelon> right
 140 2012-10-25 02:28:30 <gmaxwell> (otherwise you'll just end up with another copy of the blocks appeneded to the first)
 141 2012-10-25 02:28:33 <gmaxwell> okay.
 142 2012-10-25 02:28:51 <echelon> i loaded it from a different directory
 143 2012-10-25 02:29:04 twobitcoins_ is now known as twobitcoins
 144 2012-10-25 02:29:09 <gmaxwell> Good.
 145 2012-10-25 02:29:47 <echelon> alright, it seems i'm connected to peers now
 146 2012-10-25 02:30:01 <echelon> but the cpu usage for bitcoind is at like 50-80%
 147 2012-10-25 02:30:04 <echelon> very sluggish
 148 2012-10-25 02:30:19 <gmaxwell> echelon: sure, it's busy doing its thing..
 149 2012-10-25 02:30:26 <echelon> what thing
 150 2012-10-25 02:31:00 <echelon> it didn't even notice it with 0.3.2
 151 2012-10-25 02:31:07 xisalty has joined
 152 2012-10-25 02:31:14 <echelon> *i
 153 2012-10-25 02:31:35 <echelon> even as i type, the cursor just halts
 154 2012-10-25 02:33:23 servvs has quit (Ping timeout: 245 seconds)
 155 2012-10-25 02:34:46 <echelon> i mean, is it going to be this way /all/ the time?
 156 2012-10-25 02:41:12 Eslbaer has joined
 157 2012-10-25 02:43:42 TheEslbear has quit (Ping timeout: 244 seconds)
 158 2012-10-25 02:44:19 fiesh has quit (Ping timeout: 246 seconds)
 159 2012-10-25 02:47:27 fiesh has joined
 160 2012-10-25 02:54:19 <rdponticelli> echelon: No, probably it's validating the block history
 161 2012-10-25 02:54:38 <rdponticelli> That process is very resource intensive
 162 2012-10-25 02:54:43 <echelon> hmm
 163 2012-10-25 02:54:51 <rdponticelli> It would normalize when it finish
 164 2012-10-25 02:55:01 <echelon> but isn't that what it does as it indexes?
 165 2012-10-25 02:57:52 <rdponticelli> Yes, the indexing is a tight loop, very consuming
 166 2012-10-25 02:58:04 <rdponticelli> It can take a while
 167 2012-10-25 02:58:48 <echelon> my blkindex.dat's size is at 1195753472 ..what about yours?
 168 2012-10-25 03:00:46 <rdponticelli> I went to ultraprune, so my client is not using it anymore, but my last is 1178619904
 169 2012-10-25 03:00:46 arij has joined
 170 2012-10-25 03:00:46 arij has quit (Client Quit)
 171 2012-10-25 03:01:00 <echelon> hrm
 172 2012-10-25 03:01:06 arij has joined
 173 2012-10-25 03:01:09 arij is now known as Guest39857
 174 2012-10-25 03:01:36 <rdponticelli> echelon: have you seen debug.log?
 175 2012-10-25 03:02:20 freakazoid has joined
 176 2012-10-25 03:02:22 <echelon> what should i look for
 177 2012-10-25 03:02:31 Guest39857 has quit (Changing host)
 178 2012-10-25 03:02:31 Guest39857 has joined
 179 2012-10-25 03:02:51 Guest39857 is now known as arij
 180 2012-10-25 03:02:51 <rdponticelli> Are you on a unix like os?
 181 2012-10-25 03:03:29 <echelon> yes
 182 2012-10-25 03:03:46 <rdponticelli> tail -f .bitcoin/debug.log from a console
 183 2012-10-25 03:03:58 <rdponticelli> If it's on the loop, you'll see it
 184 2012-10-25 03:04:27 <echelon> Flushed 10543 addresses to peers.dat  70ms
 185 2012-10-25 03:04:31 <echelon> ERROR: FetchInputs() : 0a65ffc72b mempool Tx prev not found 649b6fe092
 186 2012-10-25 03:04:32 <echelon> stored orphan tx 0a65ffc72b (mapsz 1317)
 187 2012-10-25 03:05:03 <rdponticelli> Yes, ok, it will output a lot of things
 188 2012-10-25 03:05:05 <echelon> CTxMemPool::accept() : accepted b1e0826872 (poolsz 155)
 189 2012-10-25 03:05:06 <echelon> CTxMemPool::accept() : accepted f1b79f1c08 (poolsz 156)
 190 2012-10-25 03:05:08 <echelon> CTxMemPool::accept() : accepted 826401d091 (poolsz 157)
 191 2012-10-25 03:05:12 <echelon> oh
 192 2012-10-25 03:05:21 <echelon> alright
 193 2012-10-25 03:05:23 <rdponticelli> But is it doing it fast?
 194 2012-10-25 03:05:39 <echelon> updates every second or so
 195 2012-10-25 03:05:54 <echelon> eh
 196 2012-10-25 03:05:56 <echelon> not even
 197 2012-10-25 03:06:00 <echelon> varies
 198 2012-10-25 03:06:01 <rdponticelli> Look for the height on a SetBestChain
 199 2012-10-25 03:06:07 <echelon> ok
 200 2012-10-25 03:06:31 paraipan has quit (Quit: Saliendo)
 201 2012-10-25 03:07:32 denisx has joined
 202 2012-10-25 03:07:34 <rdponticelli> What version is it?
 203 2012-10-25 03:07:41 <echelon> SetBestChain: new best=000000000000019e1114  height=204841  work=555780410464537323010
 204 2012-10-25 03:07:42 <echelon> oh
 205 2012-10-25 03:07:54 <echelon> 0.7.1
 206 2012-10-25 03:08:21 <rdponticelli> Looks about right
 207 2012-10-25 03:08:33 <echelon> kk
 208 2012-10-25 03:09:26 <echelon> alright, its resource usage is tolerable now
 209 2012-10-25 03:09:26 <echelon> thanks
 210 2012-10-25 03:09:41 <rdponticelli> ;)
 211 2012-10-25 03:09:47 <echelon> :)
 212 2012-10-25 03:14:52 <jgarzik> the version message is such a fscking pain
 213 2012-10-25 03:19:35 Arnavion has quit (Quit: Arnavion)
 214 2012-10-25 03:25:04 maaku has quit (Quit: maaku)
 215 2012-10-25 03:25:53 Arnavion has joined
 216 2012-10-25 03:27:37 maaku has joined
 217 2012-10-25 03:28:00 slush has joined
 218 2012-10-25 03:28:39 slush1 has quit (Ping timeout: 244 seconds)
 219 2012-10-25 03:29:04 sgornick has quit (Read error: Connection reset by peer)
 220 2012-10-25 03:31:51 Arnavion has quit (Quit: Arnavion)
 221 2012-10-25 03:41:41 echelon has left ()
 222 2012-10-25 03:50:44 Arnavion has joined
 223 2012-10-25 04:08:45 [7] has quit (Disconnected by services)
 224 2012-10-25 04:08:53 TheSeven has joined
 225 2012-10-25 04:12:38 B0g4r7__ has joined
 226 2012-10-25 04:14:41 B0g4r7_ has quit (Ping timeout: 276 seconds)
 227 2012-10-25 04:17:38 DaQatz has joined
 228 2012-10-25 04:19:00 Alphariser has joined
 229 2012-10-25 04:21:50 rdponticelli has quit (Ping timeout: 276 seconds)
 230 2012-10-25 04:22:31 Alphariser has quit ()
 231 2012-10-25 04:23:01 denisx has quit (Quit: denisx)
 232 2012-10-25 04:23:14 Alphariser has joined
 233 2012-10-25 04:27:43 rdponticelli has joined
 234 2012-10-25 04:30:08 Alphariser has quit ()
 235 2012-10-25 04:36:08 Arnavion has quit (Quit: Arnavion)
 236 2012-10-25 04:36:19 Arnavion has joined
 237 2012-10-25 04:37:14 Arnavion has quit (Client Quit)
 238 2012-10-25 04:37:26 Arnavion has joined
 239 2012-10-25 04:38:01 noagendamarket has quit (Ping timeout: 252 seconds)
 240 2012-10-25 04:39:03 Arnavion has quit (Client Quit)
 241 2012-10-25 04:39:13 Arnavion has joined
 242 2012-10-25 04:39:49 freakazoid has quit (Remote host closed the connection)
 243 2012-10-25 04:42:47 Icoin has quit (Quit: Icoin)
 244 2012-10-25 04:45:14 xisalty has quit (Ping timeout: 276 seconds)
 245 2012-10-25 04:52:19 eian has quit (Quit: Leaving.)
 246 2012-10-25 04:59:32 guruvan has quit (Ping timeout: 276 seconds)
 247 2012-10-25 04:59:33 guruvan_ is now known as guruvan
 248 2012-10-25 05:00:14 xisalty has joined
 249 2012-10-25 05:04:09 guruvan- has joined
 250 2012-10-25 05:07:17 optimator_ has joined
 251 2012-10-25 05:08:24 optimator has quit (Ping timeout: 268 seconds)
 252 2012-10-25 05:09:21 arij has quit (Ping timeout: 265 seconds)
 253 2012-10-25 05:13:30 tonikt has joined
 254 2012-10-25 05:17:47 ThomasV has joined
 255 2012-10-25 05:33:40 slush has quit (Read error: Operation timed out)
 256 2012-10-25 05:34:02 slush has joined
 257 2012-10-25 05:48:15 tonikt has quit (Quit: Leaving)
 258 2012-10-25 05:51:42 da2ce7_d has left ("Once you know what it is you want to be true, instinct is a very useful device for enabling you to know that it is")
 259 2012-10-25 05:52:21 brwyatt is now known as brwyatt|Away
 260 2012-10-25 05:59:27 RazielZ has joined
 261 2012-10-25 06:00:01 Arnavion has quit (Quit: Arnavion)
 262 2012-10-25 06:00:14 harkon has quit (Read error: Connection reset by peer)
 263 2012-10-25 06:00:23 ThomasV has quit (Ping timeout: 264 seconds)
 264 2012-10-25 06:00:37 harkon has joined
 265 2012-10-25 06:01:17 _sudog has joined
 266 2012-10-25 06:02:53 harkon has quit (Client Quit)
 267 2012-10-25 06:03:11 Arnavion has joined
 268 2012-10-25 06:03:53 sudog has quit (Ping timeout: 276 seconds)
 269 2012-10-25 06:09:20 tucenaber has quit (Ping timeout: 244 seconds)
 270 2012-10-25 06:23:01 tucenaber has joined
 271 2012-10-25 06:24:39 spreelanka has quit (Quit: spreelanka)
 272 2012-10-25 06:27:17 Hasimir has joined
 273 2012-10-25 06:32:56 ovidiusoft has joined
 274 2012-10-25 06:33:49 EasyAt is now known as EasyAt|
 275 2012-10-25 06:36:23 Dyaheon has quit (Ping timeout: 255 seconds)
 276 2012-10-25 06:37:02 Karmaon has quit (Read error: Connection reset by peer)
 277 2012-10-25 06:37:29 Karmaon has joined
 278 2012-10-25 06:37:30 Karmaon has quit (Changing host)
 279 2012-10-25 06:37:30 Karmaon has joined
 280 2012-10-25 06:41:11 Hasimir has quit (Quit: script testing)
 281 2012-10-25 06:41:28 tucenaber has quit (Ping timeout: 252 seconds)
 282 2012-10-25 06:44:34 Hasimir has joined
 283 2012-10-25 06:45:33 Hasimir has quit (Client Quit)
 284 2012-10-25 06:46:14 tucenaber has joined
 285 2012-10-25 06:52:09 Hasimir has joined
 286 2012-10-25 06:52:36 nlpplz has quit (Ping timeout: 240 seconds)
 287 2012-10-25 06:54:35 nlpplz has joined
 288 2012-10-25 06:59:27 CodesInChaos has joined
 289 2012-10-25 07:09:56 slush1 has joined
 290 2012-10-25 07:10:49 slush has quit (Ping timeout: 244 seconds)
 291 2012-10-25 07:10:50 conman has joined
 292 2012-10-25 07:11:32 twobitcoins_ has joined
 293 2012-10-25 07:11:48 RainbowDashh has joined
 294 2012-10-25 07:12:07 RainbowDashh has quit (Changing host)
 295 2012-10-25 07:12:07 RainbowDashh has joined
 296 2012-10-25 07:13:56 xorgate has quit (Ping timeout: 272 seconds)
 297 2012-10-25 07:13:57 slush has joined
 298 2012-10-25 07:14:17 twobitcoins has quit (Ping timeout: 240 seconds)
 299 2012-10-25 07:14:24 slush1 has quit (Ping timeout: 260 seconds)
 300 2012-10-25 07:16:14 RainbowDashh has quit (Ping timeout: 246 seconds)
 301 2012-10-25 07:17:17 CodesInChaos has quit (Ping timeout: 268 seconds)
 302 2012-10-25 07:19:21 RainbowDashh has joined
 303 2012-10-25 07:20:07 tucenaber has quit (Ping timeout: 244 seconds)
 304 2012-10-25 07:22:46 tucenaber has joined
 305 2012-10-25 07:29:39 RainbowDashh has quit (Read error: Connection timed out)
 306 2012-10-25 07:30:22 RainbowDashh has joined
 307 2012-10-25 07:32:01 maaku has quit (Quit: maaku)
 308 2012-10-25 07:35:51 pooler has quit (Quit: ChatZilla 0.9.89 [Firefox 10.0.5/20120614114310])
 309 2012-10-25 07:42:20 tucenaber has quit (Ping timeout: 244 seconds)
 310 2012-10-25 07:43:32 ThomasV_ has quit (Quit: Leaving)
 311 2012-10-25 07:43:54 ThomasV has joined
 312 2012-10-25 07:48:18 sirk390 has joined
 313 2012-10-25 07:48:38 JZavala has quit (Ping timeout: 245 seconds)
 314 2012-10-25 07:50:09 BitcoinBaltar has quit (Remote host closed the connection)
 315 2012-10-25 07:51:10 BitcoinBaltar has joined
 316 2012-10-25 07:55:05 RainbowDashh has quit (Ping timeout: 246 seconds)
 317 2012-10-25 07:58:28 sirk390 has quit (Quit: Leaving.)
 318 2012-10-25 07:59:50 jdnavarro has joined
 319 2012-10-25 08:18:01 denisx has joined
 320 2012-10-25 08:24:46 Dyaheon has joined
 321 2012-10-25 08:30:32 ibno has joined
 322 2012-10-25 08:30:45 t7 has joined
 323 2012-10-25 08:32:13 EPiSKiNG- has quit (Ping timeout: 246 seconds)
 324 2012-10-25 08:33:41 toffoo has quit ()
 325 2012-10-25 08:36:58 tucenaber has joined
 326 2012-10-25 08:43:02 CodesInChaos has joined
 327 2012-10-25 08:44:58 slush1 has joined
 328 2012-10-25 08:47:26 slush has quit (Ping timeout: 244 seconds)
 329 2012-10-25 09:09:06 gjs278 has quit (Remote host closed the connection)
 330 2012-10-25 09:11:29 gjs278 has joined
 331 2012-10-25 09:16:40 BlackPrapor has joined
 332 2012-10-25 09:36:16 slush has joined
 333 2012-10-25 09:58:58 Hasimir has quit (Ping timeout: 255 seconds)
 334 2012-10-25 10:13:15 galambo_ has joined
 335 2012-10-25 10:16:12 robocoin has joined
 336 2012-10-25 10:17:24 galambo has quit (Ping timeout: 276 seconds)
 337 2012-10-25 10:19:04 slush2 has joined
 338 2012-10-25 10:20:26 slush1 has quit (Ping timeout: 244 seconds)
 339 2012-10-25 10:22:18 <BlueMattBot> Project Bitcoin build #117: STILL FAILING in 2 hr 0 min: http://jenkins.bluematt.me/job/Bitcoin/117/
 340 2012-10-25 10:25:12 Hasimir has joined
 341 2012-10-25 10:25:36 Hasimir is now known as Guest81036
 342 2012-10-25 10:27:05 PK has joined
 343 2012-10-25 10:32:57 Hasimir_ has joined
 344 2012-10-25 10:33:21 Hasimir_ is now known as Guest85666
 345 2012-10-25 10:33:22 Guest81036 has quit (Ping timeout: 248 seconds)
 346 2012-10-25 10:33:53 Guest85666 is now known as Hasimir__
 347 2012-10-25 10:38:24 denisx has quit (Quit: denisx)
 348 2012-10-25 10:41:24 Hasimir__ has quit (Ping timeout: 265 seconds)
 349 2012-10-25 10:45:04 Hasimir__ has joined
 350 2012-10-25 10:45:28 Hasimir__ is now known as Guest50605
 351 2012-10-25 10:46:04 Guest50605 is now known as Hasimir
 352 2012-10-25 10:55:09 <thermoman> when shutting down 0.7.1 i'm getting this in the kernel log: [4825335.571865] bitcoind[5959] general protection ip:7f03a8195bd0 sp:7fff38c777f8 error:0 in libc-2.11.3.so[7f03a8116000+159000]
 353 2012-10-25 10:55:51 <thermoman> daemon was started with -detachdb and the datadir is from a previously 0.3.24 daemon
 354 2012-10-25 10:59:00 Hasimir has quit (Ping timeout: 276 seconds)
 355 2012-10-25 10:59:15 Hasimir has joined
 356 2012-10-25 10:59:38 Hasimir is now known as Guest2945
 357 2012-10-25 11:01:04 Guest2945 is now known as Hasimir
 358 2012-10-25 11:05:14 slush1 has joined
 359 2012-10-25 11:06:43 slush2 has quit (Ping timeout: 245 seconds)
 360 2012-10-25 11:12:19 <ibno> what are the revXXXXX.dat files in the block dir?
 361 2012-10-25 11:15:41 <sipa> ibno: undo data for blocks
 362 2012-10-25 11:18:42 <t7> new intel processors have 256 arithmetic instructions, is this good for mining?
 363 2012-10-25 11:18:58 <t7> 256 bit
 364 2012-10-25 11:19:30 <t7> and also they do video stuff so i assume stream procs built in ?
 365 2012-10-25 11:20:41 aq83 has quit (Ping timeout: 260 seconds)
 366 2012-10-25 11:21:50 <thermoman> i compiled bitcoin myself with db4.8 but i have libdb4.7 and libdb4.8 on the system. bitcoin picks up the libdb4.7 file and complains: Program version 4.8 doesn't match environment version 4.7
 367 2012-10-25 11:21:59 <_dr> yeah, you'll get double the speed t7
 368 2012-10-25 11:22:13 <thermoman> how do i force bitcoind to use the 4.8 lib it was compiled against instead of the 4.7 lib
 369 2012-10-25 11:22:24 <_dr> which is 2*~0=~0mhash/s :)
 370 2012-10-25 11:22:25 <t7> ah i thought it might have been a better speed up
 371 2012-10-25 11:22:31 <t7> i need to read how bignums work
 372 2012-10-25 11:22:40 <t7> or is sha just xor and stuff?
 373 2012-10-25 11:22:50 <_dr> t7: yeah, it's just sha
 374 2012-10-25 11:23:26 <_dr> SSE4.2 had 128-bit simd, AVX (sandy bridge) has 256-bit simd -> twice the speed
 375 2012-10-25 11:24:01 <Diablo-D3> s/4.2//
 376 2012-10-25 11:24:05 <t7> what do people use this for in real life?
 377 2012-10-25 11:24:09 <Diablo-D3> and btw, it doesnt mean twice the speed
 378 2012-10-25 11:24:12 <Diablo-D3> it means half the ops
 379 2012-10-25 11:24:29 <_dr> not really
 380 2012-10-25 11:24:31 <Diablo-D3> the way current gen AVX shit is setup, the two FPUs are glued together
 381 2012-10-25 11:24:46 <_dr> Diablo-D3: it uses data-parallelism, so it gets twice the throughput over time
 382 2012-10-25 11:24:57 <Diablo-D3> _dr: "yes"
 383 2012-10-25 11:25:03 <_dr> Diablo-D3: wrong again
 384 2012-10-25 11:25:03 <Diablo-D3> but if you use both cores, no.
 385 2012-10-25 11:25:16 <_dr> you can do 1 avx add and 1 avx mult in one clock cycle
 386 2012-10-25 11:25:19 <Diablo-D3> it splits the op over multiple ALUs across multiple cores
 387 2012-10-25 11:25:21 <_dr> it's not 'glued together'
 388 2012-10-25 11:25:31 <_dr> Diablo-D3: over multiple cores? bullshit
 389 2012-10-25 11:25:37 <Diablo-D3> yup, paired cores.
 390 2012-10-25 11:25:46 <_dr> Diablo-D3: you're confusing things
 391 2012-10-25 11:25:47 <Diablo-D3> intel has been doing paired cores long before avx
 392 2012-10-25 11:25:51 <Diablo-D3> _dr: nope
 393 2012-10-25 11:25:56 <Diablo-D3> you will _not_ get 2x throughput
 394 2012-10-25 11:26:01 <Diablo-D3> not if you're banging both cores at once
 395 2012-10-25 11:26:02 <_dr> yes you do
 396 2012-10-25 11:26:07 <_dr> Diablo-D3: wrong :D
 397 2012-10-25 11:26:21 <Diablo-D3> all this does, _for now_, is give you a much higher chance of reaching maximum throughput
 398 2012-10-25 11:26:24 <_dr> each core has 1 add fpu with 256bit width and 1 mult fpu with 256bit
 399 2012-10-25 11:26:41 optimator_ is now known as optimator
 400 2012-10-25 11:27:23 <_dr> there is no link between the register file or alus between distinct cores
 401 2012-10-25 11:27:33 <_dr> the only way cores are connected is QPI (intel) or HT (amd)
 402 2012-10-25 11:28:19 <Diablo-D3> _dr: nope
 403 2012-10-25 11:28:24 <Diablo-D3> thats not even close to being true
 404 2012-10-25 11:28:30 <_dr> lol
 405 2012-10-25 11:29:05 <Diablo-D3> not all intel sandy/ivy bridge chips use QPI internally
 406 2012-10-25 11:29:56 <Diablo-D3> and with bulldozer-type archs, well, you have to define what a core is
 407 2012-10-25 11:29:57 <_dr> yeah they do, it's how they move data around in their shared l3$
 408 2012-10-25 11:30:12 <Diablo-D3> _dr: no
 409 2012-10-25 11:30:21 <Diablo-D3> Intel did not make the memory controller QPI'ed
 410 2012-10-25 11:30:25 <Diablo-D3> and I have no fucking clue why
 411 2012-10-25 11:30:27 <Diablo-D3> its stupid not to
 412 2012-10-25 11:30:39 <Diablo-D3> thats what made HTX so goddamned awesome
 413 2012-10-25 11:30:48 <Diablo-D3> cores and memory controller(s) were native HTX actors
 414 2012-10-25 11:31:16 <Diablo-D3> intel still uses a non-qpi internal protocol on the chip
 415 2012-10-25 11:31:20 <Diablo-D3> er, in the chip
 416 2012-10-25 11:31:36 <Diablo-D3> hell, not all chips are using QPI between the cpu and northbridge
 417 2012-10-25 11:31:36 <thermoman> i compiled bitcoin myself with db4.8 but i have libdb4.7 and libdb4.8 on the system. bitcoin picks up the libdb4.7 file and complains: Program version 4.8 doesn't match environment version 4.7
 418 2012-10-25 11:31:37 <Diablo-D3> its nuts
 419 2012-10-25 11:31:41 <thermoman> how do i force bitcoind to use the 4.8 lib it was compiled against instead of the 4.7 lib
 420 2012-10-25 11:31:45 <thermoman> ^ help
 421 2012-10-25 11:31:45 <_dr> hang on
 422 2012-10-25 11:31:51 <Diablo-D3> thermoman: change your libdb.so symlinks
 423 2012-10-25 11:31:54 <_dr> i'll look for a picture for you
 424 2012-10-25 11:32:02 <Diablo-D3> _dr: Im well aware of cpu internals
 425 2012-10-25 11:32:18 <Diablo-D3> _dr: and btw, intel has not been entirely truthful about what uses qpi
 426 2012-10-25 11:32:21 <thermoman> Diablo-D3:  /usr/lib/libdb.so -> libdb-4.8.so
 427 2012-10-25 11:32:31 <Diablo-D3> thermoman: hrm, lemme check locally
 428 2012-10-25 11:32:48 <Diablo-D3> what about libdb-4.so
 429 2012-10-25 11:33:04 <thermoman> /usr/lib/libdb-4.so -> libdb-4.8.so
 430 2012-10-25 11:33:09 <Diablo-D3> wtf
 431 2012-10-25 11:33:25 <thermoman> there is no symlink linking to libdb-4.7.so
 432 2012-10-25 11:33:36 <thermoman> and still there is this warning message in db.log
 433 2012-10-25 11:34:06 <Diablo-D3> ls -al /usr/lib/libdb-* | grep 7 lists nothing?
 434 2012-10-25 11:34:20 <Diablo-D3> er, nothing for the symlinks I mean
 435 2012-10-25 11:34:54 <thermoman> ls -l /usr/lib | grep db | grep 7
 436 2012-10-25 11:34:54 <thermoman> -rw-r--r--  1 root root  1501800 Dec 29  2009 libdb-4.7.so
 437 2012-10-25 11:34:55 <thermoman> -rw-r--r--  1 root root      927 Aug 30  2010 libdb-4.8.l
 438 2012-10-25 11:35:06 <thermoman> a
 439 2012-10-25 11:35:39 <Diablo-D3> man, what the hell
 440 2012-10-25 11:35:48 <Diablo-D3> and theres nothing of interest in /usr/local/lib?
 441 2012-10-25 11:36:05 <_dr> Diablo-D3: so you are well aware but disagree that EACH ivy bridge core can perform one avx add plus one avx mult per clock?
 442 2012-10-25 11:36:09 <thermoman> Diablo-D3: stop stop
 443 2012-10-25 11:36:32 <Diablo-D3> thermoman: hrm?
 444 2012-10-25 11:36:38 <_dr> and claim that using avx won't give you double the operations than sse?
 445 2012-10-25 11:37:06 <Diablo-D3> _dr: yes, axv right now will not give you double the oprations
 446 2012-10-25 11:37:13 <thermoman> i guess db.log gets only truncated when the first error is logged ... so the db.log file was old and contained the old error - bitcoin stop, delete db.log, bitcoin start = empty db.log
 447 2012-10-25 11:37:18 <Diablo-D3> _dr: it will use the hardware much more optimally, however
 448 2012-10-25 11:37:34 <Diablo-D3> _dr: if you have avx available, use it, it will increase performance, just not 2x
 449 2012-10-25 11:37:43 <_dr> ok now look, one SSE register can hold two doubles
 450 2012-10-25 11:37:52 <_dr> i can multiply two doubles per clock using SSE
 451 2012-10-25 11:38:02 <_dr> i can, however, multiply FOUR dobules using AVX
 452 2012-10-25 11:38:03 <thermoman> Diablo-D3: ^ works now - no errir
 453 2012-10-25 11:38:06 <_dr> that's twice the amount
 454 2012-10-25 11:38:12 <_dr> what's there to disagree?
 455 2012-10-25 11:38:17 <sipa> thermoman: that warning means yo are linked against 4.8, but your datadir is still at 4.7
 456 2012-10-25 11:38:28 <Diablo-D3> sipa: ...
 457 2012-10-25 11:38:32 <Diablo-D3> sipa: are you kidding me?
 458 2012-10-25 11:38:37 <Diablo-D3> sipa: that is the most useless error ever
 459 2012-10-25 11:38:49 <sipa> it's exactly what it says
 460 2012-10-25 11:38:58 <Diablo-D3> it should be more verbose.
 461 2012-10-25 11:39:34 <sipa> and faster, and more reliable, and less ancient, ...
 462 2012-10-25 11:39:39 <Diablo-D3> _dr: because lets say you have two cores, both doing sse.... you do four doubles on two ops at the same time... or four doubles on one op at the same time with avx
 463 2012-10-25 11:40:15 <Diablo-D3> _dr: if you are getting 2x throughput on Intel, theres something very wrong elsewhere in the cpu
 464 2012-10-25 11:40:20 drizztbsd has joined
 465 2012-10-25 11:40:23 <_dr> Diablo-D3: that's the problem
 466 2012-10-25 11:40:35 <_dr> you can do EIGHT doubles with two ops at the same time using avx using two cores
 467 2012-10-25 11:40:36 <wumpus> it should come with a pony
 468 2012-10-25 11:40:48 <Diablo-D3> _dr: except you cant.
 469 2012-10-25 11:40:58 <_dr> because EACH core has avx registers! they're not fused together from different cores
 470 2012-10-25 11:41:10 <Diablo-D3> no, the registeres arent fused together
 471 2012-10-25 11:41:12 <Diablo-D3> the ALUs are
 472 2012-10-25 11:41:16 <Diablo-D3> and its extra retarded
 473 2012-10-25 11:41:22 <_dr> no
 474 2012-10-25 11:41:29 <_dr> only amd's bulldozer is doing that
 475 2012-10-25 11:41:39 <Diablo-D3> no, bulldozer does it for entire cores
 476 2012-10-25 11:41:48 iddo has quit (Ping timeout: 240 seconds)
 477 2012-10-25 11:42:25 <_dr> take my word for it, each sandy bridge core has 1 avx add fpu alu and 1 avx mult fpu alu
 478 2012-10-25 11:42:29 iddo has joined
 479 2012-10-25 11:42:37 <_dr> i can back it up with intel docs
 480 2012-10-25 11:43:14 <_dr> so n cores have n avx add fpus and n avx mult fpus
 481 2012-10-25 11:43:45 <_dr> bulldozer is different, but bulldozer is crap - i hope we can agree on that :)
 482 2012-10-25 11:43:52 <Diablo-D3> no, bulldozer is actually quite nice
 483 2012-10-25 11:43:59 <Diablo-D3> but it suffers from the AMD first gen always sucks bug
 484 2012-10-25 11:43:59 emryss has quit (Ping timeout: 252 seconds)
 485 2012-10-25 11:44:08 <Diablo-D3> AMD isnt doing anything new here, though
 486 2012-10-25 11:44:34 <Diablo-D3> IBM has been using that technique for like 15 years on POWER hardware
 487 2012-10-25 11:44:36 <_dr> amd is dead
 488 2012-10-25 11:44:44 <_dr> weren't it for its gpu section :)
 489 2012-10-25 11:44:52 <Diablo-D3> I dont think AMD is dead
 490 2012-10-25 11:45:01 <Diablo-D3> I think AMD is trying to exit the consumer market
 491 2012-10-25 11:45:07 <Diablo-D3> with CPUs I mean
 492 2012-10-25 11:45:13 <_dr> heh, nice way of putting it
 493 2012-10-25 11:45:14 <Diablo-D3> its just too small to give a shit about
 494 2012-10-25 11:45:34 <Diablo-D3> no, I mean, they want to focus entirely on enterprise hardware
 495 2012-10-25 11:45:41 Hasimir_ has joined
 496 2012-10-25 11:45:45 <_dr> enterprise hardware?
 497 2012-10-25 11:45:52 <Diablo-D3> yes
 498 2012-10-25 11:46:04 Hasimir_ is now known as Guest23890
 499 2012-10-25 11:46:15 Hasimir has quit (Disconnected by services)
 500 2012-10-25 11:46:30 Guest23890 is now known as Hasimir
 501 2012-10-25 11:46:32 <_dr> if that is supposed to mean 'fast server hardware' i can tell you that the HPC community univocally disagrees
 502 2012-10-25 11:46:49 <Diablo-D3> yes, Ive met some of the people in the HPC community
 503 2012-10-25 11:46:51 <Diablo-D3> silly people
 504 2012-10-25 11:46:58 <Diablo-D3> I wonder if their bosses know how much money they waste
 505 2012-10-25 11:47:11 <_dr> ok i'm outta here :)
 506 2012-10-25 11:59:01 Hasimir__ has joined
 507 2012-10-25 11:59:24 Hasimir__ is now known as Guest90216
 508 2012-10-25 12:00:13 Hasimir has quit (Read error: Connection reset by peer)
 509 2012-10-25 12:05:37 Guest90216 is now known as Hasimir
 510 2012-10-25 12:10:27 leotreasure has joined
 511 2012-10-25 12:10:42 CodesInChaos has quit (Ping timeout: 245 seconds)
 512 2012-10-25 12:13:42 leotreasure_ has joined
 513 2012-10-25 12:15:10 leotreasure has quit (Ping timeout: 265 seconds)
 514 2012-10-25 12:16:42 leotreasure__ has joined
 515 2012-10-25 12:17:51 leotreasure___ has joined
 516 2012-10-25 12:18:15 leotreasure_ has quit (Ping timeout: 256 seconds)
 517 2012-10-25 12:19:36 <thermoman> is ERROR: FetchInputs() mempool Tx prev not found as bad as it sounds?
 518 2012-10-25 12:19:48 <thermoman> stored orphan tx
 519 2012-10-25 12:20:23 pnicholson has quit (Quit: pnicholson)
 520 2012-10-25 12:21:01 leotreasure__ has quit (Ping timeout: 260 seconds)
 521 2012-10-25 12:21:38 leotreasure___ has quit (Read error: Connection reset by peer)
 522 2012-10-25 12:22:12 leotreasure has joined
 523 2012-10-25 12:24:00 <sipa> thermoman: it shouldn't say 'error' - it's just a transaction whose parent is missing
 524 2012-10-25 12:24:40 <thermoman> sipa: ok. because the client was started 10 minutes ago and is still at "blocks" : 204880
 525 2012-10-25 12:26:33 leotreasure has quit (Ping timeout: 260 seconds)
 526 2012-10-25 12:27:04 dvide has joined
 527 2012-10-25 12:28:14 <rdponticelli> thermoman: To force linking agains a specific library, you can usually use the LD_PRELOAD environment variable
 528 2012-10-25 12:28:33 <rdponticelli> Anyway, looks like you don't need it anymore
 529 2012-10-25 12:29:48 vampireb_ has joined
 530 2012-10-25 12:29:52 <thermoman> rdponticelli: yes i know that, thanks. the log contained old info which got me confused
 531 2012-10-25 12:29:56 <thermoman> sorry for that
 532 2012-10-25 12:30:08 <thermoman> ok, blocks loaded fine now
 533 2012-10-25 12:30:22 <thermoman> upgrade from 0.3.24 to 0.7.1 finished
 534 2012-10-25 12:30:32 <rdponticelli> Nice
 535 2012-10-25 12:30:36 <thermoman> but needed to adjust DB_CONFIG
 536 2012-10-25 12:30:44 <sipa> how so?
 537 2012-10-25 12:31:05 <thermoman> had to add: set_lk_max_locks 2000
 538 2012-10-25 12:31:05 <thermoman> set_lk_max_lockers 2000
 539 2012-10-25 12:31:05 <thermoman> set_lk_max_objects 2000
 540 2012-10-25 12:31:05 <thermoman> mutex_set_max 32000
 541 2012-10-25 12:31:31 <thermoman> because:
 542 2012-10-25 12:31:32 <thermoman> unable to allocate memory for mutex; resize mutex region
 543 2012-10-25 12:31:39 agricocb has quit (Remote host closed the connection)
 544 2012-10-25 12:31:41 <thermoman> Lock table is out of available object entries
 545 2012-10-25 12:32:16 <thermoman> .
 546 2012-10-25 12:32:19 <sipa> hmm, must have been trying to do a huge reorg
 547 2012-10-25 12:32:29 <thermoman> wallet.dat was 280MB
 548 2012-10-25 12:33:13 <thermoman> BTW: "Warning: Displayed transactions may not be correct! You may need to upgrade, or other nodes may need to upgrade. <-- this only means that some node my client is connected to is running an old version - right?
 549 2012-10-25 12:34:36 Hasimir has quit (Read error: Connection reset by peer)
 550 2012-10-25 12:34:37 Hasimir_ has joined
 551 2012-10-25 12:34:56 Hasimir_ is now known as Hasimir
 552 2012-10-25 12:35:02 <rdponticelli> thermoman: I guess your client got stuck...
 553 2012-10-25 12:35:47 tsche has quit ()
 554 2012-10-25 12:35:53 <rdponticelli> Maybe you'll be better starting all over again from a clean environment....
 555 2012-10-25 12:36:53 nsh has joined
 556 2012-10-25 12:38:39 <BlueMattBot> Project Bitcoin build #118: STILL FAILING in 2 hr 2 min: http://jenkins.bluematt.me/job/Bitcoin/118/
 557 2012-10-25 12:40:08 datagutt has joined
 558 2012-10-25 12:40:20 <gmaxwell> thermoman: no, it means you're rejecting a chain someone is giving you.
 559 2012-10-25 12:40:22 slush2 has joined
 560 2012-10-25 12:40:58 slush1 has quit (Ping timeout: 244 seconds)
 561 2012-10-25 12:41:31 <thermoman> gmaxwell: ok, that's good then
 562 2012-10-25 12:41:32 <gmaxwell> thermoman: look in your debug.log for InvalidChainFound
 563 2012-10-25 12:41:42 <thermoman> next question:
 564 2012-10-25 12:41:44 <thermoman> bitcoind listtransactions 1433 9223372036854775807
 565 2012-10-25 12:41:49 <thermoman> error: {"code":-8,"message":"Negative count"}
 566 2012-10-25 12:42:01 Eslbaer has quit (Read error: Connection reset by peer)
 567 2012-10-25 12:42:14 Hasimir_ has joined
 568 2012-10-25 12:42:16 <gmaxwell> thermoman: well, no, not usually good. It usually means your database is corrupted.
 569 2012-10-25 12:42:38 Hasimir_ is now known as Guest22285
 570 2012-10-25 12:43:04 <sipa> thermoman: count is probably a 32-bit integer, and you just found an integer overflow bug
 571 2012-10-25 12:43:09 Hasimir has quit (Disconnected by services)
 572 2012-10-25 12:43:09 Guest22285 is now known as Hasimir
 573 2012-10-25 12:43:10 <thermoman> php -r 'echo PHP_INT_MAX;'
 574 2012-10-25 12:43:11 <thermoman> 9223372036854775807
 575 2012-10-25 12:43:16 <thermoman> thats the number we use
 576 2012-10-25 12:44:11 <gmaxwell> well, it's using a unsigned int, so the maximum would be 2^31-1 though we should probably improve that.
 577 2012-10-25 12:44:13 <thermoman> 10/25/12 12:15:33 InvalidChainFound:  current best=000000000000001b248d  height=204885  work=556361022263890342334  date=10/25/12 10:30:54
 578 2012-10-25 12:44:16 <thermoman> 10/25/12 12:15:33 InvalidChainFound: Warning: Displayed transactions may not be correct! You may need to upgrade, or other nodes may need to upgrade
 579 2012-10-25 12:44:29 <thermoman> 0.7.1
 580 2012-10-25 12:44:44 <thermoman> ok, i'll give this to the PHP developer
 581 2012-10-25 12:44:49 <gmaxwell> But why would you call it with a big number for minimum confirmations?
 582 2012-10-25 12:44:56 <gmaxwell> that will just make it display nothing.
 583 2012-10-25 12:45:20 <sipa> thermoman: can you show the 3 debug.log above the previous paste?
 584 2012-10-25 12:45:49 Eslbaer has joined
 585 2012-10-25 12:46:05 <gmaxwell> My nodes have happily accepted 000000000000001b248da03b2b9b20356c0beb0328126640787844cbcca3ea67.
 586 2012-10-25 12:47:40 tsche has joined
 587 2012-10-25 12:49:14 <thermoman> sipa: lemme check
 588 2012-10-25 12:50:19 vampireb_ has quit (Quit: Lost terminal)
 589 2012-10-25 12:50:20 <thermoman> sipa: http://pastebin.com/qhiQVF9T
 590 2012-10-25 12:51:10 <sipa> UpdateTxIndex failed
 591 2012-10-25 12:51:16 <thermoman> means?
 592 2012-10-25 12:51:21 <sipa> that sounds serious, but it's not necessarily corruption
 593 2012-10-25 12:51:24 <sipa> check db.log
 594 2012-10-25 12:52:27 <thermoman> Lock table is out of available lock entries
 595 2012-10-25 12:52:29 <thermoman> fuck
 596 2012-10-25 12:52:42 variousnefarious has quit (Ping timeout: 260 seconds)
 597 2012-10-25 12:52:54 <thermoman> do i have to raise the DB_CONFIG settings even more?
 598 2012-10-25 12:53:09 <sipa> there used to be a bug that caused locks to remain permanent
 599 2012-10-25 12:53:20 <thermoman> restart bitcoin daemon?
 600 2012-10-25 12:53:29 <sipa> permanent == across restarts
 601 2012-10-25 12:53:34 <thermoman> ouch
 602 2012-10-25 12:53:46 <sipa> if you come from 0.3.x, it sounds likely
 603 2012-10-25 12:54:01 <thermoman> this specifiy bitcoin daemon has an empty wallet - it's acting as proxy for other bitcoin clients
 604 2012-10-25 12:54:14 <sipa> yeah, the problem is with blkindex.dat
 605 2012-10-25 12:54:14 <thermoman> so i could remove blockindex and wallet.dat
 606 2012-10-25 12:54:32 kama has joined
 607 2012-10-25 12:54:36 <thermoman> what should i do?
 608 2012-10-25 12:54:37 <sipa> try running with -detachdb, and then deleting (and backing up) the database/ subdir
 609 2012-10-25 12:54:40 kama has left ()
 610 2012-10-25 12:54:40 <sipa> then start again
 611 2012-10-25 12:54:54 variousnefarious has joined
 612 2012-10-25 12:54:59 <thermoman> i run all my clients with -detachdb
 613 2012-10-25 12:55:17 <thermoman> stop, delete database .. ok will do
 614 2012-10-25 12:55:31 servvs has joined
 615 2012-10-25 12:55:53 <thermoman> sipa: do i need to remove blkindex.dat?
 616 2012-10-25 12:56:00 <sipa> no
 617 2012-10-25 12:56:15 <sipa> but if that doesn't work: move blk000*.dat out of the way, wipe blkindex.dat, and run with -loadblock=<path/to/blk0001.dat> -loadblock=<path/to/blk0002.dat>
 618 2012-10-25 12:56:48 <gmaxwell> ^ this will reload the databases, and will take a little while.
 619 2012-10-25 12:57:09 <drizztbsd> little while == many hours :P
 620 2012-10-25 12:58:12 <thermoman> Lock table is out of available lock entries still there
 621 2012-10-25 12:58:19 <thermoman> so now i try your workaround
 622 2012-10-25 13:00:14 one_zero has quit ()
 623 2012-10-25 13:01:24 <sipa> drizztbsd: on 0.8 hopefully only half an hour or so
 624 2012-10-25 13:01:54 <drizztbsd> already in git? :P
 625 2012-10-25 13:02:00 servvs has quit (Ping timeout: 268 seconds)
 626 2012-10-25 13:02:16 <sipa> yes
 627 2012-10-25 13:03:53 <thermoman> sipa: if i do not specify -loadblock the client will load the blocks from net, right?
 628 2012-10-25 13:03:57 <sipa> yes
 629 2012-10-25 13:04:23 <thermoman> damn
 630 2012-10-25 13:04:24 <thermoman> Lock table is out of available lock entries
 631 2012-10-25 13:04:25 <thermoman> again
 632 2012-10-25 13:04:30 <thermoman> what now?
 633 2012-10-25 13:05:55 <thermoman> sipa: could i copy the blk* files from another client (running with -detachdb and daemon stopped)?
 634 2012-10-25 13:06:11 <sipa> remove your DB_CONFIG
 635 2012-10-25 13:08:59 gfinn has quit (Remote host closed the connection)
 636 2012-10-25 13:09:08 MobiusL has quit (Remote host closed the connection)
 637 2012-10-25 13:09:09 <thermoman> removed DB_CONFIG and run now again with the -loadblock options
 638 2012-10-25 13:09:14 random_cat has quit (Remote host closed the connection)
 639 2012-10-25 13:10:29 MobiusL has joined
 640 2012-10-25 13:10:40 random_cat has joined
 641 2012-10-25 13:10:43 <gmaxwell> DB_CONFIG ?
 642 2012-10-25 13:12:22 skeledrew has quit (Ping timeout: 246 seconds)
 643 2012-10-25 13:12:49 spreelanka has joined
 644 2012-10-25 13:13:22 agricocb has joined
 645 2012-10-25 13:14:45 <thermoman> gmaxwell: i had to tweak DB_CONFIG after upgrading from 0.3.24 because of mutex and locking errors
 646 2012-10-25 13:14:58 <thermoman> copying blk* files from another client now
 647 2012-10-25 13:16:23 <drizztbsd> sipa: which is the commit which makes it faster?
 648 2012-10-25 13:19:13 <gmaxwell> drizztbsd: the ultraprune and leveldb merge, which is some dozen commits.
 649 2012-10-25 13:22:12 skeledrew has joined
 650 2012-10-25 13:22:40 Hasimir_ has joined
 651 2012-10-25 13:22:49 Hasimir has quit (Read error: Connection reset by peer)
 652 2012-10-25 13:22:59 Hasimir_ is now known as Hasimir
 653 2012-10-25 13:25:17 <sipa> thermoman: you're probably better off using -loadblock than just copying them
 654 2012-10-25 13:27:47 <sipa> as that re-verify, and doesn't depend on compatibility between BDB files
 655 2012-10-25 13:31:26 conman has quit (Ping timeout: 260 seconds)
 656 2012-10-25 13:31:52 gfinn has joined
 657 2012-10-25 13:43:27 <thermoman> sipa: :(
 658 2012-10-25 13:43:28 <thermoman> terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::system::system_error> >' what():  mutex: Invalid argument
 659 2012-10-25 13:43:35 <thermoman> when stopping a client
 660 2012-10-25 13:45:14 TD has joined
 661 2012-10-25 13:51:15 Bwild has quit (Ping timeout: 255 seconds)
 662 2012-10-25 13:53:32 copumpkin has quit (Quit: Computer has gone to sleep.)
 663 2012-10-25 14:00:22 pnicholson has joined
 664 2012-10-25 14:00:51 jouke has joined
 665 2012-10-25 14:01:04 <jouke> Is it possible with the new version of bitcoind to run multiple clients on one blockchain?
 666 2012-10-25 14:01:21 <thermoman> Oct 25 15:49:02 bc-d1 kernel: [4836694.123434] bitcoind[15377] general protection ip:486538 sp:7fff74977c60 error:0 in bitcoind[400000+330000]
 667 2012-10-25 14:01:24 <thermoman> dammit
 668 2012-10-25 14:02:24 <thermoman> last log in debug:
 669 2012-10-25 14:02:25 <thermoman> 10/25/12 13:49:01 DBFlush(true) ended               0ms
 670 2012-10-25 14:02:36 <thermoman> just "Bitcoin exited" is missing
 671 2012-10-25 14:02:53 <thermoman> WTF is the daemon doing between DBFlush(true) and exit?
 672 2012-10-25 14:05:15 mndrix has left ()
 673 2012-10-25 14:06:38 helo has left ()
 674 2012-10-25 14:08:12 gavinandresen has joined
 675 2012-10-25 14:12:21 arij has joined
 676 2012-10-25 14:12:45 arij is now known as Guest19312
 677 2012-10-25 14:13:02 copumpkin has joined
 678 2012-10-25 14:19:02 slush1 has joined
 679 2012-10-25 14:20:33 slush2 has quit (Ping timeout: 252 seconds)
 680 2012-10-25 14:23:02 Hasimir_ has joined
 681 2012-10-25 14:23:15 eian has joined
 682 2012-10-25 14:23:26 Hasimir_ is now known as Guest85183
 683 2012-10-25 14:23:27 Hasimir has quit (Read error: Connection reset by peer)
 684 2012-10-25 14:27:14 TD has quit (Quit: TD)
 685 2012-10-25 14:28:08 Guest85183 is now known as Hasimir
 686 2012-10-25 14:28:38 helo has joined
 687 2012-10-25 14:28:59 * helo wonders if he got kicked for some reason
 688 2012-10-25 14:29:44 emryss has joined
 689 2012-10-25 14:31:45 <amiller> found another neat new word yesterday, "stigmergy" http://www.evolutionofcomputing.org/index.html
 690 2012-10-25 14:31:49 <amiller> "Longer term or more persistent collaboration requires longer-lived messages that can be deposited in some structure where they can be later encountered by others. This sort of messaging has become known if the field of biology as stigmergy."
 691 2012-10-25 14:32:01 TD has joined
 692 2012-10-25 14:32:12 copumpkin has quit (Ping timeout: 264 seconds)
 693 2012-10-25 14:32:33 <helo> bitcointalk posting?
 694 2012-10-25 14:32:35 <gavinandresen> cool, I've been thinking about stigmergy a lot lately
 695 2012-10-25 14:32:35 <amiller> this builds a little to my theory that bitcoin is a large new organism, and the hash chain is roughly its DNA
 696 2012-10-25 14:32:54 <amiller> along with this theory is another word "apoptosis"
 697 2012-10-25 14:33:15 <amiller> "Despite all precautions, cells and computers do go awry or outlive their usefulness, Every healthy cell in a multicellular organism is programmed to commit suicide if necessary for the best interest of the organism as a whole."
 698 2012-10-25 14:34:15 <amiller> i would want to apply this to unspent utxos, or coins spent to invalid keys - i predict we'll eventually agree they need to be cleaned out somehow.
 699 2012-10-25 14:34:52 <gavinandresen> I've been thinking about apoptosis, too...   specific problem I'm trying to solve is "I sign my half of a multisig, now I want to put it somewhere the other involved party will notice it and, hopefully, sign it."
 700 2012-10-25 14:35:13 <gavinandresen> Ideally without a centralized server that we both know about
 701 2012-10-25 14:36:48 <amiller> i have a good solution to that if we ever get utxo set commitments working
 702 2012-10-25 14:37:14 <amiller> a utxo set commitment is a search structure that lets you query for a txoutput by txid/number
 703 2012-10-25 14:37:36 copumpkin has joined
 704 2012-10-25 14:37:46 <amiller> transactions create new entries in this structure, and the challenge is to keep it all balanced/efficient
 705 2012-10-25 14:37:56 <kjj_> gavinadresen: what is the use case for anonymous multisig?
 706 2012-10-25 14:38:18 <amiller> if transactions also create an entry indexed by address, then you can also query by address, for example to get a list of all the spendable utxos associated with an address
 707 2012-10-25 14:38:20 <amiller> a 'balance query'
 708 2012-10-25 14:38:47 <amiller> and more generally, you can insert an entry with a key that you know someone else is going to periodically check
 709 2012-10-25 14:38:54 <gavinandresen> kjj_: I don't really care about anonymous, I just want a solution that doesn't require the two people involved to either a) be online at the same time    or    b) set up a server that is online all the time
 710 2012-10-25 14:39:16 <gavinandresen> or, come to think of it    c) copy and paste some hex strings from email messages
 711 2012-10-25 14:39:30 ThomasV has quit (Quit: Leaving)
 712 2012-10-25 14:39:47 <amiller> it would be a little bit like publish/subscribe via blockchain
 713 2012-10-25 14:40:23 <kjj_> for c), you can process email automatically
 714 2012-10-25 14:40:32 <gavinandresen> kjj_: how ?
 715 2012-10-25 14:40:47 pumpkin has joined
 716 2012-10-25 14:41:10 <kjj_> well, with sendmail, you can define an arbitrary program (aka a script) as a mailer and deliver to it
 717 2012-10-25 14:41:16 <gavinandresen> amiller: are there good DoS-resistant general pub/sub systems ?
 718 2012-10-25 14:41:41 <gavinandresen> kjj_: I'm looking for a non-geek solution.  Mucking with sendmail is even worse than setting up some web server doohicky to handle the problem.
 719 2012-10-25 14:41:46 <kjj_> heh
 720 2012-10-25 14:42:07 copumpkin has quit (Ping timeout: 255 seconds)
 721 2012-10-25 14:42:08 pumpkin is now known as copumpkin
 722 2012-10-25 14:42:23 <kjj_> well, unless you want to re-create usenet, I think people are going to need to run a server
 723 2012-10-25 14:42:28 <amiller> er, well my point is that a blockchain with utxo commitments would be a novel pub/sub system
 724 2012-10-25 14:43:20 <kjj_> or we could add a message type to the bitcoin protocol and let the p2p system do the work for us
 725 2012-10-25 14:44:18 <gavinandresen> kjj_: how?  If the recipient is not online, where is the stigmergy stored ?
 726 2012-10-25 14:44:29 <gavinandresen> (is stigmergy a noun?)
 727 2012-10-25 14:44:57 <kjj_> gavinandresen: you are talking about partly signed transactions, right?
 728 2012-10-25 14:45:04 <gavinandresen> kjj_: yes
 729 2012-10-25 14:45:11 <amiller> stigmergency room?
 730 2012-10-25 14:45:33 <gavinandresen> one sec, I have to go trademark 'stigmergency room' ....
 731 2012-10-25 14:45:36 Detritus has quit (Ping timeout: 240 seconds)
 732 2012-10-25 14:45:40 <amiller> (this could describe the bitcoin irc bootstrap rooms :p)
 733 2012-10-25 14:45:57 twobitcoins has joined
 734 2012-10-25 14:46:05 <kjj_> why can't the bitcoin network store and forward them like it does for fully signed transactions?
 735 2012-10-25 14:46:16 <gmaxwell> amiller: 'a blockchain with utxo commitments would be a novel pub/sub system
 736 2012-10-25 14:46:28 <gavinandresen> kjj_: because then I could spam with gigabytes of half-signed transactions.
 737 2012-10-25 14:46:32 <gmaxwell> '  mismatched goals, pub/sub doesn't need global visiblity..
 738 2012-10-25 14:46:51 <gavinandresen> kjj_: ... so either they need to cost something (but who gets paid?)  or there needs to be some kind of clever aptosis that will keep their numbers bounded
 739 2012-10-25 14:47:17 <gmaxwell> (at least not for this it doesn't)
 740 2012-10-25 14:47:24 <amiller> gmaxwell, it does in the particular case that you know nothing else about the person you're communicating with
 741 2012-10-25 14:47:32 <gavinandresen> gmaxwell:  doesn't NEED, yes...   but if Joe and Jane random users want to coordinate non-real-time, they need some easy way to do it
 742 2012-10-25 14:47:47 <gmaxwell> amiller: then how could you identify which messages are for you if you know _nothing_ ?
 743 2012-10-25 14:47:55 <kjj_> gavinandresen: those are general problems, you'll face them with ANY solution to this problem that doesn't involve a server on a well known location
 744 2012-10-25 14:48:29 <amiller> gmaxwell, suppose you knew their bitcoin address but nothing else, and that the utxo commitment includes search-by-address balance query keys
 745 2012-10-25 14:48:42 twobitcoins_ has quit (Ping timeout: 268 seconds)
 746 2012-10-25 14:49:03 <gmaxwell> amiller: if you have an address for someone you want to communicate with you can use that to select peers which are specialized for that data.
 747 2012-10-25 14:49:30 <gmaxwell> Adding a requirement for single entities to have the data is not helpful for this purpose.
 748 2012-10-25 14:50:09 paraipan has joined
 749 2012-10-25 14:50:20 <gavinandresen> Here's the scenario:   Lindsay and I cooperate to create a multisig address that will hold the bulk of Bitcoin Foundation funds.  Donations/memberships are sent there.
 750 2012-10-25 14:50:38 Detritus has joined
 751 2012-10-25 14:51:01 <gmaxwell> gavinandresen: in any case, this class of problems is what all these varrious distributed hash table systems seek to address. Though for the most part they're not (very) attack resistant and also for the most part no one cares that they aren't.
 752 2012-10-25 14:51:05 <gavinandresen> Now Lindsay needs to pay somebody X BTC, where X is larger than the petty-cash amount she can spend without anybody else's approval (she has a separate wallet for that)
 753 2012-10-25 14:51:26 <gavinandresen> So she half-signs the transaction and then......    what ?
 754 2012-10-25 14:51:32 Dyaheon has quit ()
 755 2012-10-25 14:52:13 <gavinandresen> Ideally, it gets sent To The Cloud, and next time I fire up my Bitcoin client up pops the transaction (and, ideally, metadata, like a description of what I'll be signing for, etc).
 756 2012-10-25 14:52:41 <helo> so if you ask a node if they have a partially signed transsaction, they will send it to you. but they won't broadcast it to everyone automatically?
 757 2012-10-25 14:52:45 <gavinandresen> Less ideally, I write a web server doohickey-thingy that Lindsay and I both know about and that keeps half-signed transactions.
 758 2012-10-25 14:52:59 <BlueMattBot> Project Bitcoin build #119: STILL FAILING in 2 hr 1 min: http://jenkins.bluematt.me/job/Bitcoin/119/
 759 2012-10-25 14:53:19 <helo> they wouldn't have any motivation to perform such a service though...
 760 2012-10-25 14:54:02 <gavinandresen> I'd be happy to pay a few cents to somebody to store the half-signed transaction for X time....
 761 2012-10-25 14:54:06 <amiller> gavinandresen, why not just have her email you or have her sign an encrypted message to her secure freesite on freenet
 762 2012-10-25 14:54:37 <gavinandresen> amiller: I'm looking for a solution that will work for non-geeks.  Copying and pasting hex out of email messages is not user friendly.
 763 2012-10-25 14:54:54 <gmaxwell> gavinandresen: you make that work with approiate integration, I suppose.
 764 2012-10-25 14:55:10 <gavinandresen> amiller: Short term, maybe that is the best we can do, but we should design for long-term and start with the idea user experience.
 765 2012-10-25 14:55:20 <gavinandresen> ^idea^ideal
 766 2012-10-25 14:55:27 servvs has joined
 767 2012-10-25 14:55:31 <gmaxwell> It's really going to be the best option because the distributed systems options will not be reliable, and non-reliable is very non-geek incompatible in a non-fixable way.
 768 2012-10-25 14:55:38 <amiller> fair enough - stuffing it in the blockchain is a way of making it even geekier and difficult, not less, but its potentially more resilient/secure too
 769 2012-10-25 14:55:58 <gavinandresen> That's why I'm asking if there is already a reliable pub/sub system
 770 2012-10-25 14:56:02 <gmaxwell> amiller: stuffing it in the blockchain has enormous scalablity problems.
 771 2012-10-25 14:56:07 <gavinandresen> (distributed pub/sub system)
 772 2012-10-25 14:56:23 <amiller> gmaxwell, not if you pay appropriately for it
 773 2012-10-25 14:56:35 <gavinandresen> How does the bittorrent DHT manage to not get DoS'ed to death ?
 774 2012-10-25 14:56:57 <kjj_> gavinandresen: define a file type, register some application with it, send the half-TX as an attachment
 775 2012-10-25 14:56:58 <gmaxwell> gavinandresen: There are LOTS of systems for this problem class. Freenet is the canonical anonymous one, but every DHT system is basically doing this; but reliablity is incompatible with the methods they use to constrain resources and survive dos.
 776 2012-10-25 14:57:30 <gmaxwell> amiller: the appropriate price for purely selfish data with global visiblity is stupidly high.
 777 2012-10-25 14:57:49 <helo> it would be neat if there was a "send me an address to send tips to" message
 778 2012-10-25 14:57:50 <gmaxwell> amiller: people don't need global visiblity just to meet another person, they need far less than that.
 779 2012-10-25 14:58:04 <gavinandresen> gmaxwell: right.  They don't have a convient payment system that might help solve the reliability problem, though...
 780 2012-10-25 14:58:19 slush has quit (Quit: Leaving.)
 781 2012-10-25 14:59:11 <gmaxwell> gavinandresen: Thats true. Well I'd describe that as solvng the DOS problem, the price for reliablity I think may be too high.  (basically because to be reliable in a distributed system where you can say nothing about the nodes, you must have MANY copies)
 782 2012-10-25 14:59:46 <gmaxwell> I suppose you can go further than that.. e.g. pay a bond to become a node which to lose if you go away prematurely. ... and then perhaps get reasonable prices for reliablity.
 783 2012-10-25 15:00:03 Dyaheon has joined
 784 2012-10-25 15:00:11 <amiller> now we're talking about apoptosis :D
 785 2012-10-25 15:00:47 <gavinandresen> gmaxwell: I like that line of thought.
 786 2012-10-25 15:01:21 <gmaxwell> The two problems for reliablity in these systems are that we delete crap to survive DOS, and that the particpating systems are not only unreliable but have _unknown_ reliablity. The issues are distinct but both result in non-relability.
 787 2012-10-25 15:01:26 <kjj_> and I'm going to continue the argument that you don't need an anonymous system to coordinate two people that know each other
 788 2012-10-25 15:01:53 <gavinandresen> kjj_: again, I don't care if it is anonymous.  I just want it usable by non-geeks.
 789 2012-10-25 15:01:58 <gmaxwell> e.g. amazon can get away with having only three copies of everything in S3 (or whatever they have) because they have a good handle on how reliable disks are and they _know_ when they've failed and can rapidly produce a new copy.
 790 2012-10-25 15:02:08 <kjj_> then register a MIME type and stick it in email as an attachment
 791 2012-10-25 15:02:21 <gmaxwell> In a loosly coupled decenteralized system we don't know how reliable things are and don't when things have failed.
 792 2012-10-25 15:02:44 <gavinandresen> kjj_: ... and that works if I'm using gmail and a web-based wallet ?
 793 2012-10-25 15:03:09 <gmaxwell> All this would be a lot easier if the internet weren't broken. :(  If everyone had ready access to stable public IPs... you'd simply have your program send it to their program. DONE.
 794 2012-10-25 15:03:16 <helo> if you were to pay a node or some service to hold the half-signed transaction for you, wouldn't that use up just as much block space as committing the half-signed transaction in the blockchain?
 795 2012-10-25 15:03:27 <gmaxwell> helo: huh. No!
 796 2012-10-25 15:03:28 <kjj_> heh.  I'd say that if you are using gmail and a web wallet, you deserve what you get.  :)
 797 2012-10-25 15:03:59 <kjj_> but you still have the option to save the file and upload it to the wallet site
 798 2012-10-25 15:04:20 <gmaxwell> helo: having _a_ node keep a copy of data uses a little space on that one node which is getting paid.  Putting it in the blockchain uses space on tens/hundreds of thousands of systems today and _forever_ into the future.
 799 2012-10-25 15:04:24 <amiller> is there any email system you'd consider reliable enough
 800 2012-10-25 15:04:25 <kjj_> but at that point, if your web wallet understands multisig, why not just have the other party send the half-TX directly to the service?
 801 2012-10-25 15:04:29 <amiller> if so, just integrate that in the client
 802 2012-10-25 15:04:36 <helo> gmaxwell: but the payment transaction for that service will be in the blockchain forever
 803 2012-10-25 15:04:36 <gavinandresen> gmaxwell: I like the idea of setting up a bond arrangement with a couple of service providers:  "You promise to make THIS data available under THIS key for THIS amount of time.  If you do, you get X bitcoins.  If you don't, you give up a bond of Y bitcoins."   I'm just not sure how to actually implement that...
 804 2012-10-25 15:05:34 <amiller> the way that's described, you'd have to automatically evaluate QoS
 805 2012-10-25 15:05:44 <gmaxwell> helo: not necessarily. E.g. you can use stochastic payments or payments through non-blockchain media.
 806 2012-10-25 15:06:24 <gmaxwell> helo: (stochastic payments are when you pay e.g. 1 BTC with probablity 1:100, instead of 0.01 btc)
 807 2012-10-25 15:06:24 <thermoman> sipa: reverted back to our backups from some hours ago ... now luck at the moment
 808 2012-10-25 15:06:36 <helo> stochastic is pretty neat...
 809 2012-10-25 15:06:52 TD has quit (Quit: TD)
 810 2012-10-25 15:07:47 <gmaxwell> helo: its one way to make true micropayments more scalable.
 811 2012-10-25 15:09:26 <amiller> how hard would it be to make a p2sh that lets me purchase mining power
 812 2012-10-25 15:09:42 <amiller> i would provide a block header hash and a target, and whoever provides a winning nonce earns the reward
 813 2012-10-25 15:10:36 <gmaxwell> you can't do that in the bitcoin system (and the non dependance on block particulars in transactions is intentional), at least not without adding opcodes.
 814 2012-10-25 15:10:55 <gmaxwell> amiller: of course, you can buy attacks on the chain that way.
 815 2012-10-25 15:11:21 <gmaxwell> (by producing double spend chains paying fees)
 816 2012-10-25 15:11:55 <gmaxwell> (and it bums me out that I can't see any way that could have been avoided)
 817 2012-10-25 15:12:54 <amiller> hm, a successful alt-chain with that capability would be able to pay for attacks on bitcoin but bitcoin wouldn't be able to credibly return the threat
 818 2012-10-25 15:14:25 <gmaxwell> I mean, you can pay for attack in foocoin with foocoin, so long as foocoin prevents doublespends and has transaction fees.
 819 2012-10-25 15:15:44 t7 has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204])
 820 2012-10-25 15:16:24 <gmaxwell> amiller: hm, well you actually could do what you're asking even cross chain with opcode like our disabled ones, but the txn would be hideously large.
 821 2012-10-25 15:18:43 <gmaxwell> ""To redeem this, you must provided a series of pushes which match these criteria" which requires them to push the whole candidate block, and then have code that parses out the characteristics you're testing for, as well as pulling out the pubkey to test against.
 822 2012-10-25 15:19:26 BlackPrapor has quit (Quit: KVIrc 4.0.4 Insomnia http://www.kvirc.net/)
 823 2012-10-25 15:19:32 <helo> holographic storage please...
 824 2012-10-25 15:19:57 <helo> i suppose cheap storage isn't the problem :/
 825 2012-10-25 15:21:34 <gmaxwell> helo: what we do requires cheap storage for basic viablity, even with tiny transactions...
 826 2012-10-25 15:23:26 <amiller> maybe there's a way to bake in a rule that precludes bitcoin from attacking itself in such a way but excellent at attacking anything else
 827 2012-10-25 15:23:45 <amiller> (to continue the living organism metaphor, this would be the immune system)
 828 2012-10-25 15:24:11 <gmaxwell> helo: the hard part is sorting out the universal interests from the selfish ones. It's in the interest of _all_ bitcoin users to prevent inflation from double spending, thin-air creation, or blatent theft. It's only interesting to the involved parties to execute some kind of complicated contract. If your contracts are basically just as expensive as normal transactions then everyone is happy, but if they're much more expensive you're basically
 829 2012-10-25 15:29:07 <sipa> [...]
 830 2012-10-25 15:31:21 B0g4r7__ has quit (Ping timeout: 276 seconds)
 831 2012-10-25 15:38:50 PK has quit (Quit: Leaving)
 832 2012-10-25 15:39:18 <helo> it's not exactly useful at this point, but it seems natural for there to be messaging to get a deposit address from a node
 833 2012-10-25 15:39:35 TD has joined
 834 2012-10-25 15:40:34 <gmaxwell> helo: "payment protocol"
 835 2012-10-25 15:40:53 <amiller> gmaxwell, it seemed like you were cut off mid sentence, ending with 'you're basically'
 836 2012-10-25 15:41:30 <gmaxwell> you're basically creating externalized costs.
 837 2012-10-25 15:41:37 <helo> 1) get address from node, 2) create a multiparty transaction that pays that node in addition to its other stipulations, 3) that node happily holds the partially signed pieces until it has them all, and then broadcasts it
 838 2012-10-25 15:41:43 <TD> what is the problem currently being brainstormed?
 839 2012-10-25 15:42:01 <TD> i feel a sense of deja vu
 840 2012-10-25 15:42:13 <helo> so you'd have to exchange the node's IP address with the other parties
 841 2012-10-25 15:42:55 <helo> which may not be much easier than emailing around the signed pieces
 842 2012-10-25 15:43:07 <helo> :/
 843 2012-10-25 15:43:48 <gmaxwell> TD: multiple things. Gavin was asking for a DHT because email is hard. ( :P ) and amiller was on some amiller tangent of the usual mindbending nature. :)
 844 2012-10-25 15:43:54 <TD> heh
 845 2012-10-25 15:43:58 <TD> DHT for what?
 846 2012-10-25 15:44:34 <gmaxwell> Gavin wants a way for multisigners to meet each other without having a centeralized server.
 847 2012-10-25 15:44:46 <rdponticelli> Would it be too hard to implement some realying protocol which includes relaying fees?
 848 2012-10-25 15:44:53 <gmaxwell> rdponticelli: yes.
 849 2012-10-25 15:44:53 <TD> in what use case? dispute mediation?
 850 2012-10-25 15:45:03 <TD> business owners controlling the pooled funds?
 851 2012-10-25 15:45:07 <gmaxwell> The latter.
 852 2012-10-25 15:45:13 <rdponticelli> gmaxwell: I thought so
 853 2012-10-25 15:45:18 <TD> just do it via gtalk or something
 854 2012-10-25 15:45:24 <TD> i don't think this is a very difficult problem …..
 855 2012-10-25 15:45:38 <gmaxwell> TD: right but then thats hard.. you have to copy and paste all this weird encoded crap between them.
 856 2012-10-25 15:45:55 <TD> no, why?
 857 2012-10-25 15:45:57 <gmaxwell> and gtalk is a centeralized (well federated/centeralized) server, which he was trying to avoid.
 858 2012-10-25 15:46:18 <TD> jabber is as decentralized as email is. the fact that most people don't want to run their own server is neither here nor there, they could if they wanted to or some reason appeared
 859 2012-10-25 15:46:35 <helo> i suppose ordinary users aren't likely to be involved in multiparty transactions very often, so the user experience doesn't have to be magically convenient
 860 2012-10-25 15:46:45 <TD> the same program that is helping you manage the pooled funds can just sign in to user@host.com via XMPP and then let you pick the other participants from your contact list
 861 2012-10-25 15:46:57 PhantomSpark has quit (2!~kvirc@pool-71-251-16-25.nycmny.fios.verizon.net|Ping timeout: 276 seconds)
 862 2012-10-25 15:47:02 <gmaxwell> email is mostly losing its decenteralization in any case.. have you tried running a non major email account lately? lots of crap randomly spamcans your messages. :(
 863 2012-10-25 15:47:24 <TD> yes. it's unfortunate how spam has pushed centralization of email, for sure
 864 2012-10-25 15:47:27 <gmaxwell> TD: in any case, I generally agree with you.. but go convince him that the integrated work (for email/xmpp/whatever) is easier than making a reliable DHT thing. :P
 865 2012-10-25 15:47:45 <TD> anyway, it's just a rendezvous point
 866 2012-10-25 15:48:03 <gmaxwell> well not much of a RP since end to end is dead, but ::shrugs::
 867 2012-10-25 15:48:05 <TD> you don't have to use jabber. you could just as easily use IRC channels, or any place that gives you an N-way communication channel.
 868 2012-10-25 15:48:13 <TD> end to end isn't dead
 869 2012-10-25 15:48:25 <TD> it requires some convoluted code these days to help set it up, but it mostly works ok
 870 2012-10-25 15:48:28 <gmaxwell> TD: it's pushing up the daisys! :P
 871 2012-10-25 15:48:47 <TD> and IPv6 is helping phase out the complicated crap, albeit slowly.
 872 2012-10-25 15:48:54 <TD> well, tell that to the G+ Hangouts / GTalk Video team
 873 2012-10-25 15:48:57 <TD> (aka webrtc)
 874 2012-10-25 15:49:17 <TD> the streaming is, afaik, basically point-to-point. there may be a reflector service to help people behind truly restrictive firewalls
 875 2012-10-25 15:49:46 <TD> if you want to have the actual protocol run over IP, it can be done. it's annoying but it can be done.
 876 2012-10-25 15:50:02 <TD> in future i suspect people will use Tor as a way to handle this anyway. some people are very jumpy about IPs
 877 2012-10-25 15:50:55 <amiller> one of gavin's suggested requirements was that the receiving party shouldn't have to be online
 878 2012-10-25 15:51:02 <TD> why?
 879 2012-10-25 15:51:11 <TD> (jabber can store offline messages, mind you)
 880 2012-10-25 15:52:25 <amiller> <gavinandresen> kjj_: I don't really care about anonymous, I just want a solution that doesn't require the two people involved to either a) be online at the same time    or    b) set up a server that is online all the time
 881 2012-10-25 15:52:25 <amiller> <gavinandresen> or, come to think of it    c) copy and paste some hex strings from email messages
 882 2012-10-25 15:52:25 <amiller> <gavinandresen> I'd be happy to pay a few cents to somebody to store the half-signed transaction for X time....
 883 2012-10-25 15:53:04 slush has joined
 884 2012-10-25 15:53:23 <TD> i think right now we have bigger problems anyway :)
 885 2012-10-25 15:53:38 <gmaxwell> td: Yes, I'm quite familar with webrtc. ... having been active in the IETF WG, and written part of the MTI audio codec for it. And yes, end to end is not completely dead, but it's not healthy even with stunts (the woah webrtc has stuts, STUN+DTLS+SCTP+RTP oh my), and it's getting worse. Some places, (e.g. teremark's VPN service) are now even charging customer per active port.
 886 2012-10-25 15:53:49 <gavinandresen> TD: what's on your priority list?  Easy-to-use multisig is top of mine....
 887 2012-10-25 15:53:54 <gmaxwell> TD: in any case, I don't think having end to end here is really important. the data is small.
 888 2012-10-25 15:54:16 <gmaxwell> but if end to end were robust and didn't require RPs it would make it easier.
 889 2012-10-25 15:54:35 <gmaxwell> TD: perhaps the business signing case doesn't need offline, but there are ones that do.
 890 2012-10-25 15:55:01 <TD> gavinandresen: same as it's ever been ….. making mobile clients work well. bloom filters are the last big bridge to cross performance wise. once that's done the bulk of the work is in things like smarter peer selection, fixing bugs, protocol compliance issues etc. so that'll keep me busy for a while.
 891 2012-10-25 15:55:14 <gavinandresen> Offline would be good for the multisig-on-multiple-devices use case, too.
 892 2012-10-25 15:55:15 slush1 has quit (Ping timeout: 244 seconds)
 893 2012-10-25 15:55:23 <TD> gavinandresen: easy to use multi-sig for 2-factor wallets would be very useful indeed but i don't see why it has to be offline
 894 2012-10-25 15:55:48 <TD> also if it's integrated into a client that takes a seriously badass machine to run it, that's going to limit its effectiveness
 895 2012-10-25 15:55:59 <gavinandresen> TD: doesn't HAVE to be, but if I have (say) usually-offline-laptop plus desktop as my two devices, then offline is nice
 896 2012-10-25 15:56:20 <TD> yeah. i'd start with the online case though. and probably, laptop+smartphone, as i guess that's what most people have.
 897 2012-10-25 15:56:33 <gavinandresen> agreed, laptop + smartphone is the common use case.
 898 2012-10-25 15:56:36 <TD> offline can be added as a v2 feature later, if it turns out to be a highly demanded feature
 899 2012-10-25 15:57:04 <gavinandresen> Even then, though, my smartphone might be powered off in my car when I start a multisig transaction, and not come online until I wander out there for lunch to do the final approval
 900 2012-10-25 15:57:07 <amiller> have any of you seen retroshare
 901 2012-10-25 15:57:07 slush1 has joined
 902 2012-10-25 15:57:23 <TD> i think the elephant in the room that we're not discussing is, in which direction do the various implementations go?   does bitcoin-qt want to focus on end user features, in which case client mode and reverse-headers-sync seem like the next 6 months of work
 903 2012-10-25 15:57:24 <amiller> it's a kitchen sink of p2p protocols (some online, some offline) using gpg public keys
 904 2012-10-25 15:57:50 <amiller> it has an excellent interface
 905 2012-10-25 15:57:51 <gavinandresen> amiller: haven't seen retroshare... (goes to google....)
 906 2012-10-25 15:57:52 <TD> or should it focus on becoming the "backbone" software and make it work well on servers, assuming future growth, and leave end user facing features to multibit/web developers/android developers/etc
 907 2012-10-25 15:58:10 <TD> or should it try and do both
 908 2012-10-25 15:58:29 <TD> right now adding end user features to bitcoin-qt feels like a loss to me because the evidence suggests the performance issues are just killer and a lot of people aren't using it.
 909 2012-10-25 15:58:42 <TD> ultraprune will help a lot of course but if we optimisticall assume further growth, it just delays the inevitable
 910 2012-10-25 15:58:57 pooler has joined
 911 2012-10-25 15:59:11 tonikt has joined
 912 2012-10-25 15:59:18 <gavinandresen> TD: I'd like to concentrate on core/backbone features, and cross-implementation issues like payment protocols...   easy to use multisig...
 913 2012-10-25 15:59:54 <TD> ok. i think a payment protocol is a good next step. honestly, i think easy to use 2-factor wallets are 90% GUI and icky client-side code, like handling rendezvous between laptop and phone in a straightforward manner
 914 2012-10-25 16:00:16 <TD> the core effort has been done already. the reason we don't have multi-factor wallets yet is developers working on thin clients are still catching up with bitcoin-qts current feature set
 915 2012-10-25 16:00:23 <TD> (mostly, encrypted wallets and well working backups)
 916 2012-10-25 16:00:36 <TD> oh
 917 2012-10-25 16:01:15 <TD> also one of my main priorities, probably the highest prioritiy if i was in your position, would be working/easy auto update. matts pull req is a good start. features that are implemented but users don't have because they don't know about them/can't be bothered updating manually might as well not exist.
 918 2012-10-25 16:01:22 <gavinandresen> This whole brainstorm about DHTs and pub/sub is motivated by me trying to figure out how to implement easy multisig
 919 2012-10-25 16:01:48 <TD> especially given that we know we'll want to do things in future that require global consensus, like making new script types standard, reactivate replacement, etc
 920 2012-10-25 16:02:26 <gavinandresen> TD: mmm.... auto-update for web services or end users?
 921 2012-10-25 16:02:30 <TD> yeah. so i think the "quorum of independent people" use case is different and currently less interesting than 2-factor wallets, they both use OP_CHECKMULTISIG but beyond that the whole UI flows seem very different
 922 2012-10-25 16:02:51 <gavinandresen> Seems to me web service auto-update should be "apt-get upgrade"  (at some point after Bitcoin 1.0)
 923 2012-10-25 16:03:02 <TD> gavinandresen: both. i guess end users will make up the bulk of nodes in the network for the time being. auto-update for web servers is a critical problem the industry never addressed though ….. look at all the hacked websites because PHP apps never get updated.
 924 2012-10-25 16:03:09 <gavinandresen> End users... meh.  I think most of them will be using Apps
 925 2012-10-25 16:03:50 <TD> gavinandresen: in practice there are lots of problems with "apt-get upgrade" as a solution. people have to actually run it, for one …. some way for node operators to get informed of alert messages might be useful
 926 2012-10-25 16:03:50 <gavinandresen> (and the whole mobile device Apps space already has auto-updating baked in, yes?)
 927 2012-10-25 16:03:58 <TD> yeah for mobile apps it's no problem
 928 2012-10-25 16:04:07 <TD> i guess jim will fix multibit at some point (hopefully soon)
 929 2012-10-25 16:04:18 <gmaxwell> fwiw, p2pool's use of update alerts has been quite effective.
 930 2012-10-25 16:04:22 <TD> for full nodes, it's a harder problem. if it's easy for node operators to do it and they know they need to, that's probably enough
 931 2012-10-25 16:04:55 <TD> question is how can a server process inform the server owner? emailing root used to be effective. no idea if it still is in todays world
 932 2012-10-25 16:04:58 <gavinandresen> TD: alert --> admin email setting in the client is a good idea (maybe Unix only, assuming sendmail is available?)
 933 2012-10-25 16:05:11 <TD> yeah
 934 2012-10-25 16:05:18 <TD> well for windows you can just use the GUI
 935 2012-10-25 16:05:25 <TD> (even on a server there's usually a gui available via rdp or something)
 936 2012-10-25 16:05:31 <gavinandresen> actually, could be just -alertnotify  <program>   ... where alert message is sent to <program> on stdin....
 937 2012-10-25 16:05:40 <TD> that's true. with good defaults that'd be a good solution.
 938 2012-10-25 16:05:44 <slush1> gavinandresen: +1
 939 2012-10-25 16:05:49 <TD> assuming we start reliably using alert messages to inform of updates
 940 2012-10-25 16:06:03 <TD> ok, anyway, back to 2-factor wallets
 941 2012-10-25 16:06:25 <TD> what you need is (in my ideal scenario), a smartphone app that knows how to read transaction messages, generate a signature and get it back to the host machine
 942 2012-10-25 16:06:30 <gmaxwell> well, we need something a little better than just that, because right now the way people install updates is a disaster waiting to happen.
 943 2012-10-25 16:06:34 <TD> a desktop app that knows how to find the smartphone app and send it a tx to sign
 944 2012-10-25 16:06:39 <TD> some kind of identity system in place
 945 2012-10-25 16:06:48 <TD> otherwise a compromised laptop/desktop can just show you the wrong address
 946 2012-10-25 16:06:53 <gmaxwell> Almost no one checks signatures, and I expect few who do would actually notice if they were with the wrong key.
 947 2012-10-25 16:07:04 <TD> gmaxwell: yeah. i thought Matts work on gitian-updater fixed that?
 948 2012-10-25 16:07:14 <TD> gmaxwell: i mean it's one more reason to avoid apt-get upgrade for sure :)
 949 2012-10-25 16:07:17 <gavinandresen> I think we should punt on the identity system, and use existing certificate authority infrastructure.
 950 2012-10-25 16:07:31 <TD> gavinandresen: that *is* an identity system :-) right now there's no integration into bitcoin. a payment protocol fixes that.
 951 2012-10-25 16:07:49 <gavinandresen> TD: right, we're in violent agreement.  I'm just saying lets not roll our own
 952 2012-10-25 16:07:51 <TD> so to me it seems like a payment protocol is a pre-req for a solid 2-factor wallet system. once you have a payment confirmation window saying "Send 10 BTC to amazon.com"
 953 2012-10-25 16:08:24 PhantomSpark has quit (Ping timeout: 276 seconds)
 954 2012-10-25 16:08:32 <TD> getting the relevant bits to the phone and back again are basically an issue for client devs. some may use bluetooth, others might use android/iphone cloud messaging, others might use QRcodes, etc
 955 2012-10-25 16:08:55 Bwild has joined
 956 2012-10-25 16:09:38 <gavinandresen> TD: tell me more about this cloud messaging.....
 957 2012-10-25 16:09:47 <TD> the timelines line up for me. if work on payment protocols starts now, by the time they're actually out there and being used thin client devs will have basically nailed the core UX of having encrypted, backed up wallets with reliable usage of the P2P network, fast performance thanks to bloom filtering, etc. then they can focus on the extra features enabled by the payment protocol
 958 2012-10-25 16:09:49 <gmaxwell> gavinandresen: for a payment protcol SSL does not provide non-repudiation, and I think this is a very unfortunate limitation. (not saying we should roll our own identification infrastructure, SSL is a total joke but we won't do better...; just pointing out that even ignoring the flaws in SSL it doesn't do what we want completely)
 959 2012-10-25 16:10:26 <TD> gavinandresen: Android and iPhones both hold open a permanent TCP connection to their respective motherships. apps can register with the OS as endpoints. then you can send messages to that app on the phone (even if it's offline).
 960 2012-10-25 16:10:43 <gavinandresen> "you" is "anybody" ?
 961 2012-10-25 16:11:00 <gavinandresen> (I'm thinking about DoS attacks again)
 962 2012-10-25 16:11:03 <TD> gavinandresen: on Android those messages can actually wake the app up in the background. on iOS it's more limited, of course. you can only force the phone to make a sound, pop up a message, or put an overlay icon on the given app. the OS won't let the app run arbitrary code.
 963 2012-10-25 16:11:09 <TD> gavinandresen: no. you need magic tokens and things.
 964 2012-10-25 16:11:35 <TD> it's quite well thought out. basically you use google/apple datacenters as rendezvous points. the phone gets some magic token during the device registration process. then it gets that token to "you" via some arbitrary mechanism
 965 2012-10-25 16:11:36 <gavinandresen> mmmm, magic....   No, that's probably OK.  What protocol?
 966 2012-10-25 16:11:45 <TD> and the sender then uses that token to talk to the device
 967 2012-10-25 16:12:50 <TD> device<->datacenter protocol:   for iOS i don't know. for android it's a custom TCP based protocol designed for efficiency and long battery life.
 968 2012-10-25 16:13:03 <amiller> does the average bitcoin user know how to use gpg
 969 2012-10-25 16:13:03 <TD> third party<->datacenter protocol, HTTP POST to magic endpoints.
 970 2012-10-25 16:13:46 <gavinandresen> TD: HTTP POST is perfect.  Is there a standard, or does iPhone and Android each have their own?
 971 2012-10-25 16:13:47 <TD> the question then, of course, is how you get the apps token to the laptop. once you married them, the laptop can talk to the app on the phone wherever it is. on android the messages are stored up for when the phone later connects.
 972 2012-10-25 16:13:52 <TD> there's no standard.
 973 2012-10-25 16:13:56 <gavinandresen> of course.
 974 2012-10-25 16:14:24 <TD> i don't recall how large the tokens are. they might be typeable, or QRcodeable. the way i'd planned to do it was use a freebie appengine app to map user account -> token
 975 2012-10-25 16:14:36 <gavinandresen> Getting the apps token to the laptop doesn't worry me too much; there will need to be some type of setup to exchange full public keys, etc....
 976 2012-10-25 16:14:52 <TD> the freebie app is another rendezvous point. you assume the user is logged in to a google account (or some kind of account) on both laptop and device. the app maps user to token. the rest is independent of it.
 977 2012-10-25 16:15:14 <TD> the data storage and QPS required should be low enough that even in a very popular system the rendezvous point is cheap to run (or free)
 978 2012-10-25 16:15:40 <TD> alternatively use WiFi service discovery/bonjour to exchange the tokens directly. thinking about it, that may be better.
 979 2012-10-25 16:15:47 <gavinandresen> yeah....   actually, an app engine freebie app that is a rendezvous point for doing this kind of stuff could be a good Foundation membership benefit
 980 2012-10-25 16:15:55 <TD> during initial setup both devices must be on the same [wifi] network. doesn't seem like a problem.
 981 2012-10-25 16:16:23 <gavinandresen> TD: if I'm arranging a multisig with LIndsay (who is in Seattle) then that would be a problem.
 982 2012-10-25 16:16:25 <TD> recent android versions support the relevant wifi service discovery standards. so it should be easy to program.
 983 2012-10-25 16:16:49 <gavinandresen> multiperson multisig is really the same as multidevice multisig, just different people holding the devices....
 984 2012-10-25 16:16:51 <TD> gavinandresen: well, i'm still thinking about the "one user secure against a hacked laptop" use case.
 985 2012-10-25 16:16:57 <TD> but yes
 986 2012-10-25 16:17:22 <TD> if you want 2 devices both being phones it's even easier
 987 2012-10-25 16:17:33 slush1 has quit (Quit: Leaving.)
 988 2012-10-25 16:17:40 <TD> the app on one phone can just SMS the token to the other phone. user selects the other participants from the phones address book.
 989 2012-10-25 16:18:39 <TD> that way you solve the identity problem by using the mobile phone network, and the cloud messaging platforms let the devices wake each other up to do things/ask the user for confirmation.
 990 2012-10-25 16:19:15 <gavinandresen> TD: can you send me links to learn more about the cloud messaging infrastructure ?
 991 2012-10-25 16:19:37 <TD> http://developer.android.com/guide/google/gcm/index.html
 992 2012-10-25 16:20:14 <gavinandresen> thanks!
 993 2012-10-25 16:21:26 <TD> you probably want the architectural overview
 994 2012-10-25 16:21:47 <TD> the apple equivalent is APNS: http://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/ApplePushService/ApplePushService.html
 995 2012-10-25 16:21:56 <TD> however given the issues with the app store process i'd just ignore iPhone users for now
 996 2012-10-25 16:22:38 <gavinandresen> a SMS-based lowest-common-denominator solution might make sense.
 997 2012-10-25 16:23:25 <gavinandresen> (not sure you you solve the "is this address REALLY amazon.com" with that, though)
 998 2012-10-25 16:24:16 <TD> you don't, no. identity of payment recipients is an open question in the business owners use case.
 999 2012-10-25 16:24:43 <TD> presumably you're doing it because one of the owners may be untrustworthy. that opens the question of how you know you're authorizing the transaction you think you're authorizing. it can be punted on for now.
1000 2012-10-25 16:25:05 <TD> it's more important when trying to solve the hacked laptop case, imo, because viruses have infinite patience and can wait around until you already think you're making a transaction.
1001 2012-10-25 16:25:46 <TD> if you want to embezzle funds, you'd have to do that by hand. still, if you have a payment protocol message (like an invoice from a supplier), it's still easier to know the transaction you're being asked to sign is correct.
1002 2012-10-25 16:27:52 maaku has joined
1003 2012-10-25 16:28:59 maaku has quit (Client Quit)
1004 2012-10-25 16:29:22 <BlueMatt> gmaxwell: what ever happened to the use ssl privkey to do our own sigs on top of data to provide non-repudiation idea?
1005 2012-10-25 16:29:38 <BlueMatt> its broken, but its better than rolling our own whole identity verification system
1006 2012-10-25 16:30:18 <TD> i don't think anyone is arguing we should roll our own ID system
1007 2012-10-25 16:30:30 <gavinandresen> ...not yet... just wait....
1008 2012-10-25 16:30:34 <TD> rather than we need a payment protocol that supports various identity schemes, of which SSL is the most obvious first candidate
1009 2012-10-25 16:30:51 <gavinandresen> agreed
1010 2012-10-25 16:30:52 <BlueMatt> TD: no, I dont think so, but I was comparing a not-great solution with one that was worse to make it look good ;)
1011 2012-10-25 16:31:09 <TD> later on if people want to trust cert roots issued by mt gox or whoever, that makes sense too. i don't think it's too hard to support identity generally. the payment protocol proposal i made had support for various certs.
1012 2012-10-25 16:31:24 <BlueMatt> (and because its a previously-suggested solution that works)
1013 2012-10-25 16:31:56 <amiller> why not use gpg again?
1014 2012-10-25 16:32:08 <TD> you could do. it's not a good solution for most users.
1015 2012-10-25 16:32:17 <gavinandresen> TD: where is your payment protocol proposal ?
1016 2012-10-25 16:33:05 <BlueMatt> amiller: because ssl has way more users now and it should be a path of lower resistance
1017 2012-10-25 16:33:08 <TD> on the mailing list, subject line is "payment protocol thoughts". it was long. more of a list of requirements. i can propose a concrete protobuf schema and protocol for it, if you like
1018 2012-10-25 16:33:35 <gavinandresen> TD: no, list of requirements is fine
1019 2012-10-25 16:34:04 <TD> the outline would be   "define a file format called .payment which is a protocol buffer using this schema <….>", clients register to handle this file type.
1020 2012-10-25 16:34:09 <gavinandresen> TD: that's the one I responded to by saying, essentially, "lets start with something simple", if I recall
1021 2012-10-25 16:34:12 <TD> yeah :)
1022 2012-10-25 16:34:20 <amiller> i guess it depends on your target audience - the average bitcoin user probably is afraid of the mothership model and would prefer to download an open source identity system developed by a bunch of cypherpunks
1023 2012-10-25 16:34:35 <TD> i wanted to think through all the requirements i could imagine so we don't end up with weird formats later due to over-constrained initial design.
1024 2012-10-25 16:34:49 JZavala has joined
1025 2012-10-25 16:34:53 <gmaxwell> amiller: gpg demonstrably doesn't work, it's hard enough to use that even the cryptodorks don't use it right or reliably.
1026 2012-10-25 16:35:05 <TD> like why have a single SSL-specific field when you can just as well have an array of {signature, cert} pairs, and that way if you want to support MtGox ID later, no problems
1027 2012-10-25 16:35:23 <gmaxwell> (we're getting someone ripped off in -otc via impersonation every couple of days now)
1028 2012-10-25 16:35:27 <TD> amiller: usability studies have shown computer science PhDs mostly don't grok PKI
1029 2012-10-25 16:35:48 <gavinandresen> TD: it seems to me some very general capabilities should be enough to support lots of use cases.  Things like "here's a public key you can use in responses to encrypt messages for me" ....
1030 2012-10-25 16:36:59 <TD> gavinandresen: yeah. well, i'd have phrased it like "repeated string endpoint_url" with the spec being like "you MUST support HTTPS to regular DNS names. you MUST recognize .onion URLs and MAY support them. if you do not support them you MUST inform the user this payment cannot be processed unless some other URL is usable"
1031 2012-10-25 16:37:07 <TD> gavinandresen: i think encryption is best handled at the transport layer.
1032 2012-10-25 16:37:16 <TD> but whatever. these are the details that get shaken out with concrete BIP-level proposals
1033 2012-10-25 16:37:34 <gavinandresen> TD:  I can imagine use cases where you want part of the information readable by everybody, and part encrypted-for-recipient-only
1034 2012-10-25 16:38:22 <BlueMatt> TD: have you looked into what hal said re: improving his original ecdsa speed upgrade (https://bitcointalk.org/index.php?topic=103172.msg1138884#msg1138884) "But I discovered that I had missed an essential optimization in my Koblitz implementation, which is to split the G multiplication into two, with half size exponents."
1035 2012-10-25 16:38:31 <BlueMatt> TD: I seem to be missing something there...
1036 2012-10-25 16:38:54 <TD> perhaps so yes. in my proposal i said the response (upload of payment) could contain:   the signed bitcoin transactions (allow >1), an optional payment request for refunds, a signature to let users identify themselves to the merchants, etc
1037 2012-10-25 16:39:24 <TD> BlueMatt: i saw the original post but never checked out his original code to see if he was right or not. if he tested the changed code and saw it speed up to the performance he expected from the literature, it seems reasonable ....
1038 2012-10-25 16:39:36 <TD> BlueMatt: hal is still alive, so you could email him and ask if you don't understand his point
1039 2012-10-25 16:40:12 <gmaxwell> BlueMatt: IIRC He's basically applying the same trick he did in the original code to one of the other multiplies.
1040 2012-10-25 16:40:25 <BlueMatt> gmaxwell: yes...what other multiple?
1041 2012-10-25 16:40:42 <BlueMatt> TD: hmm...maybe I will email him
1042 2012-10-25 16:41:03 <TD> gavinandresen: i can post a more detailed sketch of a payment protocol, if you like.
1043 2012-10-25 16:41:11 <gmaxwell> BlueMatt: best if you find the sources he was consulting before emailing. Keep in mind he's very low bandwidth, so you should take care to do what you can to minimize how much he has to tell you.
1044 2012-10-25 16:41:24 <TD> gavinandresen: btw getting bloom filters merged and rolled out is my no 1 priority for the c++ codebase right now :)
1045 2012-10-25 16:41:27 <BlueMatt> TD: well he said the code he published was not the speed it could be, and I dont see which G wasnt split (the G in his code, and all multiples for that matter, are split)
1046 2012-10-25 16:41:29 <gmaxwell> TD: like this? https://gist.github.com/1237788
1047 2012-10-25 16:41:32 <TD> don't want to be a distraction
1048 2012-10-25 16:41:35 <gavinandresen> TD: sure. I care less about the details of exactly what is in the protocol right now, and more about the user experience.
1049 2012-10-25 16:41:58 <BlueMatt> gmaxwell: ack, I was looking for those tomorrow, I found the original book he mentioned in the first thread and am trying to parse it
1050 2012-10-25 16:42:14 <TD> gmaxwell: yeah. except not json. ick :)   but seriously, there are some important changes vs that proposal i think we need
1051 2012-10-25 16:42:26 <TD> gavinandresen: sure. a few mockups won't hurt.
1052 2012-10-25 16:42:40 <gavinandresen> RE: bloom filters:  I've got a nagging feeling the design isn't quite right, but I don't think it is wrong enough to prevent an ACK
1053 2012-10-25 16:42:46 <TD> what don't you like about it
1054 2012-10-25 16:43:03 <BlueMatt> TD: also, odd thing is, if any one multiple wasnt split the whole thing would (in theory) run +/- the same as the original, but thats not true...
1055 2012-10-25 16:43:29 <TD> BlueMatt: i'm afraid i haven't studied that stuff in depth enough to be of any use here ...
1056 2012-10-25 16:44:07 <gavinandresen> My nagging feeling comes from thinking about what will happen when an SPV client catches up with the chain, and the implicit assumption we have right now that all full nodes have txid --> transaction indices
1057 2012-10-25 16:44:28 <gavinandresen> ... and the trouble we have with clients who get stuck on the block download
1058 2012-10-25 16:44:48 <gavinandresen> I've got a feeling that if SPV clients miss a 'tx' message for whatever reason Bad Things might happen
1059 2012-10-25 16:44:48 nsh has quit (Ping timeout: 276 seconds)
1060 2012-10-25 16:45:54 <gavinandresen> I might be wrong. But I suspect we want a new kind of 'inv' message that is  "given a block height and transaction index, please send me that transaction"
1061 2012-10-25 16:46:19 <TD> the current bloom filter code doesn't (afaik) assume a txid->tx index.
1062 2012-10-25 16:46:20 <gavinandresen> (or maybe block-hash-for-an-old-block-in-the-best-chain)
1063 2012-10-25 16:46:39 <TD> when walking a filtered chain, blocks are loaded from disk as normal, then run through the filter, and the results are sent as messages
1064 2012-10-25 16:46:46 <gavinandresen> TD: right, but if I'm catching up I get a merkleblock message followed by a bunch of relevant tx messages, yes?
1065 2012-10-25 16:46:50 <TD> yeah
1066 2012-10-25 16:46:51 aq83 has joined
1067 2012-10-25 16:47:05 <TD> i agree the client side (bitcoinj side) needs some careful programming to ensure that if it dies after receiving a merkleblock but before the associated tx messages, it does the right thing
1068 2012-10-25 16:47:06 <gavinandresen> ... so if I disconnect between the merkleblock and some of the tx messages....
1069 2012-10-25 16:47:12 <TD> right
1070 2012-10-25 16:47:27 <gavinandresen> ... or if one of the tx messages gets garbled....
1071 2012-10-25 16:47:41 <gavinandresen> I can't just re-request by txid, right?
1072 2012-10-25 16:47:46 <gmaxwell> it also assumes the availablity of archive nodes... just for spv nodes to find out their own transactions. Kind of unfortunate.
1073 2012-10-25 16:47:51 <TD> hmm, i suppose not
1074 2012-10-25 16:48:09 <gmaxwell> utxo data should be much more available, but there is no way to distinguish historical data from current data.
1075 2012-10-25 16:48:22 <BlueMatt> gavinandresen: no, to get a tx in one of those corner-cases you need to a) reconnect and re-request the merkle block or b) request the full block
1076 2012-10-25 16:48:31 <TD> gmaxwell: we can just say that non-archival nodes still archive the last N thousand blocks. the goal is to make disk usage linear, not as small as possible.
1077 2012-10-25 16:48:46 nsh has joined
1078 2012-10-25 16:49:04 <TD> BlueMatt: if the TX data is included in the merkleblock message, it means we lose some efficiency when receiving a side-chain block. but is there any other downside?
1079 2012-10-25 16:49:19 <gavinandresen> maybe it will just require careful programming, but my queasy feeling is that in an ultraprune world we're going to want a different set of lookup operations.
1080 2012-10-25 16:49:20 <TD> well, also we hear broadcast transactions twice
1081 2012-10-25 16:49:34 <BlueMatt> TD: you cant skip the txes when you know the remote peer already has it in that case
1082 2012-10-25 16:49:34 <gmaxwell> TD: we pretty much must for reorgs in any case, indeed. But N isn't defined currently... and it still leaves that problem for wallets last updated (or keys imported) with times before N.
1083 2012-10-25 16:49:39 <TD> yeah
1084 2012-10-25 16:49:41 <BlueMatt> (or you do skip them, and get the same result as before)
1085 2012-10-25 16:50:00 <TD> gmaxwell: perhaps instead of advertising NODE_ARCHIVE or something nodes can just advertise which block height ranges they archive.
1086 2012-10-25 16:50:15 <TD> gmaxwell: and SPV clients, if they're syncing an ancient wallet, can go find them
1087 2012-10-25 16:50:32 <gmaxwell> Seems fragile. Whats the motivation to run these nodes?
1088 2012-10-25 16:50:46 <BlueMatt> gmaxwell: same as its always been: chivalry
1089 2012-10-25 16:50:49 <gmaxwell> I'm starting to wonder if once the problems are fixed if electrum might not have a better model.
1090 2012-10-25 16:50:57 <TD> at any rate, i don't think we should be afraid of imposing large minimum disk space requirements. disk space is cheap. pruning of old data is useful to put some kind of upper bound on it, but i don't see any reason why that upper bound should be low
1091 2012-10-25 16:51:24 <TD> if we say "you must have at least 50 GB of free space to run a backbone node", who would that really kick out? a few hobbyists who would fall behind sooner or later anyway
1092 2012-10-25 16:51:33 <gavinandresen> agreed
1093 2012-10-25 16:51:42 <TD> gmaxwell: girls will love you for it.
1094 2012-10-25 16:51:51 <TD> gmaxwell: we make t-shirts that say "check out the size of my block chain"
1095 2012-10-25 16:51:57 <eian> :O
1096 2012-10-25 16:52:30 <gavinandresen> syncing a peer by iterating through old blocks should be fairly cheap, I'm not worried about that.  I AM worried about the 'requires careful programming' part
1097 2012-10-25 16:52:49 <BlueMatt> gavinandresen: which part is that?
1098 2012-10-25 16:52:50 <TD> bitcoin requires careful programming, full stop.
1099 2012-10-25 16:52:53 <TD> (unfortunately)
1100 2012-10-25 16:53:18 <TD> that's why bitcoinj is a library with lots of class/method docs, written in a crappy but widely known language
1101 2012-10-25 16:53:30 <TD> so hopefully re-implementations are rare things done by careful people
1102 2012-10-25 16:53:43 <gavinandresen> BlueMatt: if I'm implementing an SPV mode then handling merkleblock/tx correctly and being 100% positive I don't miss any transactions is tricky
1103 2012-10-25 16:54:09 <TD> well, it means that you don't submit the block+transactions to the blockchain/wallet/rest of the system until all tx have arrived
1104 2012-10-25 16:54:24 <BlueMatt> gavinandresen: not really...
1105 2012-10-25 16:54:26 <gmaxwell> gavinandresen: a "I'm done now" message, and then throwing out the block if you didn't get that is easy to get right.
1106 2012-10-25 16:54:28 <TD> the head-of-chain doesn't get updated until all transactions are received or fetched from some other place, and then it's processed atomically
1107 2012-10-25 16:54:58 <TD> IOW the networking subsystem handles the buffering
1108 2012-10-25 16:55:12 <gavinandresen> Is there an "I got that merkleblock, and had all the full transactions in it that apply to me" message ?
1109 2012-10-25 16:55:41 <TD> no. but if you haven't received the transactions you're expecting to see after N seconds you can always try again with a different peer
1110 2012-10-25 16:55:50 <BlueMattBot> Project Bitcoin build #120: STILL FAILING in 2 hr 2 min: http://jenkins.bluematt.me/job/Bitcoin/120/
1111 2012-10-25 16:55:56 <BlueMatt> TD: or you go ahead and set the root and keep track of the list of txn that you still need
1112 2012-10-25 16:55:57 <gavinandresen> Actually, maybe just sending the 'tx' messages before the merkleblock would work
1113 2012-10-25 16:55:58 <TD> bitcoin  protocol is full of points where a randomly vanishing peer can break things and needs to trigger a retry
1114 2012-10-25 16:55:59 <BlueMatt> BlueMattBot: stfu
1115 2012-10-25 16:55:59 <BlueMattBot> BlueMatt you may not issue bot commands in this chat!
1116 2012-10-25 16:56:09 <TD> hahaha
1117 2012-10-25 16:56:13 <BlueMatt> :(
1118 2012-10-25 16:56:15 <TD> the next thing it does is try to kill you
1119 2012-10-25 16:56:18 <gavinandresen> ... if you get a merkleblock with transactions you haven't seen before, re-request
1120 2012-10-25 16:56:28 <BlueMatt> gavinandresen: simple as that
1121 2012-10-25 16:56:35 <TD> gavinandresen: right. so it can break if the remote peer thinks you've seen transactions you haven't.
1122 2012-10-25 16:56:58 <BlueMatt> TD: and in that case...you just cycle the connection/ask another peer/request the full block
1123 2012-10-25 16:57:01 <TD> gavinandresen: however, i don't think that can happen. for a peer to think that either you announced it with an inv, or it sent you an inv and is thus offering to serve it via a getdata
1124 2012-10-25 16:57:04 <TD> right
1125 2012-10-25 16:57:05 <gavinandresen> Ok, so maybe the req-request needs a "please send me full transactions" flag
1126 2012-10-25 16:57:14 <BlueMatt> gavinandresen: it has that
1127 2012-10-25 16:57:25 <TD> it does?
1128 2012-10-25 16:57:31 <BlueMatt> gavinandresen: you have to request a merkle block by inv type, you can still request a regular block on a filtered connection
1129 2012-10-25 16:57:35 <TD> right.
1130 2012-10-25 16:57:38 <TD> you can download a full block
1131 2012-10-25 16:57:39 topace has quit (Read error: Connection reset by peer)
1132 2012-10-25 16:57:45 <gavinandresen> I meant "full transactions that apply to me"
1133 2012-10-25 16:57:46 <BlueMatt> (afair)
1134 2012-10-25 16:57:48 <TD> not a merkle block with all transactions relayed regardless of setKnownInventory
1135 2012-10-25 16:57:51 <BlueMatt> ahh
1136 2012-10-25 16:57:57 <gavinandresen> (even if the peer assumes I've seen them before)
1137 2012-10-25 16:58:01 <TD> i'm not sure setKnownInventory is flaky though. if it was we'd have problems already.
1138 2012-10-25 16:58:03 <BlueMatt> meh...this is such a rare case...
1139 2012-10-25 16:58:16 <BlueMatt> just cycle the connection if something blows up in your face
1140 2012-10-25 16:58:25 <BlueMatt> (or...probably disconnect the node because it is misbehaving)
1141 2012-10-25 16:58:32 <gavinandresen> setInventoryKnown might be flaky and we don't notice because we get notified by multiple peers
1142 2012-10-25 16:58:57 <gmaxwell> wait. is the bloom stuff not allowed to return extra transactions not matching the filter?
1143 2012-10-25 16:59:06 <gavinandresen> it can return extra stuff
1144 2012-10-25 16:59:15 <BlueMatt> gmaxwell: it can do whatever it wants, it just adds tx messages in addition
1145 2012-10-25 16:59:29 <BlueMatt> gavinandresen: if it is and multiple nodes hide the issue well enough, then re-requesting the merkle block from other peers would work
1146 2012-10-25 16:59:29 <gmaxwell> okay. For a second I thought I'd misunderstood that.
1147 2012-10-25 17:00:06 <TD> gmaxwell: it would be kind of pointless/weird but the protocol wouldn't break.
1148 2012-10-25 17:01:19 <TD> BlueMatt: i see you started on reverse header sync?
1149 2012-10-25 17:01:24 <gavinandresen> So... I think I'll feel warmer and fuzzier if the bloom BIP says "send any missing transactions via 'tx', then send 'merkleblock'"  And if the recipient gets a 'merkleblock' with txids it hasn't seen, the response is "getblock"
1150 2012-10-25 17:01:57 <gavinandresen> That should be robust.  I agree it should be a rare case that the 'getblock' is actually done.
1151 2012-10-25 17:02:12 <TD> so invert the order of the messages?
1152 2012-10-25 17:02:23 <gavinandresen> Seems better than "wait a couple of seconds to see if they show up"
1153 2012-10-25 17:02:46 jdnavarro has quit (Ping timeout: 245 seconds)
1154 2012-10-25 17:03:30 <TD> i'm not sure it makes a big difference one way or another to client implementors. you still need buffering and timeouts.
1155 2012-10-25 17:03:40 <TD> block chain sync can and does stall half way through. no implementation handles it well today
1156 2012-10-25 17:03:41 <BlueMatt> TD: sort of, the headers sync part just uses existing code (though AbstractBlockChain/FullPrunedBlockStore needed a few minor changes which I did) but the second phase where you fill in full blocks was written at the application layer instead of in PeerGroup (which Im not entirely sure how to do atm...havent spent a ton of time thinking about it)
1157 2012-10-25 17:03:42 <BlueMatt> TD: but it works reasonably well
1158 2012-10-25 17:03:46 <TD> but it's definitely one of the leading cause of flakyness
1159 2012-10-25 17:04:00 <BlueMatt> gavinandresen: so you are saying just update the BIP to say "request full block if you miss something?" (and change order of send?)
1160 2012-10-25 17:04:12 <gavinandresen> BlueMatt: I think so.  What do you think?
1161 2012-10-25 17:04:22 <TD> BlueMatt: ok interesting. it seems like a feature that's useful for desktop wallets where the user may be willing to opt-in to donating their resources, if asked nicely?
1162 2012-10-25 17:04:29 <gavinandresen> (and speaking of BIPs... I think we need a new BIP editor)
1163 2012-10-25 17:04:33 <BlueMatt> gavinandresen: switching the message order seems to make sense to me
1164 2012-10-25 17:04:39 * TD did not involve any editors in bip37
1165 2012-10-25 17:05:04 <BlueMatt> TD: yes, I think it would be a really nice feature to include in 0.7
1166 2012-10-25 17:05:14 <BlueMatt> TD: or whenever the full verification stuff gets pushed
1167 2012-10-25 17:05:28 <BlueMatt> TD: also, I think I fixed the spend-genesis-coinbase bug in that branch, btw
1168 2012-10-25 17:05:32 <gavinandresen> hungry.... away to eat for a bit
1169 2012-10-25 17:05:59 <TD> ok
1170 2012-10-25 17:05:59 <TD> great
1171 2012-10-25 17:06:03 <TD> time to go home
1172 2012-10-25 17:06:04 <TD> ttyl
1173 2012-10-25 17:06:07 <BlueMatt> see ya
1174 2012-10-25 17:06:18 TD has quit (Quit: TD)
1175 2012-10-25 17:08:24 <BlueMatt> ;;later tell TD oh, no sorry I did actually cherry-pick the genesis coinbase undependable (and another refactor or three) in newscripts
1176 2012-10-25 17:08:24 <gribble> The operation succeeded.
1177 2012-10-25 17:09:24 topace has joined
1178 2012-10-25 17:09:59 topace has quit (Changing host)
1179 2012-10-25 17:09:59 topace has joined
1180 2012-10-25 17:19:13 <helo> gmaxwell: what would one base the "rng" in a stochastic payment on?
1181 2012-10-25 17:21:09 optimator_ has joined
1182 2012-10-25 17:21:57 <gmaxwell> helo: there are a couple ways to do it, lemme find a discussion.
1183 2012-10-25 17:22:16 optimator has quit (Ping timeout: 240 seconds)
1184 2012-10-25 17:23:16 Guest19312 has quit (Changing host)
1185 2012-10-25 17:23:16 Guest19312 has joined
1186 2012-10-25 17:23:19 Guest19312 is now known as arij
1187 2012-10-25 17:23:19 <helo> i imagine you wouldn't want it to be something a miner can iterate over
1188 2012-10-25 17:23:25 <gmaxwell> helo: ah, there is a wiki page here: https://en.bitcoin.it/wiki/Nanopayments
1189 2012-10-25 17:24:07 ibno has quit (Quit: Lämnar)
1190 2012-10-25 17:27:02 pooler has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713224749])
1191 2012-10-25 17:27:56 slush1 has joined
1192 2012-10-25 17:28:46 slush has quit (Ping timeout: 244 seconds)
1193 2012-10-25 17:31:08 JZavala has quit (Ping timeout: 245 seconds)
1194 2012-10-25 17:32:14 pooler has joined
1195 2012-10-25 17:34:41 <helo> me gusta :D
1196 2012-10-25 17:35:06 <jouke> Is it possible for two clients to use the same blockchain files?
1197 2012-10-25 17:35:46 <helo> not currently :(
1198 2012-10-25 17:36:15 nsh has quit (Remote host closed the connection)
1199 2012-10-25 17:36:22 <helo> i think the eventual goal is for the blockchain to be system-wide, with multiple clients/users able to query it
1200 2012-10-25 17:36:43 <jouke> That would be really nice
1201 2012-10-25 17:36:54 <helo> yeah...
1202 2012-10-25 17:36:54 <jrmithdobbs> helo: actually it is with .7 for the first 2G file and looks like it will be again in smaller chunks for .8+
1203 2012-10-25 17:37:02 <jrmithdobbs> err <= .7
1204 2012-10-25 17:37:22 <gmaxwell> jrmithdobbs: no, not really... because the files are not the same between nodes.
1205 2012-10-25 17:38:07 <BlueMatt> helo: I wouldnt really call it "the goal" more like "a potentially nice property if we ever run out of important things to do" ;)
1206 2012-10-25 17:38:09 <jrmithdobbs> gmaxwell: luke does it. you start with one node and build the blkindex.dat, then hardlink all the blkXXX.dat's to the same file and give each node it's own blkindex.dat
1207 2012-10-25 17:38:12 <gmaxwell> you could sync one node, copy it.. and replace the finished block files with hardlinks.. but nothing neat and automatic.
1208 2012-10-25 17:38:16 <jrmithdobbs> it's a pain
1209 2012-10-25 17:38:19 <jrmithdobbs> but it can be done
1210 2012-10-25 17:38:50 <gmaxwell> Just pointing out that thats a long step from just being able to share it.
1211 2012-10-25 17:38:51 <BlueMatt> its (probably) safe if you make sure you have 0 orphans in the file, but, in general, it could cause issues
1212 2012-10-25 17:39:24 pooler has quit (Ping timeout: 264 seconds)
1213 2012-10-25 17:39:29 <jrmithdobbs> also .8 probably needs to default to -loadblocks (or w/e) if existing blkXXX.dat files exist on first start and leveldb files don't
1214 2012-10-25 17:39:42 <jrmithdobbs> ran my node out of disk by not reading commit log before upgrade yesterday ;p
1215 2012-10-25 17:40:56 <jrmithdobbs> "umm why is it doing an IBD again?!" is going to be a pretty common question with that upgrade
1216 2012-10-25 17:41:53 <gmaxwell> jrmithdobbs: the upgrade stuff just isn't implemented yet.
1217 2012-10-25 17:42:00 pooler has joined
1218 2012-10-25 17:42:20 <jrmithdobbs> gmaxwell: I know it's not anywhere near release yet. just sharing my experience. ;p
1219 2012-10-25 17:42:29 <jouke> I guess I should look to other clients.
1220 2012-10-25 17:42:50 <helo> i expect users to be a little grumpy if the bdb -> leveldb transition is a hog
1221 2012-10-25 17:42:52 <gmaxwell> jouke: there is currently not anything that does what you're asking for there.
1222 2012-10-25 17:43:02 <gmaxwell> helo: if they can't take an extra 5
1223 2012-10-25 17:43:15 <gmaxwell> GB temporarily they're going to be offline in some number of months anyways.
1224 2012-10-25 17:43:27 <jgarzik> well
1225 2012-10-25 17:43:45 <jgarzik> picocoin is now successfully parsing CBlock and network messages, 24 hours into its life
1226 2012-10-25 17:43:55 <jouke> I heard electrum does something like it
1227 2012-10-25 17:43:57 <jgarzik> (picocoin == SPV client in C)
1228 2012-10-25 17:43:59 <gmaxwell> jgarzik: is this your tiny C SPV?
1229 2012-10-25 17:44:00 <gmaxwell> <3
1230 2012-10-25 17:44:02 <jgarzik> yes
1231 2012-10-25 17:44:19 <helo> gmaxwell: i meant more "sorry, your client is upgrading its databases" for two hours than duplicated disk space
1232 2012-10-25 17:44:24 <jgarzik> should be endian safe from birth
1233 2012-10-25 17:44:26 <BlueMatt> jgarzik: src?
1234 2012-10-25 17:44:35 <jrmithdobbs> helo: still faster than a new IBD
1235 2012-10-25 17:44:44 <jgarzik> BlueMatt: not public yet...  want it to do something useful first, like download block headers
1236 2012-10-25 17:44:52 <BlueMatt> spv client? /me goes to start writing in full verification support to do the same thing to you I did to TD ;)
1237 2012-10-25 17:45:03 <jgarzik> calculating and validating merkle roots should come RSN
1238 2012-10-25 17:45:17 <jgarzik> hehehe
1239 2012-10-25 17:45:18 <BlueMatt> nice
1240 2012-10-25 17:45:57 <jgarzik> picocoin's goal is to be as minimal as possible.  Initial goal is a basic wallet, no accounts, that can send and recognize reception of simple payments
1241 2012-10-25 17:45:57 slush has joined
1242 2012-10-25 17:45:57 <helo> definitely better than IBD... with the number of people who complain about IBD and are reassured "don't worry, after it does this one time, it will be quick from then on", i'm sure there will be plenty of whiners
1243 2012-10-25 17:46:00 <jrmithdobbs> speaking of the upgrade it's safe to just kill blkXXX.dat and blkindex.dat after upgrade right?
1244 2012-10-25 17:46:21 <jrmithdobbs> helo: eh, that's not even true, close client for a month and see how false that statement is ;p
1245 2012-10-25 17:48:12 <sipa> gmaxwell: any progress on block compression? i'm curious how much better you can do when combining multiple
1246 2012-10-25 17:48:33 slush1 has quit (Ping timeout: 272 seconds)
1247 2012-10-25 17:48:55 nsh has joined
1248 2012-10-25 17:48:56 <sipa> helo: plan is certainly to do in-place upgrading
1249 2012-10-25 17:49:20 <sipa> at least if requested (as that will make downgrading harder)
1250 2012-10-25 17:50:19 robocoin has quit (Quit: !)/ヽ(´ー`)ノ\(!)
1251 2012-10-25 17:56:27 <helo> given that the blockchain on disk has already been validated, would it be possible to save some effort when importing vs -loadblock from questionable blk*.dat?
1252 2012-10-25 17:57:07 <BlueMatt> yes
1253 2012-10-25 17:57:13 <helo> maybe you'd want to verify everything just to be sure there isn't corruption
1254 2012-10-25 17:57:32 <helo> but then that would apply every time you start the client
1255 2012-10-25 17:57:33 <sipa> would be possible, yes, but it's a nice chance for everyone to reverify their chain (given how much bdb corruptions we see, i really like that)
1256 2012-10-25 17:57:56 <jrmithdobbs> ya i think it's best to actually reverify
1257 2012-10-25 17:58:04 <gmaxwell> we already suppress ecdsa below the highest checkpoint, and thats most of the speedup possible.
1258 2012-10-25 17:58:08 <BlueMatt> but sipa's right here, we probably wont because its better to reverify everything
1259 2012-10-25 17:58:11 arij has quit (Read error: Connection reset by peer)
1260 2012-10-25 17:58:34 <sipa> gmaxwell: not true, you can extract coins/ from blkindex.dat
1261 2012-10-25 17:58:47 <sipa> coinhash does that
1262 2012-10-25 17:59:31 arij has joined
1263 2012-10-25 17:59:54 arij is now known as Guest3609
1264 2012-10-25 17:59:55 <gmaxwell> sipa: a little bit, not enough to give numbers yet.
1265 2012-10-25 18:00:00 <sipa> implicitly, at least
1266 2012-10-25 18:00:20 <sipa> gmaxwell: numbers?
1267 2012-10-25 18:00:36 EasyAt is now known as !~Easy@81.17.31.43|EasyAt
1268 2012-10-25 18:00:47 <gmaxwell> sipa: 10:36 < sipa> gmaxwell: any progress on block compression? i'm curious how much better you can do when combining multiple
1269 2012-10-25 18:00:56 <sipa> oh, right
1270 2012-10-25 18:01:43 <jgarzik>     static unsigned char pblank[1];
1271 2012-10-25 18:01:43 <jgarzik>     uint256 hash1;
1272 2012-10-25 18:01:43 <jgarzik>     SHA256((pbegin == pend ? pblank : (unsigned char*)&pbegin[0]), (pend - pbegin) * sizeof(pbegin[0]), (unsigned char*)&hash1);
1273 2012-10-25 18:01:56 * jgarzik wonders why pblank is there... SHA256 can hash zero-size just fine
1274 2012-10-25 18:02:50 <sipa> gmaxwell: i did once write a range-encoding based blockchain compressor, but it did not have script specific cases, so scriot compression was actually worse than just gzip, but i think i managed to swueeze just about everything out of the rest
1275 2012-10-25 18:03:03 <sipa> *squeeze
1276 2012-10-25 18:04:04 <sipa> jgarzik: i think it's for cases when pbegin refers to an empty (==unallocated) vector
1277 2012-10-25 18:04:34 <sipa> jgarzik: to prevent it from unnecessarily doing funky stuff when its operator[] is called
1278 2012-10-25 18:04:46 <jgarzik> ok
1279 2012-10-25 18:06:06 sirk390 has joined
1280 2012-10-25 18:08:45 <gmaxwell> Hm, random factoid— absent protocol changes or zero value txouts and assuming current txout sizes— the maximum seralized size of the txout set is only 75 petabytes.
1281 2012-10-25 18:09:41 <jrmithdobbs> that's surprisingly low
1282 2012-10-25 18:10:14 <BlueMatt> current average txout size or current max txout size?
1283 2012-10-25 18:11:13 <amiller> that's with one satoshi unit on every utxo?
1284 2012-10-25 18:11:15 <midnightmagic> gmaxwell: Does that include maximally-sized scripts or is that just plain spends subdivided to 1e-8?
1285 2012-10-25 18:11:36 <gmaxwell> average.
1286 2012-10-25 18:11:49 <BlueMatt> not too bad
1287 2012-10-25 18:12:05 <gmaxwell> basically its the txout size / tx out count * 21e14.
1288 2012-10-25 18:12:26 <midnightmagic> so s/maximum/expected/ ?
1289 2012-10-25 18:12:43 <midnightmagic> assuming current txout sizes.
1290 2012-10-25 18:12:45 * midnightmagic goes away
1291 2012-10-25 18:15:03 <helo> ouch... wallet corrupt, cannot recover 0_o
1292 2012-10-25 18:15:17 <helo> backed up ofc
1293 2012-10-25 18:15:41 <gmaxwell> Of course, the maximum is infinite— zero value txouts are permitted. (or about 25000x that, since I suppose txouts could be up to 1mb in size)
1294 2012-10-25 18:16:01 <midnightmagic> 0-value txouts still require fees don't they?
1295 2012-10-25 18:16:15 <gmaxwell> midnightmagic: they're non-standard now too.
1296 2012-10-25 18:16:18 <midnightmagic> I guess it's growing over time then..
1297 2012-10-25 18:16:35 <gmaxwell> There aren't too many in the chain though, because the reference client refused to create them.
1298 2012-10-25 18:17:18 <gmaxwell> there are quite a few 1e-8 txouts though, esp since every dice loss results in one.
1299 2012-10-25 18:17:54 <midnightmagic> grr
1300 2012-10-25 18:18:15 <BlueMatt> why does dice have to be so (clearly purposefully) bad for the network?
1301 2012-10-25 18:18:38 <BlueMatt> s/clearly/apparently/
1302 2012-10-25 18:18:39 <midnightmagic> because the people involved are douchebags?
1303 2012-10-25 18:19:03 <Luke-Jr> BlueMatt: DDoS attacks are to be expected I guess; but why does an otherwise honest company like BitInstant employ and give a pedistal to the guy behind it? :/;
1304 2012-10-25 18:19:24 <midnightmagic> the employer of one of them seems to think it's an incentive to get you guys (the devs) to correct the flaw in bitcoin to handle satoshidice.
1305 2012-10-25 18:19:28 <midnightmagic> so really, they're helping you guys.
1306 2012-10-25 18:19:34 <BlueMatt> wait he's employed by an exchange??? wtf?
1307 2012-10-25 18:19:48 <midnightmagic> BlueMatt: One of them is employed by bitinstant.
1308 2012-10-25 18:19:52 <BlueMatt> well theres one reason enough to never use bitIntstant
1309 2012-10-25 18:19:54 <Luke-Jr> BlueMatt: by one of the two initial corporate seats on the Bitcoin Foundation, even
1310 2012-10-25 18:19:56 <BlueMatt> Instant*
1311 2012-10-25 18:20:15 <Luke-Jr> BlueMatt: BitInstant seems okay besides this guy
1312 2012-10-25 18:20:23 <BlueMatt> midnightmagic: wow...I love that argument is so so completely boneheaded and stupid...
1313 2012-10-25 18:20:26 <Luke-Jr> I don't know why they put up with him
1314 2012-10-25 18:20:26 <midnightmagic> and it's the bitinstant guy who said that.
1315 2012-10-25 18:20:56 <midnightmagic> Luke-Jr: One of the satoshidice guys is employed by the guy who said it's on the devs to fix bitcoin so it can withstand satoshidice.
1316 2012-10-25 18:21:05 <Luke-Jr> midnightmagic: grmbl
1317 2012-10-25 18:21:21 <Luke-Jr> midnightmagic: when I spoke to them, they seems to be disclaiming responsibility and distancing from dice
1318 2012-10-25 18:21:33 <gavinandresen> Eric is a great guy.  Don't blame him for creating a wildly popular bitcoin-based service....
1319 2012-10-25 18:21:52 <midnightmagic> :-(
1320 2012-10-25 18:21:54 <BlueMatt> gavinandresen: I dont, I blame him for doing stupid shit as a part of it
1321 2012-10-25 18:22:00 <Luke-Jr> Eric operates a DDoS against Bitcoin and gives it a bad name with his anti-government propaganda
1322 2012-10-25 18:22:05 <BlueMatt> gavinandresen: sending 1-satoshi outputs for losing???
1323 2012-10-25 18:22:41 <gavinandresen> He's doing nothing prohibited by the protocol, transaction fee rules, etc....
1324 2012-10-25 18:22:56 <Luke-Jr> gavinandresen: so double spending is okay as long as we do it by the protocol?
1325 2012-10-25 18:22:59 <BlueMatt> that doesnt mean what hes doing is ok
1326 2012-10-25 18:23:17 <BlueMatt> Luke-Jr: who cares if you double-spend as long as its not explicitly malicious?
1327 2012-10-25 18:23:26 <BlueMatt> thats no huge load on the network
1328 2012-10-25 18:23:26 <Luke-Jr> BlueMatt: true, I meant the latter ;)
1329 2012-10-25 18:23:30 <gmaxwell> gavinandresen: Er. You are too kind. His anti-government ranting is scarry, and he has made basically no effort to limit the harmful actions of his service on other users— in fact as it's run he's made it worse, e.g. paying a txn fee on every transaction so free txn are crowded out, and he's increased his txload by 1/3rd by paying out 1e-8 btc to losers.
1330 2012-10-25 18:23:40 <jgarzik> agree RE anti-government ranting
1331 2012-10-25 18:23:40 <Luke-Jr> the existance of legitimate double spends just supports my point there IMO
1332 2012-10-25 18:24:13 <gmaxwell> but I don't understand why anyone is bothering to bitch about it here.
1333 2012-10-25 18:24:28 <BlueMatt> gmaxwell: because it came up?
1334 2012-10-25 18:24:39 <jgarzik> gmaxwell: because sometimes it's nice to preach to the choir?  :)
1335 2012-10-25 18:24:42 <gmaxwell> Sorry about that, my fault.
1336 2012-10-25 18:24:45 <Luke-Jr> lol
1337 2012-10-25 18:24:57 <gavinandresen> well, I see complaining about SD as about the same as complaining about transaction spammers... it is a reality that people will do whatever the system allows them to do.
1338 2012-10-25 18:25:17 <BlueMatt> gavinandresen: that is a boneheaded argument
1339 2012-10-25 18:25:23 <midnightmagic> they tend not to do it for sustained periods of time if there is an economic disincentive.
1340 2012-10-25 18:25:24 <Luke-Jr> gavinandresen: also, note that miners have taken up a new transaction rule to exclude transactions beginning with 1dice already
1341 2012-10-25 18:25:31 <gavinandresen> Our job is to create a system where the incentives push people towards Doing The Right THing
1342 2012-10-25 18:25:32 <BlueMatt> gavinandresen: that doesnt mean that we should support it or not complain to/about it
1343 2012-10-25 18:25:33 <gmaxwell> gavinandresen: it's not quite the same, increasing awareness that SD is harmful to the system can be an effective way to reduce the harm. Vs someone who is paying for their flooding themselves.
1344 2012-10-25 18:25:42 <Luke-Jr> so "prohibited by…transaction fee rules" would seem to apply here
1345 2012-10-25 18:25:57 <midnightmagic> gavinandresen: fwiw, I agree strongly with that notion. :)
1346 2012-10-25 18:25:57 <gmaxwell> But agree on incentives [that] push people towards Doing The Right Thing.
1347 2012-10-25 18:26:01 <BlueMatt> gavinandresen: also...we discussed changing tx fee rules...that never went anywhere
1348 2012-10-25 18:26:13 <jrmithdobbs> Luke-Jr: that just makes them change their keys eventually though :(
1349 2012-10-25 18:26:21 <gavinandresen> BlueMatt: sure it did, default transaction inclusion rules sort by fee.
1350 2012-10-25 18:26:23 <BlueMatt> gavinandresen: of course incentives should push people that way, but complaining and raising awareness is a part of the system that you cant ignore
1351 2012-10-25 18:26:27 <Luke-Jr> gavinandresen: also, while you're right on incentives, the existence of a flaw in a system does not justify abusing that flaw until someone fixes it
1352 2012-10-25 18:26:35 <midnightmagic> jrmithdobbs: As long as they operate a public service where the dest. keys are available, they can be blocked by interested miners.
1353 2012-10-25 18:26:38 <gavinandresen> BlueMatt: ... so if you want your transaction ahead of SD transactions, include a little more fee.
1354 2012-10-25 18:26:43 <BlueMatt> gavinandresen: that doesnt help this situation and I meant specifically the tx prio algo
1355 2012-10-25 18:26:47 <gmaxwell> Well I don't know that we _can_ produce an incentive here that actually encourages the right behavior. The partipants are willing to lose money to play... more than rational people are willing to lose making normal transactions.
1356 2012-10-25 18:27:17 <gavinandresen> gmaxwell: you're going to wander into to moral territory on what is a "good" transaction versus a "bad" transaction
1357 2012-10-25 18:27:18 <gmaxwell> Basically if you make gamblers and regular people compete on transaction fees the gamblers will naturally crowd out regular people, because their addiction enables them to pay irrational prices.
1358 2012-10-25 18:27:44 <gmaxwell> gavinandresen: Dice transactions are 'ethically' distinguishable by their lack of need for rapid confirmations.
1359 2012-10-25 18:27:54 stevep has joined
1360 2012-10-25 18:28:05 <Luke-Jr> gmaxwell: perhaps there's a way to discourage gambling sites from abusing the system?
1361 2012-10-25 18:28:21 <gmaxwell> (This was also why I proposed depriortizing txn that reused addresses, simply because I felt that was a good metric to distinguish things that needed rapid processing from ones that didn't)
1362 2012-10-25 18:28:56 <gavinandresen> "patches welcome"
1363 2012-10-25 18:28:56 <jrmithdobbs> gmaxwell: that's actually a pretty good indicator
1364 2012-10-25 18:29:03 * midnightmagic imagines a plug-in logic for txn sorting + priority that doesn't require a restart or a recompile.
1365 2012-10-25 18:29:05 <jrmithdobbs> gmaxwell: why was it disagreed with?
1366 2012-10-25 18:29:09 <gmaxwell> gavinandresen: and I am completely comfortable with saying that transactions which result from the (well established mental illness of gambling addicition are morally inferior. Though certantly not all of SDice's transactions are by addicts.
1367 2012-10-25 18:29:24 <Luke-Jr> gavinandresen: the patches to even start to deal with Dice are likely to be as invasive as ultraprune
1368 2012-10-25 18:29:29 <BlueMatt> jrmithdobbs: we discussed this a few months ago and people blew up complaining that it was "bad" to deprioritize txes based on such things
1369 2012-10-25 18:29:59 <jrmithdobbs> encouraging usage that applies the original security model is "bad?" How?
1370 2012-10-25 18:30:22 <helo> during -loadblock, is the wallet.dat updated very rapidly as it processes the early blocks?
1371 2012-10-25 18:30:24 <gmaxwell> jrmithdobbs: BlueMatt IIRC really didn't like it, other people didn't either.. at least in part it was because I couldn't convince people that I really wasn't special casing sdice there. I think it would be a generally useful huerestic and I wish I thought of it before deepbit started reusing addresses.
1372 2012-10-25 18:30:53 <BlueMatt> gmaxwell: uhh..no I was a bigger proponent of it thatn you iirc
1373 2012-10-25 18:31:03 <gmaxwell> BlueMatt: well crap then. Who was it that hated it?
1374 2012-10-25 18:31:08 <helo> i seem to have corrupted my wallet.dat by quitting at a bad time during -loadblock
1375 2012-10-25 18:31:21 <gmaxwell> helo: with what code version?
1376 2012-10-25 18:31:26 <jrmithdobbs> gmaxwell: it seems a good heurestic to me. It encourages people to use bitcoin the way the security model originally intended them to and by encouraging said good behaviour it lessens their risk to corner case attacks ...
1377 2012-10-25 18:31:33 <gmaxwell> helo: unclean shutdowns are not supposted to be able to corrupt the database.
1378 2012-10-25 18:31:41 <gavinandresen> De-prioritizing transactions we don't like is a much lower priority to me than improving end-user experience for transaction fees.  Although that is lower priority for me than figuring out end-user multisig wallet security....
1379 2012-10-25 18:32:15 <midnightmagic> +1 multisig wallet security! :-)
1380 2012-10-25 18:32:31 <gmaxwell> gavinandresen: its not just a matter of 'don't like' it's that we don't currently have a way to express ("I have a standing relationship with this person, I don't care about confirms, I want worse service than free")
1381 2012-10-25 18:32:40 <helo> gmaxwell: ultraprune head, fcfa7a588e60a6bf72d68821c6a1a3444fb10eba
1382 2012-10-25 18:33:04 brwyatt is now known as Away!~brwyatt@brwyatt.net|brwyatt
1383 2012-10-25 18:33:05 <gmaxwell> helo: whats happening on start? what messages are you getting?
1384 2012-10-25 18:33:17 <helo> was segfaulting in src/qt/bitcoin.cpp:86 frequently until i commented it out
1385 2012-10-25 18:33:20 <helo> on startup
1386 2012-10-25 18:33:45 <helo> "QWidget::repaint: Recursive repaint detected"
1387 2012-10-25 18:34:06 <BlueMatt> gmaxwell: gavinandresen hated it, as did TD
1388 2012-10-25 18:34:38 <BlueMatt> gmaxwell: look in irc logs for around june 14 and ml "Near-term scalability"
1389 2012-10-25 18:35:30 * BlueMatt is still a proponent of the "lock devs in a room until they come out with a new priority algo" idea
1390 2012-10-25 18:35:55 <gmaxwell> BlueMatt: thats good when you have a problem with no solutions, not good when you have too many solutions. :P
1391 2012-10-25 18:36:40 <gmaxwell> In any case, the only change I want to see in priority is txout size optimizations, and I'm mostly indifferent to the details other than I prefer that it's not too non-linear.
1392 2012-10-25 18:36:48 <BlueMatt> gmaxwell: well it atleast allows for more convenient discussion of various solutions in a method more conducive to good discussion than irc
1393 2012-10-25 18:37:00 <gmaxwell> maybe, IRC leaves logs however. :P
1394 2012-10-25 18:37:03 <jrmithdobbs> gmaxwell: it can work in that case too with a decent consensus process
1395 2012-10-25 18:37:33 <jrmithdobbs> (and moderator)
1396 2012-10-25 18:37:55 <BlueMatt> gmaxwell: Im still a big fan of my suggestion to try to keep the ability of users who wish to get started with bitcoin with low total btc counts, but...I wont start that debate again
1397 2012-10-25 18:38:08 <gmaxwell> 11:21 < helo> was segfaulting in src/qt/bitcoin.cpp:86 frequently until i commented it out
1398 2012-10-25 18:38:12 <gmaxwell> @#$@ really?
1399 2012-10-25 18:39:24 <helo> the stack doesn't look happy, so it may not be that line, but after commenting it out i don't get the recursive repaint error, and haven't been able to get it to segfault 0_o
1400 2012-10-25 18:39:27 * BlueMatt votes for a dev g+ hangout to figure out a better priority algo sometime...
1401 2012-10-25 18:39:45 <BlueMatt> anywhoo...back to ecdsa
1402 2012-10-25 18:40:06 <gmaxwell> BlueMatt: I won't use g+ hangouts.  no binary only / opaque software on my normal client system.
1403 2012-10-25 18:40:39 <BlueMatt> and the good floss many-user video chat client is...?
1404 2012-10-25 18:40:45 <helo> src/qt/bitcoin.cpp:86 is the topmost stack entry that isn't inside libQt
1405 2012-10-25 18:41:14 <sipa> BlueMatt: there's this technology called IRC meetings - it's worked pretty well in the past :)
1406 2012-10-25 18:41:21 <gmaxwell> helo: pastebin the backtrace.
1407 2012-10-25 18:41:25 <sipa> though I wouldn't object to a G+ hangout :)
1408 2012-10-25 18:42:03 <BlueMatt> sipa: meh, for meetings its ok, but for big discussions like fees where you have many solutions, irc ends up getting too confusing and eating more time than video/voice would
1409 2012-10-25 18:42:35 <gmaxwell> BlueMatt: seriously, you don't need video of me.. just find a picture of a beard, thats all you need. ;P   But yea, I didn't say there were good alternatives.  But I'm not running some third party binary stuff on a machine I keep cryptographic keys on. Maybe it runs okay over spice from a remote vm? I'll have to try that.
1410 2012-10-25 18:43:09 <BlueMatt> gmaxwell: fair enough, one big pots conference call it is then...
1411 2012-10-25 18:43:20 <BlueMatt> (but no seriously, g+ hangouts work amazingly well)
1412 2012-10-25 18:43:22 <gmaxwell> For voice chat the xiph.org folks use mumble which works pretty well.
1413 2012-10-25 18:43:38 <sipa> gavinandresen, gmaxwell: acks on #1904 ?
1414 2012-10-25 18:43:59 <gmaxwell> or conference calls are okay dokie. Though I generally perfer text to converence calls.
1415 2012-10-25 18:44:03 freakazoid has joined
1416 2012-10-25 18:44:18 <gmaxwell> I thought our regular meetings were productive until they stopped.
1417 2012-10-25 18:44:36 <sipa> i wouldn't mind reintating the
1418 2012-10-25 18:44:37 <sipa> m
1419 2012-10-25 18:44:42 <BlueMatt> gmaxwell: generally remote groups tend to get hard beyond like 3 people, but the video-switching thing in g+ actually helps way more than you'd think
1420 2012-10-25 18:44:53 <BlueMatt> gmaxwell: agreed(ish)
1421 2012-10-25 18:45:03 <gavinandresen> regular IRC meetings can happen... what times/days are good?
1422 2012-10-25 18:45:05 <helo> gmaxwell: http://pastebin.com/KHXycG2Q
1423 2012-10-25 18:46:19 <gmaxwell> helo: looks like the stack is corrupted.
1424 2012-10-25 18:46:34 <BlueMatt> gavinandresen: doodle.com
1425 2012-10-25 18:46:38 AlexWaters has quit (Ping timeout: 246 seconds)
1426 2012-10-25 18:47:16 <sipa> when was the previous schedule? tuesday 22h GMT?
1427 2012-10-25 18:47:35 <gmaxwell> BlueMatt: is there nothing that people can't just color in weekly availablity and then does the intersection?
1428 2012-10-25 18:47:35 <BlueMatt> something like that
1429 2012-10-25 18:47:39 rdponticelli has quit (Ping timeout: 276 seconds)
1430 2012-10-25 18:47:43 <BlueMatt> gmaxwell: thats what doodle.com does
1431 2012-10-25 18:48:01 <BlueMatt> (it makes you enter options, but its close)
1432 2012-10-25 18:48:09 <helo> gmaxwell: def... but i can't get it to segfault when that line is commented out
1433 2012-10-25 18:49:28 <gmaxwell> helo: can you try running bitcoind instead and see if it fails a little more cleanly?
1434 2012-10-25 18:50:09 <helo> given that it coincides with qt painting errors, and i see similar complaints around the web of people getting segfaults after that recursive repaint error, i think it's qt-related
1435 2012-10-25 18:50:13 <helo> i'll try though
1436 2012-10-25 18:51:07 rdponticelli has joined
1437 2012-10-25 18:51:11 <gmaxwell> helo: ah, I thought you were saying it was wallet related.
1438 2012-10-25 18:52:28 <helo> well, in the process of reproducing and trying to figure out what was going on, my wallet was corrupted
1439 2012-10-25 18:53:42 <helo> the replacement (empty) wallet it is using now didn't become corrupted though
1440 2012-10-25 18:53:49 gribble has quit (Remote host closed the connection)
1441 2012-10-25 18:53:50 <helo> through many more attempts
1442 2012-10-25 18:53:59 bitcoinbulletin has quit (Ping timeout: 246 seconds)
1443 2012-10-25 18:54:11 gribble has joined
1444 2012-10-25 18:57:29 <wumpus> I don't think it's qt-related, there's not much that can have gone wrong yet with qt at the splash screen, some kind of memory/stack corruption is more likely
1445 2012-10-25 18:58:02 D34TH has joined
1446 2012-10-25 18:59:54 <helo> probably the 1860 characters in argv
1447 2012-10-25 18:59:57 sgornick has joined
1448 2012-10-25 19:01:14 <gmaxwell> having 1860 characters in argv isn't going to corrupt the stack.
1449 2012-10-25 19:01:26 <gmaxwell> not unless you're on a 16 bit microcontroller. :P
1450 2012-10-25 19:02:00 bitcoinbulletin has joined
1451 2012-10-25 19:02:28 <helo> it is odd that commenting out src/qt/bitcoin.cpp:86 keeps it from segfaulting
1452 2012-10-25 19:03:03 <wumpus> well to be fair if there is corruption any change can change what area is overwritten so change the result...
1453 2012-10-25 19:03:23 molecular has quit (Ping timeout: 268 seconds)
1454 2012-10-25 19:03:26 <helo> yeah...
1455 2012-10-25 19:03:39 molecular has joined
1456 2012-10-25 19:03:55 <sipa> i've been pulling some recent improvements/fixes, and i'd like to do some preview test build of ultraprune
1457 2012-10-25 19:04:13 * wumpus wishes C++ was a safer language...
1458 2012-10-25 19:04:43 <sipa> wumpus: it's very easy, don't use pointers or references :p
1459 2012-10-25 19:04:55 <wumpus> right :p
1460 2012-10-25 19:07:52 toffoo has joined
1461 2012-10-25 19:09:21 <sipa> wumpus: anything you think can be pulled?
1462 2012-10-25 19:10:27 ThomasV has joined
1463 2012-10-25 19:11:15 <wumpus> hmm nothing that cannot wait
1464 2012-10-25 19:11:34 <sipa> ok
1465 2012-10-25 19:11:51 AlexWaters has joined
1466 2012-10-25 19:13:10 <sipa> i'll build current head and post on the forum
1467 2012-10-25 19:15:57 datagutt has quit (Quit: kthxbai)
1468 2012-10-25 19:18:25 tonikt has quit (Quit: Leaving)
1469 2012-10-25 19:19:58 <jgarzik> what's better for picocoin's encrypted wallet storage?  CBC or CFB?
1470 2012-10-25 19:20:14 slush1 has joined
1471 2012-10-25 19:20:15 <jgarzik> it's just one big stream, read and decrypted all at once
1472 2012-10-25 19:20:33 <jgarzik> (or encrypted and written all at once)
1473 2012-10-25 19:21:24 slush has quit (Ping timeout: 244 seconds)
1474 2012-10-25 19:22:32 * jgarzik also wonders if anybody has done a bitcoin-optimized ECDSA for C/C++ ?
1475 2012-10-25 19:22:41 <BlueMatt> other than hal's thing...no
1476 2012-10-25 19:22:52 <BlueMatt> specifically https://github.com/halfinney/bitcoin/commit/dc411b51e0a3cffc4a599382ef0a9b92486f59d5
1477 2012-10-25 19:22:59 <jgarzik> would be nicer to use that, than rebuilding openssl (like I am forced to do for bitcoind)
1478 2012-10-25 19:23:07 <BlueMatt> ah, no that still depends on openssl
1479 2012-10-25 19:23:31 <jgarzik> openssl dependency is OK
1480 2012-10-25 19:23:38 <jgarzik> openssl ECDSA dependency is annoying
1481 2012-10-25 19:23:47 <jgarzik> Fedora strips out ECDSA due to patents
1482 2012-10-25 19:24:32 <helo> what's the maximum length for rpcpassword?
1483 2012-10-25 19:25:04 <helo> in bitcoin.conf
1484 2012-10-25 19:26:42 <jgarzik> helo: that's good question
1485 2012-10-25 19:27:00 <BlueMatt> jgarzik: dunno, hal's thing strips out the need for ecdsa directly, it dpends on ec though...
1486 2012-10-25 19:27:01 <jgarzik> helo: I think the answer is "very big" and "buried in boost"
1487 2012-10-25 19:27:06 <BlueMatt> is it all of the ec stuff or just ecdsa?
1488 2012-10-25 19:27:10 <jgarzik> BlueMatt: all ec stuff
1489 2012-10-25 19:27:25 <jgarzik> BlueMatt: hal's mod only covers verification too, not signing
1490 2012-10-25 19:27:34 <BlueMatt> true
1491 2012-10-25 19:29:22 <gmaxwell> jgarzik: what are you doing for bignum handling?
1492 2012-10-25 19:30:31 <jgarzik> gmaxwell: openssl
1493 2012-10-25 19:30:37 <jgarzik> fedora doesn't strip those out
1494 2012-10-25 19:31:02 <jgarzik> gmaxwell: right now it's cheesy, using BIGNUM for uint256
1495 2012-10-25 19:31:08 <jgarzik> gmaxwell: but BIGNUM is required for script later on
1496 2012-10-25 19:31:13 <gmaxwell> jgarzik: okay, so you probably can just go pull the three functions you need from openssl and bundle them. ::ducks::
1497 2012-10-25 19:31:25 <jgarzik> ;p
1498 2012-10-25 19:31:38 <wumpus> is that possible license-wise?
1499 2012-10-25 19:31:45 <jgarzik> license-wise sure
1500 2012-10-25 19:31:46 <gmaxwell> (I think you just need the sign/validate/and ec point multiplies, plus the constants for the curve)
1501 2012-10-25 19:31:55 <jgarzik> patent-wise....  open question.
1502 2012-10-25 19:31:59 <gmaxwell> openssl wouldn't be free software if it wasn't.
1503 2012-10-25 19:32:01 <jgarzik> Fedora is leaning towards re-enabling EC, AFAIK
1504 2012-10-25 19:32:25 <jgarzik> and I've heard that bitcoin's curve is more patent-safe than other configurations
1505 2012-10-25 19:32:45 <jgarzik> but haven't done enough serious research to take the risk myself
1506 2012-10-25 19:33:08 * jgarzik rebuilds openssl locally, for great justice
1507 2012-10-25 19:33:24 <gmaxwell> jgarzik: I don't believe there is anyone who even alleges just plain non-specially optimized (e.g. the kinds of optimizations that aren't possible for our curve) signing and validation, has issues. Point compression has had certicom making noises about that in the past but DJB's debunking is pretty compelling.  OpenSSL EC includes a bunch of stuff beyond what we use.
1508 2012-10-25 19:34:17 <jgarzik> sounds like somebody needs to do a tiny libbitcoin_ec, on top of openssl ;p
1509 2012-10-25 19:35:34 <gmaxwell> pulling openssl just for two hash functions and a bignum library is kinda lame.
1510 2012-10-25 19:36:09 <jgarzik> bignum, sha1, sha256, ripemd160
1511 2012-10-25 19:36:09 <wumpus> it may be, but you know what they say about hand-rolling crypto
1512 2012-10-25 19:36:26 <jgarzik> you need bignum for script, and I don't fancy writing my own bignum
1513 2012-10-25 19:36:26 <gmaxwell> wumpus: er.. that doesn't apply.
1514 2012-10-25 19:37:08 <jgarzik> init.cpp: In function ‘void Shutdown(void*)’:
1515 2012-10-25 19:37:08 <jgarzik> init.cpp:85:20: warning: deleting object of polymorphic class type ‘CCoinsViewCache’ which has non-virtual destructor might cause undefined behaviour [-Wdelete-non-virtual-dtor]
1516 2012-10-25 19:37:08 <jgarzik> init.cpp:86:20: warning: deleting object of polymorphic class type ‘CCoinsViewDB’ which has non-virtual destructor might cause undefined behaviour [-Wdelete-non-virtual-dtor]
1517 2012-10-25 19:37:10 <wumpus> that's what they always say
1518 2012-10-25 19:37:16 <jgarzik> sipa: ^^ head
1519 2012-10-25 19:37:21 <gmaxwell> wumpus: handrolling crypto has nothing to do with taking an well tested implementation of an officially adopted and widely used hash function and putting it in your code. :P
1520 2012-10-25 19:37:33 <wumpus> gmaxwell: ok that's true
1521 2012-10-25 19:37:35 graingert has joined
1522 2012-10-25 19:37:56 <sipa> jgarzik: yes, it's safe in this case, but it's certainly better practice to use virtual destructors
1523 2012-10-25 19:38:01 <sipa> i'll fix
1524 2012-10-25 19:38:27 <sipa> doesn't crypto++ have +- everything we need?
1525 2012-10-25 19:38:34 <wumpus> gmaxwell: though it is a maintenance risk, you'll have to make sure that any future (security) fixes are propagated
1526 2012-10-25 19:38:57 <wumpus> is crypto++ included un-neutred in fedora?
1527 2012-10-25 19:39:14 <sipa> dunno, but it has very easily reusable code, afaik
1528 2012-10-25 19:40:54 TD has joined
1529 2012-10-25 19:41:23 <gmaxwell> Cryptopp rpm in fedora doesn't seem to have patches that remove anything.
1530 2012-10-25 19:41:41 <gmaxwell> (there are gcc 4.7 fixes, sse2 disable changes, some path adjustments, and an autotools fix)
1531 2012-10-25 19:42:19 <gmaxwell> So there you go.
1532 2012-10-25 19:42:55 gfinn has quit (Ping timeout: 276 seconds)
1533 2012-10-25 19:43:04 <sipa> it has ecp256k1
1534 2012-10-25 19:43:10 <sipa> * secp256k1
1535 2012-10-25 19:48:08 <jgarzik> Since bitcoin is looking towards custom EC verification and other mods anyway, a simple C file that Does What Bitcoin Needs, on top of openssl's BIGNUM, would work immediately for both bitcoind and picocoin
1536 2012-10-25 19:48:28 <jgarzik> that would be minimal code impact, and work around the patent problem
1537 2012-10-25 19:48:39 <jgarzik> switching libraries is far more work than that
1538 2012-10-25 19:50:00 <jgarzik> the work would simply involve copying the basic openssl code, and applying hal's modifications.  that ensures minimal code disruption, as you're using the same APIs as before (basically)
1539 2012-10-25 19:51:04 sirk390 has quit (Quit: Leaving.)
1540 2012-10-25 19:53:05 <gmaxwell> well, I don't think we were planning on doing anything for signing.
1541 2012-10-25 19:53:16 stevep has quit (Quit: Leaving)
1542 2012-10-25 19:53:23 <jgarzik> nod
1543 2012-10-25 19:53:34 <gmaxwell> But it would certantly be nice to make bitcoin more easily built on redhat systems; even once fedora stops stripping ecdsa, it'll be a long time before centos and such catches up.
1544 2012-10-25 19:54:02 <jgarzik> yes, part of the exercise is simple code copying, to get around this patent worry
1545 2012-10-25 19:54:27 <sipa> meh, cryptopp is just a few source files, and has a much cleaner interface
1546 2012-10-25 19:54:51 <gmaxwell> sipa: we can't replace openssl entirely with cryptopp in bitcoin, though I wish we could.
1547 2012-10-25 19:54:52 <sipa> it's more work if you want to switch everything away, though
1548 2012-10-25 19:55:11 <sipa> gmaxwell: except by making rpc-ssl optional :)
1549 2012-10-25 19:55:28 <wumpus> that could easily be made optional again
1550 2012-10-25 19:55:29 <gmaxwell> yea.
1551 2012-10-25 19:55:43 <wumpus> it was made non-optional because we need openssl anyway, not for any other reason
1552 2012-10-25 19:55:50 <gmaxwell> well, IMO it's a stupid feature. stunnel ftw. :P
1553 2012-10-25 19:55:58 <wumpus> that, too...
1554 2012-10-25 19:56:05 gfinn has joined
1555 2012-10-25 19:56:39 optimator_ is now known as optimator
1556 2012-10-25 19:57:34 vampireb_ has joined
1557 2012-10-25 19:59:13 * jgarzik wonders how secure this example is, http://saju.net.in/code/misc/openssl_aes.c.txt
1558 2012-10-25 20:00:06 * helo frowns
1559 2012-10-25 20:00:12 <helo> rm -rf ~/.bitcoin; ./bitcoin-qt
1560 2012-10-25 20:00:17 <helo> [...]
1561 2012-10-25 20:00:18 <helo> Segmentation fault (core dumped)
1562 2012-10-25 20:00:38 <sipa> :o
1563 2012-10-25 20:00:38 Maccer has quit (Ping timeout: 260 seconds)
1564 2012-10-25 20:00:40 <helo> all of this time trying to single out the file that was causing it
1565 2012-10-25 20:00:42 <sipa> what version?
1566 2012-10-25 20:00:49 <helo> yours ;)
1567 2012-10-25 20:00:54 <gmaxwell> jgarzik: thats pretty similar to what we do for wallet encryption. (though we use SHA512)
1568 2012-10-25 20:00:55 <helo> fcfa7a588e60a6bf
1569 2012-10-25 20:01:28 <sipa> hmm, there have been some pretty signaficant fixes since that
1570 2012-10-25 20:01:48 <helo> orly
1571 2012-10-25 20:01:54 Maccer has joined
1572 2012-10-25 20:03:16 <sipa> does it crash immediately, or do you get something in debug.log?
1573 2012-10-25 20:03:32 <helo> so ultraprune branch from https://github.com/sipa/bitcoin.git is not the thing to test?
1574 2012-10-25 20:03:39 <gmaxwell> ugh.
1575 2012-10-25 20:03:49 PhantomSpark has joined
1576 2012-10-25 20:04:08 <sipa> helo: it's been merged a week ago
1577 2012-10-25 20:04:12 <sipa> in mainline
1578 2012-10-25 20:04:21 <gmaxwell> reason 342 I hate github, and git code management culture in general
1579 2012-10-25 20:04:41 <sipa> i should delete my unused/merged branches
1580 2012-10-25 20:04:54 <wumpus> hate is a very strong word here...
1581 2012-10-25 20:05:11 <gmaxwell> wumpus: hating, my boy, is an art.
1582 2012-10-25 20:05:12 <helo> oh... i noticed it had a change 4 days ago
1583 2012-10-25 20:05:28 <sipa> i have some minor nitpicks about git/github, but those are hardly worth mentioning
1584 2012-10-25 20:05:45 maaku has joined
1585 2012-10-25 20:06:03 <wumpus> I think github is pretty great personally, there are some small things (like displaying of large diffs) but apart from that...
1586 2012-10-25 20:06:30 <gmaxwell> wumpus: it's worse when you have a non-github hosted project.. and someone goes to get your source so they go to github and find some $random_insane_non_coder's fork from a two year old codebase... and you waste a half hour trying to figure out whats going wrong. :)
1587 2012-10-25 20:06:42 <sipa> haha
1588 2012-10-25 20:07:04 <wumpus> yes,that's annoying, but that's more a case of stupid users, no source management system can prevent that :)
1589 2012-10-25 20:07:11 <gmaxwell> not a problem with github itself but just a consequence of distributed SCM's an people randomly making public repos.
1590 2012-10-25 20:07:36 <sipa> so nice, a decentralized version control system, completely centralized in one service!
1591 2012-10-25 20:08:02 <BlueMatt> gmaxwell: yea...a more formal way to define "MERGE FROM HERE" in git would be nice
1592 2012-10-25 20:08:09 <gmaxwell> wumpus: well random fools had no idea how to setup a copy of your SVN repository. :P  now there is a webform.  and _lots_ of people think git is synonymous with github.
1593 2012-10-25 20:08:10 <wumpus> well yes it'd be nice if you could mark repos in github as just 'a fork', currently it's like all projects you forked for making a small change are your project :P
1594 2012-10-25 20:08:54 <sipa> BlueMatt: hmm?
1595 2012-10-25 20:09:04 <gmaxwell> E.g. I got a very sad but funny email from an important person in the IETF who was concerned that our working group was keeping all it's source history inside github (we weren't though we used git) instead of posting it on the IETF trac install.
1596 2012-10-25 20:09:22 <gmaxwell> BlueMatt: well you can set origins for all remotes on your repositories.
1597 2012-10-25 20:10:11 <BlueMatt> sipa: a general file in git that is standard to mean "$this represents upstream of upstream(s)" and doesnt get changed unless you fork and change manually would be kinda nice (sometimes)
1598 2012-10-25 20:10:41 <sipa> hmm
1599 2012-10-25 20:11:09 <wumpus> well I suppose you could make it a convention, like LICENSE files
1600 2012-10-25 20:11:26 <BlueMatt> (not that I expect any noobs who cant tell where upstream is anyway to be checking such a file, but still)
1601 2012-10-25 20:11:40 <gmaxwell> well if it was a norm GITHUB and such would display it.
1602 2012-10-25 20:11:46 <gmaxwell> "This may not be the code you are looking for"
1603 2012-10-25 20:12:03 <BlueMatt> yea...
1604 2012-10-25 20:12:26 <wumpus> so the problem is more with github than with git
1605 2012-10-25 20:12:27 Diapolo has joined
1606 2012-10-25 20:12:42 <wumpus> feature forks look too much like original projects
1607 2012-10-25 20:13:01 <Diapolo> good evening
1608 2012-10-25 20:13:07 <wumpus> hey Diapolo
1609 2012-10-25 20:13:16 <gmaxwell> wumpus: it happens without github too, but github also caters to a less sophicated audience that don't figure it out for themselves.
1610 2012-10-25 20:13:27 <Diapolo> nice design for that warning message :)
1611 2012-10-25 20:13:44 <wumpus> gmaxwell: github is the discovery mechanism in this case, and that's the problem, not the scm
1612 2012-10-25 20:13:48 <wumpus> Diapolo: thanks
1613 2012-10-25 20:14:34 <wumpus> the search function in github is also lacking, it usually finds a lot of forks of a project except for the original one :p
1614 2012-10-25 20:14:55 <gmaxwell> wumpus: fair enough.  Obviously the market solution to this problem is to create a bot that grabs random projects forks them on github and adds backdoors.
1615 2012-10-25 20:15:13 <Diapolo> I hope I don't need to learn a new syntax because we leave Github? What's the ongoing discussion?
1616 2012-10-25 20:15:26 <wumpus> hehe, backdoors or other random surprises / random code mutations
1617 2012-10-25 20:15:34 <gmaxwell> Diapolo: no no this is just curmudgeon whining.
1618 2012-10-25 20:15:35 <sipa> let's switch to CVS
1619 2012-10-25 20:15:36 <wumpus> noooo
1620 2012-10-25 20:15:38 <sipa> *ducks*
1621 2012-10-25 20:15:54 <eian> I've been harvesting random pastes on pastebin - last night I found a list of 1000 open http proxies
1622 2012-10-25 20:16:03 <gmaxwell> sipa: At my work we switched off CVS to SVN only about a year and a half ago. (for about 60 million lines of code)
1623 2012-10-25 20:16:31 <gmaxwell> eian: a good source used to be english wikipedia's block log, though I haven't checked for a while.
1624 2012-10-25 20:16:43 <wumpus> nothing like ghetto scm, just copy the file to <name>.<number.1> after any change then sync with rsync!
1625 2012-10-25 20:16:51 <BlueMatt> gmaxwell: give me a few minutes...
1626 2012-10-25 20:16:58 <gmaxwell> Diapolo: in any case even if we stopped using github we wouldn't stop using git.
1627 2012-10-25 20:17:13 <gmaxwell> Diapolo: it's perfectly possible to use git without github, and lots of people do.
1628 2012-10-25 20:17:13 <wumpus> collision? too bad
1629 2012-10-25 20:18:51 <Diapolo> gmaxwell: I had a hard time learning to use it ^^
1630 2012-10-25 20:19:14 <wumpus> yes it has a pretty steep learning curve but it's worth it
1631 2012-10-25 20:21:49 freakazoid has quit (Ping timeout: 272 seconds)
1632 2012-10-25 20:23:32 <Diapolo> sipa: Why did you switch order for if (pblocktree) and if (pcoinsTip) in Shutdown()?
1633 2012-10-25 20:24:01 <sipa> Diapolo: see the commit message
1634 2012-10-25 20:24:12 <Diapolo> that I did not yet :-P
1635 2012-10-25 20:24:31 <Diapolo> Estetics?
1636 2012-10-25 20:24:56 <Diapolo> ah the real one ^^
1637 2012-10-25 20:25:26 maaku has quit (Quit: maaku)
1638 2012-10-25 20:26:08 <gmaxwell> I wonder if there is a way to create pull request on github without having a publically visible fork?
1639 2012-10-25 20:26:44 <gmaxwell> (the classic, non-github, method for a pull request is basically to git format-patch and email, which at least doesn't create a trap for inattentive people)
1640 2012-10-25 20:27:43 <wumpus> gmaxwell: no, there isn't afaik :s
1641 2012-10-25 20:27:59 <sipa> i think you can create a branch, create a pullreq from it, and delete the branch
1642 2012-10-25 20:28:20 <wumpus> you will still have the fork in your list of projects though
1643 2012-10-25 20:29:04 <Diapolo> nice I deleted a local branch because of an auto-complete, while compiling Bitcoin-Qt in the background (lag) ... how can I fetch it back from my online repo now?
1644 2012-10-25 20:29:41 <sipa> git checkout origin/branchname; git checkout -b branchname
1645 2012-10-25 20:30:17 <sipa> (first switch to the read-only "remote branch", then create a new branch locally based on that state)
1646 2012-10-25 20:31:33 <Diapolo> you are my hero, I never needed to do this
1647 2012-10-25 20:32:52 copumpkin is now known as john_smith
1648 2012-10-25 20:35:00 john_smith is now known as copumpkin
1649 2012-10-25 20:35:00 <sipa> oh no, another john smith!
1650 2012-10-25 20:35:10 <sipa> sync fail
1651 2012-10-25 20:36:33 <BlueMatt> spend a day reimplementing a smarter ec multiply algorithm only to find it was just as fast as the dumb one...priceless
1652 2012-10-25 20:37:11 freakazoid has joined
1653 2012-10-25 20:38:07 Joric has joined
1654 2012-10-25 20:41:48 <Diapolo> BlueMatt: such a thing sucks ^^ I remember when I was trying to save general purpos registers with a damn mining kernel, you put in much time, profile and see it did't help anything
1655 2012-10-25 20:41:55 <gmaxwell> BlueMatt: oh hey, well if you wrote point multiply code in C you could give it to jeff, one step closer to his openssl freedom. :P
1656 2012-10-25 20:42:21 <BlueMatt> gmaxwell: its in bitcoinj...
1657 2012-10-25 20:43:04 <BlueMatt> gmaxwell: (but much of the actual code is copied from openssl, though a few things are copied from bouncycastle where they are marginally faster in a few cases during init)
1658 2012-10-25 20:44:51 <BlueMatt> (and the multiply itself is custom, the ecpoint class functions are copied)
1659 2012-10-25 20:49:23 <BlueMatt> gmaxwell: (and Im near giving up to go jni...its still ~5x slower than openssl and Im largely out of things to do to it...
1660 2012-10-25 20:49:33 <BlueMatt> so...maybe I will write it in C
1661 2012-10-25 20:50:36 sirk390 has joined
1662 2012-10-25 20:51:01 <BlueMattBot> Project Bitcoin build #121: STILL FAILING in 2 hr 4 min: http://jenkins.bluematt.me/job/Bitcoin/121/
1663 2012-10-25 20:51:13 <gmaxwell> die
1664 2012-10-25 20:52:04 <BlueMatt> yea...lemme just go disable irc reporting
1665 2012-10-25 20:52:42 <gmaxwell> [OT] There are a couple people in here who might have fun with this: http://www.webmproject.org/vpnext-challenge/  (and maybe even a couple who don't work for google who would), so I thought I'd pass it on.
1666 2012-10-25 20:53:26 * BlueMatt wishes he was smart enough for that stuff...
1667 2012-10-25 20:53:52 slush has joined
1668 2012-10-25 20:55:26 slush1 has quit (Ping timeout: 244 seconds)
1669 2012-10-25 20:55:28 <gmaxwell> BlueMatt: pshaw. It's not rocket science. :P
1670 2012-10-25 20:56:39 <BlueMatt> meh, rocket  science I could do...compression...
1671 2012-10-25 20:57:07 <Diapolo> I could work on the strings :-P come on, don't moan
1672 2012-10-25 20:57:37 <sipa> i've some experience with image compression, but not with the type that is fact enough to use :)
1673 2012-10-25 20:57:50 <sipa> *fast
1674 2012-10-25 20:57:52 <gmaxwell> sipa: Yea, they don't give a metric for 'greatest gains'
1675 2012-10-25 20:58:25 <gmaxwell> "I have given you a per pixel compression model that uses 10 gigs of state and evaluates all previously encoded pixels per pixel. It improves compression by 30%"
1676 2012-10-25 20:58:41 <BlueMatt> heh
1677 2012-10-25 21:00:17 <sipa> gmaxwell: ever noticed this in my github repo: https://github.com/sipa/JIF ?
1678 2012-10-25 21:00:26 <Diapolo> By the way has OpenSSL support for AMD/Intel AES instruction set, if available to speedup things?
1679 2012-10-25 21:02:17 conman has joined
1680 2012-10-25 21:02:41 <gmaxwell> BlueMatt: compression is easier than this distributed algorithim stuff we do. :P Though media compression involve more linear algebra.
1681 2012-10-25 21:03:25 <gmaxwell> Diapolo: it does if built for it. it's ~irrelevant to us though.
1682 2012-10-25 21:03:35 EasyAt is now known as EasyAt|
1683 2012-10-25 21:03:45 <Diapolo> just wanted to know the implementation state
1684 2012-10-25 21:04:37 OneEyed has quit (Ping timeout: 240 seconds)
1685 2012-10-25 21:06:15 <Diapolo> gmaxwell: seems you are the only person in the world that has a reachable TOR hs node for the testnet ^^ 6hgmaxwellgpv2oe.onion:18333
1686 2012-10-25 21:08:30 <gmaxwell> Diapolo: you could run one, and then there would be two!
1687 2012-10-25 21:08:47 <sipa> hmm
1688 2012-10-25 21:08:48 random_cat has quit (Remote host closed the connection)
1689 2012-10-25 21:09:46 <Diapolo> gmaxwell: my PC is not running 24/7 but from time to time it is online a few hours :)
1690 2012-10-25 21:09:53 <helo> should i be afraid that 50% of onion addresses can be easily vanitygen'd?
1691 2012-10-25 21:10:15 <gmaxwell> helo: every bit doubles the difficulty.
1692 2012-10-25 21:10:23 random_cat has joined
1693 2012-10-25 21:10:42 <gmaxwell> helo: and since they are base32, every letter increases the difficulty 5 fold.
1694 2012-10-25 21:10:47 <Diapolo> mine currently is: 36zog7xdlcb2yeog.onion I'm anonymous ^^
1695 2012-10-25 21:11:07 <helo> i'm just used to the coushy massive bitcoin addresses
1696 2012-10-25 21:11:09 <gmaxwell> there is a much faster vanitygenerator now, I could get a couple more characters. :P
1697 2012-10-25 21:11:38 <gmaxwell> helo: massive address perhaps, but .. totally unauthenticated connections, unless you use a hidden service. :P
1698 2012-10-25 21:11:58 paraipan has quit (Ping timeout: 276 seconds)
1699 2012-10-25 21:11:58 drizztbsd has quit (Remote host closed the connection)
1700 2012-10-25 21:12:15 maaku has joined
1701 2012-10-25 21:12:58 <sipa> can someone try to connect to sipa6eadr7df6jfi.onion:8333 ?
1702 2012-10-25 21:13:30 * BlueMatt 's vanity address is still generated with the original cpu-based bitcoind patch :)
1703 2012-10-25 21:13:53 <sipa> BlueMatt: same
1704 2012-10-25 21:15:28 <Diapolo> sipa: got you "sipa6eadr7df6jfi.onion:8333"
1705 2012-10-25 21:16:45 <sipa> Diapolo: seems so, good!
1706 2012-10-25 21:17:22 OneEyed has joined
1707 2012-10-25 21:17:29 paraipan has joined
1708 2012-10-25 21:18:37 Diapolo has left ()
1709 2012-10-25 21:37:46 skeledrew has quit (Read error: Connection reset by peer)
1710 2012-10-25 21:38:00 skeledrew has joined
1711 2012-10-25 21:41:17 _W_ has quit (Ping timeout: 240 seconds)
1712 2012-10-25 21:42:27 skeledrew has quit (Ping timeout: 244 seconds)
1713 2012-10-25 21:49:00 skeledrew has joined
1714 2012-10-25 21:52:03 pnicholson has quit (Quit: pnicholson)
1715 2012-10-25 21:53:18 freakazoid has quit (Ping timeout: 244 seconds)
1716 2012-10-25 22:00:02 <TD> BlueMatt: odd that it's 5x slower. jvm isn't _that_ bad a compiler. would be interesting to profile both openssl and your implementation to see where the holdup is
1717 2012-10-25 22:00:55 <BlueMatt> TD: I have one more major change to the multiply algorithm itself to make first, but then I'll probably do some more profiling and give up and use jni...
1718 2012-10-25 22:01:27 <TD> jni itself imposes some overhead, btw. not sure how much relative to an ecc verification.
1719 2012-10-25 22:01:30 <TD> probably not much
1720 2012-10-25 22:01:46 <BlueMatt> yea, I dont expect it to ever reach native's speed
1721 2012-10-25 22:01:48 <gmaxwell> If you do 'batches' the jni overhead would be nothing I'm sure.
1722 2012-10-25 22:02:02 <BlueMatt> probably not much, but...some
1723 2012-10-25 22:02:09 <TD> for this sort of code i don't see any theoretical reason why it couldn't match (or near match) native speed
1724 2012-10-25 22:02:14 <gmaxwell> well sure, they'll be a copy of each object most likely.
1725 2012-10-25 22:02:35 <TD> are you using immutable BigIntegers?
1726 2012-10-25 22:02:38 <BlueMatt> TD: agreed...it may be hiding in BigInteger though
1727 2012-10-25 22:02:40 <BlueMatt> TD: and that
1728 2012-10-25 22:02:43 <sipa> doesn't OpenSSL use CPU-specific assembly?
1729 2012-10-25 22:02:50 <TD> for ECC?
1730 2012-10-25 22:03:00 <BlueMatt> (but openssl's BigIntegers are also immutable, for the most part)
1731 2012-10-25 22:03:05 <BlueMatt> sipa: no
1732 2012-10-25 22:03:09 <sipa> immutable BigIntegers? so tyyou're allocating an object for every addition and multiplicatioN?
1733 2012-10-25 22:03:12 <BlueMatt> well, maybe for BigInteger itself
1734 2012-10-25 22:03:22 <BlueMatt> sipa: yes, its incredibly slow
1735 2012-10-25 22:03:31 <sipa> why?
1736 2012-10-25 22:03:37 <TD> indeed. object allocation in the jvm is cheap but you still have to collect them ...
1737 2012-10-25 22:03:37 <sipa> that seems like the first thingyou should try to avoid
1738 2012-10-25 22:03:44 <BlueMatt> because I didnt want to write my own BigInteger class?
1739 2012-10-25 22:03:52 yellowhat has quit (Read error: Connection reset by peer)
1740 2012-10-25 22:03:59 <sipa> i believe the java source has a mutable one internally
1741 2012-10-25 22:04:11 <TD> it does
1742 2012-10-25 22:04:13 <TD> http://stackoverflow.com/questions/890968/what-is-the-purpose-of-java-math-mutablebiginteger
1743 2012-10-25 22:04:16 <BlueMatt> it does, but afaict its not complete
1744 2012-10-25 22:04:19 <TD> which is stupid. not sure why it's not exported
1745 2012-10-25 22:04:40 <BlueMatt> or...iirc
1746 2012-10-25 22:05:16 <TD> but that assumes the time is going to GC.
1747 2012-10-25 22:05:59 <TD> actually allocating and initializing the object is (or should be) fast, just a pointer increment really. i wonder if javas BigInteger itself is a lot slower than openssl
1748 2012-10-25 22:06:05 maaku has quit (Quit: maaku)
1749 2012-10-25 22:06:32 maaku has joined
1750 2012-10-25 22:06:37 maaku has quit (Client Quit)
1751 2012-10-25 22:06:37 <BlueMatt> TD: my question as well
1752 2012-10-25 22:06:55 <TD> sometimes i think maybe signature checking should be run external to the main process, like mining is
1753 2012-10-25 22:07:05 <sipa> i think it should
1754 2012-10-25 22:07:15 <TD> validating nodes would just do RPCs to signature checkers that can run on the same machine, or sharded over external machines
1755 2012-10-25 22:07:20 <BlueMatt> plugins for sigchecking!
1756 2012-10-25 22:07:22 <sipa> ah, that external
1757 2012-10-25 22:07:24 <TD> that way you can scale up signature checking more or less arbitrarily
1758 2012-10-25 22:07:56 <sipa> well, as long as we have a 20k sigop limit, there's no need for that in the steady tate
1759 2012-10-25 22:08:04 <TD> nope, sure. but one day :)
1760 2012-10-25 22:08:54 <gmaxwell> I'm not too worried about futures where bitcoin is just a really bandwidth inefficient way to have centeralized payment processing network. :P
1761 2012-10-25 22:09:08 yellowhat has joined
1762 2012-10-25 22:09:18 freakazoid has joined
1763 2012-10-25 22:09:20 <BlueMatt> let the centralization's coders worry about it :)
1764 2012-10-25 22:09:35 <BlueMatt> (ie people who receive a paycheck)
1765 2012-10-25 22:09:46 <TD> pft. if we ever reach those traffic levels 24 core machines will be given to children as christmas presents
1766 2012-10-25 22:09:55 <BlueMatt> heh
1767 2012-10-25 22:09:59 * BlueMatt dreams of that day
1768 2012-10-25 22:10:07 <gmaxwell> TD: if its a 24 core machine you just have threads. :P
1769 2012-10-25 22:10:23 <sipa> TD: you're talking about 24-core phone, right, with 1 TB of RAM?
1770 2012-10-25 22:10:33 <TD> sssh no leaking!
1771 2012-10-25 22:10:41 <sipa> oops!
1772 2012-10-25 22:10:44 <AlexWaters> BlueMatt: is your buildbot capable of building bitcoin-x.x.x-win32-setup.exe or a bitcoin-qt.exe if I send it something like github.com/bitcoin/bitcoin/tree/xxx?
1773 2012-10-25 22:11:04 <sipa> AlexWaters: i have a script that does that
1774 2012-10-25 22:11:16 <sipa> (using gitian)
1775 2012-10-25 22:11:30 Joric has quit ()
1776 2012-10-25 22:11:32 <BlueMatt> TD: thats what the next nexus tomorrow is, right?
1777 2012-10-25 22:11:50 <BlueMatt> AlexWaters: if its a pull request, you get a bitcoin-qt.exe automagically (well...once I fix it...)
1778 2012-10-25 22:12:15 <AlexWaters> i'd like to create a page where laymen can download a build off of a particular branch (selected from a drop-down)
1779 2012-10-25 22:12:29 <AlexWaters> a page where i can give it to people and tell them to download one and test stuff
1780 2012-10-25 22:13:03 <BlueMatt> AlexWaters: pull requests always have a link to those files, and jenkins provides up to date copies of master
1781 2012-10-25 22:13:07 <AlexWaters> sorry that was obscure. a page where testers can download a build of a pull request and play with it in a sandbox
1782 2012-10-25 22:13:08 <BlueMatt> (well, again, once I fix the current builds)
1783 2012-10-25 22:13:30 <AlexWaters> BlueMatt: if you have time, can you ping me when it's good to go?
1784 2012-10-25 22:13:36 <gmaxwell> TD: I suppose a GPU implementation of ECDSA would be an argument for process seperating it and making it pluggable though.
1785 2012-10-25 22:13:37 <BlueMatt> AlexWaters: if you want access programatically, you can get the list of commit-ids with builds at http://jenkins.bluematt.me/pull-tester/
1786 2012-10-25 22:13:50 <BlueMatt> AlexWaters: and then match that to a pull request using github's api
1787 2012-10-25 22:14:04 copumpkin has quit (Quit: Computer has gone to sleep.)
1788 2012-10-25 22:14:05 <BlueMatt> AlexWaters: well the ultraprune merge broke a few things, I just need to go debug why its not building right...
1789 2012-10-25 22:14:19 <TD> i haven't encountered anyone successfully speeding up ECDSA using special hardware. all the speed benefits in the literature seem to come from batching and more optimal algorithms that run on cpus
1790 2012-10-25 22:14:46 <BlueMatt> TD: I could have sworn I saw a ecdsa on gpu paper...
1791 2012-10-25 22:15:00 <BlueMatt> though I dont recall details of timing...
1792 2012-10-25 22:15:36 <TD> one benefit would be if you wanted to bootstrap a new node and it was taking forever to catch up from the last checkpoint, you could temporarily bring up a ton of sigchecking capacity on amazon ec2 or google compute engine, then release it again once you caught up with the head
1793 2012-10-25 22:15:38 <gmaxwell> TD: certantly its possible to do that... a FPGA implemention which just unrolls the multiplies should be stupidly fast and would fit on any of the FPGAs people have been using for mining.
1794 2012-10-25 22:15:39 <sipa> it would certainly surprise me that high-end GPU's now can't do ECDSA faster than CPU's
1795 2012-10-25 22:15:57 <gmaxwell> they certantly do point adds faster than cpus.
1796 2012-10-25 22:16:03 <TD> well, it doesn't seem necessary anyway does it
1797 2012-10-25 22:16:09 <sipa> there are GPU's that do what... 50M EC additions per second?
1798 2012-10-25 22:16:18 <TD> even just a few cores can beat all of VisaNet, tx/sec wise
1799 2012-10-25 22:16:29 <sipa> that's +- 100k EC multiplications per second
1800 2012-10-25 22:16:39 <AlexWaters> BlueMatt: neat!
1801 2012-10-25 22:16:40 <sipa> even when just done in serial
1802 2012-10-25 22:16:45 <TD> ok. maybe it's the case then.
1803 2012-10-25 22:17:08 <AlexWaters> BlueMatt: thanks guys. i'll see if i can do something with it
1804 2012-10-25 22:17:20 <BlueMatt> that would be awesome
1805 2012-10-25 22:17:29 <gmaxwell> sipa: for vanity gen they need to do the addition, sha256, and ripemd160, then the pattern match.
1806 2012-10-25 22:18:18 <sipa> gmaxwell: yes, conservative estimates
1807 2012-10-25 22:18:35 RazielZ has quit (Ping timeout: 246 seconds)
1808 2012-10-25 22:18:36 <sipa> the 50M/s number is just from memory, i may be wrong
1809 2012-10-25 22:19:04 sacredchao has joined
1810 2012-10-25 22:19:21 <gmaxwell> I dunno what it's up to now, but my 5830s were doing something like 20M vanitygen/s and that was many months ago.
1811 2012-10-25 22:20:45 gavinandresen has quit (Quit: gavinandresen)
1812 2012-10-25 22:21:35 <sipa> ok, assuming a linear scale, the highest-end graphic cards should do 70-80 M/s
1813 2012-10-25 22:23:14 <sipa> and one sig verification is something like 5-6 multiplications?
1814 2012-10-25 22:24:25 <sipa> hmmm, with such numbers, a high-end 8-core CPU would beat it
1815 2012-10-25 22:24:26 <BlueMatt> its like no mults...its like 256 doubles and 2x that many adds
1816 2012-10-25 22:24:39 <sipa> oh, right
1817 2012-10-25 22:24:59 <BlueMatt> well 128 and 4x for hals code
1818 2012-10-25 22:25:20 <sipa> are doubles more expensive than adds?
1819 2012-10-25 22:25:56 agricocb has quit (Quit: Leaving.)
1820 2012-10-25 22:26:00 <BlueMatt> less
1821 2012-10-25 22:26:22 <sipa> ok so why aim for less doubles and more adds?
1822 2012-10-25 22:26:51 <BlueMatt> yes
1823 2012-10-25 22:26:51 <BlueMatt> or...less of everything ;)
1824 2012-10-25 22:29:26 <gmaxwell> BlueMatt: have you written any openCL yet? I'm sensing a project that would apply your recent spelunking in hal's code and add something to your resume. :P
1825 2012-10-25 22:30:24 <BlueMatt> not yet...its on the eventually maybe to make this go faster...
1826 2012-10-25 22:35:22 copumpkin has joined
1827 2012-10-25 22:44:22 <TD> oooh, tpm 2 spec
1828 2012-10-25 22:44:51 <TD> with ecc support
1829 2012-10-25 23:05:43 nsh has quit (Ping timeout: 276 seconds)
1830 2012-10-25 23:05:58 Belkaar has quit (Ping timeout: 256 seconds)
1831 2012-10-25 23:08:45 Belkaar has joined
1832 2012-10-25 23:08:50 sacredchao has quit (Remote host closed the connection)
1833 2012-10-25 23:14:41 sacredchao has joined
1834 2012-10-25 23:15:34 TD has quit (Quit: TD)
1835 2012-10-25 23:17:51 ThomasV has quit (Read error: Operation timed out)
1836 2012-10-25 23:36:44 sirk390 has quit (Quit: Leaving.)
1837 2012-10-25 23:37:51 <optimator> hello
1838 2012-10-25 23:38:50 <optimator> is sendrawtransaction the preferred way of submitting a block to the network?
1839 2012-10-25 23:39:44 <optimator> oops, I mean submitblock
1840 2012-10-25 23:40:15 Graet has quit (Quit: ZNC - http://znc.sourceforge.net)
1841 2012-10-25 23:40:52 forrestv has quit (Quit: Coyote finally caught me)
1842 2012-10-25 23:41:18 forrestv has joined
1843 2012-10-25 23:46:58 <jgarzik> optimator: probably yes
1844 2012-10-25 23:48:23 <optimator> thanks. The hex string is the header+all txns?
1845 2012-10-25 23:49:17 DaQatz has quit (Read error: Operation timed out)
1846 2012-10-25 23:49:35 <Luke-Jr> optimator: and encoded txn count
1847 2012-10-25 23:49:41 <Luke-Jr> optimator: https://en.bitcoin.it/wiki/BIP_0022
1848 2012-10-25 23:50:25 <sipa> and encoded as here: https://en.bitcoin.it/wiki/Protocol_specification#block
1849 2012-10-25 23:51:29 <Luke-Jr> ah yeah, sipa's link is probably more useful
1850 2012-10-25 23:51:59 servvs has quit (Read error: Operation timed out)
1851 2012-10-25 23:54:58 <optimator> I've read both. If I concat the header with the transactions that is what is needed, yes?
1852 2012-10-25 23:56:24 <Luke-Jr> optimator: no, you're missing the txn count
1853 2012-10-25 23:57:21 <optimator> right, the var_int and then the txns?
1854 2012-10-25 23:59:49 <Luke-Jr> right