1 2013-01-16 00:44:34 <muhoo> by unicorn, you mean http://unicorn.bogomips.org/ ?
2 2013-01-16 01:20:44 <BlueMatt> sipa: sorry, though now that i think it through (and implement it) I have to revert your ideal multiplier thinggy for the hash function in bloom filters
3 2013-01-16 01:20:53 <BlueMatt> (in some cases it results in worse privacy)
4 2013-01-16 01:21:20 <BlueMatt> ideally - use some set of numbers which, whenever you change the hash count, results in never using a number twice
5 2013-01-16 01:22:15 <gmaxwell> BlueMatt: why? just have everyone choose a random one on connect.
6 2013-01-16 01:24:55 <BlueMatt> well the idea is if you have to recreate the filter, you will probably change the number of elements, so you will change the hash count (often). if you were to change the filter to be larger, using the same seeds for each given hash number (ie 0 - hash count), you may be able to gain some information on what those hashes actually are, not just what they are % filter size, which is not a good thing
7 2013-01-16 01:25:24 <BlueMatt> if you use a different seed per hash number when the hash count changes, you cant, really
8 2013-01-16 01:25:33 <BlueMatt> however, you should still use the same tweak
9 2013-01-16 01:25:45 <BlueMatt> (Im stating this to make sure Im not dreaming, which is always quite possible)
10 2013-01-16 01:27:12 <BlueMatt> ie your goal is always to not divulge any additional info from a filter refresh (obviously) and i think those form a somewhat ideal strategy
11 2013-01-16 01:27:51 <BlueMatt> (for reference, the ballooning issue still appears, though much, much less significantly after the p2pubkey only flags)
12 2013-01-16 02:04:32 <BlueMatt> sipa: because Im lazy, Id appreciate the stuff you wrote to calculate that number...
13 2013-01-16 02:58:54 <gmaxwell> kjj: Aren't you happier with your memory all corrected?
14 2013-01-16 12:50:16 <ThomasV> is there an example of bip32 generated keys?
15 2013-01-16 12:50:43 <ThomasV> (the wiki has an empty Test Vectors section)
16 2013-01-16 12:50:58 <ThomasV> sipa, etotheipi_ ^^
17 2013-01-16 12:52:43 <sipa> ThomasV: i sent some to eto some time ago (with the disclaimer they aren't final)
18 2013-01-16 12:53:18 <ThomasV> yes, I understand they aren't. can you send them to me too?
19 2013-01-16 12:55:32 <ThomasV> sipa: ^
20 2013-01-16 12:55:40 <abracadabra> ACTION sets mode: +b mughat3
21 2013-01-16 13:01:22 <sipa> ThomasV: i don't have them available right now
22 2013-01-16 13:01:32 <ThomasV> ok
23 2013-01-16 13:19:14 <ThomasV> sipa: " Split I into two 32-byte sequences, Il and Ir. " (from the wiki) <-- is this performed on each level?
24 2013-01-16 13:19:48 <sipa> how do you mean?
25 2013-01-16 13:20:21 <ThomasV> well, all the info I have is the wiki page..
26 2013-01-16 13:20:36 <sipa> what do you mean, "level"?
27 2013-01-16 13:20:46 <ThomasV> in CDK there is x_pubkey, which I guess is the pubkeyu derived from I_l
28 2013-01-16 13:21:23 <ThomasV> re level: I mean depth
29 2013-01-16 13:21:45 <sipa> the CDK doesn't know anything about depth in the wallet structure
30 2013-01-16 13:21:48 <sipa> that's a layer on top
31 2013-01-16 13:22:15 <sipa> it's just a function that takes either an extended pubkey or extended private key, and a number, and produces a new extended public key or private key
32 2013-01-16 13:22:49 <sipa> CKD, i mean
33 2013-01-16 13:23:10 <ThomasV> yes, CKD
34 2013-01-16 13:23:25 <sipa> so, i guess the answer is yes to your function
35 2013-01-16 13:23:39 <sipa> the CKD function is the same in every level of the wallet tree
36 2013-01-16 13:24:35 <ThomasV> sipa: to put it differently, CKD involves x_chain and x_pubkey ; are they derived from what is denoted with I_l and I_r in the text?
37 2013-01-16 13:25:21 <ThomasV> so, at each level, I use I_l to create a private key, and x_pubkey is the corresponding public key?
38 2013-01-16 13:25:34 <sipa> i'm not sure where you read that
39 2013-01-16 13:25:55 <ThomasV> well, that's what I'm inferring
40 2013-01-16 13:26:35 <sipa> CKD takes k_par, c_par and n as input, and produces k_n and c_n
41 2013-01-16 13:26:35 <ThomasV> there is x_pubkey in the definition of CKD
42 2013-01-16 13:26:35 <ThomasV> where does x_pubkey come from?
43 2013-01-16 13:26:50 <sipa> CKD((k_par,c_par), n) -> (k_n,c_n)
44 2013-01-16 13:27:23 <sipa> with (k_par,c_par) the extended parent private key, and (k_n,c_n) the n'th derived extended public key
45 2013-01-16 13:27:56 <mbub> anyone help me
46 2013-01-16 13:28:01 <ThomasV> hmm
47 2013-01-16 13:28:07 <ThomasV> do I need to read something more than the wiki page, or is it self sufficient?
48 2013-01-16 13:28:15 <sipa> it should be self sufficient
49 2013-01-16 13:28:35 <sipa> call I = HMAC-SHA512(Key=cpar, Data=kpar*G || n), where kpar*G is the public key corresponding to kpar, || is concatenation, and n is encoded as a 32 bits unsigned integer, most significant byte first.
50 2013-01-16 13:28:35 <sipa> define (kn,cn) = CKD((kpar,cpar),n):
51 2013-01-16 13:28:39 <sipa> Split I into two 32-byte sequences, IL and IR.
52 2013-01-16 13:28:42 <sipa> kn is equal to IL*kpar.
53 2013-01-16 13:28:44 <sipa> cn is equal to IR.
54 2013-01-16 13:28:52 <mbub> can i buy btc with moneybookers
55 2013-01-16 13:28:55 <sipa> so it tells you how to go from kpar, cpar and n to kn and cn
56 2013-01-16 13:29:10 <ThomasV> sipa: thanks. that's better :)
57 2013-01-16 13:29:24 <sipa> ThomasV: ... i just copy pasted the wiki section?
58 2013-01-16 13:29:57 <ThomasV> ACTION hides
59 2013-01-16 13:30:01 <mbub> ANYONE HELP ME?
60 2013-01-16 13:30:11 <ThomasV> sorry, I failed to see that section :P
61 2013-01-16 13:31:02 <ThomasV> mbub: go to #bitcoin
62 2013-01-16 13:31:11 <Jouke_> mbub: wrong channel, go to #bitcoin or #bitcoin-otc
63 2013-01-16 13:32:47 <sipa> ThomasV: did you just miss it?
64 2013-01-16 13:34:11 <ThomasV> sipa: sorry. I read the text of bip 32 weeks ago, and it was clear at that time. but I kept the impression that everything was in the picture, and that's how I forgot to check the text again this time
65 2013-01-16 13:34:29 <ThomasV> ACTION is ashamed
66 2013-01-16 13:34:32 <sipa> haha
67 2013-01-16 13:34:47 <sipa> maybe the picture is a bit confusing, as it doesn't actually define what CKD is
68 2013-01-16 13:34:58 <sipa> it just gives a part :)
69 2013-01-16 13:46:56 <Luke-Jr> hmm
70 2013-01-16 13:47:03 <Luke-Jr> someone is trying to DoS me? <.<
71 2013-01-16 13:47:18 <Luke-Jr> slow flood of microtransactions hitting my wallet
72 2013-01-16 13:54:39 <abracadabra> ACTION tries to ignore mughat3 join spam
73 2013-01-16 13:54:42 <abracadabra> ffs
74 2013-01-16 13:59:41 <BlueMatt> sipa: ping
75 2013-01-16 14:04:09 <sipa> BlueMatt: yes?
76 2013-01-16 14:04:30 <sipa> BlueMatt: if you're not willing to lose privacy, just use a random tweak every time?
77 2013-01-16 14:05:31 <sipa> doing the calculation over for separate sets for different counts would make it 25 times slower... not sure i'm willing to wait that long :)
78 2013-01-16 14:11:04 <BlueMatt> sipa: using a different tweak every time loses more privacy as you can intersect the filters to remove fps previously sent
79 2013-01-16 14:11:26 <sipa> and if you change the number of hashes, you can do that anyway?
80 2013-01-16 14:11:58 <BlueMatt> if Im thinking this through correctly, no
81 2013-01-16 14:12:20 <BlueMatt> as it is now, definately not (though you can potentially figure out to some extent the actual hash values, instead of hash % filter size)
82 2013-01-16 14:12:36 <BlueMatt> if you change the hash num seed, I dont think so either
83 2013-01-16 14:13:15 <sipa> BlueMatt: what is the exact use case, which would currently result in a loss of privacy you consider avoidable?
84 2013-01-16 14:15:15 <BlueMatt> "client" gets a new key/p2pubkey txn added to wallet, has to create a new filter...
85 2013-01-16 14:15:51 <BlueMatt> maybe added 1000 new keys or something, so the filter definately needs new parameters (different size/hash count)
86 2013-01-16 14:17:20 <sipa> BlueMatt: ok, and how will another initialization help?
87 2013-01-16 14:17:53 <BlueMatt> as the client, I dont want to give up any information which allows the "server" to intersect my filters and determine which of my previous fps were actually fp
88 2013-01-16 14:18:11 <BlueMatt> sipa: so that you keep a reasonable fp rate?
89 2013-01-16 14:18:57 <sipa> ok, so give me a function to initialize the hash which doesn't allow that?
90 2013-01-16 14:19:44 <BlueMatt> hmm...no Im wrong, let me think this through when Im not falling asleep
91 2013-01-16 14:19:51 <BlueMatt> there is definitely one
92 2013-01-16 14:19:59 <sipa> BlueMatt: i think not taking the number of hashes into account actually helps
93 2013-01-16 14:20:09 <sipa> as it means you'll be using the same hash results in the new filter
94 2013-01-16 14:20:11 <BlueMatt> yes
95 2013-01-16 14:20:17 <sipa> (and add some, but that's unavoidable)
96 2013-01-16 14:33:39 <TD_> BlueMatt: what perf do you see?
97 2013-01-16 14:34:13 <BlueMatt> TD_: havent explicitly tested that yet, but its reasonably good (< 10 minutes for full sync, no high cpu usage on either side)
98 2013-01-16 14:34:21 <TD_> hm
99 2013-01-16 14:34:23 <TD_> ok
100 2013-01-16 14:41:05 <Diablo-D3> gmaxwell: you know what would be awesome?
101 2013-01-16 14:41:12 <Diablo-D3> opting out of bootstrapping new clients
102 2013-01-16 14:41:40 <sipa> Diablo-D3: you mean -nolisten ?
103 2013-01-16 14:41:54 <sipa> (not *technically* the same, but in practice...)
104 2013-01-16 14:45:15 <gmaxwell> sipa: it's quite close since a node won't advertise itself until it's mostly bootstrapped... so yo should not end up connect to a _new_ one, though you might get an old one that got wiped.
105 2013-01-16 14:47:28 <sipa> gmaxwell: it won't? :o
106 2013-01-16 14:49:17 <gmaxwell> sipa: yea, the announcement requires the node to be past its highest checkpoint.
107 2013-01-16 14:59:42 <waibeth> i would like to send gmaxwell a big "fuck you". thanks
108 2013-01-16 15:20:50 <etotheipi_> ThomasV: https://github.com/etotheipi/BitcoinArmory/blob/newwallet/cppForSwig/EncryptionUtils.cpp#L1098
109 2013-01-16 15:21:46 <etotheipi_> Sipa's test vectors in my own code: https://github.com/etotheipi/BitcoinArmory/blob/newwallet/cppForSwig/EncryptionUtils.cpp#L1098
110 2013-01-16 15:22:58 <ThomasV> etotheipi_: thanks, but I don't see test vectors there?
111 2013-01-16 15:23:21 <etotheipi_> ThomasV: that is the see
112 2013-01-16 15:23:23 <etotheipi_> *seed
113 2013-01-16 15:23:29 <etotheipi_> and then 15 or so levels deep
114 2013-01-16 15:23:40 <etotheipi_> computedPrivEK = HDWalletCrypto().ChildKeyDeriv(computedPrivEK, pow(2,i)-1);
115 2013-01-16 15:23:42 <sipa> ThomasV: http://pastebin.com/dxzWuDLj
116 2013-01-16 15:23:52 <sipa> found them in IRC chatlog :)
117 2013-01-16 15:23:59 <etotheipi_> oh, that's clearer
118 2013-01-16 15:24:04 <ThomasV> sipa: thanks :)
119 2013-01-16 15:24:16 <etotheipi_> wait
120 2013-01-16 15:24:27 <etotheipi_> that's the old one using only 0-index children
121 2013-01-16 15:24:43 <sipa> http://pastebin.com/Tswx5N8Q
122 2013-01-16 15:25:27 <ThomasV> ok
123 2013-01-16 15:27:12 <sipa> ThomasV: also, the base58 output in those tests is sort of hastily-written code, which may have bugs by itself
124 2013-01-16 15:27:23 <ThomasV> lol
125 2013-01-16 15:29:04 <sipa> ThomasV: afaik, etotheipi_ did verify the hex stuff though
126 2013-01-16 15:29:26 <sipa> so having two independent implementations that have the same result sort of gives it credibility :)
127 2013-01-16 15:29:46 <etotheipi_> http://pastebin.com/UJxxa3as
128 2013-01-16 15:29:56 <etotheipi_> that was my output, that matches sipa's (without the base58)
129 2013-01-16 15:30:29 <ThomasV> ok, great
130 2013-01-16 15:39:59 <TD_> wtf
131 2013-01-16 15:40:00 <TD_> this is weir
132 2013-01-16 15:40:01 <TD_> wierd
133 2013-01-16 15:40:23 <TD> suddenly bitcoinj can't send messages to my local testnet3 node anymore. it can't even find the message start bytes.
134 2013-01-16 15:41:10 <BitcoinTurkiye> Hello, I have translated the subtitles of "what is bitcoin?" youtube video to Turkish.
135 2013-01-16 15:41:10 <TD> as usual, i'm an idiot and realize the mistake 2 seconds after moaning about it publicly but 30 minutes after i actually start investigating
136 2013-01-16 15:41:37 <BitcoinTurkiye> Do you know anybody that I should contact so that he can add it to the offical video
137 2013-01-16 15:55:09 <BlueMatt> TD: if you had done it any other way you wouldn't have been a coder :)
138 2013-01-16 15:55:50 <BlueMatt> whois petertodd?
139 2013-01-16 16:13:02 <TD> BlueMatt: retep
140 2013-01-16 16:13:39 <BlueMatt> wat?
141 2013-01-16 16:17:22 <TD> BlueMatt: peter todd is retep on the forums
142 2013-01-16 16:19:02 <BlueMatt> ahh ok
143 2013-01-16 16:19:09 <BlueMatt> ACTION hasnt been to the forum in...months?
144 2013-01-16 16:19:21 <sipa> BlueMatt: lucky you
145 2013-01-16 16:19:30 <BlueMatt> heh
146 2013-01-16 16:42:09 <TD> hearn-macbookpro:src hearn$ ./bitcoind -testnet sendmany "" '{"mfju7uYVdprQ5q2TeDnhMiR3fj3jLDgu4s":0.1}' 0
147 2013-01-16 16:42:10 <TD> {
148 2013-01-16 16:42:10 <TD> "" : 0.10000000
149 2013-01-16 16:42:10 <TD> error: {"code":-6,"message":"Insufficient funds"}
150 2013-01-16 16:42:10 <TD> hearn-macbookpro:src hearn$ ./bitcoind -testnet listaccounts 0
151 2013-01-16 16:42:11 <TD> }
152 2013-01-16 16:42:13 <TD> does anyone know what i'm doing wrong here?
153 2013-01-16 16:42:34 <sipa> TD: perhaps it needs a fee?
154 2013-01-16 16:42:36 <TD> i want to make a transaction that spends an unconfirmed transaction
155 2013-01-16 16:42:40 <TD> ah
156 2013-01-16 16:42:41 <TD> hmm
157 2013-01-16 16:42:42 <TD> good point
158 2013-01-16 16:42:56 <sipa> and you can only spend unconfirmed outputs of they're your own
159 2013-01-16 16:43:05 <TD> i tried reducing the amount but it still didn't send
160 2013-01-16 16:43:08 <sipa> *if
161 2013-01-16 16:43:23 <TD> how do you mean? obviously it has the right signing key
162 2013-01-16 16:43:35 <TD> oh, you mean the tx itself has to be originally from this node?
163 2013-01-16 16:43:36 <sipa> protection against long unconfirming chains
164 2013-01-16 16:43:50 <TD> that'd be why then
165 2013-01-16 16:44:08 <sipa> not node - it has to have an input that is from a key you own
166 2013-01-16 16:44:13 <sipa> iirc
167 2013-01-16 16:44:21 <TD> ok
168 2013-01-16 16:44:28 <TD> same reason
169 2013-01-16 16:44:45 <TD> i'm trying to make a chain of unconfirmed transactions deliberately so i can test my recursive download code
170 2013-01-16 16:45:39 <TD> oh well. i'll do it late.
171 2013-01-16 16:45:40 <TD> later
172 2013-01-16 17:11:35 <gavinandresen> TD: you'd have to modify CWallet::SelectCoins to spend an unconfirmed not-from-you
173 2013-01-16 17:11:59 <gavinandresen> TD: it'd be trivial, though, just change the last SelectCoinsMinConf() to be nTargetValue, 0, 0 .....
174 2013-01-16 17:26:27 <Acciaio> Hi all, good afternoon, I can not send bitcoin with the original client via php json rpc client
175 2013-01-16 17:27:39 <Acciaio> I always get only this error http://www.bitbin.it/ZGIE9gZa that don't tell me nothing
176 2013-01-16 17:28:37 <mbub> ANYONE GOT MONEYBOOKERS
177 2013-01-16 19:09:46 <phantomcircuit> there's definitely some sort of race condition in the initial block download algorithm
178 2013-01-16 19:10:08 <sipa> phantomcircuit: how so?
179 2013-01-16 19:10:14 <phantomcircuit> i have 0.7.2 on a momentovps vm and i have to keep restarting it
180 2013-01-16 19:10:27 <sipa> it's just broken
181 2013-01-16 19:10:29 <phantomcircuit> sipa, the logs are full of orphaned blocks
182 2013-01-16 19:10:39 <sipa> oh, that's normal
183 2013-01-16 19:10:48 <phantomcircuit> yeah but it gets stuck
184 2013-01-16 19:10:51 <sipa> yes
185 2013-01-16 19:10:55 <sipa> i know
186 2013-01-16 19:10:59 <phantomcircuit> ok then
187 2013-01-16 19:11:20 <sipa> if a new block is produced while you're IBDing from another node, it gets confused
188 2013-01-16 19:11:31 <sipa> and often gets stuck until a new block is announced
189 2013-01-16 19:12:50 <mbub> phantomcircuit
190 2013-01-16 19:12:57 <mbub> wud u no were i can get btc with moneybookers
191 2013-01-16 19:13:19 <sipa> mbub: #bitcoin or #bitcoin-otc, not here
192 2013-01-16 19:13:29 <phantomcircuit> mbub, i would be surprised if you could it's trivially charged back
193 2013-01-16 19:24:43 <crabapples1> Looking for information on adding/removing coins from a testnet server I am running to figure out the API... is there a good dev FAQ around someone can point me to?
194 2013-01-16 19:40:13 <crabapples1> how can I add bitcoins to an account on my test server ?
195 2013-01-16 19:47:10 <Luke-Jr> crabapples1: you mean bitcoind accounting?
196 2013-01-16 22:03:39 <Acciaio> how can I log rpc errors with bitcoin client?
197 2013-01-16 22:06:53 <stealth222> uhm, dump them into a text file? :)
198 2013-01-16 22:07:22 <stealth222> not sure what you're asking
199 2013-01-16 22:07:59 <tormenta> major news - greece just proclaimed bitcoin as nation main currency!
200 2013-01-16 22:08:01 <Luke-Jr> he probably wants debug.log to keep a record of every time an error happens
201 2013-01-16 22:08:07 <Luke-Jr> tormenta: orly?
202 2013-01-16 22:08:08 <tormenta> not really ...
203 2013-01-16 22:08:14 <Luke-Jr> figured
204 2013-01-16 22:08:23 <tormenta> hi luke
205 2013-01-16 22:08:55 <stealth222> Luke-Jr: if you specifically want to log errors, it's probably better to do it to a separate file
206 2013-01-16 22:09:27 <Luke-Jr> hi
207 2013-01-16 22:10:35 <tormenta> off from here, stay well and keep up the great job!
208 2013-01-16 23:12:48 <sipa> gavinandresen: present?
209 2013-01-16 23:14:16 <BlueMatt> sipa: yea, I was being very thick (whats new?), and I cant think of a hash function that accomplishes the goal so...Im happy the way it is
210 2013-01-16 23:14:49 <sipa> BlueMatt: np - it was not something i actually thought about before, so good you brought it up i guess
211 2013-01-16 23:15:20 <BlueMatt> gmaxwell: ^
212 2013-01-16 23:16:06 <gribble> The operation succeeded.
213 2013-01-16 23:16:06 <sipa> ;;later tell gavinandresen i've pushed a branch 'benchcpp' (compile with g++ -O2 bench.cpp key.cpp -lcrypto -o bench)... i'd be very interested in runtimes on 32 vs 64 bit on the same machine
214 2013-01-16 23:21:52 <Luke-Jr> sipa: x32 would be nice too
215 2013-01-16 23:22:03 <sipa> x32?
216 2013-01-16 23:24:33 <Luke-Jr> sipa: yes, 32-bit pointers but uses x86_64 opcodes
217 2013-01-16 23:24:52 <Luke-Jr> http://en.wikipedia.org/wiki/X32_ABI
218 2013-01-16 23:24:59 <sipa> won't change much
219 2013-01-16 23:25:13 <sipa> i don't think the openssl code is very pointer-intensive
220 2013-01-16 23:25:14 <Luke-Jr> sipa: I'd expect it to be closer to 64-bit than 32-bit
221 2013-01-16 23:25:33 <sipa> (it's basically a benchmark for openssl's ecdsa verification speed)
222 2013-01-16 23:56:34 <Acciaio> Why I have to do this) -> http://www.bitbin.it/SMyFfvAi ro send payiments from my site?
223 2013-01-16 23:57:20 <sipa> do what in there?
224 2013-01-16 23:58:36 <Acciaio> a lot of cycle to try validating address unencrypting wallet and sendfrom method
225 2013-01-16 23:59:52 <Acciaio> I can't understand how bitcoin client handle rpc connections but it seems that a 10 time he will reply with 500 internal server error and one time with the correct answer
226 2013-01-16 23:59:59 <stealth222> you can validate addresses on the web server end