Bitcoin Forum
May 06, 2024, 04:02:25 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Why first instead of second?  (Read 2571 times)
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 11, 2014, 01:59:53 PM
 #1

So recently I made these 4 transactions
1.https://blockchain.info/tx/d51b8019d9d1cb534b7ad7fee0c1bca6f3069e9eb9b0d27e337e65d25c231c5d
2.https://blockchain.info/tx/8da1db435625ca13e18ef3fca999211dec4187d4aa64fd89caf17590db7dbb0f
3.https://blockchain.info/tx/5c99ef1800e20208d5d8bfef9a57c5bb8a0fbb8b14339ad7720bef9b44b93bd2
4.https://blockchain.info/tx/08ded0728f2a8550d973bc91499d670a0e7f63967fca2671a1cf8c0a24de2776

All those four transactions had 0 fee 20 inputs and only 1 output all those four transaction was a little bit over 3600 bytes all those four txs must have NOT been confirmed all those four transaction got confirmed by f2pool and all those four transaction were double-spends of these four transactions
1.https://blockchain.info/tx/4df5db6bf82f8e7eba07ac016957fcb8fb699690aae6855aa37740c2c7fe8a95
2.https://blockchain.info/tx/274533f464536539b1997876d83f253dc373351845dc3744f2b076696b9288c0
3.https://blockchain.info/tx/51daf12b02e3118d9d6a0c3a8bfacfd3613d65751dcfdea794d3bfe8626f4417
4.https://blockchain.info/tx/d43ff175ad91a36d311270fdad54bdc1f83c17bdf8961e3951372eeeb9d72a1b

All these four transactions were pushed on http://eligius.st/~wizkid057/newstats/pushtxn.php and were relayed by Eligius all these four transaction were sending the coins to them selfs all these four tx's had 20(only first had 21 inputs) inputs and 1 output all these four transactions HAD a fee of 0.0004btc all these four transaction must HAVE been confirmed by Eligius in their next block BUT their were not because f2pool mined their conflicting(double-spend transactions).
So my questions are:
1.Why f2pool picked first ones instead of the seconds?(They are confirming first saw and not with the highest fee?) And why they even picked a 0 fee low priority transaction?
2.What should I do next time for those 0fee tx's to not confirm and the ones that pay the fee to confirm?(Just don't answer like "Just don't send them".

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
1714968145
Hero Member
*
Offline Offline

Posts: 1714968145

View Profile Personal Message (Offline)

Ignore
1714968145
Reply with quote  #2

1714968145
Report to moderator
There are several different types of Bitcoin clients. The most secure are full nodes like Bitcoin Core, but full nodes are more resource-heavy, and they must do a lengthy initial syncing process. As a result, lightweight clients with somewhat less security are commonly used.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
November 11, 2014, 02:50:52 PM
 #2

Quote
all those four txs must have NOT been confirmed
Why? Miners can put zero-fee transactions in their blocks.

Quote
all those four transaction got confirmed by f2pool
Now we know that f2pool accepts zero-fee transactions into block

Quote
So my questions are:
1.Why f2pool picked first ones instead of the seconds?(They are confirming first saw and not with the highest fee?) And why they even picked a 0 fee low priority transaction?
The possible answers are
1) f2pool had not received your double-spending transactions with fees. Pushing them into Eligius does not guarantee that every node will receive them
2) f2pool does not have replace-by-fee methods

Quote
2.What should I do next time for those 0fee tx's to not confirm and the ones that pay the fee to confirm?(Just don't answer like "Just don't send them".
It depends of what result you want to achieve.
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 11, 2014, 03:09:37 PM
 #3

Why? Miners can put zero-fee transactions in their blocks.
What I wanted is that second would confirm and first would silently get dropped after second got confirmed.
1) f2pool had not received your double-spending transactions with fees. Pushing them into Eligius does not guarantee that every node will receive them
First I pushed it on Eligius and then just to see if f2pool holds low priority tx's at it's memory pool I pushed it on f2pool.com/pushtx which returned into something like "Internal server error".
2) f2pool does not have replace-by-fee methods
It would be nice to see them implementing it. I think it would be the first pool to implement it?
It depends of what result you want to achieve.
Second transaction confirms and first one doesn't and after time it drops. First or second tx should be modified in order for only second tx to confirm.

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
November 11, 2014, 03:18:36 PM
 #4

Quote
What I wanted is that second would confirm and first would silently get dropped after second got confirmed.
Just do not broadcast the first transaction Smiley

Quote
First I pushed it on Eligius and then just to see if f2pool holds low priority tx's at it's memory pool I pushed it on f2pool.com/pushtx which returned into something like "Internal server error".
May be the message was "Invalid Referral Code" ?
There is a little difference between "Internal server error" and "Invalid Referral Code"

Quote
It would be nice to see them implementing it. I think it would be the first pool to implement it?
I think that bitcoin will die before than some big pool will implement this feature.

Quote
Second transaction confirms and first one doesn't and after time it drops. First or second tx should be modified in order for only second tx to confirm.

