1 2012-05-01 00:28:14 <jgarzik> sipa: do you think it's worth the effort to run your code, vs. a 'getpeers' JSON-RPC call that returns a randomized list of fresh addresses from the local node?
  2 2012-05-01 00:29:04 <jgarzik> I think your bitcoin-seeder probably produces a "better" list of peers?
  3 2012-05-01 00:29:14 <sipa> my code certainly keeps more statistics
  4 2012-05-01 00:30:10 <sipa> addrman has other priorities, like defense against sybil attacks and bounded memory
  5 2012-05-01 00:31:20 <sipa> also, dnsseed actually tries connecting to all nodes, in several threads
  6 2012-05-01 00:31:36 <BlueMatt> sipa: is it possible to add zone transfer support to eg give a certain subset of good nodes to peer dns resolvers?
  7 2012-05-01 00:31:39 <luke-jr> jgarzik: also, I think bitcoind uses more RAM
  8 2012-05-01 00:31:55 <sipa> while addrman only knows as much as bitcoind gathers, which means reconnecting almost never
  9 2012-05-01 00:35:13 <sipa> my dnsseed instance that has been running for 6 days now, served 150k DNS requests, used about 5h of CPU time, knows about 500k addresses (of which only 28k are not banned), and uses 47MiB of memory
 10 2012-05-01 00:35:40 <gmaxwell> Is banned the word you wanted to use there? If so, why are they banned?
 11 2012-05-01 00:36:01 <sipa> too old, or too low reachability for too long a time
 12 2012-05-01 00:36:33 <sipa> for those, it just remembers "do no retry connecting to this address until time X", while for others actual statistics are being kept
 13 2012-05-01 00:37:20 <sipa> of those 28k, 1500 are "good enough" to be served as DNS results
 14 2012-05-01 00:44:45 <sipa> BlueMatt: i'd need to look into how zone transfer is implemented at the protocol level
 15 2012-05-01 00:46:10 <sipa> hmmm, wumpus's, gavin's and my 0.6.0rc2 builds are all completely different
 16 2012-05-01 00:46:38 <BlueMatt> sipa: afaik, its just a regular lookup, but I think they are required to use tcp connections
 17 2012-05-01 00:46:54 <sipa> right, only UDP is implemented for now :)
 18 2012-05-01 00:46:56 <jgarzik> BlueMatt, sipa: BIND has an excellent dynamic propagation system.  see http://linux.yyz.us/dns/ddns-server.html and http://linux.yyz.us/nsupdate/ for an ancient write-up I did.  Securely signed DNS updates are fully propapgated, and the DNS servers reflect those updates in real time, without needing to use a full zone transfer.
 19 2012-05-01 00:47:29 <sipa> BlueMatt: not sure whether it's worth it, though
 20 2012-05-01 00:47:42 <jgarzik> BIND will not provide "give each query a random selection of addresses" behavior
 21 2012-05-01 00:47:52 <jgarzik> making bitcoin-seeder superior, there
 22 2012-05-01 00:47:58 <BlueMatt> sipa: getting access to a huge array of ddns zone-transfering servers is really easy (and free!)
 23 2012-05-01 00:48:01 <BlueMatt> (was my thinking)
 24 2012-05-01 00:48:25 <jgarzik> yep -- make the dns list easy to mirror, and more people will run seeds
 25 2012-05-01 00:48:32 <sipa> because what you want is another DNS server that serves random subsets from the same database of good nodes
 26 2012-05-01 00:48:46 <jgarzik> (yes, I know about http://sipa/seeds.txt or whatever it is)
 27 2012-05-01 00:48:51 <BlueMatt> sipa: yea, but if you, say, rotate every 2 minutes, its close enough
 28 2012-05-01 00:49:04 <sipa> which could of course use the DNS zone transfer system to communicate with the master
 29 2012-05-01 00:49:23 <sipa> but there is no real reason why it needs to be DNS, as you need custom software anyway
 30 2012-05-01 00:49:27 <sipa> on both sides
 31 2012-05-01 00:49:40 <BlueMatt> sipa: at that point you should just run another bitcoin-seeder on each node imo...
 32 2012-05-01 00:49:40 <gmaxwell> BlueMatt: well, perhaps good enough compared to the background suckyness of things like recursive resolvers that cache forever and/or return only a single A record.
 33 2012-05-01 00:50:01 <jgarzik> sipa: with zone transfers, one can rope in the many free and for-pay services that offer secondary DNS
 34 2012-05-01 00:50:18 <jgarzik> sipa: we provide the zone, and they do the heavy lifting responding to end user queries
 35 2012-05-01 00:50:25 <BlueMatt> sipa: I was just thinking, there are a ton of free ddns server out there, plus I know I have access to one or two paid ones, that have good redundancy, etc...if I could get one or two such networks on a dnsseed, it would be pretty ddos-reliable
 36 2012-05-01 00:50:28 <BlueMatt> vs one server
 37 2012-05-01 00:50:41 <BlueMatt> what jgarzik said
 38 2012-05-01 00:51:17 <BlueMatt> gmaxwell: last I heard on that issue, TD[gone] mentioned that google tracks such bad resolvers and puts pressure on such isps, so they are less common
 39 2012-05-01 00:51:19 <sipa> true, you won't get the same dynamics in the results, but you may get very reliable seeds for almost nothing
 40 2012-05-01 00:51:21 <jgarzik> apropos this stuff...  I am seriously considering incorporating a non-profit for the sole purpose of bitcoin network health
 41 2012-05-01 00:51:37 <jgarzik> run a well connected backone.  run zone xfer servers.  run dns seeds.  network metrics, ...
 42 2012-05-01 00:51:40 <gmaxwell> Yea, I do think it makes sense to have at least one large scale, if not very dynamic dns seed.
 43 2012-05-01 00:51:58 <jgarzik> gmaxwell: bitseed.xf2.org covers that :)
 44 2012-05-01 00:52:14 <BlueMatt> for the record, my current seed just rotates its list every 2 minutes and keeps a list of, I dont remember, like 25? nodes in a list at any time
 45 2012-05-01 00:52:38 <BlueMatt> a more redundant system could be set up to do something similar, though with a different list on different servers, making it even better
 46 2012-05-01 00:53:26 <BlueMatt> in the end, if you rotate often enough, its pretty close to the same result, even if some nodes get occasional spikes
 47 2012-05-01 00:55:12 <sipa> my DNS server uses TTL's of 60 seconds in its replies
 48 2012-05-01 00:55:23 <BlueMatt> same
 49 2012-05-01 00:55:56 <sipa> though obviously if two people simultaneously do a lookup, but are behind different resolvers, they'll get a different subset
 50 2012-05-01 00:56:29 <gmaxwell> well, what the dnsseeds should do is generate a bunch of names.  This will help with the broken resolvers. E.g. Client picks at random one of [0-F].bitseed.xf2.org to query.
 51 2012-05-01 00:56:48 <gmaxwell> BlueMatt: lots of people used powerdns for GSLB responses that basically look like this.
 52 2012-05-01 00:57:19 <BlueMatt> yea, but then you would actually have to run your own servers vs piggy backing on some free or cheap ddns service
 53 2012-05-01 00:57:44 <sipa> you can do zone transfer of every subdomain
 54 2012-05-01 00:58:00 <sipa> move the randomization from the server to the client
 55 2012-05-01 00:58:01 <BlueMatt> but, yea the subdomain idea is better
 56 2012-05-01 00:58:03 <jgarzik> gmaxwell: interesting idea
 57 2012-05-01 00:58:51 <gmaxwell> You don't want too much client randomization because you'll defeat caching.
 58 2012-05-01 00:58:54 <sipa> my DNS server already answers for arbitrary subdomains anyway
 59 2012-05-01 00:59:01 <jgarzik> I would recommend a higher TTL, as <= 60 occasionally has problems.  I think Google uses ~170?
 60 2012-05-01 00:59:34 <jgarzik> it's not like the same client will be making repeated requests, so it's mainly recursive caches that will pay attention anyway
 61 2012-05-01 01:00:12 <BlueMatt> we dont wanna be too big a dick to isps and their caching tough ;)
 62 2012-05-01 01:01:51 <luke-jr> jgarzik: way too many dynamic DNS sites  use 60 for it to have issues
 63 2012-05-01 01:02:16 <BlueMatt> most ddns sites Ive seen have min (and sometimes default) set to 60
 64 2012-05-01 01:06:10 <sipa> any idea how frequent such secondary servers try to update?
 65 2012-05-01 01:06:38 <BlueMatt> depends on the service, but you can send a notify to force them to refetch
 66 2012-05-01 01:06:54 <BlueMatt> and you can set the default refetch in the SOA record
 67 2012-05-01 01:06:54 <sipa> i'm not sure they'll like a update every minute :)
 68 2012-05-01 01:07:48 <BlueMatt> the ones Ive used always follow the soa (within reason), but will often ignore notifies
 69 2012-05-01 01:08:07 <BlueMatt> (the paid ones usually allow notifies)
 70 2012-05-01 01:09:54 <sipa> now, one DNS seed response has 28 results, have 256 subdomains and you've got a nice coverage of the entire "good set"
 71 2012-05-01 01:10:02 <jgarzik> sipa: many support push notification
 72 2012-05-01 01:10:12 <jgarzik> that's built into BIND (see above links)
 73 2012-05-01 01:10:56 <jgarzik> sipa: thus, you choose the secondary server update frequency
 74 2012-05-01 01:10:57 <sipa> TTL of one hour :(
 75 2012-05-01 01:11:24 <jgarzik> sipa: the records are updated every few months, at present, as noted above :)  3600 is harmless due to that...
 76 2012-05-01 01:12:01 <sipa> combined with 256 subdomains (and clients choosing a random prefix), i think there is little reason to push more frequently than every 5 minutes
 77 2012-05-01 01:12:12 <jgarzik> bah.  gonna have to build an HTML form-reading robot, as dnspark's DDNS API only supports one A record per hostname
 78 2012-05-01 01:12:20 <jgarzik> sipa: agreed
 79 2012-05-01 01:13:21 <jgarzik> 16 subdomains is fine too IMO
 80 2012-05-01 01:13:34 <sipa> 42
 81 2012-05-01 01:14:04 <jgarzik> 16 == 0x0F
 82 2012-05-01 01:14:11 <sipa> eh no, 0x10 :)
 83 2012-05-01 01:14:27 <jgarzik> i.e. [0-F].bitseed.xf2.org as gmaxwell noted
 84 2012-05-01 01:14:35 <jgarzik> 16 total possibilities
 85 2012-05-01 01:17:30 <sipa> jgarzik: my aim is to make sure the entire good set is server somewhere at every point in time, to prevent focusing connection attemts to a small subsets
 86 2012-05-01 01:18:01 <sipa> currently, that is no issue (yet), there is only a connection attempt every few seconds
 87 2012-05-01 01:18:24 <sipa> s/server/served/
 88 2012-05-01 01:19:58 <sipa> 256 subdomains would be an AXFR of around 100KiB
 89 2012-05-01 01:20:48 <gmaxwell> Thats a bit much.
 90 2012-05-01 01:21:40 <gmaxwell> Besides, its best if the names are non-overlapping in their results and you don't actually want to divide your dataset of good nodes 256 ways.
 91 2012-05-01 01:22:28 <gmaxwell> (best becase if the user really is behind some stupid resolver that only gives one result it would be unforuate to get the same one result multiple times)
 92 2012-05-01 01:23:41 <sipa> well, 1500 good nodes, 28 replies per A query -> 1500/28=53
 93 2012-05-01 01:24:39 <sipa> but of course the worst case we aim to (many connections attempts per second) deal with, most likely means that also the number of good nodes will be very different from now
 94 2012-05-01 01:37:09 <sipa> what about this: always have 256 subdomains, but implementations are free to make some or most to be CNAMEs of others
 95 2012-05-01 01:37:47 <jgarzik> 256 is too many
 96 2012-05-01 01:38:00 <sipa> that way it's scalable without meeding to roll out chamges to clients
 97 2012-05-01 01:38:12 <jgarzik> it's plenty scalable as is
 98 2012-05-01 01:38:19 <jgarzik> with 0-f
 99 2012-05-01 01:38:49 <sipa> 64k ought to be enough for everyone
