Pages:
Author

Topic: Bitcoin is not the answer for microtransactions; how to rebroadcast unconfirmed? - page 2. (Read 3928 times)

hero member
Activity: 700
Merit: 500
I know that I have seen some way on here to "cancel" a transaction that looked like it was going to go unconfirmed forever.  Look around, maybe in tech support I saw it.  I think it had to do with the way that people are able or attempt to do double spends.  It's like you have to mark your wallet as if the transaction never happened or something like that.
donator
Activity: 1218
Merit: 1079
Gerald Davis
The error may be due to the fact the BCT adds hidden spaces to long strings.  Always write txn related stuff in code blocks.  However the user doesn't really want the old txn pushed it is actually a good thing if it has poor propogation as it will make it easier to "double spend" it with a txn that has the proper fee.
legendary
Activity: 1358
Merit: 1001
https://gliph.me/hUF
anyone care to try to re-push the tx somehow

01000000019230ce51556db4aa00585cb169d1d09b28abca6eae6ac63c7c1b45645e179fc401000 0008b4830450221008e8a12c169ce28a8e43a5d59c78bf3d7ce392ae5da8ade76d7470430b56482 d202206241d68e400ba465668990d5c319415c28201bbd8da851d9c9814cd6e2b3651a014104572 2135b0e7aca6c5f63b1985b7258d29268692ffd99221a8e6b1af0b1ad943a72ec7633fb6ecfc543 9c1dbf10a490cdfdc2be265a6b086a600fc2263a3c1a86ffffffff02c1900200000000001976a91 4433b6bc44b5e8d37883a0e7038a79ad613fbbc3288ac3b800200000000001976a9145559eef599 61ecb7c0919ba4e66967875863a0f788ac00000000

it seems that blockchain.info's pushtx no longer functions right. instead of re-transmitting unconfirmed tx's, it is saying it already exists. (which it should only say that AFTER confirmation)

https://btc.blockr.io/tx/push and http://coinb.in/send-raw-transaction.html both return an error.

Edit: As well as http://eligius.st/~wizkid057/newstats/pushtxn.php and http://webbtc.com/relay_tx  (thanks amaclin!)
full member
Activity: 126
Merit: 100
Thanks so much, everyone. This is extremely helpful to learn about this stuff. I think my $1 transaction may be lost forever because the app may try to continually push this transaction forever… but $1 is a small price to pay for an invaluable learning lesson like this! Smiley
hero member
Activity: 588
Merit: 500
There was a way to ''push'' TXs through, I dont remember the site. WILL EDIT IF FOUND Smiley
donator
Activity: 1736
Merit: 1014
Let's talk governance, lipstick, and pigs.
I was going to suggest the address export/import, but for such a small transaction it seems too confusing if you have the same addresses in two different wallets. After all is said and done, back up and carefully label any wallets you make and note any addresses you imported.
donator
Activity: 1218
Merit: 1079
Gerald Davis
In the meantime, I could import my private keys into Armory or Electrum and try to delete the stuck transaction from those apps. Do you know how I could go about deleting the transaction from Armory or Electrum?

You can import the keys into a new wallet (even blockchhain.info web wallet) and create a new txn from there.  You can't and don't need to delete the txn from the second wallet.

There is one potential issue.  As long as your original wallet is running it will continually rebroadcast the "old" txn.  It is trying to help you out.  It sees the txn hasn't confirmed so to ensure nobody forgets about it, every hour or so it sends a "hey network don't forget about txn c238d939b330b682abe1c729300636600254c23c67e1eea4e8daa9abc26dd2c5" to all its peers.   As long as it is helping out then the network will NEVER forget about the old txn and thus the new txn can't be spent either.  While I am sure this is frustrating it is done for a reason.  The Bitcoin network works to prevent double spends (and this is essentially what you are trying to do now).  As long as a node knows about the old txn it will not relay the new txn as a double spend.


