1 2012-11-01 00:01:39 <gmaxwell> sipa: seems to work fine for me on a clean chain, unfortunately I was stupid and didn't save the database it caught fire on.
2 2012-11-01 00:02:49 <MC1984> anyone notice the bitcoin scene is sort of stagnating
3 2012-11-01 00:03:03 <MC1984> nothings happening
4 2012-11-01 00:03:13 rdponticelli_ has joined
5 2012-11-01 00:03:24 <MC1984> prices are down, no interesting new startups
6 2012-11-01 00:03:34 <MC1984> maybe the critical mass of scamming is taking its toll
7 2012-11-01 00:04:05 <conman> scams drive economy too
8 2012-11-01 00:04:08 <MC1984> thats ok, just keep plugging on the technical side until people are ready to play nice
9 2012-11-01 00:04:50 rdponticelli has quit (Ping timeout: 276 seconds)
10 2012-11-01 00:05:13 <MC1984> maybe its best that the scene cool down for a bit, so that it doesnt run away before the technical basis is ready for it
11 2012-11-01 00:05:43 <conman> we have enough on the mining side to contend with shortly...
12 2012-11-01 00:06:01 <phantomcircuit> MC1984, the scammers have taken over far more than is obvious
13 2012-11-01 00:06:06 <phantomcircuit> they're insidious
14 2012-11-01 00:06:31 <MC1984> yea
15 2012-11-01 00:06:54 <sipa> gmaxwell: i assume a buggy version of reindex overwrote the genesis block in your chain, and placed a new genesis block elsewhere, and eventually reconnected
16 2012-11-01 00:07:08 <gmaxwell> hah
17 2012-11-01 00:07:43 <gmaxwell> reindex should be a little more robust against that kind of corruption, though I'm not sure abou testing it.
18 2012-11-01 00:09:08 <MC1984> people STILL need to earn how not to be taken in though thats the main problem
19 2012-11-01 00:09:15 <MC1984> scammers gonna scam
20 2012-11-01 00:09:30 <sipa> well, what i assume would have happened if you continued the reindex, was that it would process all block files, find nothing connectable, and start downloadinging, overwriting your files
21 2012-11-01 00:09:47 <sipa> perhaps it should delete them, but i feel less easy about deleting than about overwriting
22 2012-11-01 00:09:55 <MC1984> its a harsh tutelege
23 2012-11-01 00:10:32 cryptorific has left ()
24 2012-11-01 00:12:34 <phantomcircuit> MC1984, im not talking about the small time scammers in -otc :/
25 2012-11-01 00:12:39 <phantomcircuit> (and no i wont elaborate)
26 2012-11-01 00:13:22 <MC1984> yea yea pirate etc
27 2012-11-01 00:13:33 <phantomcircuit> not even talkgn about pirate
28 2012-11-01 00:14:03 <MC1984> well thts as far as my knowledge goes
29 2012-11-01 00:14:20 <MC1984> bet theres some bitcoin startup investment scamming going on
30 2012-11-01 00:15:01 ThomasV has joined
31 2012-11-01 00:15:11 <gmaxwell> sipa: I was able to break it again.
32 2012-11-01 00:15:36 <sipa> uh-oh
33 2012-11-01 00:15:42 <sipa> how?
34 2012-11-01 00:16:43 <gmaxwell> sequence: Sync a clean node normally. Reindex. Abort. Start without reindex and let it download a couple blocks. Stop. Reindex again. Blows up again at 0.
35 2012-11-01 00:17:14 <gmaxwell> Interestingly I aborted again (while it was spewing those errors) and restarted again with reindex and it appears to be reindexing correctly now.
36 2012-11-01 00:18:13 <sipa> what does 'abort' mean?
37 2012-11-01 00:19:58 aurigae has left ()
38 2012-11-01 00:20:18 <gmaxwell> kill -TERM
39 2012-11-01 00:20:28 <gmaxwell> (and it closed itself cleanly)
40 2012-11-01 00:20:38 <sipa> during reindex, or after?
41 2012-11-01 00:21:39 <gmaxwell> during.
42 2012-11-01 00:21:45 <gmaxwell> sorry, that wasn't clear.
43 2012-11-01 00:21:50 <gmaxwell> I aborted at about height 200k.
44 2012-11-01 00:22:45 <gmaxwell> then rainbitcoin without reindex and let it get a dozen blocks or so, aborted, and started again with reindex and it blew up. Aborted. Started again with reindex. And it's up to 191k now.
45 2012-11-01 00:23:27 ThomasV has quit (Ping timeout: 260 seconds)
46 2012-11-01 00:24:14 JStoker has quit (Excess Flood)
47 2012-11-01 00:26:20 <sipa> gmaxwell: is download using -connect=127.0.0.1 or so?
48 2012-11-01 00:27:48 <gmaxwell> yes.
49 2012-11-01 00:28:20 <sipa> maybe IBD started before the reindex initiated
50 2012-11-01 00:29:18 <gmaxwell> ah, if so that I should be able to keep retrying.
51 2012-11-01 00:29:41 <gmaxwell> (and trigger it on and off)
52 2012-11-01 00:32:21 <sipa> heh
53 2012-11-01 00:32:32 <gmaxwell> restart .. restart ... restart.. boom... boom... ... hm. is it going to work at all anymore?
54 2012-11-01 00:32:32 <sipa> oh, wrong branch
55 2012-11-01 00:32:38 <gmaxwell> it doesn't look like that:
56 2012-11-01 00:32:40 <gmaxwell> 11/01/12 00:19:22 nFileVersion = 79900
57 2012-11-01 00:32:40 <gmaxwell> 11/01/12 00:19:22 wallet 209ms
58 2012-11-01 00:32:40 <gmaxwell> 11/01/12 00:19:22 Loading addresses...
59 2012-11-01 00:32:40 <gmaxwell> 11/01/12 00:19:22 Reindexing block file blk00000.dat...
60 2012-11-01 00:32:42 <gmaxwell> 11/01/12 00:19:22 ERROR: CheckBlock() : size limits failed
61 2012-11-01 00:32:45 <gmaxwell> 11/01/12 00:19:22 ERROR: ProcessBlock() : CheckBlock FAILED
62 2012-11-01 00:32:55 JStoker has joined
63 2012-11-01 00:32:55 JStoker has quit (Excess Flood)
64 2012-11-01 00:33:22 <gmaxwell> oh tere it goes .. so yea out of six starts two of them fail.
65 2012-11-01 00:34:47 <sipa> update pushed
66 2012-11-01 00:36:36 <sipa> assuming that was the problem, this should fix it
67 2012-11-01 00:36:39 senseless has joined
68 2012-11-01 00:38:07 senseless has left ()
69 2012-11-01 00:38:35 one_zero has joined
70 2012-11-01 00:39:16 Joric has joined
71 2012-11-01 00:39:17 Joric has quit (Changing host)
72 2012-11-01 00:39:17 Joric has joined
73 2012-11-01 00:40:39 Apexseals has quit (Read error: Connection reset by peer)
74 2012-11-01 00:40:40 <Joric> what's // NOLINT ?
75 2012-11-01 00:40:56 Apexseals has joined
76 2012-11-01 00:41:00 <vazakl> disables lint checking
77 2012-11-01 00:42:48 <Joric> ah got it, it's for the code analyzer
78 2012-11-01 00:42:58 <gmaxwell> sipa: ah, first run with new patch failed.
79 2012-11-01 00:43:07 <sipa> grr!
80 2012-11-01 00:43:42 <gmaxwell> as did the second, lemme see if it will ever work again. :P
81 2012-11-01 00:43:59 <gmaxwell> Third time worked.
82 2012-11-01 00:44:10 <Joric> somebody should perform some static analysis on bitcoin source code
83 2012-11-01 00:44:17 <sipa> gmaxwell: anything special on the command line?
84 2012-11-01 00:44:19 <sipa> or config?
85 2012-11-01 00:45:46 <gmaxwell> the logs look indentical in the pass and fail cases except for the whole passing and failing part.
86 2012-11-01 00:45:52 <gmaxwell> Joric: people do.
87 2012-11-01 00:47:39 JStoker_ has joined
88 2012-11-01 00:47:50 <sipa> gmaxwell: try under valgrind, maybe? i don't like this indeterminism
89 2012-11-01 00:47:57 <gmaxwell> sipa: -detachdb -daemon=1 -reindex plus http://pastebin.com/h8FsfmEs
90 2012-11-01 00:48:51 <gmaxwell> yea already ahead of you...
91 2012-11-01 00:48:53 <gmaxwell> slooow
92 2012-11-01 00:49:27 Joric has quit ()
93 2012-11-01 00:49:27 <gmaxwell> oh there we go
94 2012-11-01 00:49:27 <gmaxwell> ==30545== Conditional jump or move depends on uninitialised value(s)
95 2012-11-01 00:49:27 <gmaxwell> ==30545== at 0x4867FE: LoadExternalBlockFile(_IO_FILE*, CDiskBlockPos*) (main.h:1056)
96 2012-11-01 00:49:30 <gmaxwell> ==30545== by 0x43F8F8: ThreadImport(void*) (init.cpp:353)
97 2012-11-01 00:49:33 maqr has quit (Ping timeout: 248 seconds)
98 2012-11-01 00:52:02 slush1 has quit (Ping timeout: 260 seconds)
99 2012-11-01 00:52:35 <sipa> same here; compiling in debug mode
100 2012-11-01 01:07:32 <sipa> gmaxwell: got it
101 2012-11-01 01:07:47 <sipa> nType and nVersion not initialized in CBufferedFile
102 2012-11-01 01:10:50 maqr has joined
103 2012-11-01 01:11:21 servvs has joined
104 2012-11-01 01:12:49 <D34TH> just got spammed with "Relaying wtx : BLAHBLAHHBLAH"
105 2012-11-01 01:13:03 <D34TH> ill assume im relaying transactions
106 2012-11-01 01:13:06 <D34TH> :D
107 2012-11-01 01:13:30 <sipa> no, you're transmitting
108 2012-11-01 01:13:34 <sipa> wtx == wallet transaction
109 2012-11-01 01:13:52 <D34TH> weird, i havent sent any txes
110 2012-11-01 01:14:23 <D34TH> probably because im just downloading the chain
111 2012-11-01 01:14:23 <D34TH> ill chalk it up to that
112 2012-11-01 01:17:02 kreal has quit ()
113 2012-11-01 01:22:55 <sipa> gmaxwell: fixed
114 2012-11-01 01:23:02 * sipa zZzZ
115 2012-11-01 01:24:01 Apexseals has quit (Read error: Connection reset by peer)
116 2012-11-01 01:24:20 Apexseals has joined
117 2012-11-01 01:27:02 freakazoid has quit (Ping timeout: 260 seconds)
118 2012-11-01 01:30:11 darkskiez has quit (Ping timeout: 260 seconds)
119 2012-11-01 01:30:42 darkskiez has joined
120 2012-11-01 01:31:46 JStoker_ is now known as JStoker
121 2012-11-01 01:39:50 root2 has quit (Read error: Connection reset by peer)
122 2012-11-01 01:40:13 root2 has joined
123 2012-11-01 01:40:46 D34TH has quit (Read error: Connection reset by peer)
124 2012-11-01 01:51:01 maaku has quit (Quit: maaku)
125 2012-11-01 02:05:21 Impaler_ has quit (Remote host closed the connection)
126 2012-11-01 02:06:25 <jgarzik> sipa: actually, I've been meaning to report the same
127 2012-11-01 02:06:53 <jgarzik> sipa: I'll be sync'ing, from ~5 days ago blockchain to current, and get spammed with a -bunch- of "relaying wtx"
128 2012-11-01 02:07:05 <jgarzik> sipa: listtransactions reports no recent traffic
129 2012-11-01 02:10:15 Garr255 has quit (Read error: Connection reset by peer)
130 2012-11-01 02:11:26 DutchBrat_ has joined
131 2012-11-01 02:12:33 <jgarzik> sipa: to be specific,
132 2012-11-01 02:12:33 <jgarzik> [jgarzik@bd tmp]$ grep -c 'Relaying wtx' debug.log
133 2012-11-01 02:12:34 <jgarzik> 875
134 2012-11-01 02:12:44 <jgarzik> that's just one ResendWalletTransactions() iteration
135 2012-11-01 02:13:44 Maged has quit (Read error: Connection reset by peer)
136 2012-11-01 02:14:31 DutchBrat has quit (Ping timeout: 245 seconds)
137 2012-11-01 02:15:44 Garr255 has joined
138 2012-11-01 02:18:45 guruvan has quit (Ping timeout: 276 seconds)
139 2012-11-01 02:19:43 guruvan- is now known as guruvan
140 2012-11-01 02:20:27 guruvan_ has joined
141 2012-11-01 02:21:03 <jgarzik> I'm pretty sure it resending 100% of my wallet transactions
142 2012-11-01 02:21:07 <jgarzik> *it is
143 2012-11-01 02:21:22 <gmaxwell> jgarzik: sure, they're not confirmed! you want them confirmed don't you? :P
144 2012-11-01 02:22:01 <jgarzik> gmaxwell: they're all confirmed?
145 2012-11-01 02:22:17 <gmaxwell> not as far as your node is concerned though.
146 2012-11-01 02:23:59 <jgarzik> gmaxwell: ?
147 2012-11-01 02:24:11 <jgarzik> gmaxwell: it is 98% sync'd at the time of the messages
148 2012-11-01 02:24:27 <jgarzik> and no new transactions appear post-sync
149 2012-11-01 02:26:29 paraipan has quit (Quit: Saliendo)
150 2012-11-01 02:26:32 <gmaxwell> jgarzik: hm! I suppose they were queued for retransmit earlier? odd.
151 2012-11-01 02:29:18 [Tycho] has quit (Remote host closed the connection)
152 2012-11-01 02:29:20 Maged has joined
153 2012-11-01 02:29:27 Cory has quit (Read error: Operation timed out)
154 2012-11-01 02:35:47 jgarzik has quit (Quit: reboot)
155 2012-11-01 02:41:08 Cory has joined
156 2012-11-01 02:44:51 runeks has quit (Quit: Leaving)
157 2012-11-01 02:45:15 deadserious has joined
158 2012-11-01 02:45:39 deadserious is now known as Guest30839
159 2012-11-01 02:47:10 Guest30839 has quit (Remote host closed the connection)
160 2012-11-01 02:47:29 jgarzik has joined
161 2012-11-01 02:47:41 jgarzik has quit (Changing host)
162 2012-11-01 02:47:41 jgarzik has joined
163 2012-11-01 02:52:59 <Garr255> hey, anyone here ever run into this error? :-1: error: D8021 : invalid numeric argument '/Wl,-z,relro'
164 2012-11-01 02:53:00 <Garr255> https://dl.dropbox.com/u/9542654/qt%20error.png
165 2012-11-01 02:53:24 <Garr255> Trying to compile qt in windows...
166 2012-11-01 03:01:46 galambo_ has joined
167 2012-11-01 03:03:07 GMP has quit (Ping timeout: 240 seconds)
168 2012-11-01 03:05:17 galambo has quit (Ping timeout: 268 seconds)
169 2012-11-01 03:09:55 agricocb has joined
170 2012-11-01 03:36:11 MagicalTux has quit (Excess Flood)
171 2012-11-01 03:36:40 MT`AwAy has joined
172 2012-11-01 03:36:46 MT`AwAy is now known as Guest69330
173 2012-11-01 03:41:44 kreal has joined
174 2012-11-01 03:42:08 kreal is now known as Guest17397
175 2012-11-01 03:43:37 Guest17397 is now known as kreal-
176 2012-11-01 03:45:32 fiesh has quit (Ping timeout: 244 seconds)
177 2012-11-01 03:46:12 fiesh has joined
178 2012-11-01 03:52:12 deadserious has joined
179 2012-11-01 03:52:36 deadserious is now known as Guest51650
180 2012-11-01 03:54:21 Guest51650 has quit (Remote host closed the connection)
181 2012-11-01 03:58:11 RainbowDashh has joined
182 2012-11-01 04:02:13 vampireb has joined
183 2012-11-01 04:06:07 RainbowDashh has quit (Ping timeout: 240 seconds)
184 2012-11-01 04:08:44 TheEslbear has joined
185 2012-11-01 04:08:54 vampireb has quit (Quit: Lost terminal)
186 2012-11-01 04:09:13 RainbowDashh has joined
187 2012-11-01 04:12:25 Eslbaer has quit (Ping timeout: 244 seconds)
188 2012-11-01 04:18:50 HunnerZombie is now known as Hunner
189 2012-11-01 04:23:56 freakazoid has joined
190 2012-11-01 04:34:15 Mad7Scientist has quit (Ping timeout: 260 seconds)
191 2012-11-01 04:41:47 [7] has quit (Disconnected by services)
192 2012-11-01 04:41:55 TheSeven has joined
193 2012-11-01 04:48:53 kreal- is now known as kreal
194 2012-11-01 05:09:51 B0g4r7 has quit (Quit: B0g4r7)
195 2012-11-01 05:11:58 maaku has joined
196 2012-11-01 05:16:07 RainbowDashh has quit (Quit: davidfg4 said 2 hours, 58 minutes ago in #reddit-mlp: your quit message is really long)
197 2012-11-01 05:27:38 forsetifox_ has quit (Quit: Leaving)
198 2012-11-01 05:28:09 forsetifox has joined
199 2012-11-01 05:31:35 Mad7Scientist has joined
200 2012-11-01 05:38:20 RainbowDashh has joined
201 2012-11-01 05:41:50 maaku has quit (Quit: maaku)
202 2012-11-01 05:42:28 maaku has joined
203 2012-11-01 05:46:26 ThomasV has joined
204 2012-11-01 05:55:50 gfinn has quit (Ping timeout: 276 seconds)
205 2012-11-01 06:02:41 ahbritto has quit (Remote host closed the connection)
206 2012-11-01 06:04:26 freakazoid has quit (Ping timeout: 256 seconds)
207 2012-11-01 06:06:34 optimator has joined
208 2012-11-01 06:08:48 optimator_ has quit (Ping timeout: 260 seconds)
209 2012-11-01 06:08:49 maaku has quit (Quit: maaku)
210 2012-11-01 06:10:41 gfinn has joined
211 2012-11-01 06:12:39 maaku has joined
212 2012-11-01 06:18:31 servvs has quit (Ping timeout: 255 seconds)
213 2012-11-01 06:34:10 tonikt has quit (Quit: Leaving)
214 2012-11-01 06:56:00 ThomasV has quit (Quit: Quitte)
215 2012-11-01 06:59:37 ovidiusoft has joined
216 2012-11-01 06:59:58 ThomasV has joined
217 2012-11-01 07:03:20 RainbowDashh has quit (Ping timeout: 252 seconds)
218 2012-11-01 07:07:51 RainbowDashh has joined
219 2012-11-01 07:08:07 RainbowDashh has quit (Changing host)
220 2012-11-01 07:08:07 RainbowDashh has joined
221 2012-11-01 07:12:43 RainbowDashh has quit (Ping timeout: 255 seconds)
222 2012-11-01 07:13:44 brwyatt is now known as brwyatt|Away
223 2012-11-01 07:15:22 RainbowDashh has joined
224 2012-11-01 07:15:23 RainbowDashh has quit (Changing host)
225 2012-11-01 07:15:23 RainbowDashh has joined
226 2012-11-01 07:15:52 Guest69330 is now known as MagicalTux
227 2012-11-01 07:15:55 MagicalTux has quit (Changing host)
228 2012-11-01 07:15:55 MagicalTux has joined
229 2012-11-01 07:16:12 MagicalTux has quit (Excess Flood)
230 2012-11-01 07:19:11 Guest88273 has joined
231 2012-11-01 07:19:47 RainbowDashh has quit (Ping timeout: 240 seconds)
232 2012-11-01 07:22:56 RainbowDashh has joined
233 2012-11-01 07:30:24 Guest88273 is now known as MagicalTux
234 2012-11-01 07:30:28 MagicalTux has quit (Changing host)
235 2012-11-01 07:30:28 MagicalTux has joined
236 2012-11-01 07:33:15 RainbowDashh has quit (Quit: davidfg4 said 2 hours, 58 minutes ago in #reddit-mlp: your quit message is really long)
237 2012-11-01 07:34:51 RBecker is now known as Ryan
238 2012-11-01 07:35:01 Ryan is now known as RBecker
239 2012-11-01 07:39:05 Diablo-D3 has quit (Remote host closed the connection)
240 2012-11-01 07:47:26 d4de has quit (Ping timeout: 245 seconds)
241 2012-11-01 07:49:48 d4de has joined
242 2012-11-01 07:49:48 d4de has quit (Read error: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number)
243 2012-11-01 07:50:42 d4de has joined
244 2012-11-01 07:52:39 Diablo-D3 has joined
245 2012-11-01 08:01:17 maaku has quit (Quit: maaku)
246 2012-11-01 08:16:06 CodesInChaos has joined
247 2012-11-01 08:24:02 toffoo has quit ()
248 2012-11-01 08:30:38 jokc has joined
249 2012-11-01 08:33:40 Garr255 has quit (Read error: Connection reset by peer)
250 2012-11-01 08:36:27 ThomasV has quit (Ping timeout: 255 seconds)
251 2012-11-01 08:49:03 jokc has quit (Read error: Connection reset by peer)
252 2012-11-01 09:06:36 dvide has quit ()
253 2012-11-01 09:13:38 RazielZ has joined
254 2012-11-01 09:14:38 FaRaLiMiTe has quit (Ping timeout: 248 seconds)
255 2012-11-01 09:14:38 Greee has quit (Ping timeout: 248 seconds)
256 2012-11-01 09:14:57 abrkn has joined
257 2012-11-01 09:25:32 JZavala has quit (Ping timeout: 255 seconds)
258 2012-11-01 09:34:56 PiZZaMaN2K is now known as away!~PiZZaMaN2@host-72-2-137-170.csinet.net|PiZZaMaN2K
259 2012-11-01 09:37:15 enmaku has quit (Remote host closed the connection)
260 2012-11-01 09:37:34 enmaku has joined
261 2012-11-01 09:37:49 pooler has quit (Ping timeout: 252 seconds)
262 2012-11-01 09:40:22 ibno has joined
263 2012-11-01 09:42:26 Cory has quit (Ping timeout: 268 seconds)
264 2012-11-01 09:46:49 Cory has joined
265 2012-11-01 10:07:07 enmaku has quit (Read error: Connection reset by peer)
266 2012-11-01 10:08:11 enmaku has joined
267 2012-11-01 10:13:55 BlackPrapor has quit (2!~BlackPrap@94.41.204.155.dynamic.ufanet.ru|Quit: KVIrc 4.0.4 Insomnia http://www.kvirc.net/)
268 2012-11-01 10:26:28 t7 has joined
269 2012-11-01 10:28:05 graingert_ecs has joined
270 2012-11-01 10:39:52 pooler has joined
271 2012-11-01 10:43:12 slush has joined
272 2012-11-01 10:46:11 ThomasV has joined
273 2012-11-01 10:49:25 Maged has quit (Disconnected by services)
274 2012-11-01 10:49:32 Maged_ has joined
275 2012-11-01 10:49:50 Maged_ is now known as Maged
276 2012-11-01 10:56:54 Zarutian has joined
277 2012-11-01 11:00:27 Joric has joined
278 2012-11-01 11:01:05 enmaku has quit (Read error: Connection reset by peer)
279 2012-11-01 11:01:50 enmaku has joined
280 2012-11-01 11:13:39 zveda is now known as coingenuit
281 2012-11-01 11:14:16 coingenuit is now known as zveda
282 2012-11-01 11:16:46 TD has joined
283 2012-11-01 11:18:22 zveda_ has joined
284 2012-11-01 11:18:38 zveda is now known as Guest96686
285 2012-11-01 11:19:35 zveda_ has quit (Client Quit)
286 2012-11-01 11:19:50 zveda_ has joined
287 2012-11-01 11:20:03 zveda_ has quit (Remote host closed the connection)
288 2012-11-01 11:21:56 Guest96686 has quit (Ping timeout: 260 seconds)
289 2012-11-01 11:33:25 Joric has quit ()
290 2012-11-01 11:34:44 graingert_ecs has quit (Remote host closed the connection)
291 2012-11-01 11:37:25 optimator_ has joined
292 2012-11-01 11:39:40 optimator has quit (Ping timeout: 260 seconds)
293 2012-11-01 11:48:37 Zarutian has quit (Quit: Zarutian)
294 2012-11-01 11:49:00 TD has quit (Quit: TD)
295 2012-11-01 11:57:32 Cory has quit (Ping timeout: 252 seconds)
296 2012-11-01 11:57:53 Pasha has joined
297 2012-11-01 11:58:17 CodesInChaos has quit (Ping timeout: 244 seconds)
298 2012-11-01 11:58:26 d4de has quit (Ping timeout: 256 seconds)
299 2012-11-01 12:03:04 paraipan has joined
300 2012-11-01 12:04:05 Joric has joined
301 2012-11-01 12:08:11 denisx has joined
302 2012-11-01 12:11:32 daybyter has joined
303 2012-11-01 12:20:42 TD has joined
304 2012-11-01 12:21:01 denisx has quit (Remote host closed the connection)
305 2012-11-01 12:21:23 denisx has joined
306 2012-11-01 12:24:34 agricocb has quit (Remote host closed the connection)
307 2012-11-01 12:32:23 Pasha is now known as Cory
308 2012-11-01 12:51:39 <rdponticelli_> <jgarzik> I'm pretty sure it resending 100% of my wallet transactions << I've noticed the same behavior on my node
309 2012-11-01 12:51:51 rdponticelli_ is now known as rdponticelli
310 2012-11-01 12:52:04 Joric has quit ()
311 2012-11-01 12:57:43 <sipa> rdponticelli: which version?
312 2012-11-01 12:59:27 <rdponticelli> sipa: it started on the first ultraprune commit
313 2012-11-01 12:59:47 <rdponticelli> It was hit by the zero balance bug
314 2012-11-01 13:00:30 <rdponticelli> Recovered after the patch, by a wallet backup, but it kept resending the transactions now and then...
315 2012-11-01 13:07:41 <rdponticelli> Now it was on 578fc80, I'm updating...
316 2012-11-01 13:07:56 agricocb has joined
317 2012-11-01 13:08:41 <rdponticelli> Anyway, they're only some changes to the gui
318 2012-11-01 13:08:42 d4de has joined
319 2012-11-01 13:08:42 d4de has quit (Changing host)
320 2012-11-01 13:08:42 d4de has joined
321 2012-11-01 13:09:44 conman has quit (Ping timeout: 260 seconds)
322 2012-11-01 13:10:28 <sipa> rdponticelli: will look into it
323 2012-11-01 13:13:35 <rdponticelli> sipa: If I can do anything else to help, just tell me...
324 2012-11-01 13:15:40 <TD> wiki is still broken :(
325 2012-11-01 13:15:46 <TD> definitely time to move at least the FAQ into the main website
326 2012-11-01 13:18:41 Hasimir has quit (Quit: Vidi, Vici, Veni.)
327 2012-11-01 13:25:40 midnightmagic has quit (Read error: Operation timed out)
328 2012-11-01 13:27:07 midnightmagic has joined
329 2012-11-01 13:40:20 _flow_ has quit (Quit: WeeChat 0.3.8)
330 2012-11-01 13:40:31 gavinandresen has joined
331 2012-11-01 13:41:45 datagutt has joined
332 2012-11-01 13:44:20 one_zero has quit ()
333 2012-11-01 13:45:24 _flow_ has joined
334 2012-11-01 13:53:15 servvs has joined
335 2012-11-01 13:54:01 Joric has joined
336 2012-11-01 13:57:08 deadserious has joined
337 2012-11-01 13:57:31 deadserious is now known as Guest46051
338 2012-11-01 13:59:12 denisx_ has joined
339 2012-11-01 14:02:28 denisx has quit (Ping timeout: 246 seconds)
340 2012-11-01 14:02:28 denisx_ is now known as denisx
341 2012-11-01 14:04:13 Joric has quit (Read error: No route to host)
342 2012-11-01 14:08:32 egecko_ has quit (Ping timeout: 276 seconds)
343 2012-11-01 14:15:31 Guest46051 has quit (Remote host closed the connection)
344 2012-11-01 14:25:29 DutchBrat has joined
345 2012-11-01 14:28:17 DutchBrat_ has quit (Ping timeout: 245 seconds)
346 2012-11-01 14:28:25 Joric has joined
347 2012-11-01 14:33:01 freakazoid has joined
348 2012-11-01 14:39:48 [Tycho] has joined
349 2012-11-01 14:43:29 freakazoid has quit (Ping timeout: 240 seconds)
350 2012-11-01 14:44:47 daybyter has quit (Quit: Konversation terminated!)
351 2012-11-01 14:46:06 servvs has quit (Read error: Operation timed out)
352 2012-11-01 14:52:30 optimator has joined
353 2012-11-01 14:52:30 optimator has quit (Changing host)
354 2012-11-01 14:52:30 optimator has joined
355 2012-11-01 14:53:08 optimator_ has quit (Ping timeout: 240 seconds)
356 2012-11-01 14:53:13 Arnavion has quit (Remote host closed the connection)
357 2012-11-01 14:56:41 optimator_ has joined
358 2012-11-01 14:56:51 optimator has quit (Ping timeout: 255 seconds)
359 2012-11-01 14:59:29 <jeremias> I have a another bitocin installation, which I trust. I want to copy the block chain to other place. Which files should I copy?
360 2012-11-01 14:59:54 <jeremias> Or does it speed up the process? What is the bottleneck?
361 2012-11-01 15:00:18 optimator has joined
362 2012-11-01 15:00:18 optimator has quit (Changing host)
363 2012-11-01 15:00:19 optimator has joined
364 2012-11-01 15:00:48 optimator_ has quit (Ping timeout: 240 seconds)
365 2012-11-01 15:01:02 <sipa> jeremias: run the trusted instance with -detachdb, shut it down cleanly, and copy blkindex.dat and blk0000?.dat over
366 2012-11-01 15:01:05 <rdponticelli> jeremias: which version?
367 2012-11-01 15:01:25 <sipa> af of 0.8, it will be the blocks/, blktree/ and coins/ directories
368 2012-11-01 15:01:52 <jeremias> 0.7.1
369 2012-11-01 15:02:29 <jeremias> thanks
370 2012-11-01 15:02:50 <sipa> but please make sure you actually trust the other place (i.e., you control it yourself)
371 2012-11-01 15:03:57 <jeremias> yes, it is my other server and I'm setupping bitcoind to other
372 2012-11-01 15:04:17 <jeremias> however, has there been cases where this kind of situation has been used to hack?
373 2012-11-01 15:04:26 <jeremias> eg. someone providing fake block chain
374 2012-11-01 15:04:43 <rdponticelli> Even if you control it yourself, your node could have been theoretically isolated...
375 2012-11-01 15:04:55 <rdponticelli> But chances are pretty low
376 2012-11-01 15:05:08 <gmaxwell> rdponticelli: isolated isn't a problem
377 2012-11-01 15:05:18 <gmaxwell> rdponticelli: so long as the new node isn't.
378 2012-11-01 15:05:36 <rdponticelli> gmaxwell: It isn't?
379 2012-11-01 15:05:53 <gmaxwell> rdponticelli: No of course not.
380 2012-11-01 15:06:00 <rdponticelli> Ok, yeah...
381 2012-11-01 15:06:15 <rdponticelli> The new node would eventually find out the longer chain
382 2012-11-01 15:06:17 denisx_ has joined
383 2012-11-01 15:06:58 denisx has quit (Read error: Connection reset by peer)
384 2012-11-01 15:06:58 denisx_ is now known as denisx
385 2012-11-01 15:07:00 <gmaxwell> jeremias: people have had incorrect chains, but it's hard to tell if it was random corruption (most likely) or malicious without doing extensive research which no one has botered doing, esp since a latent attack is indistinguishable from corruption.
386 2012-11-01 15:10:32 ThomasV has quit (Ping timeout: 256 seconds)
387 2012-11-01 15:10:58 <jeremias> hmm, is -detachdb supposed to take like ages?
388 2012-11-01 15:11:45 egecko has joined
389 2012-11-01 15:13:16 ThomasV has joined
390 2012-11-01 15:13:53 <rdponticelli> jeremias: -detachdb will start the node normally, it will make the detaching when you close it
391 2012-11-01 15:14:41 <jeremias> all right
392 2012-11-01 15:19:58 CodesInChaos has joined
393 2012-11-01 15:23:54 Arnavion has joined
394 2012-11-01 15:24:01 emryss has quit (Ping timeout: 246 seconds)
395 2012-11-01 15:24:36 Joric has quit (Ping timeout: 244 seconds)
396 2012-11-01 15:25:17 Joric has joined
397 2012-11-01 15:25:17 Joric has quit (Changing host)
398 2012-11-01 15:25:17 Joric has joined
399 2012-11-01 15:28:40 servvs has joined
400 2012-11-01 15:29:39 Joric has quit (Ping timeout: 252 seconds)
401 2012-11-01 15:30:16 <TD> jeremias: detaching bdb on shutdown can be slow yes
402 2012-11-01 15:33:04 PiZZaMaN2K has quit (Quit: Linkinus - http://linkinus.com)
403 2012-11-01 15:43:04 <TD> gavinandresen: good morning
404 2012-11-01 15:44:14 <gavinandresen> liar, it's not morning where you are, is it?
405 2012-11-01 15:44:26 <gavinandresen> I mean, "good morning!"
406 2012-11-01 15:45:53 RainbowDashh has joined
407 2012-11-01 15:46:07 <TD> it's afternoon indeed
408 2012-11-01 15:46:17 <TD> all of BlueMatts full verification work is now merged into bitcoinj
409 2012-11-01 15:46:33 <TD> so i think bcj has joined the ranks of fully verifying implementations! \o/
410 2012-11-01 15:48:59 RainbowDashh has quit (Client Quit)
411 2012-11-01 15:49:09 Z0rZ0rZ0r has joined
412 2012-11-01 15:49:43 <gavinandresen> Nice!
413 2012-11-01 15:50:37 <gavinandresen> Anybody running a "dual stack" verifier yet to make sure they always agree on longest chain?
414 2012-11-01 15:50:47 <TD> matt is, i think. but more than one would be good
415 2012-11-01 15:51:08 <gavinandresen> running on testnet would probably be very good, testnet gets a lot of weirdness that main net doesn't.
416 2012-11-01 15:51:13 <TD> right
417 2012-11-01 15:53:08 <TD> gavinandresen: atm you are working on json apis for multi-sig txns?
418 2012-11-01 15:54:02 <gavinandresen> right this very moment I'm working on a batch email to all foundation members to announce member-only Foundation forums....
419 2012-11-01 15:54:46 <gavinandresen> But working out what needs to be done for multi-sig txn coordination is at the top of my TODO
420 2012-11-01 15:55:46 <TD> cool
421 2012-11-01 15:56:14 ThomasV has quit (Ping timeout: 248 seconds)
422 2012-11-01 15:56:34 <gavinandresen> TD: were you part of the discussion a few days ago about messaging infrastructure for coordinating txn signing ?
423 2012-11-01 15:57:26 <TD> probably. i was the one suggesting usage of smartphone cloud messaging
424 2012-11-01 15:57:27 <helo> will the foundation forums be for foundation-specific discussions only, or will they include general, development, trading, and other sections?
425 2012-11-01 15:57:33 <TD> (for having phones be second factors)
426 2012-11-01 15:58:27 <gavinandresen> TD: right.... thanks for those pointers. Those APIs only guarantee sending the last message to the phone from any particular service, so they don't solve the whole problem.
427 2012-11-01 15:59:56 <helo> do we want to support offline-only auth factors?
428 2012-11-01 16:00:48 <gavinandresen> helo: foundation forums will be for whatever foundation members want to discuss...
429 2012-11-01 16:01:08 <gavinandresen> helo: offline-only auth factors??
430 2012-11-01 16:01:12 <TD> really? i thought GCM would deliver all messages, it just does not guarantee ordering
431 2012-11-01 16:01:13 <gavinandresen> helo: how would that work?
432 2012-11-01 16:01:25 <TD> it's designed to be used for things like IM apps so not delivering all messages would be â¦.. suboptimal :)
433 2012-11-01 16:01:28 <TD> there is a collapse key system
434 2012-11-01 16:01:51 <gavinandresen> TD: I could be misremembering, it might have been Apple's system that only guaranteed delivery of the last message.
435 2012-11-01 16:01:54 <TD> ah, yes
436 2012-11-01 16:01:56 <TD> Apples system sucks
437 2012-11-01 16:02:11 <TD> but then again, they also have a habit of randomly banning bitcoin-related apps. so I basically assume iPhones don't exist.
438 2012-11-01 16:02:36 <helo> gavinandresen: qr-code, sound, NFC, other non-IP-based data transmission
439 2012-11-01 16:03:03 <TD> helo: that isn't a second factor. it's data that has to be loaded into the first factor.
440 2012-11-01 16:03:20 <TD> helo: the point of 2-factor auth is that multiple devices work together independently to sign. that way, if one is compromised, the wallet can't be stolen.
441 2012-11-01 16:03:24 <sipa> the message can be "last message received at timestamp" and then have a callback to the server for "read messages between tinestamp X and Y"
442 2012-11-01 16:03:26 <TD> (the devices double check each others requests)
443 2012-11-01 16:03:41 <sipa> then you only need the last message to be delivered to the mobile
444 2012-11-01 16:03:42 <gavinandresen> helo: oh... ummm, sure, I suppose, the protocol won't care HOW the signature gets generated, if it sent to an app on a phone or there's some complicated QR-code exchange that only geeks will use....
445 2012-11-01 16:03:45 <TD> sipa: APNS is really limited. the message has to be delivered to a human. iOS is a waste of time
446 2012-11-01 16:04:12 <helo> NFC is probably the only actually viable one...
447 2012-11-01 16:04:14 <TD> sipa: the messages aren't actually delivered to the apps, iirc. only the OS handles them, by popping an on-screen message, playing a sound or putting a badge onto the app icon
448 2012-11-01 16:04:24 <sipa> oh
449 2012-11-01 16:04:28 <sipa> really?
450 2012-11-01 16:04:31 <TD> on android it works as you'd expect
451 2012-11-01 16:04:40 <sipa> how does mail push work then?
452 2012-11-01 16:04:52 <sipa> it needs to trigger a call to the mail app
453 2012-11-01 16:05:02 maaku has joined
454 2012-11-01 16:05:43 <sipa> or does that get special treatment?
455 2012-11-01 16:05:48 <TD> http://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/ApplePushService/ApplePushService.html
456 2012-11-01 16:05:53 <TD> apple doesn't have mail push
457 2012-11-01 16:05:57 PiZZaMaN2K has joined
458 2012-11-01 16:06:02 <TD> this is why the google login service processes about a bajillion logins per second
459 2012-11-01 16:06:23 <TD> iOS is really a wasteland of opportunity, it's sad really.
460 2012-11-01 16:07:11 <TD> anyway, the android equivalent is powerful enough you can actually make a "peer to peer" network of apps that send each other messages, all routed via the GCM network
461 2012-11-01 16:07:54 <TD> sipa: more specifically, you can do mail push on iOS using ActiveSync, or something like that. it's weird.
462 2012-11-01 16:08:53 <BlueMatt> TD: without the "upgrade to lang3" commit, IIRC there is no dep on commons in pom.xml
463 2012-11-01 16:09:08 <TD> BlueMatt: yeah but i replaced the code that was using apache commons
464 2012-11-01 16:09:15 <BlueMatt> ah, ok
465 2012-11-01 16:09:20 <TD> BlueMatt: thanks again.
466 2012-11-01 16:09:27 <BlueMatt> sorry, just started reading the comments
467 2012-11-01 16:09:29 <TD> BlueMatt: given the huge amount of code involved it was a very easy set of merges
468 2012-11-01 16:09:44 <gavinandresen> TD: it wasn't clear to me how push authorization would work with GCM... e.g. how does a user running Bitcoin-Qt tell the GCM network it is OK for messages to go to the app running on their phone
469 2012-11-01 16:09:47 <TD> one or two i noticed you addressed in later commits (i was reading through and merging them in order)
470 2012-11-01 16:10:06 <BlueMatt> TD: (which is largely a testament to how cleanly structured bitcoinj is)
471 2012-11-01 16:10:25 <gavinandresen> TD: (it is clear if there is a central server acting as an intermediary, which is probably how it would have to work)
472 2012-11-01 16:10:41 <TD> gavinandresen: the app on the phone gets given a code. anything that has that code can send. so you still need to "rendezvous" with the phone somehow. if i was writing it i'd use wifi service discovery aka bonjour, as it's multi-platform, fairly well supported and from a users POV is simple - just make sure the devices are on the same LAN
473 2012-11-01 16:10:46 <TD> s/LAN/wifi network/
474 2012-11-01 16:10:59 <TD> gavinandresen: alternatively the code may even be typable, i don't know, never looked.
475 2012-11-01 16:12:31 <gavinandresen> TD: cool. My current plan is to do some prototyping using the raw transactions API, and then later take what I learn and maybe bake it into Bitcoin-Qt
476 2012-11-01 16:13:55 <TD> yeah. so for bitcoin-qt you could as well just have users directly type in the IP addresses of the other peers they want to connect to. you can then provide a label/button that copy/pastes some HTML containing another magic URL, so users can just copy/paste something into an email. the other side clicks it, now they are set up to do multi-sig transactions with each other
477 2012-11-01 16:14:06 <TD> s/email/email or chat/
478 2012-11-01 16:14:31 <TD> the downside is obv that if your IP address isn't stable you have to do it each time you want to sign.
479 2012-11-01 16:14:48 Joric has joined
480 2012-11-01 16:14:50 <TD> this is assuming you are aiming for the "multiple independent people controlling the same funds" use case
481 2012-11-01 16:15:07 <gavinandresen> TD: mmm. I was thinking that everybody involved would rendezvous with the same STOMP server that would relay messages for them.
482 2012-11-01 16:15:36 <helo> none of this would preclude users from using other messaging systems, like email, right?
483 2012-11-01 16:16:08 <helo> i.e. simple text payloads for copy/paste
484 2012-11-01 16:16:31 <sipa> i don't hardxoding the transport sysyem now... as a first step define a protocol to negotiate multisigs, perhaps with a no-trust coordinarion server first
485 2012-11-01 16:16:58 <TD> the downside of random third party servers is the loss of privacy that results - the server now knows which computers control what funds. it could be a Tor hidden service, i guess. i wonder how hard it is to link in a "libtor" and use it behind the scenes, or something.
486 2012-11-01 16:17:07 <TD> alternatively, satoshi did implement a pubsub system into the core network, didn't he
487 2012-11-01 16:17:12 <TD> i guess we removed it
488 2012-11-01 16:17:27 <sipa> yes, it was unfinished and removed
489 2012-11-01 16:17:28 <gavinandresen> TD: he half-implemented it...
490 2012-11-01 16:17:45 <gavinandresen> ... and didn't leave any comments about how he was going to solve potential spam/DoS problems
491 2012-11-01 16:18:11 maaku has quit (Quit: maaku)
492 2012-11-01 16:18:53 <TD> one thing i wondered is if addr messages could contain pubkeys in future. it would have some advantages, like being able to use malicious wifi to connect to the network, if you have a list of nodes obtained from a trusted connection/seed list. it would also help solve the rendezvous problem, assuming you can get a public IP via UPNP
493 2012-11-01 16:18:54 <gavinandresen> sipa: RE: starting with defining a protocol: I like learning by doing, so I'd like to write code tied to a particular transport system along with the protocol spec.
494 2012-11-01 16:19:14 <gavinandresen> sipa: I trust myself enough to make it trivially generalizable to other transport systems....
495 2012-11-01 16:19:24 <TD> then a user could say "here's my nodes address <abcdefgh>" and your own node could find it by checking for a pubkey hash in the addr broadcasts
496 2012-11-01 16:20:18 <sipa> TD: gmaxwell and i have been talking about that
497 2012-11-01 16:20:27 <sipa> it would have large advantages
498 2012-11-01 16:20:54 <gavinandresen> what problem does that solve?
499 2012-11-01 16:20:59 <TD> see above
500 2012-11-01 16:21:00 pigeons has joined
501 2012-11-01 16:21:15 <TD> 1) allows users to more easily rendezvous without needing a third party server
502 2012-11-01 16:21:28 da2ce7 has joined
503 2012-11-01 16:21:34 <gavinandresen> ... if they're online at the same time....
504 2012-11-01 16:21:39 <sipa> you could have the addr uodate messages be signed by the host key, so others cannot maliciousky make the network think you still exist, or claim you have services yiu don't
505 2012-11-01 16:21:42 <TD> 2) allows you to use malicious internet connections to get onto the network, making zero-confirmed transactions more useful for SPV clients in this use case (no sybil)
506 2012-11-01 16:21:49 <jgarzik> sipa: yah, ditto rdponticelli. Let me know if you need test data or whatnot.
507 2012-11-01 16:21:59 <jgarzik> sipa: ultraprune is definitely resending 100% of my wallet transactions
508 2012-11-01 16:22:06 <jgarzik> sipa: and they are old, long confirmed
509 2012-11-01 16:22:10 <sipa> jgarzik: found the problem allready; pull req comig up tonight
510 2012-11-01 16:22:21 <jgarzik> great
511 2012-11-01 16:22:29 <sipa> thanks for noticing :)
512 2012-11-01 16:22:35 <TD> gavinandresen: yes, if they're online at the same time. the user would need to actively confirm the transaction they want to take place anyway, right?
513 2012-11-01 16:22:44 <jgarzik> sipa: It's not testing, until it's real money testing :)
514 2012-11-01 16:22:56 <jgarzik> sipa: I'm testing with my real, live bitcoin wallet under ultraprune
515 2012-11-01 16:23:02 <sipa> gavinandresen: i sent a mail about some attavks some time ago, which also suggested host keys
516 2012-11-01 16:23:05 <TD> gavinandresen: if you want to allow participants to ack asynchronously then you need somewhere to act as a store/forward. the network could do that, with some bounds of course. making the system centralized doesn't magically solve DoS after all
517 2012-11-01 16:23:47 <gavinandresen> TD: I think the common case will be asynchronous transaction confirmation.
518 2012-11-01 16:24:12 <TD> what use cases do you have in mind as first base? multiple people controlling an organizations funds (like the foundation) ?
519 2012-11-01 16:24:24 da2ce7_d has quit (Ping timeout: 276 seconds)
520 2012-11-01 16:24:31 <gavinandresen> TD: e.g. Lindsay has to pay a big Foundation bill, so she creates and signs a transaction and then forwards it to the board members who can finalize the payment...
521 2012-11-01 16:24:54 <TD> bear in mind, without identity, it's not safe to ACK a transaction you just received randomly without any prior knowledge. Lindsay has to tell you she's going to pay the bill, and tell you what address and the amount she's going to pay
522 2012-11-01 16:25:06 <TD> if she's telling you that, it's probably via email or some other communication system that lets you attach files.
523 2012-11-01 16:25:16 <sipa> imho, you want somethig e-mail like for that, where everyone has some server acting as a messagebox for the user
524 2012-11-01 16:25:34 <gavinandresen> TD: sure, but we've been training users not to open email attachments for years. And email is insecure....
525 2012-11-01 16:25:35 <sipa> you can run your own, or use a third party
526 2012-11-01 16:25:39 <TD> email is not insecure
527 2012-11-01 16:25:45 <TD> (any more)
528 2012-11-01 16:26:05 <TD> eg, if you send a message from gmail to hotmail, it's encrypted from you to gmail, from gmail to hotmail (SMTP-TLS) and from hotmail back down to the user
529 2012-11-01 16:26:17 <TD> also, the message itself will be signed on your behalf by the service providers using DKIM
530 2012-11-01 16:26:32 <TD> so the only way to break this is to compromise either your computer, or the email providers, or SSL.
531 2012-11-01 16:26:57 <TD> anyway, for the foundation, maybe you're using some web forum software that is SSLd for all users.
532 2012-11-01 16:28:45 <gavinandresen> TD: re: identity: I agree that is a huge piece of the puzzle. If I receive a payment request, I need to make sure it is going to the person/organization that I expect and not Joe Random Hacker
533 2012-11-01 16:29:36 <gavinandresen> That is a different piece from the "how are payment requests stored and forwarded", though.
534 2012-11-01 16:30:04 <gavinandresen> (and I still think email attachments are the wrong way to go, I don't want to get them in the context of an email, I want them to pop up in whatever Bitcoin client I'm using)
535 2012-11-01 16:30:04 maaku has joined
536 2012-11-01 16:31:07 <TD> well, then you're going to end up reinventing a lot of wheels. email is old but it's a remarkably good store and forward mechanism. everyone has one, they check their inboxes regularly, and the email system does *not* lose mail because the specs are so thorough about MTAs checkpointing to disk and trying redelivery in case of failure
537 2012-11-01 16:31:26 <sipa> gavinandresen: sure, doesn't orevent you from using an architecture that uses message boxes to deal with the problem of offline clients
538 2012-11-01 16:31:37 <TD> and of course, if somebody doesn't want to use email, nothing stops them getting the files to you some other way.
539 2012-11-01 16:31:49 JZavala has joined
540 2012-11-01 16:32:04 Joric has quit ()
541 2012-11-01 16:32:06 <TD> for example, a separate program implementing a separate P2P network that moves payment requests around via some as-yet-undetermined mechanism and then sends them to bitcoin-qt via an RPC
542 2012-11-01 16:32:08 <gavinandresen> Right, using a separate 'gavin+btc@gmail.com' mailbox for bitcoin messaging might be the right way to go.
543 2012-11-01 16:32:49 <gavinandresen> ... as long as I don't have to copy and paste anything or click on attachments.
544 2012-11-01 16:33:20 <Luke-Jr> TD: sorry, I disagree email doesn't lose mail. Absurdly aggressive "spam filters" are common.
545 2012-11-01 16:33:21 <TD> if you start by defining some files and file-based protocols that do require using attachments (in email or forums or share dropbox folders or whatever) then you can always layer on some other mechanism later
546 2012-11-01 16:33:59 <TD> Luke-Jr: spam filters don't lose mail, ever (unless they are amateur and buggy). either they store the mail and give it to you in some kind of spam folder, or they bounce it, in which case the sender will get a bounce message and know the message didn't get through
547 2012-11-01 16:34:08 <TD> spam filters that silently eat mail don't exist at any competent mail provider
548 2012-11-01 16:34:20 <TD> now, you might not SEE the mail, if you don't check your spamfolder
549 2012-11-01 16:34:21 <Luke-Jr> TD: call them amateur or buggy or whatever you want, those exist :P
550 2012-11-01 16:34:23 <TD> but that's different
551 2012-11-01 16:34:48 <TD> alright. in the universe of mail systems that follow the RFCs and are run by people who know what they're doing, mail does not get silently eaten. and any other system you come up with can suffer buggy/bad implementations
552 2012-11-01 16:34:49 maaku has quit (Client Quit)
553 2012-11-01 16:35:03 <Luke-Jr> TD: also, getting a bit off-topic, wizkid057 seems to be having lost email issues with Gmail :P
554 2012-11-01 16:35:12 <TD> i haven't heard about that
555 2012-11-01 16:35:26 <TD> who is wizkid057? if he has actual evidence of lost messages i can investigate that.
556 2012-11-01 16:36:07 <TD> anyway, gavinandresen - i don't personally share your aversion to email attachments. so if you start with moving the messages around with files, at least i can start using it right away, whilst you go ahead and come up with some alternative scheme
557 2012-11-01 16:36:11 <TD> we both win :)
558 2012-11-01 16:37:07 <gavinandresen> TD: ok. You won't like the file format I'm going to choose,though....
559 2012-11-01 16:37:15 * Luke-Jr wonders how a Bitcoin client would get at the email box
560 2012-11-01 16:37:17 <TD> i assume you're going to encode binary data as text
561 2012-11-01 16:37:22 <gavinandresen> yeah, JSON
562 2012-11-01 16:37:26 <TD> why?
563 2012-11-01 16:37:38 <gavinandresen> everything speaks JSON these days
564 2012-11-01 16:37:52 <TD> software that isn't written yet can speak whatever it wants
565 2012-11-01 16:38:03 <gavinandresen> minimal dependencies, and efficiency doesn't matter so there's no real reason to go for a binary encoding
566 2012-11-01 16:38:27 <TD> minimal dependencies for you - not for me. bitcoinj, for instance, does not depend on a json parser today :)
567 2012-11-01 16:38:43 <TD> protobufs aren't just about efficiency, btw. there are many other advantages. like an actual schema language.
568 2012-11-01 16:38:56 <TD> also, it generates all the wrapper code for you, so there's no ugly code to deal with JSONObjects
569 2012-11-01 16:39:02 <TD> you just write code like:
570 2012-11-01 16:39:03 <Luke-Jr> protobufs are more work than JSONâ¦
571 2012-11-01 16:39:07 <TD> PaymentRequestMessage req;
572 2012-11-01 16:39:14 <TD> req.set_output_script(script_bytes);
573 2012-11-01 16:39:20 <TD> req.set_some_bool(true);
574 2012-11-01 16:39:22 <jgarzik> TD: that's overselling, a bit :) You still have plenty of validation to do, under protobufs
575 2012-11-01 16:39:30 <jgarzik> I know; I wrote lots of code for both.
576 2012-11-01 16:39:51 <TD> it takes care of type checking and parsing into actual language-specific data structures for you, which you have to do by hand for JSON
577 2012-11-01 16:40:23 <gavinandresen> In my experience, simple text encodings win standards wars.
578 2012-11-01 16:40:34 <jgarzik> protobufs does low-level type checking. JSON libs do low level type checking. protobufs supports more types, so it does a bit more.
579 2012-11-01 16:40:42 <jgarzik> in BOTH cases, you still must validate the contents of each field.
580 2012-11-01 16:40:42 <TD> well, except for TCP, IP, JPEG, PNG, etc :)
581 2012-11-01 16:40:59 <Luke-Jr> gavinandresen: I hope there's no standards war here :/
582 2012-11-01 16:41:30 <TD> jgarzik: specifically you can encode binary data with protobufs, and you get them back out of the generated objects as an array of bytes.
583 2012-11-01 16:41:30 <jgarzik> so the perspective of the typical program, for JSON or protobufs, remains: (1) lib reads raw data into structured form, (2) program verifies data inside structured form
584 2012-11-01 16:41:51 <TD> JSON requires you to encode binary in some basically random format, there's no real standardization over it either. so that's even more work
585 2012-11-01 16:42:06 <jgarzik> a little bit more work, yes
586 2012-11-01 16:42:29 <TD> jgarzik: no, with JSON, you read a bunch of generic JSON objects. then you have to check all the data you expect exists. protobufs does that for you. then you have to do type conversions for anything that isn't actually a string.
587 2012-11-01 16:42:40 <TD> jgarzik: then you insert the data into some language specific structure
588 2012-11-01 16:42:43 <TD> which you also have to write by hand
589 2012-11-01 16:43:02 <jgarzik> yes (in both cases)
590 2012-11-01 16:43:07 <TD> basically, when i look at JSON, i see a format with no advantages over anything. text isn't a help when the data you're serializing is actually binary.
591 2012-11-01 16:43:08 * Luke-Jr notes Bitcoin already has a standard binary serialization protocol
592 2012-11-01 16:43:44 <jgarzik> It is certainly true that bitcoin text formats are really TWO formats... JSON, then binary bitcoin
593 2012-11-01 16:43:55 <jgarzik> protobufs would be... protobufs + binary bitcoin
594 2012-11-01 16:44:15 <jgarzik> because generally you are transiting a bitcoin structure under all this
595 2012-11-01 16:44:20 <TD> also, JSON can't represent ints, iirc?
596 2012-11-01 16:44:54 <wumpus> of course it can, you just interpret numbers without a point as ints
597 2012-11-01 16:45:07 <wumpus> that's the JS way isn't it *ducks*
598 2012-11-01 16:45:14 <sipa> haha
599 2012-11-01 16:45:25 <TD> great
600 2012-11-01 16:45:49 <TD> also, the only schema language it has actually represents the schema as JSON itself, making the schemas almost unreadable
601 2012-11-01 16:45:56 agricocb has quit (Remote host closed the connection)
602 2012-11-01 16:46:07 <wumpus> just like we're now handling the json floats basically as 'decimal'
603 2012-11-01 16:46:24 <jeremias> how resource-insentive operation is sweeping private key?
604 2012-11-01 16:46:37 agricocb has joined
605 2012-11-01 16:46:40 <sipa> jeremias: right now: rescan entire history
606 2012-11-01 16:46:50 <wumpus> hey, it's just text, you can interpret it any way you want :-)
607 2012-11-01 16:46:55 <sipa> later maybe with an address-to-txid index, relatively fast
608 2012-11-01 16:46:56 <jeremias> seems to take ages to import one key
609 2012-11-01 16:46:56 <gmaxwell> ugh.
610 2012-11-01 16:47:47 <Luke-Jr> perhaps before arguing over the transport format, it would make sense to figure out what fields and data are needed exactly? :P
611 2012-11-01 16:47:50 <gmaxwell> I'd be strongly opposed to JSON _and_ protobuts for anything where normative behavior is required. (e.g. as a serialization for transactions in the blockchain, were we designing bitcoin from scratch.).. but since it's not required here, whatever people want to implement is probably fine.
612 2012-11-01 16:47:56 <gavinandresen> TD: I knew you wouldn't like it.... not sure if there is any point to arguing,though. I don't really care about protocol buffers versus JSON, except that using protocol buffers means pulling in another dependency for bitcoind/Bitcoin-Qt and pretty much any other project besides yours
613 2012-11-01 16:48:06 Davincij15 has joined
614 2012-11-01 16:48:29 <wumpus> does protobuf require another dependency? or is the generated code self-sufficent?
615 2012-11-01 16:48:42 <sipa> wumpus: generated code is enough
616 2012-11-01 16:48:58 <sipa> though you want to keep the ability to update the format with new optional fields
617 2012-11-01 16:49:03 <TD> depends on the language. for java there's a lib, but you just add it in maven and you're done. java has a kind of apt-get/gitian cross thing
618 2012-11-01 16:49:26 <BlueMatt> TD: merges look good to me, nice work
619 2012-11-01 16:49:35 <sipa> gmaxwell: well, bitcoin transactions need to be encoded as bitcoin serialized transactions... that can be embedded into something else in any way though
620 2012-11-01 16:50:07 <sipa> any software dealing with bitcoin transaction will need to be able to calculate its hash, and that already implies being able to serialize it anyway
621 2012-11-01 16:50:19 <wumpus> anyway, I'm in favor of any serialization scheme that isn't hand-rolled
622 2012-11-01 16:50:22 <gmaxwell> sipa: sure sure. I just meant for normative usage pulling in a mystery meat encoding system that might change out from under you would be very ill advised (as we've expirenced with the openssl DER stuff!).
623 2012-11-01 16:50:24 bitcoinz has quit (Ping timeout: 276 seconds)
624 2012-11-01 16:50:24 BitcoinBaltar has quit (Ping timeout: 276 seconds)
625 2012-11-01 16:50:35 <TD> protobufs have not changed their binary format for >10 years
626 2012-11-01 16:50:37 <jgarzik> hrm?
627 2012-11-01 16:50:44 <TD> it's basically as stable as TCP, as far as i'm concerned.
628 2012-11-01 16:50:49 <jgarzik> AFAIK, all protobufs require an additional lib
629 2012-11-01 16:50:54 <jgarzik> C, C++, python, perl, ...
630 2012-11-01 16:50:54 <gmaxwell> For non normative stuff people are going to do moronic things but there nothing that can be done about that.
631 2012-11-01 16:51:50 <wumpus> yeah for python/perl it's no big deal to require an additional lib
632 2012-11-01 16:52:01 <wumpus> for c++ it'd be sad
633 2012-11-01 16:52:03 bitcoinz has joined
634 2012-11-01 16:52:07 <gmaxwell> TD: and it's not possible to make varrient encodings which read differently under different implementations? and not possible to make varrients which read the same but have a different serialization?
635 2012-11-01 16:52:13 <Luke-Jr> wumpus: does that include using the serialization Bitcoin itself uses? :P
636 2012-11-01 16:52:21 <TD> https://developers.google.com/protocol-buffers/docs/encoding
637 2012-11-01 16:52:26 <wumpus> Luke-Jr: yes, it does, unfortunately
638 2012-11-01 16:52:32 <wumpus> Luke-Jr: but we cannot change that can we :P
639 2012-11-01 16:52:35 <sipa> gmaxwell: not sure what you mean?
640 2012-11-01 16:52:45 <Luke-Jr> wumpus: I mean, using that same serialization for new stuff like this
641 2012-11-01 16:52:54 <TD> so, no, i don't think it's possible. i never checked in depth though.
642 2012-11-01 16:52:59 <wumpus> Luke-Jr: the block chain protocol is "sacred", but there's no need to use it anywhere outside of that
643 2012-11-01 16:53:19 <Luke-Jr> wumpus: except to avoid more serialization codeâ¦
644 2012-11-01 16:53:41 <wumpus> no
645 2012-11-01 16:53:54 <TD> well, bitcoin serialization achieves its goal of being simple and auditable (mostly), but it fails at almost everything else
646 2012-11-01 16:53:58 <wumpus> imo the block chain serialization code should be isolated and only used for the block chain, because it may never change etc
647 2012-11-01 16:53:59 <TD> in particular it's hard to extend
648 2012-11-01 16:54:05 BitcoinBaltar has joined
649 2012-11-01 16:54:14 daybyter has joined
650 2012-11-01 16:54:14 <TD> i guess even with JSON you can just add new members and properties at will
651 2012-11-01 16:54:15 <wumpus> it should not be extended except when the block chain requires it etc
652 2012-11-01 16:54:30 <gavinandresen> TD: yes, I wish Satoshi had used protobufs for the on-the-wire serialization
653 2012-11-01 16:54:31 <wumpus> it's just a frozen protocol for one purpose
654 2012-11-01 16:55:11 <TD> gmaxwell: field ordering is free in protobufs but the reference implementations all store them in order, so parsing code can be optimized. however you're allowed to re-arrange them if you want.
655 2012-11-01 16:55:15 <wumpus> yes with json you can stuff into it what you want (this can be an disadvantage as well :p)
656 2012-11-01 16:55:17 <gavinandresen> TD: I'm still waiting for somebody to broadcast blocks/transactions across a different p2p network... that'd be great for robustness
657 2012-11-01 16:55:24 <TD> hmm
658 2012-11-01 16:55:25 <TD> interesting idea
659 2012-11-01 16:55:41 <gmaxwell> gavinandresen: done.
660 2012-11-01 16:55:44 <gmaxwell> :P
661 2012-11-01 16:55:51 <gmaxwell> gavinandresen: p2pool now fits that criteria.
662 2012-11-01 16:55:53 <wumpus> what p2p networks support broadcasting?
663 2012-11-01 16:56:03 <gavinandresen> gmaxwell: cool. Did they use protobufs?
664 2012-11-01 16:56:06 <TD> the dependencies issue doesn't bother me a whole lot. it's added once, and you're done. in future there may well be many protocols with complex schemas
665 2012-11-01 16:56:12 <TD> (like the payment protocol)
666 2012-11-01 16:56:18 <gmaxwell> No.
667 2012-11-01 16:56:34 <TD> i think embedding binary data like signatures, certificates, keys, hashes, even images (for logos and things) would be quite common
668 2012-11-01 16:56:40 <sipa> p2pool pretty much uses satoshi-serialization, iirc?
669 2012-11-01 16:57:01 optimator_ has joined
670 2012-11-01 16:57:39 <gmaxwell> TD: so looking at the example C code for protobufs, I see that you'd get multiple encodings possible for anything using strings, if applications use them like the C example code does.
671 2012-11-01 16:57:44 <TD> there is i guess one advantage of JSON over protobufs, which is that protobuf message fields are identified by tag number. so if you want to allow random third parties to add extensions without any kind of co-ordination (no process to reserve number ranges), you need to add something like repeated ExtensionMessage extensions = 10; where ExtensionMessage has string key/bytes value
672 2012-11-01 16:57:54 <gmaxwell> Because Foo, Foo\0, and Foo\0
673 2012-11-01 16:58:19 <gmaxwell> \0 are different messages with unique serializations, but the C example code would treat them identically.
674 2012-11-01 16:58:25 optimator has quit (Ping timeout: 268 seconds)
675 2012-11-01 16:58:32 <TD> i guess that's true. strings are defined to be UTF-8 and there are multiple ways to encode that. OTOH, satoshis format doesn't even define string encodings at all, does it
676 2012-11-01 16:58:47 <gmaxwell> Well I wasn't even talking about UTF-8, but there too.
677 2012-11-01 16:58:54 <wumpus> because we don't want strings in the block chain in the first place :P
678 2012-11-01 16:59:02 <Luke-Jr> TD: huh? UTF-8 *is* an encoding
679 2012-11-01 16:59:04 <TD> strings are used in a few places
680 2012-11-01 16:59:08 <wumpus> you can encode them as a word of 0 bits
681 2012-11-01 16:59:09 <gmaxwell> TD: sure sure, I'm just pointing out that adopting some code base has implications with hidden implicit behavior that you must be careful with.
682 2012-11-01 16:59:17 <TD> Luke-Jr: right but there are multiple ways to encode the same string to different byte sequences
683 2012-11-01 16:59:29 <Luke-Jr> TD: not with UTF-8, no
684 2012-11-01 16:59:33 <jgarzik> IIRC, in protobufs... "bytes" != "string"
685 2012-11-01 16:59:34 <TD> yeah. i'm not sure i'd use protobufs where everyone must arrive at exactly the same byte-for-byte serialization with no leeway allowed.
686 2012-11-01 16:59:37 <jgarzik> we would want "bytes"
687 2012-11-01 16:59:42 <jgarzik> TD: ^^
688 2012-11-01 16:59:42 <wumpus> jgarzik: which is exactly how it should be
689 2012-11-01 17:00:28 <jgarzik> protobufs would define a byte-for-byte field as "required bytes my_field"
690 2012-11-01 17:00:29 <gmaxwell> TD: yea, thats all I'm saying. I don't see anything wrong with it for IPC for other applications where that isn't a consideration.
691 2012-11-01 17:00:33 <TD> Luke-Jr: unfortunately yes. you can encode some characters with one or more code points. the text ends up looking and being semantically the smae
692 2012-11-01 17:00:53 <Luke-Jr> TD: well, those are different characters!
693 2012-11-01 17:00:56 <TD> ah ha :)
694 2012-11-01 17:01:03 <wumpus> yes like the ohm sign
695 2012-11-01 17:01:07 <TD> not to people or IMEs they aren't :)
696 2012-11-01 17:01:12 <wumpus> which is simply an omega
697 2012-11-01 17:01:15 * jgarzik used "bytes" in pagedb's protobufs: https://github.com/jgarzik/pagedb/blob/master/PDcodec.proto
698 2012-11-01 17:01:19 * TD has spent a while investigating a bug triggered by this
699 2012-11-01 17:01:27 tonikt has joined
700 2012-11-01 17:01:56 * jgarzik copied TD's string in a few places for smartcoin (formerly pybond): https://github.com/jgarzik/smartcoin/blob/master/codec.proto
701 2012-11-01 17:02:00 <TD> anyway, whatever. if we go with JSON i'm sure we can find some sane schema languages and compilers for it
702 2012-11-01 17:02:06 BitcoinBaltar has quit (Ping timeout: 276 seconds)
703 2012-11-01 17:02:09 <TD> iirc there are json2protobuf adapters out there also
704 2012-11-01 17:02:19 servvs has quit (Read error: Operation timed out)
705 2012-11-01 17:02:38 <Luke-Jr> btw, one thing to note: protobufs require build-time dependencies for C++, you can't pre-generate the .cpp files and ship those
706 2012-11-01 17:02:50 <wumpus> Luke-Jr: crap
707 2012-11-01 17:02:54 <TD> you can actually. i do this in bitcoinj
708 2012-11-01 17:03:05 <TD> only people who want to edit the schema need the protobuf compiler
709 2012-11-01 17:03:06 <wumpus> then again, spritjson is also a huge beast
710 2012-11-01 17:03:09 <TD> you can just check in the generated code
711 2012-11-01 17:03:11 <Luke-Jr> TD: the .cpp files aren't forward or backward compatible with different versions
712 2012-11-01 17:03:18 BitcoinBaltar has joined
713 2012-11-01 17:03:31 <TD> right, you have to specify the version of the library to depend on.
714 2012-11-01 17:03:39 <TD> that said, new versions aren't very common
715 2012-11-01 17:03:54 <TD> the last release was april 2011
716 2012-11-01 17:04:12 <jgarzik> like autoconf/configure, you may pre-generate my_protobufs.cpp and ship that, or require the protobufs compiler at build time.
717 2012-11-01 17:04:13 <Luke-Jr> that's < 2 years ago :P
718 2012-11-01 17:04:20 <jgarzik> regardless, the protobufs lib is required for all cases.
719 2012-11-01 17:04:23 <jgarzik> you cannot skip a new dep.
720 2012-11-01 17:04:42 <gavinandresen> Lots of people here right now... would this be a good time/day of the week to have regular, scheduled developer chats ?
721 2012-11-01 17:04:43 <Luke-Jr> jgarzik: except if you pre-generate my_protobufs.cpp, it won't work if someone has a different version of protobuf installed
722 2012-11-01 17:04:57 <TD> actually there's a new version coming up, haha :) http://protobuf.googlecode.com/svn/trunk/CHANGES.txt
723 2012-11-01 17:05:02 <jgarzik> Luke-Jr: mostly true
724 2012-11-01 17:05:10 <wumpus> if it's not too bug you could embed it into the git repo, I mean that would aid stability as well...
725 2012-11-01 17:05:12 <jgarzik> Luke-Jr: but as TD indicates, the protobufs libs do not change much anymore
726 2012-11-01 17:05:17 <Luke-Jr> gavinandresen: can't hurt to try it
727 2012-11-01 17:05:19 <wumpus> gavinandresen: fine with me
728 2012-11-01 17:05:40 <TD> * Comments in proto files are now collected and put into generated code as
729 2012-11-01 17:05:40 <TD> comments for corresponding classes and data members.
730 2012-11-01 17:05:41 <TD> nice
731 2012-11-01 17:05:44 <TD> looking forward to that one
732 2012-11-01 17:06:47 <jgarzik> TD: the only major annoyance I found with protobufs is an annoyingly odd way to add objects to a "repeated" (a list/array).... you request a new child object from the parent object, then fill that in
733 2012-11-01 17:06:54 <jgarzik> rather than normal create-and-add pattern
734 2012-11-01 17:08:02 <sipa> jgarzik: efficiency++ !
735 2012-11-01 17:08:15 <TD> jgarzik: see the first item in the C++ section here: http://protobuf.googlecode.com/svn/trunk/CHANGES.txt
736 2012-11-01 17:08:15 <wumpus> well inplace writing is quite common for serialization formats
737 2012-11-01 17:08:31 <TD> jgarzik: apparently the next version provides an API that lets you give messages stuff to take ownership of
738 2012-11-01 17:08:44 <TD> that said, i never found the request-and-modify pattern particularly an issue
739 2012-11-01 17:09:28 <jgarzik> TD: it is useful to store/generate child messages separately from parent creation
740 2012-11-01 17:09:40 <jgarzik> it leads to a lot of boring copying
741 2012-11-01 17:10:14 <jgarzik> message RootEnt {
742 2012-11-01 17:10:15 <jgarzik> required bytes key = 1;
743 2012-11-01 17:10:15 <jgarzik> required uint64 file_id = 2;
744 2012-11-01 17:10:15 <jgarzik> }
745 2012-11-01 17:10:15 <jgarzik> message RootIdx {
746 2012-11-01 17:10:15 <jgarzik> repeated RootEnt entries = 1;
747 2012-11-01 17:10:17 <jgarzik> }
748 2012-11-01 17:10:56 <jgarzik> TD: in pagedb, the lifetime of "RootEnt" is very long -- entire program runtime. RootIdx's lifetime is very short: the length of a file open-write-close.
749 2012-11-01 17:11:19 <TD> oh, i see
750 2012-11-01 17:11:33 <jgarzik> TD: with such a lifetime mismatch, protobufs dictates (until 2.5.0?), request-and-modify requires copying all those RootEnt we already store.
751 2012-11-01 17:11:37 <TD> i'm not sure the new API would help you then, as the new API takes ownership
752 2012-11-01 17:12:15 maaku has joined
753 2012-11-01 17:12:43 * jgarzik should look into the API... surely there is a CopyMessage helper that would at least eliminate the burden of field-by-field copying
754 2012-11-01 17:13:26 <TD> oh
755 2012-11-01 17:13:29 <TD> you can do something like this
756 2012-11-01 17:13:41 <TD> RootEnt *entry = idx.add_entry();
757 2012-11-01 17:13:49 <TD> entry->CopyFrom(some_ent);
758 2012-11-01 17:13:56 <jgarzik> had the same issue with smartcoin (aka pybond), with message Address: https://github.com/jgarzik/smartcoin/blob/master/codec.proto
759 2012-11-01 17:13:59 <TD> or entry->MergeFrom
760 2012-11-01 17:14:04 <jgarzik> Address is long-lived, but Addresses is very short term
761 2012-11-01 17:14:19 <jgarzik> TD: yep, something like that would help
762 2012-11-01 17:15:17 <jgarzik> TD: You can probably see some of your own code in that link :) smartcoin uses protobufs for all message encoding, including the "bond for sale" stuff, based on your distributed bonds post
763 2012-11-01 17:15:38 <TD> https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.message#Message.CopyFrom.details
764 2012-11-01 17:15:43 <TD> yes, i saw that :)
765 2012-11-01 17:15:52 <TD> complete with bug fixes to my schema....
766 2012-11-01 17:16:31 <jgarzik> TD: yeah you should update your post ;p
767 2012-11-01 17:16:40 <TD> i want to move it to the wiki
768 2012-11-01 17:16:45 <sipa> jgarzik: please test #1971
769 2012-11-01 17:16:47 <TD> oh yeah. one final advantage for protobufs over json
770 2012-11-01 17:16:48 <gmaxwell> gavinandresen: basically p2pool now does the latency-reductions for block transmitting we talked about when people were worrying about block propagation delays. Nodes also pretransmit the txn they are mining. It does this so that p2pool _shares_ can also include the hash tree, so that shares don't take less bandwidth than blocks. The idea being that p2pool was previously giving too much reward to overly slow miners that were causing orphan bl
771 2012-11-01 17:17:20 <TD> if you read a protobuf and it contains unknown fields (like, data from a future version), and then write it out again, the system automatically keeps the unknown data and ensures it gets written out too
772 2012-11-01 17:17:27 <TD> so you don't need to do any code to prevent downgrade bugs
773 2012-11-01 17:17:48 <jgarzik> sipa: will do
774 2012-11-01 17:18:04 <sipa> TD: no need to convince me about the advantages of protobuf, but i'm not convinced this is one: in json you typically don't touch things you don't know either
775 2012-11-01 17:18:04 <jgarzik> sipa: immediate nit: your commit message should have included the discussion included in the pull req
776 2012-11-01 17:18:09 <TD> because you're going to convert JSON data into some custom hand written class, you'd have to do that by hand with JSON (or just accept that load/save sequences will destroy data, no good for a relay protocol)
777 2012-11-01 17:18:16 <sipa> jgarzik: ok
778 2012-11-01 17:18:17 <jgarzik> sipa: github will pull that from the commit message into the pull req automatically
779 2012-11-01 17:18:25 <jgarzik> (in the future)
780 2012-11-01 17:19:31 <sipa> jgarzik: no, once the pull req is sent, its description will not be changed anymore
781 2012-11-01 17:19:38 <sipa> unless you do so manually
782 2012-11-01 17:19:41 <sipa> fixed, by the way
783 2012-11-01 17:20:26 <jgarzik> sipa: yes, hence "in the future" addendum ;p
784 2012-11-01 17:20:31 <jgarzik> sipa: thanks for fixing
785 2012-11-01 17:20:40 <sipa> not sure what you mean, nothing changes in the future
786 2012-11-01 17:21:02 <sipa> or do you just mean that a pullreq by default gets its message from the commit message? i know that
787 2012-11-01 17:21:24 <sipa> i only realized that some explanation may have been usable when the commit was already made
788 2012-11-01 17:21:36 <sipa> s/usable/useful/
789 2012-11-01 17:22:12 JZavala has quit (Ping timeout: 260 seconds)
790 2012-11-01 17:24:56 RBecker is now known as Ryan
791 2012-11-01 17:25:11 Ryan is now known as RBecker
792 2012-11-01 17:26:22 <jgarzik> gavinandresen: for me, the preference is >= noon EST
793 2012-11-01 17:26:57 <jgarzik> gavinandresen: but I think my availability is less important than you / sipa / gmaxwell
794 2012-11-01 17:27:27 BitcoinBaltar has quit (Ping timeout: 276 seconds)
795 2012-11-01 17:27:31 <gavinandresen> jgarzik: Lets try 1pm EST (are we EST right now or EDT?) Thursdays
796 2012-11-01 17:27:42 <jgarzik> Eastern Time
797 2012-11-01 17:27:43 <jgarzik> ;p
798 2012-11-01 17:27:52 <jgarzik> I never know EST or EDT either ;p
799 2012-11-01 17:27:58 servvs has joined
800 2012-11-01 17:27:58 <gavinandresen> "15 minutes ago every thursday"
801 2012-11-01 17:28:15 <TD> i have to go now, it's 6pm and my gf is waiting
802 2012-11-01 17:28:20 <gavinandresen> whatever that is un UCT/GMT/pick-your-favorite-time-standard
803 2012-11-01 17:28:21 <TD> but let me know what happens :)
804 2012-11-01 17:28:24 <jgarzik> gavinandresen: ACK
805 2012-11-01 17:28:37 <jgarzik> gavinandresen: but I'm OK with another choice, if you/others prefer
806 2012-11-01 17:28:43 darkee has quit (Remote host closed the connection)
807 2012-11-01 17:29:48 <gavinandresen> TD: we'll let you know, I added rewriting all of the bitcoin serialization to use protobufs to my TODO list. (KIDDING!)
808 2012-11-01 17:31:09 <sipa> gavinandresen: idea for april 1st: "We're going to switch all bitcoin protocol serializations to DER"
809 2012-11-01 17:31:21 <gavinandresen> sipa: ooh, good idea!
810 2012-11-01 17:31:39 <TD> haha
811 2012-11-01 17:31:45 Azelphur has quit (Excess Flood)
812 2012-11-01 17:31:56 <gavinandresen> I vote for XML, though.
813 2012-11-01 17:32:04 <gavinandresen> More buzzwordy.
814 2012-11-01 17:32:20 <Luke-Jr> XML++
815 2012-11-01 17:32:22 Azelphur has joined
816 2012-11-01 17:32:23 <jgarzik> I remember when XML was so awesome, so much better than what had come before.
817 2012-11-01 17:32:25 <jgarzik> Those were the days.
818 2012-11-01 17:32:32 <sipa> ooh yes, XML!
819 2012-11-01 17:32:39 <Luke-Jr> let's use <byte digit="01000110"/> for binary
820 2012-11-01 17:32:39 <daybyter> I like xml...
821 2012-11-01 17:32:53 <gavinandresen> We could have the link to the DTD be a rickroll
822 2012-11-01 17:33:12 <midnightmagic> +1 rickroll idea
823 2012-11-01 17:33:16 <sipa> ACK!
824 2012-11-01 17:33:34 <TD> yaml?
825 2012-11-01 17:33:37 <TD> i have no idea what that is
826 2012-11-01 17:33:47 <sipa> gitian uses yaml
827 2012-11-01 17:34:02 <sipa> it's too compact and readable to be a useful standard
828 2012-11-01 17:34:06 <Luke-Jr> YAML is a bigger JSON\
829 2012-11-01 17:34:25 <gavinandresen> I thought it was a smaller JSON... anyway, they're almost the same.
830 2012-11-01 17:34:46 <sipa> but but... it has relevant whitespace!
831 2012-11-01 17:35:04 <Luke-Jr> sipa: did you just suggest Whitespace?
832 2012-11-01 17:36:09 TD has quit (Quit: TD)
833 2012-11-01 17:36:19 <sipa> whitespace is cool!
834 2012-11-01 17:36:35 <sipa> and i met the guy who invented it once at a conference
835 2012-11-01 17:37:03 <jgarzik> some days, I love my bitcoin email inbox
836 2012-11-01 17:37:10 <jgarzik> "Road map for the transition to a single world currency" <delete unread>
837 2012-11-01 17:38:07 <djoot> Luke-Jr: your ljrbot quit
838 2012-11-01 17:39:34 BitcoinBaltar has joined
839 2012-11-01 17:39:50 <wumpus> jgarzik: I've also not opened it, it has some strange attachments
840 2012-11-01 17:40:48 Maged has quit (Disconnected by services)
841 2012-11-01 17:40:56 Maged_ has joined
842 2012-11-01 17:41:13 Maged_ is now known as Maged
843 2012-11-01 17:42:59 agricocb has quit (Ping timeout: 256 seconds)
844 2012-11-01 17:45:00 maqr has quit (Ping timeout: 264 seconds)
845 2012-11-01 17:46:57 xorgate has joined
846 2012-11-01 17:50:52 <gmaxwell> jgarzik: it was in russian anyways.
847 2012-11-01 17:53:26 <midnightmagic> google's weird serialized data structures have been "tested" extensively and they want everyone to use them.
848 2012-11-01 17:53:39 Descry has joined
849 2012-11-01 17:54:28 maqr has joined
850 2012-11-01 18:01:39 Descry has quit (Quit: Leaving)
851 2012-11-01 18:02:24 xorgate has quit (Quit: Take it easy)
852 2012-11-01 18:04:56 agricocb has joined
853 2012-11-01 18:06:53 xorgate has joined
854 2012-11-01 18:15:17 servvs has quit (Quit: Leaving)
855 2012-11-01 18:15:22 denisx has quit (Quit: denisx)
856 2012-11-01 18:20:35 <phantomcircuit> jgarzik, was step one "get everybody arrested?"
857 2012-11-01 18:20:42 <phantomcircuit> move the ? one over
858 2012-11-01 18:21:05 darkee has joined
859 2012-11-01 18:21:34 <gmaxwell> phantomcircuit: it was in russian, do you read russian?
860 2012-11-01 18:21:55 <phantomcircuit> nope
861 2012-11-01 18:22:25 <phantomcircuit> most of the proposals i've seen for bitcoins success would invariably result in anybody involved in the plan getting arrested
862 2012-11-01 18:22:37 <phantomcircuit> genius at work
863 2012-11-01 18:22:42 <jgarzik> wallet_key_set = set of pubkeys + pubkey hashes
864 2012-11-01 18:22:43 <jgarzik> for each tx in block
865 2012-11-01 18:22:43 <jgarzik> for each txout in tx
866 2012-11-01 18:22:43 <jgarzik> txout_key_set = extract pubkeys or pubkey hashes from scriptPubKey
867 2012-11-01 18:22:43 <jgarzik> is_mine = set_intersection (wallet_key_set, txout_key_set)
868 2012-11-01 18:22:53 <jgarzik> is this the correct method for finding payments-to-me ?
869 2012-11-01 18:24:06 <phantomcircuit> jgarzik, for standard transactions yes
870 2012-11-01 18:24:16 <gmaxwell> jgarzik: that is a functional method. Though perhaps you should write your SPV software assuming the bloom stuff? (though you still have to filter)
871 2012-11-01 18:24:24 <jgarzik> yes, that's just searching known standard transactions
872 2012-11-01 18:24:29 <phantomcircuit> you could optimize that by having an index of unspent transaction outputs which would significantly improve performance though
873 2012-11-01 18:25:17 <jgarzik> gmaxwell: currently set_intersection() is testing two hashtables, but yes, a bloom filter is definitely applicable, and has been considered
874 2012-11-01 18:26:08 <jgarzik> gmaxwell: given that network is separated from $everything_else in picocoin, one improvement considered was having the main process pass a bloom filter over the OS pipe(2) to the network process, and the network process (which manages blockchain db) returns matching TX's
875 2012-11-01 18:26:15 <jgarzik> then, the main process filters from there
876 2012-11-01 18:26:59 agricocb has quit (Ping timeout: 244 seconds)
877 2012-11-01 18:27:04 <jgarzik> bloom filters dictate an exact match be performed, so exact match must happen regardless
878 2012-11-01 18:27:44 optimator has joined
879 2012-11-01 18:27:44 optimator has quit (Changing host)
880 2012-11-01 18:27:44 optimator has joined
881 2012-11-01 18:28:10 <jgarzik> phantomcircuit: this is an SPV client. Trying to keep just the block headers + merkle tx's, if at all possible.
882 2012-11-01 18:28:29 <jgarzik> phantomcircuit: maintaining the UTXO set would require significantly more resources
883 2012-11-01 18:28:46 optimator_ has quit (Ping timeout: 248 seconds)
884 2012-11-01 18:28:50 <phantomcircuit> jgarzik, in that case yes that's the correct algorithm for identifying payments-to-me
885 2012-11-01 18:29:04 <phantomcircuit> or more accurately transaction outputs I can spend
886 2012-11-01 18:29:09 <jgarzik> thanks
887 2012-11-01 18:29:19 agricocb has joined
888 2012-11-01 18:29:29 <jgarzik> yeah, just the basic, well known transactions. complicated transactions you will have to manually specify as "mine" somehow
889 2012-11-01 18:29:47 <phantomcircuit> i dont know if anybody here really cares but gribble seems to be having some troubles with gpg auth
890 2012-11-01 18:29:59 <phantomcircuit> i wouldn't rely on it being correct for now
891 2012-11-01 18:30:05 <jgarzik> phantomcircuit: poke nanotube
892 2012-11-01 18:30:14 <phantomcircuit> i tried he doesn't seem to be around
893 2012-11-01 18:31:34 <gmaxwell> jgarzik: right, they're doing some normalization first so "exact" isn't quite exact.
894 2012-11-01 18:32:14 denisx has joined
895 2012-11-01 18:33:22 <daybyter> bitparking changed it's trade format?
896 2012-11-01 18:35:03 <daybyter> no type field in the trade anymore?
897 2012-11-01 18:48:33 D34TH has joined
898 2012-11-01 18:50:36 JDuke128 has joined
899 2012-11-01 18:50:53 <JDuke128> hi , this must be stopped or bitcoin will die : https://www.privateinternetaccess.com/blog/2012/03/bitcoin-war-the-first-real-threat-to-bitcoin/
900 2012-11-01 18:51:42 <JDuke128> someone captured %15 of bitcoin network
901 2012-11-01 18:51:45 <JDuke128> or more
902 2012-11-01 18:54:00 <copumpkin> o.O
903 2012-11-01 18:54:11 <copumpkin> JDuke128: that sounds a little sensationalist
904 2012-11-01 18:54:32 <gmaxwell> JDuke128: that is complete bullshit written by clueless people who don't even read the docs.
905 2012-11-01 18:54:55 <copumpkin> bitcoin won't "die"
906 2012-11-01 18:55:00 <JDuke128> hope that
907 2012-11-01 18:55:13 <copumpkin> JDuke128: no need to hope
908 2012-11-01 18:55:17 <copumpkin> at least not for this reason
909 2012-11-01 18:55:26 <copumpkin> there might be other issues that will emerge, but this isn't one of them
910 2012-11-01 18:55:54 <JDuke128> if many fake servers will join on p2p network to allow all transactions ?
911 2012-11-01 18:56:08 Davincij15 has quit (Ping timeout: 240 seconds)
912 2012-11-01 18:57:52 <gmaxwell> JDuke128: are you the author of that blog message?
913 2012-11-01 18:57:58 <JDuke128> no
914 2012-11-01 18:58:07 <JDuke128> i m reader
915 2012-11-01 18:58:14 <gmaxwell> JDuke128: Okay, I've emailed and asked them to withdraw it.
916 2012-11-01 19:00:31 <JDuke128> i've installed bitcoind on my server , i can connect it from my client
917 2012-11-01 19:00:40 <JDuke128> i got some accepts from client to server
918 2012-11-01 19:00:47 <JDuke128> but i still got 0 bit coin on server
919 2012-11-01 19:00:48 <gmaxwell> JDuke128: There is no way to reliably identify the origin of blocks. What blockchain.info does is reports the first peer to relay a block to them, and they only talk to a small number of total nodes. This is a very lossy metric for many reasons.
920 2012-11-01 19:00:49 <JDuke128> why ?
921 2012-11-01 19:01:22 <helo> no good reason
922 2012-11-01 19:01:39 <helo> pretty much meaningless afact
923 2012-11-01 19:01:47 <gmaxwell> JDuke128: Huh. I'm not clear what you're talking about.
924 2012-11-01 19:02:21 <gmaxwell> JDuke128: are you trying to solo mine? Unless you have dozens and dozens of gpus you shouldn't expect to find a block on your own quickly.
925 2012-11-01 19:02:22 <JDuke128> i ve run this command on my server : "bitcoind -daemon"
926 2012-11-01 19:03:03 Zarutian has joined
927 2012-11-01 19:03:07 <sipa> JDuke128: has it synchronized with the block chain yet?
928 2012-11-01 19:03:25 <JDuke128> bash DiabloMiner-OSX.sh -u xxx -p xxx -o xxx.xxx.com -r 8332 -g 5 -w 256
929 2012-11-01 19:03:29 <JDuke128> i did this on client
930 2012-11-01 19:03:36 <sipa> so you are solo mining?
931 2012-11-01 19:03:45 <JDuke128> its solo mining ?
932 2012-11-01 19:03:50 <JDuke128> i ve 1 server and 1 pc
933 2012-11-01 19:03:54 <JDuke128> my pc has gpus
934 2012-11-01 19:03:56 <sipa> is xxx.xxx.com a pool, or your server?
935 2012-11-01 19:03:59 <JDuke128> server has only 2 cpu
936 2012-11-01 19:04:04 <JDuke128> server
937 2012-11-01 19:04:06 <JDuke128> my server
938 2012-11-01 19:04:15 <sipa> how much hash rate do you have?
939 2012-11-01 19:04:22 <sipa> total
940 2012-11-01 19:04:40 <JDuke128> ~300m on pc
941 2012-11-01 19:04:52 <sipa> ;;bc,calc 300000
942 2012-11-01 19:04:52 <gribble> The average time to generate a block at 300000 Khps, given current difficulty of 2864140.507811 , is 1 year, 15 weeks, 4 days, 14 hours, 10 minutes, and 32 seconds
943 2012-11-01 19:05:05 <sipa> you won't - most likely - never see any block
944 2012-11-01 19:05:12 <sipa> *ever
945 2012-11-01 19:05:35 <JDuke128> server needs gpu ?
946 2012-11-01 19:05:41 <sipa> no
947 2012-11-01 19:05:48 <sipa> blocks generate 50 BTC at a time, and with your hash rate it would take on average a year to create a block
948 2012-11-01 19:05:53 <sipa> it can be a month
949 2012-11-01 19:05:56 <sipa> it can be 3 years
950 2012-11-01 19:06:03 <sipa> but on average 1 year + 15 weeks
951 2012-11-01 19:06:11 <sipa> you don't want to wait that long, i suppose
952 2012-11-01 19:06:16 <sipa> it's a huge risk
953 2012-11-01 19:06:29 <JDuke128> for server?
954 2012-11-01 19:06:36 <sipa> for your income
955 2012-11-01 19:06:49 <JDuke128> okay i will use deep bit so
956 2012-11-01 19:07:04 <gmaxwell> JDuke128: why deepbit? ... you have bitcoind running. Use p2pool.
957 2012-11-01 19:07:05 <sipa> so i advize you to run p2pool or join a centralized pool, which splits the income among many contributors
958 2012-11-01 19:07:28 <JDuke128> p2pool ?
959 2012-11-01 19:07:41 molecular has quit (Ping timeout: 260 seconds)
960 2012-11-01 19:07:42 <gmaxwell> It blows my mind that you'd show up flaming about mining centeralization and then decide to join one of the bigger centeralized pools.
961 2012-11-01 19:07:49 <JDuke128> whats the difference between mine and p2pool ?
962 2012-11-01 19:07:55 molecular has joined
963 2012-11-01 19:07:55 <gmaxwell> https://en.bitcoin.it/wiki/P2Pool
964 2012-11-01 19:09:26 <JDuke128> as i understand , to get bitcoin balance on server , i need to feed my server with many gpus with many clients
965 2012-11-01 19:09:27 <gmaxwell> JDuke128: what you do now has a very low odds of getting 50 BTC with every hash. When you mine with a pool you have a much higher odds of getting a much smaller amount with every hash.
966 2012-11-01 19:09:28 <JDuke128> right ?
967 2012-11-01 19:09:33 <D34TH> oh wow, just compiled latest bitcoind on mingw came out to like 65 mb
968 2012-11-01 19:09:38 <D34TH> ran strip, 5 mb
969 2012-11-01 19:10:08 Joric has joined
970 2012-11-01 19:10:08 Joric has quit (Changing host)
971 2012-11-01 19:10:09 Joric has joined
972 2012-11-01 19:10:51 <BlueMatt> D34TH: been that way forever
973 2012-11-01 19:10:56 <gmaxwell> JDuke128: minging is a randomized process. The move of it you do the more often you will solve a block. The difficulty changes over time so that the whole network makes about 2016 blocks in two weeks (one per ten minutes)
974 2012-11-01 19:11:53 <JDuke128> okay , how many gpu i need to make my server as big ?
975 2012-11-01 19:12:02 <JDuke128> 1000 + ?
976 2012-11-01 19:12:32 <gmaxwell> as big as what?
977 2012-11-01 19:12:43 <gmaxwell> The whole network?
978 2012-11-01 19:13:17 <JDuke128> yea
979 2012-11-01 19:13:38 <gmaxwell> About 100,000.
980 2012-11-01 19:14:36 freakazoid has joined
981 2012-11-01 19:15:34 PK_ has joined
982 2012-11-01 19:15:50 Joric_ has joined
983 2012-11-01 19:15:51 Joric_ has quit (Changing host)
984 2012-11-01 19:15:51 Joric_ has joined
985 2012-11-01 19:16:06 <JDuke128> so , as i understand bitcoind is for people who is opening service to public like deepbit.net and many people join their service to synchronize big network in time will be much smaller time
986 2012-11-01 19:16:08 <JDuke128> right?
987 2012-11-01 19:16:28 Joric_ has quit (Client Quit)
988 2012-11-01 19:16:29 <JDuke128> bitcoind for single network impossible
989 2012-11-01 19:17:28 Joric has quit (Ping timeout: 260 seconds)
990 2012-11-01 19:18:12 <JDuke128> gmaxwell , right ?
991 2012-11-01 19:19:11 <sipa> JDuke128: bitcoin is not just mining, it is a currency
992 2012-11-01 19:19:25 <sipa> mining is a part of it, and its economics will drive people towards higher efficiency
993 2012-11-01 19:19:49 <sipa> that means better hardware, more specialized hardware, and also infrastructure to deal with it
994 2012-11-01 19:20:35 <sipa> one of those is centralized pools, but it has the disadvantage of people giving up their "voting power" in the network to some central instance
995 2012-11-01 19:21:01 <sipa> something like p2pool or some more modern pool setups give you the advantage of decreasing variance without giving up your rights
996 2012-11-01 19:21:35 <sipa> those are somewhat more complex to setup though
997 2012-11-01 19:23:44 <JDuke128> p2pool is complex ?
998 2012-11-01 19:24:09 <sipa> not really, but it is harder to setup than just pointing your miner to some central server
999 2012-11-01 19:24:25 <jgarzik> http://www.nytimes.com/2012/10/30/science/rethinking-the-computer-at-80.html?pagewanted=all
1000 2012-11-01 19:28:02 <gmaxwell> What does bitcoind for single network impossible mean?
1001 2012-11-01 19:28:38 aq83 has quit (Ping timeout: 265 seconds)
1002 2012-11-01 19:28:38 <gmaxwell> JDuke128: bitcoind is just the reference bitcoin node software with the bitcoin-qt gui turned off.
1003 2012-11-01 19:30:12 aq83 has joined
1004 2012-11-01 19:30:43 TheEslbear has quit (Quit: Verlassend)
1005 2012-11-01 19:31:15 TD has joined
1006 2012-11-01 19:31:42 <helo> JDuke128: unless you're going to really expand, buy fpga/asic, etc., with 300mh you might as well just put as little time/effort into it as possible
1007 2012-11-01 19:32:09 <helo> JDuke128: just point it at a non-registration-required pool, and let it run
1008 2012-11-01 19:33:53 <helo> if you're interested in doing the work for the learning experience, then p2pool
1009 2012-11-01 19:34:33 <jgarzik> looks like picocoin could probably steal BlueMatt's CBloomFilter with only minor modifications
1010 2012-11-01 19:34:47 <BlueMatt> nice!
1011 2012-11-01 19:35:11 <jgarzik> BlueMatt: is the serialization locked in stone yet?
1012 2012-11-01 19:35:17 * jgarzik hopes "yes"
1013 2012-11-01 19:35:22 <sipa> jgarzik: close
1014 2012-11-01 19:35:29 <BlueMatt> aside from the merkle tree stuff, yes
1015 2012-11-01 19:35:40 <sipa> oh right, bloom filters, sure
1016 2012-11-01 19:35:51 <BlueMatt> sipa: sorry I was so out of it yesterday when I tried to go over your stuff, I hope to be able to pull it into my pull request for bloom filter stuff and pull it into my bitcoinj branch over the next day
1017 2012-11-01 19:35:54 <jgarzik> just the bloom filter serialization itself
1018 2012-11-01 19:36:01 <jgarzik> + hash algo, etc.
1019 2012-11-01 19:36:05 <BlueMatt> yea, thats pretty much set in stone
1020 2012-11-01 19:36:12 <sipa> BlueMatt: not sure you saw it, but the rule nBits == nHash*2-1, is not exactly true
1021 2012-11-01 19:36:30 <sipa> BlueMatt: so i'm not entirely sure I don't want to store the number of bits specifically
1022 2012-11-01 19:36:54 <sipa> (as i like some sanity check "walking the tree consumed exactly as many bits as was claimed")
1023 2012-11-01 19:38:12 <MC1984> How does that blend tec guy get away with blending phones full of lithium batteries without casuing a massive fire, or getting brain cancer from breathing the resulting surely toxic dust cloud
1024 2012-11-01 19:38:46 <BlueMatt> jgarzik: gmaxwell: had one question re: non-cryptographically-strong hash function, but I dont think that was a blocker
1025 2012-11-01 19:39:18 <sipa> well, i would prefer a cryptographic one, but i haven't thought about it enough to know whether it would actually matter
1026 2012-11-01 19:39:29 <jgarzik> no clue how difficult it would be to change the hash, but my unthinking default is "prefer crypto hash"
1027 2012-11-01 19:39:37 <jgarzik> double-SHA256 would be nice symmetry with the rest of the code
1028 2012-11-01 19:40:24 <BlueMatt> well the other goal was to make sure bloom filters require 0 additional load on the serving nodes
1029 2012-11-01 19:40:39 <BlueMatt> (whereas sha256 hashing everything does not fulfill that goal)
1030 2012-11-01 19:40:53 <sipa> yes, eventually you're not going to use more than 20 bits or so of the hash function's output
1031 2012-11-01 19:41:09 <sipa> which allows trivial collisions even with double-sha256
1032 2012-11-01 19:41:34 <jgarzik> <shrug>
1033 2012-11-01 19:41:45 <jgarzik> network messages use 32-bit truncated version of dbl-sha256
1034 2012-11-01 19:41:53 <sipa> yes
1035 2012-11-01 19:42:37 <jgarzik> CBloomFilter::Hash() appears to return 32-bit
1036 2012-11-01 19:43:10 <BlueMatt> yes, and on big backbone nodes dont need more sha256 hash (its already a reasonable amount of cpu time in sha256 itself)
1037 2012-11-01 19:43:12 <sipa> well yes, but the bloom filter itself has only at most 2^17 buckets or so?
1038 2012-11-01 19:43:51 <BlueMatt> (well, it depends on what you are doing, but my dnsseed eats much of its time in sha256 hashing messages)
1039 2012-11-01 19:44:07 <jgarzik> sounds like we should import sha256 mining cores for generic sha256 hashing!
1040 2012-11-01 19:44:55 <sipa> 288000 max buckets in the bloom filter, according to the current BIP37 text
1041 2012-11-01 19:45:12 <sipa> so 18 bits of the hash function are used
1042 2012-11-01 19:45:23 <sipa> so finding a collision takes 512 double-SHA256 steps :)
1043 2012-11-01 19:45:50 <sipa> oooh, i know, let's use scrypt as the bloom filter hash functioN!
1044 2012-11-01 19:45:56 <jgarzik> still, seems like yet another hash function is a pain
1045 2012-11-01 19:46:01 <jgarzik> compared to reusing an existing one
1046 2012-11-01 19:46:13 <sipa> meh, i think here it is worth the cpu usage consideration
1047 2012-11-01 19:46:20 <BlueMatt> well the attack is a bit more complicated than just finding collisions...you need to find a hash which is statistically the most likely to have collisions
1048 2012-11-01 19:47:01 <BlueMatt> (which is obviously not possible with a theoretically perfect crypto hash, but I doubt its a serious attack against any reasonable hash function)
1049 2012-11-01 19:47:31 <sipa> right, the problem is preimages, not collisions
1050 2012-11-01 19:47:55 <BlueMatt> yep
1051 2012-11-01 19:48:02 <sipa> still, 2^18 SHA256 steps is still trivial
1052 2012-11-01 19:48:25 <sipa> ooh!
1053 2012-11-01 19:48:35 <sipa> how about we include a salt?
1054 2012-11-01 19:48:59 <sipa> which is included in the hash function, and chosen by the SPV node at connect time
1055 2012-11-01 19:49:17 <sipa> if an attacker doesn't know the salt, he cannot produce preimages
1056 2012-11-01 19:49:36 <jgarzik> std::vector<unsigned char> vData;
1057 2012-11-01 19:49:36 <helo> sounds legit
1058 2012-11-01 19:49:36 <jgarzik> READWRITE(vData);
1059 2012-11-01 19:49:48 <sipa> jgarzik: ?
1060 2012-11-01 19:49:50 * jgarzik wonders how the magic serializes vector<uc>
1061 2012-11-01 19:49:54 <jgarzik> varlen + bytes, I guess?
1062 2012-11-01 19:49:57 <sipa> correct
1063 2012-11-01 19:50:36 pusle has joined
1064 2012-11-01 19:50:59 <BlueMatt> sipa: your goal is already to find a preimage which matches as many of the set of pubkeys as possible (which is what most keys in filters would be) so adding a salt wont help much
1065 2012-11-01 19:51:11 <BlueMatt> s/preimage/item/
1066 2012-11-01 19:51:22 <sipa> heh?
1067 2012-11-01 19:52:10 <sipa> so the hash function would be H(item) but H(salt + item), basically
1068 2012-11-01 19:52:16 <sipa> *not
1069 2012-11-01 19:52:28 <BlueMatt> my point is that item is already random data, adding more random data wont help much
1070 2012-11-01 19:52:48 <BlueMatt> (unless there is some attack which breaks on changes in length but not on changes in item)
1071 2012-11-01 19:52:57 freakazoid has quit (Ping timeout: 268 seconds)
1072 2012-11-01 19:53:14 * jgarzik likes djb2_hash
1073 2012-11-01 19:53:17 aq83 has quit (Ping timeout: 244 seconds)
1074 2012-11-01 19:53:37 <sipa> BlueMatt: but if i know an address that is yours, i know what its hash will be, and i can try to create for example a txout script that contains something that matches that hash
1075 2012-11-01 19:54:01 <sipa> if i don't even know what its hash is, how do i go about looking for preimages?
1076 2012-11-01 19:54:21 <BlueMatt> sipa: you can do that in any case, just add the address that is mine to the txout script
1077 2012-11-01 19:54:31 <sipa> doh!
1078 2012-11-01 19:54:37 <sipa> of course
1079 2012-11-01 19:54:48 <BlueMatt> :)
1080 2012-11-01 20:00:27 <BlueMatt> jgarzik: there are plenty of simple hash functions that could have been chosen...murmur seemed to fit the bill well (it is build on a hash test suite and is used in cassandra in their bloom filters, not that cassandra necessarily made a good choice, but...)
1081 2012-11-01 20:00:51 <BlueMatt> jgarzik: if there is something that you prefer for some solid reason, Id be glad to change it
1082 2012-11-01 20:01:05 <jgarzik> vs djb2_hash nah don't care
1083 2012-11-01 20:01:19 Davincij15 has joined
1084 2012-11-01 20:01:26 * jgarzik uses djb2_hash as the go-to hash in personal projects
1085 2012-11-01 20:01:43 <jgarzik> djb did his usual good work on it
1086 2012-11-01 20:02:01 <JDuke128> as you told me to use p2pool
1087 2012-11-01 20:02:05 <JDuke128> i got it
1088 2012-11-01 20:02:13 <JDuke128> python run_p2pool.py --p2pool-node 173.167.113.73 --bitcoind-rpc-port 8332 --bitcoind-p2p-port 9332 xxx xxx
1089 2012-11-01 20:02:35 <jgarzik> for the purposes of picocoin, the path of least effort is simply copying BlueMatt's CBloomFilter(). That's the most-tested solution present, and most likely to align with a P2P extension for bloomers.
1090 2012-11-01 20:02:37 <JDuke128> i got this error :Check failed! Make sure that you're connected to the right bitcoind with --bitcoind-rpc-port!
1091 2012-11-01 20:02:41 <JDuke128> someone know ?
1092 2012-11-01 20:02:56 <gmaxwell> BlueMatt: my concern was just a vague one like ... e.g. could I create a small number of addresses that all users matched completely... then I just do a bunch of transactions to flood them. I admit its not so worrysome.. but if a minor change makes it harder than it would be good.
1093 2012-11-01 20:03:31 <gmaxwell> BlueMatt: I mostly brought it up with the hope that you/td would either reply "Oh yea, we solved that" or "Oh we can just twiddle this and it's no issue anymore"
1094 2012-11-01 20:03:34 <BlueMatt> gmaxwell: yep (guess I restated that poorly...) anyway, I think the cpu-usage argument outweighs that concern here
1095 2012-11-01 20:04:48 <gmaxwell> BlueMatt: well my obvious thought was to just stir the hash function for different users. E.g. when you submit a filter you also submit an unknown to the attacker secret which is used to permute the filter.
1096 2012-11-01 20:05:07 <gmaxwell> This also means that if you find a filter is matching too much unwanted stuff you could try twiddling the knob.
1097 2012-11-01 20:05:21 <gmaxwell> But if the hash function is sufficiently weak then I guess that wouldn't help.
1098 2012-11-01 20:06:08 * jgarzik is skeptical about CPU usage being noticeable with a ProcessMessages()-like re-used solution, but whatever
1099 2012-11-01 20:06:16 <BlueMatt> gmaxwell: as stated above, I think the only case that would help is in a case where you provided a salt of nondeterministic length and the weakness is such that the attack only matches a number of items which have a set length, but does not apply when you twiddle the length
1100 2012-11-01 20:06:42 bitcoinz has quit (Ping timeout: 276 seconds)
1101 2012-11-01 20:06:53 <BlueMatt> jgarzik: its not huge, but for each block, if you are sha-hashing every script data element once per node on top of all the other hashing done, it gets pretty expensive
1102 2012-11-01 20:07:37 <sipa> i assume you could get close to a few 1000 to 10000 hashes per block
1103 2012-11-01 20:07:49 <JDuke128> what does this mean ? Check failed! Make sure that you're connected to the right bitcoind with --bitcoind-rpc-port!
1104 2012-11-01 20:07:49 <sipa> that he server needs to do
1105 2012-11-01 20:07:55 <BlueMatt> yea, for a cheap little arm board, that gets expensive
1106 2012-11-01 20:08:02 <gmaxwell> BlueMatt: I don't understand why you're saying a salt won't help.
1107 2012-11-01 20:08:25 <gmaxwell> The item is random data but it's globally known public data. The salt is not.
1108 2012-11-01 20:08:27 <BlueMatt> gmaxwell: because the data in the filter is always random data (for the 99% use-case)
1109 2012-11-01 20:08:31 bitcoinz has joined
1110 2012-11-01 20:08:41 <BlueMatt> gmaxwell: not neccessarily
1111 2012-11-01 20:08:43 <jgarzik> any cheap little arm board is most likely a client, not a server
1112 2012-11-01 20:08:59 <BlueMatt> jgarzik: meh, I disagree, but...oh well
1113 2012-11-01 20:09:00 <jgarzik> client-supplied salt seems reasonable
1114 2012-11-01 20:09:33 <gmaxwell> BlueMatt: for example, I can take a list of all txouts in the blockchain, and then search for a set of addresses that hit the hash values for most of them. I can't do that if there is a salt.
1115 2012-11-01 20:10:32 <BlueMatt> gmaxwell: yes, but my point is that addresses are rotating fairly constantly, and the total number of addresses is growing very significantly and will be for the foreseeable future (unless, of course, bitcoin just stops growing...)
1116 2012-11-01 20:10:53 <sipa> rotating?
1117 2012-11-01 20:11:00 <sipa> the list just grows
1118 2012-11-01 20:11:11 <BlueMatt> well, wallets come and go
1119 2012-11-01 20:11:17 <sipa> at least for clients that request the entire history
1120 2012-11-01 20:11:19 <BlueMatt> the useful-attackable addresses
1121 2012-11-01 20:12:19 <BlueMatt> (and clients upgrade to full nodes, addresses are on a merchant running a full node, etc, etc)
1122 2012-11-01 20:12:33 <gmaxwell> BlueMatt: I can still just attack the last, say, 100,000 most recently used.
1123 2012-11-01 20:15:40 conman has joined
1124 2012-11-01 20:16:16 bakh has joined
1125 2012-11-01 20:17:08 <sipa> well, adding a random salt (or a DH negotiated one, when we have host keys!), does make me feel safer
1126 2012-11-01 20:17:53 <BlueMatt> what about: instead of a random salt, another parameter that twiddles the seed value to murmurhash?
1127 2012-11-01 20:18:42 <sipa> how is that different?
1128 2012-11-01 20:19:03 <BlueMatt> less data, less hash time, same effect
1129 2012-11-01 20:20:07 <sipa> like a 32-bit value that gets added to the initial seed? fine by me
1130 2012-11-01 20:20:25 <BlueMatt> that was the idea
1131 2012-11-01 20:20:48 <BlueMatt> gmaxwell/jgarzik: concept ack?
1132 2012-11-01 20:20:58 <BlueMatt> Ill throw that in when I redo the pull over the next ~day
1133 2012-11-01 20:27:18 datagutt has quit (Quit: kthxbai)
1134 2012-11-01 20:31:22 Davincij has joined
1135 2012-11-01 20:31:42 JDuke128 has quit (Quit: ["Textual IRC Client: www.textualapp.com"])
1136 2012-11-01 20:32:13 Davincij15 has quit (Remote host closed the connection)
1137 2012-11-01 20:38:13 freakazoid has joined
1138 2012-11-01 20:45:24 jborkl has joined
1139 2012-11-01 20:49:31 runeks has joined
1140 2012-11-01 20:51:48 [\\\] has joined
1141 2012-11-01 20:53:44 jborkl has left ()
1142 2012-11-01 20:55:11 <gmaxwell> yea I was only assuming the 'salt' would be some tiny random value. There may be anonymity benefits in this too... you won't as easily identify a repeat client by an identical or nearly identical filter.
1143 2012-11-01 20:55:14 slush has quit (Ping timeout: 268 seconds)
1144 2012-11-01 20:55:14 m00p has joined
1145 2012-11-01 20:55:35 <gmaxwell> (the filter will match most of the same stuff, â thin protection indeedâ but hey)
1146 2012-11-01 20:57:09 <jgarzik> seems reasonable
1147 2012-11-01 20:57:28 juchmis has joined
1148 2012-11-01 21:00:24 daybyter has quit (Quit: Konversation terminated!)
1149 2012-11-01 21:07:16 TD has quit (Quit: TD)
1150 2012-11-01 21:07:17 PiZZaMaN2K is now known as PiZZaMaN2K|away
1151 2012-11-01 21:08:14 gimlet90210 has joined
1152 2012-11-01 21:09:48 BlackPrapor has joined
1153 2012-11-01 21:16:17 robbak has quit (Remote host closed the connection)
1154 2012-11-01 21:16:45 robbak has joined
1155 2012-11-01 21:19:03 CodesInChaos has quit (Ping timeout: 244 seconds)
1156 2012-11-01 21:20:30 gavinandresen has quit (Quit: gavinandresen)
1157 2012-11-01 21:20:41 agricocb has quit (Quit: Leaving.)
1158 2012-11-01 21:25:05 JDuke128 has joined
1159 2012-11-01 21:26:01 optimator_ has joined
1160 2012-11-01 21:26:04 TD has joined
1161 2012-11-01 21:27:57 optimator has quit (Ping timeout: 252 seconds)
1162 2012-11-01 21:35:43 Maged has quit (Ping timeout: 260 seconds)
1163 2012-11-01 21:37:15 denisx_ has joined
1164 2012-11-01 21:38:30 forsetifox has quit (Quit: Leaving)
1165 2012-11-01 21:38:31 denisx has quit (Read error: Connection reset by peer)
1166 2012-11-01 21:38:31 denisx_ is now known as denisx
1167 2012-11-01 21:38:56 copumpkin has quit (Quit: Computer has gone to sleep.)
1168 2012-11-01 21:42:46 dvide has joined
1169 2012-11-01 21:42:52 nanotube has quit (Ping timeout: 245 seconds)
1170 2012-11-01 21:43:24 gribble has quit (Remote host closed the connection)
1171 2012-11-01 21:43:53 pusle has quit ()
1172 2012-11-01 21:44:10 rdponticelli has quit (Quit: No Ping reply in 180 seconds.)
1173 2012-11-01 21:49:05 <Luke-Jr> oh awesome
1174 2012-11-01 21:49:15 <Luke-Jr> +1 on the "kill bitcointalk" step :p
1175 2012-11-01 21:50:39 * Luke-Jr ponders trolling Gavin's self-contradiction in the forum rules :P
1176 2012-11-01 21:50:57 gribble has joined
1177 2012-11-01 21:51:48 nanotube has joined
1178 2012-11-01 21:52:00 ThomasV has joined
1179 2012-11-01 21:52:06 forsetifox has joined
1180 2012-11-01 21:55:10 <TD> Luke-Jr: out of curiousity, is Dashjr your real last name?
1181 2012-11-01 21:55:17 <Luke-Jr> TD: yep
1182 2012-11-01 21:55:25 <TD> what part of the world is it from?
1183 2012-11-01 21:56:04 <[Tycho]> India, may be ?
1184 2012-11-01 21:56:25 <Luke-Jr> TD: America
1185 2012-11-01 21:57:09 <TD> how is it pronounced? dasher?
1186 2012-11-01 21:57:13 BlackPrapor has quit (Remote host closed the connection)
1187 2012-11-01 21:57:40 <Luke-Jr> TD: some people pronounce it that way, but there's a 'j' sound before 'er'
1188 2012-11-01 21:57:54 <gmaxwell> "and if it is funny, email it to me" lol.
1189 2012-11-01 21:58:02 <Luke-Jr> not a strong 'j' so people often don't even notice it
1190 2012-11-01 21:58:18 darkskiez has quit (Remote host closed the connection)
1191 2012-11-01 21:58:38 <sipa> Luke-Jr: +- "dashjur" ?
1192 2012-11-01 21:59:08 <Luke-Jr> sipa: closer to "dasher" IMO
1193 2012-11-01 21:59:13 <sipa> ok
1194 2012-11-01 22:00:58 <gmaxwell> perhaps a little more like you might expect "dashger" (with a soft g, of course)
1195 2012-11-01 22:01:02 <gmaxwell> ?
1196 2012-11-01 22:01:47 <Luke-Jr> gmaxwell: maybe, I'm no expert on writing pronounciations out âº
1197 2012-11-01 22:01:54 darkskiez has joined
1198 2012-11-01 22:02:10 <sipa> Luke-Jr: but you do seem to use the 'jr' part separately (in your nick)
1199 2012-11-01 22:02:25 <Luke-Jr> sipa: it's a play on my name; I replaced "dash" with a dash ;)
1200 2012-11-01 22:02:38 <sipa> ha! never realized that
1201 2012-11-01 22:03:24 <TD> i thought it might be something like "Luke Junior" and then the irc nick got turned into a sort of pseudonym. interesting name though
1202 2012-11-01 22:03:35 <TD> so the new forum is just for discussing the foundation?
1203 2012-11-01 22:03:39 * TD has little to say on the topic
1204 2012-11-01 22:04:13 <Luke-Jr> TD: I got the impression for discussing Bitcoin
1205 2012-11-01 22:04:23 <Luke-Jr> "all things bitcoin" is what the email said
1206 2012-11-01 22:04:37 <TD> yeah it seems inconsistent. the email says anything, but the site itself says "General discussion of anything related to the Foundation"
1207 2012-11-01 22:04:43 <sipa> too bad IRC doesn't allow ϳ as a nickname
1208 2012-11-01 22:04:51 <Luke-Jr> lol
1209 2012-11-01 22:05:01 <Luke-Jr> anyone have access to fix things? :p
1210 2012-11-01 22:05:05 <Luke-Jr> can't view my own profile
1211 2012-11-01 22:05:10 <sipa> same
1212 2012-11-01 22:05:12 <gmaxwell> Luke-Jr: thats ... complicated.
1213 2012-11-01 22:05:18 <Luke-Jr> gmaxwell: ?
1214 2012-11-01 22:05:56 <gmaxwell> Thought not having access to your own I think wasn't anticipated. The way the access control works on the forum is that being able to access other profiles meant being able to see the list of all foundation members.
1215 2012-11-01 22:05:56 <JDuke128> when will bitcoin exchange start ?
1216 2012-11-01 22:06:07 <JDuke128> there is no good bit coin exchange yet
1217 2012-11-01 22:06:20 <JDuke128> all people just want to buy bit coin but no one selling
1218 2012-11-01 22:06:20 <forsetifox> Mt Gox and BTC-E are good. O.o
1219 2012-11-01 22:06:20 <Luke-Jr> JDuke128: MtGox
1220 2012-11-01 22:06:22 <sipa> JDuke128: start one!
1221 2012-11-01 22:06:27 <Luke-Jr> forsetifox: not BTC-E!
1222 2012-11-01 22:06:45 <JDuke128> i can't bit coin on mtgox
1223 2012-11-01 22:06:52 <gmaxwell> So gavin had a choice to make between allowing profile access and making that list public ( / and hacking up the software, I suppose). I expect that that particular decision was temporarily deferred.
1224 2012-11-01 22:06:55 <sipa> JDuke128: if all people wanted to buy and no one wanted to sell, the BTC/USD exchange rate would be infinite
1225 2012-11-01 22:06:57 <forrestv> JDuke128, re: your p2pool issue, are you trying to mine for litecoins?
1226 2012-11-01 22:07:26 <JDuke128> i don't see any future on litecoin
1227 2012-11-01 22:07:29 <JDuke128> it will fail
1228 2012-11-01 22:07:34 <JDuke128> bit coin better
1229 2012-11-01 22:08:08 agricocb has joined
1230 2012-11-01 22:08:20 <forrestv> ah. hm, not sure why that error was popping up, then. it usually happens when you're connecting to litecoind instead of bitcoind... or a bitcoind in testnet mode
1231 2012-11-01 22:09:03 PK_ has quit ()
1232 2012-11-01 22:09:31 forsetifox_ has joined
1233 2012-11-01 22:09:37 <TD> hey forrest
1234 2012-11-01 22:10:06 <TD> forrestv: what do you think the current bottleneck for p2pool adoption is?
1235 2012-11-01 22:11:06 <forsetifox_> What's wrong with BTC-E Luke?
1236 2012-11-01 22:11:19 <Luke-Jr> forsetifox_: they are known scammers
1237 2012-11-01 22:11:30 forsetifox has quit (Ping timeout: 276 seconds)
1238 2012-11-01 22:11:34 <forsetifox_> First time I've heard that. I only use them for LTC -> BTC anyways.
1239 2012-11-01 22:11:43 forsetifox_ is now known as forsetifox
1240 2012-11-01 22:12:06 <Luke-Jr> any idea how to add friends? :p
1241 2012-11-01 22:12:21 <forrestv> TD, by the time p2pool was stable everyone already was satisfied with whatever pool they were using, and there wasn't much of an influx of new miners. and just apathy about bitcoin's health
1242 2012-11-01 22:12:53 <Luke-Jr> TD: p2pool is already a decent size
1243 2012-11-01 22:12:57 <forrestv> and higher variance for small miners
1244 2012-11-01 22:13:04 <TD> overall hash rate is growing though. you think it's existing miners upgrading their operations rather than number of miners growing?
1245 2012-11-01 22:13:21 rdponticelli has joined
1246 2012-11-01 22:13:29 <gmaxwell> P2pool also simply takes more effort to setup. You need to have a healty running bitcoin node. There is a p2pool regular who often complains that p2pool complains that his bitcoin has gone unresponsive for minutes at a time.. due to his abacus overheating. :P
1247 2012-11-01 22:13:37 <TD> i'm wondering if difficulty of setup/installation/running a full node is possibly a contributor
1248 2012-11-01 22:13:38 <TD> yeah
1249 2012-11-01 22:13:39 <forrestv> probably ... i don't think that people who are just beginning to get familiar with bitcoin are going to invest in expensive ASICs
1250 2012-11-01 22:13:49 <gmaxwell> Ultraprune should help p2pool adoption somewhat.
1251 2012-11-01 22:13:57 <gmaxwell> Oh also. BFL fpgas are p2pool incompatible.
1252 2012-11-01 22:14:01 <TD> oh
1253 2012-11-01 22:14:06 <TD> ah yeah. right. i remember this now.
1254 2012-11-01 22:14:09 <TD> they can't stop hashing
1255 2012-11-01 22:14:13 <gmaxwell> So a chunk of additional hashrate is those, and none of them use p2pool.
1256 2012-11-01 22:14:20 <gmaxwell> well. s/none/few/ I guess.
1257 2012-11-01 22:14:33 <Luke-Jr> TD: there's no reason to generally prefer p2pool over other centralized pools
1258 2012-11-01 22:14:39 <Luke-Jr> other decentralized*
1259 2012-11-01 22:15:04 <gmaxwell> I'd kinda hoped that most pools would sleep up to the introduction of asics and p2pool would win more asic miners by default. Alas.
1260 2012-11-01 22:15:12 <Luke-Jr> TD: they can stop hashing, but the real problem is you don't get results until they finish
1261 2012-11-01 22:15:28 <sipa> why can't BFL asics do p2pool?
1262 2012-11-01 22:15:48 <sipa> (not "because they don't exist", please)
1263 2012-11-01 22:15:48 <gmaxwell> not asics. FPGAs.
1264 2012-11-01 22:15:49 <TD> because of the 10 second share period
1265 2012-11-01 22:15:49 <Luke-Jr> sipa: who says they can't? :p
1266 2012-11-01 22:15:59 <sipa> oh, right
1267 2012-11-01 22:16:01 ThomasV has quit (Ping timeout: 268 seconds)
1268 2012-11-01 22:16:02 <TD> sounds like luke understands it better
1269 2012-11-01 22:16:15 gavinandresen has joined
1270 2012-11-01 22:16:17 <TD> my understanding was that you send them a block header and they iterate through every nonce and let you know if they found a match
1271 2012-11-01 22:16:29 <TD> it takes a few seconds to do that iteration. if the header you want to hash changes whilst it's iterating, you're out of luck
1272 2012-11-01 22:16:31 <gmaxwell> Luke wrote the cgminer drivers for the thing, he ought to. :P
1273 2012-11-01 22:16:33 <TD> so you get a lot of stales
1274 2012-11-01 22:16:45 <TD> it's not that it doesn't work at all. it's that it's very inefficient
1275 2012-11-01 22:16:58 <gmaxwell> I'm sure none of the asic devices will have that issue.
1276 2012-11-01 22:16:59 <Luke-Jr> just slow to provide shares
1277 2012-11-01 22:17:12 <sipa> sure, as p2pool has a 10s share interval, a 10s delay is dramatical
1278 2012-11-01 22:17:16 <Luke-Jr> it produces stales on normal pools too, just much less at Bitcoin's 10 min per block
1279 2012-11-01 22:17:31 <gmaxwell> (god knows, they'll likely have _other_ issues.. just not that one :P )
1280 2012-11-01 22:17:54 <Luke-Jr> gmaxwell: cablepair had me write out the requirements for bASIC
1281 2012-11-01 22:18:09 <TD> yeah BFL understand the issue. i don't know if they'll fix it. something to do with having to upgrade the "bitstream"
1282 2012-11-01 22:18:18 <Luke-Jr> so I covered pretty much every known issue learned from FPGAs :P
1283 2012-11-01 22:18:41 <Luke-Jr> TD: they tried to fix it with the minirigs, but that turned out sucky
1284 2012-11-01 22:18:58 <Luke-Jr> but ASICs are much faster period
1285 2012-11-01 22:19:05 <Luke-Jr> so this problem *should* simply not exist
1286 2012-11-01 22:19:19 <gmaxwell> right even with the same design it wouldn't be a problem.
1287 2012-11-01 22:19:20 <sipa> they'll do a 32-bit noncerange in under 1s, at the claimed specs
1288 2012-11-01 22:19:47 <gmaxwell> TD: the pr BFL devices are FPGAs... they could fix this, but apparently it hasn't been a priority. Yet again something else technical that sucks in the bitcoin universe, what a surprise. :P
1289 2012-11-01 22:21:01 <Luke-Jr> gmaxwell: I think changign their MCU firmware requires wiring to the unconnected JTAG :/
1290 2012-11-01 22:21:33 <TD> heh
1291 2012-11-01 22:22:31 <gmaxwell> Luke-Jr: but at least no one can figure out what chips they're using!
1292 2012-11-01 22:22:36 <gmaxwell> (oh waitâ¦)
1293 2012-11-01 22:23:10 * TD reads about getblocktemplate
1294 2012-11-01 22:23:45 <Luke-Jr> I get the feeling this one-subforum will become a bit crowded fast
1295 2012-11-01 22:23:55 <Luke-Jr> which might scare people out
1296 2012-11-01 22:24:12 <sipa> TD: what kind of negative tests are you thinking about for the partial merkle tree? the current tests verify that a) decode(encode(x)) == x for some random x's and b) that the decoded merkle root matches the merkle root as calculated by bitcoin's regular algorithm
1297 2012-11-01 22:24:24 <TD> gotta go
1298 2012-11-01 22:24:27 <TD> we can talk about it tomorrow
1299 2012-11-01 22:24:30 denisx has quit (Remote host closed the connection)
1300 2012-11-01 22:24:31 <sipa> ok
1301 2012-11-01 22:24:34 <TD> basically checking that the tests fail if the data is bad
1302 2012-11-01 22:24:36 TD has quit (Quit: TD)
1303 2012-11-01 22:24:42 denisx has joined
1304 2012-11-01 22:26:07 ibno has quit (Quit: Lämnar)
1305 2012-11-01 22:26:26 ibno has joined
1306 2012-11-01 22:27:02 denisx_ has joined
1307 2012-11-01 22:30:59 has joined
1308 2012-11-01 22:31:01 denisx has quit (Ping timeout: 246 seconds)
1309 2012-11-01 22:31:02 denisx_ is now known as denisx
1310 2012-11-01 22:32:32 TD has joined
1311 2012-11-01 22:32:32 TD has quit (Client Quit)
1312 2012-11-01 22:33:41 <rdponticelli> sipa: Looks like 1971 has indeed solved the relaying bug, but that node keeps orphaning some transactions that are happily accepted by a 0.7.1
1313 2012-11-01 22:34:49 <sipa> rdponticelli: were they started at the same time?
1314 2012-11-01 22:35:12 <sipa> because it's always possible to not have a parent transaction that the claimed orphan depends on
1315 2012-11-01 22:35:52 <sipa> if after a significant time running you notice one significantly has more orphans than the other, there is a problem
1316 2012-11-01 22:36:41 is now known as guruvan|!~guruvan@gateway/tor-sasl/guruvan|guruvan-
1317 2012-11-01 22:37:17 guruvan has quit (Disconnected by services)
1318 2012-11-01 22:37:18 guruvan_ is now known as guruvan
1319 2012-11-01 22:39:40 <rdponticelli> No, they weren't started at the same time, but the number of orphaned on ultraprune seems too high, anyway
1320 2012-11-01 22:40:30 guruvan has quit (Disconnected by services)
1321 2012-11-01 22:41:06 <rdponticelli> sipa: Looks like a consistent behavior, sustained in time
1322 2012-11-01 22:41:19 <sipa> you are running a recent head?
1323 2012-11-01 22:41:25 guruvan has joined
1324 2012-11-01 22:41:35 <sipa> because there was a bug some time ago that caused high number of orphans
1325 2012-11-01 22:42:20 <sipa> https://github.com/sipa/bitcoin/commit/4afc0b54112bd990217a4a6fea145574e5947f09
1326 2012-11-01 22:43:12 Davincij has quit (Read error: Connection reset by peer)
1327 2012-11-01 22:43:17 Davincij15 has joined
1328 2012-11-01 22:43:47 <rdponticelli> Yeah, it's after that bug was solved, now I'm running your pull request 1971
1329 2012-11-01 22:47:25 m00p has quit (Quit: Leaving)
1330 2012-11-01 22:53:27 denisx has quit (Quit: denisx)
1331 2012-11-01 22:53:48 senseless has joined
1332 2012-11-01 22:54:03 Davincij15 has quit (Ping timeout: 265 seconds)
1333 2012-11-01 22:54:24 <senseless> Is anyone aware of an attempt to make a bitcoin based ssl certificate authority system (similar to namecoin, to use in conjunction to have a CA for .BIT)?
1334 2012-11-01 22:54:54 juchmis has quit (Ping timeout: 248 seconds)
1335 2012-11-01 22:55:10 juchmis has joined
1336 2012-11-01 22:55:13 <sipa> how would that work?
1337 2012-11-01 22:55:28 <sipa> CA systems are almost by definition centralized
1338 2012-11-01 22:55:37 <senseless> So is DNS, no?
1339 2012-11-01 22:55:48 <senseless> The only thing I'm having trouble figuring out is.. How would you validate the owner of a domain?
1340 2012-11-01 22:55:48 <sipa> yes
1341 2012-11-01 22:56:06 <sipa> what problem do you want to solve?
1342 2012-11-01 22:56:54 <senseless> I just thought it would be helpful to have SSL certificates for .bit domains, and since no legitimate CA is going to sign a record for an unknown TLD (at least most wouldn't). It just seemed logical to have a merged-mining setup for certificate authority.
1343 2012-11-01 22:57:11 <senseless> I'm not sure if it would be feasible or not. But it relies on a private key system as-is so I don't see why it wouldn't be possible
1344 2012-11-01 22:57:12 Maged has joined
1345 2012-11-01 22:57:47 <Luke-Jr> senseless: it makes sense for namecoin to add that
1346 2012-11-01 22:58:27 <Luke-Jr> eg, just have the SSL server sign its key with the Namecoin key that owns it
1347 2012-11-01 22:58:31 <senseless> Would it be possible to implement in an existing blockchain without re-gensis?
1348 2012-11-01 22:58:46 <senseless> genesis*
1349 2012-11-01 22:58:52 <Luke-Jr> senseless: it's more of something that the webserver needs to implement
1350 2012-11-01 22:58:54 <Luke-Jr> and browsers
1351 2012-11-01 22:59:17 <rdponticelli> sipa: before that fix, orphans were above 50%, now they're above 10%.
1352 2012-11-01 22:59:20 <Luke-Jr> it doesn't require the blockchain at all, except to determine the owner of it (which is already needed for the lookup)
1353 2012-11-01 22:59:47 <sipa> senseless: who would get the root key for .bit?
1354 2012-11-01 23:00:11 copumpkin has joined
1355 2012-11-01 23:01:01 <senseless> Hm, I guess that's a bit more difficult to decentralize
1356 2012-11-01 23:03:34 Davincij15 has joined
1357 2012-11-01 23:03:44 guruvan- has quit ()
1358 2012-11-01 23:05:15 guruvan- has joined
1359 2012-11-01 23:06:00 <senseless> I could see it happening by publishing the public SSL key as a text record in name coin, but that would require a custom browser that knows to look up the SSL key there.
1360 2012-11-01 23:06:14 arij has joined
1361 2012-11-01 23:06:37 arij is now known as Guest91196
1362 2012-11-01 23:06:46 maaku has quit (Quit: maaku)
1363 2012-11-01 23:07:53 <Luke-Jr> senseless: ⦠or just sign the SSL key with the Namecoin owner key, and don't change the Namecoin blockchain
1364 2012-11-01 23:08:37 brwyatt is now known as Away!~brwyatt@brwyatt.net|brwyatt
1365 2012-11-01 23:08:48 <senseless> but every owner key would need to be imported as a CA, no?
1366 2012-11-01 23:08:53 <senseless> Or the browser would toss an error?
1367 2012-11-01 23:09:28 <Luke-Jr> no
1368 2012-11-01 23:09:36 <Luke-Jr> you modify the browser to check for the Namecoin sig
1369 2012-11-01 23:11:19 <senseless> Modification of the browser sounds pretty heavy. I'll think about it some more there's got to be a way to have a single CA for the whole block chain that no one knows which can be imported to the browser so it's not necessary to modify any code.
1370 2012-11-01 23:11:45 <Luke-Jr> senseless: you have to modify the browser no matter how you do it, unless you trust someone with a cert
1371 2012-11-01 23:12:17 <senseless> That's why I was saying, there has to be some way the chain itself could generate a public CA over time
1372 2012-11-01 23:12:23 <senseless> that could be imported to the browser
1373 2012-11-01 23:12:29 <Luke-Jr> I'm pretty sure that's impossible.
1374 2012-11-01 23:15:28 JDuke128 has quit (Quit: Computer has gone to sleep.)
1375 2012-11-01 23:20:49 emryss has joined
1376 2012-11-01 23:21:05 ovidiusoft has quit (Ping timeout: 260 seconds)
1377 2012-11-01 23:22:06 optimator has joined
1378 2012-11-01 23:22:07 optimator has quit (Changing host)
1379 2012-11-01 23:22:07 optimator has joined
1380 2012-11-01 23:22:21 guruvan- has quit (Ping timeout: 276 seconds)
1381 2012-11-01 23:22:33 loltu- has joined
1382 2012-11-01 23:22:41 loltu has quit (Read error: Connection reset by peer)
1383 2012-11-01 23:24:01 optimator_ has quit (Ping timeout: 265 seconds)
1384 2012-11-01 23:26:31 juchmis has quit (Ping timeout: 245 seconds)
1385 2012-11-01 23:26:49 juchmis has joined
1386 2012-11-01 23:28:01 <gmaxwell> senseless: I would be somewhat surprised if the browser integration stuff doublec did couldn't do that.
1387 2012-11-01 23:28:36 <gmaxwell> senseless: the more fundimental problem is that there is no way to have a namecoin resolver that is secure with anything less that a namecoin full node.
1388 2012-11-01 23:32:06 <Luke-Jr> gmaxwell: meh, that's true of Bitcoin too
1389 2012-11-01 23:32:25 guruvan- has joined
1390 2012-11-01 23:32:31 B0g4r7 has joined
1391 2012-11-01 23:33:20 RazielZ has quit (Ping timeout: 246 seconds)
1392 2012-11-01 23:33:28 <sipa> Luke-Jr: except a namecoin full node cannot prune (afaik), while a fully validation bitcoin node can, without compromising any security
1393 2012-11-01 23:33:45 <Luke-Jr> sipa: why can't they pruneâ
1394 2012-11-01 23:34:25 <sipa> or is the name data only stored inside unspent outputs?
1395 2012-11-01 23:34:56 copumpkin has quit (Quit: Computer has gone to sleep.)
1396 2012-11-01 23:34:58 vampireb has joined
1397 2012-11-01 23:36:20 <gmaxwell> Luke-Jr: it's not true. A SPV node at least has basic security.
1398 2012-11-01 23:36:32 <gmaxwell> An SPV namecoin resolver is useless.
1399 2012-11-01 23:37:12 <gmaxwell> (because of stale data and NXDOMAIN are both serious attacks for name resolution and cert fingerprint resolution)
1400 2012-11-01 23:37:42 <gmaxwell> That problem is why I proposed UTXO set committments.
1401 2012-11-01 23:37:46 <forrestv> a tiny namecoin resolver is possible though, if namecoin had implemented the flip-the-chain idea and a DHT were used
1402 2012-11-01 23:37:50 <forrestv> yeah
1403 2012-11-01 23:38:19 veelstewerm has joined
1404 2012-11-01 23:38:51 <gmaxwell> yea, it's soluable. But I don't think I was ever able to actually get anyone who cared to work on namecoin to understand what I was suggesting. And I don't really care about namecoin except as an academic thing.
1405 2012-11-01 23:39:29 <sipa> veelstewerm: is your nick derived from "veel te warm" or from "veelterm" ?
1406 2012-11-01 23:39:29 xorgate has quit (Read error: Connection reset by peer)
1407 2012-11-01 23:39:29 <gmaxwell> (had it instead been premined and the funds raised selling nmc been used to buy the .bit TLD officially, now what would be something)
1408 2012-11-01 23:39:32 <veelstewerm> sipa it's too warm here yes :)
1409 2012-11-01 23:41:21 <veelstewerm> dunno what veelterm would be
1410 2012-11-01 23:41:58 <gmaxwell> veelstewerm: a polynomial of course.
1411 2012-11-01 23:42:39 <veelstewerm> ah yeh.. i was never that good at math
1412 2012-11-01 23:42:46 optimator_ has joined
1413 2012-11-01 23:44:31 <gmaxwell> things like "veel te warm" support my sinking suspicion that all the dutch speakers are really speaking english with a funny accent to prank the tourists.
1414 2012-11-01 23:44:42 optimator has quit (Ping timeout: 256 seconds)
1415 2012-11-01 23:47:07 <sipa> gmaxwell: surely words like: welkom computer vader beest mezelf meester ... will convince you otherwise?
1416 2012-11-01 23:49:16 Zarutian has quit (Quit: Zarutian)
1417 2012-11-01 23:49:32 zveda has joined
1418 2012-11-01 23:53:15 <gmaxwell> hahaha. Exactly.
1419 2012-11-01 23:55:39 <senseless> gmaxwell: it's only 100k isnt it?
1420 2012-11-01 23:55:43 <senseless> i cant remember
1421 2012-11-01 23:56:07 juchmis has quit (Ping timeout: 244 seconds)
1422 2012-11-01 23:56:15 <gmaxwell> senseless: to get the TLD? yes, it was on that order of magnitude in cost.
1423 2012-11-01 23:56:23 <gmaxwell> Which is why it could have been viable.
1424 2012-11-01 23:56:24 <senseless> But wouldnt one person then own the TLD?
1425 2012-11-01 23:56:52 juchmis has joined
1426 2012-11-01 23:56:53 JDuke128 has joined
1427 2012-11-01 23:57:24 <gmaxwell> senseless: presumably a non-profit established for making it faithfully match the namecoin chain would. They'd still be subject to blocking requests and such which they'd have to comply with.. but then users could bootstrap and switch to native resolvers later.. there would be no chicken and egg problem.
1428 2012-11-01 23:57:52 <gmaxwell> (no one cares about .bit names because no sites make you use them, no sites make you use them because no one can resolve them,...)
1429 2012-11-01 23:58:43 <doublec> and no one is developing it so it's stalled
1430 2012-11-01 23:59:00 <doublec> hopefully someone learns from namecoin and whatever happens next is better
1431 2012-11-01 23:59:16 <JDuke128> hello , whats block chain ? its permanent data on bit coin ? its like a database ?
1432 2012-11-01 23:59:51 <senseless> that would be pretty amazing
1433 2012-11-01 23:59:53 <gavinandresen> JDuke128: https://en.bitcoin.it/wiki/Block_Chain