100 2012-05-01 01:41:32 <sipa> its quite cheap in terms of zone transfer size to add a few CNAMEd subdomains
101 2012-05-01 01:42:27 <jgarzik> I don't want to piss off ISPs by having this huge DNS tree always in RAM, frequently queried
102 2012-05-01 01:43:30 <sipa> it hardly costs any RAM to add a few CNAMEs
103 2012-05-01 01:43:50 <sipa> though i see your point, and 256 may be too much
104 2012-05-01 01:49:21 <BTC_Bear> ;;bc,nethash
105 2012-05-01 01:49:22 <gribble> 12981.905162378183
106 2012-05-01 02:21:54 <jgarzik_> bah, stupid X.org
107 2012-05-01 02:24:53 <BlueMatt> yay Xorg, the source of all your linux problems since 2004
108 2012-05-01 02:25:07 <BlueMatt> wait thats no where near right
109 2012-05-01 02:25:10 <BlueMatt> since 1984
110 2012-05-01 02:33:32 <seco> BlueMatt: http://wayland.freedesktop.org/architecture.html
111 2012-05-01 02:33:40 <seco> but i have no clue how far they are
112 2012-05-01 02:33:47 <BlueMatt> seco: not really /that/ far
113 2012-05-01 02:33:54 <BlueMatt> maybe in a few years it will be usable
114 2012-05-01 02:33:55 <BlueMatt> afaik
115 2012-05-01 02:34:07 <seco> *hoping*
116 2012-05-01 02:34:23 <BlueMatt> yea, I hope they get there
117 2012-05-01 02:35:22 <gmaxwell> seco: HAHAH
118 2012-05-01 02:36:04 <seco> lemme in my dreams gmaxwell :p
119 2012-05-01 02:36:06 <gmaxwell> Wayland: Brought to you by the same cultural background thats made it impossible to disable suspend on lid close in modern desktop enviroments.
120 2012-05-01 02:38:21 <seco> hmm sorry you need to give me some hint
121 2012-05-01 02:38:56 <seco> i were always able to get what i needed by gconf, yet :)
122 2012-05-01 02:41:27 <BlueMatt> seco: yea, but you had to go into gconf to do it...
123 2012-05-01 02:42:28 <BlueMatt> and yea...recent gnome3/ubuntu unity you-dont-ever-need-to-customize-this mentality is really quite terrible...
124 2012-05-01 02:44:08 <seco> maybe thats the reason i still block gnome3: Need productivity
125 2012-05-01 02:47:10 <BlueMatt> and moving to a debian-testing-based distro has done wonders for my boot time...
126 2012-05-01 03:03:21 <freewil> tus
127 2012-05-01 03:03:43 <BlueMatt> tux
128 2012-05-01 03:04:40 <freewil> ha.. that was the end of me trying to type git status
129 2012-05-01 03:05:42 <freewil> try mux too
130 2012-05-01 03:05:57 <BlueMatt> meh, I prefer to pay homage to the penguin king
131 2012-05-01 03:06:19 <BlueMatt> ...nvm
132 2012-05-01 03:10:35 <weex> if you wanted to make a blockchain where some % of mined coins were assigned to an organization, how might that be done? ( some context: http://forum.open-org.com/q92/#ans453 )
133 2012-05-01 03:12:57 <freewil> whats a profitpoint
134 2012-05-01 03:13:11 <weex> it's their version of a share
135 2012-05-01 03:13:27 <weex> gives their users/members a piece of profits or revenues
136 2012-05-01 03:13:58 <freewil> for a specifc business?
137 2012-05-01 03:14:20 <weex> yes, the business is some sort of paid q&a site for legal questions
138 2012-05-01 03:14:41 <freewil> oh
139 2012-05-01 03:16:01 <freewil> well i dont know much about the bitcoin scripting, but i guess you could make a fork of bitcoin where there was always a percentage of a tx going to a single address
140 2012-05-01 03:16:24 <BlueMatt> see: solidcoin
141 2012-05-01 03:16:29 <freewil> although i would think youd want it to be more than a single address to protect against that one address being attacked
142 2012-05-01 03:16:30 <BlueMatt> (they do that...)
143 2012-05-01 03:16:38 <freewil> really?
144 2012-05-01 03:16:39 <weex> no kidding
145 2012-05-01 03:16:44 <BlueMatt> yea...
146 2012-05-01 03:16:56 <BlueMatt> dont read their code though
147 2012-05-01 03:17:01 <BlueMatt> or you cant code on bitcoin anymore
148 2012-05-01 03:17:10 <BlueMatt> (their very restrictive license is kinda...f'd up)
149 2012-05-01 03:17:50 <weex> freewil: re the single address, yes i think that's too risky can a deterministic wallet be any better?
150 2012-05-01 03:18:12 <weex> either way the org would have some secret to protect
151 2012-05-01 03:18:21 <BlueMatt> use a p2sh address
152 2012-05-01 03:20:10 <BlueMatt> (this kind of problem is one of their most important uses)
153 2012-05-01 03:20:10 <weex> for the purpose of having m-of-n keys required to spend?
154 2012-05-01 03:20:15 <BlueMatt> yea
155 2012-05-01 03:22:11 <weex> ok well that's significant, i think they're a ways off from doing anything like this but i wanted to check feasibility
156 2012-05-01 03:22:50 <BlueMatt> its feasible, as long as you can protect a secret
157 2012-05-01 03:22:58 <BlueMatt> or n secret
158 2012-05-01 03:22:59 <BlueMatt> s
159 2012-05-01 03:23:16 <weex> i can protect n but not sure about m :P
160 2012-05-01 03:23:36 <BlueMatt> heh
161 2012-05-01 03:24:04 <freewil> ok, so lets say you have an organization with 5 people (keys)
162 2012-05-01 03:24:50 <freewil> so you can create an address where someone can send coins where it requires 3-of-the-5 keys to spend?
163 2012-05-01 03:24:58 <BlueMatt> yep
164 2012-05-01 03:25:30 <freewil> so how would you combine the keys together, bitcoind importprivkey?
165 2012-05-01 03:25:52 <BlueMatt> the spending infrastructure is still kinda a wip...
166 2012-05-01 03:26:05 <freewil> i see
167 2012-05-01 03:26:07 <BlueMatt> though Ive been gone for a few months, so it probably works now
168 2012-05-01 03:26:51 <freewil> there is the new rpc command addmultisigaddress
169 2012-05-01 03:26:58 <weex> is a transaction broadcast that has less than n secrets for the others to sign?
170 2012-05-01 03:27:00 <freewil> im not sure if it's available on livenet yet though
171 2012-05-01 03:27:16 <BlueMatt> weex: not through the network, you have to broadcast it among peers manually
172 2012-05-01 03:27:21 <BlueMatt> (that is the part thats still kinda wip)
173 2012-05-01 03:27:31 <BlueMatt> freewil: oh, you can spend them/mine them/etc on livenet
174 2012-05-01 03:27:35 <BlueMatt> /mainnet
175 2012-05-01 03:28:33 <freewil> hmm cool
176 2012-05-01 03:30:07 <weex> now i had n and m screwed up so if n is "all the possible keys"...
177 2012-05-01 03:30:22 <weex> could there be an operation to change that address using say n-1?
178 2012-05-01 03:30:36 <BlueMatt> what do you mean change the address?
179 2012-05-01 03:30:42 <BlueMatt> once the address is set, it requires m of n
180 2012-05-01 03:30:43 <BlueMatt> period
181 2012-05-01 03:30:53 <weex> that way if one of the keys were known to be compromised the whole set could be replaced
182 2012-05-01 03:31:17 <weex> i know this is way off what the software does now
183 2012-05-01 03:31:37 <BlueMatt> in the current method of p2sh, no
184 2012-05-01 03:31:45 <BlueMatt> could it ever be done...not really
185 2012-05-01 03:32:05 <BlueMatt> you can never depend on historical data to verify a tx's validity (except for the inputs of the given tx)
186 2012-05-01 03:32:08 <BlueMatt> or should never
187 2012-05-01 03:33:02 <weex> well like for this to work at all, the software would have an address hardcoded to start or be set to look for a specific address-setting transaction
188 2012-05-01 03:33:28 <BlueMatt> you could, but then thin clients would never work
189 2012-05-01 03:33:32 <BlueMatt> or be less secure
190 2012-05-01 03:34:19 <weex> oh because any transaction could in theory be using inputs from the "company"
191 2012-05-01 03:35:34 <weex> except you said except
192 2012-05-01 03:35:59 <BlueMatt> I mean, you could do it that way
193 2012-05-01 03:36:03 <BlueMatt> it would just get more ugly
194 2012-05-01 03:36:09 <BlueMatt> and make tx verification take even longer
195 2012-05-01 03:36:16 <BlueMatt> and you would have to add a new db for address updates
196 2012-05-01 06:22:13 <dusty__> I'm working on this transaction in testnet: http://blockexplorer.com/testnet/tx/a17b21f52859ed326d1395d8a56d5c7389f5fc83c17b9140a71d7cb86fdf0f5f#i584828
197 2012-05-01 06:22:42 <dusty__> I've evaluated the script "by hand" and it should not validate
198 2012-05-01 06:22:57 <dusty__> so why it's been accepted in block #30301 ?
199 2012-05-01 06:23:30 <dusty__> it's a very strange script: 3 OP_ROLL OP_DUP 2 OP_GREATERTHANOREQUAL OP_VERIFY 3 OP_ROLL OP_SIZE OP_NOT OP_OVER OP_HASH160 80677c5392220db736455533477d0bc2fba65502 OP_EQUAL OP_BOOLOR OP_VERIFY 3 OP_ROLL OP_SIZE OP_NOT OP_OVER OP_HASH160 02d7aa2e76d9066fb2b3c41ff8839a5c81bdca19 OP_EQUAL OP_BOOLOR OP_VERIFY 3 OP_ROLL OP_SIZE OP_NOT OP_OVER OP_HASH160 10039ce4fdb5d4ee56148fe3935b9bfbbe4ecc89 OP_EQUAL OP_BOOLOR OP_VERIFY 3 OP_CHECKMULTISIG
200 2012-05-01 06:23:47 <dusty__> but it gives false with this scriptSig: 0 3046022100d73f633f114e0e0b324d87d38d34f22966a03b072803afa99c9408201f6d6dc6022100900e85be52ad2278d24e7edbb7269367f5f2d6f1bd338d017ca460008776614401 3044022071fef8ac0aa6318817dbd242bf51fb5b75be312aa31ecb44a0afe7b49fcf840302204c223179a383bb6fcb80312ac66e473345065f7d9136f9662d867acf96c12a4201 2
201 2012-05-01 06:23:48 <dusty__> 048c006ff0d2cfde86455086af5a25b88c2b81858aab67f6a3132c885a2cb9ec38e700576fd46c7d72d7d22555eee3a14e2876c643cd70b1b0a77fbf46e62331ac 04b68ef7d8f24d45e1771101e269c0aacf8d3ed7ebe12b65521712bba768ef53e1e84fff3afbee360acea0d1f461c013557f71d426ac17a293c5eebf06e468253e 0
202 2012-05-01 06:24:08 <dusty__> so it should not be added in the block
203 2012-05-01 06:24:25 <dusty__> anyone has some clue to give me?
204 2012-05-01 06:27:55 <genjix> dusty__: do you have the raw script dump?
205 2012-05-01 06:28:08 <genjix> sorry raw tx dump
206 2012-05-01 06:29:04 <dusty__> I can get the dump of the script, anyway the version I'm working on is equal to the one you see in blockexplorer
207 2012-05-01 06:30:08 <dusty__> so I suppose I'm getting the data right
208 2012-05-01 06:32:02 <Joric> dusty__, what are you using for building transactions
209 2012-05-01 06:33:08 <Joric> i'm trying to write tx editor here http://brainwallet.org/#transactions early alpha but working
210 2012-05-01 06:35:41 <Joric> if you paste hex it'll convert it automatically
211 2012-05-01 06:47:02 <dusty__> Joric: I don't have the raw bytes but we can get everything from the block explorer, what do you need exactly?
212 2012-05-01 06:47:22 <dusty__> genjix: maybe it's possible to use libbitcoin to get the raw data?
213 2012-05-01 06:48:01 <Joric> dusty__, you may paste json as well )
214 2012-05-01 06:48:06 <dusty__> the lib I'm working with parses the bytes while reading them from the net
215 2012-05-01 06:48:20 <dusty__> full json is here: http://blockexplorer.com/testnet/rawtx/a17b21f52859ed326d1395d8a56d5c7389f5fc83c17b9140a71d7cb86fdf0f5f
216 2012-05-01 06:48:54 <Joric> whoa that's a one strange transaction
217 2012-05-01 06:49:01 <dusty__> Joric: yes
218 2012-05-01 06:49:28 <dusty__> Joric: the problem is that it should evaluate to false, at least what I'm getting
219 2012-05-01 06:50:12 <genjix> dusty__: yeah i'll get it later. it's an interesting tx i want to examine
220 2012-05-01 06:50:58 <dusty__> I can setup a document with all the evaluation and the stack data, step by step, if you want
221 2012-05-01 06:51:19 <genjix> nah it's easier if i just get the raw dump
222 2012-05-01 06:51:28 <dusty__> it's not so complex to do the evaluation by hand
223 2012-05-01 06:52:34 <dusty__> genjix: I've took a look at libbiitcoin and it seems to me that it does not implements all the opcodes, so you can't evaluate it, yet
224 2012-05-01 06:52:57 <genjix> yep it doesn't have the obscure opcodes like OP_ROLL
225 2012-05-01 06:55:18 <dusty__> this is the stack before OP_ROLL: http://pastebin.com/JuzSuTJD
226 2012-05-01 06:59:00 <dusty__> and this is the stack before executing OP_GREATERTHANOREQUAL : http://pastebin.com/vCe7EA3r
227 2012-05-01 07:00:36 <dusty__> up to the second OP_VERIFY everything should be ok because everything seems fine: the result of HASH160 compares correctly with the values provided by the script
228 2012-05-01 07:02:48 <genjix> dusty__: why are you evaluating this output?
229 2012-05-01 07:03:20 <genjix> just fyi, are you using the input of the next tx, right?
230 2012-05-01 07:03:54 <genjix> so output 1 of a17b21f52859ed326d1395d8a56d5c7389f5fc83c17b9140a71d7cb86fdf0f5f
231 2012-05-01 07:03:57 <dusty__> this is the stack before executing second OP_EQUAL: http://pastebin.com/irzhrkdN
232 2012-05-01 07:04:09 <genjix> dusty__: this output is unspent
233 2012-05-01 07:04:29 <dusty__> genjix: I'm validating block #30301 that has tx a17b21f52859ed326d1395d8a56d5c7389f5fc83c17b9140a71d7cb86fdf0f5f
234 2012-05-01 07:04:46 <dusty__> that uses this previous ouput: http://blockexplorer.com/testnet/tx/87abda4755e492de6149affbfc67d42a367f76c166c6bc31c8dfb916f74f66bb#o1
235 2012-05-01 07:04:50 <genjix> ok good
236 2012-05-01 07:04:56 <dusty__> the scriptpubkey is the same
237 2012-05-01 07:04:58 <genjix> just checking :)
238 2012-05-01 07:05:32 <dusty__> i've checked myself a hundred times because I'm banging my head on that since yesterday :)
239 2012-05-01 07:06:27 <dusty__> so up to the second OP_VERIFY everything seems fine
240 2012-05-01 07:08:47 <genjix> i'm checking
241 2012-05-01 07:09:11 <dusty__> thank you :)
242 2012-05-01 07:10:44 <genjix> well to be fair i'm interested in this unusual tx :)
243 2012-05-01 07:12:47 <dusty__> genjix: that what I was counting on :-D
244 2012-05-01 07:16:25 <genjix> 15k blocks
245 2012-05-01 07:17:11 <dusty__> that's fast... validated?
246 2012-05-01 07:17:36 <genjix> testnet blocks
247 2012-05-01 07:20:26 <dusty__> I suppose you was telling me how many testnet blocks have you already downloaded
248 2012-05-01 07:21:22 <dusty__> if you did 15k in such a short amount of time I suppose they were downloaded without validating them
249 2012-05-01 07:22:30 <genjix> 0100000001845ad165bdc0f9b5829cf5a594c4148dfd89e24756303f3a8dabeb597afa589b010000008b483045022063c233df8efa3d1885e069e375a8eabf16b23475ef21bdc9628a513ee4caceb702210090a102c7b602043e72b34a154d495ac19b3b9e42acb962c399451f2baead8f4c014104b38f79037ad25b84a564eaf53ede93dec70b35216e6682aa71a47cefa2996ec49acfbb0a8730577c62ef9a7cc20c740aaaaee75419bef9640a4216c2b49c42d3ffffffff02000c022900000000434104c08c0a71ccbe838403e3870aa1ab871b0ab3a6014b0ba41f6df2b9aefea73134
250 2012-05-01 07:22:38 <genjix> that's the first one
251 2012-05-01 07:22:48 <genjix> mr 87a
252 2012-05-01 07:23:59 <dusty__> ok, in block #30297
253 2012-05-01 07:29:09 <genjix> dusty__: you mean parse?
254 2012-05-01 07:29:32 <dusty__> no, I mean to get the raw data
255 2012-05-01 07:30:08 <dusty__> so to save it to a file for example, for later doing batch tests without the need to connect to other hosts
256 2012-05-01 07:30:20 <genjix> like this:
257 2012-05-01 07:32:03 <genjix> blockchain_ptr chain = ...; chain->fetch_transaction(hash_from_pretty("..."), handle_tx); ...   void handle_tx(const std::error_code& ec, const message::transaction& tx) { if (ec) return; satoshi_exporter ex; std::cout << pretty_hex(ex.save(tx)) << std::endl; }
258 2012-05-01 07:32:34 <dusty__> ah ok, I thougt it was possible to do it via commandline
259 2012-05-01 07:32:42 <genjix> you can use python
260 2012-05-01 07:33:03 <genjix> (essentially same)
261 2012-05-01 07:33:21 <dusty__> ok, thanks
262 2012-05-01 07:37:22 <genjix> 0100000001bb664ff716b9dfc831bcc666c1767f362ad467fcfbaf4961de92e45547daab8701000000fd190100493046022100d73f633f114e0e0b324d87d38d34f22966a03b072803afa99c9408201f6d6dc6022100900e85be52ad2278d24e7edbb7269367f5f2d6f1bd338d017ca460008776614401473044022071fef8ac0aa6318817dbd242bf51fb5b75be312aa31ecb44a0afe7b49fcf840302204c223179a383bb6fcb80312ac66e473345065f7d9136f9662d867acf96c12a42015241048c006ff0d2cfde86455086af5a25b88c2b81858aab67f6a3132c885a2cb9ec38e70057
263 2012-05-01 07:37:29 <genjix> second
264 2012-05-01 07:55:43 <dusty__> genjix: are you implementing the missing opcodes to check it out? :)
265 2012-05-01 07:57:12 <genjix> dusty__: yep
266 2012-05-01 07:58:48 <Diablo-D3> remember to vote: https://bitcointalk.org/index.php?topic=78052.0
267 2012-05-01 10:07:55 <dusty__> genjix: any news?
268 2012-05-01 10:12:09 <genjix> dusty__: oh i got distracted. back to it.
269 2012-05-01 10:22:38 <genjix> dusty__: k so it failed for me but maybe i got an opcode wrong
270 2012-05-01 10:24:08 <fred-fri> hey guys, im starting an open source messaging service similar to bitcoin, would be very glad for any feedback, input or help http://sourceforge.net/p/bitmessage/wiki/Home/
271 2012-05-01 10:27:00 <fred-fri> goin afk for a while, brb
272 2012-05-01 11:18:56 <dusty__> genjix: if I can help debug the opcodes pls ask
273 2012-05-01 11:18:58 <t7> Fred-fri how does it resist spam?
274 2012-05-01 11:19:11 <t7> it uses a difficulty like bitcoin?
275 2012-05-01 11:19:24 <dusty__> have you checked out my "by hand" evaluation?
276 2012-05-01 11:20:43 <dusty__> Here is the crucial part: http://pastebin.com/vCe7EA3r
277 2012-05-01 11:21:17 <dusty__> if we catch a bug in the official client it will be fun ;)
278 2012-05-01 11:33:37 <genjix> dusty__: http://pastebin.com/jTgmfz3H
279 2012-05-01 11:56:10 <dusty__> genjix: with [] you mean zero?
280 2012-05-01 11:57:30 <dusty__> ok so I've a bug in the op_roll handling
281 2012-05-01 12:02:50 <genjix> dusty__: yep OP_FALSE/OP_0 pushes a nothing onto the stack
282 2012-05-01 12:03:04 <sipa> dusty__: gavin recently asked for script test cases somewhere
283 2012-05-01 12:04:12 <sipa> dusty__: https://bitcointalk.org/index.php?topic=77422.msg860686#msg860686
284 2012-05-01 12:10:13 <dusty__> sipa: thanks for the tip
285 2012-05-01 12:28:44 <dusty__> genjix: so op_size of 0 is 0
286 2012-05-01 12:29:32 <dusty__> but 0 is not the empty string, why not discriminate between them?
287 2012-05-01 12:30:12 <dusty__> or maybe the size of a constant is always zero...?
288 2012-05-01 12:30:24 <genjix> dusty__: OP_0 is [] not [0]
289 2012-05-01 12:30:33 <genjix> (if that makes sense)
290 2012-05-01 12:31:28 <dusty__> well that's a problem, for me
291 2012-05-01 12:31:35 <dusty__> i translated OP_0 with 0
292 2012-05-01 12:32:11 <dusty__> I suppose I'll have some refactoring to do
293 2012-05-01 12:32:14 <dusty__> thanks
294 2012-05-01 12:33:13 <Diapolo> hello
295 2012-05-01 12:33:13 <genjix> nw
296 2012-05-01 12:37:52 <dusty__> genjix: but I see another problem
297 2012-05-01 12:38:02 <dusty__> you made OP_NOT [] = []
298 2012-05-01 12:38:20 <dusty__> but the specs indicated that the result should be 0
299 2012-05-01 12:38:32 <dusty__> from the wiki "If the input is 0 or 1, it is flipped. Otherwise the output will be 0."
300 2012-05-01 12:39:56 <dusty__> genjix: sorry, I misread, you put 1, not []
301 2012-05-01 12:40:00 <dusty__> so I'm a bit puzzled
302 2012-05-01 12:40:12 <genjix> wiki is wrong
303 2012-05-01 12:40:28 <genjix> OP_NOT tests whether it equals big_number(0)
304 2012-05-01 12:40:32 <genjix> CBigNum(0)
305 2012-05-01 12:41:36 <genjix> ah worded that way it isn't wrong
306 2012-05-01 12:41:43 <genjix> just a little convoluted :)
307 2012-05-01 12:43:22 <sipa> genjix: sure that 0 OP_NOT is equal to 0 ?
308 2012-05-01 12:45:11 <dusty__> sipa: I've your same doubt
309 2012-05-01 12:45:38 <sipa> genjix: bitcoind's code casts the lasts number on the stack to a bignum, and compares that to 0
310 2012-05-01 12:46:09 <sipa> afaik [] would be cast to CBigNum(0), which will compare equal to 0
311 2012-05-01 12:46:46 <genjix> you mean OP_0 or [0]?
312 2012-05-01 12:47:20 <sipa> all of them
313 2012-05-01 12:48:16 <genjix> it might do. i'd have to check.
314 2012-05-01 12:48:16 <sipa> OP_0 ([]) and [0x00] would both be cast to CBigNum(0)
315 2012-05-01 12:48:27 <genjix> ah right.
316 2012-05-01 12:48:44 <genjix> yeah what i meant for dusty__ is how is looks on the stack
317 2012-05-01 12:48:52 <luke-jr> I don't get why 1173 has ACKs
318 2012-05-01 12:49:04 <genjix> (he was asking about the []s in my paste)
319 2012-05-01 12:49:10 <genjix> http://pastebin.com/jTgmfz3H
320 2012-05-01 12:52:00 <luke-jr> dooglus: poke?
321 2012-05-01 13:09:34 <dusty__> ok I finally got to the checkmultisig
322 2012-05-01 13:09:41 <dusty__> and not it's it that's failing
323 2012-05-01 13:09:59 <dusty__> because one of the three public keys is empty...
324 2012-05-01 13:10:21 <dusty__> that script is very rich in corner cases :)
325 2012-05-01 13:16:54 <genjix> dusty__: thanks for that. tell me if you see any more of those http://gitorious.org/libbitcoin/libbitcoin/commit/6ee6236fc7a0706079e8992eaa4ece82227f8fd7/diffs/6319e2f5062f024858153446a6854e3609107ed0
326 2012-05-01 13:18:35 <dusty__> genjix: thank to you for your support :)
327 2012-05-01 13:19:06 <dusty__> will you be online for some time? I've some conceirn regarding the checkmultisig implementation... :-/
328 2012-05-01 13:19:15 <genjix> sure
329 2012-05-01 13:20:36 <[Tycho]> dusty__: are you sure it's a script ?
330 2012-05-01 13:21:50 <dusty__> [Tycho]: yes, of course, here is the link: http://blockexplorer.com/testnet/tx/a17b21f52859ed326d1395d8a56d5c7389f5fc83c17b9140a71d7cb86fdf0f5f#i584828
331 2012-05-01 13:21:52 <Diapolo> wumpus: are you on?
332 2012-05-01 13:23:34 <[Tycho]> Oh, now I see a similar one, redeemed.
333 2012-05-01 13:24:13 <dusty__> yes, the script is the same
334 2012-05-01 13:39:27 <dusty__> genjix: how do you handle the verification with an empty public key?
335 2012-05-01 13:41:40 <genjix> check signature will fail i guess
336 2012-05-01 13:44:44 <genjix> yeah will fail
337 2012-05-01 13:45:13 <dusty__> genjix: but the script before is valid, so how can that be?
338 2012-05-01 13:45:50 <dusty__> the first public key to test of the three provided is empty
339 2012-05-01 13:46:22 <gavinandresen> only 2 of the 3 need to succeed
340 2012-05-01 13:46:54 <gavinandresen> (if I'm remembering that CHECKMULTISIG correctly)
341 2012-05-01 13:47:26 <dusty__> gavinandresen: thanks, I'll study better the specs then
342 2012-05-01 13:47:58 <gavinandresen> did somebody write CHECKMULTISIG specs?  The only real spec is the code last I checked....
343 2012-05-01 13:48:33 <gavinandresen> I did write unit tests for CHECKMULTISIG that might help (I tried to exercise the edge cases)
344 2012-05-01 13:49:17 <gavinandresen> sipa: do you have time to do a gitian rc2 build?
345 2012-05-01 13:49:27 <sipa> gavinandresen: yes, I did one
346 2012-05-01 13:49:29 <gribble> New news from bitcoinrss: sipa opened pull request 1174 on bitcoin/bitcoin <https://github.com/bitcoin/bitcoin/pull/1174>
347 2012-05-01 13:49:37 <genjix> checkmultisig is not that odd though: start with pubkeys and signatures. keep advancing (never go back) running check signature as you go along
348 2012-05-01 13:49:39 <sipa> but the build doesn't match your or wumpus's at all
349 2012-05-01 13:49:42 <genjix> fail if not enough pass
350 2012-05-01 13:50:07 <gavinandresen> sipa: checksums on wumpus' source files are completely different from mine
351 2012-05-01 13:51:45 <gavinandresen> sipa: any idea what isn't matching ?  Do the linux builds match?
352 2012-05-01 13:51:50 <sipa> gavinandresen: no
353 2012-05-01 13:51:59 <sipa> gavinandresen: which version id do your builds report?
354 2012-05-01 13:52:33 <gavinandresen> one sec, I'll unpack and run...
355 2012-05-01 13:52:37 <sipa> Bitcoin version v0.6.1rc2-beta (2012-04-30 11:08:07 -0400)
356 2012-05-01 13:52:41 <sipa> is what i get
357 2012-05-01 13:53:09 <sipa> (that timestamp is the last commit date, which should be equal for other builds)
358 2012-05-01 13:54:35 <wumpus> what source files are different? I diffed your gitian output with mine and only found differences in the binary files
359 2012-05-01 13:55:05 <gavinandresen> sipa: how do I get the timestamp?  I just get Bitcoin version v0.6.1rc2-beta
360 2012-05-01 13:55:19 <sipa> gavinandresen: it's written in debug.log
361 2012-05-01 13:56:37 <sipa> i pushed my sigs
362 2012-05-01 13:57:26 <sipa> only the binaries and some unrelated .deb package checksums differ
363 2012-05-01 13:57:33 <gavinandresen> my version matches: Bitcoin version v0.6.1rc2-beta (2012-04-30 11:08:07 -0400)
364 2012-05-01 13:58:59 <Diapolo> wumpus: Could you take a look at small translator changes before I open a pull-req if they make sense to you?
365 2012-05-01 13:59:08 <wumpus> Bitcoin version 0.6.0.5-beta    uhmm
366 2012-05-01 13:59:34 <wumpus> yes Diapolo
367 2012-05-01 14:00:02 <sipa> gavinandresen: are your builds online somewhere?
368 2012-05-01 14:00:30 <gavinandresen> sipa: no, I haven't uploaded them yet
369 2012-05-01 14:00:48 <sipa> i'm uploading mine
370 2012-05-01 14:01:27 <Diapolo> wumpus: https://github.com/Diapolo/bitcoin/commit/aab1f950aaa0f2123bdf2d18cd548709928f2ede I tried to fix the missing untranslated default buttons and either this helps or it has to do with the used Qt Version the default client is compiled with.
371 2012-05-01 14:02:09 <wumpus> how can I have built v0.6.0.5 instead of v.0.6.1rc2?!?
372 2012-05-01 14:02:34 <wumpus> COMMIT=v0.6.1rc2  bin/gbuild --commit bitcoin=${COMMIT} ../bitcoin/contrib/gitian-descriptors/gitian-win32.yml
373 2012-05-01 14:03:03 <wumpus> oh never mind
374 2012-05-01 14:03:17 <sipa> gavinandresen: http://bitcoin.sipa.be/builds/0.6.1rc2/
375 2012-05-01 14:03:20 <Diapolo> sipa: Is it correct that RC1 had the dirty flag in it? Bitcoin version v0.6.1rc1-2-g0acbe31-dirty-beta (2012-04-27 12:45:49 -0400)
376 2012-05-01 14:03:23 <wumpus> only updated the version for the windows builder
377 2012-05-01 14:03:51 <sipa> Diapolo: accidentally, yes
378 2012-05-01 14:04:15 <Diapolo> sipa: ok, so nothing big then
379 2012-05-01 14:04:32 <gavinandresen> sipa: whoops, hang on, version does NOT match yours for 64-bit linux build
380 2012-05-01 14:04:50 <sipa> not linux ones and not windows ones
381 2012-05-01 14:04:58 <gavinandresen> sipa:  Bitcoin version v0.6.1rc2-dirty-beta (2012-04-30 11:08:07 -0400)
382 2012-05-01 14:05:12 <sipa> oww
383 2012-05-01 14:05:28 <sipa> are you using the most recent gitian builder?
384 2012-05-01 14:05:32 <wumpus> no
385 2012-05-01 14:05:44 <gavinandresen> sipa: I'll double-check, but I think so
386 2012-05-01 14:05:54 <wumpus> you mean gitian version? or yml version?
387 2012-05-01 14:06:00 <sipa> gitian
388 2012-05-01 14:06:07 <sipa> because i'm not, and i believe something important changed
389 2012-05-01 14:06:11 <wumpus> my version is very ancient
390 2012-05-01 14:06:22 <gavinandresen> my gitian-builder is commit 953edf57df5f89eb4cd0e73f07e61037058bcbf4
391 2012-05-01 14:06:30 <gavinandresen> (April 22)
392 2012-05-01 14:06:39 <gavinandresen> ... and is up-to-date
393 2012-05-01 14:07:05 <sipa> gavinandresen: i'll update as well, and see whether i get a dirty build
394 2012-05-01 14:07:06 <wumpus> retrying with up-to-date one
395 2012-05-01 14:07:22 <sipa> ah, when we speak of the devil
396 2012-05-01 14:09:23 <wumpus> Diapolo: I'm not entirely sure what your commit does... does it solve the problem?
397 2012-05-01 14:12:08 <Diapolo> wumups: main difference is qtTranslatorBase.load(QLibraryInfo::location(QLibraryInfo::TranslationsPath) + "/qt_" + lang) -> qtTranslatorBase.load("qt_" + lang, QLibraryInfo::location(QLibraryInfo::TranslationsPath)); other stuff is not related ... but perhaps there is sth. wrong with the path on Win, so can't harm and removes the isEmpty() check as we have a bool returned for .load().
398 2012-05-01 14:12:58 <luke-jr> devrandom: btw, -i doesn't work
399 2012-05-01 14:13:53 <wumpus> Diapolo: yes, it makes sense to do it this way, but I don't think there should be a functional difference
400 2012-05-01 14:14:39 <wumpus> Diapolo: I wonder what the value of QLibraryInfo::location(QLibraryInfo::TranslationsPath) is in the statically compiled qt
401 2012-05-01 14:14:57 <Diapolo> wumpus: my local build now has correct translations for default buttons ... but the cause could be another :-/ Are you fine with the commit itself so I can open a pull?
402 2012-05-01 14:15:26 <wumpus> ie, whether qt is smart enough to embed the translations as well in a resource, or that it thinks the files are somewhere else in the file system
403 2012-05-01 14:15:43 <wumpus> yes I'm fine with it
404 2012-05-01 14:16:11 <Diapolo> wumpus: D:QtSDKDesktopQt4.8.1mingw\translations is the path on Win for QLibraryInfo::TranslationsPath on my machine
405 2012-05-01 14:16:13 <wumpus> Diapolo: so it was wrong in your local build, and after this change it is fixed?
406 2012-05-01 14:16:46 <Diapolo> It could aswell been a problem with my Qt installation as I had 4.8.0 and 4.8.1 in parallel.
407 2012-05-01 14:16:49 <wumpus> or was it already good in your local build just not the prepackaged one?
408 2012-05-01 14:17:38 <wumpus> play
409 2012-05-01 14:17:41 <wumpus> okay*
410 2012-05-01 14:17:48 <gavinandresen> sipa devrandom :  I think gitian-builder commit 28bb4211 broke the version determination logic
411 2012-05-01 14:18:56 <gavinandresen> ... wait... maybe....
412 2012-05-01 14:19:15 <gavinandresen> (I don't completely understand how the git clone / git checkout is done)
413 2012-05-01 14:19:27 <Diapolo> wumpus: RC1 is faulty and my local build had no correct translations, too until yesterday, where I switched to only Qt 4.8.1 and played around with the code ... perhaps some env vars were set wrong and are now correct.
414 2012-05-01 14:20:11 <sipa> gavinandresen: in earlier version of gitian, the VM did the git clone; now it's done on the host system
415 2012-05-01 14:20:31 <gribble> New news from bitcoinrss: Diapolo opened pull request 1175 on bitcoin/bitcoin <https://github.com/bitcoin/bitcoin/pull/1175>
416 2012-05-01 14:20:35 <Diapolo> wumpus: only speaking of default button texts and not of any bitcoin translations
417 2012-05-01 14:21:08 <lianj> gribble: are old news common?
418 2012-05-01 14:23:29 <Diapolo> wumpus: Official build is based on Qt 4.7.2 ... it could aswell be a simple Qt bug?
419 2012-05-01 14:23:48 <wumpus> yes, it could be... but I somehow doubt it
420 2012-05-01 14:24:07 <Diapolo> wumpus: related to Win, as it works for you ... OS was Ubuntu?
421 2012-05-01 14:24:26 <wumpus> it works for me, but I don't use the static builds
422 2012-05-01 14:24:44 <wumpus> and I've got the qt translation files on a predictable place on my system
423 2012-05-01 14:25:24 <wumpus> I really suspect it's a problem with the static build of qt on windows
424 2012-05-01 14:26:07 <luke-jr> sigh @ #1173
425 2012-05-01 14:26:40 <luke-jr> it seems like whenever I point out why a pullreq is wrong, someone feels the need to merge it
426 2012-05-01 14:26:41 <luke-jr> whatever
427 2012-05-01 14:27:02 <Diapolo> Wumpus: I'm not sure how I could help with tracking this down further, as I can't do any static builds on my machine.
428 2012-05-01 14:27:12 <wumpus> luke-jr: yes, I think we misunderstood the comment
429 2012-05-01 14:27:44 <wumpus> it's doing SetStartOnSystemStartup *if* StartOnSystemStartup is already set
430 2012-05-01 14:27:57 <Diapolo> luke-jr: Sorry no, it was not about removing wx autostart links ... it's the same Bitcoin.lnk file perhaps with a different path!
431 2012-05-01 14:28:23 <sipa> it removes Bitcoin.lnk, which is the startup link for both old and new versions, afaik?
432 2012-05-01 14:28:38 <luke-jr> wasn't it changed to Bitcoin-Qt.lnk?
433 2012-05-01 14:28:47 <luke-jr> if not, then what's there to remove?
434 2012-05-01 14:29:12 <sipa> if you want to turn off autostart, you need to remove the shortcut
435 2012-05-01 14:29:15 <wumpus> no, it wasn't changed
436 2012-05-01 14:29:24 <sipa> wait, no
437 2012-05-01 14:29:26 <wumpus> the lnk file is still the same... HOWEVER what it links to changed
438 2012-05-01 14:29:32 <wumpus> lnk file name*
439 2012-05-01 14:29:43 <sipa> right, of course
440 2012-05-01 14:29:55 <luke-jr> sipa: that code only runs if autostart is enabled
441 2012-05-01 14:29:58 <Diapolo> as I see it, the link is always regenerated if Autostart is turned on
442 2012-05-01 14:30:11 <sipa> Diapolo: indeed
443 2012-05-01 14:30:28 <Diapolo> so no need for the comment to contain any wx reference
444 2012-05-01 14:30:29 <wumpus> so the comment was correct, by regenerating the link it fixed stale links to bitcoin-wx
445 2012-05-01 14:30:31 <luke-jr> Diapolo: which only makes a difference, if the old one was wxBitcoin
446 2012-05-01 14:31:04 <wumpus> right
447 2012-05-01 14:31:14 <sipa> a better comment would be "Regenerate startup link, to fix links to old versions"
448 2012-05-01 14:31:20 <Diapolo> but it does it everytime ^^
449 2012-05-01 14:31:42 <wumpus> yes it does, but the reason it does it is to fix old versions
450 2012-05-01 14:31:43 <wumpus> right sipa
451 2012-05-01 14:31:50 <Diapolo> sipa: ACK
452 2012-05-01 14:32:01 <wumpus> without the comment someone might think 'hey, this is a no-op, let's remove it'
453 2012-05-01 14:32:05 <luke-jr> sipa: "Furthermore, make sure the port bitcoind listens on is not reachable from the outside world," <-- why not bind only localhost in that case; also, what if you *want* a dual-stack (IPv4 + Tor) node? :p
454 2012-05-01 14:32:51 <Diapolo> wumpus: you suggested to move that function calls, why not do this and update the comment?
455 2012-05-01 14:33:27 <sipa> luke-jr: 1) that is one way for achieving being unreachability from the outside world 2) you can, but you'll lose privacy, as it will give out your IPv4 address to incoming Tor connections
456 2012-05-01 14:33:38 <sipa> -being
457 2012-05-01 14:34:55 <luke-jr> sipa: 1) right now, it's not possible afaik?
458 2012-05-01 14:35:42 <sipa> luke-jr: i don't think so, no
459 2012-05-01 14:35:42 <wumpus> Diapolo: right
460 2012-05-01 14:36:12 <luke-jr> sipa: seems to me, that being able to do so would make sense for that pullreq
461 2012-05-01 14:36:45 <wumpus> Diapolo: I'm moving them to guiutil instead of util
462 2012-05-01 14:37:15 <sipa> luke-jr: there's another problem with dual-stack too: someone can send you a newly crafted transaction via tor, and watch the IPv4 network (like blockchain.info) for where it appears
463 2012-05-01 14:37:36 <luke-jr> sipa: someone running a hidden service might not care ;p
464 2012-05-01 14:37:37 <Diapolo> wumpus: sounds good as they are GUI related
465 2012-05-01 14:37:39 <sipa> to prevent that, you'd need a delay or even blocking of transactions passing from one network to the other
466 2012-05-01 14:37:47 <luke-jr> sipa: ie, to help out tor peers rather than be secret themselves
467 2012-05-01 14:38:00 <sipa> luke-jr: sure, it's not necessarily a concern
468 2012-05-01 14:38:24 <sipa> luke-jr: and i agree that the ability to limit listening would be useful
469 2012-05-01 14:38:51 <wumpus> it's already possible to limit listening isn't it?
470 2012-05-01 14:39:06 <wumpus> ah right, only for the rpc port
471 2012-05-01 14:39:12 <Diapolo> Can anyone tell me if this line is correct, it seems like double use of src + json has no include sub-dir. https://github.com/bitcoin/bitcoin/blob/master/bitcoin-qt.pro#L96
472 2012-05-01 14:39:35 <sipa> wumpus: indeed
473 2012-05-01 14:40:43 <wumpus> Diapolo: yes it should probably have been src/json
474 2012-05-01 14:41:23 <Diapolo> wumpus: I use src src/json src/qt and it still works, but I was unsure.
475 2012-05-01 14:44:56 <sipa> gavinandresen: i also get dirty builds now
476 2012-05-01 14:44:58 <sipa> devrandom: ping
477 2012-05-01 14:46:06 <wumpus> Diapolo: can you check whether this still compiles on windows? https://github.com/laanwj/bitcoin/tree/2012_05_move_startonsystemstartup   (yes, the comment is changed too)
478 2012-05-01 14:49:20 <gribble> The operation succeeded.
479 2012-05-01 14:49:20 <sipa> ;;later tell devrandom any idea why the latest version of gitian produces builds for which git-describe calls the source directory "dirty"? i don't see any files being modified by the script
480 2012-05-01 14:49:52 <luke-jr> FWIW, I get 7250e2 named rc1, when I gitian-build rc2
481 2012-05-01 14:50:06 <luke-jr> sipa: that git bug?
482 2012-05-01 14:50:15 <sipa> luke-jr: i worked around that
483 2012-05-01 14:50:24 <luke-jr> sipa: possibly your yml is pre-workaround?
484 2012-05-01 14:50:32 <Diapolo> wumpus: Will try this later, as I have to get into RL now ;).
485 2012-05-01 14:50:38 <sipa> luke-jr: no, because the workaround is in genbuild.sh
486 2012-05-01 14:50:46 <wumpus> Diapolo: ok
487 2012-05-01 14:50:54 <gribble> New news from bitcoinrss: Diapolo opened pull request 1176 on bitcoin/bitcoin <https://github.com/bitcoin/bitcoin/pull/1176>
488 2012-05-01 14:51:08 <sipa> but maybe the source files have a timestamp in the future, according to the VM
489 2012-05-01 14:51:20 <luke-jr> sipa: they always do afaik
490 2012-05-01 14:51:30 <sipa> luke-jr: not if they're fetched by the VM itself
491 2012-05-01 14:51:36 <sipa> luke-jr: that's FAKETIME
492 2012-05-01 14:52:04 <sipa> (i think)
493 2012-05-01 14:52:25 <luke-jr> I wasn't aware you were excluding FAKETIME
494 2012-05-01 14:53:21 <sipa> no i'm not sure, really
495 2012-05-01 14:56:06 <gribble> New news from bitcoinrss: laanwj opened pull request 1177 on bitcoin/bitcoin <https://github.com/bitcoin/bitcoin/pull/1177>
496 2012-05-01 14:56:21 <gavinandresen> sipa: I'm rebuilding rc2 with the Feb 21 version of gitian-builder...
497 2012-05-01 14:56:39 <sipa> gavinandresen: build matches now
498 2012-05-01 14:57:03 <gavinandresen> you mean build matches but both say 'dirty' ?
499 2012-05-01 14:57:09 <sipa> yes
500 2012-05-01 14:57:18 <sipa> all binaries are equal
501 2012-05-01 14:57:40 <wumpus> 77b4bc51e558989f9e961fa4e0c826a229b80a246d35ce26af15a82b838b1b6a  bin/32/bitcoin-qt
502 2012-05-01 14:57:41 <wumpus> 41cffe16ed76438867269f3de50993746ae37d5814a21fe286783a4df7028cc7  bin/32/bitcoind
503 2012-05-01 14:57:44 <wumpus> that's what I get now
504 2012-05-01 14:58:17 <gavinandresen> So:  do we want a rc2 that reports itself as dirty and uses latest gitian-builder, or one that is clean and uses the old gitian-builder
505 2012-05-01 14:59:21 <sipa> let me try finding out why it's being reported as dirty first
506 2012-05-01 14:59:36 <gavinandresen> cool, thanks
507 2012-05-01 15:00:34 <luke-jr> so for the Windows build, is rc2 tag supposed to use rc1 filename? or did I mess up somewhere?
508 2012-05-01 15:00:50 <gavinandresen> No, I think I messed up
509 2012-05-01 15:01:01 <wumpus> ... I still get different files
510 2012-05-01 15:01:10 <gribble> New news from bitcoinrss: laanwj opened pull request 1178 on bitcoin/bitcoin <https://github.com/bitcoin/bitcoin/pull/1178>
511 2012-05-01 15:01:31 <wumpus> no, not true.. different from sipa but same as gavinandresen
512 2012-05-01 15:01:37 <wumpus> phew
513 2012-05-01 15:01:51 <gavinandresen> luke-jr: somehow I didn't change the filename in share/setup.nsi ....
514 2012-05-01 15:02:17 <luke-jr> gavinandresen: I think this is the first release window where the setup.nsi filename includes "rcX" at all
515 2012-05-01 15:02:23 <luke-jr> in the past, I recall renaming it
516 2012-05-01 15:02:28 <gavinandresen> yup
517 2012-05-01 15:19:11 <devrandom> sipa: interesting, looking...
518 2012-05-01 15:21:02 <Diapolo> wumpus: I tried it, but get quite a few compilation errors and added comments to your request ... I'm off for now ^^.
519 2012-05-01 15:21:11 <wumpus> Diapolo: thanks
520 2012-05-01 15:23:17 <devrandom> sipa: are you using lxc or kvm?
521 2012-05-01 15:23:23 <sipa> devrandom: kvm
522 2012-05-01 15:23:35 <sipa> (at least, i didn't change anything related to that)
523 2012-05-01 15:25:15 <devrandom> sipa: you are building rc2?
524 2012-05-01 15:26:12 <devrandom> (sorry, lost my scrollback)
525 2012-05-01 15:26:21 <sipa> devrandom: yes
526 2012-05-01 15:29:16 <devrandom> $ git describe
527 2012-05-01 15:29:17 <devrandom> v0.6.1rc2
528 2012-05-01 15:29:25 <devrandom> this is on the target
529 2012-05-01 15:29:35 <devrandom> I'll let the build finish and check again
530 2012-05-01 15:30:24 <devrandom> sipa: I don't see any use of git-describe in .yml file
531 2012-05-01 15:30:39 <sipa> devrandom: it's in share/genbuild.sh, called from the makefile
532 2012-05-01 15:31:32 <devrandom> ah, --dirty, let me check again
533 2012-05-01 15:35:06 <sipa> devrandom: hmm, you create a bitcoin directory inside inputs, cloned from the URL, and update that?
534 2012-05-01 15:35:12 <sipa> but reuse the directory?
535 2012-05-01 15:35:14 <devrandom> sipa: ah, README is a symlink, scp copies it as regular
536 2012-05-01 15:35:34 <sipa> ah, that explains
537 2012-05-01 15:36:01 <devrandom> ok, git-reset --hard fixes it
538 2012-05-01 15:38:38 <luke-jr> (even for LXC/local)
539 2012-05-01 15:39:00 <devrandom> luke-jr: good idea
540 2012-05-01 15:41:22 <devrandom> it's a bit complicated, since I don't use networking at all with lxc - I directly execute commands in the container
541 2012-05-01 15:41:35 <devrandom> the git-reset is good enough for now...
542 2012-05-01 15:41:40 <sipa> devrandom: how about this: create a bundle with the requested head, copy that to the VM, and unpack it there
543 2012-05-01 15:43:34 <devrandom> sipa: I'll look into that today or tomorrow - I have to go.  but I pushed the git-reset fix to the gitian repo
544 2012-05-01 15:43:42 <sipa> ok, good
545 2012-05-01 15:43:44 <sipa> thanks!
546 2012-05-01 15:45:37 <sipa> gavinandresen, wumpus: can you retry building with the latest gitian? the dirty issue should be fixed
547 2012-05-01 15:45:58 <gavinandresen> sipa: ACK
548 2012-05-01 15:46:20 <sipa> i'll do the same
549 2012-05-01 16:19:20 <gavinandresen> sipa: linux build done, I pushed 0.6.1rc2/gavinandresen/bitcoin-build.assert
550 2012-05-01 16:31:28 <jgarzik> gavinandresen: started working on prelim release notes?  if not, I could do a quick version, then bounce it to you for completion
551 2012-05-01 16:35:35 <gavinandresen> jgarzik: http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.6.1/test/README.txt/download
552 2012-05-01 16:35:52 <gavinandresen> jgarzik: please feel free to expand
553 2012-05-01 16:40:38 <sipa> gavinandresen: windows builds differ, linux ones don't
554 2012-05-01 16:41:25 <gavinandresen> sipa: I haven't pushed windows gitian sigs yet
555 2012-05-01 16:41:31 <sipa> that explains
556 2012-05-01 16:42:11 <gavinandresen> .... just pushed
557 2012-05-01 16:42:39 <sipa> match!
558 2012-05-01 16:42:45 <gavinandresen> yay!
559 2012-05-01 16:43:07 <[Tycho]> Is there a roadmap for future releases ?
560 2012-05-01 16:43:20 <gavinandresen> nope
561 2012-05-01 16:43:29 <[Tycho]> Why not :(
562 2012-05-01 16:43:41 <[Tycho]> Roadmaps are cool.
563 2012-05-01 16:43:48 <sipa> And disappointing.
564 2012-05-01 16:43:52 <gavinandresen> http://buytaert.net/roadmap
565 2012-05-01 16:44:31 <[Tycho]> At least to sort out importance of next features.
566 2012-05-01 16:45:14 <gmaxwell> (1) Create crypto currency  (2) Get people using it   (3) World domination 
567 2012-05-01 16:45:24 <gavinandresen> lol
568 2012-05-01 16:45:25 <sipa> (4) Profit!
569 2012-05-01 16:52:04 <jgarzik> gavinandresen: there ya go: http://gtf.org/garzik/bitcoin/patch.061.readme
570 2012-05-01 16:52:13 <jgarzik> gavinandresen: wumpus should look at the Qt bits
571 2012-05-01 16:53:29 <wumpus> the progressbar improvement is most important and visible, I think
572 2012-05-01 16:54:02 <wumpus> (showing how many blocks are left to download instead of a percentage)
573 2012-05-01 16:54:27 <gavinandresen> rc2 binaries uploading... README patched....
574 2012-05-01 16:58:38 <BlueMatt> whats new in 0.6.1?
575 2012-05-01 17:01:48 <gavinandresen> "This is a bug-fix and code-cleanup release, with no major new features."
576 2012-05-01 17:02:11 <gavinandresen> Ready for sanity testing at: https://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.6.1/test/
577 2012-05-01 17:02:13 <BlueMatt> ah
578 2012-05-01 17:09:36 <luke-jr> BlueMatt: where ya been? :p
579 2012-05-01 17:11:10 <BlueMatt> luke-jr: working, mostly...
580 2012-05-01 17:11:28 <BlueMatt> but as of today Im done with finals, so...free for a few months :)
581 2012-05-01 17:11:43 <sipa> ;)
582 2012-05-01 17:12:35 <sipa> I don't think you'll need to change that much; only jgarzik's cmempool probably conflicts significantly
583 2012-05-01 17:13:02 <BlueMatt> oh, ok good...I saw cmempool and thought it may be terrible, but I looked at it yesterday and it shouldnt be too much work afaict
584 2012-05-01 17:13:11 <BlueMatt> (terrible to port)
585 2012-05-01 18:16:56 <Diapolo> wumpus: still here?
586 2012-05-01 18:21:35 <jgarzik> gavinandresen: sanity tests OK here
587 2012-05-01 18:22:16 <gavinandresen> jgarzik: ACK
588 2012-05-01 18:23:49 <sipa> if you have half an hour i can test whether the 0.6.1rc2 code accepts the current blockchain
589 2012-05-01 18:24:05 <sipa> (i should have notice before if it doesn't, though)
590 2012-05-01 18:26:16 <gavinandresen> ... forgot to upload SHA256sums.asc... fixed.  By the way, I'm generating that with:  gpg --clearsign --digest-algo SHA256 SHA256SUMS
591 2012-05-01 18:26:48 <gavinandresen> I thought it was confusing before that PGP was putting Hash: SHA1 in it when all of the checksums inside the file are SHA256
592 2012-05-01 18:28:33 <luke-jr> man gpg sez to use personal-digest-preferences instead <.,
593 2012-05-01 18:28:35 <luke-jr> <.<*
594 2012-05-01 18:30:12 <gribble> New news from bitcoinrss: Diapolo opened pull request 1179 on bitcoin/bitcoin <https://github.com/bitcoin/bitcoin/pull/1179>
595 2012-05-01 18:33:12 <sipa> anyone feel like testing my tor hidden service branch?
596 2012-05-01 18:33:44 <luke-jr> sipa: how important are the last 2-3 commits?
597 2012-05-01 18:34:20 <sipa> third last one is an improvement; the last two ones aren't (just documentation and debug output)
598 2012-05-01 18:34:58 <luke-jr> sipa: so not important enough to re-merge into next-test?
599 2012-05-01 18:35:08 <gavinandresen> sipa: I'll give it a whirl
600 2012-05-01 18:35:11 <luke-jr> (currently building for Windows)
601 2012-05-01 18:35:29 <sipa> luke-jr: oh; i made changes in earlier commits as well
602 2012-05-01 18:37:02 <sipa> gavinandresen: gmaxwell already tried an earlier version and was able to download the entire blockchain from me in 3 hours
603 2012-05-01 18:37:06 <hashalfa_> does anyone know how i can convert a base58 key to hex or another format?
604 2012-05-01 18:37:11 <luke-jr> sipa: 7b20b8f is what is in right now.
605 2012-05-01 18:39:05 <luke-jr> looks like I need to fix coincontrol more anyway. I wonder why these errors don't show up on Linux builds
606 2012-05-01 18:39:05 <sipa> luke-jr: in that case, update if possible
607 2012-05-01 18:40:41 <luke-jr> k
608 2012-05-01 18:44:29 <sipa> ;;bc,blocks
609 2012-05-01 18:44:30 <gribble> 178157
610 2012-05-01 18:44:39 <gribble> Best bid: 4.96965, Best ask: 4.96982, Bid-ask spread: 0.000170000000001, Last trade: 4.9797, 24 hour volume: 37015, 24 hour low: 4.91001, 24 hour high: 4.99
611 2012-05-01 18:44:39 <JFK911> !ticker
612 2012-05-01 18:44:45 <JFK911> ;;bc,stats
613 2012-05-01 18:44:46 <gribble> Current Blocks: 178157 | Current Difficulty: 1508589.6720603 | Next Difficulty At Block: 179423 | Next Difficulty In: 1266 blocks | Next Difficulty In About: 1 week, 0 days, 15 hours, 55 minutes, and 18 seconds | Next Difficulty Estimate: 1731376.16399571 | Estimated Percent Change: 14.767865382
614 2012-05-01 18:48:11 <gavinandresen> Half-baked thoughts on neutralizing a shut-down-the-network-51%-attack:  http://gavintech.blogspot.com/2012/05/neutralizing-51-attack.html
615 2012-05-01 18:51:05 <gmaxwell> gavinandresen: the addition of the priorty bit to that moves my position from complete dismissal to _hmmm... maybe_
616 2012-05-01 18:52:18 <gmaxwell> One challenge with that is that it might prevent the complete DOS it wouldn't prevent large reorgs which might be much worse than the DOS
617 2012-05-01 18:52:34 <ThomasV> 51% is not how big banks will try to attack bitcoin. shutting down exchanges comes first
618 2012-05-01 18:52:41 <gavinandresen> ThomasV: agreed
619 2012-05-01 18:53:09 <sipa> That doesn't mean we shouldn't aim for the best defense against DOS or 51% attacks.
620 2012-05-01 18:53:29 <gmaxwell> For example I produce a fork which is 40% sum difficulty long... during a time when real chain activity is low,, and then I drop a bunch of high priority coin into my fork and cause a 200 block reorg onto it.. enabling a bunch of double spending.
621 2012-05-01 18:53:32 <gavinandresen> gmaxwell: I think a more-trusted set of nodes and user-defined checkpoints would be the answer to avoiding more-than-6-block-reorgs
622 2012-05-01 18:54:37 <gavinandresen> If the big exchanges, merchants, and miners all agree on the sixth-deepest block then it is in all their best interests to lock it in
623 2012-05-01 18:55:01 <gmaxwell> I don't agree with you on that point. Trying to use checkpoints to stop reorgs makes things much worse.  Persistent (unrecoverable) splitting is probably the worse possible outcome worse than one shot fradulent multi-spending... and it's completely precluded by the current design.
624 2012-05-01 18:55:11 <gavinandresen> (assuming they haven't detected a split with a big drop in hash rate yada yada yada)
625 2012-05-01 18:55:54 <gavinandresen> A split less than 100 blocks deep is not a problem for anybody unless there are double-spends on the two forks.
626 2012-05-01 18:56:38 <gmaxwell> In order to make such a mechnism safe from preventing non-trivial persistent splits you need an agreement mechinism on the checkpoints. Our options are either to (quasi)centeralize it which removes the attractiveness of bitcoin, or to use distributed consensus for it and in that case the distributed consensus has the same attack vulnerabilities.
627 2012-05-01 18:58:45 <gavinandresen> I'd be willing to run code that says "If I am suddenly presented with a longer chain with either a bunch of double-spends or no/few transactions then ignore it because it is probably Bad Guys"
628 2012-05-01 18:59:48 <luke-jr> gavinandresen: then the bad guys just need to deliver their double-spend chain first?
629 2012-05-01 19:00:29 <BlueMatt> gavinandresen: when are you looking at 0.6.1 release?
630 2012-05-01 19:00:38 <gavinandresen> uhhh.... how would that work?  the double-spend chain is longer, it does no good to send me a shorter chain second....
631 2012-05-01 19:01:17 <luke-jr> gavinandresen: "if I am suddenly presented with a longer chain" implies "only if I have a shorter chain first"
632 2012-05-01 19:01:27 <luke-jr> otherwise, it's the shorter chain that has "double spends"
633 2012-05-01 19:01:37 <gmaxwell> ^ that.
634 2012-05-01 19:02:41 <gmaxwell> It might be helpful to consider the case where a new node starts up during this event.  The transaction priority sum thing might be a workable tie breaker, I'll have to consider that more but anything involving 'first' or 'double spends' fails to luke's comment.
635 2012-05-01 19:02:44 <gavinandresen> I'm confused.  So my node has been well-connected to the network for a day, has seen a steady block-every-10-minutes (within reasonable statistical bounds).
636 2012-05-01 19:03:11 <gavinandresen> And, lets say, has best blocks that pretty much match Mt Gox and DeepBit and some other mostly-trusted place.
637 2012-05-01 19:03:28 <gavinandresen> Now I see a longer chain that rewrites the last 100 blocks.....
638 2012-05-01 19:03:40 <gavinandresen> That is mighty suspicious.
639 2012-05-01 19:04:01 <luke-jr> gavinandresen: now consider if you haven't been connected all day.
640 2012-05-01 19:04:10 <gavinandresen> Then I accept any damn chain.
641 2012-05-01 19:04:21 <luke-jr> and you stick with the chain everyone else rejects
642 2012-05-01 19:05:07 <sipa> So such an extra critirion for switching should only be active when your node considers itself in a stable situation?
643 2012-05-01 19:05:17 <gavinandresen> sipa: yup
644 2012-05-01 19:05:21 <sipa> *criterion
645 2012-05-01 19:05:54 <gavinandresen> luke-jr: if I disagree with Mt Gox about what the best chain is, then something is very wrong with either me or Mt Gox
646 2012-05-01 19:06:38 <luke-jr> gavinandresen: I think giving MtGox a trusted authority, is liable to incite a fork.
647 2012-05-01 19:07:01 <gavinandresen> Fine, choose your own favorite 20 semi-trusted nodes....
648 2012-05-01 19:07:36 <gavinandresen> I think more "belt and suspenders" with respect to "am I on the majority chain" would be a good thing, in general.  Sybil attacks still worry me.
649 2012-05-01 19:09:06 <gmaxwell> I think you'll be hard pressed to find anything that doesn't obviously add new vulnerabilities.  Six one way, half a dozen the other.  persistent fragmentation is something we're totally immune to now (save bugs).
650 2012-05-01 19:10:01 <luke-jr> tbh, 51% attacks don't scare me nearly as much as scaling.
651 2012-05-01 19:10:15 <gavinandresen> luke-jr: I agree
652 2012-05-01 19:11:29 <gavinandresen> sipa: torhs branch gives me warnings:  net.cpp:1712: warning: missing initializer for member sockaddr_in::sin_len
653 2012-05-01 19:11:31 <gmaxwell> It's interesting to note that solid coin has apparently abandoned their quasi proof of stake stuff in their latest respin.
654 2012-05-01 19:11:49 <BlueMatt> did solidcoin reset their chain again?
655 2012-05-01 19:12:03 <gavinandresen> they're not solidcoin any more, they're microcrash
656 2012-05-01 19:12:08 <etotheipi_> I'm much more concerned about scaling as well... I think it's a topic we're going to have to address
657 2012-05-01 19:12:09 <gavinandresen> i mean cash
658 2012-05-01 19:12:22 <BlueMatt> gavinandresen: Freudian slip?
659 2012-05-01 19:12:29 <gavinandresen> no, I did that on purpose
660 2012-05-01 19:12:34 <gavinandresen> :)
661 2012-05-01 19:12:39 <BlueMatt> well...you could have atleast denied it...
662 2012-05-01 19:12:40 <etotheipi_> with scaling comes extra security against 51%... but we're not going to scale unless there is more confidence that the system can handle it
663 2012-05-01 19:13:52 <sipa> gavinandresen: it seems you're building without -DUSE_IPV6
664 2012-05-01 19:14:03 <gavinandresen> I don't think I agree with that; I think usability, security, and legal/regulatory uncertainty are the big problems right now, not fear of scaling
665 2012-05-01 19:14:16 <sipa> gavinandresen: which should not be a problem, though
666 2012-05-01 19:14:20 <gavinandresen> sipa: oh, I need -DUSE_IPV6 for tor?
667 2012-05-01 19:14:24 <BlueMatt> legal/regulatory would be the biggest thing I see
668 2012-05-01 19:14:30 <sipa> gavinandresen: no
669 2012-05-01 19:14:35 <gavinandresen> sipa: ok, cool.
670 2012-05-01 19:14:42 <BlueMatt> the rest is coming quick, legal still isnt really in progress...
671 2012-05-01 19:15:29 <gmaxwell> I'm not too concered about scaling. Scaling is just technical stuff if scaling becomes a problem there will also be enough interest to get the software improved.
672 2012-05-01 19:15:37 <BlueMatt> agreed
673 2012-05-01 19:15:48 <BlueMatt> we already have soooo much room to improve scaling right now that isnt used
674 2012-05-01 19:15:50 <BlueMatt> thin clients, etc
675 2012-05-01 19:16:11 <BlueMatt> and even better webclients
676 2012-05-01 19:16:35 <gmaxwell> I'm more concerned with the loss of decentralization that rapid scaling would imply and moreover, the either adverse regulatory effects or non-regulatory effects of that kind of decentralization loss.
677 2012-05-01 19:17:17 <gmaxwell> E.g. if everyon ends up using mybitcoin2 because running a node is too burdensome then people may be unhappy when they get robbed because mybitcoin2 was inadequately regulated, or be unhappy when mybitcoin2 is excessively regulated.
678 2012-05-01 19:17:23 <BlueMatt> true, but I believe it will be done right very soon
679 2012-05-01 19:17:36 <BlueMatt> mybitcoin as a wallet, with a secondary auth on phone, etc with multisig
680 2012-05-01 19:17:56 <BlueMatt> or, I hope it will be
681 2012-05-01 19:18:06 <etotheipi_> getting the network to scale better is necessary but not sufficient to succeed
682 2012-05-01 19:18:17 <BlueMatt> I mean...blockchain.info already handles multisig
683 2012-05-01 19:18:18 <etotheipi_> obviously there's other factors too
684 2012-05-01 19:18:21 <BlueMatt> so its coming "quick"
685 2012-05-01 19:18:30 <gmaxwell> so I do hope we get things like more things like good electrum style thin clients before scaling makes strongly centeralized clients win out.
686 2012-05-01 19:18:59 <BlueMatt> agreed
687 2012-05-01 19:19:03 <BlueMatt> and I really think we will
688 2012-05-01 19:19:18 <etotheipi_> well I hope to make Armory "Standard Usermode" be a lite-client mode
689 2012-05-01 19:19:19 <BlueMatt> hey TD
690 2012-05-01 19:19:29 <TD> hey
691 2012-05-01 19:19:34 <BlueMatt> etotheipi_: makes sense
692 2012-05-01 19:19:40 <BlueMatt> I think most clients will go that way
693 2012-05-01 19:19:57 <etotheipi_> the plan is for Armory installation to default to "Standard" which is lite... and Advanced/Dev be full blockchain.. but also eventually deal with blockchain pruning
694 2012-05-01 19:20:21 <BlueMatt> I would bet most clients will go that way with age
695 2012-05-01 19:20:38 <BlueMatt> if not default, at least make it an option and set no default (query user on first run)
696 2012-05-01 19:21:14 <etotheipi_> but I would really like to see some kind of protocol upgrade that allows clients to verify pruned-blockchain images
697 2012-05-01 19:21:40 <etotheipi_> and if I ever finish the 3000 things I have currently on my plate, I'm happy to pioneer that, even if it's an overlay network among Armory nodes
698 2012-05-01 19:22:03 <sipa> etotheipi_: hash-of-opentxouts-set?
699 2012-05-01 19:22:09 <etotheipi_> sipa: something along those lines
700 2012-05-01 19:22:29 <BlueMatt> would be cool to add, but not so sure about doing it on the p2p network interface
701 2012-05-01 19:22:47 <BlueMatt> maybe large sites publishing it, in signed form
702 2012-05-01 19:22:47 <etotheipi_> I haven't thought it all through... or rather there's *lots* of ways to do it with various advantages... I haven't really thought it through yet and evaluated different options
703 2012-05-01 19:23:12 <gmaxwell> gavinandresen: here is something more to think about. Take your sum priority scheme. Now have every transaction also include a block hash. That TXN's priority is only counted against chains which contain that hash.
704 2012-05-01 19:23:15 <etotheipi_> it could be useful to use something like merkle trees, and organized unspent outputs by address... thus allowing nodes to easily get the balance of a given address
705 2012-05-01 19:24:05 <sipa> gmaxwell: that's going in the direction of a proof-of-stake
706 2012-05-01 19:24:31 <gmaxwell> gavinandresen: when creating a txn you pick a block from 2-6 blocks ago to use as the hash. This way someone trying to create a reorg does not enjoy any priority benefit without having the ability to create coin days destroyed.
707 2012-05-01 19:24:39 <gmaxwell> sipa: Indeed.
708 2012-05-01 19:25:48 <gavinandresen> yup, this is all proof-of-stake-like.  But I only want to only apply in the case where there are large chain re-orgs.
709 2012-05-01 19:26:11 <gavinandresen> (didn't that typing out come right)
710 2012-05-01 19:26:13 <gmaxwell> gavinandresen: one interesting thing to do would be to make the length calculation scaled so that the proof-of-stake-ish cost only matters if the difficulty is low.
711 2012-05-01 19:26:52 <gmaxwell> That means it doesn't help against 50% attacks now, but does in a hypothetical future where low subsidy means low difficulty which means insecurity.
712 2012-05-01 19:27:09 <gmaxwell> E.g. changing the failure mode of bitcoin from "becomes insecure" to "becomes proof of stake"
713 2012-05-01 19:27:42 <gmaxwell> and that kind of change might actually be community viable because the threshold could be so low that everyone would agree that bitcoin would be insecure if it dropped to that.
714 2012-05-01 19:29:39 <gavinandresen> I'm generally not a fan of writing code for "what if this thing that we're not sure is going to happen in the future happens...."
715 2012-05-01 19:31:03 <gavinandresen> sipa:  how can I tell if Tor is listening on port 9050?  I'm getting connect() failed running -proxy=127.0.0.1:9050
716 2012-05-01 19:31:14 <BlueMatt> netstat -lnp
717 2012-05-01 19:31:16 <gmaxwell> telnet localhost 9050
718 2012-05-01 19:31:21 <BlueMatt> does osx have netstat?
719 2012-05-01 19:31:56 <gmaxwell> sipa: how do we manage to avoid two onion nodes connecting to each other?
720 2012-05-01 19:32:00 <gavinandresen> telnet fails.  osx does have netstat, but it has different args....
721 2012-05-01 19:32:15 <sipa> gmaxwell: ?
722 2012-05-01 19:32:33 <Diablo-D3> with magic.
723 2012-05-01 19:33:15 <sipa> gmaxwell: ah; get it
724 2012-05-01 19:34:53 <sipa> gmaxwell: we don't; there is a possibility though; on incoming connections check whether addrFrom equals an address we're already connected to, and if so, disconnect
725 2012-05-01 19:35:16 <gavinandresen> Aha!  "In Vidalia, go to Settings->Advanced and uncheck the box that says 'Configure ControlPort automatically'. Click OK and restart TBB. Your Socks port will then be on 9050."
726 2012-05-01 19:35:48 <sipa> gavinandresen: there's a doc/Tor.txt now, by the way
727 2012-05-01 19:36:18 <gavinandresen> sipa: thanks-- I was following that....
728 2012-05-01 19:36:23 <sipa> hmm, i can't push to github?
729 2012-05-01 19:38:17 <sipa> ok, had to kill a lingering ssh connection
730 2012-05-01 19:40:12 <gmaxwell> sipa: so than I can us that to slay people you're connected to.
731 2012-05-01 19:40:23 <sipa> gmaxwell: yup
732 2012-05-01 19:40:31 <gmaxwell> hm. I guess first wins.. so not quite 'slay' but yea..
733 2012-05-01 19:41:18 <gmaxwell> we could use the same method used to prevent you from talking to yourself.
734 2012-05-01 19:41:56 <gmaxwell> At least with some modification.
735 2012-05-01 19:43:13 <gmaxwell> meh. almost not worth preventing.