1 2014-12-07 12:03:08 <moleccc> Hey guys, I have a question: can I still send non-canonical transactions?
  2 2014-12-07 12:03:28 <moleccc> I have one generated with an old system from brainwallet, but bitcoind says
  3 2014-12-07 12:03:32 <moleccc> error: {"code":-26,"message":"64: non-canonical"}
  4 2014-12-07 12:03:36 <moleccc> when I try to send it
  5 2014-12-07 12:03:44 <moleccc> how can I send it and will it be mined?
  6 2014-12-07 12:04:17 <sipa> if your own bitcoind rejects it, it will not relay it
  7 2014-12-07 12:04:31 <sipa> as it assumes that other nodes won't relay it either
  8 2014-12-07 12:04:38 <Luke-Jr> moleccc: you should be able to modify it so it is canonical, I think
  9 2014-12-07 12:04:40 <sipa> fix the code :)
 10 2014-12-07 12:04:51 <moleccc> hm, ok. I guess I'll have to find another way to sign the tx on the offline machine
 11 2014-12-07 12:04:54 <sipa> you can perhaps pay a miner to specifically mine your transactions
 12 2014-12-07 12:05:02 <sipa> but really, fix the code that generates that transaction
 13 2014-12-07 12:05:24 <Luke-Jr> and don't use brainwallets - but I assume you're trying to migrate away from that
 14 2014-12-07 12:05:33 <moleccc> Luke-Jr, yes, exactly
 15 2014-12-07 12:05:52 <moleccc> sipa: ok, I'll find another way to create the tx
 16 2014-12-07 12:05:54 <Luke-Jr> moleccc: pastebin the tx data and I'll see if I can feed it to Eligius
 17 2014-12-07 12:06:01 <Luke-Jr> it's still running 0.8.x, so should work
 18 2014-12-07 12:06:08 <moleccc> Luke-Jr, don't worry. I'll figure out another way to create it
 19 2014-12-07 12:06:15 <sipa> i don't think stricter rules have been introduced since 0.8?
 20 2014-12-07 12:06:38 <moleccc> can bitcoind be used to create/sign it on offline machine? or are there other suggestions, maybe armory or sx?
 21 2014-12-07 12:06:53 <Luke-Jr> sipa: I thought all the canonical rules were added in 0.9?
 22 2014-12-07 12:06:56 <sipa> Luke-Jr: 0.8
 23 2014-12-07 12:07:00 <Luke-Jr> hm
 24 2014-12-07 12:07:04 <Luke-Jr> well, I can try at least XD
 25 2014-12-07 12:07:09 <sipa> yes, bitcoind can; use createrawtransaction, signrawtransaction, sendrawtransaction,
 26 2014-12-07 12:07:35 <moleccc> well, except the "sendrawtransaction" (am on offline machine)
 27 2014-12-07 12:07:43 <moleccc> I'll try that
 28 2014-12-07 12:08:07 <moleccc> can I give the key on the cmdline or do I have to make a wallet for that?
 29 2014-12-07 12:08:11 <Luke-Jr> only the sign really is for the offline machine
 30 2014-12-07 12:08:12 <sipa> rtfm
 31 2014-12-07 12:08:23 <moleccc> allright, I'll figure it out. Thanks guys
 32 2014-12-07 12:10:50 <gmaxwell> moleccc: if your tool is mis encoding the data, who knows what else is wrong with it... perhaps it has an insecure nonce rng and you're going to leak your private key.
 33 2014-12-07 13:10:31 <gr33nion_> hello
 34 2014-12-07 13:11:04 <moleccc> gmaxwell, thx for the tip and yes: the tool is ages old and crappy. I'm switching tool. weak rng leak is no issue, though: only using addresses once
 35 2014-12-07 13:12:31 <gmaxwell> moleccc: if your RNG is sufficiently bad only a single signature leaks your private key and an attacker could race you in the network.  I haven't heard of anyone suffering that, though I don't know people would know it... but I think the attackers are not desperate enough, too many low hanging fruit.
 36 2014-12-07 13:14:16 <gr33nion_> could someone please steer me in a direction for learning the underlying technology of bitcoin before i start to help developing a project.
 37 2014-12-07 13:14:31 <gr33nion_> I was wondering is 'mastering bitcoin' would be appropriate to get a good grasp of bitcoin
 38 2014-12-07 13:14:39 <belcher> there is a bitcoin wiki which is pretty good
 39 2014-12-07 13:15:12 <gr33nion_> cheers ill check it out now
 40 2014-12-07 14:51:53 <reddz> Is this a good place to ask newbie questions?
 41 2014-12-07 15:01:47 <paveljanik> just ask
 42 2014-12-07 15:02:04 <Luke-Jr> he's gone
 43 2014-12-07 15:05:36 <wsirc_5826> What
 44 2014-12-07 15:05:56 <wsirc_5826> What's a good language to learn if I want to create a web fronted application that will be using bitcoin?
 45 2014-12-07 15:05:59 <wsirc_5826> What's a good language to learn if I want to create a web fronted application that will be using bitcoin?
 46 2014-12-07 15:06:16 <wsirc_5826> .
 47 2014-12-07 15:06:31 <belcher> any language that can do server side scripting
 48 2014-12-07 15:07:17 <mellower> hi
 49 2014-12-07 15:07:21 <mellower> hi
 50 2014-12-07 15:07:22 <mellower> hi
 51 2014-12-07 15:07:29 <Luke-Jr> !ops
 52 2014-12-07 15:10:39 <mellower> ok
 53 2014-12-07 15:10:40 <mellower> ok
 54 2014-12-07 15:10:41 <mellower> ok
 55 2014-12-07 15:12:25 <Luke-Jr> mellower: get an IRC client that works or leave
 56 2014-12-07 15:12:36 <Luke-Jr> to be clear, the one you're using now does NOT work
 57 2014-12-07 15:13:12 <michagogo> Whoa
 58 2014-12-07 15:13:22 <michagogo> bitcoind is using a *lot* of CPU
 59 2014-12-07 15:13:27 <michagogo> 138%
 60 2014-12-07 15:13:46 <michagogo> Looks like most of that is in the thread "bitcoin-msghand"
 61 2014-12-07 15:14:03 <michagogo> ACTION wonders what's going on
 62 2014-12-07 15:14:14 <paveljanik> in warming or during normal run?
 63 2014-12-07 15:14:18 <michagogo> Normal run
 64 2014-12-07 15:14:20 <michagogo> afaik
 65 2014-12-07 15:14:29 <michagogo> I mean, not IBD or anything
 66 2014-12-07 15:14:51 <Branditres> hi
 67 2014-12-07 15:15:06 <michagogo> I'm updating it anyway, I guess I'll see if it keeps doing that after update and restart
 68 2014-12-07 15:17:54 <Branditres> hey
 69 2014-12-07 15:17:55 <Branditres> hey
 70 2014-12-07 15:17:56 <Branditres> hey
 71 2014-12-07 15:17:57 <Branditres> hey
 72 2014-12-07 15:17:58 <Branditres> hey
 73 2014-12-07 15:18:46 <Luke-Jr> sigh
 74 2014-12-07 15:32:14 <michagogo> Does bootstrap.dat start with the genesis block?
 75 2014-12-07 15:33:13 <sipa> yes
 76 2014-12-07 15:36:36 <English-> hey folks, just playing around with the code. I'm trying to use -reindex, and modifying the AcceptBlock block function so that for each transaction in the block, the from/to addresses are captured. However I'm having problems with transactions where the outputs are used as inputs in the same block. When this happens, GetTransaction fails to find the previous transaction. Any idea why this would be?
 77 2014-12-07 15:36:37 <michagogo> Hm, the linearize-data.py output is a bit misleading
 78 2014-12-07 15:36:53 <michagogo> 194000 blocks scanned, 194000 blocks written (of 317001, 61.2% complete)
 79 2014-12-07 15:36:53 <michagogo> Input fileC:/Users/Micha/AppData/Roaming/Bitcoin/blocks/blk00019.dat
 80 2014-12-07 15:37:06 <michagogo> For one, it's missing a space, probably easy enough to fix
 81 2014-12-07 15:37:21 <michagogo> But the percentage is misleading
 82 2014-12-07 15:37:41 <michagogo> It jumped to 40%+ in seconds...
 83 2014-12-07 15:37:50 <michagogo> I mean, yeah, it's the percentage in terms of number of blocks
 84 2014-12-07 15:38:31 <sipa> English-: because GetTransaction looks up the transaction in the block index, not in the currently active state
 85 2014-12-07 15:38:43 <buZz> michagogo: you mean that blockcount does not reflect size of blocks?
 86 2014-12-07 15:38:44 <michagogo> But it would be nice if it could somehow figure out how much data it'll be :-/
 87 2014-12-07 15:38:54 <michagogo> buZz: yeah
 88 2014-12-07 15:39:02 <buZz> well thats to be expected, right?
 89 2014-12-07 15:39:06 <sipa> English-: use AccessCoins to fetch UTXO entries from the state being modified
 90 2014-12-07 15:39:23 <buZz> adoption grows, transactions increase, blocksize grows
 91 2014-12-07 15:39:23 <English-> sipa, I'm looping through the transactions once the block is written to the history file
 92 2014-12-07 15:39:44 <English-> ok, thank you, I will take a look. Many thanks!
 93 2014-12-07 15:39:48 <michagogo> buZz: Yes, of course. I mean, it would be nice if the linearize-data.py could use datasize for its percentage
 94 2014-12-07 15:39:51 <michagogo> rather than block count
 95 2014-12-07 15:40:03 <buZz> not sure if you know datasize before parsing the blocks really
 96 2014-12-07 15:40:16 <sipa> English-: that's the wrong approach (though I can't explain why it fails)... AcceptBlock does not mean the block has even been fully validated or becomes part of the active chain
 97 2014-12-07 15:40:19 <michagogo> Yeah, I don't imagine it would be a simple thing to do
 98 2014-12-07 15:40:38 <sipa> English-: it only makes sure it is correctly processed (even if that means doing nothing with it)
 99 2014-12-07 15:40:58 <sipa> ConnectTip/DisconnectTip are likely more where you should be looking
