text:
Time series data for issues listed on the (now defunct) GLBSE
I would like to get the following data for every issue ever listed on GLBSE:

Time series of closing prices since IPO to de-listing (or closing of GLBSE),
Date and quantity of initial and secondary offerings, and
Dividend history.

The motivation behind this is constructing a total return index for the GLBSE.
How can I get these data?

I wouldn't doubt there are traders who scraped all the data you are looking for.  A bounty offer might be the incentive to get you access to it.

A forum user captured the transaction and dividend history from the @GLBSE Twitter feed which can be used to determine daily pricing and dividends.  This is from v2 (April, 2012).

http://bitcointalk.org/index.php?topic=117491.0


text:
Would fees go down once more people start using segwit addresses for day to day activity?
Since the fees are high today, when more wallets and people start using segwit (bc1) addresses. Would sending from legacy address fees go down as everyone is using the newer address? Or it doesnt matter?

Transactions which spend from segwit outputs (i.e. "send from" segwit addresses) will have less weight (as in block weight) than transactions which spend from non-segwit outputs. This means that to reach the block weight limit, blocks will need to include more transactions. This effectively means that there will be more block space for more transactions. Since more transactions can be included per block, the transaction fees in general will decrease.
So yes, when segwit is widely deployed and if it is used in all transactions, the transaction fees will likely be lower.

absolutely wrong logic

What is the correct logic then?

The only thing I see wrong is that this doesn't guarantee fees going lower, just that the fees will be lower than if we'd kept the 1mb regular blocksize. Other than that the logic seems fine to me.

@amaclin I'd be interested to understand your reasoning. Would you please explain?

@andrew-chow Despite agreeing with you in the statement lees block weight per transaction implies more transaction per block, and this could indeed make the fees go down, don't you thing that there is also an interest behind fees going up? The should eventually increase to compensate the reduction of block reward at least.

@sr-gi Less fees per transaction does not directly imply that there will be less in fees per block. The fees per transaction could go down a little bit, but if there are significantly more transactions per block, then overall fees per block will be higher. For example, say fees right now for 2000 txs is 1 BTC. If everyone used segwit, suppose the fees for 2000 txs decreased to 0.75 BTC. However we can now fit 4000 txs per block, so fees per block has actually increased to 1.5 BTC.

Sure, that means that the fees per transaction could be lower on SegWit base scheme compared to a non-SegWit based one, still that doesn't mean that fees will not increase again eventually. That's an interesting topic to discuss about, we can talk more about it in the mempool chat to avoid spamming the comments section.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
What's stopping an infinite number of altcoins with the same protocol from appearing in the future?
My novice understanding of BTC is that BTC is valuable because it's scarce - mathematically, there can only be 21M BTC, no more.
What's stopping another altcoins from starting with the same protocol, but a new chain, rendering the limit of BTC to N * 21MBTC?

Nothing stops this at all.  You can start your own right now, removing the 21M limit or adopting whatever rules you want, and mine as many coins as you like.
Likewise, you can sit down at your printer, and print lots of $100 bills with your own portrait, and invent whatever rules you want as to how they can be spent.
The question in both cases is whether anyone besides you will want to use them, and be willing to exchange them for goods or services.  You'd have to convince people to use them, that your rules are such an improvement over the existing ones that they should switch.   If they don't, then your new coins or bills have no real value.
So there's nothing stopping an infinite variety of altcoins from appearing; but probably only a few of them will be adopted by anyone.

Except that printing $100 bills with your own portait on them is illegal in most countries. :)

Technically, there is nothing that stops this. There are already dozens of alt-coins that have popped up out there. Litecoin, for example, is essentially Bitcoin with a few tweaks, one of which is a larger ceiling on how many coins can be minted.
Note though that these alt-coins can only exist parallel to Bitcoin, even if they use the same protocol. The only way that Bitcoins are ever generated is when a new block is added to the blockchain, and Bitcoins are never destroyed. You can loose access to coins by forgetting or loosing the private keys in your wallet, but those coins still exist even if they can't be used. Whenever you spend or receive Bitcoins, those coins are simply being moved around within the blockchain like they might be in an accountant's ledger. Bitcoins do not leave the system, and they cannot be introduced to the system from another blockchain, even if it uses the same protocol.
Because the different coins are not inter-operable, what stops too many competitors from becoming widely used is momentum within the market. Bitcoin has a great many people who have invested time and money into it, and they are unlikely to just switch over to another coin at the drop of the hat.

https://en.wikipedia.org/wiki/Stamp_collecting

Looks like something similar to nowadays events with alt-coins already were in the history of humanity.
What can stop Stamp collectors from creating new stamp? Theoretically, there is finite lumber on the Earth, finely, finite number of the atoms around Sun.
Compare to alt-coins, there is finite number of tcp ports, 1-65535. However, any alt-coin can take original bitcoin's ports.
Finite number of IP addresses, however, there is IRC protocol in the base of bitcoin protocol, probably, only one node needs in real IP, may be no one.
An Enter to the market for new alt-coin appear more and more friendly. Probably, once, user would chose couple of params, Number of coins, delays, ports, name of alt-coin, and Logo. Push the button. Alt-coin ready. User will only configure his GPU/CPU to make the life in the block-chain.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
My Niece is turning 4 and would like to give her BTC. What is the best way to give/store long-term?
My niece turns 4 next month and I'd like to give her a fraction of a Bitcoin for her birthday.  What is a good way to do this so that she can hold on to it for 10 years or so?  Should I just store in a wallet myself and then give it to her later on?  As far as I know, her parents are not familiar with Bitcoin.

possible duplicate of What is the safest medium on which to store my wallet/private keys?

On the link I just provided, Stephen Gornick suggests using the paper wallet generator on bitaddress.org. I've used it myself. I'd recommend printing multiple copies of it for storing in multiple locations, unless you already have a secure location like a bank deposit box.

As a gift to a child, I'd recommend something more tangible than paper, such as a Casascius coin or gold-plated bar. Yeah, it's more than a fraction of a bitcoin, but the load-it-yourself option might be more affordable.


text:
Where do i start for creating altcoin?
Where do i start for creating a bitcoin altcoin? Like for changing block times, names, coin max, etc? I know what i want to change but I don't know where to change the code for the basic things mentioned above.

There are hundreds of altcoins. Your altcoins has a 99% chance of failing and if you can't code and can't capitalise your "I"s properly then there is nothing you can add of value to the altcoin economy.

For the love of God don't bother bringing a clone coin with no innovation. You won't get rich. You're not doing anyone any favours. You missed the boat. The lowest standard for a new coin now assumes some innovation. Once more please don't bother.

This post on bitcointalk is a good starting point.
The basic idea is to:

fork an existing coin
Customize some values (block reward, block time, hash algorithm, etc.)
Boot strap the coin by mining then encoding some checkpoints.

If you're not necessarily too technical and depending on your goal, you may want to look for a service that can run your altcoin for you and provide higher level APIs with it. For example: http://www.blockcypher.com.


text:
Formula for calculating daily mining earnings
I have seen other formulas, but they all vary and don't work. Can someone please show me a formula where I can plug in the difficulty and hash rate and that will give me how many bitcoin I generate in a day.
I know there are online calculators, but I want a formula for a spreadsheet.
Thank you to all replies.