Option 1:
 The wallet "may" eventually give up and delete the txn which doesn't confirm.  If it does then you don't need to import the keys into a new wallet.  The easiest option is just to wait and eventually the txn will "disappear" and you can spend the coins again.    You should check with the developer on if the app will eventually give up and if so when.

Option 2:
If the wallet will never give up then you need to stop it from rebroadcasting the old txn long enough for the network to forget about it.  If you can turn off the app that would do it, so would leaving the phone off.  As a last resort you could uninstall the app but make sure the private keys are backed up.  You will need to import the keys into a new wallet and create a txn there.  Honestly I would only go this route if you know option 1 won't work.


full member
Activity: 126
Merit: 100
You will need to contact the author of the wallet you are using.  The txn needs to be deleted and how to do that is wallet specific.  If you were using bitcoin-core, armory, or electrum there are known methods to delete a "stuck" txn.  I assume this is blockchain.info's wallet for IOS?  I know on the web version of blockchain.info that "stuck" txns are automatically deleted after a few days at which point you can spend them again.  I am not sure if that applies to IOS.  It is a wallet specific issue so you will need to get help from wallet developer/support/users.  I would post a thread asking "how to delete a "stuck txn" on blockchain.info IOS app?" in the alternate client forum.

Thanks so much. I was using the BitWallet app for iOS. I have notified the developer, and they said that they are going to put a warning into the next version of their software.

In the meantime, I could import my private keys into Armory or Electrum and try to delete the stuck transaction from those apps. Do you know how I could go about deleting the transaction from Armory or Electrum?

Quote
Notify the developer of the wallet you are using that it is non-compliant.  Most wallets will not let you create txn that won't be relayed by the network.  A good wallet will ensure that the txn is either high priority (based on coinage and other rules) OR it has the min fee required to ensure it is relayed.

Bitcoin is an open network this means anyone can write a wallet so there is no central authority that can stop someone from making a bad wallet.  At a minimum the wallet you have strongly warned you (with dire language) that the txn may be stuck forever if sent without a fee.

Thanks so much. I will definitely let the wallet developer know all of this information.
donator
Activity: 1218
Merit: 1079
Gerald Davis
Great discussion. In the meantime, does anybody have any advice on what I can do to get my transaction to go through -- with or without fees? I'm willing to pay the 6% fee to make my transaction go through -- I just need the ability to do so.

You will need to contact the author of the wallet you are using.  The txn needs to be deleted and how to do that is wallet specific.  If you were using bitcoin-core, armory, or electrum there are known methods to delete a "stuck" txn.  I assume this is blockchain.info's wallet for IOS?  I know on the web version of blockchain.info that "stuck" txns are automatically deleted after a few days at which point you can spend them again.  I am not sure if that applies to IOS.  It is a wallet specific issue so you will need to get help from wallet developer/support/users.  I would post a thread asking "how to delete a "stuck txn" on blockchain.info IOS app?" in the alternate client forum.

Quote
Without the ability to ensure that someone's transactions successfully get confirmed by the Bitcoin network, I honestly don't see how Bitcoin can ever become a replacement for the banks and the credit card companies. Sad

Notify the developer of the wallet you are using that it is non-compliant.  Most wallets will not let you create txn that won't be relayed by the network.  A good wallet will ensure that the txn is either high priority (based on coinage and other rules) OR it has the min fee required to ensure it is relayed.

Bitcoin is an open network this means anyone can write a wallet so there is no central authority that can stop someone from making a bad wallet.  At a minimum the wallet you have strongly warned you (with dire language) that the txn may be stuck forever if sent without a fee.
full member
Activity: 126
Merit: 100
Add a 0.0001 BTC fee

Right, I want to do that. But I don't currently have the ability to resend the transaction with a fee.

