Bitcoin Forum
May 08, 2024, 02:05:55 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 [53] 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 »
1041  Bitcoin / Development & Technical Discussion / Re: Why nobody's discussing this? on: July 27, 2013, 07:14:00 PM
I'd welcome some paper though, that would allow some kind of coin mixing services, so one could launder his coins, without using a third party, but only a widely accepted protocol.
But I guess that will have to be done one day together with off chain transactions.
Obviously this system is not going to process 100tx/sec - if anyone believes that, he must be insane Smiley
1042  Bitcoin / Development & Technical Discussion / Re: Why nobody's discussing this? on: July 27, 2013, 07:08:55 PM
Mining is the voting - everyone knows that.

And as for the homework I should supposedly do: what is so obvious that I don't know?
1043  Bitcoin / Development & Technical Discussion / Re: Why nobody's discussing this? on: July 27, 2013, 06:44:46 PM
as long as I agree with the keep it simple idea, the others like "sliding blockchain with fixed block sizes, the redistribution of dead coins with an unforgeable lottery, enforced mixing, and miner ostracism" - this is some crazy shit Smiley
why would any sane person want to e.g. redistribute dead coins?
how would he even know if they are actually dead?
so yeah, keep it simple. and the bitcoin core - the blockchain parser - should have been a separate app long ago. no wallet, no mining just API to allow it. untouchable - unless like once a year, upon voting.
but it wont be as such - not for a long time. instead all the shit satoshi client does, will be mangled together with the chain parsing protocol.
1044  Bitcoin / Development & Technical Discussion / Re: How to watch confirmations on set of transactions? on: July 26, 2013, 11:25:38 PM
I just want to know when a few transactions I will make have hit 4 confirmations/
So you basically want to send a tx, from you wallet, and then get some alatm clock tiggered, when it reaches 4 confiscation.
How much secured you need to have ii?
If not, I belvbe any block explorer would ro.

Thanks what's the easiest or fastest way to build my own block explorer.. or can bitcoinj do what is required if it knows the transactions to watch.. or does it require keys of some sort?
So what are you going to do, after the alarm clock triggers the 4th confirmation?
1045  Bitcoin / Development & Technical Discussion / Re: How to watch confirmations on set of transactions? on: July 26, 2013, 11:13:53 PM
I just want to know when a few transactions I will make have hit 4 confirmations/
So you basically want to send a tx, from you wallet, and then get some alatm clock tiggered, when it reaches 4 confiscation.
How much secured you need to have ii?
If not, I belvbe any block explorer would ro.
1046  Bitcoin / Development & Technical Discussion / Re: How to watch confirmations on set of transactions? on: July 26, 2013, 07:49:06 PM
I mean, I dont want to be mean, but if you explain you application maybe we could explain you better.
1047  Bitcoin / Development & Technical Discussion / Re: Best way to extract addresses from sigScript and PkScript? on: July 26, 2013, 07:41:06 PM
In that case, why do you bother extracting the pubkey?  The satoshi client just compares the script to a stored copy of the script that matches a key.

So it's building up: OP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG

and just matching on that?

yes. but in the first block, they were using different scripts
1048  Bitcoin / Development & Technical Discussion / Re: How to watch confirmations on set of transactions? on: July 26, 2013, 07:37:53 PM
I just wonder, why do you even need it?
Watching a set of transactions and their number of confirmations as they rise - seems pretty crazy for me Wink
1049  Bitcoin / Development & Technical Discussion / Re: Best way to extract addresses from sigScript and PkScript? on: July 26, 2013, 07:20:30 PM
I guess you only need to analyze the data from pk_scripts, from unspent outputs - the input addresses will just be tx ids (who cares).
They (txout scripts) are in general pretty much straight forward,
Recently a hash, with something.
Previously there was the entire public key.
1050  Bitcoin / Development & Technical Discussion / Re: Best way to extract addresses from sigScript and PkScript? on: July 26, 2013, 07:08:37 PM
Hi everyone,

Is there a best practice method of extracting addresses from the sigScript and PkScript?

