1 2012-05-30 00:02:33 <D34TH> i hate openvz
   2 2012-05-30 00:02:35 <D34TH> :/
   3 2012-05-30 00:03:51 rebroad has joined
   4 2012-05-30 00:04:15 rebroad has quit (Remote host closed the connection)
   5 2012-05-30 00:04:28 rebroad has joined
   6 2012-05-30 00:06:17 slush has joined
   7 2012-05-30 00:06:32 slush has quit (Changing host)
   8 2012-05-30 00:06:32 slush has joined
   9 2012-05-30 00:07:55 spaola has quit (Remote host closed the connection)
  10 2012-05-30 00:08:15 da2ce7 has quit (Ping timeout: 244 seconds)
  11 2012-05-30 00:08:22 amiller has quit (Read error: Operation timed out)
  12 2012-05-30 00:10:23 amiller has joined
  13 2012-05-30 00:11:47 spaola has joined
  14 2012-05-30 00:14:02 da2ce7 has joined
  15 2012-05-30 00:14:26 paraipan has quit (Quit: Saliendo)
  16 2012-05-30 00:18:14 Zarutian has joined
  17 2012-05-30 00:19:33 spaola has quit (Remote host closed the connection)
  18 2012-05-30 00:20:14 rebroad has quit (Remote host closed the connection)
  19 2012-05-30 00:20:42 rebroad has joined
  20 2012-05-30 00:21:19 <splatster> Question: Do "change" outputs need to be confirmed before they can be spend?
  21 2012-05-30 00:21:53 spaola has joined
  22 2012-05-30 00:23:59 <gmaxwell> define 'spend'?
  23 2012-05-30 00:24:44 <gmaxwell> you can write endless chains of unconfirmed txn, though the client avoids it if it can. the chidren can only be mined at the same time or later than the parents.
  24 2012-05-30 00:24:46 <splatster> s/spend/spent/
  25 2012-05-30 00:25:06 <splatster> Ok let me rephrase it.
  26 2012-05-30 00:25:10 <luke-jr> splatster: protocolly, only generated coins have spending restrictions
  27 2012-05-30 00:25:26 <splatster> luke-jr: What about in bitcoind?
  28 2012-05-30 00:25:35 <gmaxwell> and client wise it will spend with 0 confirm if FromMe
  29 2012-05-30 00:25:46 <gmaxwell> (though only as a last resort)
  30 2012-05-30 00:25:48 <luke-jr> splatster: bitcoind and Bitcoin-Qt will never spend coins until 1 confirmation, unless you sent them too
  31 2012-05-30 00:25:52 <luke-jr> such as change
  32 2012-05-30 00:26:06 <luke-jr> splatster: that was a bugfix ;)
  33 2012-05-30 00:26:37 <luke-jr> CVE-2010-5140
  34 2012-05-30 00:26:52 <splatster> ok, so as of 0.6.2, if a change output from my own TX needs to be spent, it won't need a confirm to be spent, yes?
  35 2012-05-30 00:27:09 <gmaxwell> splatster: e.g. I have a 1000 btc input. I spend 500 ... giving 500 change. then before thats mined I can spend 100 again and it can use that 500 change txn.. though its likely to want fees in such cases, and will avoid it if it can.
  36 2012-05-30 00:27:21 <luke-jr> splatster: correct
  37 2012-05-30 00:27:32 <splatster> ok great
  38 2012-05-30 00:27:44 <gmaxwell> otherwise you'd constantly be getting stuck for inexplicable reasons.
  39 2012-05-30 00:27:47 <splatster> TX fees are never really a worry for me, I'm glad to pay the pools a little extra.
  40 2012-05-30 00:27:51 da2ce7 has quit (Ping timeout: 248 seconds)
  41 2012-05-30 00:27:55 <gmaxwell> because you have no idea what the distrubtion of your inputs looks like.
  42 2012-05-30 00:28:00 <splatster> ya
  43 2012-05-30 00:28:05 <luke-jr> splatster: see https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures#CVE-2010-5140 for why you don't want to spend others' 0-confirm txns :p
  44 2012-05-30 00:30:21 spaola has quit (Remote host closed the connection)
  45 2012-05-30 00:31:32 Zarutian has quit (Remote host closed the connection)
  46 2012-05-30 00:31:40 spaola has joined
  47 2012-05-30 00:32:04 e0s_ has joined
  48 2012-05-30 00:32:16 Zarutian has joined
  49 2012-05-30 00:34:14 Zarutian_ has joined
  50 2012-05-30 00:34:17 sirk390 has quit (Quit: Leaving.)
  51 2012-05-30 00:35:18 toffoo has joined
  52 2012-05-30 00:36:38 Zarutian has quit (Ping timeout: 250 seconds)
  53 2012-05-30 00:40:33 Zarutian_ has quit (Ping timeout: 246 seconds)
  54 2012-05-30 00:42:29 rebroad has quit (Ping timeout: 276 seconds)
  55 2012-05-30 00:47:20 Zarutian has joined
  56 2012-05-30 00:50:16 da2ce7 has joined
  57 2012-05-30 00:52:28 freewil has quit (Quit: Leaving)
  58 2012-05-30 00:55:36 jondoe has joined
  59 2012-05-30 01:03:55 BTC_Bear is now known as BTC_Bear|hbrntng
  60 2012-05-30 01:06:36 BTC_Bear is now known as hbrntng!~BTC_Bear@unaffiliated/btc-bear/x-5233302|BTC_Bear
  61 2012-05-30 01:08:53 tyn has quit (Ping timeout: 252 seconds)
  62 2012-05-30 01:11:52 freewil has joined
  63 2012-05-30 01:18:11 tyn has joined
  64 2012-05-30 01:19:45 Zarutian has quit (Ping timeout: 246 seconds)
  65 2012-05-30 01:27:50 Zarutian has joined
  66 2012-05-30 01:31:39 skeledrew1 has quit (Ping timeout: 246 seconds)
  67 2012-05-30 01:33:25 skeledrew1 has joined
  68 2012-05-30 01:39:42 skeledrew1 has quit (Ping timeout: 246 seconds)
  69 2012-05-30 01:39:55 skeledrew1 has joined
  70 2012-05-30 01:48:27 skeledrew1 has quit (Ping timeout: 246 seconds)
  71 2012-05-30 01:54:16 jondoe has quit (Quit: leaving)
  72 2012-05-30 01:57:10 jondoe has joined
  73 2012-05-30 01:58:24 rdponticelli_ has joined
  74 2012-05-30 01:58:32 rdponticelli has quit (Ping timeout: 245 seconds)
  75 2012-05-30 02:02:36 BlueMatt_ has joined
  76 2012-05-30 02:02:52 BlueMatt has quit (Disconnected by services)
  77 2012-05-30 02:02:52 BlueMatt_ is now known as BlueMatt
  78 2012-05-30 02:02:55 BlueMatt has quit (Changing host)
  79 2012-05-30 02:02:55 BlueMatt has joined
  80 2012-05-30 02:03:04 dstien has quit (Ping timeout: 260 seconds)
  81 2012-05-30 02:03:24 dstien has joined
  82 2012-05-30 02:15:03 Zarutian has quit (Ping timeout: 246 seconds)
  83 2012-05-30 02:22:05 Zarutian has joined
  84 2012-05-30 02:23:56 slush has quit (Ping timeout: 252 seconds)
  85 2012-05-30 02:25:59 Snapman is now known as Snapman[afkers]
  86 2012-05-30 02:28:31 jondoe has quit (Ping timeout: 265 seconds)
  87 2012-05-30 02:29:11 Snapman[afkers] is now known as Snapman
  88 2012-05-30 02:29:51 Karmaon is now known as doesUbuntuHateAw
  89 2012-05-30 02:29:58 minimoose has joined
  90 2012-05-30 02:30:00 doesUbuntuHateAw is now known as AwayNickAwayNick
  91 2012-05-30 02:30:10 AwayNickAwayNick is now known as Karmaon
  92 2012-05-30 02:36:52 brwyatt is now known as brwyatt|Away
  93 2012-05-30 02:39:31 TheSeven has quit (Disconnected by services)
  94 2012-05-30 02:39:40 [7] has joined
  95 2012-05-30 02:48:26 enquirer has quit (Ping timeout: 244 seconds)
  96 2012-05-30 02:54:17 brwyatt is now known as Away!~brwyatt@pool-96-226-236-130.dllstx.fios.verizon.net|brwyatt
  97 2012-05-30 03:00:48 noagendamarket has joined
  98 2012-05-30 03:02:09 osmosis has quit (Quit: Leaving)
  99 2012-05-30 03:03:10 Maged has joined
 100 2012-05-30 03:05:01 Z0rZ0rZ0r1 has joined
 101 2012-05-30 03:05:01 Z0rZ0rZ0r has quit (Disconnected by services)
 102 2012-05-30 03:12:48 iddo has quit (Ping timeout: 246 seconds)
 103 2012-05-30 03:14:30 iddo has joined
 104 2012-05-30 03:24:52 one_zero has joined
 105 2012-05-30 03:25:06 Xunie has quit (Remote host closed the connection)
 106 2012-05-30 03:27:41 Internet13 has quit (Read error: Connection reset by peer)
 107 2012-05-30 03:27:55 twmz__ has quit (Read error: Connection reset by peer)
 108 2012-05-30 03:27:56 twmz has quit (Read error: Connection reset by peer)
 109 2012-05-30 03:32:28 twmz has joined
 110 2012-05-30 03:35:40 RainbowDashh has joined
 111 2012-05-30 03:44:55 gfinn has joined
 112 2012-05-30 03:54:34 rdponticelli_ has quit (Ping timeout: 244 seconds)
 113 2012-05-30 04:05:08 Ukto has quit (Ping timeout: 252 seconds)
 114 2012-05-30 04:10:23 guruvan has quit (Remote host closed the connection)
 115 2012-05-30 04:11:04 guruvan has joined
 116 2012-05-30 04:13:15 Ukyo has joined
 117 2012-05-30 04:13:24 Ukyo is now known as Ukto
 118 2012-05-30 04:13:47 eoss has quit (Remote host closed the connection)
 119 2012-05-30 04:13:47 e0s_ has quit (Remote host closed the connection)
 120 2012-05-30 04:15:17 lohn has joined
 121 2012-05-30 04:16:42 Cryo has quit (Remote host closed the connection)
 122 2012-05-30 04:20:38 BTC_Bear is now known as JustSayNoTo
 123 2012-05-30 04:21:28 JustSayNoTo is now known as BTC_Bear
 124 2012-05-30 04:23:29 lohn has quit (Quit: Leaving)
 125 2012-05-30 04:24:05 rdponticelli has joined
 126 2012-05-30 04:27:58 ThomasV has joined
 127 2012-05-30 04:29:35 sytse has quit (Ping timeout: 248 seconds)
 128 2012-05-30 04:33:11 RainbowDashh has quit (Quit: RainbowDashh)
 129 2012-05-30 04:36:20 sytse has joined
 130 2012-05-30 04:36:42 Slix` has quit (Read error: Connection reset by peer)
 131 2012-05-30 04:42:08 Zarutian has quit (Quit: Zarutian)
 132 2012-05-30 04:42:19 Z0rZ0rZ0r1 has quit (Quit: Wheeeee)
 133 2012-05-30 04:45:29 egecko has quit (Quit: ~ Trillian Astra - www.trillian.im ~)
 134 2012-05-30 04:45:46 RainbowDashh has joined
 135 2012-05-30 05:06:47 ThomasV has quit (Ping timeout: 244 seconds)
 136 2012-05-30 05:10:03 d4de has quit (Ping timeout: 246 seconds)
 137 2012-05-30 05:10:16 Fnar has quit (Quit: Client exiting)
 138 2012-05-30 05:12:52 Mobius_ has joined
 139 2012-05-30 05:13:32 MobiusL has quit (Ping timeout: 276 seconds)
 140 2012-05-30 05:30:25 Diablo-D3 has joined
 141 2012-05-30 05:46:08 minimoose has quit (Quit: minimoose)
 142 2012-05-30 05:48:26 Lexa has quit (Quit: Lexa)
 143 2012-05-30 05:55:46 d4de has joined
 144 2012-05-30 05:55:53 Lexa has joined
 145 2012-05-30 06:03:04 bitcoinbulletin has quit (Remote host closed the connection)
 146 2012-05-30 06:13:22 bitcoinbulletin has joined
 147 2012-05-30 06:15:06 twmz has quit (Ping timeout: 240 seconds)
 148 2012-05-30 06:19:17 twmz has joined
 149 2012-05-30 06:28:08 D34TH has quit (Read error: Connection reset by peer)
 150 2012-05-30 06:36:37 ovidiusoft has joined
 151 2012-05-30 06:36:48 mmoya has joined
 152 2012-05-30 06:37:36 Maged has quit (Quit: ChatZilla 0.9.88.2 [Firefox 12.0/20120420145725])
 153 2012-05-30 06:45:30 brwyatt is now known as brwyatt|Away
 154 2012-05-30 06:52:06 BTC_Bear is now known as BTC_Bear|hbrntng
 155 2012-05-30 06:52:31 Rabbit67890 has joined
 156 2012-05-30 06:52:31 RainbowDashh has quit (Disconnected by services)
 157 2012-05-30 07:00:59 tyn has quit (Quit: Leaving)
 158 2012-05-30 07:02:24 Rabbit67890 is now known as RainbowDashh
 159 2012-05-30 07:09:11 Rabbit67890 has joined
 160 2012-05-30 07:09:11 RainbowDashh has quit (Disconnected by services)
 161 2012-05-30 07:10:40 Rabbit67890 is now known as RainbowDashh
 162 2012-05-30 07:13:34 TD has joined
 163 2012-05-30 07:14:24 molecular has quit (Read error: Operation timed out)
 164 2012-05-30 07:14:57 molecular has joined
 165 2012-05-30 07:16:47 graingert has joined
 166 2012-05-30 07:17:13 graingert has quit (Client Quit)
 167 2012-05-30 07:17:28 graingert has joined
 168 2012-05-30 07:36:02 sirk390 has joined
 169 2012-05-30 07:39:59 JZavala has quit (Ping timeout: 250 seconds)
 170 2012-05-30 07:43:06 Apexseals has quit (Ping timeout: 240 seconds)
 171 2012-05-30 07:48:22 TD has quit (Quit: TD)
 172 2012-05-30 07:58:25 Skaag has quit (Read error: Connection reset by peer)
 173 2012-05-30 07:58:55 Skaag has joined
 174 2012-05-30 08:07:28 bitcoinbulletin has quit (Ping timeout: 272 seconds)
 175 2012-05-30 08:11:51 RazielZ has joined
 176 2012-05-30 08:13:14 bitcoinbulletin has joined
 177 2012-05-30 08:14:01 slush has joined
 178 2012-05-30 08:29:01 BurtyB has quit (Quit: Leaving)
 179 2012-05-30 08:31:11 graingert has quit (Remote host closed the connection)
 180 2012-05-30 08:32:05 rdponticelli has quit (Ping timeout: 256 seconds)
 181 2012-05-30 08:35:40 rdponticelli has joined
 182 2012-05-30 08:43:28 t7 has joined
 183 2012-05-30 08:45:30 brwyatt is now known as Away!~brwyatt@pool-96-226-236-130.dllstx.fios.verizon.net|brwyatt
 184 2012-05-30 08:50:10 Joric has quit ()
 185 2012-05-30 08:53:34 BurtyB has joined
 186 2012-05-30 08:55:15 brwyatt is now known as brwyatt|Away
 187 2012-05-30 09:09:53 paraipan has joined
 188 2012-05-30 09:13:20 graingert_ecs has joined
 189 2012-05-30 09:25:44 twmz has quit (Read error: Operation timed out)
 190 2012-05-30 09:30:15 twmz has joined
 191 2012-05-30 10:02:28 TuxBlackEdo has quit (Remote host closed the connection)
 192 2012-05-30 10:06:37 datagutt has joined
 193 2012-05-30 10:06:54 datagutt has quit (Changing host)
 194 2012-05-30 10:06:54 datagutt has joined
 195 2012-05-30 10:09:54 Cryo has joined
 196 2012-05-30 10:09:55 Cryo has quit (Changing host)
 197 2012-05-30 10:09:55 Cryo has joined
 198 2012-05-30 10:15:51 Internet13 has joined
 199 2012-05-30 10:19:29 copumpkin has quit (Ping timeout: 260 seconds)
 200 2012-05-30 10:20:02 copumpkin has joined
 201 2012-05-30 10:23:01 Fnar has joined
 202 2012-05-30 10:23:01 Fnar has quit (Changing host)
 203 2012-05-30 10:23:01 Fnar has joined
 204 2012-05-30 10:25:36 neofutur has joined
 205 2012-05-30 10:25:41 <neofutur> new version of the mtgox ticker firefox addon, using api v1, https://github.com/joric/mtgox-ticker/pull/1 , xpi updated on http://gemelos.ww7.be/mtgox-ticker/mtgox-ticker.xpi
 206 2012-05-30 10:25:46 <neofutur> if you installed the old one and have weird multi-currency behaviour on mtgox.com, upgrade
 207 2012-05-30 10:39:48 noagendamarket has quit (Ping timeout: 245 seconds)
 208 2012-05-30 10:40:59 erle- has joined
 209 2012-05-30 10:47:00 `2Fast2BCn has quit (Quit: ZNC - http://znc.in)
 210 2012-05-30 10:48:14 `2Fast2BCn has joined
 211 2012-05-30 10:48:56 tower has quit (Ping timeout: 244 seconds)
 212 2012-05-30 11:07:42 tower has joined
 213 2012-05-30 11:33:55 graingert_ecs has quit (Remote host closed the connection)
 214 2012-05-30 11:34:14 graingert_ecs has joined
 215 2012-05-30 11:36:27 TD has joined
 216 2012-05-30 11:50:12 da2ce7 has quit (Read error: Connection reset by peer)
 217 2012-05-30 11:51:42 da2ce7 has joined
 218 2012-05-30 11:52:21 da2ce7 has quit (Read error: Connection reset by peer)
 219 2012-05-30 11:53:59 da2ce7 has joined
 220 2012-05-30 12:06:53 slush has quit (Ping timeout: 245 seconds)
 221 2012-05-30 12:19:35 drizztbsd has joined
 222 2012-05-30 12:22:32 rdponticelli has quit (Read error: Connection reset by peer)
 223 2012-05-30 12:24:58 rdponticelli has joined
 224 2012-05-30 12:25:23 p0s has joined
 225 2012-05-30 12:31:53 Turingi has joined
 226 2012-05-30 12:35:54 agricocb has quit (Remote host closed the connection)
 227 2012-05-30 12:36:20 Z0rZ0rZ0r has joined
 228 2012-05-30 12:42:20 enquirer has joined
 229 2012-05-30 12:42:41 drizztbsd has quit (Quit: Konversation terminated!)
 230 2012-05-30 12:47:46 drizztbsd has joined
 231 2012-05-30 12:48:33 Mobius_ has quit (Ping timeout: 276 seconds)
 232 2012-05-30 12:49:47 davout has joined
 233 2012-05-30 12:51:20 Skaag has quit (Quit: Is dreams our reality, or is reality our dreams?)
 234 2012-05-30 12:58:08 gigavps has joined
 235 2012-05-30 12:58:33 <gigavps> are there any bitcoin security experts in this channel?
 236 2012-05-30 12:59:44 <Diablo-D3> probably.
 237 2012-05-30 13:00:56 toffoo has quit ()
 238 2012-05-30 13:01:19 agricocb has joined
 239 2012-05-30 13:01:36 agricocb has quit (Changing host)
 240 2012-05-30 13:01:36 agricocb has joined
 241 2012-05-30 13:03:17 <sipa> gigavps: how do you define security expert?
 242 2012-05-30 13:05:01 <drizztbsd> sipa: a security expert looks like a big nerd
 243 2012-05-30 13:05:14 slush has joined
 244 2012-05-30 13:06:26 <gigavps> sipa one who knows of all attack vectors against the bitcoin client and servers in general
 245 2012-05-30 13:07:13 <gigavps> and who wants to work on bitcoin related projects
 246 2012-05-30 13:07:15 RainbowDashh has quit (Remote host closed the connection)
 247 2012-05-30 13:08:01 RainbowDashh has joined
 248 2012-05-30 13:08:16 <gigavps> i'm looking to start a project that will require someone with knowledge in this area
 249 2012-05-30 13:08:26 <gigavps> and i'm willing to pay.....
 250 2012-05-30 13:08:27 egecko has joined
 251 2012-05-30 13:08:28 <egecko> !
 252 2012-05-30 13:09:29 <drizztbsd> pay in bitcoins? :P
 253 2012-05-30 13:10:03 <t7> bitcoins dont exist
 254 2012-05-30 13:10:04 <gigavps> bitcoins, $$$, whatever
 255 2012-05-30 13:10:06 <t7> only in your mind
 256 2012-05-30 13:10:12 chao has joined
 257 2012-05-30 13:17:13 setkeh has joined
 258 2012-05-30 13:17:19 setkeh has quit (Client Quit)
 259 2012-05-30 13:17:46 setkeh has joined
 260 2012-05-30 13:19:14 <eps> security is a process, not a destination
 261 2012-05-30 13:19:30 <Diablo-D3> ^ this
 262 2012-05-30 13:19:50 <drizztbsd> most problems are already be fixed (penny spamming, etc)
 263 2012-05-30 13:23:58 chao has quit (Remote host closed the connection)
 264 2012-05-30 13:24:09 copumpkin has quit (Quit: Computer has gone to sleep.)
 265 2012-05-30 13:25:45 chao has joined
 266 2012-05-30 13:29:46 setkeh has quit (Quit: Love sharing knowledge? Chat in the Linux Distro Community #linuxdistrocommunity)
 267 2012-05-30 13:30:17 setkeh has joined
 268 2012-05-30 13:32:25 smtmnyz_ has joined
 269 2012-05-30 13:32:40 rdponticelli has quit (Ping timeout: 246 seconds)
 270 2012-05-30 13:33:01 smtmnyz has quit (Ping timeout: 245 seconds)
 271 2012-05-30 13:36:59 rdponticelli has joined
 272 2012-05-30 13:37:48 one_zero has quit ()
 273 2012-05-30 13:41:17 gigavps has left ()
 274 2012-05-30 13:45:01 smtmnyz_ is now known as smtmnyz
 275 2012-05-30 13:47:04 copumpkin has joined
 276 2012-05-30 13:49:19 TuxBlackEdo has joined
 277 2012-05-30 13:59:07 enquirer has quit (Ping timeout: 240 seconds)
 278 2012-05-30 14:01:11 BTC_Bear is now known as hbrntng!~BTC_Bear@unaffiliated/btc-bear/x-5233302|BTC_Bear
 279 2012-05-30 14:11:04 t7_ has joined
 280 2012-05-30 14:12:43 t7 has quit (Ping timeout: 245 seconds)
 281 2012-05-30 14:12:43 t7_ is now known as t7
 282 2012-05-30 14:16:46 egecko has quit (Quit: ~ Trillian Astra - www.trillian.im ~)
 283 2012-05-30 14:17:31 Skaag has joined
 284 2012-05-30 14:19:59 <helo> EXCEPTION: 11DBexception Db::open: Invalid argument
 285 2012-05-30 14:20:20 <helo> ^ when i try to start bitcoin
 286 2012-05-30 14:20:33 <sipa> which version is that?
 287 2012-05-30 14:20:54 <helo> after running for about 13 days, it crashed with EXCEPTION: 22DbRunRecoveryException DbEnv::txn_checkpoint: DB_RUNRECOVERY: Fatal error, run database recovery bitcoin in ThreadMessageHandler()
 288 2012-05-30 14:20:54 <sipa> and more importantly, which bdb version is it linked against?
 289 2012-05-30 14:20:58 <helo> 0.6.2
 290 2012-05-30 14:21:42 <drizztbsd> 0.6.2 is not a bdb version
 291 2012-05-30 14:21:48 <helo> right... one sec
 292 2012-05-30 14:22:07 Skaag has quit (Remote host closed the connection)
 293 2012-05-30 14:22:09 <helo> libdb_cxx-4.8.so => /usr/lib/x86_64-linux-gnu/libdb_cxx-4.8.so
 294 2012-05-30 14:22:25 Skaag has joined
 295 2012-05-30 14:22:45 <helo> it's directly from ppa:bitcoin/bitcoin
 296 2012-05-30 14:22:54 <drizztbsd> 4.8? old :)
 297 2012-05-30 14:24:04 guruvan has quit (Remote host closed the connection)
 298 2012-05-30 14:24:38 <helo> that's what ppa:bitcoin/bitcoin is giving me
 299 2012-05-30 14:24:50 <drizztbsd> no, it's not
 300 2012-05-30 14:24:55 <drizztbsd> which version of ubuntu?
 301 2012-05-30 14:24:55 <helo> Get: 1 http://ppa.launchpad.net/bitcoin/bitcoin/ubuntu/ precise/main libdb4.8++ amd64 4.8.30-10precise1 [718 kB]
 302 2012-05-30 14:25:03 guruvan has joined
 303 2012-05-30 14:25:52 <BlueMatt> drizztbsd: the bitcoin ppa provides libdb4.8 so that wallets remain compatible with other versions of bitcoin and cross-platform
 304 2012-05-30 14:26:19 <drizztbsd> oh, ok
 305 2012-05-30 14:26:20 <BlueMatt> hopefully, wallets will be bdb-less eventually, and then we can link against the system default bdb
 306 2012-05-30 14:26:36 <drizztbsd> Archlinux uses system bdb
 307 2012-05-30 14:26:46 <BlueMatt> and I really wish they wouldnt
 308 2012-05-30 14:26:47 <helo> per the forums, i tried rm -rf db* database* .lock *.pid
 309 2012-05-30 14:27:01 <drizztbsd> BlueMatt: why?
 310 2012-05-30 14:27:09 Zarutian has joined
 311 2012-05-30 14:27:30 <BlueMatt> use your wallet once on archlinux, and you cant switch to ubuntu/windows/mac or any other regular bitcoin builds
 312 2012-05-30 14:28:28 <drizztbsd> why are you using an old version of bdb?
 313 2012-05-30 14:28:33 <drizztbsd> it's the same question :P
 314 2012-05-30 14:29:06 <luke-jr> BlueMatt: different things
 315 2012-05-30 14:29:10 <luke-jr> system bdb could be 4.8
 316 2012-05-30 14:29:36 <luke-jr> using system bdb is the "right thing" - but it should be 4.8 for compat :p
 317 2012-05-30 14:29:57 <BlueMatt> because its what weve always used and upgrading would mean you lose backward compatibility with old versions of bdb, also, its the most-supported version on the list of os' we support
 318 2012-05-30 14:30:17 <BlueMatt> (only counting ubuntu, because we can chose what we want for win32/mac)
 319 2012-05-30 14:30:35 <drizztbsd> mumble
 320 2012-05-30 14:30:40 <luke-jr> drizztbsd: is it better to force old users to upgrade bdb, or new users to have old bdb alongside?
 321 2012-05-30 14:31:00 <drizztbsd> luke-jr: archlinux policy does not allow multiple version of the same package
 322 2012-05-30 14:31:08 <luke-jr> drizztbsd: well that's a stupid policy
 323 2012-05-30 14:31:13 <BlueMatt> archlinux policy sucks, then
 324 2012-05-30 14:31:19 <sipa> it's not the same package (or it shouldn't be)
 325 2012-05-30 14:31:23 <luke-jr> drizztbsd: Gentoo allows me to install pretty much every bdb
 326 2012-05-30 14:31:29 <luke-jr> sipa: yes it is…
 327 2012-05-30 14:31:32 <drizztbsd> so I have to link statically bitcoind / bitcoin-qt with bdb
 328 2012-05-30 14:31:46 <BlueMatt> hopefully not for too much longer
 329 2012-05-30 14:31:51 <BlueMatt> sipa: is working on bdb-less wallets
 330 2012-05-30 14:32:01 * luke-jr notes bdb 4.8 is the latest stable/testing version on Gentoo
 331 2012-05-30 14:32:09 minimoose has joined
 332 2012-05-30 14:32:19 <drizztbsd> db 5.3.15-1
 333 2012-05-30 14:32:22 <luke-jr> drizztbsd: or just install db 4.8
 334 2012-05-30 14:32:34 <luke-jr> or link to db 5.3 and forget compat
 335 2012-05-30 14:32:40 <sipa> BlueMatt: works quite well already, but i need a rewrite system when too much junk has accumulated in the wallet
 336 2012-05-30 14:33:04 <BlueMatt> sipa: I didnt say it was ready, only that it was being worked on ;)
 337 2012-05-30 14:33:16 <helo> what kind of format is the bdb-less wallet?
 338 2012-05-30 14:33:16 <sipa> in particular, the best known block (a 320-byte data structure) gets added too frequently
 339 2012-05-30 14:33:26 <drizztbsd> archlinux uses 5.3, so any archlinux user uses 5.3 :P
 340 2012-05-30 14:33:44 <sipa> helo: custom binary, append-only, using sha checksums to prevent corruption
 341 2012-05-30 14:33:54 <BlueMatt> drizztbsd: there is a reason libs have version numbers in them
 342 2012-05-30 14:34:11 <BlueMatt> you dont link against libdb++, you link against libdb++X.Y
 343 2012-05-30 14:34:20 <luke-jr> sipa: can checksums really prevent corruption? I thought just detect?
 344 2012-05-30 14:34:39 <sipa> luke-jr: prevent, by ignoring the corrupted part :p
 345 2012-05-30 14:34:44 <BlueMatt> sorry, libdb_cxx-X.Y
 346 2012-05-30 14:35:02 <luke-jr> sipa: that doesn't work when it's a privkey
 347 2012-05-30 14:35:03 <sipa> there's no error correction, if that's your question
 348 2012-05-30 14:35:10 <sipa> luke-jr: ?
 349 2012-05-30 14:35:33 Turingi has quit (Read error: Connection reset by peer)
 350 2012-05-30 14:35:55 <helo> is this error a result of some particular problem with my (pretty standard) ubuntu 12.04 system?
 351 2012-05-30 14:36:06 <sipa> data loss is possible, but that is not corruption
 352 2012-05-30 14:37:11 <drizztbsd> BlueMatt: yes, but ldconfig will create a symlink using the last version of a package
 353 2012-05-30 14:37:14 <helo> i ran out of disk space just before i noticed it had crashed
 354 2012-05-30 14:37:19 <sipa> helo: did you use another bitcoind before? (not ppa)
 355 2012-05-30 14:37:20 <drizztbsd> /usr/lib/libdb_cxx.so -> libdb_cxx-5.3.so
 356 2012-05-30 14:37:23 <helo> sipa: nope
 357 2012-05-30 14:37:32 <sipa> ah, disk full?
 358 2012-05-30 14:37:47 <helo> just for a few seconds, but yes
 359 2012-05-30 14:37:52 <BlueMatt> drizztbsd: thats why you dont link against the unversioned one
 360 2012-05-30 14:38:45 <luke-jr> drizztbsd: not ldconfig, no
 361 2012-05-30 14:38:56 <helo> i suppose i need to download the entire blockchain again?
 362 2012-05-30 14:39:03 <luke-jr> drizztbsd: besides, you want that
 363 2012-05-30 14:39:41 <luke-jr> drizztbsd: make -f makefile.unix BDB_LIB_SUFFIX=-4.8
 364 2012-05-30 14:40:36 shurnormal has joined
 365 2012-05-30 14:41:44 * luke-jr makes a note to himself Arch isn't worth considering
 366 2012-05-30 14:43:34 erle- has quit (Quit: erle-)
 367 2012-05-30 14:43:49 <helo> hmm... removing ~/.bitcoin/db*.dat was not enough
 368 2012-05-30 14:44:13 <drizztbsd> luke-jr: I was a Gentoo developer
 369 2012-05-30 14:44:22 <luke-jr> drizztbsd: yeah, that sucks bad
 370 2012-05-30 14:44:31 <drizztbsd> what?
 371 2012-05-30 14:44:31 <luke-jr> drizztbsd: nowadays, I just use Gentoo + overlays
 372 2012-05-30 14:44:37 <luke-jr> drizztbsd: being a Gentoo developer
 373 2012-05-30 14:44:44 <drizztbsd> oh lol
 374 2012-05-30 14:44:54 <luke-jr> I was a Gentoo developer years ago >_<
 375 2012-05-30 14:45:54 <drizztbsd> have you ever tried exherbo?
 376 2012-05-30 14:48:14 <luke-jr> no
 377 2012-05-30 14:50:15 <sipa> helo: likely
 378 2012-05-30 14:53:41 <helo> hopefully whatever caused this apparent corruption couldn't have happened to wallet.dat
 379 2012-05-30 14:54:10 <helo> *can't happen
 380 2012-05-30 14:54:22 RainbowDashh has quit (Quit: RainbowDashh)
 381 2012-05-30 14:54:43 <TD> is there a way to get a raw public key via the command line interface?
 382 2012-05-30 14:54:51 <TD> i'm not seeing an obvious rpc i can send to get that. it only seems to handle addresses
 383 2012-05-30 14:54:54 <gmaxwell> TD: yes.
 384 2012-05-30 14:55:10 <sipa> TD: validateaddresa
 385 2012-05-30 14:55:11 <TD> i can get the private key and multiply :)
 386 2012-05-30 14:55:12 <TD> ah
 387 2012-05-30 14:55:13 <TD> thanks
 388 2012-05-30 14:55:29 <sipa> it's more of a getaddressinfo these days
 389 2012-05-30 14:55:33 <gmaxwell> TD: watcha want it for?
 390 2012-05-30 14:55:47 <TD> i'm testing raw pubkey input/output for bitcoinj
 391 2012-05-30 14:55:57 <TD> is there an RPC to send to a public key, also?
 392 2012-05-30 14:56:07 vigilyn has quit (Ping timeout: 240 seconds)
 393 2012-05-30 14:57:12 <sipa> there were plans to add a to-pubkey address type, but it was never implemented
 394 2012-05-30 14:57:22 <gmaxwell> I don't believe there is.
 395 2012-05-30 14:57:26 <sipa> should be very simple now, though
 396 2012-05-30 14:57:56 <TD> ok
 397 2012-05-30 14:58:15 <gmaxwell> meh. Not a very interesting feature.
 398 2012-05-30 14:58:21 <TD> it's no biggie. i can use a pubkey-only wallet with some keys i found off the block explorer.
 399 2012-05-30 15:09:52 minimoose has quit (Quit: minimoose)
 400 2012-05-30 15:17:42 <TD> seems like bitcoinj can handle ipv6 no problem. just makes the debug lines a bit too long to be comfortable
 401 2012-05-30 15:19:26 <gmaxwell> First world problems.
 402 2012-05-30 15:27:01 RainbowDashh has joined
 403 2012-05-30 15:30:59 dvide has quit ()
 404 2012-05-30 15:36:04 rdponticelli has quit (Read error: Connection reset by peer)
 405 2012-05-30 15:38:33 talpan has joined
 406 2012-05-30 15:39:19 rdponticelli has joined
 407 2012-05-30 15:40:43 wasabi1 has quit (Quit: Leaving.)
 408 2012-05-30 15:40:58 wasabi1 has joined
 409 2012-05-30 15:50:08 D34TH has joined
 410 2012-05-30 15:55:41 slush1 has joined
 411 2012-05-30 15:57:57 slush has quit (Ping timeout: 252 seconds)
 412 2012-05-30 15:58:17 t7 has quit (Quit: ChatZilla 0.9.88.2 [Firefox 13.0/20120523114940])
 413 2012-05-30 15:58:40 rdponticelli_ has joined
 414 2012-05-30 15:58:51 phungi_ is now known as phungi
 415 2012-05-30 15:59:40 rdponticelli has quit (Ping timeout: 246 seconds)
 416 2012-05-30 16:14:29 vigilyn has joined
 417 2012-05-30 16:21:44 slush1 has quit (Ping timeout: 260 seconds)
 418 2012-05-30 16:25:07 <D34TH> imaging a new box specifically for building bitcoin
 419 2012-05-30 16:25:08 <D34TH> :D
 420 2012-05-30 16:30:26 MobiusL has joined
 421 2012-05-30 16:37:23 slush has joined
 422 2012-05-30 16:38:01 <drizztbsd> "building"?
 423 2012-05-30 16:40:31 ThomasV has joined
 424 2012-05-30 16:47:08 <TimothyA> compiling
 425 2012-05-30 16:47:55 RainbowDashh has quit (Quit: RainbowDashh)
 426 2012-05-30 16:52:33 RainbowDashh has joined
 427 2012-05-30 16:54:32 davout has quit (Remote host closed the connection)
 428 2012-05-30 16:55:05 davout has joined
 429 2012-05-30 16:55:08 RainbowDashh has quit (Client Quit)
 430 2012-05-30 16:55:10 tucenaber has quit (Changing host)
 431 2012-05-30 16:55:10 tucenaber has joined
 432 2012-05-30 16:55:55 davout_ has joined
 433 2012-05-30 16:56:57 RainbowDashh has joined
 434 2012-05-30 16:57:46 sacredchao has joined
 435 2012-05-30 16:58:32 splatster has quit (Quit: ZNC - http://znc.in)
 436 2012-05-30 16:59:07 davout__ has joined
 437 2012-05-30 16:59:33 davout has quit (Ping timeout: 252 seconds)
 438 2012-05-30 17:02:07 davout_ has quit (Ping timeout: 252 seconds)
 439 2012-05-30 17:04:19 RainbowDashh has quit (Ping timeout: 260 seconds)
 440 2012-05-30 17:06:12 TD has quit (Quit: TD)
 441 2012-05-30 17:07:06 davout__ has quit (Remote host closed the connection)
 442 2012-05-30 17:07:42 davout has joined
 443 2012-05-30 17:07:49 davout has quit (Remote host closed the connection)
 444 2012-05-30 17:08:00 davout has joined
 445 2012-05-30 17:08:02 splatster__ has joined
 446 2012-05-30 17:09:02 splatster__ is now known as splatster
 447 2012-05-30 17:10:18 ByronJohnson has quit (Ping timeout: 252 seconds)
 448 2012-05-30 17:10:34 ByronJohnson has joined
 449 2012-05-30 17:10:47 davout has quit (Remote host closed the connection)
 450 2012-05-30 17:11:29 merde is now known as tsche
 451 2012-05-30 17:15:55 paraipan has quit (Remote host closed the connection)
 452 2012-05-30 17:16:20 mmoya has quit (Ping timeout: 244 seconds)
 453 2012-05-30 17:17:07 paraipan has joined
 454 2012-05-30 17:17:44 osmosis has joined
 455 2012-05-30 17:26:47 riush has quit (Ping timeout: 245 seconds)
 456 2012-05-30 17:26:58 riush has joined
 457 2012-05-30 17:26:59 riush has quit (Changing host)
 458 2012-05-30 17:26:59 riush has joined
 459 2012-05-30 17:39:08 enquirer has joined
 460 2012-05-30 17:50:25 Joric has joined
 461 2012-05-30 17:50:32 <gribble> New news from bitcoinrss: luke-jr opened pull request 1398 on bitcoin/bitcoin <https://github.com/bitcoin/bitcoin/pull/1398>
 462 2012-05-30 17:55:25 graingert has joined
 463 2012-05-30 17:57:44 inlikeflynn has quit ()
 464 2012-05-30 17:57:57 StephanieStevens has joined
 465 2012-05-30 17:59:38 <D34TH> heh luke-jr noob protection
 466 2012-05-30 18:00:12 <D34TH> i found out the hard way this morning, apparently someone installed 5.0 on the box when i wasnt looking
 467 2012-05-30 18:01:17 <D34TH> but might a suggest an addition to it
 468 2012-05-30 18:01:56 <D34TH> add message(Non-Optimal BDB Detected) in the bitcoin-qt.pro
 469 2012-05-30 18:03:40 <sipa> luke-jr: you eligius nodes advertize as protocol version 70000?
 470 2012-05-30 18:04:17 <drizztbsd> D34TH: I'm using bdb 5.3
 471 2012-05-30 18:04:33 <D34TH> mine wouldnt make
 472 2012-05-30 18:04:40 <D34TH> but its probably me
 473 2012-05-30 18:04:58 <D34TH> and my inability to compile anything bitcoin
 474 2012-05-30 18:05:02 <luke-jr> sipa: probably
 475 2012-05-30 18:05:14 <luke-jr> sipa: will be fixed when I rebase to 0.6.x someday
 476 2012-05-30 18:05:20 <sipa> ok
 477 2012-05-30 18:05:36 <luke-jr> sipa: they're based on an old next-test
 478 2012-05-30 18:06:06 <luke-jr> (0.6.0.x series)
 479 2012-05-30 18:07:07 drizztbsd has quit (Remote host closed the connection)
 480 2012-05-30 18:08:07 bonks has quit (Remote host closed the connection)
 481 2012-05-30 18:18:01 imsaguy2 has quit (Read error: Connection reset by peer)
 482 2012-05-30 18:22:25 bonks has joined
 483 2012-05-30 18:24:52 imsaguy2 has joined
 484 2012-05-30 18:24:52 imsaguy2 has quit (Changing host)
 485 2012-05-30 18:24:52 imsaguy2 has joined
 486 2012-05-30 18:29:51 <D34TH> drizztbsd attempting with libdb5.1
 487 2012-05-30 18:34:20 copumpkin has quit (Quit: Computer has gone to sleep.)
 488 2012-05-30 18:35:21 * BlueMatt has to admit his bitcoind is built on db5.1
 489 2012-05-30 18:35:29 StephanieStevens has quit (Quit: Page closed)
 490 2012-05-30 18:35:35 <BlueMatt> and, iirc, so is jgarzik's
 491 2012-05-30 18:36:03 gavinandresen has joined
 492 2012-05-30 18:36:13 * luke-jr has to admit he was using 4.8 back when bitcoind wanted 4.6 or 4.7 <.<
 493 2012-05-30 18:37:56 <BlueMatt> in other words, if you dont mind always compiling your own bitcoind/-qt, feel free
 494 2012-05-30 18:38:33 TD has joined
 495 2012-05-30 18:41:12 <sipa> i have no idea what bdb i use, and i don't care
 496 2012-05-30 18:41:18 <sipa> 5.1 i think
 497 2012-05-30 18:41:36 Matt_von_Mises has joined
 498 2012-05-30 18:42:30 <D34TH> bluematt how did you fix that sha256 error
 499 2012-05-30 18:42:42 <gmaxwell> BlueMatt: the big performance regressions jgarzik saw were fun.
 500 2012-05-30 18:42:54 <BlueMatt> gmaxwell: well, yea...
 501 2012-05-30 18:43:02 <BlueMatt> D34TH: what sha256 error?
 502 2012-05-30 18:43:09 <D34TH> src/util.h:383: error: âSHA256â was not declared in this scope
 503 2012-05-30 18:43:21 m00p has joined
 504 2012-05-30 18:43:23 <TD> is it expected that p2pool won't have 100% "luck" over the long term?
 505 2012-05-30 18:43:27 <Matt_von_Mises> Can anyone give a very quick explanation of how the main client serialises and deserialises messages? I just wanted to get a general idea of what happens but looking at the source code kills my brain.
 506 2012-05-30 18:43:49 <BlueMatt> D34TH: I dont see how that would be bdb related?
 507 2012-05-30 18:43:54 <D34TH> not
 508 2012-05-30 18:44:11 <D34TH> i was asking about the sha256 error you were having with jenkins
 509 2012-05-30 18:44:34 <TD> Matt_von_Mises: it's using C++ operator overloading on a stream class
 510 2012-05-30 18:44:42 <TD> are you the guy writing the C implementation?
 511 2012-05-30 18:44:51 <BlueMatt> D34TH: oh, openssl was upgraded in the makefile, I just had to build the new openssl
 512 2012-05-30 18:45:05 <Matt_von_Mises> TD: Yes.
 513 2012-05-30 18:45:24 <TD> i don't think it's possible to do a full / correct bitcoin implementation today unless you can read C++
 514 2012-05-30 18:45:28 <TD> the docs aren't good enough for that
 515 2012-05-30 18:45:44 <BlueMatt> what docs? ;)
 516 2012-05-30 18:45:51 <TD> you can also look at  bitcoinj to see how serialization is done, if you find java easier
 517 2012-05-30 18:46:25 <BlueMatt> oh, congrats on 0.5, TD
 518 2012-05-30 18:46:39 <TD> thanks. it's not a big release. but there's a lot of good stuff being contributed for 0.6
 519 2012-05-30 18:46:56 <Matt_von_Mises> Well so far it's been fine implementing it. I have no idea what "it's using C++ operator overloading on a stream class" actually is but I want to use pointers to the serialised byte data. Bitcoinj copies everything from the byte data and I don't want that.
 520 2012-05-30 18:47:04 <gavinandresen> ... or BCDataStream.py in bitcointools if you like python
 521 2012-05-30 18:47:04 <BlueMatt> still, its a new release, so still, congrats
 522 2012-05-30 18:47:12 <TD> thanks :)
 523 2012-05-30 18:47:39 <Matt_von_Mises> TD: THe bitcoinj serialisation is not good.
 524 2012-05-30 18:47:55 <Matt_von_Mises> I was originally basing my code on bitcoinj but I've scrapped that idea.
 525 2012-05-30 18:48:02 m00p has quit (Ping timeout: 246 seconds)
 526 2012-05-30 18:48:14 <Matt_von_Mises> I very much want to do as much as possible from scratch.
 527 2012-05-30 18:48:21 <TD> what's not good about it? i don't think you want to use pointers into raw byte arrays
 528 2012-05-30 18:48:29 <TD> afaik no implementation does that, and for good reasons
 529 2012-05-30 18:48:33 <Matt_von_Mises> TD: Why not?
 530 2012-05-30 18:48:51 <TD> because then you have no type safety. some fields in bitcoin structs are hashes, some are ints, some are strings, etc
 531 2012-05-30 18:48:55 <gavinandresen> because security is way more important than performance?
 532 2012-05-30 18:49:07 <TD> it's not even clear to me the performance is better
 533 2012-05-30 18:49:18 <TD> it means converting to a native type on every read instead of once during deserialization
 534 2012-05-30 18:49:27 <gavinandresen> performance won't be any better, you'll be IO bound, not CPU bound anyway
 535 2012-05-30 18:49:35 <sipa> agree with TD here
 536 2012-05-30 18:50:18 <Matt_von_Mises> TD: I do not see the type safety issue? Once the pointers are set-up correctly they can just be dereferenced or used as structure pointers.
 537 2012-05-30 18:50:49 <TD> think about the command part of the message packets. it's a fixed length string
 538 2012-05-30 18:50:54 <TD> what are you going to do with that, strcmp it?
 539 2012-05-30 18:51:16 <sipa> strncmp would work, actually
 540 2012-05-30 18:51:18 <Matt_von_Mises> In C, strings are char pointers.
 541 2012-05-30 18:51:36 <TD> i know how C strings work
 542 2012-05-30 18:51:41 <Matt_von_Mises> You must always use strncmp or strcmp (With termination character).
 543 2012-05-30 18:51:46 <TD> my point is that they are normally null terminated
 544 2012-05-30 18:51:47 <gmaxwell> sipa: memcmp is generally preferred for that sort of thing, lest you get the stops at \0 behavior which you don't want for that. :)
 545 2012-05-30 18:51:57 <TD> anyway
 546 2012-05-30 18:51:59 <sipa> gmaxwell: agree
 547 2012-05-30 18:52:03 <Matt_von_Mises> TD: Well if they aren't then I'll use strncpy, so what?
 548 2012-05-30 18:52:19 <TD> questions like "how does bitcoin serialize messages" are better asked on the forum, imho. this is not a channel for teaching you programming. if you can't read the bitcoin source and don't want to use codebases in other languages, then you are on your own
 549 2012-05-30 18:52:20 KingKatari has quit (Quit: going to install my 2 6850's i just got)
 550 2012-05-30 18:52:36 <sipa> Matt_von_Mises: do you want your code to be neutral endian?
 551 2012-05-30 18:52:42 <Matt_von_Mises> Indeed memcmp would be better.
 552 2012-05-30 18:52:54 <Matt_von_Mises> Unless termination characters are indeed used.
 553 2012-05-30 18:53:22 copumpkin has joined
 554 2012-05-30 18:53:28 <sipa> how will you deal with variable-length integers?
 555 2012-05-30 18:53:31 <Matt_von_Mises> sipa: What do you mean?
 556 2012-05-30 18:54:17 <Matt_von_Mises> TD: I'm not asking information on a programming language.
 557 2012-05-30 18:54:21 <sipa> immagoogle endianness
 558 2012-05-30 18:54:23 <sipa> eh
 559 2012-05-30 18:54:24 <Matt_von_Mises> Or being taught programming.
 560 2012-05-30 18:54:43 <sipa> google endianness, or byte order
 561 2012-05-30 18:54:59 <Matt_von_Mises> I have some functions and a structure for the variable length integers.
 562 2012-05-30 18:55:30 Joric has quit ()
 563 2012-05-30 18:55:32 <Matt_von_Mises> I know what endianness is.
 564 2012-05-30 18:55:58 <Matt_von_Mises> But don't know what you mean by neutral endian. I only know of little and big endian.
 565 2012-05-30 18:56:07 <TD> your structures will end up containing extra data that isn't on the wire anyway. at that point you can't simply point into data scraped off the wire, unless you want to have two structures for each logical concept
 566 2012-05-30 18:56:26 <sipa> neutrial endian = works on all endiannesses
 567 2012-05-30 18:56:29 <Matt_von_Mises> TD: Structures can mix pointers with other data.
 568 2012-05-30 18:56:58 <sipa> but your serialization cannot
 569 2012-05-30 18:57:22 <sipa> so you won't be able to just use a struct as serialized data
 570 2012-05-30 18:58:02 slush has quit (Ping timeout: 245 seconds)
 571 2012-05-30 19:00:00 <Matt_von_Mises> I'm trying to understand here. The code takes into account the endianness of different bitcoin data.
 572 2012-05-30 19:00:45 <TD> the point is that your structure can't just be some pointers into serialized data because you need to track things like spent flags that aren't serialized.
 573 2012-05-30 19:01:03 <TD> at that point you can't just have struct Block { struct Transaction *transactions; }
 574 2012-05-30 19:01:09 <TD> right? because there's nowhere to put that extra data
 575 2012-05-30 19:01:29 <TD> also, structure are variable length
 576 2012-05-30 19:01:37 rdponticelli_ is now known as rdponticelli
 577 2012-05-30 19:01:54 <TD> so you can't really do pointer arithmetic to find stuff. you have to parse a block byte by byte to figure out where things start and end
 578 2012-05-30 19:02:10 <TD> if you're doing that, you may as well just copy the data into a structure of a format you control and can add things too. you're reading every byte anyway.
 579 2012-05-30 19:03:19 m00p has joined
 580 2012-05-30 19:03:51 <sipa> Matt_von_Mises: say you have an in in your transaction struct somewhere
 581 2012-05-30 19:04:40 <sipa> you keep some pointer around to it, so you can easily access it as a serialized piece of data (for example to send it over the network)
 582 2012-05-30 19:05:07 <sipa> however, th network protocol requires that serialization is done in little-endian for integers
 583 2012-05-30 19:05:27 <sipa> so if you're running on an big-endian system, it will fail
 584 2012-05-30 19:05:54 <sipa> as it would copy its big-endian in-memory integer to the network buffer
 585 2012-05-30 19:06:40 <sipa> note that the current satoshi coinbase cannot deal with big-endian systems for the same reason, but at least that is fixable
 586 2012-05-30 19:11:46 <luke-jr> s/coinbase/codebase/?
 587 2012-05-30 19:12:39 <GTRsdk> sipa: have you got access to a big endian system yet, or do you still need that?
 588 2012-05-30 19:12:57 <helo> different archs also have different alignment
 589 2012-05-30 19:13:07 <helo> and padding
 590 2012-05-30 19:15:07 <sipa> luke-jr: indeed!
 591 2012-05-30 19:15:43 <sipa> GTRsdk: haven't sought further, but i won't have time for that too soon anyway
 592 2012-05-30 19:16:16 <D34TH> hmm im thinking gitian ran into an error for me
 593 2012-05-30 19:16:27 <D34TH> stuck on 15:12:40,480 INFO    : Calling hook: bootstrap
 594 2012-05-30 19:17:00 <Matt_von_Mises> Almost done thinking… :P
 595 2012-05-30 19:17:46 _Fireball has joined
 596 2012-05-30 19:18:12 TD has quit (Quit: TD)
 597 2012-05-30 19:18:15 mmoya has joined
 598 2012-05-30 19:24:37 m00p has quit (Ping timeout: 240 seconds)
 599 2012-05-30 19:26:01 npouillard has quit (Ping timeout: 248 seconds)
 600 2012-05-30 19:26:06 <Matt_von_Mises> I think I know what I'm doing now. It's hard to explain and my head hurts but it involves keeping the byte data for some objects and storing some converted integers.
 601 2012-05-30 19:26:23 <Matt_von_Mises> Anyway I just realised I'm converting the integers wrong…
 602 2012-05-30 19:26:44 datagutt has quit (Quit: kthxbai)
 603 2012-05-30 19:26:45 <D34TH> sipa i finally got gitian to work its missing a file though
 604 2012-05-30 19:26:52 <D34TH> ../bitcoin/contrib/gitian.yml
 605 2012-05-30 19:26:55 <luke-jr> …
 606 2012-05-30 19:26:57 npouillard has joined
 607 2012-05-30 19:27:18 <sipa> D34TH: you need to checkout bitcoin as well as gitian-builder
 608 2012-05-30 19:27:23 <D34TH> it is
 609 2012-05-30 19:27:26 <D34TH> its not there
 610 2012-05-30 19:27:30 <D34TH> https://github.com/bitcoin/bitcoin/tree/master/contrib
 611 2012-05-30 19:27:54 <D34TH> is it the descriptors directory?
 612 2012-05-30 19:27:54 <sipa> Matt_von_Mises: i think you're making things harder for yourself that way, but carry on
 613 2012-05-30 19:28:10 <sipa> D34TH: yes, you're probably using some old script?
 614 2012-05-30 19:28:31 <Matt_von_Mises> sipa: THere is a lot of byte arrays and nested byte arrays. It's confusing copying them all the time. So I think this might be a less confusing way...
 615 2012-05-30 19:28:32 <D34TH> 806265
 616 2012-05-30 19:29:34 <D34TH> aww man the make-base-vm crashed
 617 2012-05-30 19:32:00 TD has joined
 618 2012-05-30 19:32:07 <D34TH> INFO    : umount: /tmp/tmpdE4n71/dev: device is busy.
 619 2012-05-30 19:32:11 <D34TH> damn
 620 2012-05-30 19:35:24 sturles has quit (Changing host)
 621 2012-05-30 19:35:24 sturles has joined
 622 2012-05-30 19:37:32 minimoose has joined
 623 2012-05-30 19:39:10 <D34TH> sipa if you could pastebin the latest script id love you
 624 2012-05-30 19:39:39 Turingi has joined
 625 2012-05-30 19:43:42 RazielZ has quit (Ping timeout: 244 seconds)
 626 2012-05-30 19:45:14 toffoo has joined
 627 2012-05-30 19:46:08 RazielZ has joined
 628 2012-05-30 19:53:05 egecko has joined
 629 2012-05-30 20:00:21 <sipa> D34TH: i remember that bug
 630 2012-05-30 20:02:14 tsche has quit (Ping timeout: 246 seconds)
 631 2012-05-30 20:02:42 <sipa> D34TH: https://github.com/devrandom/gitian-builder/issues/12
 632 2012-05-30 20:03:32 <D34TH> yes.
 633 2012-05-30 20:03:33 <D34TH> :D
 634 2012-05-30 20:05:08 Diapolo has joined
 635 2012-05-30 20:07:24 <D34TH> no such fild or directory
 636 2012-05-30 20:07:25 <D34TH> D:
 637 2012-05-30 20:07:29 <D34TH> time to search
 638 2012-05-30 20:07:32 <D34TH> locate ftw
 639 2012-05-30 20:07:38 tsche has joined
 640 2012-05-30 20:07:45 <Diapolo> Are there development or commit holidays or any RC-phase I missed? It seems a bit to quiet currently ...
 641 2012-05-30 20:07:53 <Diapolo> +o
 642 2012-05-30 20:08:19 <sipa> hmm, commit holidays... sounds good!
 643 2012-05-30 20:08:31 <sipa> Diapolo: no, not really
 644 2012-05-30 20:08:32 <TD> it's summer
 645 2012-05-30 20:08:37 <TD> things always slow down over the summer
 646 2012-05-30 20:09:04 <Diapolo> I miss wumpus, as he is the only one merging GUI patches ... haven't seen him for quite some time now.
 647 2012-05-30 20:15:50 minimoose has quit (Quit: minimoose)
 648 2012-05-30 20:18:23 * luke-jr ponders why gmp_bip is still sitting unpulled <.<
 649 2012-05-30 20:19:23 t7 has joined
 650 2012-05-30 20:20:04 wladston has joined
 651 2012-05-30 20:22:06 <sipa> luke-jr: my largest complaint was "it's too complex", but I liked it; now, it's become even more complex it seems, and I don't feel confident enough to comment about it anymore
 652 2012-05-30 20:22:11 <Diapolo> So, has anyone heard of him or not ;)?
 653 2012-05-30 20:22:15 <wladston> I'm trying to implement double-spend protection on django-bitcoin. I could not find any documentation of what happens when bitcoind detects a double spend attempt or when the local blockchain is forked. Help ?
 654 2012-05-30 20:22:34 <sipa> wladston: you can't really know
 655 2012-05-30 20:22:55 <sipa> wladston: nodes only forwards transactions and blocks that are correct - a double spend attempt will not get relayed
 656 2012-05-30 20:23:12 <wladston> sipa: you can probably listen double spend transaction propagating on the network, now ?
 657 2012-05-30 20:23:16 <wladston> *now == no
 658 2012-05-30 20:23:26 <sipa> yes, but in all likelyhood, it will not reach you anyway
 659 2012-05-30 20:23:28 spaola has quit (Remote host closed the connection)
 660 2012-05-30 20:23:33 <sipa> other nodes will stop it before you
 661 2012-05-30 20:23:54 <wladston> sipa: what is the likehood of it reaching me ? maybe it's worthy to care about
 662 2012-05-30 20:24:13 <sipa> wladston: if someone sends it directly to you, it will reach you
 663 2012-05-30 20:24:24 <sipa> otherwise, it probably won't
 664 2012-05-30 20:24:36 <wladston> sipa: then how is a double spend executed ?
 665 2012-05-30 20:24:49 <wladston> you mine your own block with the double spend transaction in ?
 666 2012-05-30 20:24:52 <D34TH> oh god sipa, its checking target is up
 667 2012-05-30 20:25:06 <sipa> if you want active double-spend monitoring, you'll need custom nodes listening for blocks/txn on various places in the network
 668 2012-05-30 20:25:12 <D34TH> damn, error
 669 2012-05-30 20:25:26 <D34TH> dafuq ssh?
 670 2012-05-30 20:25:33 <sipa> what error?
 671 2012-05-30 20:25:42 <D34TH> ssh: connect to host localhost port 2223: Connection refused
 672 2012-05-30 20:25:42 <D34TH> ./bin/gbuild:16:in `system!': failed to run on-target true (RuntimeError)
 673 2012-05-30 20:25:42 <D34TH> 	from ./bin/gbuild:68:in `build_one_configuration'
 674 2012-05-30 20:25:42 <D34TH> 	from ./bin/gbuild:212
 675 2012-05-30 20:25:42 <D34TH> 	from ./bin/gbuild:207:in `each'
 676 2012-05-30 20:25:42 <D34TH> 	from ./bin/gbuild:207
 677 2012-05-30 20:25:44 <D34TH> 	from ./bin/gbuild:205:in `each'
 678 2012-05-30 20:25:46 <D34TH> 	from ./bin/gbuild:205
 679 2012-05-30 20:25:51 <sipa> D34TH: please use a pasting site
 680 2012-05-30 20:25:55 <D34TH> sorry
 681 2012-05-30 20:26:00 <D34TH> didnt think it would spam
 682 2012-05-30 20:26:15 <sipa> 3-5 lines is typically considered a maximum
 683 2012-05-30 20:26:27 <sipa> that said, i don't know what causes your problem here
 684 2012-05-30 20:26:32 <luke-jr> sipa: it's as complex as it needs to be
 685 2012-05-30 20:26:33 <D34TH> http://pastebin.com/uetZvYnY
 686 2012-05-30 20:26:35 <wladston> sipa: ok. If I get attacked by the double spend, the transaction will just be stuck at 0 confirmation forever ? How can I know it's actually a double spend and not that the transaction didn't get included in any block ?
 687 2012-05-30 20:26:36 <sipa> wladston: it always boils down to reverting part of the chain
 688 2012-05-30 20:27:07 <sipa> wladston: currently, you can't using the current client
 689 2012-05-30 20:27:26 <sipa> though detection of transactions that conflict with the blockchain is on my todo list
 690 2012-05-30 20:27:27 <luke-jr> sipa: it got more complex due to security issues without the complexity
 691 2012-05-30 20:27:37 <wladston> sipa: I wanted to find out how to detect a double spend, so I can revert it
 692 2012-05-30 20:27:42 Diapolo has left ()
 693 2012-05-30 20:27:52 spaola has joined
 694 2012-05-30 20:27:59 <wladston> sipa: it's impossible to know you were victim of a double spend ?
 695 2012-05-30 20:28:10 <sipa> wladston: if you are, it's too late
 696 2012-05-30 20:28:12 <luke-jr> wladston: correct
 697 2012-05-30 20:28:17 <luke-jr> sipa: not always
 698 2012-05-30 20:28:51 <wladston> ok, what if I wait six blocks ? how to know that previous transaction with zero-confirmations is a double spend ?
 699 2012-05-30 20:29:15 <sipa> wladston: if you wait six blocks, an attackers has to revert 6 blocks to do a double spend
 700 2012-05-30 20:29:16 <luke-jr> wladston: your transaction can't be confirmed any more than the previous ones
 701 2012-05-30 20:30:21 <gmaxwell> wladston: in the future the confirmation count will become negative.
 702 2012-05-30 20:30:23 <sipa> luke-jr: i know there were reasons for the complexity, but i can't judge its necessity anymore
 703 2012-05-30 20:30:28 <wladston> sipa, luke-jr: maybe I have to study more about bitcoind
 704 2012-05-30 20:30:30 phma has joined
 705 2012-05-30 20:30:36 <wladston> I can't follow you
 706 2012-05-30 20:30:57 <wladston> gmaxwell: in the future, not in the current client, right ?
 707 2012-05-30 20:31:08 <sipa> wladston: in a future version of the client
 708 2012-05-30 20:31:15 <gmaxwell> Correct. It will just show 0 forever, and you can't easily tell that it will never confirm.
 709 2012-05-30 20:31:48 <sipa> wladston: if you accept a payment at 0 confirmations, someone just has to get a conflicting transaction at one confirmation to make sure your 0-conf never confirms
 710 2012-05-30 20:32:08 <wladston> gmaxwell: isn't there a way to look for a transaction using the same inputs already in the blockchain ?
 711 2012-05-30 20:32:23 <gmaxwell> Not exposed to the user.
 712 2012-05-30 20:32:25 <TD> it can be done. bitcoinj has a concept of a "dead" transaction
 713 2012-05-30 20:32:27 <sipa> wladston: if you accept a payment at 6 confirmations, someone has to create 7 blocks that conflict with the existing 5 blocks in the chain that confirm your transactions
 714 2012-05-30 20:32:28 p0s has quit (Remote host closed the connection)
 715 2012-05-30 20:32:34 <TD> which is exposed to users in clients like Android Wallet (they go red, iirc)
 716 2012-05-30 20:32:46 <TD> satoshis code doesn't try to separate it from the pending case
 717 2012-05-30 20:32:56 <wladston> sipa:  I understand that. what I want is to detect a "dead" transaction
 718 2012-05-30 20:33:02 <sipa> TD: good that BitcoinJ does that
 719 2012-05-30 20:33:31 <sipa> i implemented that once for 0.3.23, but never completed it, and by now, it would be completely unmergable
 720 2012-05-30 20:33:31 <gmaxwell> TD: I assume you also handle a reorg bringing it back?
 721 2012-05-30 20:33:35 <TD> gmaxwell: yes
 722 2012-05-30 20:33:37 <TD> indeed
 723 2012-05-30 20:34:02 <wladston> sipa: git rebase ? :)
 724 2012-05-30 20:34:15 theorb has joined
 725 2012-05-30 20:34:19 <gmaxwell> What we'd talked about was using the height of the first conflict to make the confirms field go negative. Which the gui could display as red or whatever.
 726 2012-05-30 20:34:24 <TD> wladston: what is the higher level goal you want to accomplish? could you use a separate library for it, or does it have to be bitcoin-qt?
 727 2012-05-30 20:34:38 erle- has joined
 728 2012-05-30 20:35:05 <wladston> TD: no, I'm using django-bitcoin directly with bitcoind. No need for bitcoin-qt
 729 2012-05-30 20:35:24 <wladston> I just wanted to accept zero-confirmations
 730 2012-05-30 20:35:29 spaola has quit (Remote host closed the connection)
 731 2012-05-30 20:35:35 <wladston> and know when to block double spends
 732 2012-05-30 20:35:47 <wladston> as I can be sure it was really a double spend.
 733 2012-05-30 20:35:55 <sipa> if you accept a double spend, it will be too late to revert it
 734 2012-05-30 20:36:27 <sipa> sorry, if you accept a 0-conf transactions, it will be too late for you once someone reverts it
 735 2012-05-30 20:36:39 <gmaxwell> You can't safely accept zero confirmations unless you have a way to capture the theif or reverse your acceptance.
 736 2012-05-30 20:37:49 <wladston> sipa: Imagine a store delivering goods. You can confirm the payment at zero confirmations, but cancel the delivery (calling the truck and not letting he deliver the package) if you detect the transaction is a double spend.
 737 2012-05-30 20:38:08 <wladston> what I need is that part, to detect the double spend
 738 2012-05-30 20:38:17 theorbtwo has quit (Ping timeout: 246 seconds)
 739 2012-05-30 20:38:25 theorb is now known as theorbtwo
 740 2012-05-30 20:38:45 <gmaxwell> wladston: just check the confirm count at some time after. if it's still zero, abort.
 741 2012-05-30 20:39:29 <gmaxwell> wladston: the problem with what you're asking for is that the attacker can always delay the double spend until its too lat.e
 742 2012-05-30 20:39:32 <wladston> gmaxwell: hummm interesting. how much time until I can be sure it's a double spend?
 743 2012-05-30 20:40:00 <sipa> at once confirmation, it's hard to revert
 744 2012-05-30 20:40:04 <gmaxwell> So you can't use the detection of it for what you want— you can only use the detection of confirms on the good txn to know a double spend is no longer possible.
 745 2012-05-30 20:40:12 <sipa> at 6 confirmations, it's assumed to be impossible
 746 2012-05-30 20:40:19 <TD> wladston: you'd just check whenever the truck is about to leave
 747 2012-05-30 20:40:27 <gmaxwell> And what sipa says.
 748 2012-05-30 20:40:51 minimoose has joined
 749 2012-05-30 20:41:00 <sipa> i'm sure there are people in this channel with the ability to revert a 1-conf transaction with some reasonable but small probability
 750 2012-05-30 20:41:16 <wladston> the thing is that the truck leaves immediately — as if it were a pizza delivery
 751 2012-05-30 20:41:23 <gmaxwell> And once the first confirmation happens you'll have six confirmations in an hour. ... though for a delivery truck I propose a different approach: just tell the driver to go and beat them up or something. :)
 752 2012-05-30 20:41:43 <gmaxwell> I mean, for something like that the risk of theft is low because your ability to go catch the theives is high.
 753 2012-05-30 20:42:25 <wladston> in my specific case, I accept bitcoins and let people ask questions on my site using them.
 754 2012-05-30 20:42:38 <sipa> and what can they win?
 755 2012-05-30 20:42:43 <wladston> I want to detect double spends, and cancel the questions created with them
 756 2012-05-30 20:43:10 <sipa> just block/delete their accounts if their balance goes negative
 757 2012-05-30 20:43:27 <TD> yeah
 758 2012-05-30 20:43:33 <TD> or temporarily hide any questions where the payments are at confirms=0
 759 2012-05-30 20:43:54 <wladston> sipa: but the double spend transaction will still count on the guy's balance
 760 2012-05-30 20:44:17 <wladston> TD: that would be an option
 761 2012-05-30 20:44:35 <sipa> wladston: if you use bitcoind's accounts feature, you can keep track of every user's balance, and if incoming payments get reverted, their balances is decreased accordingly
 762 2012-05-30 20:44:54 <wladston> sipa: humm, interesting
 763 2012-05-30 20:45:25 <sipa> i has to learns english conjugations, it seems
 764 2012-05-30 20:46:14 <wladston> don't say that to me :) I'm not a native language speaker
 765 2012-05-30 20:46:28 <sipa> neither am i
 766 2012-05-30 20:47:10 <wladston> ok, so I'll study django-bitcoin a bit more now ( I didn't write it, jeremias did)
 767 2012-05-30 20:47:12 <TD> i am, and i routinely mangle english worse :)
 768 2012-05-30 20:48:38 <wladston> thanks for all the help :)
 769 2012-05-30 20:48:50 ThomasV has quit (Quit: Quitte)
 770 2012-05-30 20:52:53 <luke-jr> gmaxwell: he might be willing to accept the risk of double spend, but still want to cancel orders if he finds out before they ship
 771 2012-05-30 20:53:10 <gribble> New news from bitcoinrss: sipa opened pull request 1399 on bitcoin/bitcoin <https://github.com/bitcoin/bitcoin/pull/1399>
 772 2012-05-30 20:53:26 <gmaxwell> luke-jr: sure but just look for confirms before they ship
 773 2012-05-30 20:53:42 <luke-jr> gmaxwell: and your delivery driver can't make a citizen's arrest without knowing for sure it's a double spend (and not just slow to confirm)
 774 2012-05-30 20:53:56 <luke-jr> gmaxwell: they might be willing to take the risk, though!
 775 2012-05-30 20:54:06 <gmaxwell> fair enough, but still the attacker will just delay the identification.
 776 2012-05-30 20:54:22 <luke-jr> big difference between taking a risk, and shipping goods that you (can) know will never be paid for
 777 2012-05-30 20:54:24 mcorlett is now known as mcorlette
 778 2012-05-30 20:54:37 <wladston> luke-jr: exactly
 779 2012-05-30 20:54:46 <wladston> gmaxwell: yes
 780 2012-05-30 20:55:02 <luke-jr> especially if there's insurance involved
 781 2012-05-30 20:55:15 <luke-jr> if you ship goods after it's double-spent, the insurance company isn't going to be too happy
 782 2012-05-30 20:55:31 <wladston> the truck case was just a figurative way to explain my problem, btw :)
 783 2012-05-30 20:55:37 <gmaxwell> meh. At the moment you can't tell. I agree the software should be smarter.
 784 2012-05-30 20:56:19 erle- has quit (Quit: erle-)
 785 2012-05-30 20:57:16 minimoose has quit (Ping timeout: 250 seconds)
 786 2012-05-30 20:57:40 <gmaxwell> luke-jr: there are just a lot of ways you can make a confirmation stay at zero confirms. E.g. use a output <0.01 and no fee.
 787 2012-05-30 20:57:57 <luke-jr> gmaxwell: sure
 788 2012-05-30 20:58:17 <luke-jr> gmaxwell: notably, bitcoind won't display those tho
 789 2012-05-30 20:59:08 minimoose has joined
 790 2012-05-30 20:59:20 davex__ has joined
 791 2012-05-30 21:00:38 copumpkin has quit (Ping timeout: 240 seconds)
 792 2012-05-30 21:01:08 copumpkin has joined
 793 2012-05-30 21:01:36 <wladston> I'll store the block number the moment I receive the transaction
 794 2012-05-30 21:01:49 <wladston> then compare it to the current block
 795 2012-05-30 21:02:18 <wladston> if the difference is > 3, that transaction can be confirmed as a double spend that will never confirm.
 796 2012-05-30 21:02:20 <wladston> right guys ?
 797 2012-05-30 21:02:37 <wladston> (considering the transaction got zero confirmations)
 798 2012-05-30 21:03:16 <wladston> in this case I'll ban the user, and report his ip/email/whatever else to the community
 799 2012-05-30 21:04:19 agricocb has quit (Quit: Leaving.)
 800 2012-05-30 21:08:09 <gmaxwell> No.
 801 2012-05-30 21:08:25 <gmaxwell> There is no promise that the next couple blocks will mine the transaction. Though they usually will.
 802 2012-05-30 21:08:36 <gmaxwell> I said before— there is no way to tell with the current stuff.
 803 2012-05-30 21:12:26 <wladston> gmaxwell: well, how many blocks/time until we can be certain ?
 804 2012-05-30 21:13:00 <wladston> I know the next couple blocks can just not include some transaction. but 3 in a row not including it would be too much, no ?
 805 2012-05-30 21:13:33 <doublec> if three pools that don't accept transactions in blocks win three in a row then it'll happen for example
 806 2012-05-30 21:13:59 <gmaxwell> No, you can never be sure of that. It becomes less likely but there are miners with oddball rules that only mine a block rarely.
 807 2012-05-30 21:14:23 <wladston> doublec: what is the value of n, for the likehood of that happening for n blocks in a row be zero ?
 808 2012-05-30 21:14:31 <sipa> wladston: infinity
 809 2012-05-30 21:14:37 <wladston> :O
 810 2012-05-30 21:14:49 <wladston> sipa, ok 10^-5
 811 2012-05-30 21:15:03 <gmaxwell> Nodes don't all enforce the same rules.
 812 2012-05-30 21:15:35 <doublec> can't you just monitor the transaction and if the confirmations ever are zero then hide/delete/stop the user in some way
 813 2012-05-30 21:16:16 <wladston> doublec: yeah, that's what I want to do. But how much time do I have to wait ? 1 hour ? 1 day ?
 814 2012-05-30 21:16:32 <gmaxwell> I mine a block about a block a week, if my rules were non-standard and more permissive than the defaults, then I might manage to mine a week old txn.
 815 2012-05-30 21:16:45 <gmaxwell> wladston: just hide it whenever its zero.
 816 2012-05-30 21:16:56 <doublec> right
 817 2012-05-30 21:17:20 <doublec> polling every transaction to get the confirmation count could be a pain though so you might need to be smarter there
 818 2012-05-30 21:17:28 <wladston> gmaxwell, doublec: providing instant availability to users is something I think has value …
 819 2012-05-30 21:17:48 <gmaxwell> wladston: sure, make it appear available to the user but no one else.
 820 2012-05-30 21:17:54 <doublec> wladston: think of the delay as 'anti spam'
 821 2012-05-30 21:18:11 <doublec> wladston: it'll stop users from spamming tons of questions that appear for a while at zero conf
 822 2012-05-30 21:18:49 <wladston> doublec, gmaxwell: considering the transaction is valid, it will still show after some time, so that would not control spam ....
 823 2012-05-30 21:19:52 <doublec> wladston: isn't it easy to send a zero-conf transaction that'll never confirm though?
 824 2012-05-30 21:20:42 <wladston> doublec: I have no idea if it's easy or not
 825 2012-05-30 21:20:50 <doublec> wladston: eg, use an input that's from a transactoin i've never broadcast
 826 2012-05-30 21:20:51 <wladston> I would not be able to pull that off
 827 2012-05-30 21:21:07 <gmaxwell> doublec: Yes. Though I'm not sure if those show up in the wallet.
 828 2012-05-30 21:21:22 <doublec> ah ok
 829 2012-05-30 21:21:30 <sipa> they don't
 830 2012-05-30 21:21:35 <sipa> those are orphan transactions
 831 2012-05-30 21:22:27 MobiusL has quit (Remote host closed the connection)
 832 2012-05-30 21:22:43 <TD> wladston: for something like a questions site, you can assume a transaction is valid if you hear about it from several peers you randomly chose yourself
 833 2012-05-30 21:22:58 <TD> wladston: there are still attacks on such a scheme but probably they aren't worth it for defrauding a Q&A site
 834 2012-05-30 21:23:07 MobiusL has joined
 835 2012-05-30 21:23:07 <TD> especially if the content gets hidden on completion of the attack
 836 2012-05-30 21:24:31 <wladston> TD: the problem is if the attacker manages to withdraw the funds from other txs
 837 2012-05-30 21:24:33 Skaag has quit (Quit: Is dreams our reality, or is reality our dreams?)
 838 2012-05-30 21:24:39 <wladston> whops, other inputs
 839 2012-05-30 21:24:41 <wladston> that are valid
 840 2012-05-30 21:24:44 <gmaxwell> I think thats generally bad advice, but for something like a QA site (where the cost of fraud is low) its fine.
 841 2012-05-30 21:25:00 minimoose has quit (Ping timeout: 250 seconds)
 842 2012-05-30 21:25:12 <TD> wladston: i don't see what you mean
 843 2012-05-30 21:25:18 <gmaxwell> wladston: simply lock accounts against all withdraws until every payment they've ever made has 6+ confirms.
 844 2012-05-30 21:25:35 <wladston> gmaxwell: that's one part.
 845 2012-05-30 21:25:38 <gmaxwell> so even if they can rip you off for a QA posting, whoptie do.
 846 2012-05-30 21:26:02 <wladston> gmaxwell: how to detect that there is a question with bad credit ?
 847 2012-05-30 21:26:20 <wladston> I can avoid the money not going out by checking the confirmations, ok
 848 2012-05-30 21:26:29 <wladston> but I can't "detect" the problem
 849 2012-05-30 21:26:31 <sipa> keep a balance per question or per user?
 850 2012-05-30 21:26:41 <wladston> sipa: per question and per user
 851 2012-05-30 21:26:43 <sipa> as a separate account in bitcoin
 852 2012-05-30 21:27:22 <TD> you mean without polling every account?
 853 2012-05-30 21:27:24 <doublec> where does the coins to withdraw come from? Their own deposits, or other usres?
 854 2012-05-30 21:27:27 <gmaxwell> TD: I don't know why you keep promoting the 'hear about it from several peers you randomly chose yourself' even after that approach was pretty completely devistated in that paper.
 855 2012-05-30 21:27:48 <gmaxwell> (I mean, its fine here because nothing of value is lost by posting a QA question— but generally its not good advice)
 856 2012-05-30 21:28:07 <wladston> doublec: I don't know how bitcoind handles that …
 857 2012-05-30 21:28:08 <TD> the paper assumed you could surround the node
 858 2012-05-30 21:28:14 <TD> partially surround
 859 2012-05-30 21:28:34 <sipa> wladston: coins are always shared
 860 2012-05-30 21:28:59 <sipa> wladston: but you can keep a separate input balance per whatever you like, and assign each address to a balance
 861 2012-05-30 21:28:59 <wladston> I want to make the whole system super safe, in the future I want to operate using credit cards
 862 2012-05-30 21:29:03 <doublec> wladston: I mean on your site. How do users end up with a balance? Are they earning coins or is it stritly from their own deposits?
 863 2012-05-30 21:29:19 <wladston> sipa: that's what I'm doing (afaik)
 864 2012-05-30 21:29:20 <doublec> if the latter you can make the withdrawl's inputs be the initial deposit
 865 2012-05-30 21:29:32 <gmaxwell> You can totally isolate nodes without doing anything too extraordinary.  I can spin up 40000 'nodes' via a botnet, and then you'll be overwhelmingly likely to connect to all me. For example.
 866 2012-05-30 21:29:37 <doublec> so if the deposit is reversed, so is their withdraw
 867 2012-05-30 21:29:42 <wladston> doublec: they earn coins from questions or external transactions.
 868 2012-05-30 21:31:13 <gmaxwell> TD: someone used something like 100 distinct botnet IPs just to flood #bitcoin-otc for the lulz today.
 869 2012-05-30 21:31:40 <wladston> the problem turned out to be way harder than I expected — detecting a double spend.
 870 2012-05-30 21:32:07 <wladston> I wanted to do something like this : http://blockchain.info/double-spends
 871 2012-05-30 21:32:16 <gmaxwell> They're not as detectable as you seem to expect. Before they're mined they're not even forwarded.
 872 2012-05-30 21:33:33 Maccer has quit (Excess Flood)
 873 2012-05-30 21:33:42 <TD> ok, by "randomly chose" i mean "chose amongst a set of reasonable choices", ie, nodes that did not appear in the last 10 minutes. so raise the bar. open up some long lived connections to nodes that seem to stick around for a while. after a week or so, launch your site
 874 2012-05-30 21:34:01 agricocb has joined
 875 2012-05-30 21:34:31 <TD> if somebody is willing to bring up lots of fake nodes, and keep them around for a long period of time (which isn't so trivial given you are fighting AV companies), in order to do a double spend, and nobody notices all these fake nodes and warns merchants
 876 2012-05-30 21:34:34 <TD> then it's unsafe
 877 2012-05-30 21:35:38 <TD> but with a 40k botnet why not just outrun the chain? there are other ways to double spend if you control a ton of machines
 878 2012-05-30 21:37:01 Maccer has joined
 879 2012-05-30 21:37:11 <gmaxwell> because 40k random windows pcs don't outrun the chain.
 880 2012-05-30 21:37:33 <TD> i "promote" this (ie have implemented it) because it was easy to do and provides better assurances than today at minimal cost, but sure, if you can force your target to connect to a separate network you can do all sorts of things. like DoS them into submission.
 881 2012-05-30 21:38:21 <TD> depends on the machines, right. upload something to bittorrent that claims to be a crack for the latest game before a real one comes out and you can get a bunch of machines with high-end GPUs
 882 2012-05-30 21:38:57 <gmaxwell> I don't mean "have implemented it" as promoting it, I mean you've kept updating FAQ pages on the wiki to instruct people that it was safe to accept unconfirmed transactions, you just advised wladston here as much too.
 883 2012-05-30 21:39:10 <TD> i haven't touched the FAQ in months
 884 2012-05-30 21:39:28 <TD> and wladston is looking for a solution that exists today, for a Q&A site.
 885 2012-05-30 21:39:42 <TD> i think if you pick some nodes that were around for a while and see what proportion of them relay, that's plenty safe enough
 886 2012-05-30 21:39:45 <gmaxwell> Which people can withdraw money from.
 887 2012-05-30 21:39:47 <TD> for what he wants to do
 888 2012-05-30 21:40:16 <wladston> It doesn't need to be complex — I just want to know when it happened, after some time has passed.
 889 2012-05-30 21:40:23 <gmaxwell> YOU CANT
 890 2012-05-30 21:40:28 <wladston> It's not the vending-machine case
 891 2012-05-30 21:40:54 <gmaxwell> wladston: it is if you let people withdraw money.
 892 2012-05-30 21:41:31 <TD> for withdrawls you could presumably just send back the same coins you originally received
 893 2012-05-30 21:41:35 <wladston> gmaxwell: for the double spend, if you see the same txins in the blockchain, you can be 100% sure that your transaction is a dead double spend, no ?
 894 2012-05-30 21:41:43 <TD> if the inbound coins got double-spent away that'd automatically invalidate the withdrawl
 895 2012-05-30 21:41:45 <gmaxwell> I put 1000 BTC on my QA account. Oops I deposited too much, withdraw.  Opps looks like I just finny attacked the original payment, I ought to not keep multiple copies of my wallet.
 896 2012-05-30 21:42:20 <sipa> wladston: not the same ones but conflicting ones - yes
 897 2012-05-30 21:42:28 <gmaxwell> TD: yea, great, now you're asking a simple Q&A site to create complex machinery to track inputs and such.
 898 2012-05-30 21:42:36 shurnormal has quit (Quit: http://driedleaves.no-ip.org)
 899 2012-05-30 21:43:05 <sipa> wladston: and detecting that is not yet implemented, but it is planned
 900 2012-05-30 21:43:30 <wladston> sipa: sure. I wanted to have a simple workaround while that feature isn't out
 901 2012-05-30 21:43:31 <luke-jr> gmaxwell: care to merge gmp_bip? :p
 902 2012-05-30 21:43:33 <TD> satoshidice does this. it's not as easy as it could be, but it's certainly do-able. i'm not sure what your proposed alternative is? don't use bitcoin? always wait for 6 blocks?
 903 2012-05-30 21:44:14 <gmaxwell> TD: don't allow withdraws for six blocks after the last deposit.
 904 2012-05-30 21:44:34 <wladston> my site would be secure, becase I could do what gmaxwell is saying
 905 2012-05-30 21:45:00 <wladston> the problem now is to make it valid — I need to find and block double spenders and the questions they create
 906 2012-05-30 21:45:13 <sipa> gmaxwell: in the future, i expect two classes of interfaces to the bitcoin network will appear - one using forever-accepted deposits when they confirm or insured by a third party, and a second more direcly interacting with bitcoin's intricacies(?)
 907 2012-05-30 21:45:22 <gmaxwell> TD: do you know why satoshidice was producing chains of tens of thousands of orphans last week?
 908 2012-05-30 21:45:33 <gmaxwell> (kind of a random question)
 909 2012-05-30 21:45:39 <wladston> gmaxwell: why  ?
 910 2012-05-30 21:46:15 <gmaxwell> wladston: why what?
 911 2012-05-30 21:46:31 <wladston> """why satoshidice was producing chains of tens of thousands of orphans last week? """
 912 2012-05-30 21:46:35 <gmaxwell> oh I don't know, seemed like he knows something about how that site operates.
 913 2012-05-30 21:46:43 <gmaxwell> I thought it was a DOS attack on bitcoin.
 914 2012-05-30 21:46:45 <luke-jr> isn't it open source?
 915 2012-05-30 21:46:47 <wladston> ahm k
 916 2012-05-30 21:47:14 <TD> gmaxwell: no clue. he uses my code but it's heavily, heavily forked
 917 2012-05-30 21:47:28 <TD> it's open source yes
 918 2012-05-30 21:47:31 <TD> well i mean some of it is
 919 2012-05-30 21:47:35 <gmaxwell> luke-jr: ah, wasn't aware of that. Also— not sure that I want to do code reviews for gambling sites anymore.
 920 2012-05-30 21:47:37 <TD> not sure about the web ui and stuff
 921 2012-05-30 21:47:37 <wladston> will need to drive home now … on the way back I'll try to think what I can do to find if a transaction is a dead one
 922 2012-05-30 21:48:04 <luke-jr> gmaxwell: how is gmp_bip related to gambling sites? O.o
 923 2012-05-30 21:48:06 Alex47 has joined
 924 2012-05-30 21:48:18 <TD> wladston: as i said, bitcoinj + bitcoind can call an event handler in your code if a tx goes dead. if you want to do it purely in python, it might be tougher.
 925 2012-05-30 21:48:35 Alex47 has left ()
 926 2012-05-30 21:48:42 <gmaxwell> luke-jr: I was responding to 'isn't it open source?
 927 2012-05-30 21:48:45 <luke-jr> o
 928 2012-05-30 21:49:12 <wladston> TD: bitcoinj can run as daemon ? interesting, let me check that
 929 2012-05-30 21:49:14 <TD> http://code.google.com/r/fireduck-magicpony/source/browse
 930 2012-05-30 21:49:20 <TD> wladston: it's a library. you can run it however you want.
 931 2012-05-30 21:49:21 <luke-jr> wladston: it's a Java library…
 932 2012-05-30 21:49:33 <wladston> oh
 933 2012-05-30 21:49:35 <TD> the satoshidice fork of bitcoinj is there. the commit messages are not particularly descriptive
 934 2012-05-30 21:50:02 <TD> he's added storage backends for amazon dynamo and stuff
 935 2012-05-30 21:50:37 <wladston> it would take me months to integrate that with django, I think ...
 936 2012-05-30 21:50:49 <wladston> maybe because It's been some years I don't do java
 937 2012-05-30 21:51:02 <TD> he's also implemented a way to control the tx creation process such that only specific outputs are considered. it seems like a  good feature. you can do it today by creating multiple Wallet objects, but then you can *only* use the same outputs sent to you. it'd be nice to have the option of both.
 938 2012-05-30 21:51:03 <Matt_von_Mises> I've definitely sorted out the serialisation. I'm using references of the byte array but don't worry since integers are converted. Example: https://github.com/MatthewLM/cbitcoin/blob/master/cbitcoin/src/structures/CBObject/CBMessage/CBTransactionInput/CBTransactionInput.c#L122
 939 2012-05-30 21:52:03 <wladston> anyone here familiar with bitcoinj source ? maybe I can copy the specific dead transaction code
 940 2012-05-30 21:52:10 <TD> i wrote it
 941 2012-05-30 21:52:11 <wladston> into the python lib
 942 2012-05-30 21:52:24 <wladston> TD: oh, that's awesome, congratulations :)
 943 2012-05-30 21:52:34 <wladston> TD:  could you help my with this ?
 944 2012-05-30 21:52:35 <TD> it's very intimately linked into tracking the block chain and the wallet code, for obvious reasons. it's not something you can just copy into something that RPCs to bitcoind
 945 2012-05-30 21:52:49 <TD> i'd just go with checking if confirms == 0
 946 2012-05-30 21:53:05 <wladston> TD: hmm, k … could you point me to the part of the code that does that ?
 947 2012-05-30 21:53:28 <wladston> TD: confirms can get < 0 ??
 948 2012-05-30 21:53:35 <TD> no
 949 2012-05-30 21:54:02 <TD> as we told you, if a tx is double spent away it sits at confirms == 0 forever in satoshis code
 950 2012-05-30 21:54:04 <TD> http://code.google.com/p/bitcoinj/source/browse/core/src/main/java/com/google/bitcoin/core/Wallet.java
 951 2012-05-30 21:54:25 <TD> look in that file for dead. like i said, it's probably not going to help you
 952 2012-05-30 21:54:45 <wladston> TD: ahn, ok. Then we're back to the issue of how much time it takes since we can be at last 99.9% sure it was a double spend...
 953 2012-05-30 21:54:52 _W_ has quit (Excess Flood)
 954 2012-05-30 21:55:06 _W_ has joined
 955 2012-05-30 21:55:07 <wladston> TD:  thanks :)
 956 2012-05-30 21:55:29 <gmaxwell> wladston: I want to stab you.
 957 2012-05-30 21:55:32 <gmaxwell> Just so you know.
 958 2012-05-30 21:55:37 <gmaxwell> :)
 959 2012-05-30 21:56:03 <wladston> gmaxwell: why ??
 960 2012-05-30 21:56:27 <gmaxwell> Becuase you're just looping the disucssion. You CAN NOT do what you want with the current bitcoin reference code.
 961 2012-05-30 21:56:44 <gmaxwell> There is _NO_ amount of waiting when you know that something at zero is zero because it's double spent.
 962 2012-05-30 21:56:45 <wladston> gmaxwell: I'm not doing it on purpose!
 963 2012-05-30 21:57:04 _Fireball has quit (Quit:  HydraIRC -> http://www.hydrairc.com <- *I* use it, so it must be good!)
 964 2012-05-30 21:57:09 <gmaxwell> It could just be some dimbulb with a modified client sent you a txn with inadequate fees and it's going to take a week to confirm.
 965 2012-05-30 21:57:34 <wladston> gmaxwell: got it.
 966 2012-05-30 21:58:01 <wladston> gmaxwell: the way out really is the dead transaction lookup as seen in bitcoinj code.
 967 2012-05-30 21:58:21 <TD> that isn't implemented in bitcoind
 968 2012-05-30 21:58:25 <sipa> yes, and that should be implemented in bitcoind too
 969 2012-05-30 21:58:32 <sipa> but for now, it isn't
 970 2012-05-30 21:58:54 <wladston> sipa: any idea on how much time it could that for that to be included there ?
 971 2012-05-30 21:59:10 <wladston> maybe I can postpone zero-confirmation acceptance
 972 2012-05-30 21:59:27 <sipa> i don't dare to make a promise for that
 973 2012-05-30 21:59:31 <sipa> maybe 0.8
 974 2012-05-30 21:59:50 <wladston> sipa:  so maybe like a year
 975 2012-05-30 21:59:52 <gmaxwell> It shouldn't be too complicated.. though the simple way of doing it could create performance problems when you have lots of unconfirms.
 976 2012-05-30 21:59:59 <TD> http://bitcoincard.org/product.php
 977 2012-05-30 22:00:02 <TD> hmm interesting
 978 2012-05-30 22:00:13 <gmaxwell> (simply every time you check the height of an unconfirmed txn, check the index for its parents being spent)
 979 2012-05-30 22:00:17 <sipa> it's not hard, just keeping an extra few indexes to track wallet inputa
 980 2012-05-30 22:00:23 <sipa> *inputs
 981 2012-05-30 22:01:02 <sipa> wladston: hopefully not a year!
 982 2012-05-30 22:01:27 <wladston> TD: really nice site
 983 2012-05-30 22:01:30 <TD> assuming it's not vaporware
 984 2012-05-30 22:01:48 <TD> except they provide a video and sample transactions ...
 985 2012-05-30 22:02:52 <wladston> ok, so driving back home now ….
 986 2012-05-30 22:03:05 <wladston> thanks for all the help, the problem is way clearer for me now
 987 2012-05-30 22:03:35 <wladston> will study bitcoind and its api in further detail when I get home...
 988 2012-05-30 22:03:58 wladston has left ()
 989 2012-05-30 22:04:27 <sipa> my crawler crashed :(
 990 2012-05-30 22:04:35 <sipa> no... it just exited
 991 2012-05-30 22:05:19 ovidiusoft has quit (Ping timeout: 260 seconds)
 992 2012-05-30 22:12:43 wasabi1 has quit (Read error: Connection reset by peer)
 993 2012-05-30 22:18:23 sirk390 has quit (Read error: Connection reset by peer)
 994 2012-05-30 22:19:02 sirk390 has joined
 995 2012-05-30 22:23:05 TD has quit (Quit: TD)
 996 2012-05-30 22:23:24 graingert_ecs has quit (Remote host closed the connection)
 997 2012-05-30 22:29:09 sgornick has quit (Quit: Ex-Chat)
 998 2012-05-30 22:42:08 graingert has quit (Remote host closed the connection)
 999 2012-05-30 22:43:14 copumpkin has quit (Ping timeout: 246 seconds)
1000 2012-05-30 22:43:51 copumpkin has joined
1001 2012-05-30 22:44:32 Guest11526 has quit (Quit: Ex-Chat)
1002 2012-05-30 22:44:49 ahbritto has joined
1003 2012-05-30 22:45:14 ahbritto is now known as Guest24234
1004 2012-05-30 22:47:58 Guest24234 has quit (Client Quit)
1005 2012-05-30 22:48:17 ahbritto_ has joined
1006 2012-05-30 23:00:24 eoss has joined
1007 2012-05-30 23:03:42 RazielZ has quit (Quit: Leaving)
1008 2012-05-30 23:06:50 Matt_von_Mises has quit (Quit: Leaving.)
1009 2012-05-30 23:17:52 talpan has quit (Quit: Verlassend)
1010 2012-05-30 23:20:31 brwyatt is now known as Away!~brwyatt@pool-96-226-236-130.dllstx.fios.verizon.net|brwyatt
1011 2012-05-30 23:28:11 sirk390 has quit (Quit: Leaving.)
1012 2012-05-30 23:29:18 wladston has joined
1013 2012-05-30 23:31:11 twmz has quit (Ping timeout: 246 seconds)
1014 2012-05-30 23:34:21 twmz has joined
1015 2012-05-30 23:38:15 mmoya has quit (Ping timeout: 252 seconds)
1016 2012-05-30 23:44:19 <luke-jr> wow
1017 2012-05-30 23:44:32 <luke-jr> caching transaction sizes seems to have made a HUGE difference
1018 2012-05-30 23:44:37 <luke-jr> this might even perform better than git master now
1019 2012-05-30 23:50:21 t7 has quit (Remote host closed the connection)
1020 2012-05-30 23:53:10 <luke-jr> oh oops, forgot to disable the gmp cache