Bitcoin main network is not a right place for doublespending tests.
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 11, 2014, 03:30:58 PM
 #5

Just do not broadcast the first transaction Smiley
Haha OP says: "(Just don't answer like "Just don't send them)".
May be the message was "Invalid Referral Code" ?
There is a little difference between "Internal server error" and "Invalid Referral Code"
The message was "duplicated transaction" just remembered it (lol my memory is totally not the best) I got the referral from the owner of f2pool so I am sure that it was not "Invalid Referral Code"
I think that bitcoin will die before than some big pool will implement this feature.
I don't think so as f2pool is only at 28% and it would only confirm one transaction the one with the bigger fee and not both transactions.
Bitcoin main network is not a right place for doublespending tests.
Well testnet is not the place for me too because I experiment with the main chain and it's pools which has different rules from the testnet(Eligus or f2pool for example).

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
November 11, 2014, 03:50:49 PM
 #6

Quote
The message was "duplicated transaction" just remembered it (lol my memory is totally not the best) I got the referral from the owner of f2pool so I am sure that it was not "Invalid Referral Code"

The answer is here: https://bitcointalk.org/index.php?topic=627218.msg9359816#msg9359816 :
We do not currently replace conflicting transactions to prevent potential double spend.

Quote
I don't think so as f2pool is only at 28% and it would only confirm one transaction the one with the bigger fee and not both transactions.
It is impossible to confirm both transactions. And there is no pool with replace-by-fee method now.
I think that there will be no such pool with this option available to everyone in near future.

Quote
Well testnet is not the place for me too because I experiment with the main chain and it's pools which has different rules from the testnet(Eligus or f2pool for example).
OK, the testnet is not a right place also.

BTW, how did you get referal code? I want too  Grin
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 11, 2014, 04:05:18 PM
 #7

The answer is here: https://bitcointalk.org/index.php?topic=627218.msg9359816#msg9359816 :
We do not currently replace conflicting transactions to prevent potential double spend.
SHIT.
It is impossible to confirm both transactions. And there is no pool with replace-by-fee method now.
I think that there will be no such pool with this option available to everyone in near future.
Well but one of those blocks would get orphaned?
OK, the testnet is not a right place also.
BTW, how did you get referal code? I want too  Grin
Favor for favor you think/found the method for me on:How when I send first tx with 0fee and than second with 0.0004fee only for second to get confirmed and I will share the ref key ONLY with you(I guess he won't get mad that I shared it only with you)

EDIT: What I am trying to here is:
Lets say that my friend accepts 0conf transactions and will ship me 5USD after he sees the incoming tx. So I send first transaction with 0fee he sends me 5USD when I get the dollars I quickly broadcast a conflicting tx which will get confirmed so first drops and I still get the dollars.(That was just an example so you can understand better what I want to achieve with all those tx's)

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
November 11, 2014, 04:28:41 PM
 #8

Quote
Favor for favor you think/found the method for me on:How when I send first tx with 0fee and than second with 0.0004fee only for second to get confirmed and I will share the ref key ONLY with you(I guess he won't get mad that I shared it only with you)
I want my own referal code Smiley

There is no way to be 100% sure that the "second" transaction will be confirmed. Sometimes network will confirm your "first" transaction.
Sometimes both transactions will be unconfirmed.

The steps for double-spending attempts are:
1) backup your wallet.dat and remove it from bitcoin folder
2) start bitcoin core client (it will create new wallet.dat)
3) send "first" raw transaction via console
4) do a pray
5) restart bitcoin core client with connections to many nodes
6) send "second" raw transaction
7) repeat steps 4-6
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 11, 2014, 07:41:51 PM
 #9

I want my own referal code Smiley
Just ask him that's what I did.
There is no way to be 100% sure that the "second" transaction will be confirmed. Sometimes network will confirm your "first" transaction.
Sometimes both transactions will be unconfirmed.
The steps for double-spending attempts are:
1) backup your wallet.dat and remove it from bitcoin folder
2) start bitcoin core client (it will create new wallet.dat)
3) send "first" raw transaction via console
4) do a pray
5) restart bitcoin core client with connections to many nodes
6) send "second" raw transaction
7) repeat steps 4-6
I create a low priority tx Eligius doesn't hold them so I can push the conflicting tx there wouldn't that be easier?

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
notme
Legendary
*
Offline Offline

Activity: 1904
Merit: 1002


View Profile
November 11, 2014, 09:00:36 PM
 #10