For example, is it safe to assume that data pushes of 20 bytes are addresses and 33 / 65 (if starting with 0x02 / 0x03 for 33 and 0x04 for 65) are public keys?

I know that there are transactions that don't have addresses, like this one: https://blockchain.info/tx/a4bfa8ab6435ae5f25dae9d89e4eb67dfa94283ca751f393c1ddc5a837bbc31b

But are there transactions that have more than one? Do i have to run the scripts in order to find out which one is actually used?

I also read somewhere that it's possible to get the public key from the signature or is that not the case?
Ultimately the is no such thing as the address.
Yes you can do these things and they will work in 90+% of cases, but never for all of them.
If you sell it to a miner, you can introduce a tx that can create a new address format - whatever you can think of.
I guess you should be able to name it then Wink

As for extracting the address from the signature - it's somehow possible, though from what I recall the output might be an address that is a false one. So it only makes sense if you have the right one, so you can check.
1051  Bitcoin / Development & Technical Discussion / Re: What is up with this SIGHASH_SINGLE and nOut out of range? on: July 24, 2013, 06:01:48 PM
FWIW I'd suggest you consider removing script evaluation from your library entirely for now. Keep the rest of the scripting code - you need it to create transactions after all - but make it clear that the only way you know that a transaction is valid is if a miner mines it. This is more in-line with the guarantees SPV clients can provide anyway, and will save you an enormous amount of work that is probably wasted until we have better testing infrastructure for third party clients to use.
Oh, no!
Thanks for the advise to make my life easy, but switching the validation off, after I had spent so much effort on validating the txs, is like admitting that I failed on the most important part.
I know that there are still things that will make my code fail, eventually somewhere in a future, but that is exactly where I need people like you, who try to break it now, while I seem to be the only user, thus with no big consequences.
So please keep up the good job, and let me handle whatever you break Wink
1052  Bitcoin / Development & Technical Discussion / Re: What is up with this SIGHASH_SINGLE and nOut out of range? on: July 24, 2013, 05:17:28 PM
We do that already. This issue with SIGHASH_SINGLE was documented in the unittests here: https://github.com/bitcoin/bitcoin/blob/master/src/test/data/tx_valid.json#L39 (I did not find it first)

The other main source of test cases is Matt Corallo's block tester: https://github.com/TheBlueMatt/test-scripts
Thanks! The vectors from the json file helped me a lot today. And the tx_invalid.json also turned out to be useful.
Who would have thought that cutting off the signature from a message that gets hashed is such a complex operation (talking about the length prefix here).

Though, the Matt's block tester - I did not even try to build it, not too mention figuring out how to use it.. Maybe some day.

You're welcome to go through those test cases and summarize the more subtle ones, but frankly I don't see the point: any change, no matter how small, triggers a hard fork. Perfect compliance with those tests is a necessary but far from sufficient requirement.
Sure - but at least this many less to go Smiley


