I have Mac version 10.6.8
That might be the problem. You are using an old unsupported os. I HAVE THE COIN DATA BACKED UP AS A .DAT FILE....CAN I TRY LOADING A DIFFERENT PROGRAM AND OPENING THE COINS IN THAT OTHER PROGRAM EVEN IF THEY WERE CREATED/BACKED UP FROM THRE BITCOIN CORE PROGRAM?
Yes. You can import the wallet.dat file into blockchain.info's web wallet and perhaps other wallets too. However, if you do that, I would recommend that once the wallet is imported, to move all of the Bitcoin to a new wallet and not receive any Bitcoin on addresses from the old wallet.
|
|
|
But Coinbase TX is immutable is it not?
The miner can put whatever he wants into it. He could put the coinbase sig and impersonate some other miner if he wanted. Once the block is mined, it becomes immutable, but the miner has free reign over what goes inside.
|
|
|
So are you stating the Blockchain.info doesn't necessary have the correct information too?
Yes, I am using the standard core API
That's exactly what I'm stating. Blockchain.info, whomined.com, my code... we all make best guesses based upon evaluating the coinbase script, the BTC addresses of the coinbase transaction, counting the number of vouts in the coinbase transaction, etc. There simply is no definitive way to describe who found the blocks with 100% accuracy. If you could connect to every single node in the world, then it would be possible to identify which ip address first relayed a block. That node would be the person who found the block and that ip address could then be associated to a name.
|
|
|
What exactly do you mean by sending node? Do you mean, when I shut down my client the transcation could be lost? When I use mycelium, I just activate my internet connection for sending the transaction and deactivate it immediately after that, but I still had transaction that where unconfirmed for some hours and got confirmed in the end.
Theoretically your transaction could be lost. Some nodes will rebroadcast transactions, but the only one that reliably does so is the node that created and sent the transaction initially. It will rebroadcast every 30 minutes AFAIK. However, the transaction will stay in the mempools of other nodes for a while before it is either confirmed or dropped.
|
|
|
I've done this... there are a number of things that contribute to getting who mined data. The coinbase signature isn't necessarily reliable because you can put whatever you want there. Sure, a lot of pools advertise they solved a block by putting some identifier in there. You can also use the BTC address of the generation transaction. Sometimes you can use the fact that the coinbase transaction has a ton of outputs (p2pool). It's a messy process where you need to scrape the data and analyze it, and even then you aren't guaranteed to figure out who actually solved the block.
If you're using standard core APIs:
getblockhash getblock getrawtransaction
So are you stating the Blockchain.info doesn't necessary have the correct information too? Yes, I am using the standard core API They don't always have the correct info either. You can see this thread https://bitcointalk.org/index.php?topic=123726.0 to read more about it.
|
|
|
Interesting. So it is potentially possible that BitPay never gets that transaction, and I receive what I purchased for free.
Yes, but the merchant should never ship their products without having at least 1 confirmation. When you delete a transaction from your wallet, doesn't mean the other nodes will delete it. Right?
The other nodes will not relay it and upon restart, they won't have the transaction. Does Replace-By-Fee mean that you can replace the output-address? If so, then this "feature" just seriously breaks Bitcoin.
Full RBF means that you can replace the output addresses, but what is currently recommended for use is partial RBF. This requires that the inputs and outputs remain the same as the transaction it replaces but the only difference is the fee. At some point, the network will "forget" you transaction.
Where is this officially documented? Provide a link please. I find it concerning that a transaction sent could be "forgotten" by the network for any reason, that seems like a huge problem. I don't have a link, I will get back to you with that if I can find it. However, I know this after looking in the source code. Nodes will only relay transactions once when they receive it or when another node asks for it. The sending node will continue to broadcast the transaction while it is unconfirmed. If it stops broadcasting it, over time nodes will begin to not have the transaction in their mempools, either from restarts or other rules that people might set. Once enough nodes have dropped a transaction, a double spend can be attempted and if that double spend is confirmed, then the original will be dropped as a double spend.
|
|
|
So is there a bitcoind API to call to retrieve this data? I am looking at getblock results:
is tx the coinbase tx?
The coinbase tx is the first txid in the array tx that you see when you do getblock. In order to get the transactions data, you need to do getrawtransaction to get the transaction data. In order to get transaction data from Bitcoin Core though, it needs to be started with the -txindex flag in order to see transactions that aren't yours. This will require a rebuild of the entire blockchain so that it can have all of the transactions. To get the data from get raw transaction: getrawtransaction <txid> 1 The 1 makes it verbose so that you get the transaction decoded instead of just hex data. There will be a field labeled "coinbase" in the coinbase transaction and that contains the pool data you are looking for.
|
|
|
So it is purely based on the vendor and not an actual legislative requirement?
It depends on your country. I don't know about the UK, but I know that the US has anti-money laundering laws and know-your-customer regulations that require id verification. If the exchange operates in the US, you can assume that these laws will be in play and you will have to go through the verification required by said laws. Even though I havn't gone into much detail with the exact regulations and rules, the UK isn't far behind the US, I'm assuming Aren't there mediums like https://localbitcoins.com that don't require the identification? What do you guys think? They don't require it, but many people on localbitcoins will be less likely to conduct trades with you if you don't verify your identity. They will be more cautious and you may not able to buy as much as a verified user.
|
|
|
So it is purely based on the vendor and not an actual legislative requirement?
It depends on your country. I don't know about the UK, but I know that the US has anti-money laundering laws and know-your-customer regulations that require id verification. If the exchange operates in the US, you can assume that these laws will be in play and you will have to go through the verification required by said laws.
|
|
|
I am not sure if this has been said in this thread, and it seems to be a lot of back and forth from the pages I read, so I figured I would just ask.
If I sent a transaction and didn't set the fee high enough, will the transaction eventually roll back? The BTC have left my wallet at this point, and it was for a paid service, so I am wondering if I have to worry about the transaction not going through.
It was through BitPay, so the vendor got their money I am sure, but I didn't know if the transaction itself would revert back because of the backlog.
The BTC has not really left your wallet until the transaction is included in a block (confirmed). It means you can 'override' your transaction, but it depends on your client. Which client can "override" a transaction aka double spend it? How do they trick the nodes, that just won't accept a double spend in their mempool? You can create a double spend with Bitcoin Core using console commands. Also, since some nodes won't relay or accept transactions with low fees, changing the fee get the double spend accepted into some mempools when the original did not. Otherwise, nodes that enabled Replace-By-Fee will allow double spends as long as the fee is greater than the original and nodes that are Bitcoin XT will relay double spends. Say I don't go the double spend route. Will the low fee transaction be cleared out the of the mempool at some point, or will it just eventually get processed? At some point, the network will "forget" you transaction. You just need to either delete it from your wallet or not run your client for a few days. It will be as if the transaction never happened.
|
|
|
I am not sure if this has been said in this thread, and it seems to be a lot of back and forth from the pages I read, so I figured I would just ask.
If I sent a transaction and didn't set the fee high enough, will the transaction eventually roll back? The BTC have left my wallet at this point, and it was for a paid service, so I am wondering if I have to worry about the transaction not going through.
It was through BitPay, so the vendor got their money I am sure, but I didn't know if the transaction itself would revert back because of the backlog.
The BTC has not really left your wallet until the transaction is included in a block (confirmed). It means you can 'override' your transaction, but it depends on your client. Which client can "override" a transaction aka double spend it? How do they trick the nodes, that just won't accept a double spend in their mempool? You can create a double spend with Bitcoin Core using console commands. Also, since some nodes won't relay or accept transactions with low fees, changing the fee get the double spend accepted into some mempools when the original did not. Otherwise, nodes that enabled Replace-By-Fee will allow double spends as long as the fee is greater than the original and nodes that are Bitcoin XT will relay double spends.
|
|
|
I am upgrading from 9.1 to 11 on bitcoin core. I have backed up the data directory and transferred my coins to a different wallet. Anything else I need to do before doing the upgrade?
Just also backup your wallet.dat, but you have already done that by backing up the data directory. Everything should be safe for you to upgrade.
|
|
|
The hex of the coinbase transaction has a a part, I don't remember where, that is called the coinbase signature. It is simply ACII text encoded in hex. Most pools will put their own signature that indicates that they mined the block. However, it is not always reliable since anyone can put anything there, but it gives an idea of who was the miner.
|
|
|
By value do you mean price? The price is not set, nor is there an official API for it. You can however go to each of the major exchanges and use their API to retrieve current market data and create your own price of Bitcoin calculation.
|
|
|
So a block size limit increase would fix the problem because for this to be profitable, the attacker needs to have at least half of the block be legitimate transactions and that there still be a backlog of transactions, yes? And since there isn't that much real transaction volume, raising the limit to the suggested compromise of 8 Mb would solve this issue for now since it suddenly becomes unprofitable to continue to attack until transaction volume increases.
|
|
|
How about an advanced or expert user mode where I can select which inputs I want to use and lets me spend unconfirmed transactions. Also include RBF (replace-by-fee) and CPFP (child pays for parent) so that I can get some unconfirmed transaction confirmed.
|
|
|
I would spend less with Bitcoin since every time I want to make a purchase, I can see how much I actually have, just like carrying cash. I can see I have exactly this much and can only spend this much whereas credit and debit I pay before actually seeing my balance.
|
|
|
Interesting idea there. So what if someone manages to cause it to deflate or inflate dramatically in a very short timespan, say they bought millions of it and caused the price to rise. Would the miners only be able to recover it back to the target by changing the next reward by only 1 coin at a time?
|
|
|
So, I imported 2 of this private keys in Bitcoin Core. I guess that was not a smart move. Can anybody tell me, how I delete them again. My transaction history looks horrible.
You need to use pywallet to open the wallet.dat file and delete the keys.
|
|
|
|