The answer is here: https://bitcointalk.org/index.php?topic=627218.msg9359816#msg9359816 :
We do not currently replace conflicting transactions to prevent potential double spend.
SHIT.
It is impossible to confirm both transactions. And there is no pool with replace-by-fee method now.
I think that there will be no such pool with this option available to everyone in near future.
Well but one of those blocks would get orphaned?
OK, the testnet is not a right place also.
BTW, how did you get referal code? I want too  Grin
Favor for favor you think/found the method for me on:How when I send first tx with 0fee and than second with 0.0004fee only for second to get confirmed and I will share the ref key ONLY with you(I guess he won't get mad that I shared it only with you)

EDIT: What I am trying to here is:
Lets say that my friend accepts 0conf transactions and will ship me 5USD after he sees the incoming tx. So I send first transaction with 0fee he sends me 5USD when I get the dollars I quickly broadcast a conflicting tx which will get confirmed so first drops and I still get the dollars.(That was just an example so you can understand better what I want to achieve with all those tx's)

So you're trying to double spend, and then complaining that the network won't let you?

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 11, 2014, 09:21:24 PM
 #11

So you're trying to double spend, and then complaining that the network won't let you?
I am trying to do a double-spend attempt. I send one first transaction which will not confirm and than I send another tx which will confirm the problem is that f2pool now confirms first transactions.

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
November 11, 2014, 09:27:59 PM
 #12

LOL
notme
Legendary
*
Offline Offline

Activity: 1904
Merit: 1002


View Profile
November 11, 2014, 10:16:23 PM
 #13

So you're trying to double spend, and then complaining that the network won't let you?
I am trying to do a double-spend attempt. I send one first transaction which will not confirm and than I send another tx which will confirm the problem is that f2pool now confirms first transactions.

The "problem" is that pools use the first transaction they see to provide better protection against double spends and you are trying to double spend.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 14, 2014, 04:12:33 PM
 #14

Ok so the owner of f2pool answered my questions. The reason why those tx's got confirmed is because they hit the block spree and ran out of high priority transactions and their minimum block size is 100kb so they had to fill it with free transactions. I don't want to my first transaction to get confirmed(3600bytes 0 fee) so I need to flood the network with 3000byte 1satoshi fee transactions the question is how much of those transactions should I make for my first transaction to not confirm?

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
November 14, 2014, 04:17:48 PM
 #15

Don't you have more useful things to do?
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 14, 2014, 04:27:41 PM
Last edit: November 14, 2014, 06:15:35 PM by yakuza699
 #16

Don't you have more useful things to do?
No, not really. And useful for who? What do you offer to do as useful things. And do you have any idea on below?
How much of those transactions should I make for my first transaction to not confirm?

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 21, 2014, 02:35:31 PM
 #17

Ok so I decided to flood the network with 200 tx's(should be enough) but creating a raw tx manually will take me like 2hours is there any faster way to do this?

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
November 21, 2014, 03:01:54 PM
 #18

Quote
Ok so I decided to flood the network with 200 tx's(should be enough) but creating a raw tx manually will take me like 2hours is there any faster way to do this?
Yes, of course this process can and should be automated.
I do not know existing solutions for it. But it is not a problem to write such program. (You are welcome to hire me  Grin )

For example look to the addresses
13eb7BFXgHeXfxrdDev1ehrBSGVPG6obu8 and 12f6cDdbioEr4ckNxjRyz3netnriQ4pAAW
(this is one pair for example, there are a lot of such pairs in the blockchain)

first step: split the small amount to the big number of outputs:
https://blockchain.info/tx/335a453b4017fda7146b41883c30b40857456538535684b3f79e8d0a8b9b6932
second step: return funds back to original address.

( I am not sure that 200 txs will enough to flood the network )
yakuza699 (OP)
Hero Member
*****
Offline Offline

Activity: 935
Merit: 1002


View Profile
November 21, 2014, 03:16:34 PM
 #19

Yes, of course this process can and should be automated.
I do not know existing solutions for it. But it is not a problem to write such program. (You are welcome to hire me  Grin )
How much would you ask for a program like that. What the program should do is create a transaction which has 19 inputs 19 outputs pays 1 satoshi fee than spend the unconfirmed coins from the other wallet (which just got the coins in the last tx) and repeat that x times.
For example look to the addresses
13eb7BFXgHeXfxrdDev1ehrBSGVPG6obu8 and 12f6cDdbioEr4ckNxjRyz3netnriQ4pAAW
(this is one pair for example, there are a lot of such pairs in the blockchain)

first step: split the small amount to the big number of outputs:
https://blockchain.info/tx/335a453b4017fda7146b41883c30b40857456538535684b3f79e8d0a8b9b6932
second step: return funds back to original address.
Not entirely sure what you're trying to say here?
( I am not sure that 200 txs will enough to flood the network )
Well 500 tx's must be enough because 3000bytes X 500tx's is approximately 1500000bytes which is 1500kilobytes and that is an overkill.

▄▄▄▄▄▄▄▄
▄▄▄▄▄▄
▄▄▄▄
BTC BitDice.me 
.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
November 21, 2014, 03:17:59 PM
 #20

Quote
Not entirely sure what you're trying to say here?

I am not sure, that sending 200 (300, 500... and even thousands) transactions at one time (through the different nodes of course) will change anything in network processing.

This is your idea, not mine.
You have asked "is is possible to create and send 200 transactions with one click?"
I've answered: "yes, it is possible"
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!