1 2012-12-18 00:00:12 knotwork has quit (Read error: Connection reset by peer)
   2 2012-12-18 00:00:47 nethershaw has quit (Remote host closed the connection)
   3 2012-12-18 00:00:54 nethershaw has joined
   4 2012-12-18 00:07:03 pklaus has joined
   5 2012-12-18 00:07:31 one_zero has quit (Read error: Connection reset by peer)
   6 2012-12-18 00:08:12 one_zero has joined
   7 2012-12-18 00:08:16 one_zero has quit (Excess Flood)
   8 2012-12-18 00:08:33 <gmaxwell> jgarzik: it's hard for me to imagine that someone who enjoyed daemon wouldn't enjoy this hard sci-fi AI novella: http://www.fimfiction.net/story/62074/friendship-is-optimal
   9 2012-12-18 00:09:34 jgarzik has quit (Read error: Operation timed out)
  10 2012-12-18 00:09:52 jgarzik has joined
  11 2012-12-18 00:10:16 jgarzik is now known as Guest91753
  12 2012-12-18 00:11:09 one_zero has joined
  13 2012-12-18 00:12:05 knotwork has joined
  14 2012-12-18 00:12:05 knotwork has quit (Changing host)
  15 2012-12-18 00:12:05 knotwork has joined
  16 2012-12-18 00:14:32 dvide has quit ()
  17 2012-12-18 00:19:28 one_zero has quit (Read error: Connection reset by peer)
  18 2012-12-18 00:21:50 one_zero has joined
  19 2012-12-18 00:23:59 pklaus has quit (Quit: Computer has gone to sleep.)
  20 2012-12-18 00:24:15 Someguy123 has quit (Excess Flood)
  21 2012-12-18 00:26:31 Guest30497 has joined
  22 2012-12-18 00:27:44 pklaus has joined
  23 2012-12-18 00:29:55 RainbowDashh has joined
  24 2012-12-18 00:31:24 <midnightmagic> ... lol, no idea why, but the gitian builder refuses to work for me. when it's building the sha256sum of the installed package manifests, for some reason apt-cacher-ng starts refusing connections and the process fails during the dpkg-query -W -f '${Package}\n' | xargs -n 50 apt-get install --reinstall -y -d step.
  25 2012-12-18 00:31:33 asa1024 has joined
  26 2012-12-18 00:31:39 <midnightmagic> i've already upped the apt-cacher-ng maximum limits.
  27 2012-12-18 00:32:12 Guest30497 has quit (Max SendQ exceeded)
  28 2012-12-18 00:32:32 <midnightmagic> (put a no-maximum limit of -1 in there, and upped the var: MaxStandbyConThreads: 12
  29 2012-12-18 00:32:38 rdymac has quit (Quit: Saliendo)
  30 2012-12-18 00:32:42 <midnightmagic> so MaxConThreads: -1
  31 2012-12-18 00:33:52 owowo has quit (Remote host closed the connection)
  32 2012-12-18 00:35:23 one_zero has quit (Read error: Connection reset by peer)
  33 2012-12-18 00:37:00 <midnightmagic> of course there are no obvious errors in apt-cacher-ng grrr
  34 2012-12-18 00:38:22 Someguy1234 has joined
  35 2012-12-18 00:39:20 owowo has joined
  36 2012-12-18 00:39:50 one_zero has joined
  37 2012-12-18 00:40:05 Z0rZ0rZ0r has quit (Quit: Wheeeee)
  38 2012-12-18 00:41:25 TD has quit (Quit: TD)
  39 2012-12-18 00:44:34 Someguy1234 has quit (Excess Flood)
  40 2012-12-18 00:51:40 aga has joined
  41 2012-12-18 00:51:54 aga is now known as agath
  42 2012-12-18 00:52:07 Someguy1234 has joined
  43 2012-12-18 00:54:51 Guest91753 has quit (Changing host)
  44 2012-12-18 00:54:51 Guest91753 has joined
  45 2012-12-18 00:54:54 Guest91753 is now known as jgarzik
  46 2012-12-18 00:55:44 Someguy1234 has quit (Quit: ZNC - http://znc.sourceforge.net)
  47 2012-12-18 00:56:58 owowo has quit (Remote host closed the connection)
  48 2012-12-18 00:57:42 owowo has joined
  49 2012-12-18 01:14:59 veelstewerm is now known as xorgate
  50 2012-12-18 01:15:28 inglian has joined
  51 2012-12-18 01:18:25 pklaus has quit ()
  52 2012-12-18 01:21:15 pecket has quit (Ping timeout: 248 seconds)
  53 2012-12-18 01:26:53 Someguy123 has joined
  54 2012-12-18 01:27:11 Someguy123 is now known as Guest75731
  55 2012-12-18 01:27:52 forgot has joined
  56 2012-12-18 01:28:50 inglian has left ()
  57 2012-12-18 01:28:52 Guest75731 has quit (Excess Flood)
  58 2012-12-18 01:30:43 Someguy1234 has joined
  59 2012-12-18 01:31:57 pacpac has quit (Ping timeout: 272 seconds)
  60 2012-12-18 01:34:05 DaQatz has quit (Remote host closed the connection)
  61 2012-12-18 01:37:22 Someguy1234 has quit (Excess Flood)
  62 2012-12-18 01:37:41 knotwork has quit (Remote host closed the connection)
  63 2012-12-18 01:40:22 Someguy1234 has joined
  64 2012-12-18 01:41:10 pecket has joined
  65 2012-12-18 01:41:12 Someguy1234 has quit (Max SendQ exceeded)
  66 2012-12-18 01:41:32 knotwork has joined
  67 2012-12-18 01:43:34 skeledrew has joined
  68 2012-12-18 01:44:22 Someguy1234 has joined
  69 2012-12-18 01:54:08 roconnor has joined
  70 2012-12-18 01:54:50 knotwork has quit (Remote host closed the connection)
  71 2012-12-18 01:58:59 knotwork has joined
  72 2012-12-18 02:02:29 maaku has quit (Quit: maaku)
  73 2012-12-18 02:04:53 Someguy1234 has quit (Max SendQ exceeded)
  74 2012-12-18 02:05:23 EPiSKiNG- has joined
  75 2012-12-18 02:06:49 Scrat has quit (Remote host closed the connection)
  76 2012-12-18 02:18:19 zeks has joined
  77 2012-12-18 02:21:56 luke-jr_ has joined
  78 2012-12-18 02:22:15 Luke-Jr has quit (Read error: Connection reset by peer)
  79 2012-12-18 02:22:17 zeks2 has quit (Ping timeout: 264 seconds)
  80 2012-12-18 02:22:20 luke-jr_ is now known as Luke-Jr
  81 2012-12-18 02:25:45 forgot has quit (Read error: Connection reset by peer)
  82 2012-12-18 02:26:20 forgot has joined
  83 2012-12-18 02:30:05 panzer has quit (Ping timeout: 264 seconds)
  84 2012-12-18 02:30:22 Guest42910 has joined
  85 2012-12-18 02:31:17 freakazoid has quit (Ping timeout: 264 seconds)
  86 2012-12-18 02:31:27 zeks has quit ()
  87 2012-12-18 02:32:38 owowo has quit (Quit: sayonara)
  88 2012-12-18 02:34:10 panzer has joined
  89 2012-12-18 02:39:45 Guest42910 has quit (Excess Flood)
  90 2012-12-18 02:40:48 parus___ has quit (Quit: leaving)
  91 2012-12-18 02:41:02 parus has joined
  92 2012-12-18 02:41:31 denisx_ has joined
  93 2012-12-18 02:43:33 denisx has quit (Ping timeout: 246 seconds)
  94 2012-12-18 02:43:34 denisx_ is now known as denisx
  95 2012-12-18 02:43:37 aethero has joined
  96 2012-12-18 02:44:29 <aethero> Any devs alive?
  97 2012-12-18 02:44:37 <aethero> Got something you might want to take a look at
  98 2012-12-18 02:44:52 Someguy1234 has joined
  99 2012-12-18 02:45:40 <gmaxwell> "don't ask to ask" :P
 100 2012-12-18 02:46:01 D34TH has quit (Quit: Leaving)
 101 2012-12-18 02:46:06 <aethero> This is something that should be private, trust me :P
 102 2012-12-18 02:46:08 <aethero> pming you
 103 2012-12-18 02:49:38 Someguy1234 has quit (Excess Flood)
 104 2012-12-18 02:51:54 Someguy1234 has joined
 105 2012-12-18 02:53:58 Someguy1234 has quit (Max SendQ exceeded)
 106 2012-12-18 02:55:42 aethero has quit (Ping timeout: 260 seconds)
 107 2012-12-18 02:57:52 denisx has quit (Quit: denisx)
 108 2012-12-18 02:58:52 Someguy1234 has joined
 109 2012-12-18 02:59:18 t7 has quit (Quit: Konversation terminated!)
 110 2012-12-18 03:01:15 topace_ has quit (Read error: Connection reset by peer)
 111 2012-12-18 03:01:39 topace_ has joined
 112 2012-12-18 03:07:41 Someguy1234 has quit (Max SendQ exceeded)
 113 2012-12-18 03:13:21 Someguy1234 has joined
 114 2012-12-18 03:15:22 Someguy1234 has quit (Max SendQ exceeded)
 115 2012-12-18 03:18:27 AlexWaters1 has quit (Remote host closed the connection)
 116 2012-12-18 03:18:51 AlexWaters has joined
 117 2012-12-18 03:23:51 forgot has quit (Quit: 暂离)
 118 2012-12-18 03:26:28 RainbowDashh has quit (Ping timeout: 255 seconds)
 119 2012-12-18 03:31:56 Someguy1234 has joined
 120 2012-12-18 03:32:13 maaku has joined
 121 2012-12-18 03:35:09 Someguy1234 has quit (Max SendQ exceeded)
 122 2012-12-18 03:36:52 Someguy1234 has joined
 123 2012-12-18 03:42:15 AlexWaters has quit (Ping timeout: 246 seconds)
 124 2012-12-18 03:42:15 Aexoden has quit (Ping timeout: 246 seconds)
 125 2012-12-18 03:42:15 Aexoden has joined
 126 2012-12-18 03:42:15 ageis has quit (Ping timeout: 246 seconds)
 127 2012-12-18 03:42:20 roconnor has quit (Quit: Konversation terminated!)
 128 2012-12-18 03:42:22 ageis_ has joined
 129 2012-12-18 03:42:32 AlexWaters has joined
 130 2012-12-18 03:47:35 fiesh has quit (Ping timeout: 264 seconds)
 131 2012-12-18 03:49:54 fiesh has joined
 132 2012-12-18 03:53:52 gjs278 has quit (Remote host closed the connection)
 133 2012-12-18 03:54:18 gjs278 has joined
 134 2012-12-18 04:04:51 gjs278 has quit (Remote host closed the connection)
 135 2012-12-18 04:05:16 gjs278 has joined
 136 2012-12-18 04:09:12 agricocb has joined
 137 2012-12-18 04:10:58 pacpac has joined
 138 2012-12-18 04:12:22 agricocb has quit (Remote host closed the connection)
 139 2012-12-18 04:17:03 Guest23275 is now known as Hasimir
 140 2012-12-18 04:17:03 Hasimir has quit (Changing host)
 141 2012-12-18 04:17:03 Hasimir has joined
 142 2012-12-18 04:20:15 <stealth222> are there any differences in message structures between testnet and the main network? I've built a client that connects fine to the main network but when I try to connect to testnet bitcoind gives me PROCESSMESSAGE MESSAGESTART NOT FOUND
 143 2012-12-18 04:21:01 <stealth222> is the version message different?
 144 2012-12-18 04:23:04 <Luke-Jr> the messagestart is different
 145 2012-12-18 04:23:12 <stealth222> howso?
 146 2012-12-18 04:23:28 <Luke-Jr> https://en.bitcoin.it/wiki/Protocol_specification#Message_structure
 147 2012-12-18 04:24:00 <stealth222> I'm using the testnet magic bytes
 148 2012-12-18 04:24:04 <stealth222> any other differences?
 149 2012-12-18 04:25:02 <lianj> Luke-Jr: isn't testnet3 magic bytes different from testnet?
 150 2012-12-18 04:25:14 <stealth222> I know the magic bytes are different
 151 2012-12-18 04:25:39 <stealth222> any other differences?
 152 2012-12-18 04:25:49 <Luke-Jr> lianj: unfortunately no
 153 2012-12-18 04:25:59 <lianj> stealth222: address_version, p2sh_version, privkey_version
 154 2012-12-18 04:26:27 <stealth222> ok, I'm also using address version 0x6f instead of 0x00
 155 2012-12-18 04:26:54 TheSeven has quit (Disconnected by services)
 156 2012-12-18 04:26:58 <stealth222> if my client doesn't do any transaction signing, do I also need to worry about p2sh_version and privkey_version?
 157 2012-12-18 04:26:59 <lianj> stealth222: sounds right then
 158 2012-12-18 04:27:04 [7] has joined
 159 2012-12-18 04:27:07 <stealth222> I guess not
 160 2012-12-18 04:27:35 <stealth222> ok, then let me make absolute sure I'm not botching up the magic bytes
 161 2012-12-18 04:27:41 pingdrive has joined
 162 2012-12-18 04:27:51 <gmaxwell> 20:11 < lianj> Luke-Jr: isn't testnet3 magic bytes different from testnet?
 163 2012-12-18 04:27:52 <gmaxwell> yes
 164 2012-12-18 04:27:57 <gmaxwell> 20:12 < Luke-Jr> lianj: unfortunately no
 165 2012-12-18 04:28:02 <Luke-Jr> gmaxwell: O.o since when?
 166 2012-12-18 04:28:05 <stealth222> oh? it is?
 167 2012-12-18 04:28:06 <stealth222> lol
 168 2012-12-18 04:28:09 <stealth222> that would explain everything
 169 2012-12-18 04:28:11 <gmaxwell> it got changed a bit before the first testnet3 release.
 170 2012-12-18 04:28:24 <stealth222> so what are the testnet3 magic bytes?
 171 2012-12-18 04:28:24 <gmaxwell> because 'unfortunately', as you said.
 172 2012-12-18 04:28:34 <Luke-Jr> nice
 173 2012-12-18 04:29:04 <stealth222> and did anything else change in testnet3? address_version?
 174 2012-12-18 04:29:17 <Luke-Jr> stealth222: address_version was supposed to, but didn't <.<
 175 2012-12-18 04:29:18 <gmaxwell> stealth222: no, address version did not change.
 176 2012-12-18 04:29:19 <lianj> testnet3 is "\x0b\x11\x09\x07" right?
 177 2012-12-18 04:29:33 <Luke-Jr> lianj: you taking care of wiki update?
 178 2012-12-18 04:29:36 <gmaxwell> that looks correct. involves lots of '11' as gavin wanted.
 179 2012-12-18 04:29:51 <stealth222> is that the network byte order?
 180 2012-12-18 04:29:58 <lianj> Luke-Jr: got no account, but was about to suggest that, that was why i asked in the first place
 181 2012-12-18 04:30:13 agricocb has joined
 182 2012-12-18 04:30:17 <gmaxwell> lianj: make one
 183 2012-12-18 04:30:22 <gmaxwell> don't worry, we'll pay for t.
 184 2012-12-18 04:30:24 <gmaxwell> er it
 185 2012-12-18 04:31:09 <Luke-Jr> lol
 186 2012-12-18 04:31:35 <Luke-Jr> are the magic bytes used big-endian anywhere? if not, I'd like to remove "magic value" from the wiki page <.<
 187 2012-12-18 04:31:35 <gmaxwell> stealth222: this is bitcoin, you use rand() to pick the byte order.
 188 2012-12-18 04:32:13 <stealth222> haha
 189 2012-12-18 04:32:21 <lianj> oh, found my account. wth, the email reminder sent me the password in cleartext. great success
 190 2012-12-18 04:32:40 <stealth222> time to whip out the packet sniffer, I guess...
 191 2012-12-18 04:33:20 <lianj> stealth222: "\x0b\x11\x09\x07" is a string, so \x0b is sent first
 192 2012-12-18 04:33:38 <stealth222> ok
 193 2012-12-18 04:34:21 <lianj> Luke-Jr: thanks for updating…
 194 2012-12-18 04:34:36 <Luke-Jr> XD
 195 2012-12-18 04:35:31 maaku has quit (Quit: maaku)
 196 2012-12-18 04:35:41 <stealth222> horray!
 197 2012-12-18 04:35:43 <stealth222> thanks, guys
 198 2012-12-18 04:35:56 <lianj> btw neverind what i said about the cleartext password, misread it, it ofcourse is a temporary password
 199 2012-12-18 04:36:53 agricocb has quit (Remote host closed the connection)
 200 2012-12-18 04:36:57 <lianj> stealth222: cool, nice to know its working for you now
 201 2012-12-18 04:37:21 <Luke-Jr> holy crap, that's a long macro name: AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_7
 202 2012-12-18 04:45:23 maaku has joined
 203 2012-12-18 04:45:30 pingdrive has quit (Quit: Leaving)
 204 2012-12-18 04:51:29 jaromil has quit (Read error: Connection reset by peer)
 205 2012-12-18 04:51:37 jaromil has joined
 206 2012-12-18 04:53:21 agricocb has joined
 207 2012-12-18 05:06:07 maaku has quit (Quit: maaku)
 208 2012-12-18 05:07:09 <stealth222> LOL - block 0000000000bc915505318327aa0f18568ce024702a024d7c4a3ecfe80a893d6c in testnet3 has 6287 transactions
 209 2012-12-18 05:07:35 pacpac has quit (Read error: Connection reset by peer)
 210 2012-12-18 05:07:56 <stealth222> does testnet also have the same block size limitations that the main network has?
 211 2012-12-18 05:07:57 paraipan has quit (Quit: Saliendo)
 212 2012-12-18 05:12:52 <jgarzik> stealth222: yes
 213 2012-12-18 05:13:13 <stealth222> jgarzik: thanks
 214 2012-12-18 05:13:14 <jgarzik> stealth222: testnet3 has many blocks and transactions that intentionally push the limits of the system.  that's the point of testing, after all...
 215 2012-12-18 05:13:22 freakazoid has joined
 216 2012-12-18 05:13:47 <jgarzik> stealth222: test away, we only ask that you don't point ASICs or a huge GPU farm at it.  that just bloats the chain for no reason.
 217 2012-12-18 05:14:08 <jgarzik> (we'll reset it, so it's just a lot of annoyance for everyone, when a big miner fails to do their own local testnet)
 218 2012-12-18 05:14:26 <jgarzik> but any other bitcoin software... please do use testnet
 219 2012-12-18 05:16:46 <stealth222> since the magic bytes and genesis block hash are hardcoded into bitcoind, I guess resets require version upgrades?
 220 2012-12-18 05:17:40 <stealth222> couldn't we set the magic bytes, genesis block hash, address version, etc... inside the config file?
 221 2012-12-18 05:18:56 <stealth222> rather than testnet=1, we could have multiple named network configurations and have network=main, or network=testnet, or network=myprivatetestnet
 222 2012-12-18 05:19:45 <stealth222> the main network would have to be treated specially anyhow in bitcoind with hardcoded checkpoints and all that
 223 2012-12-18 05:19:52 <stealth222> but the other networks could be completely arbitrary
 224 2012-12-18 05:21:19 <Luke-Jr> stealth222: would make it too easy for scamcoins
 225 2012-12-18 05:21:39 <stealth222> scamcoins?
 226 2012-12-18 05:22:39 <stealth222> can you elaborate?
 227 2012-12-18 05:25:03 <stealth222> is "scamcoin" the codename for alternate block chains?
 228 2012-12-18 05:25:06 <stealth222> lol
 229 2012-12-18 05:28:09 <jgarzik> stealth222: Sure, that is possible.  testnet is compiled in for simplicity's sake.  So few will need anything else, it is not worth the bother.
 230 2012-12-18 05:28:41 <stealth222> well, you gave an example earlier of ASIC miners wanting to build their own testnet
 231 2012-12-18 05:29:11 <jgarzik> stealth222: Yes.  Anybody testing mining would just use testnet3-in-a-box, and mine privately.
 232 2012-12-18 05:29:36 <jgarzik> stealth222: No need to create a new genesis block or anything, with TNIAB.
 233 2012-12-18 05:29:38 <stealth222> as things stand, it would require at the very least using a different set of magic bytes and probably the use of a different port if they weren't testing on a LAN
 234 2012-12-18 05:29:50 <jgarzik> stealth222: no, just node isolation
 235 2012-12-18 05:30:01 darkee has quit (Remote host closed the connection)
 236 2012-12-18 05:30:06 AtashiCon has quit (Quit: AtashiCon)
 237 2012-12-18 05:30:41 <stealth222> yeah, I suppose so - but there's greater risk that they'll leave out that connect=my.super.host line in the conf file
 238 2012-12-18 05:30:59 <jgarzik> stealth222: TNIAB provides specialized bitcoin.conf setups
 239 2012-12-18 05:31:17 darkee has joined
 240 2012-12-18 05:31:28 <stealth222> yeah, I guess it isn't really a highly sought-after feature
 241 2012-12-18 05:31:32 <jgarzik> stealth222: http://sourceforge.net/projects/bitcoin/files/Bitcoin/testnet-in-a-box/
 242 2012-12-18 05:31:43 <jgarzik> automatically a closed network
 243 2012-12-18 05:32:06 <jgarzik> stealth222: Correct.  If you need something more specialized, you are likely skilled enough to do it yourself.  :)
 244 2012-12-18 05:32:16 <jgarzik> Changing is not difficult.
 245 2012-12-18 05:33:03 <stealth222> does the current version support dynamically adding or removing nodes?
 246 2012-12-18 05:33:08 <jgarzik> stealth222: Patch one file in libccoin, for example: https://github.com/jgarzik/picocoin/blob/master/lib/coredefs.c
 247 2012-12-18 05:33:10 <stealth222> that's to say, can I tell it to add a node at runtime?
 248 2012-12-18 05:33:38 <jgarzik> stealth222: Not in current bitcoin.git codebase.  There is a pull request that adds dynamic-node-add support.
 249 2012-12-18 05:34:23 <jgarzik> stealth222: Current code tries hard to kick any node that behaves strangely, so little call for dynamic-removal at this time.  Would not be difficult to add.
 250 2012-12-18 05:38:06 <stealth222> one feature I'd really like to add to bitcoind (I've actually written my own client out of the absolute need for this feature) is the ability to subscribe URLs to HTTP POST notifications when certain events occur
 251 2012-12-18 05:38:29 <stealth222> I'd be willing to create a fork and submit a pull request and all that - never gone through the process, though
 252 2012-12-18 05:38:53 agricocb has quit (Remote host closed the connection)
 253 2012-12-18 05:39:35 <Luke-Jr> stealth222: which events? bitcoind already has a -blocknotify option, and probably will soon have a -walletnotify
 254 2012-12-18 05:40:44 <stealth222> also notifications of particular scripts in inputs or outputs (arbitrary scripts or bitcoin addresses) and notifications of when a particular transaction has gotten a certain number of confirmations, for instance
 255 2012-12-18 05:41:10 <stealth222> not just wallet addresses
 256 2012-12-18 05:41:35 <stealth222> I've got an architecture that completely separates the wallet management from the alert system
 257 2012-12-18 05:41:56 <stealth222> the alert system doesn't need to know any private keys for any wallets
 258 2012-12-18 05:42:02 <stealth222> lower security requirements
 259 2012-12-18 05:42:16 AtashiCon has joined
 260 2012-12-18 05:42:50 <stealth222> easier to deploy highly redundant alerter nodes to provide a notification service without the need to be passing around any private keys
 261 2012-12-18 05:43:05 <jgarzik> stealth222: That's been the long term plan, to separate the "block chain engine" from wallet, with clear lines of communication and separation between them
 262 2012-12-18 05:43:18 <stealth222> I'd be willing to help out in this pursuit
 263 2012-12-18 05:43:41 <stealth222> it's been something I've been needing for many, many months which led me to develop my own protocol library and client
 264 2012-12-18 05:43:54 <stealth222> as well as my own wallet
 265 2012-12-18 05:44:31 <stealth222> which sucks...it would be better if all this could be part of the daemon itself
 266 2012-12-18 05:44:32 <jgarzik> stealth222: BlueMatt already did a lot of work on that, but it was highly invasive -- as it must be -- yet unfortunately a lower development priority than replacing the keeling-over BDB
 267 2012-12-18 05:44:43 <jgarzik> stealth222: grab his stuff, maybe he already did the work for you
 268 2012-12-18 05:44:59 <jgarzik> stealth222: BlueMatt is also the one who wrote the dynamic-addnode pull req
 269 2012-12-18 05:45:33 <stealth222> so what are you going to be replacing BDB with?
 270 2012-12-18 05:45:39 <jgarzik> stealth222: my picocoin client does something similar, with fork()-enforced separation between network and wallet
 271 2012-12-18 05:46:35 <jgarzik> stealth222: Replaced, past tense.  "ultraprune" consists of two large updates:  (1) LevelDB, (2) highly efficient unspent-transaction output (UTXO) data structure work
 272 2012-12-18 05:47:05 <jgarzik> stealth222: sipa's ultraprune work is already upstream in bitcoin.git
 273 2012-12-18 05:48:03 <stealth222> I've written a class that connects to an arbitrary bitcoin node and provides callbacks for onTx and onBlock
 274 2012-12-18 05:48:22 <stealth222> and have used it for my alerter system
 275 2012-12-18 05:49:17 <stealth222> yeah, the better database would be nice
 276 2012-12-18 05:49:34 <stealth222> another feature I wanted was the ability to perform more sophisticated queries
 277 2012-12-18 05:49:44 <jgarzik> stealth222: If it's just monitoring, a lot of people just use https://github.com/jgarzik/pynode/tree/mini-node to watch for tx's and blocks on the network
 278 2012-12-18 05:49:54 <stealth222> that's ugly - lol
 279 2012-12-18 05:50:09 <stealth222> what I have runs much faster
 280 2012-12-18 05:50:14 <jgarzik> More sophisticated queries -- more indices, unused by most
 281 2012-12-18 05:50:44 <jgarzik> There is thought about an optional all-tx index
 282 2012-12-18 05:50:45 <stealth222> not to insult your code, j - I'm just not as much of a fan of py for daemons
 283 2012-12-18 05:51:31 * jgarzik shrugs
 284 2012-12-18 05:51:59 <stealth222> the code is actually pretty clean
 285 2012-12-18 05:53:20 <stealth222> I mean your py code
 286 2012-12-18 05:55:58 <stealth222> is BlueMatt's stuff in a public repo/
 287 2012-12-18 05:56:01 <stealth222> ?
 288 2012-12-18 05:58:17 <stealth222> I mean, the block chain engine / wallet separation
 289 2012-12-18 05:58:36 <stealth222> and will it be difficult to merge it back in after the database updates?
 290 2012-12-18 05:59:52 <stealth222> if so, I guess yeah, we should definitely do the database stuff first
 291 2012-12-18 06:01:02 agricocb has joined
 292 2012-12-18 06:03:01 maaku has joined
 293 2012-12-18 06:04:45 agricocb has quit (Remote host closed the connection)
 294 2012-12-18 06:05:15 nus has quit (Ping timeout: 250 seconds)
 295 2012-12-18 06:05:31 nus has joined
 296 2012-12-18 06:09:02 <stealth222> ultraprune is a higher priority to mass adoption
 297 2012-12-18 06:09:48 <stealth222> and has a very different set of requirements to the block chain engine stuff
 298 2012-12-18 06:11:04 <stealth222> oh well, I'm not that interested in hacking away at a fork that will be impossible to merge back later
 299 2012-12-18 06:11:42 <stealth222> I prefer just having a separate process that connects to bitcoind like I have it right now
 300 2012-12-18 06:16:07 RainbowDashh has joined
 301 2012-12-18 06:23:06 <dparrish> hey has someone got a spare testnet coin or 2 they can send me pls?
 302 2012-12-18 06:23:37 <dparrish> n1JZA2Z86UWESpJRDB8zabWSgeaVxpfk6n
 303 2012-12-18 06:27:02 <stealth222> I would but the ones I have haven't matured yet
 304 2012-12-18 06:27:18 <dparrish> heh ok
 305 2012-12-18 06:27:24 <stealth222> if you wait four more blocks I can send you a couple
 306 2012-12-18 06:27:26 <stealth222> lol
 307 2012-12-18 06:28:12 <dparrish> i really thought i would have been able to mine some in a few days of trying
 308 2012-12-18 06:28:18 <jgarzik> stealth222: BlueMatt's stuff is definitely in a public repo.  You'll have to bug him for the branch name.  somewhere on github/bluematt...
 309 2012-12-18 06:28:22 <dparrish> the difficulty is only 170 ffs
 310 2012-12-18 06:28:38 <jgarzik> dparrish: one sec
 311 2012-12-18 06:28:43 <stealth222> I've been mining for just a few hours on 6 CPU cores and have already mined three blocks
 312 2012-12-18 06:28:53 <stealth222> using the bitcoind built-in miner
 313 2012-12-18 06:29:02 <dparrish> stealth222: that's what i did! 8 cores, 3 days, 0 blocks :(
 314 2012-12-18 06:29:09 <jgarzik> dparrish: a1fe56a7e261d49145541805206b679ceb458cce9aab6d8f566166300772cce5
 315 2012-12-18 06:29:16 <dparrish> jgarzik: thanks!
 316 2012-12-18 06:29:16 <stealth222> what's your hashrate, dparrish?
 317 2012-12-18 06:30:01 <dparrish> stealth222: erm i actually don't know.. does the built-in miner let me see that? IIRC it's about 800kh/s which is useless for the main chain
 318 2012-12-18 06:30:09 <stealth222> bitcoind getmininginfo
 319 2012-12-18 06:30:25 <dparrish> 6105126
 320 2012-12-18 06:30:32 <dparrish> that's more than i thought
 321 2012-12-18 06:30:39 <stealth222> hmm...that's not much less than I'm getting: 6481582
 322 2012-12-18 06:31:01 <stealth222> three days? you must just have been horribly unlucky - lol
 323 2012-12-18 06:31:09 <dparrish> heh that's my life
 324 2012-12-18 06:31:18 MrTiggr has quit (Ping timeout: 260 seconds)
 325 2012-12-18 06:41:43 <stealth222> are the goals of ultraprune and a database that supports complex queries on the entire block chain and memory pool at odds?
 326 2012-12-18 06:42:20 <stealth222> perhaps it would be better architecturally to separate the peer discovery / networking component first
 327 2012-12-18 06:42:35 <stealth222> since both the wallet and the block chain engine will need to use it
 328 2012-12-18 06:43:12 <stealth222> and to write the wallet and block chain engine apps as separate apps
 329 2012-12-18 06:43:54 RazielZ has joined
 330 2012-12-18 06:44:15 <stealth222> furthermore, for the wallet, there are two main use scenarios - one is for enduser lightweight clients - the other is for commerce applications
 331 2012-12-18 06:45:29 <stealth222> ideally, the signing component should be implemented in hardware :)
 332 2012-12-18 06:45:59 <stealth222> tracking unspent outputs doesn't require knowledge of private keys
 333 2012-12-18 06:46:59 <stealth222> a small USB device that connects to the enduser's computer (or a MicroSD card on their mobile device) could store private keys and do signing
 334 2012-12-18 06:47:52 <lianj> an then blindly trusting/signing what it is given? :P
 335 2012-12-18 06:48:07 <stealth222> no, the user would have to be prompted
 336 2012-12-18 06:48:43 <stealth222> and strict limits could be set in the protocol - like transaction volume
 337 2012-12-18 06:49:21 <stealth222> these parameters could be stored on the hardware device and require the enduser to physically authorize any changes to them
 338 2012-12-18 06:49:29 BlackPrapor has joined
 339 2012-12-18 06:50:58 <stealth222> furthermore, transaction signing and sending only requires a database of unspent outputs - doesn't require storing any other structures at all
 340 2012-12-18 06:51:35 pusle has quit ()
 341 2012-12-18 06:51:37 <stealth222> verification of receipt of payment would require storing other stuff
 342 2012-12-18 06:51:54 <stealth222> but that doesn't have to be done on all the user's devices
 343 2012-12-18 06:52:59 <stealth222> in fact, most thin clients will probably end up trusting servers for these kinds of verification services
 344 2012-12-18 06:53:54 <stealth222> all that's needed locally are private keys and unspent outpoints
 345 2012-12-18 06:56:27 <stealth222> even without connecting to a centralized server, the client can always query a bunch of other nodes it's fairly confident are not in collusion with one another at random and see if they agree
 346 2012-12-18 06:57:07 <stealth222> it wouldn't take too many such queries to establish, with extremely high probability, that a transaction did in fact confirm
 347 2012-12-18 06:58:00 <stealth222> as for nodes that relay transactions, these would need to do some level of verification
 348 2012-12-18 06:58:13 <stealth222> but signing nodes do not need to relay anyone else's transactions
 349 2012-12-18 06:58:41 <stealth222> in fact, it almost makes sense that they don't - it's far easier to isolate them and make them more secure
 350 2012-12-18 07:01:00 Belkaar has joined
 351 2012-12-18 07:04:18 <stealth222> furthermore, verification that a transaction confirmed does not require any private keys
 352 2012-12-18 07:04:53 <stealth222> nor does relaying verified transactions
 353 2012-12-18 07:06:13 <stealth222> as a business, I would want to have a server or two that verify all transactions as rigorously as possible and that can give me high-level query capabilities. but on my mobile device, I just want a simple signing component
 354 2012-12-18 07:09:12 <stealth222> I guess ultraprune would be OK for mobile devices, too - some level of verification
 355 2012-12-18 07:09:31 Garr255 has quit (Read error: Connection reset by peer)
 356 2012-12-18 07:12:22 <stealth222> but even the ultraprune piece could be separate from the signing piece
 357 2012-12-18 07:12:31 <stealth222> and probably should be
 358 2012-12-18 07:15:12 <stealth222> that way I can disconnect the signing component and still track and verify payments
 359 2012-12-18 07:15:24 <stealth222> without having to worry about my node getting hacked
 360 2012-12-18 07:24:10 nibor_ has joined
 361 2012-12-18 07:27:15 nibor has quit (Ping timeout: 272 seconds)
 362 2012-12-18 07:30:58 toffoo has quit ()
 363 2012-12-18 07:31:10 <stealth222> blah, all this has probably been talked about to death before - I'm a relative newcomer into this whole thing, so I apologize if I'm just repeating stuff that everyone has already heard a million times
 364 2012-12-18 07:32:46 <stealth222> setting aside all the philosophical stuff for a moment, I have a specific question: what's the multisig address version for testnet?
 365 2012-12-18 07:33:04 <stealth222> I know for the main network it's 0x05
 366 2012-12-18 07:35:24 <stealth222> is it 0xC4?
 367 2012-12-18 07:36:46 abrkn has joined
 368 2012-12-18 07:40:14 libcoin has joined
 369 2012-12-18 07:43:38 freakazoid has quit (Ping timeout: 260 seconds)
 370 2012-12-18 07:46:48 ovidiusoft has joined
 371 2012-12-18 07:50:24 ageis_ is now known as ageis
 372 2012-12-18 07:51:34 RainbowDashh has quit (Ping timeout: 246 seconds)
 373 2012-12-18 08:05:21 tucenaber has quit (Ping timeout: 244 seconds)
 374 2012-12-18 08:18:14 tucenaber has joined
 375 2012-12-18 08:28:54 RainbowDashh has joined
 376 2012-12-18 08:34:39 <stealth222> why COINBASE_MATURITY+20?
 377 2012-12-18 08:34:39 <stealth222> int CMerkleTx::GetBlocksToMaturity() const
 378 2012-12-18 08:34:39 <stealth222> {
 379 2012-12-18 08:34:41 <stealth222>     if (!IsCoinBase())
 380 2012-12-18 08:34:43 <stealth222>         return 0;
 381 2012-12-18 08:34:45 <stealth222>     return max(0, (COINBASE_MATURITY+20) - GetDepthInMainChain());
 382 2012-12-18 08:34:47 <stealth222> }
 383 2012-12-18 08:42:13 darkee has joined
 384 2012-12-18 08:43:57 brwyatt is now known as brwyatt|Away
 385 2012-12-18 08:45:26 darkee has quit (Ping timeout: 276 seconds)
 386 2012-12-18 08:46:35 Belkaar has quit (Read error: Operation timed out)
 387 2012-12-18 08:48:31 Belkaar has joined
 388 2012-12-18 08:52:51 maaku has quit (Quit: maaku)
 389 2012-12-18 08:59:05 <jaromil> guys.... this is OT but also too funny to not post it here http://www.indiegogo.com/projects/272646
 390 2012-12-18 08:59:37 <jaromil> the crew doing this "turbofilm" is a funny crowd, they live around NYC let me know if someone likes to get in touch
 391 2012-12-18 09:00:03 <jaromil> I've played a part in the next teaser and made some nicknames of developers here :)
 392 2012-12-18 09:00:38 <jaromil> they are fundraising it with perks one could also join them in the actual filming in porto rico
 393 2012-12-18 09:02:35 mmoya has joined
 394 2012-12-18 09:05:49 maaku has joined
 395 2012-12-18 09:15:43 ThomasV has joined
 396 2012-12-18 09:24:16 maaku has quit (Quit: maaku)
 397 2012-12-18 09:24:51 maaku has joined
 398 2012-12-18 09:25:04 maaku has quit (Client Quit)
 399 2012-12-18 09:32:59 rdymac has joined
 400 2012-12-18 09:33:35 m0mchil has quit (Quit: Leaving)
 401 2012-12-18 09:34:19 nethershaw has quit (Read error: Connection reset by peer)
 402 2012-12-18 09:34:36 nethershaw has joined
 403 2012-12-18 09:37:25 one_zero has quit ()
 404 2012-12-18 09:38:48 m0mchil has joined
 405 2012-12-18 09:42:30 ciphermonk has joined
 406 2012-12-18 09:47:56 TD has joined
 407 2012-12-18 09:50:00 <sipa> midnightmagic: i just commented out that line
 408 2012-12-18 10:01:01 CodesInChaos has joined
 409 2012-12-18 10:05:58 CodesInChaos has quit (Ping timeout: 252 seconds)
 410 2012-12-18 10:23:31 drizztbsd has joined
 411 2012-12-18 10:24:41 ciphermonk has quit (Remote host closed the connection)
 412 2012-12-18 10:25:55 ciphermonk has joined
 413 2012-12-18 10:28:29 MrTiggr has joined
 414 2012-12-18 10:29:54 ciphermonk has quit (Remote host closed the connection)
 415 2012-12-18 10:30:40 ciphermonk has joined
 416 2012-12-18 10:32:07 ciphermonk has quit (Remote host closed the connection)
 417 2012-12-18 10:36:08 ciphermonk has joined
 418 2012-12-18 10:41:34 CodesInChaos has joined
 419 2012-12-18 10:42:48 jine has quit (Ping timeout: 245 seconds)
 420 2012-12-18 10:43:15 jine has joined
 421 2012-12-18 10:56:21 ciphermonk has quit (Remote host closed the connection)
 422 2012-12-18 10:56:35 GMP has quit (Read error: Connection reset by peer)
 423 2012-12-18 10:57:12 ciphermonk has joined
 424 2012-12-18 11:00:16 ciphermonk has quit (Remote host closed the connection)
 425 2012-12-18 11:00:59 ciphermonk has joined
 426 2012-12-18 11:01:58 dvide has joined
 427 2012-12-18 11:04:25 rdymac has quit (Read error: Connection reset by peer)
 428 2012-12-18 11:04:54 rdymac has joined
 429 2012-12-18 11:06:08 darkee has quit (!~darkee@gateway/tor-sasl/darkee|Remote host closed the connection)
 430 2012-12-18 11:06:42 darkee has joined
 431 2012-12-18 11:09:44 mykhal has quit (Ping timeout: 276 seconds)
 432 2012-12-18 11:10:51 mykhal has joined
 433 2012-12-18 11:21:26 da2ce723 has joined
 434 2012-12-18 11:28:53 da2ce723 has quit (Ping timeout: 265 seconds)
 435 2012-12-18 11:30:17 Diapolo has joined
 436 2012-12-18 11:31:25 Azelphur has quit (Excess Flood)
 437 2012-12-18 11:34:02 Azelphur has joined
 438 2012-12-18 11:38:02 Diapolo has left ()
 439 2012-12-18 11:38:20 rdymac has quit (Read error: Connection reset by peer)
 440 2012-12-18 11:40:25 <gmaxwell> 00:21 < stealth222> why COINBASE_MATURITY+20?
 441 2012-12-18 11:41:16 <stealth222> yes
 442 2012-12-18 11:41:22 <gmaxwell> Because if you try to spend one right when your peers aren't yet up to date with the chain, it'll just get dropped. 20 is probably too high for the network today, 2 works alright.
 443 2012-12-18 11:41:34 <gmaxwell> But its not like it matters to many people.
 444 2012-12-18 11:41:48 <stealth222> it's inconsistent with the documentation, though
 445 2012-12-18 11:41:55 <stealth222> might be a good idea to make a note of it in the wikis
 446 2012-12-18 11:42:19 rdymac has joined
 447 2012-12-18 11:43:06 <gmaxwell> How is it inconsistent?
 448 2012-12-18 11:43:39 <stealth222> https://en.bitcoin.it/wiki/Protocol_rules#.22tx.22_messages
 449 2012-12-18 11:43:43 <gmaxwell> The protocol rule is COINBASE_MATURITY.  The client adds some margin on that to avoid bumping into poor forwarding due to spending right at the edge.
 450 2012-12-18 11:44:08 <gmaxwell> It's very important for you to keep in mind that not everything the reference client does is a protocol rule.
 451 2012-12-18 11:44:35 <stealth222> then it might be a good idea to put together a document explaining how the client implementation differs
 452 2012-12-18 11:44:43 <gmaxwell> It doesn't differ.
 453 2012-12-18 11:44:44 <gmaxwell> ugh.
 454 2012-12-18 11:45:12 <gmaxwell> stealth222: It will happily forward txn that spend at COINBASE_MATURITY. It will happily accept blocks that include txn spending at COINBASE_MATURITY.
 455 2012-12-18 11:45:20 libcoin1 has joined
 456 2012-12-18 11:45:32 libcoin has quit (Read error: Connection reset by peer)
 457 2012-12-18 11:45:48 <stealth222> ok, I see. so it will relay but it won't initiate a transaction
 458 2012-12-18 11:45:50 <gmaxwell> But while choosing inputs to build a new transaction it won't choose ones untl COINBASE_MATURITY+20.
 459 2012-12-18 11:46:00 <stealth222> ok, got it.
 460 2012-12-18 11:46:03 Belkaar has quit (Read error: Operation timed out)
 461 2012-12-18 11:46:54 <stealth222> the relay rules and the create new transaction rules are different
 462 2012-12-18 11:46:57 <gmaxwell> Similar to how it won't spend a payment from someone else until 6 confirms if it can help it, 1 otherwise. Though nodes will (at least potentially) relay at 0.
 463 2012-12-18 11:47:06 ciphermonk has quit (Remote host closed the connection)
 464 2012-12-18 11:47:18 <sipa> stealth222: pne is a
 465 2012-12-18 11:47:41 <sipa> stealth222: one is a network rule, the other is a wallet lolicy
 466 2012-12-18 11:47:45 <gmaxwell> (in that case, it's to avoid propagating fraud— if someone rips you off with a payment that gets reversed you shouldn't rip off unrelated third parties)
 467 2012-12-18 11:47:57 ciphermonk has joined
 468 2012-12-18 11:48:00 <gmaxwell> "lolicy" explains it. :P
 469 2012-12-18 11:48:15 <stealth222> ok :)
 470 2012-12-18 11:48:28 * sipa needs typing lessons
 471 2012-12-18 11:48:56 <sipa> in my defence: a 3.2" on-screen keyboard is tiny
 472 2012-12-18 11:49:35 Belkaar has joined
 473 2012-12-18 11:49:59 <gmaxwell> stealth222: and yea, having some better docs on 'good' client behavior as seperate from the protocol rules would be nice, but it's basically impossible to document everything it does, and far less important than having good documentation of the protocol rules.
 474 2012-12-18 11:50:10 <gmaxwell> stealth222: it's also worth noting that the lists on the wiki are incomplete.
 475 2012-12-18 11:52:16 <drizztbsd> hi, who sign SHA256SUM file?
 476 2012-12-18 11:54:15 <sipa> drizztbsd: if you can't find that out by verifying the signature, your verification isn't very thorough :)
 477 2012-12-18 11:54:58 <drizztbsd> yes, I'm asking if there can be more than one person
 478 2012-12-18 11:55:19 <drizztbsd> 0.7.2 is signed by Gavin Andresen (CODE SIGNING KEY) <gavinandresen@gmail.com>
 479 2012-12-18 11:55:54 panzer has quit (Ping timeout: 264 seconds)
 480 2012-12-18 11:59:08 <sipa> stealth222: btw, about your earlier monologue: it's indeed a long-term goal to separate the wallet code and block verification code more (for example as separate processes, or even as separate network components); a database for complexer queries... my preference is keeping the reference client code light (as in: not more complex than it needs to be for implementing full verification), but perhaps add optional indexes for people who need lookup by...
 481 2012-12-18 11:59:14 <sipa> address or txid
 482 2012-12-18 11:59:18 ThomasV has quit (Quit: Leaving)
 483 2012-12-18 12:00:49 <sipa> drizztbsd: not sure if PGP supports multiple signatures simultaneously, though adding one on top of the other should work
 484 2012-12-18 12:01:22 <sipa> drizztbsd: note that you can find signatures for the deterministic build process on https://github.com/bitcoin/gitian.sigs
 485 2012-12-18 12:01:30 <sipa> typically with 2-3 signatures for every release
 486 2012-12-18 12:10:18 ciphermonk has quit (Remote host closed the connection)
 487 2012-12-18 12:11:08 ciphermonk has joined
 488 2012-12-18 12:18:58 Keefe has quit (Read error: Connection reset by peer)
 489 2012-12-18 12:19:14 Keefe has joined
 490 2012-12-18 12:19:14 Keefe has quit (Changing host)
 491 2012-12-18 12:19:14 Keefe has joined
 492 2012-12-18 12:27:06 Someguy1234 is now known as Someguy123
 493 2012-12-18 12:27:35 Someguy123 is now known as Guest16588
 494 2012-12-18 12:28:09 Guest16588 is now known as Someguy123
 495 2012-12-18 12:28:15 Someguy123 has quit (Changing host)
 496 2012-12-18 12:28:15 Someguy123 has joined
 497 2012-12-18 12:28:45 TD has quit (Quit: TD)
 498 2012-12-18 12:34:39 <stam7> i don't recognize you, gribble
 499 2012-12-18 12:34:43 <stam7> you are a problem, to me
 500 2012-12-18 12:34:47 <stam7> and whoever is controlling you
 501 2012-12-18 12:35:23 ciphermonk has quit (Remote host closed the connection)
 502 2012-12-18 12:36:21 <stam7> stop ban-placing and i might forgive you
 503 2012-12-18 12:36:30 <stam7> ok, dear gribble?
 504 2012-12-18 12:37:59 paraipan has joined
 505 2012-12-18 12:38:08 <stam7> but that's no guarantee. you see i MAY or MAY NOT forgive you. it's all my choice
 506 2012-12-18 12:38:38 <stam7> also, you need to apologize for your rude behavior
 507 2012-12-18 12:41:23 darkee has quit (!~darkee@gateway/tor-sasl/darkee|Ping timeout: 276 seconds)
 508 2012-12-18 12:54:25 darkee has joined
 509 2012-12-18 13:01:15 <stam7> it's interesting how i'm never banned from -dev, ever since i said i'd rather not be here
 510 2012-12-18 13:02:46 denisx has joined
 511 2012-12-18 13:06:44 rdymac has quit (Quit: This computer has gone to sleep)
 512 2012-12-18 13:14:20 agricocb has joined
 513 2012-12-18 13:14:43 datagutt has joined
 514 2012-12-18 13:16:25 Jamesz has joined
 515 2012-12-18 13:47:05 att__ has joined
 516 2012-12-18 13:53:12 jdnavarro has joined
 517 2012-12-18 13:55:33 PhantomSpark has joined
 518 2012-12-18 13:57:13 <stam7> it's as if you are only here to torture me
 519 2012-12-18 13:57:24 <stealth222> please die
 520 2012-12-18 13:58:53 agricocb has quit (Quit: Leaving.)
 521 2012-12-18 14:06:43 daybyter has joined
 522 2012-12-18 14:07:27 t7 has joined
 523 2012-12-18 14:10:46 stam8 has joined
 524 2012-12-18 14:18:14 rdponticelli has quit (Ping timeout: 276 seconds)
 525 2012-12-18 14:18:52 MobiusL has quit (Excess Flood)
 526 2012-12-18 14:21:35 MobiusL has joined
 527 2012-12-18 14:23:15 rdponticelli has joined
 528 2012-12-18 14:24:46 rdymac has joined
 529 2012-12-18 14:25:26 stealth222 has quit (Remote host closed the connection)
 530 2012-12-18 14:27:05 MiningBuddy- has quit (Remote host closed the connection)
 531 2012-12-18 14:27:16 MiningBuddy has joined
 532 2012-12-18 14:27:16 MiningBuddy has quit (Changing host)
 533 2012-12-18 14:27:16 MiningBuddy has joined
 534 2012-12-18 14:27:18 RainbowDashh has quit (Ping timeout: 260 seconds)
 535 2012-12-18 14:27:39 stam8 has quit (Quit: Leaving.)
 536 2012-12-18 14:33:11 PhantomSpark has quit (Ping timeout: 276 seconds)
 537 2012-12-18 14:38:12 agricocb has joined
 538 2012-12-18 14:38:26 Enrico1 has joined
 539 2012-12-18 14:42:34 egecko has joined
 540 2012-12-18 14:43:56 rdymac has quit (Quit: This computer has gone to sleep)
 541 2012-12-18 14:43:58 nus has quit (Ping timeout: 250 seconds)
 542 2012-12-18 14:47:43 nus has joined
 543 2012-12-18 14:52:34 daybyter has quit (Quit: Konversation terminated!)
 544 2012-12-18 14:58:23 denisx_ has joined
 545 2012-12-18 15:00:40 denisx has quit (Ping timeout: 246 seconds)
 546 2012-12-18 15:00:41 denisx_ is now known as denisx
 547 2012-12-18 15:04:33 Diapolo has joined
 548 2012-12-18 15:06:50 _andyj_ has quit (Remote host closed the connection)
 549 2012-12-18 15:11:06 Diapolo has left ()
 550 2012-12-18 15:13:57 gavinandresen has joined
 551 2012-12-18 15:17:22 rdymac has joined
 552 2012-12-18 15:28:36 jdnavarro has quit (Ping timeout: 272 seconds)
 553 2012-12-18 15:34:29 ThomasV has joined
 554 2012-12-18 15:35:40 rdymac has quit (Quit: This computer has gone to sleep)
 555 2012-12-18 15:35:48 ciphermonk has joined
 556 2012-12-18 15:37:30 rdymac has joined
 557 2012-12-18 15:40:40 Nicksasa is now known as Shroomy
 558 2012-12-18 15:41:03 Shroomy is now known as Nicksasa
 559 2012-12-18 15:42:51 EPiSKiNG- has quit ()
 560 2012-12-18 15:43:05 maaku has joined
 561 2012-12-18 15:44:02 rdponticelli has quit (Ping timeout: 276 seconds)
 562 2012-12-18 15:49:14 ciphermonk has quit (Ping timeout: 276 seconds)
 563 2012-12-18 15:49:31 rdponticelli has joined
 564 2012-12-18 15:54:32 jdnavarro has joined
 565 2012-12-18 15:55:44 rdponticelli has quit (Ping timeout: 276 seconds)
 566 2012-12-18 15:56:06 sgstair has quit (Quit: .•«UPP»•.)
 567 2012-12-18 16:05:17 freakazoid has joined
 568 2012-12-18 16:09:25 rdponticelli has joined
 569 2012-12-18 16:10:20 harkon has joined
 570 2012-12-18 16:10:59 sgstair has joined
 571 2012-12-18 16:12:29 zeks2 has joined
 572 2012-12-18 16:13:34 freakazoid has quit (Ping timeout: 272 seconds)
 573 2012-12-18 16:18:54 da2ce7_d has joined
 574 2012-12-18 16:19:20 skeledrew has quit (Read error: Connection reset by peer)
 575 2012-12-18 16:20:03 topace_ is now known as topace
 576 2012-12-18 16:20:15 topace has quit (Changing host)
 577 2012-12-18 16:20:15 topace has joined
 578 2012-12-18 16:20:49 roconnor has joined
 579 2012-12-18 16:20:51 skeledrew has joined
 580 2012-12-18 16:21:04 da2ce7 has quit (Ping timeout: 252 seconds)
 581 2012-12-18 16:30:18 maaku has quit (Quit: maaku)
 582 2012-12-18 16:30:30 imsaguy is now known as [\\\\\\\\\\\\\\]
 583 2012-12-18 16:36:28 Enrico1 has quit (Quit: Leaving.)
 584 2012-12-18 16:36:47 Enrico1 has joined
 585 2012-12-18 16:37:11 Enrico1 has quit (Client Quit)
 586 2012-12-18 16:38:38 Enrico1 has joined
 587 2012-12-18 16:39:11 Enrico1 has quit (Client Quit)
 588 2012-12-18 16:39:36 Enrico1 has joined
 589 2012-12-18 16:40:27 Enrico1 has quit (Client Quit)
 590 2012-12-18 16:40:52 Enrico1 has joined
 591 2012-12-18 16:43:18 abrkn\ has joined
 592 2012-12-18 16:43:19 abrkn is now known as Guest6117
 593 2012-12-18 16:44:36 Guest6117 has quit (Ping timeout: 264 seconds)
 594 2012-12-18 16:46:54 <lianj> in bitcoind mainnet, is opcode op_eval used or is it just interepreted as op_nop1?
 595 2012-12-18 16:47:26 <sipa> OP_EVAL doesn't exist
 596 2012-12-18 16:49:10 <lianj> cool thanks, so handle op_nop1 as nop then?
 597 2012-12-18 16:51:08 <sipa> indeed
 598 2012-12-18 16:51:43 <lianj> thank you. just asking because of this mainnet tx http://blockexplorer.com/tx/f003f0c1193019db2497a675fd05d9f2edddf9b67c59e677c48d3dbd4ed5f00b
 599 2012-12-18 16:52:08 <sipa> OP_NOP1 was redefined to OP_EVAL by BIP12, but it was replaced by BIP16
 600 2012-12-18 16:52:43 <lianj> right
 601 2012-12-18 16:53:00 <sipa> that looks like a BIP12 transaction, but following current rules, that is just a pubkeyhash check
 602 2012-12-18 16:53:50 <lianj> ok, yea, that was my question, because as bip12 it seems broken anyway oO :D
 603 2012-12-18 16:54:08 <lianj> "04e19cb94dab9efa1e4507c17c81d4fdb0fc9d03c01caac970995ca4788f6e3fd3b2eb0efba75a98b1e1a62f9bdcb71430ce066869facb4f1e20b9ee1d1669b356 OP_DUP OP_HASH160 07e761706c63b36e5a328fab1d94e9397f40704d OP_EQUALVERIFY OP_EVAL"
 604 2012-12-18 16:54:47 abrkn\ has quit (Ping timeout: 256 seconds)
 605 2012-12-18 16:56:00 <sipa> how do you mean BIP12 seems broken?
 606 2012-12-18 16:56:37 <lianj> nah, only the above bip12 script
 607 2012-12-18 16:56:58 <gmaxwell> BIP12 doesn't exist.
 608 2012-12-18 16:57:12 * gmaxwell looks for his men in black flashy thing
 609 2012-12-18 16:57:22 <lianj> ^^
 610 2012-12-18 16:58:00 <sipa> lianj: well you can't really judge brokenness of a rule that isn't implemented by looking at mainnet
 611 2012-12-18 16:58:29 abrkn\ has joined
 612 2012-12-18 16:58:41 ByteUnit has joined
 613 2012-12-18 16:58:59 * lianj deletes all traces of op_eval in his code
 614 2012-12-18 16:59:41 Enrico1 is now known as mit
 615 2012-12-18 16:59:52 mit is now known as Enrico1
 616 2012-12-18 17:02:27 <lianj> done, all gone. :) well, if someone does Script.from_string("foo bar OP_EVAL").to_string it at least doesnt faild but outputs "foo bar OP_NOP1" now
 617 2012-12-18 17:02:29 agricocb has quit (Remote host closed the connection)
 618 2012-12-18 17:03:07 <sipa> what code?
 619 2012-12-18 17:03:27 <lianj> just my silly bitcoin lib
 620 2012-12-18 17:03:57 agricocb has joined
 621 2012-12-18 17:04:44 rdymac has quit (Quit: This computer has gone to sleep)
 622 2012-12-18 17:05:43 harkon has quit (Quit: Konversation terminated!)
 623 2012-12-18 17:19:12 jdnavarro has quit (Remote host closed the connection)
 624 2012-12-18 17:21:37 darkee has quit (!~darkee@gateway/tor-sasl/darkee|Read error: Connection reset by peer)
 625 2012-12-18 17:22:16 darkee has joined
 626 2012-12-18 17:23:27 nus has quit (Read error: Connection reset by peer)
 627 2012-12-18 17:23:45 Diapolo has joined
 628 2012-12-18 17:23:56 nus has joined
 629 2012-12-18 17:25:53 D34TH has joined
 630 2012-12-18 17:25:53 D34TH has quit (Changing host)
 631 2012-12-18 17:25:53 D34TH has joined
 632 2012-12-18 17:29:13 denisx_ has joined
 633 2012-12-18 17:29:14 denisx has quit (Read error: Connection reset by peer)
 634 2012-12-18 17:29:14 denisx_ is now known as denisx
 635 2012-12-18 17:31:09 vampireb has joined
 636 2012-12-18 17:32:44 rdymac has joined
 637 2012-12-18 17:40:36 Eliel has quit (Ping timeout: 260 seconds)
 638 2012-12-18 17:41:01 Eliel has joined
 639 2012-12-18 17:46:18 Diapolo has left ()
 640 2012-12-18 17:49:55 Lefont has joined
 641 2012-12-18 17:50:00 <Enrico1> YOU ARE A PIECE OF SHIT, GREG MAXWELL, AND I AM GOING TO KEEP SAYING THIS UNTIL YOU DO WHAT YOU ARE SUPPOSED TO DO.
 642 2012-12-18 17:50:50 <drizztbsd> italian lamer?
 643 2012-12-18 17:51:26 <Enrico1> no, they just ban all "stams" now
 644 2012-12-18 17:52:02 <Enrico1> can't join as "stam" anymore. it's forbidden
 645 2012-12-18 17:52:57 TD has joined
 646 2012-12-18 17:53:06 <drizztbsd> not really, check the ban list
 647 2012-12-18 17:53:25 <Enrico1> they do it per IP
 648 2012-12-18 17:53:37 <Enrico1> they see "stam" and they ban the IP
 649 2012-12-18 17:54:02 <D34TH> stam?
 650 2012-12-18 17:54:11 <Enrico1> hello D34TH
 651 2012-12-18 17:54:22 <D34TH> Enrico1, sup
 652 2012-12-18 17:54:32 <Enrico1> i used a nickname generator to get the "Enrico"
 653 2012-12-18 17:54:46 <Enrico1> but it's taken already, so it became Enrico1
 654 2012-12-18 17:55:08 <MC1984> youre only feeding gregs ego, you know that right
 655 2012-12-18 17:55:22 <MC1984> if youre accruing haters, youre doing great and important things :)
 656 2012-12-18 17:56:13 <Enrico1> "accruing haters"? don't know how that works
 657 2012-12-18 18:00:50 <gavinandresen> Enrico1: ad-hominem attacks are not welcome here.  Please don't do that again.
 658 2012-12-18 18:00:51 <helo> 1) scam a few people 2) wait
 659 2012-12-18 18:01:27 <D34TH> so noone ever answered my question, what is stam?
 660 2012-12-18 18:01:30 <Enrico1> it's not necessarily the truth, what i am saying, it's just my *opinion* of him!
 661 2012-12-18 18:01:46 <gavinandresen> This IRC channel is not for opinions, it is for technical discussions.
 662 2012-12-18 18:02:08 <Enrico1> i just want him to just remove the WoT rating that says i am a pervert
 663 2012-12-18 18:03:04 <D34TH> why didnt he just pm him
 664 2012-12-18 18:03:08 <D34TH> that is a private matter
 665 2012-12-18 18:03:10 <gavinandresen> thanks jeff
 666 2012-12-18 18:03:13 <D34TH> oh well
 667 2012-12-18 18:03:15 <D34TH> back to bitcoin
 668 2012-12-18 18:03:26 <jgarzik> back to non-bitcoin xmas family shite ;p
 669 2012-12-18 18:03:52 <D34TH> pullreq #2109 please
 670 2012-12-18 18:03:59 <gavinandresen> speaking of technical discussions... anybody have good ideas on what I should get my wife for xmas? :)
 671 2012-12-18 18:04:28 <D34TH> technically you should get shiny stuff
 672 2012-12-18 18:04:35 Lefont has left ()
 673 2012-12-18 18:05:37 <MC1984> bowling ball
 674 2012-12-18 18:05:50 <D34TH> suggestion: include compiled leveldb files in with bitcoin-deps-0.0.5.zip
 675 2012-12-18 18:09:01 CodesInChaos has quit (Ping timeout: 256 seconds)
 676 2012-12-18 18:09:08 <gavinandresen> D34TH: are you Diapolo on github?
 677 2012-12-18 18:09:11 <D34TH> no
 678 2012-12-18 18:09:14 <D34TH> im grimd34th
 679 2012-12-18 18:09:19 <D34TH> but those changes help me also
 680 2012-12-18 18:09:27 <gavinandresen> you're developing on windows?
 681 2012-12-18 18:09:30 <D34TH> yep
 682 2012-12-18 18:09:33 <gavinandresen> mingw?
 683 2012-12-18 18:09:44 <D34TH> mingw + qt
 684 2012-12-18 18:10:10 <gavinandresen> cool. I've been having all sorts of trouble compiling sipa's latest leveldb in an old XP VM
 685 2012-12-18 18:10:20 <gavinandresen> have you had luck?
 686 2012-12-18 18:10:27 <D34TH> sec ill pull sipa's latest
 687 2012-12-18 18:10:47 <gavinandresen> D34TH: his leveldb17 branch, if I recall
 688 2012-12-18 18:11:30 slush has joined
 689 2012-12-18 18:12:08 <D34TH> building
 690 2012-12-18 18:12:53 <D34TH> build.h forced?
 691 2012-12-18 18:14:02 <D34TH> oh nevermind i accidentally put unix instead of mingw
 692 2012-12-18 18:16:55 drizztbsd has quit (Remote host closed the connection)
 693 2012-12-18 18:17:08 abrkn\ has quit (Ping timeout: 255 seconds)
 694 2012-12-18 18:18:49 <D34TH> hmm
 695 2012-12-18 18:18:54 <D34TH> threw unknown platform
 696 2012-12-18 18:19:44 <gavinandresen> I got around that by hacking makefile.mingw to pass $(MAKE) TARGET_OS=NATIVE_WINDOWS libleveldb.a libmemenv.a
 697 2012-12-18 18:21:02 <D34TH> i just pulled my uname -s
 698 2012-12-18 18:21:18 <gavinandresen> what IS your uname -s ?
 699 2012-12-18 18:21:26 <gavinandresen> I get:  MINGW32_NT-5.1
 700 2012-12-18 18:21:35 <D34TH> MINGW32_NT-6.1
 701 2012-12-18 18:21:41 <D34TH> windows version
 702 2012-12-18 18:21:44 <D34TH> im running 7
 703 2012-12-18 18:22:04 yellowhat has quit (Read error: Connection reset by peer)
 704 2012-12-18 18:22:26 <gavinandresen> my vm is XP SP3
 705 2012-12-18 18:22:39 <D34TH> i think i need to upgrade boost
 706 2012-12-18 18:23:32 <D34TH> yep
 707 2012-12-18 18:23:34 <gavinandresen> D34TH: does the current git HEAD leveldb compile for you?
 708 2012-12-18 18:23:40 <D34TH> yea
 709 2012-12-18 18:23:50 <gavinandresen> ok, good to know, I haven't tried that
 710 2012-12-18 18:23:59 <D34TH> want the compiled .a's?
 711 2012-12-18 18:24:10 <sipa> ~my leveldb17 version doesn't touch the windows makefile at all, since i'd have no clue what to put there anyway
 712 2012-12-18 18:24:12 <gavinandresen> D34TH: no, I'm trying to test/debug the NEW code!
 713 2012-12-18 18:25:16 <gavinandresen> D34TH: error I'm running into is db/c.cc:137:42: error: 'strdup' was not declared in this scope
 714 2012-12-18 18:25:29 <D34TH> im getting linking errors
 715 2012-12-18 18:25:35 <D34TH> but im relating it to boost 1.5.0
 716 2012-12-18 18:25:38 <D34TH> **1.50
 717 2012-12-18 18:26:14 <sipa> you have to use 1.51 or 1.52
 718 2012-12-18 18:26:30 <D34TH> i saw that after i started
 719 2012-12-18 18:26:42 <sipa> 1.50 and before have a bug in the thread library for thread
 720 2012-12-18 18:27:07 <gavinandresen> sipa:  actually, the strdup error might be the root cause of the bug:  if the cross-compile environment is picking up /usr/include .h files instead of the cross-compiler ones, then that would explain why vsprintf is crashing
 721 2012-12-18 18:27:45 <sipa> gavinandresen: hmm, indeed
 722 2012-12-18 18:30:09 <gavinandresen> lunch time, I'll dig in more when I'm not so hungry
 723 2012-12-18 18:46:49 toffoo has joined
 724 2012-12-18 18:47:40 denisx_ has joined
 725 2012-12-18 18:49:14 denisx has quit (Ping timeout: 246 seconds)
 726 2012-12-18 18:49:14 denisx_ is now known as denisx
 727 2012-12-18 18:59:49 ThomasV has quit (Quit: Quitte)
 728 2012-12-18 19:00:19 copumpkin has quit (Ping timeout: 265 seconds)
 729 2012-12-18 19:00:52 zeks2 has quit ()
 730 2012-12-18 19:00:55 copumpkin has joined
 731 2012-12-18 19:02:39 DaQatz has joined
 732 2012-12-18 19:04:38 torsthaldo has quit (Remote host closed the connection)
 733 2012-12-18 19:07:32 TD has quit (Quit: TD)
 734 2012-12-18 19:13:19 ovidiusoft has quit (Quit: leaving)
 735 2012-12-18 19:16:11 rdymac has quit (Quit: This computer has gone to sleep)
 736 2012-12-18 19:17:47 roconnor has quit (Quit: Konversation terminated!)
 737 2012-12-18 19:18:17 daybyter has joined
 738 2012-12-18 19:24:04 nibor has joined
 739 2012-12-18 19:27:23 nibor_ has quit (Ping timeout: 260 seconds)
 740 2012-12-18 19:35:38 CodesInChaos has joined
 741 2012-12-18 19:40:17 skeledrew has quit (Read error: No route to host)
 742 2012-12-18 19:41:11 ovidiusoft has joined
 743 2012-12-18 19:41:16 maaku has joined
 744 2012-12-18 19:46:55 owowo has joined
 745 2012-12-18 19:48:53 skeledrew has joined
 746 2012-12-18 19:50:35 <D34TH> sipa, gavinandresen :time to sort through http://pastebin.com/K0u5yXPp
 747 2012-12-18 19:52:30 <sipa> D34TH: what's the compile command line that caused that?
 748 2012-12-18 19:52:44 <D34TH> make -f makefilemingw
 749 2012-12-18 19:52:49 <D34TH> make -f makefile.mingw
 750 2012-12-18 19:53:16 <sipa> the actual command, like the g++ invocation
 751 2012-12-18 19:53:42 <D34TH> sec, lemme see if i can recreate it more
 752 2012-12-18 19:53:48 random_cat has quit (Remote host closed the connection)
 753 2012-12-18 19:53:48 <D34TH> under a seperate env
 754 2012-12-18 19:56:00 <D34TH> sipa: http://pastebin.com/tX71LW5A
 755 2012-12-18 19:56:31 random_cat has joined
 756 2012-12-18 19:59:25 <gavinandresen> sipa: making some progress with the leveldb17 branch; the strdup problem is because strdup is not __STRICT_ANSI__  .  I modified build_detect_platform to pass -std=c++0x -U__STRICT_ANSI__
 757 2012-12-18 19:59:46 <gavinandresen> ... now my problem is the #include <dbghelp.h> in util/env_win.cc
 758 2012-12-18 19:59:56 <gavinandresen> Anybody know what <dbghelp.h> is ?
 759 2012-12-18 20:00:22 <sipa> gavinandresen: dbghelp.h is the single reason i switched to mingw-w64, since mingw32 doesn't seem to have it
 760 2012-12-18 20:00:50 <sipa> alos, i never saw any strdup problem...
 761 2012-12-18 20:00:59 ThomasV has joined
 762 2012-12-18 20:01:53 <sipa> D34TH: no clue
 763 2012-12-18 20:02:06 <D34TH> i think it is libdb
 764 2012-12-18 20:02:12 <D34TH> **leveldb
 765 2012-12-18 20:02:14 <gavinandresen> hmm... I wonder if mingw64 will work in my XP vm... (somehow I think not)
 766 2012-12-18 20:02:23 <D34TH> it only has a 32kb .a
 767 2012-12-18 20:03:07 <D34TH> sipa: what defines -DLEVELDB_PLATFORM_WINDOWS
 768 2012-12-18 20:03:44 <sipa> D34TH: the makefile calling it, i suppose
 769 2012-12-18 20:03:51 <sipa> D34TH: unless it can autodetect
 770 2012-12-18 20:04:15 <D34TH> i can't find it at all in any of the leveldb17 files
 771 2012-12-18 20:04:22 <D34TH> just build_detect_platform
 772 2012-12-18 20:04:52 <sipa> yeah, than you'll need to set it in the calling makefile
 773 2012-12-18 20:04:55 <gavinandresen> build_detect_platform creates build_config.mk, which the makefile includes
 774 2012-12-18 20:05:16 <sipa> oh, i assumed build_detect_platform wouldn't be executed at all on windows
 775 2012-12-18 20:06:04 <sipa> gavinandresen: i think mingw-w64 should work on XP...
 776 2012-12-18 20:06:13 <sipa> (the 32-bit version, presumably, but still)
 777 2012-12-18 20:07:08 ovidiusoft has quit (Quit: leaving)
 778 2012-12-18 20:10:07 freakazoid has joined
 779 2012-12-18 20:12:08 <gavinandresen> aargh, whenever I try to understand mingw I feel like I'm in a maze of twisty compilers, all alike
 780 2012-12-18 20:13:06 <sipa> the '64' in the mingw-w64 name is very confusing... it seems to just be a new generation of mingw which *also* supports 64-bit
 781 2012-12-18 20:13:12 <D34TH> gavinandresen, dont feel bad
 782 2012-12-18 20:13:17 <D34TH> that is actually how it is
 783 2012-12-18 20:14:05 <gavinandresen> sipa: mmm.  So I've got a development environment all setup with mingw32....  I don't suppose there are instructions somewhere for how to upgrade to mingw-w64....
 784 2012-12-18 20:14:43 <sipa> gavinandresen: uninstall mingw32, install mingw-w64
 785 2012-12-18 20:14:51 <sipa> it's really a separate project, i think
 786 2012-12-18 20:16:05 <gavinandresen> ok, that's a project for another day.  I assume I'll have to start over and recompile dependencies, too.
 787 2012-12-18 20:16:22 <sipa> likely, i think
 788 2012-12-18 20:18:23 <phantomcircuit> hmm
 789 2012-12-18 20:18:23 TD has joined
 790 2012-12-18 20:18:34 vampireb has quit (Quit: Lost terminal)
 791 2012-12-18 20:22:37 skeledrew has quit (Ping timeout: 248 seconds)
 792 2012-12-18 20:23:06 DutchBrat has quit (Ping timeout: 272 seconds)
 793 2012-12-18 20:25:12 Tiggr has joined
 794 2012-12-18 20:27:57 MrTiggr has quit (Ping timeout: 248 seconds)
 795 2012-12-18 20:28:54 kjj has quit (Ping timeout: 264 seconds)
 796 2012-12-18 20:34:12 DutchBrat has joined
 797 2012-12-18 20:36:26 CodesInChaos has quit (Ping timeout: 252 seconds)
 798 2012-12-18 20:36:39 kjj has joined
 799 2012-12-18 20:43:22 stealth222 has joined
 800 2012-12-18 20:47:09 root2_ has joined
 801 2012-12-18 20:48:37 root2 has quit (Ping timeout: 252 seconds)
 802 2012-12-18 20:48:45 Jamesz has quit (Ping timeout: 248 seconds)
 803 2012-12-18 20:51:26 slush has quit (Ping timeout: 250 seconds)
 804 2012-12-18 20:53:15 root2_ is now known as root2
 805 2012-12-18 20:56:48 datagutt has quit (Quit: kthxbai)
 806 2012-12-18 20:57:03 da2ce7_d has quit (Read error: Connection reset by peer)
 807 2012-12-18 20:57:20 daybyter has quit (Quit: Konversation terminated!)
 808 2012-12-18 20:58:14 da2ce7_d has joined
 809 2012-12-18 20:59:18 ovidiusoft has joined
 810 2012-12-18 21:02:04 pusle has joined
 811 2012-12-18 21:04:55 killerstorm has joined
 812 2012-12-18 21:05:41 PhantomSpark has joined
 813 2012-12-18 21:06:23 <killerstorm> hi. anybody got testnet coins? muLWgg2Wn4GTbqU44uLLJUNGunWyxai48G
 814 2012-12-18 21:13:03 denisx_ has joined
 815 2012-12-18 21:13:33 <stealth222> just sent you a couple
 816 2012-12-18 21:13:44 <stealth222> 8a9ce79e7b92192b0558e8e9e8acad2b59c2a4e308275dcbb69b3f7a0e3a8ad5
 817 2012-12-18 21:13:45 denisx has quit (Ping timeout: 256 seconds)
 818 2012-12-18 21:13:45 denisx_ is now known as denisx
 819 2012-12-18 21:17:10 <killerstorm> stealth222: thanks!
 820 2012-12-18 21:20:32 <stealth222> np
 821 2012-12-18 21:26:45 LargoG has joined
 822 2012-12-18 21:33:55 sgornick has quit (Read error: Connection reset by peer)
 823 2012-12-18 21:36:11 jgarzik has quit (Read error: Operation timed out)
 824 2012-12-18 21:36:28 jgarzik has joined
 825 2012-12-18 21:36:52 jgarzik is now known as Guest3076
 826 2012-12-18 21:39:00 donnchac has joined
 827 2012-12-18 21:39:09 <donnchac> Hi guys.
 828 2012-12-18 21:39:41 <donnchac> I'm looking at developing a site where each user will have an individual account and address where they can send bitcoin's too.
 829 2012-12-18 21:40:18 <donnchac> I'm just wondering is it best practice to use the "accounts" feature and is this scalable for a large number of users?
 830 2012-12-18 21:40:43 <TD> effectively you'll have one giant wallet
 831 2012-12-18 21:40:56 <TD> from what i know, bitcoins current code doesn't scale well to huge wallets
 832 2012-12-18 21:41:14 <TD> but is that really the best way to do your service? there are usually better ways than running online wallets. what is your overall goal?
 833 2012-12-18 21:43:39 <donnchac> They overall goal it to allow users to agree on freelance work. The money is paid in bitcoins which are stored in escrow by the server.
 834 2012-12-18 21:44:17 <donnchac> The buer would pay into their account on the website and then when they agree a deal, those funds would be locked in.
 835 2012-12-18 21:45:11 maaku has quit (Quit: maaku)
 836 2012-12-18 21:45:57 <donnchac> *the buyer
 837 2012-12-18 21:46:29 <donnchac> I'd like to get the solution correct from the start to allow it to potentially scale to ~10k accounts.
 838 2012-12-18 21:47:09 <gmaxwell> I'm not aware of any reason that having lots of accounts themselves has major scaling issues— but generally if you're thinking of using accounts for anything serious you should reconsider that decision.
 839 2012-12-18 21:47:27 <gmaxwell> There are major challenges with accounts for large scale operations, e.g. backing them up.
 840 2012-12-18 21:48:11 <gmaxwell> For many reasons you need to basically implement the account logic in your own database/app anyways, and then using them in bitcoind just buys you additional bug exposure.
 841 2012-12-18 21:48:22 <sipa> the largest problem is a large number of transactions
 842 2012-12-18 21:48:43 <sipa> as many account-based RPCs are linear in the number of wallet transactions
 843 2012-12-18 21:48:43 <helo> if you are building a system that can send bitcoin at a user's request, you are the perfect target for hackers
 844 2012-12-18 21:48:55 <helo> good luck dealing with that...
 845 2012-12-18 21:51:10 <donnchac> I understand that. I don't really see another way of dealing with the issue.
 846 2012-12-18 21:52:55 <donnchac> gmaxwell: So you would recommend I should just implement bitcoin account management functionality nativily in my app and then just store bitcoins in one account.
 847 2012-12-18 21:53:09 <gmaxwell> Correct.
 848 2012-12-18 21:53:25 <gmaxwell> Accounts in bitcoind are just bookkeeping in any case.
 849 2012-12-18 21:53:28 killerstorm has quit (Quit: Page closed)
 850 2012-12-18 21:53:44 RBecker has quit (Quit: You care. You're there for me.  You love me so much, and I never want to let it go.  You are the one truly amazing person. MDR 3/6/11 <3)
 851 2012-12-18 21:54:43 skeledrew has joined
 852 2012-12-18 21:56:53 <donnchac> Okay, thank you gmaxwell. I'm still trying to figure out the best way of keeping my database synced with the current bitcoind balance.
 853 2012-12-18 21:57:36 <donnchac> Unfortunatly bitcoind doesn't have the ability to make callbacks when new transactions are received?
 854 2012-12-18 21:58:04 <jaromil> ah! now you posed The Question :)
 855 2012-12-18 21:58:35 RBecker has joined
 856 2012-12-18 21:59:06 <gmaxwell> donnchac: it can tell you when new _blocks_ are recieved.
 857 2012-12-18 21:59:22 <gmaxwell> Which is when the balance actually changes, assuming you're not doing something insecure.
 858 2012-12-18 21:59:58 <gmaxwell> There is a proposed patch for callbacks on transactions too.. though .. uh. I'm not a big fan of it.
 859 2012-12-18 22:00:09 <gmaxwell> (It has a lot of dos attack potential. :( )
 860 2012-12-18 22:00:25 <jaromil> true. :/
 861 2012-12-18 22:00:44 one_zero has joined
 862 2012-12-18 22:01:10 <gmaxwell> it'll probably get merged in any case, since the dos potential can be answered by "then don't use it" and there are some things that its pretty useful for.
 863 2012-12-18 22:02:36 <sipa> gmaxwell: the idea someone proposed to keep a queue of callbacks to be performed, and handling those in N threads looks good, though
 864 2012-12-18 22:03:14 <jaromil> sounds like a closure
 865 2012-12-18 22:03:55 <donnchac> What does the timescale look like on that patch? I'm just wondering how most people manage payments interfacing with bitcoind at the moment?
 866 2012-12-18 22:04:07 <gmaxwell> donnchac: they use the block callback.
 867 2012-12-18 22:04:21 <gmaxwell> As mentioned, the balance doesn't change until the blockchain changes.
 868 2012-12-18 22:04:36 <gmaxwell> If you just watch transactions you're also at risk of missing transactions falling out of the chain.
 869 2012-12-18 22:05:10 <donnchac> Okay. I'll look into that. Okay, so I assume that only updates transaction when they are confirmed.
 870 2012-12-18 22:05:16 <jaromil> donnchac: in web terms, you are not going to present people with a "thankyou" page, but with a "thankyou" email somehow later
 871 2012-12-18 22:06:28 <donnchac> How does bitpay etc. do instant notification at the moment. I understand that the transaction would not yet be confirmed at that stage. Thanks for clarifications everyone. I just want to ensure I am sticking with best practice
 872 2012-12-18 22:08:38 <sipa> donnchac: custom code, i expect
 873 2012-12-18 22:09:12 Matt_von_Mises has joined
 874 2012-12-18 22:09:15 fb has joined
 875 2012-12-18 22:09:25 fb has quit (Client Quit)
 876 2012-12-18 22:10:21 <donnchac> Okay, the block callback looks like it will solve my requirements. I was not aware of it before which is why I wasen't sure of the best course of action.
 877 2012-12-18 22:10:41 ofg has joined
 878 2012-12-18 22:10:47 <Matt_von_Mises> I've done something to break my code and I'm wondering what. Are previous block hashes reversed in block headers? I can't remember. When reproducing block #1 I get a header that does not hash correctly. Can anyone find out what is wrong with this data? http://pastebin.com/yCAUeWG1
 879 2012-12-18 22:15:34 libcoin has joined
 880 2012-12-18 22:18:04 libcoin1 has quit (Read error: Connection reset by peer)
 881 2012-12-18 22:18:31 <stealth222> donnchac: I have a database + callback solution that runs as a separate process
 882 2012-12-18 22:18:49 <stealth222> I
 883 2012-12-18 22:19:06 <stealth222> I'd like to eventually merge it with bitcoind
 884 2012-12-18 22:19:34 <donnchac> stealth222: Okay that sounds like the option I will go with.
 885 2012-12-18 22:20:35 <stealth222> block callbacks are sufficient if you only care about confirmed transactions
 886 2012-12-18 22:21:01 ovidiusoft has quit (Ping timeout: 248 seconds)
 887 2012-12-18 22:22:01 libcoin has quit (Ping timeout: 250 seconds)
 888 2012-12-18 22:24:38 <sipa> Matt_von_Mises: seems you have the merkle root backwards at least
 889 2012-12-18 22:24:52 <sipa> and the prev block hash too
 890 2012-12-18 22:24:55 <stealth222> doesn't the block header also need a transaction count?
 891 2012-12-18 22:25:05 <sipa> stealth222: i wish it did
 892 2012-12-18 22:25:08 <sipa> but it doesn't
 893 2012-12-18 22:25:21 <Matt_von_Mises> sipa: Oh, I tried reversing them individually but not both at the same time. Should have tried that!
 894 2012-12-18 22:25:24 <stealth222> oh, right - lol
 895 2012-12-18 22:25:51 <Matt_von_Mises> I have no idea when I changed the code to not reverse the hashes, as it was working before.
 896 2012-12-18 22:25:53 <sipa> Matt_von_Mises: you shouldn't need to reverse anything at all
 897 2012-12-18 22:26:07 <sipa> Matt_von_Mises: it's byte-for-byte the output of the hash function
 898 2012-12-18 22:26:11 <Matt_von_Mises> sipa: When hashing a block the zeros come out on the end...
 899 2012-12-18 22:27:10 _andyj_ has joined
 900 2012-12-18 22:27:14 <sipa> Matt_von_Mises: hmm, you confuse me... i'm not sure anymore
 901 2012-12-18 22:27:31 <stealth222> endianness is one of the most irritating aspects of the protocol
 902 2012-12-18 22:27:52 <Matt_von_Mises> sipa: Bitcoin has this problem everywhere. Trying to remember which way things should go is a nightmare.
 903 2012-12-18 22:28:11 <stealth222> why can't bitcoin just use protocol buffers?
 904 2012-12-18 22:28:33 <sipa> stealth222: satoshi didn't know about that at the time he created the system; he later admitted he wished he did
 905 2012-12-18 22:29:12 _andyj_ has quit (Client Quit)
 906 2012-12-18 22:29:27 <gmaxwell> meh. most of the datastructures are quite simple.
 907 2012-12-18 22:29:39 PhantomSpark has quit (Ping timeout: 276 seconds)
 908 2012-12-18 22:29:56 <stealth222> it's still irritating that there's lack of consistency in endianness
 909 2012-12-18 22:30:24 <sipa> actually, it is consistent: it's always little-endian, except for crypto stuff which happens inside openssl
 910 2012-12-18 22:30:28 slush has joined
 911 2012-12-18 22:31:03 <sipa> but then there is the weird side effect that hashes (which consists of big-endian serialized numbers) get interpreted as little-endian in the bitcoin side
 912 2012-12-18 22:31:55 <gmaxwell> stealth222: I don't think its unusually infuriating. Then again, maybe my brain is damaged from spending time working with devices that have mixtures of ppc and x86 embedded hardware.
 913 2012-12-18 22:32:12 <Matt_von_Mises> No matter what I reverse, I can't get it to hash right. Hmm.
 914 2012-12-18 22:32:32 <sipa> Matt_von_Mises: i think you're right; the zeroes are at the end, and that's also where they should be
 915 2012-12-18 22:32:43 <sipa> so there's probably something else wrong in your header
 916 2012-12-18 22:32:56 <stealth222> gmaxwell: believe me, I've seen far more maddening issues in other projects - bitcoin is pretty clean by comparison to most
 917 2012-12-18 22:33:20 <stealth222> it's still in my nature to try to find even better solutions to problems that have already been solved :p
 918 2012-12-18 22:34:51 <gmaxwell> I think any complex system with more than 100 parts will inevitability have a least one mandatory part that is somewhat braindamaged no matter how hard people work on it. I'm just glad that most of bitcoin's braindamage is nitpicky stuff like byte ordering.
 919 2012-12-18 22:35:43 <Matt_von_Mises> Going by the working genesis block, the merkle root is OK as it is also.
 920 2012-12-18 22:35:53 Lolcust has quit (Ping timeout: 255 seconds)
 921 2012-12-18 22:37:03 <sipa> Matt_von_Mises: and time and nonce are also ok
 922 2012-12-18 22:37:09 <etotheipi_> sipa, how many UTXOs are there currently?  (do you know?)
 923 2012-12-18 22:37:17 <etotheipi_> order of magnitude would work
 924 2012-12-18 22:37:42 <gmaxwell> there is an rpc for this. :P
 925 2012-12-18 22:38:03 <sipa> $ ./bitcoind gettxoutsetinfo
 926 2012-12-18 22:38:11 <gmaxwell>     "transactions" : 1381563,
 927 2012-12-18 22:38:11 <sipa>     "transactions" : 1381563,
 928 2012-12-18 22:38:11 <gmaxwell>     "txouts" : 3123676,
 929 2012-12-18 22:38:11 <gmaxwell>     "bytes_serialized" : 123743563
 930 2012-12-18 22:38:11 <sipa>     "txouts" : 3123676,
 931 2012-12-18 22:38:25 <gmaxwell> I like that we both thought to cut off the bestblock.
 932 2012-12-18 22:38:44 <etotheipi_> heh
 933 2012-12-18 22:39:11 <sipa> gmaxwell: seems our systems are well-synchronized :)
 934 2012-12-18 22:39:24 <sipa> (my bytes_serialized is also the same)
 935 2012-12-18 22:40:10 <stealth222> hmmm, I'm getting 3130985 - but I guess you're only counting outputs in blocks
 936 2012-12-18 22:40:31 <stealth222> outputs in blocks in the main chain, yes?
 937 2012-12-18 22:41:45 Lolcust has joined
 938 2012-12-18 22:41:59 <sipa> where else?
 939 2012-12-18 22:42:03 <stealth222> mempool
 940 2012-12-18 22:42:13 <sipa> ah, yes, no only block chain
 941 2012-12-18 22:42:14 <gmaxwell> stealth222: why do you do that?
 942 2012-12-18 22:42:22 <stealth222> do what?
 943 2012-12-18 22:42:32 <gmaxwell> Include the mempool in your txout set count?
 944 2012-12-18 22:42:33 _andyj_ has joined
 945 2012-12-18 22:42:45 <sipa> well you have to while checking incoming mempool transactions
 946 2012-12-18 22:43:02 <sipa> it makes sense, blockchain + mempool define a consistent UTXO set
 947 2012-12-18 22:43:24 <gmaxwell> ::nods:: if you're actually combining them though that sounds messy when block knocks some out of your mempool as conflicts.
 948 2012-12-18 22:43:52 <stealth222> that could happen with reorgs, too
 949 2012-12-18 22:43:59 <sipa> well the gettxout RPC call allows you to select whether you include mempool txn
 950 2012-12-18 22:44:09 <sipa> which removes things spent by the mempool
 951 2012-12-18 22:44:19 <TD> the endianness was a huge PITA when i was first writing bitcoinj, but once it's done, it's done
 952 2012-12-18 22:44:42 <TD> from that point on things are pretty much plain sailing. i mean the algorithms are complex.
 953 2012-12-18 22:44:46 <TD> but the protocol itself isn't an issue
 954 2012-12-18 22:45:26 <etotheipi_> sipa: do you know how many tx are completely pruneable?
 955 2012-12-18 22:45:44 <etotheipi_> i.e. it sounds like if all outputs of a tx aren't entirely spent, then you have to keep the full tx
 956 2012-12-18 22:46:44 <sipa> etotheipi_: 1381563 is the number of not-completely-spent transactions
 957 2012-12-18 22:46:52 <etotheipi_> sipa:  oh
 958 2012-12-18 22:46:57 <etotheipi_> perfect
 959 2012-12-18 22:47:11 <sipa> it's 9-10 million in total
 960 2012-12-18 22:47:13 <etotheipi_> and if i'm not mistaken, there's about 10mil tx in the history?
 961 2012-12-18 22:47:17 <TD> actually re: protocol buffers
 962 2012-12-18 22:47:25 <etotheipi_> okay... that's a pretty good ration
 963 2012-12-18 22:47:27 <TD> by the time they were open sourced satoshi had written the serialization code
 964 2012-12-18 22:47:27 <etotheipi_> *ratio
 965 2012-12-18 22:47:36 skeledrew has quit (Ping timeout: 265 seconds)
 966 2012-12-18 22:47:46 <TD> also he wanted the simplest protocol possible to minimize angles of attack
 967 2012-12-18 22:47:47 <etotheipi_> though I imagine the bigger tx are the ones not getting pruned and taking up more space
 968 2012-12-18 22:48:00 <etotheipi_> ("bigger" = more UTXOs)
 969 2012-12-18 22:48:27 <sipa> 10051038 transactions in total now
 970 2012-12-18 22:51:17 <gmaxwell> Two of the major pieces of "protocol significant" third party code we've been using— openssl and BDB— have both created problems for us. I'd only expect that to be true with a serialization library too.
 971 2012-12-18 22:51:49 Guest3076 has quit (Changing host)
 972 2012-12-18 22:51:49 Guest3076 has joined
 973 2012-12-18 22:51:51 Guest3076 is now known as jgarzik
 974 2012-12-18 22:52:28 <stealth222> are you talking about security issues, gmaxwell? side channel attacks and stuff?
 975 2012-12-18 22:52:36 <MC1984> any plans to dump openssl?
 976 2012-12-18 22:52:49 <Luke-Jr> MC1984: not really practical, that's the problem :P
 977 2012-12-18 22:53:00 <Luke-Jr> OpenSSL is effectively part of the Bitcoin network rules
 978 2012-12-18 22:53:11 libcoin has joined
 979 2012-12-18 22:53:16 <stealth222> it is?
 980 2012-12-18 22:53:26 <gmaxwell> It is. Though it can be immitated easily enough.
 981 2012-12-18 22:53:29 skeledrew has joined
 982 2012-12-18 22:53:38 <Luke-Jr> gmaxwell: as far as we know :/
 983 2012-12-18 22:53:44 <gmaxwell> stealth222: implicit behavior creating effective rules that we don't know about.
 984 2012-12-18 22:53:56 <MC1984> what do you use openssl for
 985 2012-12-18 22:54:06 <Luke-Jr> MC1984: ECDSA signature verification
 986 2012-12-18 22:54:12 <gmaxwell> Luke-Jr: well the testing sipa did on the encoding normalization is fairly persuasive.
 987 2012-12-18 22:54:16 <Luke-Jr> MC1984: and it supports non-standard signatures!
 988 2012-12-18 22:54:18 <stealth222> but there could be other implementations of bitcoind that use a different crypto library that still comply with the network rules
 989 2012-12-18 22:54:33 <stealth222> not sure I understand what you mean by "network rules"
 990 2012-12-18 22:54:45 <MC1984> i didnt know openssl did the elliptic curve stuff
 991 2012-12-18 22:54:45 <Luke-Jr> stealth222: they would need to implement OpenSSL's non-standard signature formats to be compliant
 992 2012-12-18 22:54:47 <gmaxwell> There could be. Maybe.
 993 2012-12-18 22:54:52 <MC1984> i thought that was exotic and non mainstream
 994 2012-12-18 22:55:16 <stealth222> aren't the formats independent of implementation?
 995 2012-12-18 22:55:32 <gmaxwell> stealth222: the problem is that these libraries have undisclosed, undocumented, and probably unknown to everyone on earth behavior that when used by bitcoin became mandatory parts of the system.
 996 2012-12-18 22:55:50 <gmaxwell> stealth222: we have serialized signatures and keys in transactions.
 997 2012-12-18 22:56:22 BlackPrapor has quit (Quit: KVIrc 4.0.4 Insomnia http://www.kvirc.net/)
 998 2012-12-18 22:56:33 <gmaxwell> If you send me a signature with an invalid encoding that openssl happens to accept, I'll accept it.  And the bitcoin participants must be consistent, so once its in the chain everyone else must accept it too or the world ends.
 999 2012-12-18 22:57:14 <stealth222> I understand that issues pertaining to randomization and such might be implementation-specific. but the actual ECDSA algorithm and signature formats are public knowledge. I guess this would be an issue if OpenSSL was the only way to verify the signature
1000 2012-12-18 22:57:31 <gmaxwell> worse, if openssl were to have some subtle changes and accept more invalid encodings or reject some it used to accept— something that might not even get a major version bump or a release note,  ... that may cause a network split.
1001 2012-12-18 22:57:59 <helo> terrifying :/
1002 2012-12-18 22:58:18 <stealth222> are there any known inputs for which OpenSSL gives an output inconsistent with the published algorithms and formats?
1003 2012-12-18 22:58:23 <gmaxwell> stealth222: okay, I'm not sure whats clear. The encoding is well know. Openssl's implementation will accept invalid encodings as valid. Do you follow that much?
1004 2012-12-18 22:58:27 <gmaxwell> _yes_
1005 2012-12-18 22:58:35 <stealth222> ok, invalid encodings
1006 2012-12-18 22:58:44 <Luke-Jr> stealth222: many
1007 2012-12-18 22:58:44 <stealth222> so it gives false positives
1008 2012-12-18 22:59:03 <stealth222> does it give any false negatives?
1009 2012-12-18 22:59:22 <gmaxwell> It lets you encode a valid ecdsa signature in an invalid way... and then successfully decodes it and allows it to pass.
1010 2012-12-18 22:59:44 <stealth222> is there an error-correcting algorithm possible?
1011 2012-12-18 22:59:49 <gmaxwell> and so that behavior means that an alternative correct implementation would give false negatives relative to openssl.
1012 2012-12-18 23:00:23 <gmaxwell> I have no idea what you're thinking there.
1013 2012-12-18 23:00:23 <stealth222> is it possible to take any encoding that OpenSSL accepts and transform it into a cannonical one?
1014 2012-12-18 23:00:24 <Luke-Jr> http://finance.fortune.cnn.com/2012/12/18/bitcoin-money-laundering/ <-- someone smack this guy :\
1015 2012-12-18 23:00:59 <gmaxwell> stealth222: yes, by copying the openssl code and using it to extract the signatures.
1016 2012-12-18 23:01:27 <stealth222> ok - so no information is lost in the "invalid encoding"
1017 2012-12-18 23:01:29 <gmaxwell> stealth222: you could do less than that... but you'd have at least some risk that your reimplementation of openssl's implicit behavior was not faithful.
1018 2012-12-18 23:02:00 <gmaxwell> (because none of that behavior was really intended it may not be especially obvious)
1019 2012-12-18 23:02:41 <stealth222> couldn't a later version of bitcoin require valid encodings for all transactions signed past a certain block?
1020 2012-12-18 23:02:53 <gmaxwell> stealth222: it just means that bitcoin nodes must accept the exact set (no more, no less) of invalid encodings that openssl accepts.
1021 2012-12-18 23:03:08 <gmaxwell> Yes though thats a risky soft forking upgrade. We may perform it at some point.
1022 2012-12-18 23:03:28 <weex> so is this a suggestion to add more tests to openssl?
1023 2012-12-18 23:03:56 <gmaxwell> weex: I don't know that I'd say openssl is "at fault" here,  we're using it for something it was not really intended for.
1024 2012-12-18 23:04:00 vampireb has joined
1025 2012-12-18 23:04:46 <weex> sure, then in the bitcoin build process
1026 2012-12-18 23:04:48 <stealth222> well, cannonical encodings are sort of necessary if you want to be able to make data searchable by hash
1027 2012-12-18 23:04:52 <gmaxwell> For many things "be liberal in what you accept" works out okay, — it used to even be considered a good practice for network protocols, but its utterly incompatible with distributed consensus.
1028 2012-12-18 23:05:24 <gmaxwell> weex: it's a dynamic library, it would need to be a runtime test.
1029 2012-12-18 23:05:35 <sipa> stealth222: there were canonical encodings proposed, and checks (which don't depend on OpenSSL themselves!) are implemented
1030 2012-12-18 23:05:35 <gmaxwell> since the behavior could change out from under us. :(
1031 2012-12-18 23:05:50 <sipa> stealth222: they are not enforced on the network though (yet)
1032 2012-12-18 23:06:09 <weex> this is a cool story
1033 2012-12-18 23:06:34 <gmaxwell> stealth222: in the case of bdb, we had different fun— for example old bitcoin nodes couldn't do reorgs that moved too many transactions because of some mostly invisible locking limits.
1034 2012-12-18 23:06:37 <Luke-Jr> it would be nice to divide "this should be illegal" transactions from non-standard ones <.<
1035 2012-12-18 23:06:59 <sipa> Luke-Jr: have you seen the implementation, even?
1036 2012-12-18 23:07:18 <Luke-Jr> not yet :P
1037 2012-12-18 23:07:24 <sipa> it's in HEAD
1038 2012-12-18 23:07:44 <gmaxwell> there is still the mod-field issue.
1039 2012-12-18 23:07:46 <sipa> pass a flag to VerifySignature and it will enforce canonical encodings
1040 2012-12-18 23:08:11 <sipa> has nothing to do with IsStandard
1041 2012-12-18 23:08:40 <sipa> gmaxwell: yes, but i fear rolling that out will take even longer (and even more custom crypto code)
1042 2012-12-18 23:09:01 <sipa> in all clients
1043 2012-12-18 23:09:39 <gmaxwell> Does the even/odd test just happen to work with (most) signatures already being produced?
1044 2012-12-18 23:09:43 <jgarzik> Luke-Jr: (RE URL) SIGH
1045 2012-12-18 23:10:01 <sipa> gmaxwell: don't think so
1046 2012-12-18 23:10:08 <gmaxwell> :-/
1047 2012-12-18 23:11:08 <gmaxwell> converting isn't so hard, assuming you can do an addition mod p, I guess. e.g. do the test, then do the addition if it fails.
1048 2012-12-18 23:12:16 <gmaxwell> at least its easily tested code too.
1049 2012-12-18 23:12:34 <sipa> sure, it's easy code, but it requires low-level EC calls instead of just ECDSA api calls
1050 2012-12-18 23:13:15 <gmaxwell> I wonder if there is a more complex test that existing transactions do match.
1051 2012-12-18 23:13:28 <sipa> very doubtful
1052 2012-12-18 23:13:29 skeledrew has quit (Ping timeout: 272 seconds)
1053 2012-12-18 23:13:54 * gmaxwell shakes his fist at randomness.
1054 2012-12-18 23:14:06 Tiggr has quit (Ping timeout: 272 seconds)
1055 2012-12-18 23:14:30 <sipa> ifbthere was such a criterion, i'd consider that a bug in openssl
1056 2012-12-18 23:14:30 rdponticelli has quit (Ping timeout: 276 seconds)
1057 2012-12-18 23:15:59 <stealth222> were these OpenSSL issues known at the beginning?
1058 2012-12-18 23:16:17 <gmaxwell> well, you could argue it another way: it's leaking a bit from the random value when you do repeated signatures, no? sounds a little scary.
1059 2012-12-18 23:16:20 <gmaxwell> stealth222: of course not.
1060 2012-12-18 23:18:30 <gmaxwell> aand again, I don't really mean to single out openssl ... some other crypto library might have its own implicit overly accepting behavior.
1061 2012-12-18 23:19:51 skeledrew has joined
1062 2012-12-18 23:22:00 <stealth222> do all implementations of OpenSSL share the same behavior? and is there a risk of future versions "fixing" them and therefore breaking bitcoin?
1063 2012-12-18 23:23:17 <sipa> we've used this "flexibility" to our advantage as well already: compressed pubkeys would have required a hardfork otherwise
1064 2012-12-18 23:23:58 <stealth222> not sure I follow, sipa
1065 2012-12-18 23:24:32 Matt_von_Mises has quit (Quit: Leaving.)
1066 2012-12-18 23:24:50 <sipa> conpressed pubkeys were accepted by openssl, so we could just start using them, and old bitcoin nodes on the network would validate them as valid
1067 2012-12-18 23:25:02 <stealth222> a compressed pubkey just means one of the two curve coordinates are passed, right?
1068 2012-12-18 23:25:11 <sipa> yes
1069 2012-12-18 23:25:20 <sipa> plus one bit to denote the oddness of Y
1070 2012-12-18 23:25:53 agricocb has quit (Quit: Leaving.)
1071 2012-12-18 23:26:35 skeledrew has quit (Ping timeout: 250 seconds)
1072 2012-12-18 23:26:50 <stealth222> but this is a well-known format that can be rigorously defined - sounds like a far cry from what you were saying earlier regarding mysterious behavior
1073 2012-12-18 23:27:10 <sipa> sure
1074 2012-12-18 23:27:29 <sipa> but it also allows a non-standard hybrid format for ec points
1075 2012-12-18 23:28:16 <stealth222> nonstandard-but-rigorously-defined is not nearly as scary to me as standard-but-impossible-to-reproduce
1076 2012-12-18 23:28:17 <sipa> and for signatures, it allows incorrectly padded numbers and negative numbers (as long as they're correct when interpreted as unsigned number)
1077 2012-12-18 23:28:40 <sipa> and incorrect values in the headers
1078 2012-12-18 23:29:44 <sipa> which are all fine... trying to accept as many inputs is meaningful
1079 2012-12-18 23:29:47 <gmaxwell> sipa: it's computers, it's never impossible to reproduce! :)
1080 2012-12-18 23:29:54 <gmaxwell> er stealth222
1081 2012-12-18 23:30:03 <stealth222> well, not impossible - but often impractical
1082 2012-12-18 23:30:08 <sipa> but we depend on the exact casesbwhuch are or are not allowed
1083 2012-12-18 23:30:26 <stealth222> I mean, I'm talking about defining algorithmically what's going on independent from specific implementation
1084 2012-12-18 23:30:33 ThomasV has quit (Quit: Quitte)
1085 2012-12-18 23:31:01 <stealth222> a flexible format isn't too much of a problem as long as equivalence classes are well-defined
1086 2012-12-18 23:31:35 <gmaxwell> stealth222: it is, however, impossible when you _don't_ know about the issue because the behavior is surprising and not documented.
1087 2012-12-18 23:31:55 <stealth222> OpenSSL's documentation does leave a LOT to be desired - that's for sure
1088 2012-12-18 23:32:30 <stealth222> gmaxwell: so are you saying all these things were intended as features? because it sounds like some of them are bugs.
1089 2012-12-18 23:33:03 <gmaxwell> who knows, not documented. Some could be bugs, some could be intended.. for most of what openssl is used for being permissive is beneficial.
1090 2012-12-18 23:34:24 <stealth222> so you know of instances where OpenSSL validates a signature and you can't figure out the pattern in the input that maps it to a standard format?
1091 2012-12-18 23:34:50 <stealth222> regardless of how nonstandard that mapping is
1092 2012-12-18 23:35:22 <Luke-Jr> stealth222: you can't correct the signatures without changing the txid
1093 2012-12-18 23:35:25 <gmaxwell> No, thats not the issue. But for example because it will accept nonstandard forms you can modify other people's transactions before they're mined.
1094 2012-12-18 23:35:58 panzer has joined
1095 2012-12-18 23:36:35 <stealth222> you can modify the signature, which would modify the tx hash - but wouldn't the outputs still be the same?
1096 2012-12-18 23:36:46 <stealth222> err, I mean
1097 2012-12-18 23:36:54 <stealth222> wouldn't it still be possible for the recipient to claim it?
1098 2012-12-18 23:36:55 <Luke-Jr> stealth222: yes, but if any of those outputs are spent, the transaction spending them is invalid if the txid changed
1099 2012-12-18 23:37:17 <stealth222> I understand that part, Luke-Jr
1100 2012-12-18 23:37:48 <gmaxwell> it also means you can parasitically stuff data into the blockchain on other people's txns.
1101 2012-12-18 23:38:24 <stealth222> so the workaround to what Luke-Jr is saying is to monitor for this and resend using the new txid
1102 2012-12-18 23:38:41 <stealth222> but it would break the entire transaction chain following it
1103 2012-12-18 23:38:44 <Luke-Jr> stealth222: you're assuming the person resending isn't the hostile part
1104 2012-12-18 23:38:46 <Luke-Jr> party*
1105 2012-12-18 23:39:18 <sipa> stealth222: the problem is not making other implementations tolerant in their decodinh
1106 2012-12-18 23:39:28 eoss has joined
1107 2012-12-18 23:39:32 <sipa> the problem is making them exactly as tolerant as openssl is
1108 2012-12-18 23:40:06 <sipa> and modifying transactions in-flight is a very bad idea
1109 2012-12-18 23:40:17 <gmaxwell> no more, no less. Either spells disaster.  And how tolterant it is isn't well defined.
1110 2012-12-18 23:40:40 <gmaxwell> I mean, there is the existing code but they have not sworn to a suicide pact to never change it.
1111 2012-12-18 23:41:06 <gmaxwell> This is by no means insoluable.. I brought it up as an example of how using third party code for encoding has not worked out so well for us.
1112 2012-12-18 23:41:29 <phantomcircuit> which sort of begs the question
1113 2012-12-18 23:41:45 <phantomcircuit> has anybody tested different versions of openssl?
1114 2012-12-18 23:42:33 <stealth222> could someone use modification of transactions in flight for DoS?
1115 2012-12-18 23:42:44 <stealth222> or splitting the network?
1116 2012-12-18 23:43:12 <gmaxwell> stealth222: dos against end user applications that make some assumptions about how txn work, yes.. against the network itself, no not really.
1117 2012-12-18 23:43:28 <gmaxwell> And it can't split the network so long as everything pretends to be the current version of openssl.
1118 2012-12-18 23:43:47 <gmaxwell> phantomcircuit: I diff openssl when updating the rpms I host, and I might notice this code changing.
1119 2012-12-18 23:44:29 <stealth222> the attack that Luke-Jr was referring to would almost appear like a double-spend, no?
1120 2012-12-18 23:44:40 <gmaxwell> it would.
1121 2012-12-18 23:46:08 <stealth222> except the outputs would be the same
1122 2012-12-18 23:46:12 freakazoid has quit (Ping timeout: 256 seconds)
1123 2012-12-18 23:46:15 <stealth222> in both transactions
1124 2012-12-18 23:46:25 <gmaxwell> Yes. it's isomorphic but you have to be sufficiently smart.
1125 2012-12-18 23:47:10 Tiggr has joined
1126 2012-12-18 23:47:21 <gmaxwell> I could also see thing being used to rob a bank like service. It pays you, you mutate the transaction.. and the clone confirms... but the site sees that its payment to you hasn't actually confirmed and you get it to reissue (perhaps with a bigger fee to make it confirm)...
1127 2012-12-18 23:47:27 Tiggr has quit (Read error: Connection reset by peer)
1128 2012-12-18 23:47:42 <gmaxwell> I don't believe anything is currently vulnerable to that, but I could easily see it happening in the future.
1129 2012-12-18 23:47:53 <Luke-Jr> gmaxwell: I don't believe anyone has tried it :o
1130 2012-12-18 23:48:25 <gmaxwell> well I don't know of a site that will do an automatic reissue with more fees.
1131 2012-12-18 23:48:50 <gmaxwell> might work against joe-average OTCer.. "your payment didn't go through! send again!"
1132 2012-12-18 23:48:51 <Luke-Jr> MtGox
1133 2012-12-18 23:49:00 <stealth222> interesting...so you could do something akin to double-spend detection (i.e. check to see if any other transactions claim the same input) but on your own transactions
1134 2012-12-18 23:49:05 <gmaxwell> oops I didn't actually intend to disclose a potential vulnerability.
1135 2012-12-18 23:49:25 <Luke-Jr> MagicalTux:
1136 2012-12-18 23:49:46 <Luke-Jr> gmaxwell: otoh, MagicalTux probably knows enough to ensure he's reusing an input
1137 2012-12-18 23:50:17 <stealth222> right, to resend you have to sign from the same inputs to make sure you don't get ripped off
1138 2012-12-18 23:50:20 <stealth222> err
1139 2012-12-18 23:50:23 <stealth222> claim the same outputs
1140 2012-12-18 23:51:08 <stealth222> or just rebroadcast the same transaction if you're not sure
1141 2012-12-18 23:51:25 <gmaxwell> if you're changing the fees you'll want to change inputs and not send the same txn.
1142 2012-12-18 23:51:38 skeledrew has joined
1143 2012-12-18 23:51:40 <MagicalTux> when we re-issue with more fees, we use the same inputs
1144 2012-12-18 23:51:50 <gmaxwell> but yes, this can be dealt with— if you know. I think its likely that I would have gotten it right, but I suspect some people wouldn't.
1145 2012-12-18 23:52:00 <gmaxwell> MagicalTux: thats good!
1146 2012-12-18 23:56:24 agricocb has joined
1147 2012-12-18 23:56:52 brwyatt is now known as Away!~brwyatt@brwyatt.net|brwyatt
1148 2012-12-18 23:57:15 dvide has quit ()