Let X be hashes per second, and Y be the difficulty. Let Z be the Log base 1-1/(2^32*Y) of 1/2. Z is how many hashes it will take you to find a block, on average. Let A be the current block reward (it's currently 25). Let B be the number of seconds in a 24-hour day: 86,400. You will earn, on average, A*X*B/Z bitcoins per day.

The simplest explanation I've found so far. Nice!.


text:
Wallet says “unsynchronised”, is that stopping me from seeing my bitcoins that I just received?
I don't see the bitcoins I was supposed to receive today at 3PM and I tried to close the application to refresh it but it still hasn't arrived. I used GoldUX so that he could send my webmoney to my bitcoin wallet. I gave him the address that took it from my bitcoin application on my windows first.
So right now I'm seeing a wallet (unsynchronized) is this the reason why I cant see the money I was supposed to have received???

Related question: Cannot access my bitcoins because my wallet is still synchronising. What can I do to retrieve them?

This is most likely the case. If your wallet is not synchronized, that means that it does not yet have a record of all transactions. Since synchronization happens in the order that blocks (and thus transactions) occurs, your later transactions will not show up until the synchronization reaches that point, which could take a while...
If you want to confirm that your coins went through without having to synchronize your wallet, you have at least two options:
Web-based Wallets such as BlockChain.info are connected to a backend service that is constantly synchronized. With blockchain.info, you can search for the public address to which your coins were sent without having to go through any signup process. This is probably your easiest option.
Electrum (http://electrum.org/) is a wallet that connects to servers that are already synchronized and thus will give you immediate results as well.
Also, there is a vague possibility, that this issues is caused by something other than the synchronization, so, if the options above don't work, please update the question with more details.

Alright thank you for that info but do you know why is it taking so long to syncronize? It's at 88 weeks o.o

A number of factors can influence this including your network speed and your computer's processing power. It could also be a random bug. I'd check out http://bitcoin.stackexchange.com/search?q=taking+so+long as this seems to be a common problem.

Also, it could be majorly helpful to the community if you could vote up useful answers and/or set answers as chosen if they fully address your question.

Also i noticed my gigabytes on my computer went down...dramatically is the bitcoin application causing that???

According to http://blockchain.info/charts/blocks-size, the block chain is almost 10GB in size. So, yes.

Help, i was running bitcoin and i saw this error message popup saying...https://f.cloud.github.com/assets/4311082/448597/8b3c34ae-b250-11e2-8589-350820a68082.jpg what could be causing this and how can i fix it?

At this point, you probably want to start another question thread as this is off topic. (Also, this extends beyond my expertise.)


text:
Trying to access my BTC from Bitcoin-Qt wallet that is out of sync
I bought BTC and sent them straight to my Bitcoin-QT wallet. Now opened my wallet (ver. 4.8.3) and it says ~29000 blocks remaining to synchronize but this is not happening even though I have 14 active connections.
I have tried accessing my Private Key through both Help>DebugWindow>Console and the version using CMD bitcoind dumpprivkey etc with both returning the error message "Safe mode: Warning: Displayed transactions may not be correct! You may need to upgrade, or other nodes may need to upgrade. (code -2)"
I don't have an encrypted wallet and just want to have access to my money.

No worries, your coins are safe. This does sound like the blockchain database on disk got corrupted, but the client failed to detect it and is now rejecting valid blocks because of that. Can you try passing '-reindex -par=1' on the command line (without the '') to Bitcoin-Qt? That will rebuild the database. It will take a while, but after that, syncing should continue.

Please double check your version number; there is no such version as 4.8.3.

Related question: http://bitcoin.stackexchange.com/questions/6056/cannot-access-my-bitcoins-because-my-wallet-is-still-synchronising-what-can-i-d

Assuming you mean 0.8.4 ? (Or 3). Latest is 0.8.5 now but nevertheless...
What is the fastest possible way to download the blockchain?
Although I wouldn't recommend the bootstrap.dat answer because you'd need to create a new wallet for that--and eventually would likely have to resume syncing the old one anyway.
Edit: it appears I'm mistaken about the above paragraph.  The thing to know about bootstrap.dat is your client still has to verify everything that was imported over the network so it's still going to take some time. But a combination of both answers might be best. And only download from a trusted source.
Try to just get the fastest connections as per the "high bandwidth" answer.  There's really nothing much you can do in the meantime because wherever else you try to send the coins is not going to go through until the entire block chain is synced.
I've gone through this when I had to re-download the whole thing after a kernel panic -- LFMF -- don't import the private keys elsewhere before it's synced.

You don't need to create a new wallet to use bootstrap.dat.


text:
CGMiner no output (LTC GPU mining)
Here is my run command:
cgminer -o stratum+tcp://coinotron.com:3334 -u user -p pass --scrypt

the only output in my terminal I get is (and only this):
[2013-11-30 11:34:02] Started cgminer 3.7.2

if Ctrl+C it I finally get this output:
[2013-11-30 11:34:43] Summary of runtime statistics:
[2013-11-30 11:34:43] Started at [2013-11-30 11:34:03]
[2013-11-30 11:34:43] Pool: stratum+tcp://coinotron.com:3334
[2013-11-30 11:34:43] Runtime: 0 hrs : 0 mins : 40 secs
[2013-11-30 11:34:43] Average hashrate: 0.0 Kilohash/s
[2013-11-30 11:34:43] Solved blocks: 0
[2013-11-30 11:34:43] Best share difficulty: 0
[2013-11-30 11:34:43] Share submissions: 0
[2013-11-30 11:34:43] Accepted shares: 0
[2013-11-30 11:34:43] Rejected shares: 0
[2013-11-30 11:34:43] Accepted difficulty shares: 0
[2013-11-30 11:34:43] Rejected difficulty shares: 0
[2013-11-30 11:34:43] Hardware errors: 0
[2013-11-30 11:34:43] Utility (accepted shares / min): 0.00/min
[2013-11-30 11:34:43] Work Utility (diff1 shares solved / min): 0.00/min
[2013-11-30 11:34:43] Stale submissions discarded due to new blocks: 0
[2013-11-30 11:34:43] Unable to get work from server occasions: 0
[2013-11-30 11:34:43] Work items generated locally: 1
[2013-11-30 11:34:43] Submitting work remotely delay occasions: 0
[2013-11-30 11:34:43] New blocks detected on network: 1
[2013-11-30 11:34:43] Summary of per device statistics:
[2013-11-30 11:34:43] GPU0     | (5s):0.000 (avg):0.000h/s | A:0 R:0 HW:0 WU:0.0/m

my GPU is properly detected:
11:34:56 me@ArchPC::~/Desktop cgminer -n
 [2013-11-30 11:36:35] CL Platform 0 vendor: NVIDIA Corporation
 [2013-11-30 11:36:35] CL Platform 0 name: NVIDIA CUDA
 [2013-11-30 11:36:35] CL Platform 0 version: OpenCL 1.1 CUDA 6.0.1
 [2013-11-30 11:36:35] Platform 0 devices: 1
 [2013-11-30 11:36:35]  0   GeForce 9600 GT
 [2013-11-30 11:36:35] 1 GPU devices max detected
 [2013-11-30 11:36:35] USB all: found 6 devices - listing known devices
 [2013-11-30 11:36:35] No known USB devices

What could the problem be?
EDIT: Just tried it without --scrypt... it works then, but I need scrypt for LTC. How do I fix this?

Apparently I do not have enough points yet to give your answer a vote, but your solution also worked for me! Adding -T to the command line command did the trick. Not only do I now get a neat output of what is happening; the -T parameter also made the entire mining process actually work!
Before adding the -T command:
Screen flashed with the "Started CGMiner 3.7.2" message.
No messages were shown until I pressed CTRL + C.
The report said that only one share had been submitted and accepted - every time I ran CGMiner.
After adding the -T command:
The screen doesn't flash any more.
Everything that happens is outputted line by line to my command prompt.
CGMiner is actually working and submitting shares. As we speak I'm on a total of 3616 accepted difficulty shares, contrary to 32 before.

+1 - Fixed it for me. For those wondering, '-T' is a shortcut for '--text-only', used to disable ncurses formatted screen output.

Make sure your bat file has these two lines first
setx GPU_MAX_ALLOC_PERCENT 100
setx GPU_USE_SYNC_OBJECTS 1

This was my problem as well, but hated running with the -T toggle on.
I found out that it had to do with the ncurses lib missing on my freshly installed Win7 system, so after I installed cygwin cgminer worked without the -T toggle and with the normal stats screen.

Adding --no-restart to my command fixed this problem for my 290x setup

-T flag fixed this for my laptop. Something with ncurses text formatting

In addition to the -T workaround, I found the fix for my machine was to delete the .bin file generated. The fault was reproducible every single time if I left it alone.
Since I execute from a batch file, I just added a line before executing cgminer:
del scrypt*.bin

Naturally, this deletes any .bin files prefixed with scrypt (leaving others alone if you're mining something else using the same base directory).


text:
What is the different between Open Transactions and Ripple?
I have been watching the Open Transactions project. Since Ripple has recently came up I am curious as to their relation to each other and if they are trying to achieve the same thing but with a different framework.
At first glance they do appear to be doing the same thing (I think) but what are the differences?

I haven't seen the Ripple code so I can't comment on the latest endeavor, but Ripple as a concept (by Ryan Fugger FYI) is the combination of 2 mechanisms:

The ability to extend a credit line to any of your friends, in any currency.
The ability to make payments that hop across these credit lines, P2P, like a "Six degrees of separation" from sender to recipient.

I've always felt like this concept was important because it eliminates exchanges (such as MtGox) as a bottleneck, since it enables people to access the system, and move funds in and out, directly through their own friends.
If the current Ripple venture departs from that in any way, perhaps one of the Ripple guys can post a comment giving further detail. But that's my understanding of it.

Open-Transactions, on the other hand, is a software library for financial cryptography, including a prototype server and a high-level client API (available in most languages.)
The OT server is able to process all sorts of transactions... issuers can issue currencies onto any OT server (or preferably onto many OT servers.) Then users can open accounts in these currencies, and send payments to each other using a variety of financial instruments such as account transfers, cheques, and untraceable digital cash.
Open-Transactions also supports markets (for offers and trading, like you might see on MtGox or other exchanges) as well as basket currencies.
Open-Transactions also features a full client-side scripting engine, so you can create your own financial scripts using the OT API. There are also scriptable contracts ("Smart Contracts"), which can be signed by multiple parties and then activated on an OT server for processing. OT comes with a few sample smart contracts, such as Escrow, and Two-Way Trade.
BTW, it wouldn't be too hard to build Ripple into OT, I already worked it out in my notes here: https://github.com/FellowTraveler/Open-Transactions/wiki/Markets
(Who knows if/when I'll ever get around to adding that, however.)
*edit: article describing the trust differences between OT and Ripple: http://opentransactions.org/forum/index.php?topic=3759.0

They're both trying to do the same thing in the sense that they're both trying to make it possible to use existing fiat currencies such as dollars and Euros in many of the same ways that you can use Bitcoins.
Open transactions can provide a higher degree of anonymity than Ripple does. With OT, a transaction need only be seen by the sender, recipient, and issuer. And the issuer need not know the identity of either the sender or the recipient at all. With Ripple, transactions are always public so it provides a level of anonymity comparable to Bitcoin.
With OT, a specific key owned by a specific entity moderates transfers of each asset. This means the system cannot compel assets to act as they have been promised to act. In contrast, everyone can process all Ripple transactions, so an issuer cannot prevent the system from enforcing their promises.
Open transactions doesn't have any support for exchanging between assets without asset holders actively making and enforcing orders. Ripple maintains order books and does path finding to find a payment path between people who use different currencies or different issuers. A Ripple offer is a comittment the system can enforce.
This is key to Ripple because it forms an "invisible hand" that gives people what they mutually want. For example, say I get paid in dollars but prefer to hold gold. I can place an offer to buy gold. Not only can someone take that offer because they specifically want to sell gold for dollars, but they can take that offer without even realizing it if there's someone else who needs to sell gold and that helps make their payment work. For example, if gold is available cheaply for Euros and they have Euros, they can buy that gold, sell it me for dollars, and use those dollars to buy lunch without even realizing their transaction involved gold.
Because the entire system state is public in Ripple, you can always see who has issued what, who holds what, and who trusts what. This allows you to easily form very efficient transactions and to make rational judgments about what to do and who to trust. However, it also means a reduced level of privacy.

In Open-Transactions there is a distinction between the issuer and the transaction server. A transaction occurs between the sender, the recipient, and the transaction server (not the issuer, who is actually just another user.) Once the issuer has issued units into existence, he doesn't have to be involved in a transaction between other users who happen to be using his currency. Thus in OT, the issuer can't prevent the system from enforcing his promises.
OT does have support for exchanging between assets. OT has markets and trading, just like you might see on MtGox or other exchanges.
FYI.

In the last paragraph you meant Ripple instead of Bitcoin, right?

@FellowTraveler: The idea is right, I've just misused the term "issuer". OT solves the double spend problem by making each asset transferable by one and only one entity which is under no technical obligation to validate or transfer it. Is that correct? OT's exchanges don't have the invisible hand property that Ripple does because, among other things, offers are not commitments.

@David: OT utilizes transaction servers. An issuer might issue his currency onto many transaction servers. (Federated...) It is true on OT, that any transaction must occur through a transaction server, (not through the issuer, who is just another user) and thus while the servers cannot perform fraudulent transactions, they can refuse to process a transaction. There's no incentive for them to do this, since transaction servers are normally in the business of earning transaction fees. But worst case, I can always just take my business to a different transaction server, if one refuses me.

@FellowTraveler: If more than one server could process a transaction, what stops two of them from doing it? I thought that OT solved the double spend problem by having one and only one entity that could validate a given token. (This could be a misunderstanding on my part.)

The currency issuer cannot prevent the OT servers from processing
transactions, since they are separate entities. An OT server, meanwhile, cannot prevent
its users from performing transactions, since they can just use another server instead. You are right that
OT always redeems an instrument using the same OT server it was drawn on (just as a web browser
will connect to the same web server that's listed in a URL being rendered.) But no one is ever held captive to an OT server --
even if it disappears entirely, everyone still has their receipts, and the issuer still has the gold.

Aren't the receipts are useless without the cooperation of the server they were drawn on? There's no way to tell from a receipt whether the receipt holder still holds the asset or transferred it to someone else.

My last receipt contains the server's signature on my account balance. My balance cannot change except where I sign to authorize it. There is a copy of this receipt on client and server; it enables both to prove the state of things without storing any other history. The currency is issued on multiple servers, and the issuer already should have access to audit data for them all (in order to prevent inflation.) He also already has accounts on all servers where his currency is issued, and can move funds between servers, and even re-issue funds if necessary (like when a server up and disappears.)

Can you contact me elsewhere so we can hash this out and I can improve my answer? (Sorry I missed you in SF Saturday.)

I'm interested in any updates you have to this answer...


text:
What happens when two transactions send to the same address?
I would like to know the consequences of sending bitcoin several times to the same address. Let us say I send 1 BTC from Address1 to Address3 and later I send 2 BTC from Address2 to Address3 again.
The blockchain will have both, 1 BTC and 2 BTC transactions registered. So, What hapens when I want to send 2.5 NTC from Address3 to a new address?

It works just fine.
Bitcoin transactions can have multiple inputs and outputs; each input is a "pointer" to an output of a previous transaction (specifically, it consists of a transaction id and output index). So you  would create a new transaction with two inputs:

the A1->A3 transaction (or more properly, the particular output of this transaction that credited A3)
the A2->A3 transaction (again, the particular output).

It's not necessary to include amounts in the inputs, since the rule is that each input must be consumed completely.  So we now have 3 BTC worth of inputs in our transaction.
An output consists of an amount and a destination address. (One can also have a script which directs the payment in more elaborate ways, requiring multiple signatures, etc, but let's ignore that for now.)  You would want to have two outputs:

An output paying 2.5 BTC to the desired destination address, call it A4
An output paying the "change", 0.5 BTC, to some address of yours.  You could use A3 again, but it is generally better to use a newly generated address; call it A5.

(Actually, in real life, the second output would more likely be something like 0.4995 BTC.  The leftover 0.0005 BTC wouldn't appear in any output; it would be a transaction fee, collected by whichever miner includes this transaction in a block.)
For an end user, this is all done under the hood by their wallet software.  The user just specifies that they want to pay 2.5 BTS to A4, and the software takes care of identifying appropriate transactions to use as inputs and creating the necessary change output.  Sometimes this confuses people when they see that after the transaction, the balance in A3 has dropped from 3 to 0, if they don't know that the remaining 0.5 BTC has gone to a new address A5 which is still theirs.

Thanks indeed Steven. It is a very ellaborated answer. However I still have doubts at the protocol level. Let me explain, the first transaction (A1->A3) is saved in block 444,444 of teh blockchain, and the second transaction (A2->A3) is saved in block 444,555 (111 blocks later). When I try to move the balance, there are two different blocks with two different balnces fo rthe same address (A3). DOes it men then that the protocol adds up all unspent balances for a given address? (reviewing then the whole blockchain).

On the contrary - the blocks don't contain balance information at all, so there is no inconsistency.  There is a transaction with amount 2 BTC, and another transaction with amount 1 BTC.  Nowhere in the blockchain are these numbers added to make 3 BTC; in fact, the blockchain doesn't form any connection between multiple transactions with the same address. It's up to your client software to keep track of all the unspent outputs in the chain that correspond to your addresses, and sum them to show your total balance.

The system doesn't care that the same key happens to be able to claim both unspent outputs. As far as it's concerned, they're just two unspent outputs in a pool of many, many unspent outputs.


text:
Who owns the newly supplied bitcoins?
Central banks create money supply. Who creates bitcoin supply? Is it the miners? The dollars go into someone's pocket when bitcoins are first purchased for dollars. Is it like tulip bulbs?

Sometimes Google can be a good resource. I recommend this article of the Bitcoin wiki.
As a summary, Bitcoin are created by miners in a way that conforms with the protocol.  All users can verify that miners follow the protocol rules when generating coins, so they can only generate a limited supply.
Every block, an amount of coins is generated and that amount halves every 4 years.  In 2009, it started with 50 bitcoins per block.  Fast forward to 2017, the block reward is only 12.5 bitcoins anymore.  Decreasing like that over time, eventually the reward will drop below the lowest possible amount in Bitcoin (1 satoshi = 0.00000001 BTC) and go to zero.
Ultimately the total supply will be slightly less than 21 million bitcoins.
To respond to your question, bitcoins are not "first purchased for dollars".  Instead, they are generated and might never be sold for dollars at all.  They are just owned by the miners that generated them.  When they are sold for another currency on an exchange, they are no different than other coins that have been in circulation for a long time.  There is no such thing as an "issuance for dollars".

authors: دودي السلطان


text:
Can Ripple gateways operate as fully transparent fractional reserve banks?
Any Ripple gateway that establishes a solid reputation will be tempted to switch to fractional reserve issuance of its own IOUs to increase leverage (which is exactly what the existing comercial banks do).
Question:
Can Ripple gateways' accounting be fully transparent since presumably all their transactions are stored in the distributed public ledger ? (This is similar to how SatoshiDice operates currently).
However it's not clear if external deposits and distributions can be represented in the ledger.

For currency in the form of Ripple IOUs, yes. Anyone can tell at any time the total outstanding value of all IOUs in a given currency for a given issuer. So a gateway could, if it wished to, provide provable reserves relative to its outstanding IOUs.
However, gateways typically also hold fiat that's not in the form of IOUs. Gateways currently use a two-step deposit scheme -- you deposit currency in your gateway account and then you tell them to "withdraw" these funds as Ripple IOUs. The funds in the gateway account that haven't been withdrawn as IOUs are not visible. So there's no way to know what obligations a gateway has that aren't in the form of IOUs.
A gateway that wanted to operate in this form would probably wind up supporting only a one-step deposit and withdraw system. With this scheme, you specify the Ripple account the IOUs are to go to before you give them any currency and they issue IOUs as soon as the deposit clears. And for withdrawals, you specify where the currency is to go prior to returning the IOUs to the gateway.
I don't believe these one-step mechanisms are supported by any gateways yet.

This kind of "one-step atomic" deposit and withdrawal scheme seems as a promising new use of Ripple to establish "provably trustworthy banks" but perhaps it precludes the use of leverage so they would be more like non-leveraged S&L's but with provably transparent accounting. Perhaps this type of use case required more formal description and support since until ripple such kind of banking system was probably impossible.

Only their XRP holdings, bitcoin holdings, devcoin holdings, namecoin holdings, barbequecoin holdings, ixcoin holdings etcetera etcetera etcetera come equipped naturally with public ledgers, so until the fiats come up with believable reliable public ledgers of their own full transparency seems likely to initially tend to be limited to XRP and the various blockchain-based currencies...

Let the new round of unaudited fractional reserve banking begin ? Gentlemen, start your IOU presses ?


text:
Include checksum in a transaction
Is it possible to include a file's checksum in a transaction?
Not necessarily in Bitcoin's current blockchain due to the now limited OP_RETURN feature, but just in the blockchain/transaction concept in general.

Yes you can. You can use OP_RETURN of course but there are also other ways, some "hacks" like adding an transaction output that refers to an Bitcoin address that instead of being the hash of your public key is the hash of your file.
Here is what Garvin Aderson said about OP_RETURN

Why 80 bytes? Because we imagine that most uses will be to hash some larger data (perhaps a contract of some sort) and then embed the hash plus maybe a little bit of metadata into the output. But it is not large enough to do something silly like embed images or tweets.
  Why allow any bytes at all? Because we can’t stop people from adding one or more ordinary-looking-but-unspendable outputs to their transactions to embed arbitrary data in the blockchain.
  What do I mean by “immediately prune-able?”  The form of the up-to-80-byte transaction output (“OP_RETURN ”) is such that it can never be used as an input for another transaction– so it can theoretically be forgotten by everybody except for machines that want to keep a full record of every single transaction (“archive nodes”). That is a big improvement over the various hacks people are using today to associate data with their transactions, and will be more important in the future when we implement code that saves disk space by keeping only unspent transaction outputs and not every old block.

Source Gavin Andresen talks about the 0.9 release

how many bytes are md5 checksums or CRC data ?

MD5 under binary form is 128 bits or 16bytes long. A bitcoin address is 160 bits or 20 bytes long.

You can even add it under his hexadecimal form it will be 32 bytes long.

is there a way to index all of this data, easily? I am trying to imagine a scenario where md5 data is associated WITH an address (only perhaps by an initial transaction signed or cosigned by a trusted source), I guess it is possible that those transaction's outputs can be aggregated on their own, and one could make a separate index of the transaction metadata

Do you mean recovering the checksums from the transaction when you speak about "indexing"?

Basically I am imagining a scenario where a file's checksum is associated with an address that a real person controls. But it is more important that the checksum is indexed than the address, and the person can prove the address (and checksum) is there's because they can sign the address. They would be the only one with this file. Kind of like how colored transactions work

A little bit like this transaction? (look at the bottom of the page there was a "DOCPROOF" added in the OP_RETURN)

Hmm, that is interesting, so an address was created that then made a transaction to nowhere solely to create the OP_RETURN information? I hadn't considered that, but that is a nice possibility, retains the trustless aspect of having the data out there but in case of a hash of a file it should be able to be decoded by appropriate parties. How is this kind of transaction made?

http://proofofexistence.com/

great, so to clarify it wouldn't be possible to decode the file or even file name from that, but the holders of the file would be able to generate the same checksums at any point.

No you can't decode a hash but you can prove that at this moment the file existed.

btw, I thought OP_RETURN was decreased to 40 bytes

That is still enough for many hashing algorithm

authors: Калоян Павлов


text:
Stealth address transaction example on Bitcoin's blockchain
I am looking for an example transaction on Bitcoin's blockchain using stealth addressing.
I am brainstorming how stealth addresses would be used amongst normal addresses in combination (whereas Monero and CryptoNote protocols so far only use stealth addresses).

You cannot tell them apart from transactions using ordinary addresses; they are exactly the same.  Any regular transaction you look at could have been created using a stealth address.
As I wrote in my answer here, a "stealth address" is just one particular way of generating a unique address, known only to the payer and payee, to use for a transaction.  Once the unique address is created, the transaction itself is created just like any other.


text:
How does the CPU hashing algorithm used in Yacoin differ from scrypt?
Alt-coins are now a dime a dozen and with only minor changes to generation rates, difficulty, and algorithms, they all tend to use the SHA-256 (bitcoin) or the scrypt (litecoin/tenebrix)  hashing algorithms for solving blocks.
A friend of mine recently told me about Yacoin and it uses a modified version of scrypt so that mining via GPUs is currently "impossible".
What are the specific differences between the standard litecoin scrypt algorithm and the yacoin algorithm that makes yacoin currently infeasible to mine on GPUs?

Scrypt-Jane isn't an algorithm, it is something that lets you change algorithms in scrypt more easily. I think some enterprising person will need to look inside the Yacoin source code to answer this. Good question!

Thank's Nick.  I'll update my question to reflect this information.

The scrypt-jane modification allows the N in scrypt(N,1,1) to change. Litecoin uses scrypt(1024,1,1). GPU miners haven't taken this into account. But now you have the opposite issue. Instead of the GPU miners getting everything, it's the datacenters who have the advantage.


text:
What is the legal status of a p2p fee taking App for matching bitcoin sellers/buyers?
I want to make an App in the US which would help bitcoin sellers to find buyers for cash in a local area. The app would not hold any bitcoin fund, it would only serve as a tool for buyers/sellers to meet each other, and do some transaction broadcasting/verifying.
Also, I want to monetize the application, by enforcing the users to pay a fee in order for the transaction to go through. All of this without holding any funds, thanks to P2SH transactions. I would like to know if this model of application has to comply with AML/KYC rules, or if the users can stay anonymous.

checkout bitsquare.io

asking for legal advice from someone not your lawyer is always a dicey proposition. I would suggest you seek counsel.

Every country in the world has its own laws (as do states within countries, etc).  You are effectively asking several hundred different questions here.  Can you narrow it down?

@renlord Bitsquare works as decentralized organisation, and is not a company, so they can't be taken down I suppose.

@JimmySong Thanks, I will try to find someone with some knowledge about the subject.

@NateEldredge Indeed thanks. I don't know why I used NYK.

I'm voting to close this question as off-topic because it appears to be primarily a question about which laws apply to financial middlemen

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
What pool catters to multiple alternate currency?
I want to mine alternate coins. I am looking for pools that support many of the coins here so I do not have to keep changing pools.

try www.multipool.us they have a server which does multiple currencies in a day(depending on their profits)


text:
What are the reasons behind pool transactions fees and what are the consequences?
Few days ago I have read this.
For people who are too busy I will try to explain what is written there (this is my understanding which might be wrong, so if you think that it is incorrect, please edit it):
Because of a lot of micro-payments from satochidice, the blockchain has reached a reasonable size and pools are thinking about implementing transaction fees.
Is it possible that at some time major mining pools would decide that they are not going to validate transactions if fee is less than something and thus would be dictating their rules?

Transaction fees have been a part of the Bitcoin protocol from the beginning. They are a core part of the protocol and are designed to be the long term incentive for miners.
And, Yes, miners will often exclude transactions without fees (or give them a lower priority). It's been that way for a long time although it does seem to be getting more common in my opinion.
Satoshi dice has indeed had an effect on the network, but transaction fees have been a part of the protocol from the beginning. The consequences of fees are many, too many to discuss here, but include the motivation for mining (especially as block rewards decrease) and protecting the network from spam and attacks.

what I also wanted to say, is that having only 5 major player (mining pools), they can come up to the agreement and started to dictate their price for the transaction. P.S - I know that transactions were included from the beginning

"Implementing transaction fees" made it unclear. Whether a small number of mining operators can create a cartel controlling xtn fees is perhaps an interesting question on its own. But my short version is no, the protocol makes adding a transaction so little overhead for a miner at incentive is towards accepting almost any fee. And with a ten minute window ther are enough blocks being generated that even a small pool could disrupt prices.


text:
Does blockchain.info show all transactions?
My client is still syncing, so I've been checking my transactions on blockchain.info.  It only shows two transactions although I know I should have more than that when I search my address.  I'm new to bitcoin, so I'm not 100% sure how it works.

Your Bitcoin.org client doesn't have "an address" it has many addresses.  When you send a payment, usually what happens is "change" is returned back to your wallet, and that change goes to a new address.

Blockchain.info doesn't know what addresses are in your Wallet.
You can search on a single address or for a single transaction, but that won't know what your wallet balance is, however.
There is a tool in BlockChain.info/wallet that can sync your Bitcoin.org wallet with your wallet on BlockChain.info/wallet, however that requires configuring your Bitcoin.org client a certain way.  But once that is enabled, then BlockChain.info/wallet will show all the same transactions that your Bitcoin.org client will show.

Blockchain.info should have all the transaction information for any and all transaction that were included in blocks. It usually also has a lot of information about transactions that are not a part of the block yet, but due to the nature of message propagation in the Bitcoin network, it is possible that they might not see some of them before they are a part of the blockchain.
So, if your transactions are really fresh, blockchain.info should see them, but it's not a guarantee. If they are older, it should display them correctly. And as is always the case, some errors can occur on the software side of things.


text:
Which software can I use to setup an e-wallet site?
I am relatively new to Bitcoin and I have a very simple question: what wallet software is behind "online wallet sites" like http://www.blockchain.info? I would like to set up a mini-site to store my/friends online wallets and I guess I would need a daemon-shell-based Bitcoin wallet software.
Where should I start to do so?

Most eWallet services would probably be using the standard Bitcoin client running in the server mode. You would then control it through the use of the JSON RPC commands.
But for personal use, you probably want to just use existing eWallet solutions, or commission someone to help you set your wallet up taking into account such concerns as data security, proper wallet backup and so forth (shameless autopromotion - you can contact me;) ).

Thanks for your answer :-) So, do you think blockchain.info is running only bitcoind in server mode?

@flaab They might be running multiple bitcoinds, they might be running other clients and possibly some other tools, but generally for an eWallet service you just need to run one bitcoind and you'd be fine.


text:
How do you create a wallet with MultiBit?
I just downloaded MultiBit for Windows and I am trying to create a wallet. When I click that, nothing happens.  It just says "connecting" on the bottom left status bar. No wallets are seen.
Well, I did that (clicked "create wallet") and nothing happened.  The wallet file shows up in the correct spot on my desktop (the .wallet file I mean...) but nothing show up in the wallet column on the app itself.
Perhaps my firewall is blocking something?  on the bottom left it does not say "connected".

Hey Doug, to me it is not clear what element you are trying to interact with when you "clicked that". Perhaps you could edit your question to clarify that part. If you feel that any of the changes I made don't match your intent, please feel free to revert or improve to your liking.

To create a wallet in MultiBit:

Open MultiBit.
Click on "New Wallet"

Enter a proper name for your wallet.

Wallah! A wallet!

It sounds to me like you're having connection troubles, though. Are you behind a firewall, proxy, or anything that could interfere with your connection? Consider trying a new internet connection.
Here is the MultiBit Help page: https://multibit.org/help.html


text:
Seeking specific advice on three-party/escrow-type transactions
I'm a professional mediator just learning about bitcoins, and I have a specific question.  I have been asked by someone if I am able to be the "third party" for a Bitcoin transaction.
In other words, Party A has X Bitcoins, he wants to sell them to party B, the X bitcoins are placed into a shared "escrow" wallet with the signatures of myself, party A, and party B. After the cash has exchanged hands (or not), any two of us (A, B, or me) can authorize the funds in the escrow wallet to be transmitted to its proper final destination.
How do I specifically do that? I mean specific instructions?  I have accounts at Coinbase, Blockchain, my own Bitcoin-QT client on Windows, and others. What's my best approach to this?


text:
Does a bitcoinj SPV node forward transactions for itself?
The bitcoinj library offers a rather convenient WalletAppKit class, which I'd like to accept payments from customers. In order to facilitate the payments I'd offer the customers to send the transaction directly to me, instead of sending it to the Bitcoin Network and eventually reaching me.
If the simple example from WalletAppKit receives a payment that transfers some coins to one of its own wallets, does it announce the transaction to its peers and provides them with the transaction, or does the SPV protocol dictate that the node is a mere consumer of information?
If it does not forward the transactions, what would be the required modifications to allow transaction forwarding?


text:
Metrics to Study the Bitcoin Economy
I'm creating a course on the Bitcoin on Udemy that serves as both an introduction to the bitcoin and also a source to explain how mining and speculation work. I'm working on lecture three which is on the bitcoin economy and I'm wondering what metrics I should include to explain how one can understand the bitcoin economy. So far I have the following:
Distribution of Wealth
Supply and Demand
Exchanges (by trade volume)
Currencies exchanged for bitcoins
Pools (by hash volume)
Oligarchiness (the influence any one group has on the bitcoin)
It appears that blockchain has the most accessible data for neophytes. Are there any other data pools you'd recommend for people to use?

To add a bit of data, my goal is to discuss the factors that have an impact on currency prices and then relate those factors to the Bitcoin. Then I will add Bitcoin specific factors into the fray to help people understand the Bitcoin price if they choose to speculate.

Though it might not help much with economics, if you run a node then you can also gather information on orphaned blocks, IP addresses, and unconfirmed transactions (some of which may never confirm, if insufficient transaction fee is paid or the transaction size is too big).
Gathering statistics on Bitcoin is tough, as little can be collected reliably about Bitcoin users. Other questions have looked at that issue here and here.
It's generally impossible to even prove that particular bitcoins have not been destroyed (eg the exchange that apparently lost its wallet when Amazon EC2 crashed), though in some cases proof can be given they were destroyed (where bitcoins are sent to a particular address that nobody can realistically have the private key for). I suppose in that regard it's no different to cash.
You might also be able to get some idea of publicity and levels of user interest from activity levels on bitcointalk.org, reddit.com/r/bitcoin and Google search statistics

I have considered deploying some web scrapers using scrapy to collect some signals about Bitcoin commerce. The blockchain is also a wealth of information, but you are right about proof of destruction, which is why they created the bitcoin days destroyed. I suppose there should be a metric for hoarding within the community.

@CharlesHoskinson, no - bitcoin days destroyed tries to measure something else: the transaction volume. https://en.bitcoin.it/wiki/Bitcoin_Days_Destroyed

It is related however because you can see certain coins which have a very large BTCDD and infer that they might be dead.

@CharlesHoskinson, it would be the opposite I believe. If bitcoins are transacted (and thus adding to the BTCDD statistic for the network), it is some proof they still exist. "Days" are considered "Destroyed" when the bitcoins are transacted, so Bitcoins that have not been transacted for a long time would have a very low figure. You seem to be thinking of just the "Days" aspect of it.

I'm saying you assume all the accounts transacted today and measure the btcdd for each. Whatever is the highest in relation to size of the coins could be a dead coin

@CharlesHoskinson, you're really just talking about the oldest coins, which is an even simpler measure. There's no need to multiply it by the value of the coins, which is what's used for BTCDD.

I understand how BCDD works https://en.bitcoin.it/wiki/Bitcoin_Days_Destroyed and yes you are correct it isn't necessary to use the BCDD metric in asserting a dead coin. The only reason I mentioned BCDD is because it is connected to two related pieces of data I would need to discuss coin death: the amount of time since the coin was spent and transaction volume.


text:
Can I use my mtgox BTC balance on the mtgox checkout button/payment platform while my account is pending verification?
Can I use my mtgox BTC balance on the mtgox checkout button/payment platform while my account is pending verification ? Like purchase goods and services from people who use the mtgox merchant tools to accept BTC on their sites.

Did Mt. Gox initiate the verification or did you?

Yes, verification is only for increasing the amount of BTC and other currency you can move
"up to 10x your current daily limit, and up to 5x your current monthly limit"

through their service. It also enables you to use other services with mtgox such as dwolla.

So do you mean eventually we can use all our BTC even without verification?

yep, just if you have a lot it may take some time


text:
How do I determine the value of new altcoins?
So, I'm curious about the value of altcoins.
Let's say I were to create an altcoin, and get some people to use it... how would I calculate the value of the coin? Is this determined by exchanges? Or by how much money people give in exchange for X amount of the coin? I'm a bit confused by this. I've tried researching it, but nothing's really helped.
Thanks in advance!

The price is found when offer and bid intersect. Exchanges are platforms that facilitate the management and visibility of these, but less efficient markets work as well.
The price is what you can get for it in exchange. You cannot dictate the price except by providing your own offers/bids.

Your altcoin is supposed to be money and has no intrinsic value.
If you ask "how much money people give in exchange for X amount of the coin?" it does not create trust at all, it signals that you are interested in short-term $ exchange rate profit, not in fostering a new economy (which is why Bitcoin exchange rate is so high).
In both cases, however, purely unpredictable.

To my knowledge, the more people adopt it and trade with it, the more value it has.
If you could impose your will on others, forcing them to use your altcoin, the value is equivalent to a local government's currency.
If your altcoin implementation is perfect, Bitcoin pioneers, those who saw the potential of Bitcoin before public accept it, might sell their Bitcoin for your altcoin. At that time, the value should be similar to today's Bitcoin.


text:
Bitcoin Cash accidentally sent to Bitcoin segwit address
Bitcoin Cash accidentally sent to Bitcoin segwit address starting with 3. Can I get them back?

@pebwindkraft there is a difference: recovering BTC sent to BCC address is trivial. Recovering BCC sent to segwit (P2SH) address is almost impossible :)

@amaclin SegWit outputs are anyonecanspend to non-SegWit nodes (which includes Bitcoin Cash), so recovering should be easy

@Pieter, there are no mining nodes with SCRIPT_VERIFY_CLEANSTACK cleared flag :)

@PieterWuille Is there a guide for that? Is it possible without the help of the miners?

@PieterWuille: Except that the miner could use the published inputscript to spend the coins to themselves?

@Lucas Guimarães, can you add more info about your mistake? Did you send your funds to p2pkh address (starts with '1') or to p2sh address (starts with '3') Do not publish funds destination address if it starts with '3'

@amaclin the destination address starts with 3

@amaclin since the address starts with 3, does that mean there is no way to recover the coins? were the coins lost or did they end up in someone else's wallet?

no. it does not mean it, but i've said that it can be either difficult or very difficult. if you do not trust me - ask  @PieterWuille - he said that it is easy. my email is alistermaclin@mail.ru - i think that it is better not to discuss here

Because of the comments above, I do not think this should be closed as a duplicate of that question, there is a lot more to this question than that one

@PieterWuille do you think you could try to help me rescue these BCC coins that are unspent in a segwit address where I mistakenly sent them?


text:
Can a testnet node have a separate bitcoin.conf file?
When running bitcoind on testnet, can I put its configuration settings in a separate bitcoin.conf file from the "real" bitcoin.conf file?  I would like to be able to run two nodes concurrently, one on the live network and one on the test network, each with its own configuration settings.

By default bitcoind will look for the file bitcoin.conf in its datadir directory, whether running on testnet or mainnet.  But you could use the -conf option when starting one or both of the daemons, to point it to a different file.

No, it is currently not possible to have network specific configuration files. However there are currently open pull requests which enable such functionality.


text:
Is it possible to autoforward bitcoins to another address?
we would like to accept BTC for our token sale. In order to achieve that, we need a specific BTC address for every contributor.
The contribution flow is:
- investor sends BTC to their dedicated address
- the contribution is recorded in an offchain database
- the BTC is forwarded to a central account
as I don't know if this is even possible, some pointers would be highly appreciated.

Why do you need to forward the coins to a different address? You already control the private keys for the address that they were sent to, no need to move them to another address in your wallet. All you are doing is incurring additional transaction fees.
Instead of forwarding them to another address, just make sure that you have the private keys to all of the coins and spend them from those addresses as necessary.
If you are doing this for auditing purposes, then use an HD wallet and publish the master public key. This allows anyone to derive the addresses that you used (without needing the private keys or having access to them) to check the balance of your wallet. If you do that, just make sure that you do not reveal any of the child private keys as that will result in the master private key (and thus all of your child private keys) being revealed.

thank you for your answer. I come from Ethereum development where I created a smart-contract for that functionality. But having multiple addresses linked to a wallet should do the trick too


text:
Why are there two byte sizes for timestamps in the Bitcoin protocol?
Reading Block Headers on the Bitcoin wiki, I learned that the timestamp in a block header is four bytes, and the timestamp in the "version" message is eight bytes. Why are there two sizes, and why isn't it more consistent?

This is actually a good question.

This was discussed in the mailing list a while back:
http://sourceforge.net/mailarchive/message.php?msg_id=30824341
I'm guessing 32-bit timestamp was used by Satoshi in the original client and the 64-bit timestamp was introduced later to avoid timestamp overflow.
We may need to change (hardfork) the old 32-bit timestamp fields to 64-bit at some point. See https://en.bitcoin.it/wiki/Hardfork_Wishlist

authors: محمد يوسف رزق


text:
Move the blockchain to a different location
I am using the Bitcoin-Qt application on Ubuntu, but the blockchain is very large and is wasting space on my SSD drive. Is there a way that I can move it to a hard disk drive?
There doesn't seem to be a setting for this. Is it possible?

possible duplicate of Bitcoin-qt setup: Change block-chain file location, settings? documentation?

@Murch The answer there wont work with Ubuntu

Asking about how to change the default storage location has been posted many, many times. The future canonical question is probably Bitcoin-Qt setup: Change block-chain file location, settings? documentation?. Possible duplicate of Bitcoin-Qt setup: Change block-chain file location, settings? documentation?.

First close your client down and then copy the .bitcoin folder that was created in your home directory to the new location where you wish to store the data.  Second create a symbolic link using the new path:

ln -s /new/path/to/.bitcoin .bitcoin

Finally restart the bitcoin client and it will use the blockchain stored at /new/path/to/.bitcoin (or wherever you put it)

That dident work bitcoin qt just made a new .bitcoin folder in the home directory

you need to make sure you execute the command in the home directory and if you run ls -alF you should see the file as a link with an arrow pointing to the new location.... also be sure you use mv -r .bitcoin /new/path/to/.bitcoin to ensure all the files get moved appropriately

or once you move the .bitcoin folder launch bitcoin-qt with -datadir=/new/path/to/.bitcoin

I did this with the file explore GUI and it works fine now


text:
Storing an encrypted private key on a server
I am planning on building a small e-wallet website to learn the basics of encryption and handling accounts, transactions, and balances in Bitcoin.
I want to learn how to make a website where the database does not hold anyone's private data.
What client-side encryption and hashing algorithm should I use? What algorithm or process should I use to ensure that the users encrypted and hashed data is secure on the server?
Using brainwallet, the process for account creation is this:

The client creates a private key.
The user enters a username/password
The client encrypts the private key with a password. The client hashes the password and username. The client sends data to the server.
The server stores the hashed username/password and encrypted private key to the database.

Now, whenever a user wishes to spend a transaction on my site, I am attempting to use brainwallet to send transactions. The process for this will be:

The user types in a username and password.
The client sends a hashed username/password to the server.
The server responds with an encrypted private key for that user.
The client decrypts the private key with a password.

As a side note: is this a sound process for storing and transmitting data to the server?

I am planning on building a small e-wallet website to learn the basics of encryption and handling accounts, transactions, and balances in Bitcoin.

This is really not the place to learn. Even the most hardened Bitcoin services get attacked on a regular basis.

Using brainwallet, the process for account creation is this:

"Brain wallets" are an incredibly easy way for users to lose all of their funds. It happens every day. Think your 8 word sentence is strong enough? Chances are that it's not, and there's at least three bots that will empty the wallet in seconds of it receiving funds.

Now, whenever a user wishes to spend a transaction on my site I am attempting to use brainwallet to send transactions.

The code you're referencing is just a frontend for blockchain.info and the bitcoinjs library.

As a side note: is this a sound process for storing and transmitting data to the server?

Blockchain.info uses this method for it's web wallet, but no, it's very unsafe and offers very little in the way of security. If your server is compromised, the keys still are. If you are malicious, you can just backdoor the client scripting and nobody would ever know. It is not secure, and a service using this type of system shouldn't be advertising itself as such.

The brainwallet code I linked is not an actual brain wallet, it's a javascript implementation of address generation and transaction creation/signing. I think that the security gained from storing an encrypted private key rather than a plaintext private key is significant. At the end of the day, if a user is going to use a webwallet, they'll choose blockchain.info over any competitor who has access to their private key in plaintext.

Blockchain.info has access to the private keys anyway, you would have to be a fool to believe otherwise. If not them, someone with root on their boxes, or someone at cloudflare, or the janitor at the datacenter. JavaScript based crypto, can not and will not ever be secure when the code protecting the data is being loaded from a possibly adversarial server. Even if there wasn't a backdoor (I'm not saying there is), any JS encryption is weak and slow, compounded by the fact that users choose bad passwords. Better to just forgo the veil of false security, and store the keys server side.


text:
Why is MtGox trying to trademark "Bitcoin"?
Someone on the #mtgox IRC channel pointed me to this. It seems to be an application by Tibanne Co. Ltd. for the Trademark name BITCOIN.
I asked MagicalTux on #mtgox about it, but got no answer.
Why is he doing this?

Some countries have a strict first-to-file rule. In these countries, if some malicious entity tried to trademark the term 'Bitcoin' it could cause problems for others trying to use it to talk about the currency. Tibanne is trying to protect the community from this kind of nonsense. Source.

This is confirmed by the statement they have since made - https://mtgox.com/press_release_20111014.html


text:
Does the node count reflect the mining power support of different Bitcoin versions?
In the current Bitcoin blocksize debate, xtnodes.com shows a pie chart of nodes running different implementations of Bitcoin; Classic, XT and Unlimited, etc.
Does this node count in any way reflect the mining power behind each Bitcoin version?

No, nodes and miners are separate entities performing different functions in the network.
The miners create the blockchain, which requires specialized hardware that performs hashing. The hardware is acquired through a significant investment.
Nodes are relay points in the network that verify, maintain and distribute the blockchain. They require (by comparison to mining) only a small hardware investment, or can even be run on virtual servers.
Nodes are much easier to be brought online, and can even be artificially inflated by responding to several IP addresses with the same node. Mining power can be directly measured by its output of proof-of-work. The numbers of nodes and mining power are in no direct correlation to each other.


text:
Is there a Bitcoin Cash explorer that supports Xpub addresses?
As the title says... I've been unable to find a block explorer that supports Xpub for Bitcoin Cash(BCH). Does anyone know of any? In particular and preferably, one that will allow for fetching via GET (so I can import the data into a Google Spreadsheet).

Blockonomics supports lookup of xpubs and multiple addresses. They recently announced support for BCH

Blockbook has direct support for Xpub lookup. There are two ways you can go about using it. You can look up the Xpub directly through the regular web frontend by copying/pasting it into the search field up top.
The second way is to use the api endpoint:/api/v2/xpub/xpubaddrThis returns a json response containing the wallet balance across all the addresses for this Xpub as well as txids and the addresses themselves depending on parameters you supply. See https://github.com/trezor/blockbook/blob/master/docs/api.md#get-xpub for details.
There are quite a few blockbook-based bch explorers out there. Here's a non-exhaustive list:

bch1.trezor.io (goes up to 5; Also, status.trezor.io provides uptime status)
bch.nownodes.io (you'll need to register for free api-key)
bchbook.guarda.co
bchblockexplorer.com
bch1.blockbook.bitaccess.net
blockbook-bcash.binancechain.io
bcash.blockbook.chains.klever.io
bitcoin-cash-node.atomicwallet.io

This might help- you can run SQL queries on massive amounts of Bitcoin Cash blockchain data with the scale of Google BigQuery. The ETL system is already built, there are no limitations or specific requests required, and Google offers additional API support through their client libraries https://console.cloud.google.com/marketplace/details/cmorqs-public/cmorq-bch-data This solution provides a sample of the data, but you can get access to the full live data set through the company website.

Thanks but when I go to that link it just says “failed to load“

I just found this app. Looks good but it's quite new so maybe give it a try https://play.google.com/store/apps/details?id=com.valcourgames.walletwatch.android

Thanks but that's not a web based block explorer... I need one I can incorporate into a spreadsheet.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Error loading wallet.dat: Wallet corrupted
I've been using bitcoin for over a year now without issues. It's been a while since I fired up a bitcoin client though, at least a couple months.
When I try running a bitcoin client (bitcoin-qt version 0.6.0-oneiric0) today, I get the error message
Error loading wallet.dat: Wallet corrupted

I generally use GPG to encrypt and decrypt wallet.dat, and I only have backups of the encrypted wallet.dat.gpg file. I encrypt and decrypt the file only while bitcoin is not running.
I tried following https://bitcointalk.org/index.php?topic=11331.0 . The tools appeared to work (dbdump.py --wallet doesn't throw any errors and spits out what looks like proper wallet contents), but after fixing my wallet with fixwallet.py I get the same "Wallet corrupted" error from the bitcoin client.
The bitcoin client works fine if I blow away my ~/.bitcoin directory.
I'm using 32-bit Ubuntu 11.10 desktop.
I also tried installing the latest bitcoin Qt client on Windows, but that also reports wallet.dat is corrupted.
I tried using a Linux binary from bitcoin.org, and I get this error message:
************************
EXCEPTION: 22DbRunRecoveryException
DbEnv::open: DB_RUNRECOVERY: Fatal error, run database recovery
bitcoin in Runaway exception

terminate called after throwing an instance of 'DbRunRecoveryException'
  what():  DbEnv::open: DB_RUNRECOVERY: Fatal error, run database recovery
Aborted

This may be related: https://github.com/bitcoin/bitcoin/issues/809
Update Mon, 30 Apr 2012 21:45:00 -0700
I ended up trying a bunch of older versions of the bitcoin client, and version 0.3.24-beta reads the wallet just fine! What the heck!?! Gotta be a bug in bitcoin. Now I just need to figure out a way to safely "upgrade" my wallet so it works with 0.6, I guess.
Update Mon, 30 Apr 2012 22:00:00 -0700
Bitcoin 0.4.1 is able to work with everything in my ~/.bitcoin dir. 0.5.4rc3 and 0.6.0 do not work.
Is there some way to serialize the wallet data as plain text? Man, I hate BerkeleyDB.
Update Wed, 02 May 2012 10:43:19 -0700
Using Bitcoin 0.4.1 with my old wallet (which apparently contains something corrupt), I was able to transfer my balance to a new wallet created from scratch with Bitcoin 0.6.0.

Why do you say it is the wallet itself that is giving the error?
Try using just wallet.dat and, for troubleshooting, a copy of the blockchain.  http://eu1.bitcoincharts.com/blockchain

@StephenGornick: I've tried starting bitcoin with only wallet.dat in ~/.bitcoin/ and I still get Error loading wallet.dat: Wallet corrupted. Would it help to try the same thing but with a blockchain downloaded from the link you specified?

Having a copy of the blockchain won't help, no.  If you get an error message with no blockchain, you'll get the same error after downloading the blockchain.

Thanks for going to the effort of documenting what you did to fix the problem

I had the same issue but didn't want to go through the trouble of downgrading, create new wallet, upgrade.. So instead I tried to delete everything except for the 'wallet.dat' file. This worked. Although now it has to reprocess all transactions from start

Version 0.6.0 introduced more strict validity checks on the keys when loading a wallet, to prevent silent further corruption. It seems like you have a wallet where one or more keys are corrupted (the private and public one don't match, for example). You can try moving the funds away using an older version, but there is a chance that will fail.
I intend to add a sort of "recovery mode" in 0.7.0 for situations like this.

Would "recovery mode" possibly make my old wallet work again with versions of bitcoin later than 0.4.1?

That's not because of the wallet format, but because of BDB. Their database files are not backward-compatible, and some versions ago we upgraded from bdbd 4.7 to 4.8. You can dump/load them to create an identical wallet file that is compatible with older versions though.

I mean, I want to make my old wallet work with newer versions of bitcoin... I don't care about older versions. :)

In normal cases, an old wallet (even down to the earliest releases) will keep working in new clients, there is no problem with compatibility. If your wallet is corrupted, you'll get into problems anyway with it.

This is kind of obvious, but have you tried going back through your backups, newest first, and using the first one which works?
You'll need to GPG decrypt the backup of course, but I hope that's not a problem.
Edit: I know you said you tried with just wallet.dat in ~/.bitcoin/ but could it be that you left the ~/.bitcoin/database/ directory with logfiles in it?  If so, old logfiles could be causing the problem.

That's sound advice, thank you. Actually, I ended up trying a bunch of older versions of the bitcoin client, and version 0.3.24-beta reads the wallet just fine! What the heck!?! Gotta be a bug in bitcoin. Now I just need to figure out a way to safely "upgrade" my wallet so it works with 0.6, I guess.

Perhaps you would like to create a new wallet using 0.6 and transfer the contents of the old one to the new one using 0.3.24, then make the old one available for test purposes.  I don't know if this is a known bug, but I've not heard of it before.  You'll lose your transaction history and get a new set of addresses this way, so you'll need to update the people who send you coins.

aye, I think that (or waiting for 0.7.0) might be the only straightforward way out of this mess.

say I am able to successfully move my bitcoins to another wallet. What happens if someone tries to send money to one of my old addresses?

It'll go to the old wallet.  That's what I was getting at with "you'll need to update the people who send you coins" - tell them your new address(es).

I was able to transfer my balance to a new wallet. Would you like the old (empty) wallet? Or do you know someone who might? Email me at haircut (gmail) if so.

It seems, according to Pieter's answer, that this is a known problem, so I guess it's not necessary.

I had the same problem but it has only been a few days since I fired up bitcoin and there had been no changes to my computer.
I have found that you can copy out your wallet.dat,  delete everything in the bitcoin directory/folder, and bitcoin will run with no error.
Then immediately close bitcoin, copy your wallet back to the folder and restart - wallet.dat reads fine and all my coins are there.
The downside is having to spend a ton of time to download the entire block chain again :(
But it works.
Louis
I use Linux Mint (Like Ubuntu) - Winblows users may not have the same results.


text:
Bitcoins deducted from Multibit wallet but nothing was sent
I sent 1 bitcoin FROM Multibit wallet TO this address 19xQJNmK3Ys4pXwMh11mwdfky4wNsNDj1Z.
The transaction was stuck at "Seen by 1 peer, not confirmed" for more than 7 hours.
Checking blockchain.info it seems that the transaction was never sent
Based on Multibit documentation regarding stuck transaction I tried to reset blockchain and transactions that never made it. Needless to say I ended up with 1 bitcoin LESS in my balance, and the transaction did not appear either in Multibit or in blockchain.info.
Any clues? thanks in advance.
Edit1: A typical fee for a transaction is 0.0001 (0.1 mBTC), that is set automatically by Multibit and can't be altered.

The first couple of times I was resetting it to previous day or two. It should have fixed the problem but it didn't.
Resetting transactions completely seems to have fixed the issue, though. phew...

authors: Ершик Вантус


text:
How to determine what type of coins a wallet.dat contains?
I have a number of wallets. Is it possible to detect the type of (alternative) coin it contains?

Here's one way I found.
Get pywallet (https://github.com/jackjack-jj/pywallet) and run
python pywallet.py --dumpwallet --wallet=/foo/bar/wallet.dat

Look in the output for a field called names.  This will contain a list of addresses in the coin's own format, and by looking at the first character you can try to identify the coin by its version byte.  See here for a list of some common ones.  For example, 1 is Bitcoin, L is Litecoin, etc.
Note that you will see a number of other fields named defaultkey, addr, etc.  These will appear to be in Bitcoin address format (starting with 1), no matter what the actual coin is.  The reason is that for these keys, the wallet.dat file only contains the private key, and pywallet has to do the conversion to the public key and address.  In  particular, pywallet has to fill in the version byte, and it always picks the Bitcoin version byte unless told otherwise on the command line.  So you always get a Bitcoin-style address in these fields, so for purposes of identifying the coin, you should ignore them.

i write a similar but much simpler script: https://gist.github.com/nlitsme/b3102191c2dc14c587e7. and look for 'name'  in the output

look at the 'name' field mentioned by nate, here is a list of what addresses of several alt coins look like:
example address                   version   coin
17DxjJ9Uf3nqMPAtcBMcs2wUdoUBnJit1V  00  bitcoin
9ZKdQaQXZqXEXV6i7zMK3fezrPszj9zErr  15  catcoin
XguoZYoNcm1RWKmUU4fqiZdGU93skcxKkn  4c  darkcoin
DBN4GZ67xTh7tPMVLmMBQo75WwCV7ppTgD  1e  dogecoin
LRSuzWTJji2tcBs3nKLv941Er1qTq9jMnW  30  litecoin
4KvncAXnLVVqtrHaoY2Ak37mfqXjPDzfCP  08  novacoin
PEp8tGYKhyH2LDqexFg9XvukFYe4ty6DMu  37  ppcoin
AMzqNo16zCSzAMNtAq1x1vCa7QPt8metCh  17  primecoin
mmjv2METU5E68VeWKkKzgx9oVo4thkSw5x  6f  btccoin testnet
mmjv2METU5E68VeWKkKzgx9oVo4thkSw5x  6f  litecoin testnet

version is the version byte prepended to the hash before base58 encoding it.

That is not possible because just looking at the file you can't say whats in there until you have saved these wallet.dat files in different folders second thing is you cannot read content of a .dat file. So its not possible.

I don't understand this answer. What does saving files in folders have to do with anything? And of course you can read the content of wallet.dat given the right tools to interpret it. It's just a question of whether and how that content contains the information you want.

A .da file cannot be read by a human that I know for sure, if you are familiar with a program which can do that please let me know

https://github.com/jackjack-jj/pywallet for example.


text:
From where do portals who sell bitcoins buy bitcoins?
The internet is now full of portals who are selling bitcoins to single users.
Where do these companies buy bitcoins and at what prices?
Is there any central regulator who can decide critical issue on bitcons?

related: http://bitcoin.stackexchange.com/questions/1530/who-controls-the-bitcoin-software

also related: http://bitcoin.stackexchange.com/q/91/5406

From where these companies buy bitcoins and at what prices?

From people selling them at market rate of an exchange likely. People selling them at the END all got them from miners - that is how bitcoins come into existence.

is there any central regulator who can decide critical issue on bitcons?

No. That is by design.

They most likely acquire coins via the large exchanges like MtGox and BitStamp.
Bitcoin has no centralized regulator. Since it is an open source project, it evolves by consensus and critical issues are decided between the developers and miners.


text:
How are public and private keys related to the wallet?
I understand that all the Bitcoin protocol is based on an asymmetric cryptography.
A user gets 2 keys (public and private). How do these keys connect to the Bitcoins?
How are the keys are related to the wallet? How can I decide how many Bitcoins to transfer when using my private key?

Thomas' answer is correct, but I think an easy version may be appreciated as well.
I suppose you know the concept of public key cryptography? If you don't, here is a very short explanation (or read the wikipedia page): Public key cryptography (as used in Bitcoin), allows you to hand people a public key and use the corresponding private key to prove the ownership. So you can create any random private key (keep it secret) and calculate the corresponding public key (give it out to public for verification). Using this private key, you can sign a message and other people can verify that you own the private key by using your public key.
So, applied to Bitcoin.
A Bitcoin address is just a shorthand notation for a public key. When someone makes a transaction to an address, he states that "I give the right to spend this money to the person who owns the private key corresponding to this address".
The person who has received this transaction will in turn be able to spend the transaction by signing the transaction using his private key. With this signature he can prove that he owns the key, without disclosing it. Others can verify the signature using the public key.
As for the second part of your question, it gets a little more advanced. An easy way of viewing it is that every transaction takes a number of inputs and generates a number of outputs. Inputs in this case are outputs from previous transactions. For each input, the user will have to provide verification he is allowed to spend that output by adding a signature.

A simple Bitcoin wallet consists on one of more pairs of public and private keys (I'm saying simple here as some wallet structure allow for deterministic public key generations and private keys that can only spend part of the wallet, but the principle with public/private keys remains the same). The "link" to Bitcoin initially happens during block generation where a certain amount of Bitcoin is generated and sent to the miner's public address; this is merely a record in the blockchain. Then these coins can be sent to other public addresses using transactions.
The most simple transaction has one input and one output; i.e. it spends coins from one source address to one destination address. To be valid, the amount of output coins must not exceed the amount of input coins, and to be verified the output address hash is signed by the input address' private key.
In real world though, wallets balances become the sum of all inputs to that wallet, so when you make a transaction the software will select the desired number of inputs to get a sum equal of greater to the desired transaction output + fee. If the amount exceeds what you want to spend, the remainder can be send back to one of the input address or even a new address of your wallet, so you basically send yourself the exceeding amount of Bitcoins. Any unspent amount in the transaction is considered fee and is collected by the miner generating the block.
Transactions can also be much more complex; Bitcoin allows for a very powerful scripting system that can make transactions spendable in many ways. You can read more about bitcoin transactions and scripting system here:
https://en.bitcoin.it/wiki/Transactions
https://en.bitcoin.it/wiki/Script
When you send out a transaction, it is relayed to the network for inclusion in a block if it passes common rules for transactions (validity, fee, size, etc.). A miner will eventually pick your transaction and include it a block (the transactions are actually included in a merkle tree whose root hash is in in the block header - the block header hash is the proof of work that has to match the difficulty requirement for the block).


text:
How to transfer funds from Bitstamp to a personal wallet?
I converted EURs into BTCs at Bitstamp.net with SEPA (I live in the in EU), so now the BTCs are sitting on my Bitstamp account, but what's the next step? How do I use and send these BTCs to an average 34 digit bitcoin address?
Could anyone write or explain step by step in nutshell what do I have to do, what other websites or programs do I have to use to transfer my bitcoins from Bitstamp to a 34 digit bitcoin address?
What are the possible ways of doing it?

TL;DR: my suggestion is to create a wallet at https://blockchain.info/wallet/

Are you asking what option lets you withdraw from BitSTAMP?
Across the top menu is Withdraw, and from there pick Bitcoin as the withdrawal method, which gives this link:

https://www.bitstamp.net/account/withdraw/bitcoin/

Now if you are asking where to withdraw your coins to, then that's a different question.  There is not just one answer because various options regarding security will determine the best way to proceed.
If you are looking to store them for a long time, then a paper wallet, generated from an offline computer using a LiveOS might be the right recommendation.
Armory is another client that can be used offline and be very secure for storing bitcoins.
Or perhaps storing the funds using a hyrbrid EWallet, like the one from Blockchain.info/wallet is a good method because it provides a good tradeoff between convenience and security.
Others feel their coins are safe in a hosted (shared) EWallet provider like Coinbase, Paytunia or prefer to leave funds at an exchange even.  If the exchange has two-factor authentication (done properly) that will help prevent the situation where even if your computer is compromised you EWallet account is not at risk of a replay attack.
Others want to run a full Bitcoin.org client themselves.  This is an undertaking as initial startup can take a day or longer to download the blockchain.  A future release of the Bitcoin.org client will make this initial and ongoing performance issue be much less of a burden.  Other clients, Simplified Payment Verification (SPV) clients, such as Multibit.

http://bitcoinmagazine.net/bitcoin-wallet-options
http://en.bitcoin.it/wiki/Mobile_Payment_Apps


text:
How to use the "Bootstrap.dat" file with bitcoin-qt?
I have searched around, and nothing I find works for me.
Downloaded the approx. 10 GB Bootstrap.dat file. Now stuck on trying to link it with Bitcoin-QT.
Tried the following command in the console box in the bitcoin-qt app:
bitcon-qt -loadblock=/path/to/bootstrap.dat

Also tried copying the file into the AppData/Roaming/Bitcoin file... Still no luck.
I'm running Windows 7, anyone have step by step instructions on how to set this up?

Your question may be best addressed to the original post on the BitcoinTalk forum.

This does not really answer the question. If you have a different question, you can ask it by clicking Ask Question. You can also add a bounty to draw more attention to this question once you have enough reputation.

Okay, it appears after much trial and error, I figured out that you put the bootstrap.dat file in the AppData/Roaming/Bitcoin or ~/.bitcoin folder. You can leave everything else in that folder untouched, just add the bootstrap.dat file in the Bitcoin folder.
I left bootstrap.dat in there, and finally Bitcoin-QT found it, and on the bottom it states "Importing blocks from disk..." I'm currently at 80 weeks behind on the update, compared to 240+.
I was reading crap about using the -loadblock command and extracting/unzipping the .dat file.... well this wasn't needed.  At least it isn't needed on the current version of QT, which I believe is .8.0.5

It didn't work for me. Just left in the same directory of wallet.dat and it did not work. This directory should be empty? Without any block previously downloaded?

On Linux, I made sure the folder was empty when I put bootstrap.dat there. Also, I used a different folder, so I started bitcoin-qt with bitcoin-qt -datadir=/media/downloads/bitcoin . Probably it saved the datadir in its config file, I will check that later.


text:
I lost bitcoins in mtgox, I don't know why and how
I have a mtgox without verification yet, opened in June of 2013, and recently I put in some 26btcs in December.
I begin to operate buying and selling and in January 8, I had 26,03 btcs and now I see that January 8, there were 3 withdrawals in seconds to a btc account, first one for 1 btc, the second one for 5 btcs, and the last one for 20 btcs.
I think a lot possibilities, first one is that somebody stole me, but I don't understand how it is possible to do a withdrawal without verification, because mtgox inform that is not possible without verification, and after that, the limit begins in 1 btc per day. So I don't understand anything.
Other possibility is mtgox took my btc until I verify the account, but it is very rare mtgox  take my btc in three times and cost me 0, 0001 btd each one. So I don't believe a lot in that possibility.
So, anyone are able to tell me something to help me…

Thanks for answer. But my account did not let me to do withdrawals because I have short balance and I tried, and mtgox system inform me that I need to verify. So I think I am not AML and my account is not too old. So after tell u this what do you think that happen with my account? Thanks for all

This isn't an answer, should be a comment.

Contact mtgox support so they can review your transactions, if you are not verified and you can not do withdrawals then it is a problem if their system so the must refund you.
But probably that's not the case, you should check that the registered email is your email if everything is as it was when you left the account, probably a hacker got access to your email then to mtgox and changed your account settings to withdraw without your consent.

"there were 3 withdrawals in seconds to a btc account, first one for 1 btc, the second one for 5 btcs, and the last one for 20 btcs."
I had this strange multi withdrawal process when my bitcoins were stolen from Mtgox. There were two small withdrawals followed by a final bigger withdrawal. I'd recommend that you check your email registered with that account. It should have received a transaction notification from Mt.Gox asking if you authorized this withdrawal.

afaik old accounts are not automatically AML flagged, only the most recent accounts are all required to verify before they can deposit or withdraw, old accounts can still withdraw btcs until they ( possibly ) get aml flagged some day and need to verify.
an account opened in  june 2013 is possibly old enough to still be allowed to withdraw bitcoins
mtgox does NOT "take your btc until you verify", never, ever
also :

you should have opened a support ticket
if you did and your story is true, give the ticket number, the mtgox support will have a look at it
you should secure your mtgox account with a one time password ( OTP ) using a yubikey, otpcard, or at the very least google auth, particularly if you use windows shitty OS ( installing a keylogger on your windows computer is pretty easy for thousands of good crackers )
in many cases, people reporting this kind of story had an intelligent friend or girlfriend using an opened session to empty the account of the btcs

Thanks for answer. But my account did not let me to do withdrawals because I have short balance and I tried, and mtgox system inform me that I need to verify. So I think I am not AML and my account is not too old. So after tell u this what do you think that happen with my account? Thanks for all

i think your account is old enough to be allowed to withdraw btcs

Thanks a lot other time. I checked when I opened account and it was opened April 6th of 2013,  but I did not make any deposit until January 1th of 2014. So I think that rules change in May 30 th in mtgox to not allowed withdraws without verification. So what do u think now with this information. It is very rare change rules for new customer only. And why I can not withdraw the rest of my bitcoins right now...

ok, your account is old enough to be allowed to withdraw btcs .


text:
How to sign a transaction using only an offline computer?
I think it is possible to generate keys on an offline computer and sign. To create a transaction I need to input transactions detail, and somehow I have to transfer signed transaction from offline computer to a online computer to relay the transaction.
Is it possible to do this without using USB storage? I can use a keyboard, or barcode reader to transfer the input transaction hash to an offline computer and the signed transaction back to the online computer. So that private key stays with the offline computer.
What are step-by-step instructions to do this, with any required error check / correction?

As long as offline computer is able to sign message and generate a QR Code, the process should be very straightforward.

You're correct that the offline node needs to how to claim its funds, so it can't be totally isolated.
Currently, the most mature offline wallet solution is through a client called Bitcoin Armory. Here's what your workflow looks like with offline wallets:

Online node creates transaction -> USB key -> Offline computer signs transaction -> USB key -> Online node broadcasts transaction

You can use Windows, Linux, or Mac for your offline wallet, but I'd recommend Linux, as it's difficult to disable AutoRun/AutoPlay on Windows.
Download:

Windows/Linux
Mac - Beta

This page explains offline transactions in greater detail.

thanks for the reference. is it possible to skip "USB drive" part?

@vi.su. You need some way to get the inputs/index onto the offline computer, and some way to get the signed transactions out. You could do it by manually typing them out, but that seems overly difficult.

I currently use a USB stick to copy unsigned transactions to an offline computer where I sign them, then use the same USB stick to copy them back to an online computer.  But today I read http://arstechnica.com/security/2013/10/meet-badbios-the-mysterious-mac-and-pc-malware-that-jumps-airgaps/ which is pretty terrifying if true.  I would like to find a way to use QRcodes to transmit the required information between computers rather than a USB stick to avoid this risk of infection.

The unsigned raw transaction itself is small enough to fit into a QRcode, but the offline computer also needs access to the input transactions for the transaction it is trying to sign, which I currently provide by copying a wallet file over as well.  Wallet files are too big to fit in a QRcode.

The "This page" link in your last line is outdated.  http://bitcoinarmory.com/about/using-our-wallet/#offlinewallet is maybe the new link.

@ChrisMoore "The "This page" link in your last line is outdated." Thanks. "I would like to find a way to use QRcodes to transmit the required information" That's an interesting idea, but probably out of the scope of this question.

Do you think so?  The question said "Is it possible to do this without using USB storage?" so an answer using QR codes would seem to be exactly what he was looking for.

The link to the explanatory page appears to be outdated again.

I'm working on this right now.  Currently, I have online and offline armory set up to use the USB key as has been described here before.  I just created a new android app that will peer with the bitcoin network, and allow you to scan a QR code representing ANY signed transaction, and broadcast it to the peers.  This makes it so you can do this:

Make an unsigned transaction in armory
Create a QR code from it
Scan it with phone (so far, QR Droid and Barcode Scanner work)
Take phone to offline wallet
Display QR code for unsigned transaction on phone (using history in QR droid works well)
Scan using webcam in offline wallet computer (I successfully did this with the zbar Linux application in Ubuntu - package details to follow)
Sign tx with offline armory
Display QR code for signed tx (more packages to follow)
Scan with new android app to broadcast

This is almost done - the app is currently peering with bitcoin nodes and will scan the QR code and send it to a broadcasting activity, but the broadcast part and the parsing of the armory format remains.
UPDATE: Implemented.  Watch the video
Python code here
Android app code here

This explanation doesn't help the asker too much, could you expand on the "creating a transaction" and "signing tx with offline armory" bits?

I added a video demoing the entire process.  It assumes you know how to make an offline transaction in armory, which is described here.  All one has to do is convert the unsigned transaction text to a QR code (I used QREncoder from the App Store on my Mac to do this), then follow the steps in the video.  I'll be posting the scripts soon and linking from the video and probably here.