Looks like Peter Todd has suggested this "Replace By Fee" functionality to the core developers:
https://github.com/petertodd/replace-by-fee-tools
I feel that this really needs to be built into the Bitcoin protocol!
donator
Activity: 1736
Merit: 1014
Let's talk governance, lipstick, and pigs.
Great discussion. In the meantime, does anybody have any advice on what I can do to get my transaction to go through -- with or without fees? I'm willing to pay the 6% fee to make my transaction go through -- I just need the ability to do so.

Without the ability to ensure that someone's transactions successfully get confirmed by the Bitcoin network, I honestly don't see how Bitcoin can ever become a replacement for the banks and the credit card companies.
Add a 0.0001 BTC fee
full member
Activity: 126
Merit: 100
Great discussion. In the meantime, does anybody have any advice on what I can do to get my transaction to go through -- with or without fees? I'm willing to pay the 6% fee to make my transaction go through -- I just need the ability to do so.

Without the ability to ensure that someone's transactions successfully get confirmed by the Bitcoin network, I honestly don't see how Bitcoin can ever become a replacement for the banks and the credit card companies. Sad
donator
Activity: 1736
Merit: 1014
Let's talk governance, lipstick, and pigs.
Dogecoin is more suited for microtransactions. And the OP problem is why competition amongst cryptocurrencies is good.
Dogecoin is where Bitcoin was in 2010. If it sees any success, it will have the same issues.
Dogecoin is Ok but Darkcoin has much more opportunities imho
Cryptocurrencies will either be widely accepted or useful for microtransactions. They can't be both.
member
Activity: 79
Merit: 10
https://bountyminer.io
Dogecoin is more suited for microtransactions. And the OP problem is why competition amongst cryptocurrencies is good.
Dogecoin is where Bitcoin was in 2010. If it sees any success, it will have the same issues.
Dogecoin is Ok but Darkcoin has much more opportunities imho
full member
Activity: 126
Merit: 100
Offchain is the only real solution, using a webwallet/App that customers pre-deposit their daily spend into, to pre-cnfirm it. and then simply move it to the local store managers ID when transacting. much like using the of mtgox codes to move funnds between mtgox customers. or btc-e codes.

Or maybe a microcoin on top of Bitcoin. The value of one microcoin could be fixed to 1 satoshi. And microcoin servers would collect lots of transactions and when the sum for a payee reaches a certain threshold then that sum is converted to a bitcoin transaction that goes to the payee.
legendary
Activity: 826
Merit: 1002
amarha
I was under the impression that Bitcoin would be the answer for sending micro payments over the Internet, but that is apparently not the case at all.

