What you want is a MySQL Decimal field.
Specifically you want a DECIMAL(16,8)
That will give you 8 digits before the decimal and 8 after the decimal
See http://dev.mysql.com/doc/refman/5.1/en/precision-math-decimal-changes.html for details.
My assumption is that the limitation is set by BlockChain.info itself, to protect the non-educated users for doing transactions which may take days to confirm.
However raw Bitcoin protocol supports transaction with any amount and any fee. But because transactions are confirmed by miners they might not have economical incentive to care about dust-like ...
TL;DR: If transaction volume explodes, Bitcoin is adopted for micro-payments, and the value of bitcoins increases sufficiently, we will need greater divisibility.
First of all, since there are 100,000,000 satoshi to a bitcoin, obviously one satoshi would be worth $0.01 if one bitcoin were valued at $1 million.
Beside the questionable math in tysat's answer,...
It's not a mistake, it's literally a thousandth of a satoshi. A satoshi is the smallest unit for bitcoin, but lightning can transact with even smaller units while channels are open. The amount is rounded down to the nearest satoshi when the channel is closed and broadcast to the blockchain to adhere to bitcoins limit.
There would be small expression errors. If you want to save as integers just multiply by 100000000 and save satoshis.
As @ypercube states MySQL BIGINT is a wise type choice for storing satoshis, MySQL INT does not have a sufficient maximum value.
A Satoshi is 0.00000001 BTC and currently the smallest transaction unit.
If a Satoshi was equivalent to one penny, a microBTC would be equivalent to one dollar, and one BTC would be equivalent to 1,000,000 dollars.
With one BTC on the order of $1,000 USD, a Satoshi is equivalent to .001 penny
Bitcoins and satoshis do not have unique identities.
However, Bitcoin balances are stored in uniquely identifiable "transaction outputs" that can only be spent by the owner of the recipient address.
Alice sends Bob 1 BTC, Bob uses it to send another payment.
When Alice sends Bob a payment of 1 BTC, she signs a transaction that deducts 1 ...
Can two UTXOs ever be combined into one UTXO?
Yes, absolutely. Each transaction can have any number of inputs and outputs; it can certainly have fewer outputs than inputs.
Here for example is a transaction with four inputs and one output, leading to a net decrease of three UTXOs.
The Bitcoin developers would have to hard fork the chain to allow it.
I also don't think Bitcoin can get that expensive. Your talking 1 BTC = $100,000,000. If that's the case, the Bitcoin market cap would be $1,670,673,700,000,000 (1.6 quadrillion dollars). There is no such figure of money similar to that in circulation.
I'll list the mentions I've found in reverse chronological order.
It first showed up on StackExchange on August 30, 2011.
However, I often hear the term Satoshi as if it was a monetary unit.
rebuilder discussed the divisibility of Bitcion on March 23, 2011.
I'll use the term "Satoshi", as previously coined by others, to mean the current smallest ...
That particular transaction is an attempt at something that has become known as "dust spam". The idea is that the sender sends a very small amount of bitcoin to many different addresses, hoping that people will notice and investigate further. It's possible to find out who sent this if you look hard enough, but most people won't bother. The effectiveness of ...
This post is the closest to an acknowledgement that is was a pseudonym as can be found:
"I am not Dorian Nakamoto."
The above quote was made in response to the ...
As the Bitcoin Wiki explains on "Coin Destruction":
Bitcoin has 2.1 quadrillion raw units, making up 8 decimals of BTC precision, so the entire network could potentially operate on much less than the full quantity of Bitcoins. If deflation gets to the point where transactions of more than 10 BTC are unheard of, clients can just switch to another ...
The number of satoshi per bitcoin is 1e8 or 100,000,000, so if you have a fiat value per bitcoin such as $7000/BTC, the calculation is:
$/satoshi = $7000/1e8 = $0.00007 per satoshi
Of course, there is no fixed fiat to satoshi value because the fiat value of Bitcoin is determined by the market, i.e. exchange value.
Satoshis are indivisible on the Bitcoin blockchain. Therefore, it doesn't make any sense to add a decimal point or digits after the decimal point to satoshi values.
The conversion is:
100,000,000 satoshi = 1 BTC
1 satoshi = 0.00000001 BTC
There are no shortcuts, nor any free rides.
First off, you aren't going to be able to do anything with 1 satoshi. You wouldn't be able to afford the mining fee to transfer it anywhere, which means that it has essentially been taken out of circulation. As it stands, everything you can do with 1 satoshi you can currently do with 0 satoshi. For amounts that ...
99900000 in hex is 5F45A60. Padded out to be a 64-bit integer makes it 0000000005F45A60. But Bitcoin uses little endian for most things, so this will need to be converted to little endian by byteswapping. So the final value put into a transaction is 605AF40500000000.
I recently created a markdown version of the Bitcoin Whitepaper, which you can find at https://github.com/dhimmel/bitcoin-whitepaper/tree/master/content. Most of the markdown text is in this file. I based this version off the Whitepaper provided by the Satoshi Nakamoto Institute. Accordingly, the images are SVGs and the math is TeX-formatted.
The source ...
The "8 decimals limit" is not that, but rather bitcoins are a human readable representation for 100,000,000 satoshi: The software natively computes in satoshi.
What happens under the hood is that the limit of satoshi that a miner may claim by creating a block halves. Obviously, only whole satoshi can be claimed, (as currently they are indivisible), so ...
Dogecoin has no maximum, because it mints 10k dogecoins per block, forever.
But to answer the spirit of your question, there are 100 million indivisible parts to a dogecoin. You can see that here.
static const int64_t COIN = 100000000;
There are currently 97 billion dogecoins. This is a bit more than 2^63 satoshis.
Is it larger than the maximum 64 bit ...
I would say the RPC interface is intended mainly as an application interface, but it's also meant to be simple enough for a human to use. And the computer cares less than you think.
For human users, using decimal bitcoins (rather than integer satoshis) makes life significantly easier. For people writing software to interface with it, it makes their life ...
Lightning uses millisatoshis as the unit of account for all transactions and routing fees, but the sub-satoshi balances are not reflected on the bitcoin blockchain in the event of channel closure.
When a channel is closed, any sub-satoshi amount held by each party is dropped from the commitment/closing transaction and goes towards payment of the on-chain ...
They won't be lost. But it won't be easy to get them recovered.
The wiki page on Transaction Fees mentions the following:
A transaction may be safely sent without fees if these conditions are met:
It is smaller than 10,000 bytes.
All outputs are 0.01 BTC or larger.
Its priority is large enough (see the Technical Info section below)
So if you have 1,000,...
Can each Bitcoin and Satoshi be uniquely identified?
1. Does each Satoshi have it's own unique identity?
If I show you transaction xyz on blockchain.info, you can see where the groups of satoshi's have gone (the transaction outputs) and you can see where the satoshi's have come from (the inputs) BUT you cannot identify which of the input satoshi's are ...
Like most of these internal choices in the Bitcoin system, it's not really explained by the author and can't be easily changed even if anybody had a strong objection to it. Internally all values are 64 bit integers, and just displayed to the user as value / 1e8.
The original wxBitcoin releases displayed two decimal places of precision.