100 2014-12-07 15:41:29 <sipa> English-: oh, do you have -txindex on? If you don't, there is no way of finding spent transactions whatsoever
101 2014-12-07 15:43:04 <sipa> but still, that's the wrong approach; the block processing is fully aware of what outputs are created and which are spent; no need to reconstruct it by searching after the fact for the transactions that created things
102 2014-12-07 15:43:06 <English-> sipa, in bitcoin.conf? I don't seem to. Lookups work for transactions received over the network and for all other blocks. Just not if the output for one transaction is used as the input for another in the same block
103 2014-12-07 15:43:35 <michagogo> English-: right
104 2014-12-07 15:43:35 <sipa> English-: GetTransaction only works for transactions which have at least one not-fully-spent output
105 2014-12-07 15:43:51 <sipa> unless you have -txindex on
106 2014-12-07 15:43:58 <English-> ok, I'll try! :)
107 2014-12-07 15:44:02 <michagogo> because if the transaction is fully spent in that block, if you look after the block it won't be unspent
108 2014-12-07 15:44:02 <sipa> (but it's still a terribly inefficient approach)
109 2014-12-07 15:46:18 <sipa> English-: note that setting -txindex requires rebuilding the whole database, as it needs to keep an index of every transaction ever, rather than just a database of unspent outputs
110 2014-12-07 15:47:39 <English-> I'm currently starting with -reindex each time, so that is ok... but even with txindex=1, my lookup fails to find the transaction
111 2014-12-07 15:48:34 <English-> it fails for this transaction first 6b0f8a73a56c04b519f1883e8aafda643ba61a30bd1439969df21bea5f4e27e2
112 2014-12-07 15:49:44 <sipa> are you sure you have txindex on?
113 2014-12-07 15:50:00 <English-> bitcoind -reindex=1 -txindex=1
114 2014-12-07 15:50:03 <English-> will that do it?
115 2014-12-07 15:50:11 <sipa> it should, yes
116 2014-12-07 15:50:20 <sipa> (and again: that's really the wrong approach, as there's no guarantee that the block you just accepted is actually part of the main chain)
117 2014-12-07 15:50:37 <sipa> or even valid
118 2014-12-07 15:50:50 <English-> yes, that is true.... so would there be a better part in the code to do this?
119 2014-12-07 15:51:08 <sipa> yes, ConnectBlock
120 2014-12-07 15:51:18 <sipa> which has all inputs and outputs as they are being spent, to validate them
121 2014-12-07 15:51:49 <English-> ok, sounds good :) I guess though I'd have to handle reorganization's as well
122 2014-12-07 15:51:58 <sipa> yes
123 2014-12-07 16:23:12 <English-> sipa, michagogo seems to work running it at the of ConnectBlock :-) Thank you, very much appreciated!
124 2014-12-07 16:53:51 <michagogo> Huh, decodescript has a limit on how long the asm it returns will be?
125 2014-12-07 16:53:56 <michagogo> Wait, this looks like a bug
126 2014-12-07 16:54:24 <michagogo> Wait, no
127 2014-12-07 16:54:25 <michagogo> nvm
128 2014-12-07 16:54:47 <michagogo> Disregard the previous 4 messages.
129 2014-12-07 18:01:38 <btcdrak> has anyone tried gitian builds recently? I rebuilt my VM accordint to latest bitcoin master and the gitian process seems to have a problem contacting bitcoincore.org and thus fails.
130 2014-12-07 18:01:55 <sipa> btcdrak: known problem; there is an issue for that
131 2014-12-07 18:02:49 <sipa> btcdrak: the gitian VM isn't allowed to contact the outside world (and rightfully so), but there needs to be a mechanism to fetch the necessary sources and other things outside of gitian before starting it
132 2014-12-07 18:03:46 <btcdrak> sipa: yes, so sort of wget the dependencies to inputs/ folder before running the gitian VM I guess?
133 2014-12-07 18:04:21 <sipa> yes, run "make download" in the depends dir, and copy the inputs to some cache directory
134 2014-12-07 18:04:28 <sipa> but that fails for a few things still
135 2014-12-07 18:04:38 <sipa> and it's not particularly streamlined...
136 2014-12-07 19:38:36 <noictib> What is the citation style used in all the papers the core devs produce (i.e. sidechains)
137 2014-12-07 19:39:17 <btcdrak> sipa: The boost-1.55 checksums, is that known or should I open a ticket? I didnt see any mention of it in github
138 2014-12-07 19:40:28 <btcdrak> sipa: nvm, seems it's a sourceforge problem.
139 2014-12-07 19:43:56 <btcdrak> sourceforge currently requires the use of javascript to download files >_>
140 2014-12-07 19:47:54 <sipa> noictib: the sidechains paper tex sources are here: https://github.com/apoelstra/sidechains-whitepaper
141 2014-12-07 20:01:52 <noictib> sipa: I'm a little confused. I see the in text citations, but I don't know how the in text citation style is defined. Is [first three letters of authors name or initials of all three authors, last two digits of year] just latex style?
142 2014-12-07 20:02:17 <jfoxdev> Greetings all, I'm looking to integrate various cryptocurrencies into some applications I'm working on
143 2014-12-07 20:02:53 <jfoxdev> I was wondering if there were some security guidelines anywhere I could check out
144 2014-12-07 20:05:51 <sipa> noictib: \bibliographystyle{amsalpha}
145 2014-12-07 20:12:52 <noictib> ah, thanks
146 2014-12-07 20:18:39 <jfoxdev> oh wow, the dev documentation page change -a lot- since the last i checked it out
147 2014-12-07 20:19:31 <Luke-Jr> jfoxdev: 1) Bitcoin is the only notable cryptocurrency, 2) anything else is off-topic in #bitcoin-* channels, 3) integration is kinda sorta not usually considered Bitcoin development (more like a user)
148 2014-12-07 20:44:46 <btcdrak> sipa: are the gitian build dependencies mirrored on bitcoincore.org yet? seems there is an annoying edge case, sourceforge is returning errorpages without 404 status code. while sf is in maintenance mode, attempts to wget download an html page with statuscode 200, so are accepted so fails the checksum tests as opposed to understanding the file is
149 2014-12-07 20:44:46 <btcdrak> unavailable.
150 2014-12-07 20:48:24 <btcdrak> sipa: maybe if a file fails checksum it should also try the fallback URL also
151 2014-12-07 22:14:58 <michagogo> Also, http://bitcoincore.org/index.html is a lie