1 2017-01-13 05:54:23 <rgenito> have you guys ever seen a vout that has 0 coins?
2 2017-01-13 05:54:49 <rgenito> as in, have you ever seen a transaction's unspent outputs to have a value of 0.00000000 BTC ?
3 2017-01-13 05:54:55 <luke-jr> yes
4 2017-01-13 05:54:56 <rgenito> i found an example here: https://insight.bitpay.com/api/tx/f82e39040eb6b8fd57e5bfe71d22f77ef49b2ba262d09405e1422a98180fd0fa
5 2017-01-13 05:55:07 <rgenito> heya luke-jr! why is that? o.O
6 2017-01-13 05:55:59 <luke-jr> pretty typical for OP_RETURN data spam
7 2017-01-13 05:56:02 <rgenito> what does it mean?
8 2017-01-13 05:56:06 <luke-jr> otherwise it'd burn bitcoins
9 2017-01-13 05:56:14 <luke-jr> it means the output has 0 bitcoins
10 2017-01-13 05:56:21 <rgenito> intereting.
11 2017-01-13 05:56:39 <luke-jr> if it wasn't OP_RETURN, you could even spend it
12 2017-01-13 05:56:46 <rgenito> ok i see, so it's basically not useful information if you're looking for unspent scripts :D
13 2017-01-13 05:56:51 <rgenito> oh wow
14 2017-01-13 05:57:01 <rgenito> neat, spending 0 bitcoins ;D
15 2017-01-13 05:57:28 <luke-jr> p2pool used to generate spendable 0-value outputs
16 2017-01-13 05:58:20 <rgenito> so this would only "correctly" happen on OP_RETURN scripts?
17 2017-01-13 05:59:43 <luke-jr> ?
18 2017-01-13 06:00:22 <luke-jr> I wouldn't call OP_RETURN correct. But it could be correct for coloured coins.
19 2017-01-13 06:00:56 <rgenito> interesting... thanks man. i appreciate the enlightenment!
20 2017-01-13 06:01:33 <luke-jr> np
21 2017-01-13 06:01:36 <rgenito> did "coloured coins" ever take off? i still don't know of an active, real-world use case
22 2017-01-13 06:03:54 <luke-jr> not really
23 2017-01-13 06:15:42 <forrestv> luke-jr, it still does
24 2017-01-13 06:15:52 <luke-jr> forrestv: you're alive! :o
25 2017-01-13 06:16:11 <forrestv> oh, i didn't read "spendable"
26 2017-01-13 06:17:26 <forrestv> (it generates unspendable outputs with OP_RETURN)
27 2017-01-13 06:17:36 <midnightmagic> holy crap it's forrest.
28 2017-01-13 06:17:38 <forrestv> hi luke-jr! yep, still alive, though working on non-bitcoin stuff mostly
29 2017-01-13 06:18:25 <forrestv> hi midnightmagic :)
30 2017-01-13 06:19:26 <midnightmagic> hey man :)
31 2017-01-13 07:29:34 <elichai2> ./bitcoin-qt: error while loading shared libraries: libprotobuf.so.9: cannot open shared object file: No such file or directory
32 2017-01-13 07:29:34 <elichai2> Hey, I've compiled bitcoin core code, but when I try to run the qt I get this error:
33 2017-01-13 08:41:47 <elichai2> anyone here uses bitcoin-submittx?
34 2017-01-13 19:12:21 <akrmn> Reading bip 32, one thing seems to be missing: proof that CKD N = N CKD. Any reference?
35 2017-01-13 19:15:42 <arubi> akrmn, can you give a literal example with that notation?
36 2017-01-13 19:16:37 <akrmn> CKD = child key derivation function. I mean CKD_pub N = N CKD_priv
37 2017-01-13 19:17:26 <akrmn> https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#Child_key_derivation_CKD_functions
38 2017-01-13 19:17:33 <arubi> I know what bip32 is
39 2017-01-13 19:17:49 <arubi> I'm trying to understand what you mean by that notation
40 2017-01-13 19:18:11 <akrmn> in that section they use that notation
41 2017-01-13 19:19:45 <arubi> akrmn, I know what CKD means, but I don't know what 'CKD_pub N' or 'N CKD_priv' mean. both these functions take more than N
42 2017-01-13 19:21:02 <akrmn> N is a function: N((k, c)) ââ â (K, c)
43 2017-01-13 19:21:11 <akrmn> K = point(k)
44 2017-01-13 19:21:43 <arubi> right, so you're asking about the neuter function
45 2017-01-13 19:22:28 <arubi> which only works for the first half of N, and for that first half, the rules for CKD_pub are different
46 2017-01-13 19:22:56 <akrmn> I mean function commutation: CKD_pubðN = N ð CKD_priv
47 2017-01-13 19:23:25 <akrmn> ya so where's the proof that it works for the first (unhardened) part?
48 2017-01-13 19:25:04 <arubi> in CKD_priv, 'read I_val < <( hmac "${c_par}" "${ser_p}${ser_i}" )' , in CKD_pub 'read I_val < <( hmac "${c_par}" "${p_par}${ser_i}" )'
49 2017-01-13 19:25:41 <arubi> for N<2147483648 , so what's the problem?
50 2017-01-13 19:26:35 <arubi> you can derive children by having either the parent privkey, or the parent point. the latter only works after the fact
51 2017-01-13 19:28:54 <arubi> er, public point plus the chain code of course
52 2017-01-13 19:29:01 <akrmn> but how does sha512 not mess up the commutation?
53 2017-01-13 19:29:25 <akrmn> it's new to me that sha512 commutes with EC point multiplication
54 2017-01-13 19:29:27 <arubi> the "text" to the hmac-sha512 is the public point of the parent xpriv
55 2017-01-13 19:29:56 <arubi> in a hardened key, the "text" for the hmac-sha512 is the private key itself
56 2017-01-13 19:30:33 <arubi> so, under a certain N, the public point is used for the hmac, and the parent chain code, and for the higher part, only the private key
57 2017-01-13 19:30:56 <akrmn> well it's ok, I can use it for now, but I am just not understanding the clear proof, unless it's supposed to be trvcial and I'm missing something
58 2017-01-13 19:30:58 <arubi> so you see how there can be no xpubs after N=2^31
59 2017-01-13 19:31:06 <arubi> it is trivial
60 2017-01-13 19:31:46 <arubi> akrmn, hmac-sha512(secret,secret) vs. hmac-sha512(secret,public)
61 2017-01-13 19:34:10 <arubi> oh I have something good for you, moment
62 2017-01-13 19:36:57 <arubi> akrmn, https://gist.github.com/fivepiece/e3293733d99c4935332f8c5959d7472b < doing this gave me some insight
63 2017-01-13 19:37:31 <arubi> maybe it'll be useful. I'm afk for a while, but will return later probably
64 2017-01-13 19:38:54 <akrmn> ok thanks
65 2017-01-13 19:39:19 <arubi> I think it's good info because it shows how to go backwards in the branch of non hardened keys up to the root xpub that was shared, so it'll answer your question. later
66 2017-01-13 23:57:52 <akrmn> ah ok I see my mistake. For the normal, non hardened keys, you're putting the same thing into the SHA512 function (the public key plus the same other stuff)