--- Log opened Wed Mar 11 00:00:18 2015 00:00 -!- wallet42 [~wallet42@130.204.135.69] has quit [Quit: Leaving.] 00:06 -!- hktud0 [wq@unaffiliated/fluffybunny] has quit [Read error: Connection reset by peer] 00:07 -!- DougieBot5000 [~DougieBot@unaffiliated/dougiebot5000] has quit [Read error: Connection reset by peer] 00:07 -!- wallet42 [~wallet42@130.204.135.69] has joined #bitcoin-wizards 00:09 -!- hktud0 [ncidsk@unaffiliated/fluffybunny] has joined #bitcoin-wizards 00:09 -!- coiner [~linker@115.79.55.177] has joined #bitcoin-wizards 00:10 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has joined #bitcoin-wizards 00:13 < brisque> "I think NaS has basically been solved." 00:15 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has quit [Ping timeout: 246 seconds] 00:16 < brisque> "Long range you use checkpoints/weak subjectivity, short range you use security deposits - doesn't really seem like an issue any longer IMO.' 00:16 < brisque> that is to say, proof of stake is totally workable if you allow complete centralisation. 00:19 -!- tromp_ [~tromp@ool-18be0b4d.dyn.optonline.net] has joined #bitcoin-wizards 00:19 -!- fnxTX [49a62e6b@gateway/web/cgi-irc/kiwiirc.com/ip.73.166.46.107] has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client] 00:20 -!- fnxTX [49a62e6b@gateway/web/cgi-irc/kiwiirc.com/ip.73.166.46.107] has joined #bitcoin-wizards 00:22 -!- lclc_ [~lucas@unaffiliated/lclc] has joined #bitcoin-wizards 00:22 -!- hearn [~mike@c-67-180-209-140.hsd1.ca.comcast.net] has joined #bitcoin-wizards 00:23 -!- tromp_ [~tromp@ool-18be0b4d.dyn.optonline.net] has quit [Ping timeout: 240 seconds] 00:32 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has quit [Ping timeout: 244 seconds] 00:33 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has joined #bitcoin-wizards 00:41 < sipa> petertodd: my condolences; i turned 30.5 yesterday 00:49 -!- fnxTX [49a62e6b@gateway/web/cgi-irc/kiwiirc.com/ip.73.166.46.107] has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client] 01:00 -!- hearn [~mike@c-67-180-209-140.hsd1.ca.comcast.net] has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…] 01:01 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Remote host closed the connection] 01:02 -!- arubi [~ese168@unaffiliated/arubi] has joined #bitcoin-wizards 01:03 -!- arubi [~ese168@unaffiliated/arubi] has quit [Client Quit] 01:04 -!- arubi [~ese168@unaffiliated/arubi] has joined #bitcoin-wizards 01:04 -!- andy-logbot [~bitcoin--@wpsoftware.net] has quit [Remote host closed the connection] 01:05 -!- fnxTX [49a62e6b@gateway/web/cgi-irc/kiwiirc.com/ip.73.166.46.107] has joined #bitcoin-wizards 01:05 -!- andy-logbot [~bitcoin--@wpsoftware.net] has joined #bitcoin-wizards 01:05 * andy-logbot is logging 01:09 -!- lclc_ [~lucas@unaffiliated/lclc] has quit [Ping timeout: 252 seconds] 01:10 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has joined #bitcoin-wizards 01:15 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has quit [Ping timeout: 265 seconds] 01:21 < nsh> 30 is a great age to be 01:22 < brisque> it's not prime though. sipa is on the right track with almost-31. 01:22 * nsh smiles 01:26 < fluffypony> lol 01:26 * fluffypony is 33 in July 01:35 -!- terpo [~terpo@81-64-36-59.rev.numericable.fr] has joined #bitcoin-wizards 01:35 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Read error: Connection reset by peer] 01:36 -!- rusty [~rusty@pdpc/supporter/bronze/rusty] has joined #bitcoin-wizards 01:36 -!- c0rw1n [~c0rw1n@91.176.85.209] has joined #bitcoin-wizards 01:36 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaways.net] has joined #bitcoin-wizards 01:36 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaways.net] has quit [Changing host] 01:36 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 01:36 -!- lclc_ [~lucas@unaffiliated/lclc] has joined #bitcoin-wizards 01:38 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has joined #bitcoin-wizards 01:38 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Disconnected by services] 01:42 -!- waxwing [waxwing@gateway/vpn/mullvad/x-pqrsneqxwlkgemun] has quit [K-Lined] 01:42 -!- fnxTX [49a62e6b@gateway/web/cgi-irc/kiwiirc.com/ip.73.166.46.107] has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client] 01:43 -!- waxwing [~waxwing@62.205.214.125] has joined #bitcoin-wizards 01:50 -!- rusty [~rusty@pdpc/supporter/bronze/rusty] has quit [Quit: Leaving.] 01:57 -!- wallet42 [~wallet42@130.204.135.69] has quit [Quit: Leaving.] 02:02 -!- TonyClifton [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has joined #bitcoin-wizards 02:10 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has joined #bitcoin-wizards 02:15 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has quit [Ping timeout: 245 seconds] 02:19 -!- tromp_ [~tromp@ool-18be0b4d.dyn.optonline.net] has joined #bitcoin-wizards 02:23 -!- tromp_ [~tromp@ool-18be0b4d.dyn.optonline.net] has quit [Ping timeout: 252 seconds] 02:44 -!- Mably [56401ec5@gateway/web/freenode/ip.86.64.30.197] has joined #bitcoin-wizards 02:47 -!- shesek [~shesek@77.127.158.156] has joined #bitcoin-wizards 02:50 -!- d1ggy [~d1ggy@dslb-188-108-254-225.188.108.pools.vodafone-ip.de] has joined #bitcoin-wizards 02:58 -!- p15x_ [~p15x@111.193.167.131] has joined #bitcoin-wizards 03:00 -!- p15x [~p15x@114.244.152.191] has quit [Ping timeout: 250 seconds] 03:01 -!- SDCDev [~quassel@unaffiliated/sdcdev] has quit [Ping timeout: 256 seconds] 03:10 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has joined #bitcoin-wizards 03:14 -!- RoboTedd_ [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 03:15 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has quit [Ping timeout: 245 seconds] 03:17 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 264 seconds] 03:18 -!- RoboTedd_ [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 245 seconds] 03:19 -!- fnxTX [49a62e6b@gateway/web/cgi-irc/kiwiirc.com/ip.73.166.46.107] has joined #bitcoin-wizards 03:21 -!- Adlai` is now known as adlai 03:24 -!- alferz [~alferz@unaffiliated/alfer] has quit [Ping timeout: 244 seconds] 03:25 -!- alferz [~alferz@unaffiliated/alfer] has joined #bitcoin-wizards 03:25 -!- fnxTX [49a62e6b@gateway/web/cgi-irc/kiwiirc.com/ip.73.166.46.107] has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client] 03:28 -!- shesek [~shesek@77.127.158.156] has quit [Read error: Connection reset by peer] 03:41 -!- airbreather [~AirBreath@d149-67-99-43.nap.wideopenwest.com] has quit [Read error: Connection reset by peer] 03:43 -!- shesek [~shesek@77.127.158.156] has joined #bitcoin-wizards 03:44 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has joined #bitcoin-wizards 03:44 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has quit [Changing host] 03:44 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 03:50 -!- rusty [~rusty@pdpc/supporter/bronze/rusty] has joined #bitcoin-wizards 03:51 -!- jtimon [~quassel@user-5af5157d.broadband.tesco.net] has joined #bitcoin-wizards 03:57 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has quit [Read error: Connection reset by peer] 03:57 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 03:57 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Changing host] 03:57 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 03:59 -!- CoinMuncher [~jannes@178.132.211.90] has joined #bitcoin-wizards 04:07 -!- tromp_ [~tromp@ool-18be0b4d.dyn.optonline.net] has joined #bitcoin-wizards 04:10 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has joined #bitcoin-wizards 04:12 -!- tromp_ [~tromp@ool-18be0b4d.dyn.optonline.net] has quit [Ping timeout: 252 seconds] 04:14 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has quit [Ping timeout: 240 seconds] 04:14 -!- arubi [~ese168@unaffiliated/arubi] has quit [Quit: Leaving] 04:15 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 04:20 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 245 seconds] 04:21 -!- afk11 [~thomas@89.100.72.184] has joined #bitcoin-wizards 04:42 -!- GAit [~lnahum@2-230-161-158.ip202.fastwebnet.it] has quit [Read error: Connection reset by peer] 04:44 -!- GAit [~lnahum@2-230-161-158.ip202.fastwebnet.it] has joined #bitcoin-wizards 04:50 -!- p15x_ [~p15x@111.193.167.131] has quit [Read error: Connection reset by peer] 04:50 -!- bsm117532 [~bsm117532@static-108-21-236-13.nycmny.fios.verizon.net] has joined #bitcoin-wizards 04:52 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 04:52 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Disconnected by services] 04:54 -!- OneNomos [~OneNomos@pool-71-163-227-3.washdc.east.verizon.net] has joined #bitcoin-wizards 04:54 -!- p15x [~p15x@114.243.153.83] has joined #bitcoin-wizards 05:06 -!- x98gvyn [~vfbtgn@82.77.167.198] has quit [Ping timeout: 245 seconds] 05:09 -!- c0rw1n is now known as c0rw|away 05:10 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has joined #bitcoin-wizards 05:10 -!- c0rw|away [~c0rw1n@91.176.85.209] has quit [] 05:14 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has quit [Ping timeout: 244 seconds] 05:17 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 05:22 -!- fanquake [~anonymous@unaffiliated/fanquake] has left #bitcoin-wizards [] 05:22 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 272 seconds] 05:24 -!- Starduster [~guest@unaffiliated/starduster] has quit [] 05:27 -!- x98gvyn [~vfbtgn@79.115.59.38] has joined #bitcoin-wizards 05:28 -!- arubi_ [~ese168@unaffiliated/arubi] has joined #bitcoin-wizards 05:39 -!- eudoxia [~eudoxia@r167-57-102-235.dialup.adsl.anteldata.net.uy] has joined #bitcoin-wizards 05:41 -!- tromp_ [~tromp@ool-18be0b4d.dyn.optonline.net] has joined #bitcoin-wizards 05:52 -!- stevenroose [stevenroos@gateway/shell/yourbnc/x-rpvuwajvnvkknyyg] has quit [Ping timeout: 252 seconds] 05:53 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has joined #bitcoin-wizards 05:54 -!- instagibbs [60ff5d39@gateway/web/freenode/ip.96.255.93.57] has joined #bitcoin-wizards 05:54 < instagibbs> never trust anyone over 30 05:55 < kinlo> right, that makes sense 05:56 -!- StephenM347 [~stephenm3@static-64-223-246-218.port.east.myfairpoint.net] has joined #bitcoin-wizards 05:58 -!- stevenroose [stevenroos@gateway/shell/yourbnc/x-kvlyvmqikppfhyvh] has joined #bitcoin-wizards 05:58 < instagibbs> I'm under 30 so you can trust this statement kinlo 05:59 < kinlo> I'm pretty sure you're an idiot :) 06:03 < fluffypony> kinlo: *ur 06:03 < kinlo> ? 06:04 -!- SDCDev [~quassel@unaffiliated/sdcdev] has joined #bitcoin-wizards 06:10 -!- TonyClifton [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has quit [Ping timeout: 246 seconds] 06:10 -!- bsm117532 [~bsm117532@static-108-21-236-13.nycmny.fios.verizon.net] has quit [Ping timeout: 255 seconds] 06:11 -!- llllllllll [~lllllllll@6d482698.ftth.concepts.nl] has joined #bitcoin-wizards 06:12 < sipa> instagibbs: does 30.5 count as over 30? 06:12 < sipa> are you using natural or real arithmetic? 06:15 -!- paveljanik [~paveljani@79-98-72-216.sys-data.com] has joined #bitcoin-wizards 06:15 -!- paveljanik [~paveljani@79-98-72-216.sys-data.com] has quit [Changing host] 06:15 -!- paveljanik [~paveljani@unaffiliated/paveljanik] has joined #bitcoin-wizards 06:15 -!- xenog [~xenog@95.83.254.82] has joined #bitcoin-wizards 06:15 -!- nessence [~alexl@151.54.253.84.static.wline.lns.sme.cust.swisscom.ch] has quit [] 06:16 < instagibbs> sipa: ill bring that up at the local under over 30 meeting 06:18 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 06:21 < sipa> also, what number base? 06:22 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 255 seconds] 06:27 -!- hashtag [~hashtag@CPE-69-23-213-3.wi.res.rr.com] has joined #bitcoin-wizards 06:29 -!- Quanttek [~quassel@2a02:8108:73f:f6e4:e23f:49ff:fe47:9364] has joined #bitcoin-wizards 06:31 < brisque> sipa: hex. you're really 48 in decimal. 06:35 -!- p15x [~p15x@114.243.153.83] has quit [Max SendQ exceeded] 06:36 -!- p15x [~p15x@182.50.108.65] has joined #bitcoin-wizards 06:42 -!- coiner [~linker@115.79.55.177] has quit [Ping timeout: 246 seconds] 06:43 -!- xenog [~xenog@95.83.254.82] has quit [Ping timeout: 246 seconds] 06:43 -!- adam3us [~Adium@wilkins2.static.monkeybrains.net] has quit [Quit: Leaving.] 06:48 -!- wallet42 [~wallet42@93.152.200.223] has joined #bitcoin-wizards 06:53 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has joined #bitcoin-wizards 06:57 -!- CoinMuncher1 [~jannes@ip54544d54.adsl-surfen.hetnet.nl] has joined #bitcoin-wizards 06:57 -!- CoinMuncher [~jannes@178.132.211.90] has quit [Ping timeout: 264 seconds] 06:59 -!- xenog [~xenog@46.7.118.40] has joined #bitcoin-wizards 06:59 -!- CoinMuncher [~jannes@178.132.211.90] has joined #bitcoin-wizards 07:00 -!- SDCDev [~quassel@unaffiliated/sdcdev] has quit [Ping timeout: 250 seconds] 07:00 -!- OneFixt [~OneFixt@unaffiliated/onefixt] has quit [Remote host closed the connection] 07:01 -!- CoinMuncher1 [~jannes@ip54544d54.adsl-surfen.hetnet.nl] has quit [Ping timeout: 250 seconds] 07:01 -!- orik [~orik@50-46-132-219.evrt.wa.frontiernet.net] has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…] 07:14 -!- lclc_ [~lucas@unaffiliated/lclc] has quit [Ping timeout: 265 seconds] 07:17 -!- oaavi [uid16128@gateway/web/irccloud.com/x-pwhemhffsbvbeyii] has joined #bitcoin-wizards 07:18 -!- TonyClifton [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has joined #bitcoin-wizards 07:19 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 07:20 -!- nubbins` [~leel@unaffiliated/nubbins] has joined #bitcoin-wizards 07:23 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 245 seconds] 07:25 -!- DougieBot5000 [~DougieBot@unaffiliated/dougiebot5000] has joined #bitcoin-wizards 07:25 -!- Starduster [~guest@unaffiliated/starduster] has joined #bitcoin-wizards 07:30 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has joined #bitcoin-wizards 07:35 -!- p15 [~p15@198.50.160.97.static-ca.cryptolayer.com] has quit [Ping timeout: 240 seconds] 07:40 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has quit [Read error: Connection reset by peer] 07:40 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has joined #bitcoin-wizards 07:42 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaways.net] has joined #bitcoin-wizards 07:42 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaways.net] has quit [Changing host] 07:42 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 07:46 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Ping timeout: 256 seconds] 07:50 -!- d1ggy [~d1ggy@dslb-188-108-254-225.188.108.pools.vodafone-ip.de] has quit [Quit: Leaving] 07:52 -!- yorick [~yorick@oftn/member/yorick] has joined #bitcoin-wizards 07:57 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 07:57 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Disconnected by services] 07:57 * jtimon got stuck trying to convert 0.5 hex years to months... 07:57 -!- zooko [~user@c-75-70-204-109.hsd1.co.comcast.net] has joined #bitcoin-wizards 07:59 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has quit [Quit: Leaving.] 07:59 < sipa> 3.75? 08:02 < adlai> 1825/16 days :P 08:03 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has joined #bitcoin-wizards 08:12 -!- wallet421 [~wallet42@93.152.200.223] has joined #bitcoin-wizards 08:12 -!- wallet421 [~wallet42@93.152.200.223] has quit [Changing host] 08:12 -!- wallet421 [~wallet42@unaffiliated/wallet42] has joined #bitcoin-wizards 08:12 -!- wallet42 is now known as Guest21119 08:12 -!- Guest21119 [~wallet42@93.152.200.223] has quit [Killed (weber.freenode.net (Nickname regained by services))] 08:12 -!- wallet421 is now known as wallet42 08:19 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 08:23 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has quit [Quit: Leaving.] 08:24 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 246 seconds] 08:26 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Remote host closed the connection] 08:29 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Read error: Connection reset by peer] 08:29 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaways.net] has joined #bitcoin-wizards 08:29 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaways.net] has quit [Changing host] 08:29 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 08:32 -!- xenog [~xenog@46.7.118.40] has quit [Remote host closed the connection] 08:34 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 08:35 -!- lclc_ [~lucas@unaffiliated/lclc] has joined #bitcoin-wizards 08:40 -!- burcin [~quassel@oscar.iwr.uni-heidelberg.de] has quit [Read error: Connection reset by peer] 08:43 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has joined #bitcoin-wizards 08:46 -!- lclc_ [~lucas@unaffiliated/lclc] has quit [Ping timeout: 246 seconds] 08:51 -!- xenog [~xenog@46.7.118.40] has joined #bitcoin-wizards 08:52 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has quit [Quit: Leaving.] 08:54 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has joined #bitcoin-wizards 08:56 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Read error: Connection reset by peer] 08:56 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaways.net] has joined #bitcoin-wizards 08:56 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaways.net] has quit [Changing host] 08:56 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 09:02 -!- TonyClifton [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has quit [Ping timeout: 244 seconds] 09:03 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Read error: Connection reset by peer] 09:03 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 09:03 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Changing host] 09:03 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 09:04 -!- TonyClifton [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has joined #bitcoin-wizards 09:10 -!- instagibbs [60ff5d39@gateway/web/freenode/ip.96.255.93.57] has quit [Quit: Page closed] 09:10 -!- luny [~luny@unaffiliated/luny] has quit [Read error: Connection reset by peer] 09:10 -!- luny` [~luny@unaffiliated/luny] has joined #bitcoin-wizards 09:11 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Read error: Connection reset by peer] 09:11 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 09:12 -!- michagogo [uid14316@wikia/Michagogo] has quit [Ping timeout: 265 seconds] 09:13 -!- binaryatrocity_ [~atr0phy.n@2606:df00:3:0:216:3cff:fe68:30d9] has joined #bitcoin-wizards 09:14 -!- coryfields_ [~quassel@2001:4802:7800:1:6fc4:c486:ff20:1fa] has joined #bitcoin-wizards 09:14 -!- binaryatrocity [~atr0phy.n@2606:df00:3:0:216:3cff:fe68:30d9] has quit [Ping timeout: 265 seconds] 09:14 -!- btcdrak [uid52049@gateway/web/irccloud.com/x-wbtzlprjegbvthee] has quit [Ping timeout: 265 seconds] 09:14 -!- Zouppen [joell@moskova.liittovaltio.fi] has quit [Ping timeout: 265 seconds] 09:14 -!- Muis [sid26074@gateway/web/irccloud.com/x-mtlnorbbzhjoaxaz] has quit [Ping timeout: 265 seconds] 09:14 -!- sneak [~sneak@unaffiliated/sneak] has quit [Ping timeout: 265 seconds] 09:14 -!- cfields [~quassel@unaffiliated/cfields] has quit [Ping timeout: 265 seconds] 09:14 -!- coryfields [~quassel@2001:4802:7800:1:6fc4:c486:ff20:1fa] has quit [Ping timeout: 265 seconds] 09:14 -!- yrashk [sid1568@gateway/web/irccloud.com/x-cjpgvivjniwemztk] has quit [Ping timeout: 265 seconds] 09:14 -!- catcow [sid62269@gateway/web/irccloud.com/x-uhlsqcotsjfuxyhg] has quit [Ping timeout: 265 seconds] 09:15 -!- sneak [~sneak@2a01:4f8:141:ffc:e84f:f67d:4b81:fe3f] has joined #bitcoin-wizards 09:15 -!- sneak [~sneak@2a01:4f8:141:ffc:e84f:f67d:4b81:fe3f] has quit [Changing host] 09:15 -!- sneak [~sneak@unaffiliated/sneak] has joined #bitcoin-wizards 09:15 -!- Zouppen [joell@moskova.liittovaltio.fi] has joined #bitcoin-wizards 09:16 -!- cfields [~quassel@unaffiliated/cfields] has joined #bitcoin-wizards 09:19 -!- Muis [sid26074@gateway/web/irccloud.com/x-quujteaegmgknfnr] has joined #bitcoin-wizards 09:20 -!- catcow [sid62269@gateway/web/irccloud.com/x-lsvsyfzhoyfrymcn] has joined #bitcoin-wizards 09:20 -!- m0mchil [~m0mchil@unaffiliated/m0mchil] has joined #bitcoin-wizards 09:20 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 09:22 -!- btcdrak [uid52049@gateway/web/irccloud.com/x-qlvozelfdgfapdoz] has joined #bitcoin-wizards 09:22 -!- yrashk [sid1568@gateway/web/irccloud.com/x-mkgpxnceyridpzrt] has joined #bitcoin-wizards 09:22 -!- michagogo [uid14316@wikia/Michagogo] has joined #bitcoin-wizards 09:25 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 252 seconds] 09:29 -!- arubi_ [~ese168@unaffiliated/arubi] has quit [Quit: Leaving] 09:54 -!- hearn [~mike@199-188-193-172.PUBLIC.monkeybrains.net] has joined #bitcoin-wizards 10:10 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Remote host closed the connection] 10:11 -!- cbeams_ [~cbeams@chello084114181075.1.15.vie.surfer.at] has joined #bitcoin-wizards 10:13 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Read error: Connection reset by peer] 10:13 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 10:13 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Changing host] 10:13 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 10:14 -!- eudoxia [~eudoxia@r167-57-102-235.dialup.adsl.anteldata.net.uy] has quit [Quit: Leaving] 10:18 -!- wallet42 [~wallet42@unaffiliated/wallet42] has quit [Ping timeout: 252 seconds] 10:21 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 10:25 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 250 seconds] 10:26 -!- arubi_ [~ese168@unaffiliated/arubi] has joined #bitcoin-wizards 10:27 -!- tylersmith [~tylersmit@173.247.206.110] has joined #bitcoin-wizards 10:29 -!- Profreid [~Profreitt@gateway/vpn/privateinternetaccess/profreid] has joined #bitcoin-wizards 10:29 -!- waxwing [~waxwing@62.205.214.125] has quit [Ping timeout: 252 seconds] 10:35 -!- terpo [~terpo@81-64-36-59.rev.numericable.fr] has quit [] 10:35 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Disconnected by services] 10:35 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has joined #bitcoin-wizards 10:38 -!- adlai [~Adlai@unaffiliated/adlai] has quit [Ping timeout: 246 seconds] 10:39 -!- tylersmith [~tylersmit@173.247.206.110] has quit [Ping timeout: 264 seconds] 10:43 -!- waxwing [waxwing@gateway/vpn/mullvad/x-ryrbnviztrhzggce] has joined #bitcoin-wizards 10:53 -!- Adlai [~Adlai@unaffiliated/adlai] has joined #bitcoin-wizards 11:00 -!- CoinCadence [4355e6bd@gateway/web/freenode/ip.67.85.230.189] has joined #bitcoin-wizards 11:01 -!- TonyClifton [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has quit [Remote host closed the connection] 11:02 -!- TonyClifton [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has joined #bitcoin-wizards 11:06 -!- Mably [56401ec5@gateway/web/freenode/ip.86.64.30.197] has quit [Quit: Page closed] 11:09 -!- bendoernberg [~bendoernb@87.sub-75-213-108.myvzw.com] has joined #bitcoin-wizards 11:15 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has quit [Quit: Leaving.] 11:16 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has quit [Remote host closed the connection] 11:17 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has joined #bitcoin-wizards 11:17 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has quit [Read error: Connection reset by peer] 11:17 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 11:17 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Changing host] 11:17 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 11:20 -!- TonyClifton [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has quit [Ping timeout: 255 seconds] 11:22 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 11:23 -!- maraoz [~maraoz@43-161-16-190.fibertel.com.ar] has quit [Quit: Leaving] 11:23 -!- maraoz [~maraoz@43-161-16-190.fibertel.com.ar] has joined #bitcoin-wizards 11:24 -!- CoinMuncher [~jannes@178.132.211.90] has quit [Quit: Leaving.] 11:24 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has joined #bitcoin-wizards 11:24 -!- bendoernberg [~bendoernb@87.sub-75-213-108.myvzw.com] has quit [Ping timeout: 240 seconds] 11:25 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has quit [Ping timeout: 252 seconds] 11:26 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 246 seconds] 11:29 -!- tcrypt [~tylersmit@173.247.206.110] has joined #bitcoin-wizards 11:29 -!- luny` is now known as luny 11:30 -!- Burrito [~Burrito@unaffiliated/burrito] has joined #bitcoin-wizards 11:31 -!- belcher [~belcher-s@unaffiliated/belcher] has joined #bitcoin-wizards 11:31 -!- hashtagg [~hashtagg_@CPE-69-23-213-3.wi.res.rr.com] has joined #bitcoin-wizards 11:33 -!- hashtag_ [~hashtagg_@CPE-69-23-213-3.wi.res.rr.com] has quit [Ping timeout: 252 seconds] 11:33 < petertodd> instagibbs: are you over or under 30? 11:35 < petertodd> brisque: meh, the centralization that long-term checkpoints introduce may prove to be less damaging than the centralization ASICs and mining pools introduce; we don't have the perfect PoW implementation that we wish we had 11:35 -!- bendoernberg [~bendoernb@108.61.228.100] has joined #bitcoin-wizards 11:35 -!- SDCDev [~quassel@unaffiliated/sdcdev] has joined #bitcoin-wizards 11:36 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has quit [Quit: Leaving.] 11:40 < kanzure> petertodd: any opinions on the "lower the max block size" concept? :P ("so that we can see what happens when max block size is regularly hit in a somewhat more controlled fashion (without the entire network blowing up due to bandwidth/hdd constraints)") 11:40 -!- dc17523be3 [unknown@gateway/vpn/mullvad/x-hsankivxqrpxmvol] has quit [Ping timeout: 245 seconds] 11:41 < petertodd> kanzure: we already did that with the default soft-limit, and hearn and others campaigned heaviliy to raise it well before it got interesting 11:41 < kanzure> i am not sure i know about the soft-limit, whether it was implemented, and what the results were 11:41 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has joined #bitcoin-wizards 11:42 < Luke-Jr> kanzure: it was lifted before it was relevant 11:42 < petertodd> Luke-Jr: ^ 11:42 < petertodd> er, I mean 11:42 < petertodd> kanzure: ^ 11:42 -!- dc17523be3 [~unknown@193.138.219.233] has joined #bitcoin-wizards 11:42 < Luke-Jr> dropping it back would be helpful, but good luck getting the monster pools to do it 11:43 < kanzure> hmph. 11:43 < petertodd> pools are actually pretty receptive to dropping it, but the PR of doing so is bad on reddit :/ 11:43 < kanzure> seems like we should be pushing for experiments that seem to be less harmful in general 11:44 < kanzure> the network might get stuck in other interesting ways with lower block size limits though, like maybe mempools explode and barf over everything 11:44 -!- cbeams_ [~cbeams@chello084114181075.1.15.vie.surfer.at] has quit [Remote host closed the connection] 11:44 -!- wallet42 [~wallet42@93.152.200.223] has joined #bitcoin-wizards 11:45 < petertodd> kanzure: well, it's easy to do the math on "mempools barfing" - just a function how many $/gb used you want to spend 11:47 < kanzure> i wonder if there was anything that could have been learned from that soft limit anyway. like "yes more devices can participate", but we already know that sort of. 11:47 -!- OneNomos [~OneNomos@pool-71-163-227-3.washdc.east.verizon.net] has quit [Remote host closed the connection] 11:48 < petertodd> kanzure: would have driven the adoption of non-chain tech faster 11:48 -!- Luke-Jr [~luke-jr@unaffiliated/luke-jr] has quit [Excess Flood] 11:48 < petertodd> then again, we already saw that with changetip, gambling sites, etc. 11:49 < justanotheruser> reddit gets mad at pools for not having large blocks? 11:49 -!- Luke-Jr [~luke-jr@unaffiliated/luke-jr] has joined #bitcoin-wizards 11:49 -!- bendoernberg [~bendoernb@108.61.228.100] has quit [Ping timeout: 240 seconds] 11:49 -!- SDCDev [~quassel@unaffiliated/sdcdev] has quit [Ping timeout: 244 seconds] 11:50 < Adlai> reddit gets mad at dissent 11:50 -!- Iriez [wario@distribution.xbins.org] has quit [Excess Flood] 11:50 < justanotheruser> would they prefer the pools fill the coinbase with image macros? 11:51 < petertodd> justanotheruser: of course they do - it directly leads to transactions being more expensive, and larger blocks have no immediate downsides for SPV users 11:51 < justanotheruser> what benefit does more expensive transactions have for reddit? 11:52 -!- Iriez [wario@distribution.xbins.org] has joined #bitcoin-wizards 11:52 < petertodd> justanotheruser: er, that's what I said... :) 11:52 < justanotheruser> ? 11:53 < petertodd> justanotheruser: I mean, obviously there is no benefit to more expensive transactions for reddit because there's no benefit to smaller blocks for reddit - they're all SPV or hosted wallet users 11:54 < justanotheruser> oh, I was looking at that backwards 11:54 < justanotheruser> that actually sheds some light on reddit pushing super hard to increase block size 11:55 < petertodd> that's why we keep saying it's a tragedy of the commons situation... 11:55 < kanzure> i wonder if there's a way to construct proof or evidence of a certain amount of participation in blockchain consensus activities (not mining, though) 11:55 -!- SDCDev [~quassel@unaffiliated/sdcdev] has joined #bitcoin-wizards 11:56 < kanzure> eh nevermind. i will formalize that later. 11:56 < petertodd> kanzure: how much do you want to bet that the answer will be basically no? :P 11:57 < kanzure> if nodes are not anonymous, they could sign consensus activity receipts or something, as a way of monitoring this? 11:57 < Adlai> the best i've seen (for mining) is to mine on p2pool, which 'proves' not only your hashpower, but how much you actually earned... using this for verifiable mining contracts is left as an exercise to the miners 11:57 < kanzure> 11:57 -!- bendoernberg [~bendoernb@87.sub-75-213-108.myvzw.com] has joined #bitcoin-wizards 11:58 -!- luktgf [~vfbtgn@188.25.32.243] has joined #bitcoin-wizards 11:58 < petertodd> kanzure: note how everything you're proposing adds a whole lot of complexity that will get rejected by the reddit crowd anyway "It'll all magically work! Incentives and stuff!" 11:58 < kanzure> oh, this is not for them, this is for my own benefit 11:59 < petertodd> ultimately I think the problem is we have people who aren't security engineers proposing to change a security-related system 11:59 < CoinCadence> Adlai: agreed. 11:59 < justanotheruser> does bitnodes check whether you're relaying stuff or just whether you accept incomming connections? 11:59 < CoinCadence> Just wish we could solve P2Pools scalability problems 11:59 < justanotheruser> if it's the former that's probably the closest you can get to that 12:00 < kanzure> the receipts i proposed would maybe be a solution to problems regarding hosted wallets and gossip/consensus participation (again, not mining) for reviewing whether nodes are rejecting your activity or something 12:00 < gmaxwell> CoinCadence: huh? I dunno what you're talking about wrt p2pool. It has basically perfect scalablity. 12:00 -!- SDCDev [~quassel@unaffiliated/sdcdev] has quit [Excess Flood] 12:00 < CoinCadence> Smaller miners get squezed out as the pool rate increses 12:00 < Adlai> it doesn't scale down too well once the p2pool share difficulty gets high relative to ... what CoinCadence said 12:01 < gmaxwell> CoinCadence: Thats a misunderstanding. 12:01 -!- x98gvyn [~vfbtgn@79.115.59.38] has quit [Ping timeout: 264 seconds] 12:01 < CoinCadence> 5-6 big miners can drive difficulty very high, so smaller miners can not keep a share in the chain for when a block is found 12:01 -!- Tjopper [~Jop@dhcp-077-249-237-229.chello.nl] has joined #bitcoin-wizards 12:02 < gmaxwell> If you'd said "solve variance" I agree there are things to improve there. But p2pool pays fairly in the expectation, regardless of the hashrate or hashrate ratios. 12:02 < CoinCadence> and variance gets very high... 12:02 < petertodd> sigh... solving varience is critical if we want people using p2pool - varience has a very real business cost 12:02 < CoinCadence> agreed, 12:02 < petertodd> *variance 12:02 < gmaxwell> CoinCadence: Thats incorrect. :( the additional hashpower _decreases_ variance, yes, share variance goes up, but block variance goes down, and the net increase is a _reduction_ in variance. 12:03 < CoinCadence> not for the average home miner... 12:03 < Adlai> share variance is all that matters when your expected number of shares per block reaches 0 12:03 < gmaxwell> Basicallly p2pool gives at best a constant fraction redunction in variance. 12:03 * Adlai was in this situation for the last ~month of his miner's life 12:03 < petertodd> p2pool will never have as low variance as just using GHash.IO, and there just aren't good reasons to use it for the people who would use GHash.IO - running a full node has a very real cost 12:04 < CoinCadence> we have plenty of 0 zee public nodes available, they are underutalized 12:04 < gmaxwell> Adlai: That _NOT_ correct. holy crap, please go wrie a simulator and check it out. It doesn't matter _where_ you variance comes from. You are not better off "having a share" when there is no block found at all, that the pool sometimes finds blocks which don't include you is not a benefit to you vs not finding the blocks at all. :) 12:04 < CoinCadence> *fee 12:04 -!- bendoernberg [~bendoernb@87.sub-75-213-108.myvzw.com] has quit [Ping timeout: 252 seconds] 12:06 < petertodd> CoinCadence: yeah, for pools of any kind, p2pool public nodes included, marketting matters tremendously 12:06 < Adlai> wouldn't p2pool be better off with another large miner's worth of small miners in a hierarchical sharechain? 12:06 < kanzure> hmm those receipts would be useless because sybil, anyone can sign your messages and pretend to be a different node claiming they totes agree with your messages 12:06 < kanzure> s/agree/valiate 12:06 < kanzure> *validate 12:06 < CoinCadence> I guess my point is it would be nice to coome up with a method of including more miners, with lower share vaiance without creating dust txs in the generation tx... 12:07 < Adlai> let them eat dust, as long as they mine it 12:08 < gmaxwell> Adlai: No, you can't have unbounded dust; existing hardware is often broken with large coinbase transactions, and huge coinbases would risk increasing orphaning rate if not for all the busted hardware out there. 12:08 < Adlai> gmaxwell: to 'share variance is all that matters', add 'for humans making irrational decisions based on expected utility' 12:08 < Adlai> which unfortunately seem to be the majority of participants in bitcoin 12:09 < gmaxwell> There are a lot of misunderstandings, some of these can be improved via better presentation and education. Twiddling the technology is almost never a good alternative to presentation or education. 12:09 * Adlai needs to mine again, so he'll have skin in this game 12:09 < gmaxwell> That the varance reduction is bounded seems fundimental without invoking a trusted third party to pool funds. 12:09 -!- m0mchil [~m0mchil@unaffiliated/m0mchil] has quit [Ping timeout: 245 seconds] 12:10 < CoinCadence> Could serial multi-sig replace a trusted 3rd party? 12:10 < CoinCadence> trustless is a big part of P2Pool ;) 12:10 * gmaxwell has mined since roughly the end of 2010, save for ~three months between moving to CA and avalons showing up. 12:11 -!- huseby [~huseby@unaffiliated/huseby] has quit [Quit: huseby] 12:11 < kanzure> i wonder whether more-informative responses from validating nodes regarding validation errors would be useful for taking account of network status for node operators. hrm. 12:11 < gmaxwell> CoinCadence: I disagree that trustlessness is actually a big part of p2pool in practice. A significant franction of p2pool users have used third party servers; which are completely trusted. 12:11 -!- huseby [~huseby@unaffiliated/huseby] has joined #bitcoin-wizards 12:12 < CoinCadence> gmaxwell: true, but with the exception of NastPools new implementation they are still paid from coinbase... 12:12 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has joined #bitcoin-wizards 12:13 < CoinCadence> our public node is open to all, 0 fee, miner username = payout address 12:13 -!- bendoernberg [~bendoernb@gateway/vpn/privateinternetaccess/bendnyc] has joined #bitcoin-wizards 12:13 < gmaxwell> CoinCadence: that doesn't make it trustless, thats trustlessness theater. 12:13 < CoinCadence> lol 12:13 < petertodd> "trustlessness theater" <- nice 12:13 < gmaxwell> (and plenty of other ones have done traditional aggregated pooling on top of it) 12:13 < CoinCadence> I guess to some degree it is, but we allways encourage to set up own node... 12:14 < petertodd> though I think "decentralization theater" has a better ring to it 12:14 < gmaxwell> (To be fair, it's not _totally_ trustlessness theater, but considering the high share variance its darn near so) 12:14 < CoinCadence> would not be hard to skim shares, if your on someone eleses node you have to trust them, true 12:15 < gmaxwell> it would be perfectly reasonable for people to instead of mining to their own address, mine to a multisig address that has agreed to pool and pay out for them, then they could get very low variance, same as any other pool.. with exchange of some risk. 12:17 < CoinCadence> like it, how do you determine what each miner on a given multi-sig has contributed? 12:17 < kanzure> mining to a multisig address would not make that trustless ;) 12:17 < Adlai> but it's decentralizing the trustlessness! 12:18 < kanzure> or rather, i mean login with a multisig address or whatever 12:18 < CoinCadence> would allow for groups of smaller miners to join, and yes would require trust within the group... 12:18 < justanotheruser> yeah, pay-to-proportional-tx-output-set-hash 12:18 < gmaxwell> CoinCadence: they send the multisigners evidence of their mining seperately. 12:19 -!- SDCDev [~quassel@unaffiliated/sdcdev] has joined #bitcoin-wizards 12:19 < gmaxwell> Imagine that the subpool is PPS for a moment. You mine to 3subpool and then send any (say, diff 256) shares you find to the multisigners, and then they credit you diff 256 worth of bitcoin, which you can withdraw at any time from them. 12:20 -!- luktgf [~vfbtgn@188.25.32.243] has quit [Ping timeout: 246 seconds] 12:21 < CoinCadence> gmaxwell: I get it, the caviat is how the multisigners come to consensus 12:21 -!- licnep [uid4387@gateway/web/irccloud.com/x-xilmkirrzcasckyr] has joined #bitcoin-wizards 12:22 < gmaxwell> CoinCadence: thats up to them, I gave a PPS example because it simplified out that part. Without it then everyone would submit shares to them and they come to consensus among themselves about which shares are to be paid. 12:22 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 12:23 < gmaxwell> Consensus with a fixed set of participants is a solved problem many times over. 12:26 < CoinCadence> I wonder if we could modify the share chain to include a miner ID along with the multisig address, and use the share chain to track valid shares submitted by each miner in the cluster, then you could set a time in the future to pay based on a threshold you are comfortable with? 12:26 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has quit [Quit: Leaving.] 12:27 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 264 seconds] 12:27 < gmaxwell> there isn't any modification required, you cna have arbtitary extra data, but you're missing the point there. If you only use the data in the p2pool sharechain you get the same variance as if you were paying the users directly. 12:28 < gmaxwell> (unless you allow the sharechain data rate to become large, and potentially unreasonable.) 12:30 < CoinCadence> That was another agle prposed by some of the community, make p2pool more efficient (maybe by re-writing in C++) and increase the number of shares in the chain, either by reducing expected time to share, or by extending the valid chain (or a combination of both) 12:32 < CoinCadence> *angle proposed 12:35 -!- luktgf [~vfbtgn@188.25.32.243] has joined #bitcoin-wizards 12:35 -!- CoinCadence [4355e6bd@gateway/web/freenode/ip.67.85.230.189] has quit [Quit: Page closed] 12:36 -!- Tjopper [~Jop@dhcp-077-249-237-229.chello.nl] has quit [Read error: Connection reset by peer] 12:36 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 12:36 -!- CoinCadence [4355e6bd@gateway/web/freenode/ip.67.85.230.189] has joined #bitcoin-wizards 12:37 < gmaxwell> CoinCadence: people already were bitching about p2pool's bandwidth usage back when it had a 10 second sharechain. I think it's unlikely people would find more than double the current level acceptable. 12:38 < CoinCadence> gmaxwell: was not around then, but bandwith usage for the p2pool node is actually quite low right now... 12:39 < gmaxwell> well the share time was changed to 30 seconds which cut the bandwidth usage by a factor of 3. 12:39 < gmaxwell> I think it was pretty low at 10s too, but obivously opinions differ. :) 12:39 -!- Tjopper [~Jop@dhcp-077-249-237-229.chello.nl] has joined #bitcoin-wizards 12:40 -!- m0mchil [~m0mchil@unaffiliated/m0mchil] has joined #bitcoin-wizards 12:40 < CoinCadence> My node right now: 24.9kB/s 12:40 -!- coiner [~linker@42.115.149.64] has joined #bitcoin-wizards 12:40 < CoinCadence> and I'm one of the mostpopular on the pool ;) 12:41 < CoinCadence> however, some hardware def. had a problem with the high restart rate 12:41 < gmaxwell> your size doesn't change the bandwidth all that much, but yea, it was about 110kB/s previously. 12:42 < gmaxwell> and people did complain about that. (consider a significant portion of the US only has DSL with 1-3 mbit/sec upstream) 12:42 -!- nubbins` [~leel@unaffiliated/nubbins] has quit [Quit: Quit] 12:42 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has joined #bitcoin-wizards 12:44 < dgenr8> petertodd: any data gathered today on fee elasticity wrt a restrictive size limite will not be useful when it's needed .... in a dozen years minimum 12:44 -!- hearn [~mike@199-188-193-172.PUBLIC.monkeybrains.net] has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…] 12:44 -!- coiner [~linker@42.115.149.64] has quit [Ping timeout: 240 seconds] 12:46 < CoinCadence> gmaxwell: thx for your input, I'll continue to think on it... 12:46 -!- orik [~orik@50.34.199.60] has joined #bitcoin-wizards 12:57 -!- Mably [~Mably@unaffiliated/mably] has joined #bitcoin-wizards 12:57 -!- hearn [~mike@199-188-193-172.PUBLIC.monkeybrains.net] has joined #bitcoin-wizards 13:00 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Disconnected by services] 13:00 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has joined #bitcoin-wizards 13:01 -!- koshii [~0@72.34.18.114] has joined #bitcoin-wizards 13:02 -!- d1ggy [~d1ggy@dslb-188-108-254-225.188.108.pools.vodafone-ip.de] has joined #bitcoin-wizards 13:02 -!- eudoxia [~eudoxia@r186-50-119-221.dialup.adsl.anteldata.net.uy] has joined #bitcoin-wizards 13:04 -!- Guyver2 [~Guyver2@guyver2.xs4all.nl] has joined #bitcoin-wizards 13:05 -!- m0mchil [~m0mchil@unaffiliated/m0mchil] has quit [Ping timeout: 252 seconds] 13:09 -!- napedia [~napedia@gateway/vpn/privateinternetaccess/napedia] has joined #bitcoin-wizards 13:14 -!- OneNomos [~OneNomos@pool-71-163-227-3.washdc.east.verizon.net] has joined #bitcoin-wizards 13:18 -!- m0mchil [~m0mchil@unaffiliated/m0mchil] has joined #bitcoin-wizards 13:19 -!- m0mchil [~m0mchil@unaffiliated/m0mchil] has quit [Client Quit] 13:19 -!- skittylx [~skittylx@50-204-147-132-static.hfc.comcastbusiness.net] has joined #bitcoin-wizards 13:19 -!- skittylx [~skittylx@50-204-147-132-static.hfc.comcastbusiness.net] has quit [Changing host] 13:19 -!- skittylx [~skittylx@unaffiliated/skittylx] has joined #bitcoin-wizards 13:20 -!- bendoernberg [~bendoernb@gateway/vpn/privateinternetaccess/bendnyc] has quit [Ping timeout: 265 seconds] 13:22 -!- mrkent [~textual@unaffiliated/mrkent] has joined #bitcoin-wizards 13:30 < gmaxwell> Last call on any blockers for assigning a BIP number to this simple spec specifying lexagraphic ordering by default for p2sh multisignature: https://github.com/afk11/bips/blob/b924a75f66580ffa12b6f72b625ec1575d002691/bip-0090.mediawiki 13:31 < gmaxwell> (i.e. are there any important applications or optimizations which are broken by using this particular ordering rather than some other one which need to be discussed; the proposal is really short and can be skimmed in just a minute) 13:32 < kanzure> i looked over it and didn't see any problems, but the absence of mumble mumble does not prove mumble mumble 13:32 < gmaxwell> yea sure. the best we can do is make sure a bunch of people have seen it; this isn't cosmic importance, so I'm not looking for proof that no mumble mumble blazerzot. 13:34 < gmaxwell> This scheme cannot work for more complex scripts that use checkmultisig multiple times and reuse some of the keys (because then positions matter); but I think thats compfortably out of scope. 13:36 -!- RoboTeddy [~roboteddy@2601:9:3483:2400:4952:5b9c:fa32:5580] has joined #bitcoin-wizards 13:36 < afk11> i'm here if anything needs answering. 13:37 -!- RoboTedd_ [~roboteddy@2601:9:3483:2400:28ca:2c4c:7248:5171] has joined #bitcoin-wizards 13:38 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 13:39 -!- molec [~molecular@e176098134.adsl.alicedsl.de] has joined #bitcoin-wizards 13:40 -!- RoboTeddy [~roboteddy@2601:9:3483:2400:4952:5b9c:fa32:5580] has quit [Ping timeout: 256 seconds] 13:42 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has quit [Ping timeout: 272 seconds] 13:46 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has quit [Ping timeout: 252 seconds] 13:53 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has joined #bitcoin-wizards 13:55 -!- PaulCapestany [~PaulCapes@204.28.124.82] has quit [Quit: .] 13:57 -!- mike420 [~patb@67-204-205-237.eastlink.ca] has joined #bitcoin-wizards 13:57 < mike420> http://www.ebay.ca/itm/Antminer-S4-2nd-Gen-/271801501789? 13:57 < mike420> good price 13:59 -!- mike420 [~patb@67-204-205-237.eastlink.ca] has left #bitcoin-wizards ["Leaving"] 14:02 < fluffypony> wut 14:03 -!- PaulCapestany [~PaulCapes@204.28.124.82] has joined #bitcoin-wizards 14:04 -!- bramc [~bram@99-75-88-206.lightspeed.sntcca.sbcglobal.net] has joined #bitcoin-wizards 14:05 -!- PaulCapestany [~PaulCapes@204.28.124.82] has quit [Client Quit] 14:07 -!- arubi_ is now known as arubi 14:07 -!- Eclipse [~LukeAgain@lukej.ovh] has joined #bitcoin-wizards 14:07 < Eclipse> BRUH BRUH 14:07 -!- Eclipse [~LukeAgain@lukej.ovh] has left #bitcoin-wizards ["Leaving"] 14:07 < bramc> petertodd, I'm planning on going to your talk at bitcoin-dev 14:08 < bramc> So, I've been working on this problem of combining multiple proofs of storage to make it so that a pool can't get a side advantage, and have come up with some fairly 'well duh' observations 14:09 -!- skittylx [~skittylx@unaffiliated/skittylx] has quit [Read error: Connection reset by peer] 14:09 -!- vmatekol_ [~vmatekole@f052107202.adsl.alicedsl.de] has joined #bitcoin-wizards 14:10 < bramc> If you look at just a single generation, if you're combining multiple proofs of storage there's a hard limit to how unlikely you can make the attacker to succeed, which is that they might win in every single one of the sub-proofs 14:10 < bramc> So if an attacker has, say, 1/10 of the total capacity, and three proofs of storage are combined, then they have at least a 1/1000 chance of succeeding 14:11 < bramc> There's another monkey wrench in the whole thing, which is that some fraction of the time when they succeed as a fork it isn't really a fork - it's the main chain. It's a bit hard to evaluate that one. 14:14 < bramc> So I'm messing with details to try to get as close to that hard limit as possible. And I'm thinking the number to combine, as they explain in the holy hand grenade skit, is three, because that makes it so that a pool of size 1/10 is hardly getting any benefit, and a pool of size 1/4 is going to have a measurable advantage even with four 14:15 -!- PaulCapestany [~PaulCapes@204.28.124.82] has joined #bitcoin-wizards 14:17 -!- afk11 [~thomas@89.100.72.184] has quit [Ping timeout: 264 seconds] 14:18 -!- PaulCapestany [~PaulCapes@204.28.124.82] has quit [Max SendQ exceeded] 14:18 -!- PaulCapestany [~PaulCapes@204.28.124.82] has joined #bitcoin-wizards 14:18 -!- Quanttek [~quassel@2a02:8108:73f:f6e4:e23f:49ff:fe47:9364] has quit [Ping timeout: 272 seconds] 14:21 -!- PaulCapestany [~PaulCapes@204.28.124.82] has quit [Max SendQ exceeded] 14:21 -!- PaulCapestany [~PaulCapes@204.28.124.82] has joined #bitcoin-wizards 14:22 -!- PaulCapestany [~PaulCapes@204.28.124.82] has quit [Client Quit] 14:26 -!- mpmcsweeney [~mpmcsween@c-98-217-146-94.hsd1.ma.comcast.net] has joined #bitcoin-wizards 14:28 -!- skittylx [~skittylx@173.234.150.144] has joined #bitcoin-wizards 14:28 -!- skittylx [~skittylx@173.234.150.144] has quit [Changing host] 14:28 -!- skittylx [~skittylx@unaffiliated/skittylx] has joined #bitcoin-wizards 14:28 < kanzure> gmaxwell: perhaps it would be better to specify the exact script that it is compatible for 14:28 < kanzure> cc afk11 14:28 -!- mpmcsweeney [~mpmcsween@c-98-217-146-94.hsd1.ma.comcast.net] has quit [Client Quit] 14:33 -!- afk11 [~thomas@89.100.72.184] has joined #bitcoin-wizards 14:33 -!- instagibbs [60ff5d39@gateway/web/freenode/ip.96.255.93.57] has joined #bitcoin-wizards 14:33 < instagibbs> kanzure: +1 14:34 -!- LeMiner [HydraIRC@unaffiliated/leminer] has joined #bitcoin-wizards 14:36 -!- skittylx [~skittylx@unaffiliated/skittylx] has quit [Ping timeout: 244 seconds] 14:40 -!- afk11 [~thomas@89.100.72.184] has quit [Quit: Leaving.] 14:40 -!- afk11 [~thomas@89.100.72.184] has joined #bitcoin-wizards 14:44 -!- PaulCapestany [~PaulCapes@204.28.124.82] has joined #bitcoin-wizards 14:48 -!- afk11 [~thomas@89.100.72.184] has quit [Ping timeout: 264 seconds] 14:49 -!- skittylx [~skittylx@173.234.150.144] has joined #bitcoin-wizards 14:49 -!- skittylx [~skittylx@173.234.150.144] has quit [Changing host] 14:49 -!- skittylx [~skittylx@unaffiliated/skittylx] has joined #bitcoin-wizards 14:51 -!- Profreid [~Profreitt@gateway/vpn/privateinternetaccess/profreid] has quit [Quit: Profreid] 14:53 < brisque> justanotheruser: bitnodes does some basic checks and blacklists some Sybil nodes, but it's obviously not able to be perfect. 14:56 < brisque> Petertodd: I'm not sure I understand. if you boil down Bitcoin to checkpoints than you might as well just call it an issued currency by whoever has the key. 14:57 < brisque> petertodd: in the case of ethereum, they've managed to make a GPU resistant mining algorithm that runs primarily on GPUs. 14:58 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Disconnected by services] 14:58 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has joined #bitcoin-wizards 14:58 -!- belcher [~belcher-s@unaffiliated/belcher] has quit [Ping timeout: 256 seconds] 14:58 -!- Emcy [~MC@unaffiliated/mc1984] has quit [Read error: Connection reset by peer] 14:58 < justanotheruser> brisque: Not sure what kanzure was going for, but the best you can do is something like that, or on a small scale try to connect to many nodes with 2 connections and see if they actually validate and relay 15:00 -!- TonyClif_ [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has joined #bitcoin-wizards 15:03 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has quit [Read error: Connection reset by peer] 15:05 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has joined #bitcoin-wizards 15:05 -!- SDCDev [~quassel@unaffiliated/sdcdev] has quit [Remote host closed the connection] 15:05 < brisque> why with two? 15:06 < brisque> more than one doesn't tell you anything more than relaying something unique to them and seeing if it ends up on another peer. also doesn't mean they're a useful node, either. there public software now which will make a Sybil node that passes this tea. 15:07 -!- belcher [~belcher-s@unaffiliated/belcher] has joined #bitcoin-wizards 15:08 < justanotheruser> brisque: making a block is expensive. You want to be able to tell whether the person you relayed to is relaying before the block makes its way back to you 15:09 < justanotheruser> But at this point I am completely speculating on what he meant and it may be completely different 15:11 -!- jhogan42_ [~jhogan42@152.179.131.166] has joined #bitcoin-wizards 15:11 -!- jhogan42 [~textual@152.179.131.166] has joined #bitcoin-wizards 15:12 -!- TonyClif_ [~TonyClift@gateway-nat.fmrib.ox.ac.uk] has quit [Ping timeout: 256 seconds] 15:12 -!- jhogan42_ [~jhogan42@152.179.131.166] has quit [Client Quit] 15:17 -!- skittylx [~skittylx@unaffiliated/skittylx] has quit [Ping timeout: 272 seconds] 15:19 -!- bsm117532 [~bsm117532@static-108-21-236-13.nycmny.fios.verizon.net] has joined #bitcoin-wizards 15:23 < kanzure> we really need a name for the thing that checkpoints were that other people don't mean when they say checkpoints 15:23 < justanotheruser> centralized blockchain block ivalidation? 15:24 -!- eudoxia [~eudoxia@r186-50-119-221.dialup.adsl.anteldata.net.uy] has quit [Quit: Leaving] 15:24 < justanotheruser> *invalidation 15:24 < gmaxwell> It's always easier to change the words you use than the words other people use. 15:25 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Remote host closed the connection] 15:25 -!- paveljanik [~paveljani@unaffiliated/paveljanik] has quit [Quit: Leaving] 15:26 < justanotheruser> or just get rid of them 15:26 < kanzure> i'm okay with that, am still interested in name proposals either way :P 15:26 < kanzure> (for the one that was implemented) 15:27 < justanotheruser> SNCMC - static not-consensus-mechanism checkpoints 15:27 -!- maraoz [~maraoz@43-161-16-190.fibertel.com.ar] has quit [Ping timeout: 240 seconds] 15:27 < Adlai> consensus snapshots? 15:27 < justanotheruser> darkcoiners have also redefined "coinjoin" so they can say "coinjoin is centralized, we don't use coinjoin" 15:27 < petertodd> "trusted snapshots" 15:28 < petertodd> justanotheruser: darkcoiners can go die in a fire for that 15:28 < gmaxwell> trusted is not a great word because you can't tell if it means trustworthy or blindly-relied-on 15:29 < belcher> how the hell is coinjoin centralized? 15:29 < petertodd> brisque: thanks! we should talk there 15:29 < Adlai> through bad implementations such as 'shared send' 15:29 < petertodd> gmaxwell: trusted has this wonderful definition in many circles as "something that can fuck you over"... 15:30 < gmaxwell> petertodd: yes but in others as trust-worthy. :( 15:30 < petertodd> brisque: there's a lot of subtleties to different types of checkpoints in terms of how much auditing happens prior to the trusted checkpoint being accepted 15:30 < petertodd> gmaxwell: "blind checkpoints" 15:30 < gmaxwell> Adlai: yea, nevermind that basically everyone who has worked on or researched coinjoin implementations have told them that their service is busted. alas. 15:30 < petertodd> gmaxwell: er, I mean "blind snapshots" 15:31 < gmaxwell> petertodd: I like that better. 15:31 < kanzure> i forget whether we are trolling each other or which checkpoint definition we are talking about. lemme go look at my notes.. 15:31 < petertodd> kanzure: why not both? 15:32 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaways.net] has quit [Read error: Connection reset by peer] 15:32 < kanzure> what happened to the "anti-dos checkpoint" name suggestion? 15:33 < gmaxwell> At the moment, -- (my opinion is open to change)-- I'm really not fond of any of these schemes, I'd rather just have difficulty threshold style checks to prevent DOS attacks; "consensus advice" that warns you if you're in a weird state; and tools like invalidateblock being available to users. 15:33 < kanzure> checkpoint-for-anti-dos-reasons-only 15:33 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 15:33 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Changing host] 15:33 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 15:33 -!- lurker [6302c70e@gateway/web/freenode/ip.99.2.199.14] has joined #bitcoin-wizards 15:33 < justanotheruser> belcher: implementations of it are 15:34 -!- lurker [6302c70e@gateway/web/freenode/ip.99.2.199.14] has quit [Client Quit] 15:34 < kanzure> initial-sync-checking-stints... i don't know. 15:34 < justanotheruser> just like how file sharing is centralized and bittorrent isn't file sharing 15:34 < petertodd> gmaxwell: I really, really, really dislike difficulty threshold, because that fundementally gives control of what is considered valid to anyone with sufficient hashing power - it's just a bad model with much worse implications than "yes, we claim this blockheader is from a valid chain" 15:34 < gmaxwell> justanotheruser: nothing about _coinjoin_ is centeralized. 15:35 < petertodd> gmaxwell: for instance, consider someone running old software in that case where the diff. threshold represents something relatively easy to attack 15:35 < justanotheruser> gmaxwell: I know, hence the bittorrent example 15:35 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Disconnected by services] 15:35 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 15:35 < justanotheruser> I am just explaining why people mistake coinjoin as being something centralized 15:35 -!- Dr-G2 is now known as Dr-G 15:36 < gmaxwell> petertodd: such a party ultimately already has control... they can cheaply reorgnize the tip as much as they like, double spend people, claw back subsidy and fees, etc... In the case of a large reorg, if you just have all wallets go into a safe mode after it, people can just hit a few buttons and slay off any rewrite. 15:36 < gmaxwell> petertodd: and you've avoided granting tacit approval to things like these centeralized blocksigning schemes or made there be some centerally administred list of trusted values people have to update all the time. 15:36 < petertodd> gmaxwell: that's the thing, no they don't. again, remember my example of someone running some old software where the threshold is out of date 15:37 < petertodd> gmaxwell: after all, I'm only talking about the case where software ships with some blockhashes to skip validation - if the longest chain doesn't appear to include those hashes, redo validation 15:37 < petertodd> gmaxwell: I'm *not* talking about "checkpoints" as we know them 15:38 < gmaxwell> oh you talking about skipping some validation along a single particular path but not changing the consensus. 15:38 < gmaxwell> "blind shortcuts" 15:38 < gmaxwell> a "blindly trusted shortcut" 15:38 < petertodd> yup 15:39 < petertodd> diff. thresholds for anti-dos are perfectly fine 15:40 < gmaxwell> it somewhat seems sad to have all this discussion to save what is only a couple CPU hours after all optimizations are in place. 15:41 < kanzure> "yes, i only have discussions that can save at least 200 million hours of cpu time globally, anything else is boring" words to live by 15:41 < kanzure> (although something i happen to agree with in principle) 15:41 < gmaxwell> The irony is that the initial shortcutting was put in bitcoin core because of an outright bug. We should have taken it back out when the real bug was fixed. (accidentally we were using the SecureAllocator for basically everything, so every allocation was mlocking and on free munlocking and bzeroing... which as a MASSIVE slowdown for verification; esp on operteron where TLB flushes were super exp 15:42 < gmaxwell> ensive) 15:43 -!- aburan28 [~ubuntu@static-108-45-93-72.washdc.fios.verizon.net] has joined #bitcoin-wizards 15:43 -!- c0rw1n [~c0rw1n@91.176.85.209] has joined #bitcoin-wizards 15:43 < gmaxwell> (the nature of the bug made it not show up in profiles... as much of the time was in the kernel) 15:44 -!- afk11 [~thomas@89.100.72.184] has joined #bitcoin-wizards 15:44 < petertodd> well, that's one of the problems with having an architecture and devel philosophy where small changes like that matter... 15:45 -!- droark [~droark@209-6-53-207.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #bitcoin-wizards 15:46 -!- c0rw1n [~c0rw1n@91.176.85.209] has quit [Read error: Connection reset by peer] 15:47 -!- c0rw1n [~c0rw1n@91.176.85.209] has joined #bitcoin-wizards 15:49 -!- aburan28 [~ubuntu@static-108-45-93-72.washdc.fios.verizon.net] has quit [Ping timeout: 245 seconds] 15:52 -!- Emcy [~MC@unaffiliated/mc1984] has joined #bitcoin-wizards 15:58 -!- DougieBot5000 [~DougieBot@unaffiliated/dougiebot5000] has quit [Quit: Leaving] 16:00 -!- Mably [~Mably@unaffiliated/mably] has quit [Read error: Connection reset by peer] 16:00 -!- aburan28 [~ubuntu@static-108-45-93-93.washdc.fios.verizon.net] has joined #bitcoin-wizards 16:04 -!- nubbins` [~leel@unaffiliated/nubbins] has joined #bitcoin-wizards 16:05 -!- koshii [~0@72.34.18.114] has quit [Ping timeout: 272 seconds] 16:05 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 16:05 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Disconnected by services] 16:06 -!- Mably [~Mably@unaffiliated/mably] has joined #bitcoin-wizards 16:11 -!- skittylx [~skittylx@unaffiliated/skittylx] has joined #bitcoin-wizards 16:12 -!- damethos [~damethos@unaffiliated/damethos] has joined #bitcoin-wizards 16:14 < bramc> gmaxwell, Is there a reason to use SecureAllocator in a full node? Obviously it makes sense in a wallet, but I don't see what's secret in a node. 16:15 < sipa> bramc: only for wallet stuff 16:15 < bramc> I would argue that wallets should be completely separate pieces of software, for basically that reason 16:16 < bramc> If you want a wallet + full node you can run a wallet and a full node. 16:16 < brisque> Adlai: Shared Coin doesn't in a single way resemble coinjoin. 16:16 < brisque> here's a pig. 16:16 * brisque holds up a porcupine 16:16 -!- arubi [~ese168@unaffiliated/arubi] has quit [Ping timeout: 255 seconds] 16:17 < brisque> (they'll never notice because they're not experts in pigs) 16:18 < gmaxwell> bramc: its only wallet code, just some minor mistake in the codebase caused it to get used where it shouldn't be. 16:19 < gmaxwell> "and the evidence is so very clear and present that anyone justifying software design choices by claiming that "the network is reliable" without irony should probably not be trusted to build any computing systems at all" http://queue.acm.org/detail.cfm?id=2745385 16:20 < bramc> Sound travels about a foot per millisecond, FYI 16:20 -!- arubi [~ese168@unaffiliated/arubi] has joined #bitcoin-wizards 16:20 * brisque slaps bramc with a metric ruler 16:21 < bramc> So with an old-school radio setup if you were sitting in the bleachers and listening on the radio you would hear the batter make contact with the ball on the radio at the same time as you saw it but would hear it through the direct air at a noticeable delay 16:22 < sipa> bramc: nobofy disagrees that the wallet code shouldn't be separate :) 16:22 < sipa> just hasn't been done yet 16:23 < brisque> sipa: least that isn't a comment about we have to remove the marketplace *and* the wallet from bitcoin core :) 16:23 < bramc> What do you mean by the marketplace? 16:23 < sipa> hehehe 16:23 < brisque> very very very early bitcoin core had a marketplace built into it, or the framework of one anyway. 16:23 < sipa> bitcoin core 0.1.5 had some unfinished marketplace built in 16:24 < sipa> no actual logic, but part of the network protcol andngui 16:24 -!- AnoAnon [~AnoAnon@197.37.122.74] has joined #bitcoin-wizards 16:25 -!- AnoAnon [~AnoAnon@197.37.122.74] has quit [Read error: Connection reset by peer] 16:26 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 16:26 < hearn> it was intended to be a market where blocks mined == reputation 16:26 < sipa> really? 16:26 < sipa> i never knew that 16:26 < brisque> https://0bin.zertrin.org/paste/2e5db5f7de0f59c62c154b117935a0578045ad58#swlDE30AnRx9SpXx/yj1XtoceqaOxMC/59xUMjYerFw= 16:27 < brisque> "atoms" 16:27 < bramc> Because we all know what reputable upstanding people professional miners are 16:28 < hearn> remember satoshi imagined that most users would mine on their home cpus 16:28 < brisque> keep in mind the network was fairly different to how it is now. you would connect to someone's IP address directly and exchange pubic keys in network messages. 16:28 < hearn> it probably made sense at the time 16:29 < sipa> yeah 16:29 < bramc> There are lots of things which made sense to try at the time which are clearly bad ideas now. 16:29 < hearn> now people are trying to bring it back as openbazaar, except about a million times more complicated 16:29 < hearn> well satoshi said he realised it was a bad idea and switched to doing the rpc api 16:30 < hearn> i.e. he realised the community was growing and his time was better spent empowering other devs 16:30 < sipa> i see 16:30 < sipa> interesting 16:31 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Remote host closed the connection] 16:31 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 16:31 < bramc> Miners can throw whatever info they want into blocks 16:31 < brisque> hearn: started today it would be released as BazaarCoin, have an IPO, and be built into a coloured ethereum sidechain. 16:32 < hearn> yeah. seems a shame. 16:32 < hearn> there's a certain elegance to the "just power through it in win32 C++" approach that satoshi used :) 16:32 < sipa> it would also run on the cloud 16:32 < sipa> mssed opportunity there 16:33 < jgarzik> hearn, rofl 16:33 < bramc> C++ is a strange choice for the bitcoin codebase 16:33 < sipa> i woukd not use anything else if i started today :) 16:33 < jgarzik> I thought so at first -- but in hindsight it's better than the other choices 16:33 < hearn> sipa: "it's decentralised!! all you have to do is install this precise build of ubuntu node mongodb bitcoind go + twelve other libraries and then register for an AWS account!" 16:33 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has quit [Remote host closed the connection] 16:34 < sipa> i woukd like C more, because of easier control over resources 16:34 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has joined #bitcoin-wizards 16:34 < sipa> but needing to deal with manual memory management is such a pain it's not worth it imho 16:34 < bramc> Java and Python are both much less worrisome from a security standpoint, and of course the actual mining should be in C extensions anyway. 16:34 < sipa> consensus code i would write in C 16:34 < hearn> most code doesn't require super explicit control over memory 16:35 < jgarzik> smart C++ engineers out several problematic patterns programmers keep resurrecting. I tend to think C++ is superior to C even for consensus -- and this is coming from a C fan who wrote a C compiler & kernel C code for decades... 16:35 < jgarzik> reluctant conclusion 16:35 < hearn> heh. i'd do it all in java or kotlin :) except for the core ecdsa. that, it seems, pretty much has to be in C or assembly 16:35 < bramc> Does the SecureAllocator using a kernel memory call for each allocation or does it do one big pool via a secure call and use that until it needs another one? 16:35 < sipa> if i could just have structs with constructors and destructors in C, i would use it 16:35 < sipa> bramc: the most naive way possible 16:35 < gmaxwell> bramc: it's not as strange as you might guess. 16:36 -!- instagibbs [60ff5d39@gateway/web/freenode/ip.96.255.93.57] has quit [Quit: Page closed] 16:36 < hearn> sipa: well you can write C++ that way 16:36 < hearn> sipa: but do you really want to write your own linked lists ... 16:36 < bramc> I'm told that C++11 is much less problematic than the older versions 16:36 < sipa> hearn: i have written linked list implememtatiins in C several times :) 16:36 < sipa> hearn: and hash tables 16:36 < sipa> and ni, i don't want to do that again 16:37 < hearn> exactly :) 16:37 < gmaxwell> jgarzik: in general consensu code doesn't do any of the things that are espeically footgunny there, and C++ also introduces a lot of oppturnity for shocking behavior that even surprises the foremost C++ experts that you can find; which is a pretty big liability when writing anything whos behavior must be absolutely and totally unambigious. 16:37 < sipa> but to the extent possible, i think consensus code should have as little allocations at runtime at all 16:37 < bramc> gmaxwell, How is it not so strange? What are th ebenefits? 16:37 < hearn> sipa: why? it's not hard real time. 16:38 < sipa> hearn: being able to reason about memory usage 16:38 < sipa> which does not require no-allocations at all 16:38 < sipa> but minimizing them simplifies things 16:38 < sipa> and c++ really makes it easy to glace over really inefficient things 16:38 < sipa> but maybe that's just a sign of a bad programmer :) 16:39 < gmaxwell> bramc: well consider the original version of bitcoin it was only about 10kloc with a GUI. We have never had a memory safty bug hit us in production-- whole classes of errors that are easy to have in C are much less likely with relatively modern C++. It's not good, however, at avoiding hidden behavior... 16:39 -!- CoinCadence_ [~CoinCaden@ool-4355e6bd.dyn.optonline.net] has joined #bitcoin-wizards 16:40 < brisque> gmaxwell: all the more hell for reimplementations I suppose. 16:40 < hearn> i think we got incredibly lucky with satoshi's code, especially given the total absence of any modern testing methodology 16:40 < gmaxwell> bramc: e.g. the only memory leaky ish bugs we've had IIRC in bitcoin core were just container datastructures which had no upper bound, no actual memory leaks in the sense that you get them in C that I can recall. 16:40 < gmaxwell> hearn: I think you're incorrect about testing methodology, it just wasn't made available to you. 16:40 < jgarzik> gmaxwell, and a lot fewer memory corruption type bugs/errors on average 16:41 < hearn> that's what i mean by reasonable - satoshi tested by writing little standalone apps then throwing them away 16:41 < hearn> sorry s/reasonable/modern/ 16:41 -!- lclc_ [~lucas@unaffiliated/lclc] has joined #bitcoin-wizards 16:41 < jgarzik> sipa, ideally consensus code should do zero allocations... embedded situations want you to pass in things like heap & stack 16:41 < bramc> My coworkers tell me that in C++ 11 you mostly use smart (i.e. ref counted) pointers and unique pointers, so you basically don't do any memory management. Python winds up being basically the same thing 16:41 < hearn> everything about bitcoin 0.1 screamed "this is going to be riddled with exploitable bugs" and it wasn't 16:42 < hearn> bramc: refcounting *is* memory management, but yes it can avoid issues like double frees when done properly and consistently so it's better than fully manual if you can take the code size/perf hit. 16:42 < hearn> (bitcoin doesn't do refcounting) 16:43 < bramc> A lot of the exploitability of a piece of software has to do with how good the developers are. Some people are just plain sloppy 16:43 < bramc> But I prefer to do development in Python for purely development time reasons. 16:43 < gmaxwell> There is very little of satoshi's code left in Bitcoin core. 0.10 replaced much of what had been remaining. 16:44 < bramc> hearn technically Python is garbage collected as well but it turns out in practice most of the work is done by ref counting. I was simplifying. 16:44 < hearn> right 16:45 < gmaxwell> in bitcoin there are very few long lived objects, and basically none without simple linear ownership, memory management isn't generally a huge issue. 16:45 < sipa> bramc: if you wrote consensus code in python, i'm sure you'd get forks when new python versions were introduced :) 16:46 < sipa> jgarzik: yup, libsecp256k1 only does allocations at init time 16:46 < bramc> sipa, No Python is extremely stable in terms of basic syntax. 16:46 < sipa> bramc: well, let me know if you :) 16:47 < hearn> gmaxwell: my fear is that as the years go by and multi-threading gets more common ownership will get more complex. we already have locking issues with the RPC threads vs main threads, etc. threading is a fertile source of double free and ownership type bugs. 16:47 -!- DougieBot5000 [~DougieBot@unaffiliated/dougiebot5000] has joined #bitcoin-wizards 16:47 < bramc> What does the bitcoin codebase use for strings? I'm told null terminated strings have mostly gone the way of the dodo. 16:47 < hearn> but yes it's much less of an issue than say, webkit 16:47 < gmaxwell> bramc: uh. I've had simple thing like adding an import in python change the behavior of unrelated code.. because the import changed things about the interperter enviroment. 16:48 < bramc> gmaxwell, I'd be curious for details on that one. I've never had anything like that happen to me. I also don't use any crazy tricks in Python. 16:48 < bramc> (Well, there's utah data center, but that's just for testing purposes) 16:50 < bramc> If you make a codebase monothreaded and use a consistent and reasonably safe string class that fixes most of your security problems regardless of which language you use. 16:50 < hearn> bramc: std::string 16:50 < hearn> bramc: yeah null terminated strings are a C thing only these days 16:50 -!- rusty [~rusty@pdpc/supporter/bronze/rusty] has quit [Quit: Leaving.] 16:50 -!- Mably [~Mably@unaffiliated/mably] has quit [Ping timeout: 246 seconds] 16:51 -!- arubi [~ese168@unaffiliated/arubi] has quit [Ping timeout: 264 seconds] 16:51 < brisque> hearn: and PHP :P 16:51 < bramc> I'm old enough to have gotten serious criticism as a know it all kid for shitting on null terminated string as being obviously idiotic when I first started out. 16:51 < gmaxwell> bramc: god knows what strings are being used for at all. Every time someone has added some string thing to the Bitcoin system (e.g. not in some UI facing role) they've managed to add some kind of vulnerability or another, strings have no real place in this system. 16:52 -!- afk11 [~thomas@89.100.72.184] has quit [Ping timeout: 245 seconds] 16:52 -!- OneNomos [~OneNomos@pool-71-163-227-3.washdc.east.verizon.net] has quit [Remote host closed the connection] 16:55 < jgarzik> most pragmatic implementations store string length & null terminate for safety (+ speed of rendering a C-string upon request) 16:55 < sipa> which is what std::string does actually 16:56 -!- Tjopper [~Jop@dhcp-077-249-237-229.chello.nl] has quit [Read error: Connection reset by peer] 16:56 < bramc> python3's biggest difference with python2 is the separation of string into separate binary and unicode string data types. It seems utterly barbaric for them to be crammed into the same structure once you're used to that. 16:56 -!- CoinCadence [4355e6bd@gateway/web/freenode/ip.67.85.230.189] has quit [Quit: Page closed] 16:57 < bramc> I'd like to JCF-terminate my length-delimited strings for testing purposes :-P 16:58 < bramc> gmaxwell, Well it implicitly must use binary strings all over the place, at least when it's doing network traffic 16:58 < hearn> we tend to just call those byte arrays 16:58 < hearn> though using std::string to hold arbitrary binary data is not uncommon in many c++ code bases 16:59 -!- adam3us1 [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has joined #bitcoin-wizards 16:59 -!- adam3us [~Adium@88-105-17-85.dynamic.dsl.as9105.com] has quit [Read error: Connection reset by peer] 16:59 < justanotheruser> hearn: what should be used? a vector of bytes? 17:00 < hearn> std::string is a vector of bytes 17:00 < justanotheruser> yes, but its more explicit that way 17:00 < hearn> sure 17:00 < hearn> i am not a big fan of using std::string to hold arbitrary binary data. it's pretty common in the google c++ codebase though 17:01 < hearn> sipa: i think std::string is not null terminated unless you call c_str() 17:01 < bramc> In Python it started that strings were just binary strings, then encoding/decoding support was added with people mostly using uft8 because by that time it had become clear that utf16 was a blight upon humanity 17:01 < hearn> the java guys are working on an interesting way of handling strings. 17:01 < hearn> they want to detect whether a string is ascii or unicode at runtime and then "compress" utf-16 strings down to a variant of ascii on the fly 17:01 < bramc> Now there's bytes for mutable ones and a separate unicode string type in python3 17:03 < bramc> I think Python does something like that too, although that's got an SEP field around it. 17:03 < bramc> I'm mad at the Java people for making the string.encode() method not require an encoding and defaulting to the local system one. 17:04 < bramc> I once had a bunch of overseas developers who thought that Java just magically solved encoding problems for them and that's why it didn't need the parameter 17:04 < bramc> Of course it turned out that their machines had the locale set to latin-1 17:05 < hearn> String.getBytes() without an encoding parameter is deprecated 17:05 < hearn> so they weren't paying attention, apparently 17:05 < hearn> or this was a looooong time ago 17:06 -!- arubi [~ese168@unaffiliated/arubi] has joined #bitcoin-wizards 17:08 -!- afk11 [~thomas@gateway/vpn/privateinternetaccess/afk11] has joined #bitcoin-wizards 17:10 -!- CoinCadence_ is now known as CoinCadence 17:11 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Remote host closed the connection] 17:12 -!- wallet42 [~wallet42@93.152.200.223] has quit [Quit: Leaving.] 17:13 < gmaxwell> hearn: "though using std::string to hold arbitrary binary data is not uncommon in many c++ code bases" yea, well, I hear there are also people who huff glue. 17:13 -!- rusty [~rusty@pdpc/supporter/bronze/rusty] has joined #bitcoin-wizards 17:13 -!- ahmed_ [sid14086@gateway/web/irccloud.com/x-axbueietoqmhbmib] has quit [Quit: Updating details, brb] 17:13 -!- Guyver2 [~Guyver2@guyver2.xs4all.nl] has quit [Remote host closed the connection] 17:14 < bramc> hearn, 2006. Some of us are old :-P 17:15 < Luke-Jr> lol 17:15 < bramc> Does C++ do array bounds checking? 17:15 < hearn> ah ok, my mistake, it's not deprecated actually. it just states that the behaviour is unspecified :) 17:15 -!- lclc_ [~lucas@unaffiliated/lclc] has quit [Ping timeout: 265 seconds] 17:15 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 17:15 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Changing host] 17:15 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 17:15 < hearn> ah i see. it's the ranged version that's deprecated 17:15 < bramc> "Don't have to worry about the encoding problem any more, ops fixed it!" 17:15 < hearn> gmaxwell: well, BigTable does that, and it's one of the best engineered systems i've seen. 17:16 < hearn> though possibly only glue huffers would think "hey let's put the entire web into a database" :) 17:16 < hearn> bramc: it bounds checks std::vector if you use the .at() method which nobody does. the [] operator overload doesn't bounds check 17:16 < phantomcircuit> bramc: yeah null terminated strings are a C thing only these days 17:16 < phantomcircuit> even then 17:16 < phantomcircuit> ew 17:17 < phantomcircuit> hearn: and PHP :P 17:17 < bramc> For anyone missing the joke, a local latin-1 encoding will cause encode() and decode() to return the string passed into them 17:17 < phantomcircuit> php is actually both null terminated and not null terminated which leads to an entirely hilarious class of exploits 17:17 * hearn tries hard to forget that PHP exists 17:17 < hearn> phantomcircuit: lol how does that work? 17:17 < hearn> my father writes code in PHP 17:17 < phantomcircuit> hearn, certain functions treat strings as null terminated and others use their length property 17:18 < hearn> haha. yes that sounds about right. 17:18 < bramc> The upshot of all of this for bitcoin is that unicode shouldn't be allowed anywhere near bitcoind 17:18 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has joined #bitcoin-wizards 17:18 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has quit [Changing host] 17:18 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 17:18 < gmaxwell> bramc: huh? 17:18 < phantomcircuit> hearn, iirc strlen is just a direct call to libc strlen 17:18 -!- hashtag [~hashtag@CPE-69-23-213-3.wi.res.rr.com] has quit [Ping timeout: 252 seconds] 17:18 -!- ahmed_bodi [~ia1@76.164.237.186] has joined #bitcoin-wizards 17:18 < phantomcircuit> so you get fun code where only the part before the nulls are sanitized and there's escape codes afterwards 17:19 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Ping timeout: 256 seconds] 17:19 < bramc> gmaxwell, bitcoin handles binary strings fine as byte arrays, the dangerous thing would be to add unicode strings in somewhere 17:19 < brisque> phantomcircuit: yeah, you can do lots of trickery with that. there's a whole class of php related exploits where you can inject null bytes and bypass security limitations. 17:19 < bramc> JCF terminated, it's the future. 17:20 < phantomcircuit> bramc, except that i dont think bitcoin uses strings anywhere except for the remote client version identifier 17:20 < sipa> and reject messages 17:20 < phantomcircuit> hmm 17:20 < sipa> which have already almost caused a vulnerability 17:20 < hearn> and message type codes 17:20 < bramc> phantomcircuit, I'm not arguing against that 17:20 < phantomcircuit> right 17:20 < hearn> and subVer fields 17:21 -!- LeMiner [HydraIRC@unaffiliated/leminer] has quit [Ping timeout: 245 seconds] 17:21 < bramc> although remote client version identifies should probably be utf-8 and that's the end of it. 17:21 < sipa> hearn: those are constant size (message commamds) 17:21 -!- mkarrer_ [~mkarrer@126.Red-83-32-132.dynamicIP.rima-tde.net] has joined #bitcoin-wizards 17:21 < hearn> right 17:21 < sipa> alerts have several strings 17:21 < gmaxwell> bramc: I think you've spent too much time exposed to languages which needlessly conflate strings with everything. The bitcoin protocol isn't text, its a simple binary protocol, with many fixed length and length encoded fields. There is nearly no text anywhere in it. (nearly: exceptions being things like that client version string thing; which we had _two_ vunlerabilties related to) 17:21 < phantomcircuit> hearn, subVer is what i was talking about 17:21 < brisque> phantomcircuit: subversion, and reject messages I think. 17:22 < gmaxwell> (and which I still think should never have been added, now that _every_ downside I predicted has come true. :) ) 17:22 < phantomcircuit> brisque, yeah that seems to be everything 17:22 < phantomcircuit> gmaxwell, every every or just 99% every 17:23 < hearn> gmaxwell: you don't see the upsides 17:23 < gmaxwell> Well, I'd have to dig, I predicted security bugs, that it would not be set to accurate values, and that software would bogusly test against it. All of which have been true. I might have predicted doom of other forms. 17:23 < bramc> constant size implies that they're binary. If they're unicode with constant binary size then they just happen to be putting in conveniently displayable data but they're still binary 17:23 -!- mkarrer [~mkarrer@126.Red-83-32-132.dynamicIP.rima-tde.net] has quit [Ping timeout: 250 seconds] 17:24 < gmaxwell> There has been some doom I haven't predicted, it actually makes for some mild deanonymization attacks that I didn't quite expect. (people leave the data in logs, because it doesn't seem identifying, and you can watermark version strings when you connect) 17:24 < bramc> gmaxwell, The bittorrent protocol works that way too. It's fairly clear that satoshi had reasonable familiarity with at least the wire specification of bittorrent 17:24 < bramc> starting with how bitcoin was intended to be defined based on a protocol rather than 'whatever this codebase does' (modulo a few bugs which snuck in of course) 17:25 -!- skittylx [~skittylx@unaffiliated/skittylx] has quit [Quit: feel the bass] 17:26 < bramc> Things like version strings should be binary strings, and when people ask about unicode the answer is 'use utf-8 dumbass' 17:26 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Remote host closed the connection] 17:26 < gmaxwell> hearn: upsides are limited by the downsides, a lot of hosts lie about their subver. 17:26 < hearn> i was referring to reject messages. nonetheless, subVer is still useful. 17:27 < gmaxwell> bramc: sure. well thats been the C/Unix land answer to unicode anything pretty much. though its not quite a perfect answer. (e.g. stuff utf-8 into a array of a maximum number of bytes in size...) 17:27 < bramc> In its heart of hearts, is a filename a binary string displayed as unicode or a unicode string encoded as binary? 17:28 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has joined #bitcoin-wizards 17:28 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has quit [Changing host] 17:28 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 17:28 < bramc> gmaxwell, Microsoft totally got fucked by utf-16. They were earnestly trying to do the right thing and follow the 'standard'. 17:28 < phantomcircuit> bramc, the first one which can be super annoying 17:29 < phantomcircuit> (it's valid on most filesystems to save a file with a name that isn't valid utf-8) 17:29 -!- hashtag [~hashtag@CPE-69-23-213-3.wi.res.rr.com] has joined #bitcoin-wizards 17:29 < bramc> phantomcircuit, If only file system apis provided quoting functions to get the local way of encoding an arbitrary fucking filename 17:29 < brisque> hearn: for bitcoin in particular this sort of thing has a higher impact than anywhere else. did anyone else think that you could use the subversion string as a deanonymization side channel? it's really in the clients best interest just to avoid even "harmless" things as much as possible. 17:30 < bramc> And then there are the ... interesting behaviors when you try to make a file whose name is the null character, or zero length, or front slash... 17:30 -!- orik [~orik@50.34.199.60] has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…] 17:30 < phantomcircuit> bramc, sure but rogue programs can still produce filenames which cannot be deleted by "rm" because rm considers the filename invalid 17:30 < phantomcircuit> that's always fun 17:30 -!- orik [~orik@50.34.199.60] has joined #bitcoin-wizards 17:31 < hearn> clients are almost always connecting with their real IP address today over unencrypted connections. subVer fields are really not high up the list of things to worry about. meanwhile there is an actual need for features to aid development, monitoring and administration. 17:31 < phantomcircuit> brisque, client authors want people to know that people are using their client 17:31 < gmaxwell> hearn: I've found rejects useful at times, though the tradeoff is still somewhat unclear to me: For the moderate additional help in trouble shooting we also gained three vulnerabilties (sanitization, memory exhaustion (even though the code tried to limit the size initially it did so too late), and a potential for infinite loops because it could reject reply to a reject message 17:31 < phantomcircuit> (and it's not like identifying clients based on their protocol handling is difficult) 17:31 < bramc> phantomcircuit, I'm continually terrified of trying to store files with filenames suggested by an untrusted source. For example having a file name '~/.profile' in a multifile torrent 17:31 < brisque> phantomcircuit: subvers as an advertising method seems a little far fetched to me 17:32 < gmaxwell> hearn: subver is wrong more often than it's right now if you exclude bitcoin core and bitcoinj _lots_ of things claim to be bitcoin core which are not. So I think that basically makes it useless for monitoring. 17:32 -!- CoinCadence [~CoinCaden@ool-4355e6bd.dyn.optonline.net] has quit [Remote host closed the connection] 17:32 < bramc> Sorry for the dumb question, but what are rejects and subver? 17:32 -!- OneNomos [~OneNomos@pool-71-163-227-3.washdc.east.verizon.net] has joined #bitcoin-wizards 17:32 < phantomcircuit> brisque, it's definitely going on i see version numbers with urls for exchanges sometimes 17:32 < gmaxwell> bramc: subver is a text string that gives the remote peers software version (or whatever else it wasnts to send instead) 17:32 < hearn> i'd like to see a systematic framework for catching memory usage issues. 17:32 < phantomcircuit> (it's actually just the one but im not going to advertise for them here...) 17:33 < hearn> accounting/disconnecting nodes that used up more than their fair share, etc. 17:33 < gmaxwell> bramc: reject is a response that can be sent to messages to say you rejected them. 17:33 < phantomcircuit> hearn, identify all the allocation events and walk the stack backwards 17:33 < gmaxwell> (and maybe why) 17:33 < bramc> Ah, I see 17:33 < hearn> bear in mind that there might be tens of thousands of developers who can develop faster over the next 5 years because of (say) reject, so the benefits pile up over time 17:33 < hearn> bugs are nasty but they get fixed and then the benefits accumulate. 17:34 < bramc> So rejects are a way for developers to tell other developers that their shit is busted? 17:34 < hearn> phantomcircuit: you don't really want to do it that way. you can just use a custom allocator that tracks and accounts memory usage whilst a peer is "in scope". the problem is what to do if a peer goes over its budget 17:34 < gmaxwell> hearn: The time it save in diagnostics mostly translates into "I don't have to test against my own node to see why it rejects things" 17:34 < hearn> bramc: yeah it's an error message scheme for the protocol basically. like HTTP error codes. 17:35 < brisque> bramc: not even that, you can reject for things like an input already being spent. 17:35 -!- orik [~orik@50.34.199.60] has quit [Ping timeout: 264 seconds] 17:36 < phantomcircuit> hearn, i suspect that would end up being more risky than it sounds since you'd have to track which peer triggered the allocation and that information isn't currently available 17:36 < brisque> hearn: point was that you can use a subversion side channel to deanonymise users. ask them to supply a log, they don't scrub the subversion, and you now know what their real IP address is. 17:36 < hearn> gmaxwell: sometimes the production network doesn't match your local setup, though. i mean that argument applies to any network protocol that has an open source server available. we could just make every network protocol just return ERROR if something goes wrong, MS/DOS style. 17:36 < bramc> brisque, I would argue that a 'that input is already spent' message has enough semantic meaning that it should be its own message type instead of relying on the 'human readable' reject message 17:36 -!- xenog [~xenog@46.7.118.40] has quit [Quit: Leaving.] 17:36 < hearn> phantomcircuit: most processing for a peer happens whilst a message is on stack, so you can just put a CPeer reference into a TLS slot, for example (and make sure to propagate it across threads when that happens for eg. signature checking) 17:37 < bramc> You could even make it implicit by making the 'error' response be to send the transaction which you yourself had accepted 17:37 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has quit [Remote host closed the connection] 17:37 < gmaxwell> hearn: it's all much simpler to just avoid the case where a peer can cause you to use memory beyond some trivial amount you can always handle. 17:38 < brisque> bramc: it has both, a machine readable reject reason and a string. 17:38 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has joined #bitcoin-wizards 17:39 < hearn> i'd rather have automatic solutions as much as possible. eg it'd be simpler to use C and just avoid writing bugs, but in practice, the automatic facilities C++ provides do help (and going up one level, automatic gc helps etc) 17:39 < hearn> the code might be being evolved 15 years from now by people we have never met 17:39 < brisque> hearn: like an antimony pill? 17:40 < hearn> from time to time people will make mistakes or network conditions will change, assumptions will be invalidated, etc. better put in place crash mats now. 17:40 < hearn> antimony pill? 17:40 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Read error: Connection reset by peer] 17:40 < brisque> sorry that was a horrible joke. 17:40 < phantomcircuit> hearn, er there's stuff passed between threads which you'd have to handle correctly 17:40 < hearn> phantomcircuit: yes i said that. you have to propagate the peer across thread boundaries. 17:40 < phantomcircuit> it's probably easier than im thinking but harder than you're thinking 17:41 * hearn has experience of building systems that work this way 17:41 < phantomcircuit> and either way just identifying all the potential ridiculous allocation issues and limiting their size is probably easier and saner 17:41 -!- CoinCadence [~CoinCaden@ool-4355e6bd.dyn.optonline.net] has joined #bitcoin-wizards 17:41 < gmaxwell> Sometimes things sold as crash mats turn out to be spike covered death traps in production. e.g. several different attempts at BGP congestion handling resulted in large scale internet outages, because they could turn small single device failures into big convergence faults. Making something automatic at the expense of making it harder or impossible to analyize may not be a win. ... though some ki 17:41 < hearn> i hope at some point to get time to prototype this sort of framework 17:42 < gmaxwell> nds of automatic are safer than others. 17:42 < bramc> As a general rule what makes the codebase for something like bitcoin maintainable is having a coherent protocol specification. First you design the protocol, then you make the codebase conform to it. If it's coherent you can always scrap the current codebase and reimplement 17:42 < brisque> hearn: (in the 19th centuary people would make a pill out of antimony (a poisonous metal) and use it for a sort of laxative effect, birth control or hangover cure. being a metal you could reuse it infinite times, and it would be passed down through families. I was likening the bitcoin codebase to this.) 17:42 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has quit [Ping timeout: 264 seconds] 17:43 < bramc> You should see the garbage generated by people who don't understand that point and are all proud of how well they understand C++ because of all the template metaprogramming and multithreading they've thrown in. 17:43 < phantomcircuit> bramc, except like you cant with bitcoin.... 17:43 < gmaxwell> bramc: the 'protocol' is unimportant, can be replaced at any time.. and in fact the bitcoin system is run over several different protocols now. :) 17:43 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has joined #bitcoin-wizards 17:43 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has quit [Changing host] 17:43 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 17:43 < hearn> brisque: huh, i didn't know that. interesting. 17:44 < hearn> brisque: sounds about as wise as sweetening wine with lead :) 17:44 < bramc> There's always a tension between the de facto protocol and the in principle protocol, but in the case of bitcoin the de facto one is largely subservient 17:44 < bramc> Except for time warp attacks :-P 17:44 < gmaxwell> Bitcoin starts with an authenticated data structure; thats the 'protocol' that counts (transactions and blocks); though it's not what most people are thinking about when they say protocol. 17:45 < bramc> gmaxwell, It peels apart in layers. There's the blockchain format, which is most fundamental, then there's the bitcoin protocol and spv 17:45 -!- CoinCadence [~CoinCaden@ool-4355e6bd.dyn.optonline.net] has quit [Remote host closed the connection] 17:46 -!- hashtag [~hashtag@CPE-69-23-213-3.wi.res.rr.com] has quit [Ping timeout: 246 seconds] 17:46 < brisque> hearn: (similar concept really. you would make a cup out of antimony, and if you'd been heavily drinking you would fill the cup with water before you went to bed. it would leech into the water overnight, and act as a hangover cure in the morning) 17:46 -!- sipa [~pw@unaffiliated/sipa1024] has left #bitcoin-wizards [] 17:46 < brisque> bramc: SPV isn't really something that needs to be part of the network protocol. 17:46 < gmaxwell> bramc: right but there are alternative protocols; e.g. bluematt's relay network protocol, or the electrum stratum stuff that replace the p2p protocol with varrying levels of completeness. 17:47 < bramc> gmaxwell, right and the further they get away from the block chain the easier they are to change 17:47 < brisque> bramc: I have a sort of half-assed build of a bitcoin transport which uses tumblr.com as the communication medium. 17:48 < gmaxwell> brisque: ohhhh "Bitcoin tumbler" 17:49 < gmaxwell> (for some reason people referring to bitcoin tx graph obfscuation things as 'bitcoin tumbler'; I have no clue where it came from, and no clue why it irritates me.) 17:49 < phantomcircuit> brisque, except for the part where it was poisonous 17:49 < hearn> i guess it conjures images of lottery machines 17:50 < hearn> at least it does for me 17:50 < bramc> It all has to do with difficulty of change. If engineered correctly it should be easy to rework the actual codebase, because it has a coherent behavioral specification which is dependent on implementation details 17:50 < bramc> Web browsers are awful things to work on for this reason 17:50 < brisque> phantomcircuit: to "cure" syphilis they fed mercury to goats and drank the milk. I don't think a lot of these cures are particularly well thought through or researched. 17:51 < phantomcircuit> heh 17:52 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has quit [Ping timeout: 252 seconds] 17:52 < bramc> According to the interwebs the human body can handle antimony fairly well, probably because it's much more widely occuring in our natural environment than lead. 17:54 < phantomcircuit> bramc, long term chronic exposure is poorly studied and probably has similar health risks as other heavy metals 17:54 < phantomcircuit> intentionally consuming large amounts via an "antimony cup" seems ill conceived 17:54 < phantomcircuit> and back on topic 17:54 < bramc> Also while mercury poisoning sucks in the days before antibiotics risking it beat reliably dying of syphilis 17:55 < phantomcircuit> why does the bloomfilter stuff even have a "hash" parameter? 17:55 < phantomcircuit> (ie iteration count) 17:55 -!- ahmed_bodi [~ia1@76.164.237.186] has quit [Excess Flood] 17:55 < phantomcircuit> or i guess it's not iterations but actually different hash functions? 17:56 < brisque> it's different hash functions 17:56 < brisque> one hash function with a "tweak" causing different outputs 17:56 < gmaxwell> basically it lets you change your collission set. 17:56 < hearn> it's a part of the Bloom algorithm, check wikipedia 17:57 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Ping timeout: 256 seconds] 17:58 -!- jtimon [~quassel@user-5af5157d.broadband.tesco.net] has quit [Ping timeout: 256 seconds] 17:59 < Adlai> gmaxwell: 'coin tumbler' dates back to when taint had mass :) 18:00 < Adlai> http://rocktumbler.com/blog/coins-in-a-rock-tumbler/ 18:00 < brisque> Adlai: hm, I thought it was a reference to laundry 18:00 < brisque> could be dual-origin I suppose. 18:01 < phantomcircuit> gmaxwell, is it really necessary? 18:03 -!- LeMiner [HydraIRC@5ED1AFBF.cm-7-2c.dynamic.ziggo.nl] has joined #bitcoin-wizards 18:04 -!- StephenM347 [~stephenm3@static-64-223-246-218.port.east.myfairpoint.net] has quit [Remote host closed the connection] 18:08 -!- rusty [~rusty@pdpc/supporter/bronze/rusty] has quit [Quit: Leaving.] 18:08 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has joined #bitcoin-wizards 18:08 < phantomcircuit> guess i should take a bit to read about bloom filters some more... 18:15 -!- rusty [~rusty@pdpc/supporter/bronze/rusty] has joined #bitcoin-wizards 18:18 -!- bsm117532 [~bsm117532@static-108-21-236-13.nycmny.fios.verizon.net] has quit [Read error: No route to host] 18:18 -!- bsm117532 [~bsm117532@static-108-21-236-13.nycmny.fios.verizon.net] has joined #bitcoin-wizards 18:19 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Read error: Connection reset by peer] 18:20 -!- d1ggy_ [~d1ggy@dslb-178-003-145-085.178.003.pools.vodafone-ip.de] has joined #bitcoin-wizards 18:20 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 18:20 < phantomcircuit> oh i see 18:20 < phantomcircuit> each hash function produces a single index 18:20 < phantomcircuit> that doesn't exactly seem optimal 18:22 < phantomcircuit> MurmurHash3 produces 32 bits of output per call 18:22 < phantomcircuit> why not simply use the first k bits of output as indexes? 18:23 -!- prodatalab [~prodatala@2602:306:247c:5149:6959:a6a5:6c8c:2102] has quit [Remote host closed the connection] 18:23 -!- d1ggy [~d1ggy@dslb-188-108-254-225.188.108.pools.vodafone-ip.de] has quit [Ping timeout: 255 seconds] 18:23 -!- prodatalab [~prodatala@2602:306:247c:5149:b6b6:76ff:fee3:c6f5] has joined #bitcoin-wizards 18:25 -!- nubbins` [~leel@unaffiliated/nubbins] has quit [Quit: Quit] 18:25 -!- coinheavy [~coinheavy@166.177.248.40] has joined #bitcoin-wizards 18:25 -!- coinheavy [~coinheavy@166.177.248.40] has quit [Remote host closed the connection] 18:26 -!- coinheavy [~coinheavy@166.177.248.40] has joined #bitcoin-wizards 18:31 -!- coinheavy [~coinheavy@166.177.248.40] has quit [Ping timeout: 265 seconds] 18:36 -!- nubbins` [~leel@unaffiliated/nubbins] has joined #bitcoin-wizards 18:41 -!- moleccc [~molecular@e176105238.adsl.alicedsl.de] has joined #bitcoin-wizards 18:43 -!- mike420 [~patb@67-204-205-237.eastlink.ca] has joined #bitcoin-wizards 18:43 < mike420> http://www.ebay.com/itm/271801501789?ssPageName=STRK:MESELX:IT&_trksid=p3984.m1555.l2649 18:43 < mike420> good price? 18:44 -!- molec [~molecular@e176098134.adsl.alicedsl.de] has quit [Ping timeout: 246 seconds] 18:44 -!- mode/#bitcoin-wizards [+o Luke-Jr] by ChanServ 18:44 -!- mike420 was kicked from #bitcoin-wizards by Luke-Jr [User terminated!] 18:44 -!- mode/#bitcoin-wizards [+b mike420!*@*] by Luke-Jr 18:45 -!- mode/#bitcoin-wizards [-o Luke-Jr] by Luke-Jr 18:48 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 18:49 -!- mrkent [~textual@unaffiliated/mrkent] has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…] 18:49 -!- OneNomos [~OneNomos@pool-71-163-227-3.washdc.east.verizon.net] has quit [Remote host closed the connection] 18:50 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Read error: Connection reset by peer] 18:50 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 18:50 -!- Dr-G [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Changing host] 18:50 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 18:57 -!- hearn [~mike@199-188-193-172.PUBLIC.monkeybrains.net] has quit [Quit: Textual IRC Client: www.textualapp.com] 18:57 -!- belcher [~belcher-s@unaffiliated/belcher] has quit [Quit: Leaving] 18:58 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Ping timeout: 252 seconds] 18:59 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 19:00 -!- coinheavy [~coinheavy@166.177.248.40] has joined #bitcoin-wizards 19:02 -!- jhogan42 [~textual@152.179.131.166] has quit [Quit: My Mac has gone to sleep. ZZZzzz…] 19:02 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has joined #bitcoin-wizards 19:02 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Disconnected by services] 19:02 -!- CoinCadence [~CoinCaden@ool-4355e6bd.dyn.optonline.net] has joined #bitcoin-wizards 19:06 -!- p15 [~p15@198.50.160.97.static-ca.cryptolayer.com] has joined #bitcoin-wizards 19:07 -!- moa [~moa@opentransactions/dev/moa] has joined #bitcoin-wizards 19:08 -!- jhogan42 [~textual@20.sub-70-197-22.myvzw.com] has joined #bitcoin-wizards 19:10 -!- CoinCadence [~CoinCaden@ool-4355e6bd.dyn.optonline.net] has quit [Remote host closed the connection] 19:10 -!- Dr-G2 [~Dr-G@gtng-4d08af62.pool.mediaWays.net] has quit [Read error: Connection reset by peer] 19:11 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 19:18 -!- prodatalab [~prodatala@2602:306:247c:5149:b6b6:76ff:fee3:c6f5] has quit [Ping timeout: 256 seconds] 19:18 -!- jhogan42 [~textual@20.sub-70-197-22.myvzw.com] has quit [Read error: Connection reset by peer] 19:20 -!- instagibbs [60ff5d39@gateway/web/freenode/ip.96.255.93.57] has joined #bitcoin-wizards 19:20 -!- prodatalab [~prodatala@2602:306:247c:5149:40ea:8bf1:1f9d:34d3] has joined #bitcoin-wizards 19:26 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Read error: Connection reset by peer] 19:28 < bramc> So the IBLT proposed by Gavin only uses xor, no fancy ECC? 19:30 < phantomcircuit> bramc, any opinion on bloom filter hash function usage? 19:30 -!- coinheavy [~coinheavy@166.177.248.40] has quit [Remote host closed the connection] 19:30 < bramc> phantomcircuit, I'm going off this, written by rusty: http://rustyrussell.github.io/pettycoin/2014/11/05/Playing-with-invertible-bloom-lookup-tables-and-bitcoin-transactions.html 19:30 < phantomcircuit> yeah i just meant normal bloom filters 19:30 < bramc> Which hash unction you use shouldn't really matter. I'd go with siphash keyed off the block id, because I'm paranoid like that 19:31 < bramc> And because, uh, there's no downside in terms of performance 19:32 -!- coinheavy [~coinheavy@166.177.248.40] has joined #bitcoin-wizards 19:32 -!- rusty [~rusty@pdpc/supporter/bronze/rusty] has quit [Ping timeout: 256 seconds] 19:33 < bramc> phantomcircuit, Not really sure what your question is 19:37 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has joined #bitcoin-wizards 19:37 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has quit [Changing host] 19:37 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 19:37 < bramc> I don't have much to add to rusty's analysis. If I were to analyze it seriously I'd just re-run the tests he's done, which seems pointless 19:38 -!- coinheavy [~coinheavy@166.177.248.40] has quit [] 19:38 < bramc> Also I agree that it doesn't make sense to compress 1M of data down to 1M. 19:38 < bramc> And I don't know how very large transactions get broken up - are they split into pieces or something? 19:39 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Disconnected by services] 19:39 -!- Dr-G2 [~Dr-G@gtng-d9bf7731.pool.mediaways.net] has joined #bitcoin-wizards 19:40 -!- instagibbs [60ff5d39@gateway/web/freenode/ip.96.255.93.57] has quit [Quit: Page closed] 19:44 -!- huseby [~huseby@unaffiliated/huseby] has quit [Ping timeout: 252 seconds] 19:44 -!- koshii [~0@cpe-107-184-241-124.socal.res.rr.com] has joined #bitcoin-wizards 19:44 -!- koshii [~0@cpe-107-184-241-124.socal.res.rr.com] has quit [Client Quit] 19:44 -!- koshii [~0@cpe-107-184-241-124.socal.res.rr.com] has joined #bitcoin-wizards 19:44 -!- prodatalab [~prodatala@2602:306:247c:5149:40ea:8bf1:1f9d:34d3] has quit [Remote host closed the connection] 19:45 -!- prodatalab [~prodatala@2602:306:247c:5149:40ea:8bf1:1f9d:34d3] has joined #bitcoin-wizards 19:45 < justanotheruser> Any reason not to just use FNV for the bloom filter? 19:47 < bramc> justanotheruser, Using siphash would keep anybody from doing a dos where they intentionally make a bunch of transactions hit the same place and render the summary useless 19:47 < justanotheruser> that seems like a miners problem 19:47 < justanotheruser> and makes malleability a feature! 19:48 -!- SubCreative [~Sub@unaffiliated/cannacoin] has joined #bitcoin-wizards 19:48 < phantomcircuit> bramc, the standard algorithm is to set a bit in a bitfield once for each hash call 19:49 < bramc> In all seriousness, using siphash keyed off the block id is exactly the kind of thing siphash is meant for. 19:49 < phantomcircuit> but the hash function returns 32 bits 19:49 < phantomcircuit> so you should be able to get more than 1 bit in the bitfield per hash function call 19:49 < bramc> phantomcircuit, You expand out the hash value in some random way to get all the locations 19:49 < phantomcircuit> i dont think it gets you a whole lot of advantage 19:49 < phantomcircuit> but it's potentially something 19:50 < phantomcircuit> bramc, no the standard implementation is that you call the hash function again with a new tweak value to get the next bit 19:50 < phantomcircuit> so for k=10 you call H 10 times 19:50 < bramc> phantomcircuit, six, dozen/2 19:50 < justanotheruser> I suppose miners wouldn't even have to optomize the transactions for non-collision, but if they did the fee would have to correlate with the increased risk or reorg from including their collision tx' 19:50 -!- tcrypt [~tylersmit@173.247.206.110] has quit [Ping timeout: 246 seconds] 19:50 < phantomcircuit> bramc, wat 19:51 < bramc> justanotheruser, I have no idea if you're joking 19:51 < justanotheruser> bramc: why, am I wrong? 19:51 < phantomcircuit> bramc, is siphash considered secure? 19:51 < phantomcircuit> i didn't think it was 19:51 -!- spinza [~spin@197.89.10.158] has quit [Ping timeout: 245 seconds] 19:52 < bramc> phantomcircuit, there's key data and you pick positions in the filter based off it. How you mash up that key data to determine the positions doesn't matter 19:52 -!- nuke_ [~nuke@78-28-8.adsl.cyta.gr] has quit [Read error: Connection reset by peer] 19:52 < phantomcircuit> bramc, right 19:52 < bramc> phantomcircuit, siphash is considered secure against an attacker intentionally making hash collisions when they don't know the key for the hash 19:53 < phantomcircuit> but the standard (and the current bitcoin) implementation is 1 bit is set per hash function call 19:53 -!- nuke_ [~nuke@78-28-8.adsl.cyta.gr] has joined #bitcoin-wizards 19:53 < bramc> phantomcircuit, If you run numbers on bloom filters it turns out that you get the maximum storage when roughly half the bits in the filter are set 19:53 < phantomcircuit> but i guess it's not worth it actually to change that 19:54 < phantomcircuit> bramc, the attacker knows the key though 19:54 < phantomcircuit> since the key has to be deterministic 19:54 < bramc> phantomcircuit, You could speed it up a little bit by not throwing out any of the bits from hash calls 19:54 < bramc> phantomcircuit, If you use the block id as the key then the attacker doesn't know it when they're trying to do their attack 19:55 < phantomcircuit> bramc, yeah but i just realized that complicates things enough that it's not worth it 19:55 < phantomcircuit> bramc, iirc the idea was to include a hash of the bloom filter in the block 19:55 < phantomcircuit> but if you're not doing that then yeah 19:55 -!- nuke_ [~nuke@78-28-8.adsl.cyta.gr] has quit [Read error: Connection reset by peer] 19:56 -!- nuke_ [~nuke@78-28-8.adsl.cyta.gr] has joined #bitcoin-wizards 19:57 < bramc> phantomcircuit, I don't see the point of putting the bloom filter hash in the block 19:57 -!- RoboTedd_ [~roboteddy@2601:9:3483:2400:28ca:2c4c:7248:5171] has quit [Read error: Connection reset by peer] 19:57 < phantomcircuit> bramc, soft forking rule change 19:57 -!- RoboTeddy [~roboteddy@c-67-180-192-179.hsd1.ca.comcast.net] has joined #bitcoin-wizards 19:57 < bramc> You could also hash together everything but the bloom filter id for the bloom filter's key 19:58 < phantomcircuit> presumably using something like the merkle tree root would make the raw time to bruteforce the tweak value high enough as to be unreasonable by itself 19:58 < phantomcircuit> but that's just a gut feeling 19:58 < phantomcircuit> bramc, cant include the nonce value in the block header of course 19:58 -!- spinza [~spin@197.89.10.158] has joined #bitcoin-wizards 19:58 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Ping timeout: 244 seconds] 19:58 < bramc> merkle tree root should be plenty 19:58 < phantomcircuit> i suspect keying off just the merkle tree root would be sufficient 20:00 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has joined #bitcoin-wizards 20:00 -!- cbeams [~cbeams@chello084114181075.1.15.vie.surfer.at] has quit [Changing host] 20:00 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 20:02 -!- rusty [~rusty@pdpc/supporter/bronze/rusty] has joined #bitcoin-wizards 20:02 -!- jhogan42 [~textual@c-67-169-168-179.hsd1.ca.comcast.net] has joined #bitcoin-wizards 20:04 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has joined #bitcoin-wizards 20:05 < phantomcircuit> bramc, maybe 20:08 -!- llllllllll [~lllllllll@6d482698.ftth.concepts.nl] has quit [] 20:09 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has quit [Ping timeout: 265 seconds] 20:10 -!- prodatalab [~prodatala@2602:306:247c:5149:40ea:8bf1:1f9d:34d3] has quit [Remote host closed the connection] 20:11 -!- prodatalab [~prodatala@2602:306:247c:5149:40ea:8bf1:1f9d:34d3] has joined #bitcoin-wizards 20:12 -!- zooko [~user@c-75-70-204-109.hsd1.co.comcast.net] has quit [Ping timeout: 252 seconds] 20:12 < bramc> phantomcircuit, Since the attacker's vector is by guessing the key and introducing transactions which work with it, using the transaction root should kill any such attacks because each new transactions gets secure hashed into it 20:13 -!- prodatalab [~prodatala@2602:306:247c:5149:40ea:8bf1:1f9d:34d3] has quit [Client Quit] 20:13 < bramc> rusty, If you're here I have some questions about the IBLT format, starting with why use a whole 32 bits for count? Shouldn't the last 8 bits of it be sufficient? 20:14 < rusty> bramc: am here.... was a while since I played with it. Let me dig out my code for a refresh. 20:15 < tromp> bramc: you want to avoid count overflowing 20:15 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Remote host closed the connection] 20:16 < bramc> tromp, I don't understand, aren't you mostly looking for exact matches? 20:16 < phantomcircuit> bramc, bruteforcing a merkle tree root which causes a siphash collision might not be as expensive as it sounds 20:16 < brisque> you're going to have to be doing that for every 2^32 nonces though 20:17 < bramc> phantomcircuit, I think the key to siphash is kinda big 20:17 < brisque> probably a little more with nrolltime. 20:17 < rusty> bramc: I used 6 bytes for id, 2 for index. 20:17 < tromp> you want to use count==1 as a single item. 257 items xored together could cause havoc when interpreted as one 20:17 < bramc> rusty, and there's 32 bits for 'count' 20:18 < rusty> bramc: ah, that doesn't really matter. The iblt is small. 20:18 < rusty> bramc: assuming it gets wire encoded down to something more minimal. 20:18 < bramc> tromp the vast majority of the time you're looking for exact match. You start looking for additions/deletions by finding one which is off by 1 20:19 < brisque> can the iblt actually be processed by a node more quickly than a direct block push? 20:19 < tromp> but what if they're really off by 257? 20:19 < phantomcircuit> brisque, hmm you're right that could get expensive 20:19 < bramc> tromp I'm guessing the chances of accidentally hitting something really off by 257 is vanishingly small 20:19 -!- nuke_ [~nuke@78-28-8.adsl.cyta.gr] has quit [Read error: Connection reset by peer] 20:20 < rusty> tromp: if you're missing 257 in one bucket you have other problems; you're not going to be able to recover :) 20:20 < phantomcircuit> brisque, oh derp you use the previous block hash as the tweak value 20:20 < bramc> brisque, the iblt is vastly smaller than a whole block, and yes it should be fast to process. Xor is quick like that. 20:20 -!- nuke_ [~nuke@78-28-8.adsl.cyta.gr] has joined #bitcoin-wizards 20:20 < phantomcircuit> not perfect but pretty damned close 20:21 < tromp> bramc, rusty: ok, i'll take your word for it:) 20:21 < bramc> rusty, I suspect that making a decent standard wire encoding for that is tough and it's more expedient to just reduce it to 8 bits 20:22 < rusty> bramc: there are a couple more refinements possible to my codebase. First, I insist on recovering the entire transaction (all slices) otherwise I don't remove any from the iblt. This leads to the cliff effect I see. 20:22 < rusty> bramc: Someone did a java implementation which did that, for much more win. 20:22 < bramc> rusty, got a link for that? 20:23 < bramc> Also, I suspect that thresholding behavior is totally reasonable. If you're off, you're likely to well and truly to be able to get back anything 20:23 < rusty> bramc: kallen rosenbaum, commented on http://rustyrussell.github.io/pettycoin/2014/11/05/Playing-with-invertible-bloom-lookup-tables-and-bitcoin-transactions.html#Using-IBLTs 20:24 < brisque> bramc: still going to be slower than a direct TCP squirt, but I suppose it's a reasonable tradeoff if you can manage it. 20:24 < phantomcircuit> brisque, lol yeah derp previous black hash is perfect as a tweak value since it's (more or less) not controlled by the miner 20:25 < rusty> bramc: my next step was testing with some real blocks and txs, but never quite got that round tuit I need. 20:25 < rusty> Sorry, gtg. 20:25 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has joined #bitcoin-wizards 20:25 -!- hashtag [~hashtag@CPE-69-23-213-3.wi.res.rr.com] has joined #bitcoin-wizards 20:25 < bramc> brisque, I think the whole context here is that it's supposed to be something for the fast relay network to redistribute 20:25 < brisque> phantomcircuit: if you're talking about blocks with bloom in them, you don't want the client to have to rebuild their filter for every single block 20:26 < brisque> phantomcircuit: it's sort of unavoidable though. 20:27 < brisque> if you're not I'm going to need to go read some scrollback for context. 20:31 -!- jhogan42 [~textual@c-67-169-168-179.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 20:32 < phantomcircuit> brisque, que? 20:32 < phantomcircuit> the bloom filter in the block would cover just that block 20:32 < phantomcircuit> nothing else 20:33 < brisque> phantomcircuit: yes, but you want to salt the filter to avoid people brute forcing elements in the filter which set all the bits to zero. 20:33 < brisque> set them to one, rather. 20:36 < phantomcircuit> brisque, right 20:37 < phantomcircuit> im thinking the previous blocks hash works well for that 20:37 < phantomcircuit> it's effectively immutable (who is going to bruteforce a block such that the next blocks bloom filter has a high false positive rate??) 20:37 < brisque> yep. 20:37 < bramc> If you cram a transaction's length into its id that should solve the variable sizes problem 20:37 -!- Burrito [~Burrito@unaffiliated/burrito] has quit [Ping timeout: 255 seconds] 20:37 < brisque> it gets uglier with big wallets unfortunately. 20:38 < bramc> phantomcircuit, An attacker knows the previous block when trying to attack the next block though. What's your problem with using the merkle transaction root? 20:38 < brisque> if you have 5000 keys in your wallet and 10,000 blocks to sync, you're going to be doing an awful lot of hashes. 20:39 < bramc> This IBLT thing is an example of Fun Things I Shouldn't Be Working On 20:39 < brisque> more like, Things I Should Be Paid For But Aren't Very Marketable 20:39 < brisque> you put the bloom filter in the block, and then we ride it all the way to the moon! 20:40 < bramc> brisque, I'm working full time on cryptocurrency stuff now but really need to keep focused on things which will actually help get a working project out the door 20:43 < phantomcircuit> brisque, maybe 20:47 -!- bsm117532 [~bsm117532@static-108-21-236-13.nycmny.fios.verizon.net] has quit [Ping timeout: 264 seconds] 21:16 -!- cbeams [~cbeams@unaffiliated/cbeams] has joined #bitcoin-wizards 21:23 -!- hashtag [~hashtag@CPE-69-23-213-3.wi.res.rr.com] has quit [Ping timeout: 272 seconds] 21:24 -!- jhogan42 [~textual@c-67-169-168-179.hsd1.ca.comcast.net] has joined #bitcoin-wizards 21:24 -!- hashtag [~hashtag@CPE-69-23-213-3.wi.res.rr.com] has joined #bitcoin-wizards 21:32 -!- Dr-G [~Dr-G@gtng-d9bf7731.pool.mediaWays.net] has joined #bitcoin-wizards 21:32 -!- Dr-G [~Dr-G@gtng-d9bf7731.pool.mediaWays.net] has quit [Changing host] 21:32 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 21:35 -!- Dr-G2 [~Dr-G@gtng-d9bf7731.pool.mediaways.net] has quit [Ping timeout: 245 seconds] 21:39 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has quit [Remote host closed the connection] 21:39 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has joined #bitcoin-wizards 21:41 -!- cbeams [~cbeams@unaffiliated/cbeams] has quit [Read error: Connection reset by peer] 21:57 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has quit [Remote host closed the connection] 21:57 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has joined #bitcoin-wizards 22:04 -!- p15x_ [~p15x@182.50.108.65] has joined #bitcoin-wizards 22:05 -!- kanzure_ [~kanzure@unaffiliated/kanzure] has joined #bitcoin-wizards 22:06 -!- iddo_ [~idddo@csm.cs.technion.ac.il] has joined #bitcoin-wizards 22:07 -!- petertod1 [~pete@petertodd.org] has joined #bitcoin-wizards 22:08 -!- amiller_ [~socrates1@li175-104.members.linode.com] has joined #bitcoin-wizards 22:08 -!- face_ [~face@mail.hmel.org] has joined #bitcoin-wizards 22:09 -!- yorick_ [~yorick@oftn/member/yorick] has joined #bitcoin-wizards 22:09 -!- face [~face@mail.hmel.org] has quit [Ping timeout: 245 seconds] 22:09 -!- phedny [~mark@prei.vps.van-cuijk.nl] has quit [Ping timeout: 245 seconds] 22:09 -!- petertodd [~pete@petertodd.org] has quit [Ping timeout: 245 seconds] 22:09 -!- iddo [~idddo@csm.cs.technion.ac.il] has quit [Ping timeout: 245 seconds] 22:09 -!- p15x [~p15x@182.50.108.65] has quit [Read error: Connection reset by peer] 22:09 -!- amiller [~socrates1@unaffiliated/socrates1024] has quit [Ping timeout: 240 seconds] 22:09 -!- s1w [~s1w@unaffiliated/someoneweird] has quit [Ping timeout: 240 seconds] 22:09 -!- kanzure [~kanzure@unaffiliated/kanzure] has quit [Ping timeout: 240 seconds] 22:09 -!- Visheate [~Visheate@bitcoind.ml] has quit [Ping timeout: 240 seconds] 22:09 -!- dignork [~dignork@unaffiliated/dignork] has quit [Ping timeout: 240 seconds] 22:09 -!- s1w- [~s1w@ec2-122-248-235-44.ap-southeast-1.compute.amazonaws.com] has joined #bitcoin-wizards 22:09 -!- yorick [~yorick@oftn/member/yorick] has quit [Ping timeout: 245 seconds] 22:09 -!- dignork- [~dignork@unaffiliated/dignork] has joined #bitcoin-wizards 22:12 -!- phedny [~mark@prei.vps.van-cuijk.nl] has joined #bitcoin-wizards 22:12 -!- spinza [~spin@197.89.10.158] has quit [Ping timeout: 256 seconds] 22:13 -!- Visheate [~Visheate@bitcoind.ml] has joined #bitcoin-wizards 22:13 -!- petertod1 is now known as petertodd 22:19 -!- hearn [~mike@c-67-180-209-140.hsd1.ca.comcast.net] has joined #bitcoin-wizards 22:20 -!- zooko [~user@c-75-70-204-109.hsd1.co.comcast.net] has joined #bitcoin-wizards 22:24 -!- spinza [~spin@197.89.10.158] has joined #bitcoin-wizards 22:25 -!- hashtag [~hashtag@CPE-69-23-213-3.wi.res.rr.com] has quit [Ping timeout: 272 seconds] 22:25 -!- orik [~orik@50-46-132-219.evrt.wa.frontiernet.net] has joined #bitcoin-wizards 22:26 -!- s1w- is now known as s1w 22:26 -!- s1w [~s1w@ec2-122-248-235-44.ap-southeast-1.compute.amazonaws.com] has quit [Changing host] 22:26 -!- s1w [~s1w@unaffiliated/someoneweird] has joined #bitcoin-wizards 22:36 -!- SubCreative [~Sub@unaffiliated/cannacoin] has quit [Remote host closed the connection] 22:43 -!- Profreid [~Profreitt@gateway/vpn/privateinternetaccess/profreid] has joined #bitcoin-wizards 22:47 -!- damethos [~damethos@unaffiliated/damethos] has quit [Quit: Bye] 23:02 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has quit [Remote host closed the connection] 23:03 -!- koeppelmann [~koeppelma@dslb-178-005-159-243.178.005.pools.vodafone-ip.de] has joined #bitcoin-wizards 23:26 -!- DougieBot5000 [~DougieBot@unaffiliated/dougiebot5000] has quit [Quit: Leaving] 23:34 -!- droark [~droark@209-6-53-207.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Quit: ZZZzzz…] 23:42 -!- Profreid [~Profreitt@gateway/vpn/privateinternetaccess/profreid] has quit [Quit: Profreid] 23:44 -!- Mably [~Mably@unaffiliated/mably] has joined #bitcoin-wizards 23:44 -!- koshii [~0@cpe-107-184-241-124.socal.res.rr.com] has quit [Ping timeout: 264 seconds] 23:45 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has quit [Read error: Connection reset by peer] 23:45 -!- Dr-G [~Dr-G@gtng-d9bf7731.pool.mediaways.net] has joined #bitcoin-wizards 23:45 -!- Dr-G [~Dr-G@gtng-d9bf7731.pool.mediaways.net] has quit [Changing host] 23:45 -!- Dr-G [~Dr-G@unaffiliated/dr-g] has joined #bitcoin-wizards 23:48 -!- jhogan42 [~textual@c-67-169-168-179.hsd1.ca.comcast.net] has quit [Ping timeout: 256 seconds] 23:51 -!- damethos [~damethos@unaffiliated/damethos] has joined #bitcoin-wizards 23:53 -!- licnep [uid4387@gateway/web/irccloud.com/x-xilmkirrzcasckyr] has quit [Quit: Connection closed for inactivity] 23:59 -!- hearn [~mike@c-67-180-209-140.hsd1.ca.comcast.net] has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…] --- Log closed Thu Mar 12 00:00:19 2015