BTW, it would be nice to a have a test tx that triggers this code:
Code:
// In case concatenating two scripts ends up with two codeseparators,             
// or an extra one at the end, this prevents all those possible incompatibilities.
scriptCode.FindAndDelete(CScript(OP_CODESEPARATOR));
1053  Bitcoin / Bitcoin Discussion / Re: BREAKING: SEC Charges pirateat40 With Running Bitcoin-Denominated Ponzi Scheme on: July 23, 2013, 07:08:07 PM
The only question is: where is the money?
Someone obviously took it, and IMO pirateat40 was just a poor sucker, in all this scam.
1054  Bitcoin / Development & Technical Discussion / Re: Reasons to keep 10 min target blocktime? on: July 23, 2013, 05:36:55 PM
The main reason why the 10 min doesn't change is that the network does not agree on it.
If you could convince 50+% of miners to change the protocol, I have no doubts that they'd be able to handle a forked client which does it for them - whoever would had stayed on the satoshi branch would have been doomed. Or on any other branch.
If they had enough hashing power nobody would be able to stop it, in such case, but same applies to you trying to change the protocol.
But miners don't seek new rules in this protocol - they like the money as it is.
At least they are sane Smiley
So no worries
1055  Bitcoin / Development & Technical Discussion / Re: Secret from combined transaction ids on: July 23, 2013, 05:31:13 PM
hash of the combined transactions - indeed. and good solution, btw.
but I bet, there are so many ways to build a story around it, how to interpret the winning hash...
and some of the stories might be exploitable, if you don't think them through enough.
or I should say: if they don't think.. Smiley
1056  Bitcoin / Development & Technical Discussion / Re: Secret from combined transaction ids on: July 23, 2013, 05:12:52 PM
But what will be the winning criteria?
If you make it like "whichever hash is lower, then it's quite exploitable, no matter a method".
Bit if you make it smart, like e.g. satoshidice, then it can be pretty secured and fully auditable.
Its usually enough to just xor two hashes together to get a unique enough value - unless you want to keep the combining algo secret.
But people who gamble don't like secrets, not that I'd known any Smiley
1057  Bitcoin / Development & Technical Discussion / Re: What is up with this SIGHASH_SINGLE and nOut out of range? on: July 23, 2013, 03:53:20 PM
Just as a general comment, to anyone reading this: please always, whenever you discover such a case, do whatever you can to public any possible sources of hard forks that can be a consequence of an existing implementation, that is not an obvious design decision, but rather a hard to spot, implementation specific whatever (a bug or a feature).

As they say it: knowledge is power.
And knowledge of how you can attack a 1+bn USD worth of a currency is a power worth exploiting.
So if you are honest people, and I think you are, please do not withhold such an important info, but rather advertise it as much as you can - embedding test cases in the block chain is the perfect ultimate solution.
1058  Bitcoin / Development & Technical Discussion / Re: What is up with this SIGHASH_SINGLE and nOut out of range? on: July 23, 2013, 02:08:13 PM
Live with it ok, but we need to know what is the good behavior!
Doesn't this look like a crazy hack/bug?
Thus my question.

For me it seems like someone has overlooked it at some point; "return 1" was supposed to indicate an error, but it was somehow overlooked and now it implicitly gets cast to (uint256)1 which is a pretty valid hash value, so C++ compiler does not complain and so nobody has noticed..

Don't you have the same problem in Armory?
I cannot imagine reproducing the same behavior in python, just by repeating such a mistake.

This was noticed a long time ago.  It is just now being re-noticed by others Smiley

I discovered this over a year ago while rewriting everything into python:

https://github.com/jgarzik/python-bitcoinlib/
https://github.com/jgarzik/python-bitcoinlib/blob/master/bitcoin/scripteval.py

Can you spot the problem?  Smiley
Man, you should have put it on the wiki then, or at least as some comment in the source code.
Unless your goal is to make sure that the clients you develop keep the monopoly. Smiley
Then its probably a good strategy, to not make such an info public.
1059  Bitcoin / Development & Technical Discussion / Re: What is up with this SIGHASH_SINGLE and nOut out of range? on: July 23, 2013, 02:05:43 PM
I believe Peter created these transactions, and I think that was a good idea. Go Peter!
Yes.
As much as I don't get along with him in general, thank you @Peter for bringing these txs to the network!

I was always worried about different implementation/language related technicals that could be exploited to create a hard fork, so I was designing my node to be less strict in any checking, for such cases. Since it is not a mining node, it should not matter much, but Peter has actually managed to find a case where my implementation was more strict..
And now I have at least one less to go Smiley
1060  Bitcoin / Development & Technical Discussion / Re: What is up with this SIGHASH_SINGLE and nOut out of range? on: July 23, 2013, 01:28:28 PM
Live with it ok, but we need to know what is the good behavior!
Doesn't this look like a crazy hack/bug?
Thus my question.

For me it seems like someone has overlooked it at some point; "return 1" was supposed to indicate an error, but it was somehow overlooked and now it implicitly gets cast to (uint256)1 which is a pretty valid hash value, so C++ compiler does not complain and so nobody has noticed..

Don't you have the same problem in Armory?
I cannot imagine reproducing the same behavior in python, just by repeating such a mistake.
Pages: « 1 ... 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 [53] 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!