With a .0001 BTC required transaction fee for all transactions under .01 BTC, that amounts to a 6% transaction fee (at today's exchange rates) for a $1 USD transaction. And that equates to a 12% fee for a $.50 USD transaction. These fees are significantly higher than credit card fees, Paypal fees, Western Union fees, and even foreign exchange rate fees.

A few days ago, I didn't realize any of this information (i.e. the required fees), so I tried to send $1 worth of BTC to a friend WITHOUT a transaction fee to show him how "amazing" this new technology is. Turns out to be not very amazing at all, because the transaction never confirmed because of the lack of the transaction fee. Worst of all, there seems to be nothing I can do about it... I can't even add the 6% fee to it now, in order to get it confirmed! Sad

I used the BitWallet app on iOS to send the transaction, and the hash of the transaction is: c238d939b330b682abe1c729300636600254c23c67e1eea4e8daa9abc26dd2c5

So now the transaction is in a permanent limbo state that can't be resolved, and I have effectively paid a 100% transaction fee because the money is in limbo. Sad

Is there anything I can do to rebroadcast this transaction with the appropriate fee, so it actually confirms?

Bitcoin is horrible for microtransactions unfortunately. And it's only going to get worse over time with the blocksize cap of only 1MB.

Bitcoin itself is heading towards being a store of value while other centralised systems are built on top of it.
legendary
Activity: 4410
Merit: 4788
microtransactions = wait for payment-channels. we are early in the game. be patient.

I read:

"This article describes how to use payment channels, a way to set up a pending transfer of value from one wallet to another such that the amount that will be transferred is incrementable at high speed and by very small amounts. Whilst this does not allow you to send micropayments at high speed to different recipients each time, many applications can fit within this framework - typically anything that involves micro-billing for a metered service." -- https://bitcoinj.github.io/working-with-micropayments

It would be good if something similar can be done for many-to-many microtransactions. Such as payment channel servers that collect lots of small transactions and convert them to larger chunks of real Bitcoin transactions. That would be powerful if it can be done in a trustless way.

imagine PepsiCo started their own altcoin, a closed premine so no outsider/customer could simply create coin(make counterfiets). where PepsiCo swapped coin at a forever fixed rate of 1 Pepsicoin=1bit.

and because PepsiCo made the smartphone App they control the security to ensure no extra coin just suddenly appears.
now we still come to the issue of "im gonna cry 10 minutes it too long"
"im gonna cry 2 minutes it too long"
"im gonna cry 30 minutes it too long"

yes even 30 seconds is too long to wait for payment to confirm at starbucks, purely to see the funds move on a Pepsicoin blockchain.

Offchain is the only real solution, using a webwallet/App that customers pre-deposit their daily spend into, to pre-cnfirm it. and then simply move it to the local store managers ID when transacting. much like using the of mtgox codes to move funnds between mtgox customers. or btc-e codes.
full member
Activity: 126
Merit: 100
microtransactions = wait for payment-channels. we are early in the game. be patient.

I read:

"This article describes how to use payment channels, a way to set up a pending transfer of value from one wallet to another such that the amount that will be transferred is incrementable at high speed and by very small amounts. Whilst this does not allow you to send micropayments at high speed to different recipients each time, many applications can fit within this framework - typically anything that involves micro-billing for a metered service." -- https://bitcoinj.github.io/working-with-micropayments

It would be good if something similar can be done for many-to-many microtransactions. Such as payment channel servers that collect lots of small transactions and convert them to larger chunks of real Bitcoin transactions. That would be powerful if it can be done in a trustless way.
legendary
Activity: 4410
Merit: 4788
Who then decides how many transactions to include in a block? Can one miner choose to include only one transaction while another miner includes thousands of transactions in the next block?

The miner decides which transactions to include. Miners will include all transactions with fees, of course. The number of transactions doesn't increase the cost of mining significantly, so most miners are generous and will also include transactions with no fees.

Can't a miner start earlier with the mining if fewer transactions are included in the block? Otherwise the miner has to wait for transactions to come in, or? Obviously that's not how it works but how is the timing of the next block determined?

while mining block A.. people are transacting and filling up the mempool ready for blockB. as soon as block A is solved the transactions of blockB are locked in. its not based on a fixed time event or consensus, just purely as soon as last block is confirmed it uses that data with the mempool tx's to make the next block..

..

now imagine the protocol could be changed to a unix time lock of 10 minutes. and al miners used the same filled mempool without discrimination, so that even if a block is mined in 8 minutes it has to wait another 2 minutes to get all TX's of that period to then start hashing the next block.

not only will it fix the 10 minute average per block as each solution will be found in that time scale. meaning that difficulty does not jump up. but also as i said in previous posts idea. ALL TX's get locked in fairly and equally.

then its just a game of who solves the block first, and with a fixed difficulty thanks to the time lock keeping the average block the same by delaying the start of the next block to the 10 minute window.

.. well its a theory that some altcoin maker can try atleast.
donator
Activity: 1464
Merit: 1047
I outlived my lifetime membership:)
Micropayment has been a holy grail of transaction research for over 30 years. The DoD funded important research on the 90's to go with this internet thing they made. Bitcoin wallets aren't made for micropayments and the network is only really set up for sequential micropayments between two parties...

If you are really interested in the micropayment topic, see mike hearn et al's work: https://bitcointalksearch.org/topic/announce-micro-payment-channels-implementation-now-in-bitcoinj-244656
Pages:
Jump to: