Wikipedia:Reference desk/Archives/Computing/2018 January 30

Computing desk
< January 29 << Dec | January | Feb >> January 31 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


January 30

edit

Bitcoin theft

edit

Almost every week we read about some unfortunate bitcoin exchange suffering a multi million dollar theft. How can it happen? The way the bitcoin is described, it is a code, perhaps a string of digits, existing in a "distributed ledger" that is it's a sort of a community property controlled by participants. Everyone, or perhaps, every "miner" holds the entire database of bitcoin transaction from day one, year 2009 or so. Any new miner can get a copy of this database any time, correct? At this time the size of the database is about 50 GB, big deal! How such an object can be stolen? In essence every bitcoin has an ID and this ID is everywhere. The fact of the theft must be again recorded in thousands of computers and such a massive transaction may reveal the perpetrators. Besides such a transaction can be marked "illegal" or otherwise illegitimate. Still the exchanges get in massive troubles, why? Perhaps the idea itself is not properly implemented or what? I want to get some answers to my questions. Thanks, - --AboutFace 22 (talk) 16:17, 30 January 2018 (UTC)[reply]

Bitcoins are protected by a public/private keypair. To start a transaction with a bitcoin, you need the current private key for the bitcoin. Once stolen, the person with the private key is in control of transactions. That person can return the stolen bitcoin, but why would he do that? There no bitcoin authority of any kind. That is the entire point. Bitcoin is based on "trust no one." So, it purposely has no authority. Nobody can say "Hey! You stole that! Give it back!" You could beg the thieves to give the bitcoins back. Do you think that would work? You can threaten them. I could probably get one to give back bitcoins after a month or so chained up in my bathtub. I personally think they would crack before I'd need to get the bleach. Then, there is legal recourse. Right now, bitcoin is not legal tender. It is a virtual commodity, no different than a magical sword in an RPG game. Legal systems around the world aren't really ready for virtual-theft cases. It would be an international issue as well because it is very likely that the person who steals your coins will be from another country. So, in the end, the whole point of bitcoins is that when you get hold of one, it is yours. It doesn't matter how you got it. It is yours. 209.149.113.5 (talk) 19:11, 30 January 2018 (UTC)[reply]
In fairness to the original question, it would be possible to surgically "undo" a questionable transaction that is considered to be a theft. At any time after a disputed-transaction (or outright theft), it is possible to fork: to discard all disputed transactions, and replay all other transactions, and to then build forward from that last-known-good point. But this is very uncommon: part of the appeal of the block-chain is that transactions are not reversible: every time a transaction is committed between two participants, it is permanent - even if one of the participants changes their mind; and even if one of the participants did not participate!
A transaction has occurred if and only if the block-chain carries a record of that transaction. This makes it difficult to define "theft" - there are simply transactions in the ledger; and sometimes, there are even transactions in the ledger that some people wish did not happen. Any time somebody wants to "undo" a transaction, they can ask every other participant to review it, and consider eliding it by accepting a different ledger that does not contain aforementioned transaction.
But there is no incentive for individual participants to conduct a review for any specific disputed transaction; and there is no regulatory authority that can force individual participants to do so. The dubious, illicit transactions are honored because more than 50% of the participants choose to honor them. Most people who are participating in a cryptocurrency scheme do not care to investigate every request to discard a transaction. By extension, they do not investigate any request to discard a transaction. The status-quo is that money can be pilfered, as long as it affects few enough participants.
Nimur (talk) 00:20, 31 January 2018 (UTC)[reply]

Thanks. You said, I quote: "To start a transaction with a bitcoin, you need the current private key for the bitcoin." So, every bitcoin or part thereof has a private key, is it correct? It is hard to imagine that there is only one private key for the entire distributed ledger (the database). Isn't it true? I know someone who mines bitcoins. They says they make $2.30 a day. I don't know if it pays for electricity they consume. I should ask them if they have new private key for every day if mining. If every small chunk of bitcoin has a separate private key how could you steal all private keys to walk away with 180 million dollars? And how about the public key? Is it like a single public key for the entire database? Could you answer all these questions please? As you see I am not interested in legal aspects, only in software. If I understand well how the system works I may end up writing my own software for virtual currency. Thanks AboutFace 22 (talk) 21:58, 30 January 2018 (UTC)[reply]

@Nimur, the theft of 500+ million dollars is not something that affects "a few." I am talking about the theft not of Bitcoin but a Japanese virtual currency, CoinCheck. Listen here: Japan's Coincheck suffers record $530m virtual currency theft[1] How do you like it? It happened last Friday, bingo! AboutFace 22 (talk) 01:58, 31 January 2018 (UTC)[reply]

It likely affects only a few of the miners responsible for maintaining the blockchain. Large miners are unlikely to keep a significant amount of assets on an exchange, so their personal money was unlikely to have been stolen. It is the miners that would have to be convinced to accept a hard fork in order to clawback stolen assets. As Nimur says, most would have little incentive to do so, and there is no regulatory authority with the power to force them to do so. Also, by way of clarification, what was a stolen was a cryptocurrency called XEM (also sometimes known as NEM). CoinCheck is the name of the Japanese exchange that was robbed. CoinCheck deals in multiple cryptocurrencies, including Bitcoin, but the theft only involved XEM. Dragons flight (talk) 10:48, 31 January 2018 (UTC)[reply]
@AboutFace 22, there is a separate private key for every bitcoin (or other cryptocurrency) "wallet", the equivalent of a bank account. The bitcoin article explains some. The way huge thefts happen is someone manages to get the private key of a wallet containing a large amount of coins, such as a coin exchange's wallet. That's like being able to write unlimited checks against Citibank's own account. Bitcoin mining today takes huge amounts of special equipment. If someone is making $2.30 a day at cryptocurrency mining, they are probably mining an altcoin rather than Bitcoin proper. 173.228.123.121 (talk) 07:09, 31 January 2018 (UTC)[reply]
Trying to fill in some explanatory gaps: cryptocurrencies are based on public-key cryptography. You have a keypair, consisting of a public and private key. The public key, as the name suggests, you give out publicly. You can then use your private key to sign a message, and anyone with your public key can use that key to verify that something was signed by the associated private key. All that a cryptocurrency adds on top of this is a ledger, usually referred to as the "blockchain", that keeps track of who owns all the units of the currency. Important detail: by design, there are no "real-world" identities or anything like that involved. The "who" here is just a public key. So to "prove" you own a Bitcoin, you sign a message with your private key. To transfer a Bitcoin, you tell the "blockchain", "I am Foo, and I am sending 1 Bitcoin to Bar." The computers maintaining the blockchain check the message against your public key to verify that you are Foo, and then record the transaction. Since the keypair is the only "thing" that the Bitcoin network considers as "owning" Bitcoin, whoever has the key has access to all the Bitcoin it owns. Obviously, this implies if someone steals your private key, they can spend all your Bitcoin. You could think of the private key like the combination to a safe with cash inside: anyone with the combination has access to the money. Not every "chunk" of Bitcoin has its own private key. The blockchain records public keys and the amount of Bitcoin assigned to them. A key (usually called an "address" in Bitcoin context) can have .00001 Bitcoin assigned to it, or 10000. Bitcoins only "exist" as entries in the blockchain. --47.157.122.192 (talk) 00:55, 1 February 2018 (UTC)[reply]

Well, the challenge will be met :=) The people who mine bitcoin making $2.30 a day are actually my daughter and son-in-law, a very adventurous couple. They said: BITCOIN and I believe them. They have no special equipment, just good Hewlett Packards. They wanted to set up the applications on our computers but I said, NO. Thanks, - --AboutFace 22 (talk) 13:36, 31 January 2018 (UTC)[reply]

A few years ago, one could mine Bitcoin on conventional PCs and expect a return, but the technology has moved on since then. At the current Bitcoin network hash rate, with a good GPU a single computer would be expected to solve 1 block every ~40,000 years resulting in $125,000 in Bitcoin at present value. That translates to a little less than 1 penny / day. ASIC Miners, which is what the main players use today, can solve the same block every few years, giving a very high rate of return and completely dominating the market. If they are still mining bitcoin on PCs, they are probably just throwing electricity away. Dragons flight (talk) 16:44, 31 January 2018 (UTC)[reply]
On the topic of fun ways you can get paid to run software on an idle computer, you can get paid more money to host a spam mail server, or an open proxy, or any of a variety of other low-human-effort background software jobs that a simple home computer can accomplish when connected to the internet. None of these things are rational in the technical sense of that word, as applied to economics: these tasks all cost more to operate than the revenue they return to the operator, and what's worse is that they carry nontrivial externalities in terms of legal liability, software and information security concerns, and the expense of human time. If your computer can earn even so much as a few bucks each day, but requires even an hour of your time each month in maintenance... well, we have to start asking pertinent economic questions! If a user is skilled enough to perform computer maintenance, they could be gainfully employed - almost certainly at a higher hourly-rate - by some local or internet-based computer software company! And if a computer is powerful enough to compute the cryptography software problems of cryptocurrency, it is powerful enough to be gainfully employed as a useful server or development workstation to force-multiply the economic impact of its human owner!
Even if the operator claimed the outrageous net-profit-per-day of $100 - perhaps they are some kind of super-efficient mega-genius who is really good at computers - they'd be doing the difficult work of a software engineer - managing a server farm and maintaining all its software - and they'd still be earning far less than the wage of a median software engineer, who earns dollars at four times that rate in each unit of time! ...And just so there is no uncertainty: a modern bitcoin miner cannot extract $100 per day; as described above, this is almost 10,000 times more money than a real bitcoin miner is likely to earn; so that means that the typical bitcoin miner is actually earning something like 40,000 times less than a software engineer, or, (hey, fun with statistics!), 40,000 times less than a typical top executive. Needless to say, there are outliers in all industries, but in all games of statistics, the median is a profoundly useful data mark!
It is extraordinarily unlikely that you can ever make money mining bitcoin, or any other cryptocurrency. Rather, if there is any money to be had, it is by taking money from other people who haven't done this math - essentially, by duping other investors into the ponzi-scheme or speculation bubble.
Nimur (talk) 17:25, 31 January 2018 (UTC)[reply]
Collateral damage from the cryptocurrency bubble - this page at PCPartPicker shows the horrible spike in the prices of nVidia consumer graphics cards just over the last month - driven by cryptocurrency miners who *think* they can make a fortune. 87.115.246.245 (talk) 18:16, 31 January 2018 (UTC)[reply]

Yes, I've read an article recently that raised concern over the negative impact of the bitcoin mining on the climate because of increased electricity consumption. Increase in price of GPU's is a bad news for me. I have thought about purchasing some not for bitcoin but for parallel processing some numerical integration. Hopefully this fad will pass. However I've made it clear in the OP that I am interested in technical aspect of bitcoin only. I got some information here that I wanted. Thanks, AboutFace 22 (talk) 21:34, 31 January 2018 (UTC)[reply]

Well, I now have corrected information about my family members doing bitcoin mining. They have only one dedicated bitcoin computer working around the clock, as my son-in-law said, "in the kitchen." It is an HP Pavilion. I did hear the amount $2.30 a day but now they deny it. I suspect it was what they made cumulatively over a few days after they started. The things get fuzzy sometimes. He said that the maximum they've ever made a day was $0.87 and now because of the bitcoin price drop they are making about $0.53/day. Sure it is a good conversation piece, but it beyond the scope.....Thanks, - AboutFace 22 (talk) 01:34, 1 February 2018 (UTC)[reply]

There is no way to make a profit mining bitcoin on an HP Pavilion or other general purpose computer unless you're getting free electricity somehow (i.e. externalizing the cost of operating the box). Yes an HP Pavilion can theoretically mine bitcoins (at a very low rate) but it will cost more in electricity than it will produce in mining income. Profitable bitcoin mining requires ultra-efficient special purpose (ASIC-based) equipment.[2] They are mostly in industrial-like facilities in China and (at least for a while) Iceland, again due to cheap electricity, but there are some consumer-level ASIC rigs so it's sort of possible your folks are using one of those. Electricity isn't an incidental input to mining--its cost is a substantial part of mining costs. You need cheap power and efficient gear. 173.228.123.121 (talk) 02:41, 1 February 2018 (UTC)[reply]
Another possibility is that the computer is not mining Bitcoin (as in "creating new ones"), but processing transactions and getting the transaction fee to do so. TigraanClick here to contact me 13:22, 1 February 2018 (UTC)[reply]
In Bitcoin, and things patterned after it. mining and transaction processing are the same thing. The newly-mined Bitcoins are granted to the miners as incentive to perform the transaction processing. The section you linked to describes how someone can pay an extra transaction fee along with their transaction, generally to get their transaction processed faster. Essentially, they're paying for "rush processing". --47.157.122.192 (talk) 03:52, 2 February 2018 (UTC)[reply]

Sorry, I forgot to mention, or rather considered it unimportant, that they have Solar Panels on the roof. I don't know if the electricity the panels generate is truly free for them, if the initial investment has been paid off, but this OP is not about any profit. It is about an attempt to understand how certain events happen technologically. AboutFace 22 (talk) 13:38, 1 February 2018 (UTC)[reply]

In a number of countries you can sell the power from small scale generation back to the grid, sometimes at retail prices, so it may not affect any net profitability calculations. Anyway I think this talk about net profitability is missing the point. If Dragons flight's calculations are correct and a very quick check suggests to me they could be, it's simply not possible to make $0.53/day gross mining bitcoin with a single computer, even if you stuck 16 GPUs on it. I guess it might be possible with some altcoin. Nil Einne (talk) 07:35, 2 February 2018 (UTC)[reply]
Yeah it sounds like they're counting the solar electricity as "free". Even with free electricity I'm surprised you can get 50 cents a month from CPU mining, given how much more efficient ASICs are. Mining BTC seems like a silly idea anyway, since if it's a reasonably fast PC they can probably make $10-20/month mining other coins like XMR (Monero) or whatever. I know that it's winter now and cold in lots of places, and some people in some of those places are silly enough to have electric heat. That sounds almost worth to replacing the heaters with mining rigs. 173.228.123.121 (talk) 09:00, 2 February 2018 (UTC)[reply]

They are making $.53 a day, not a month. This whole thread went on a tangent with a discussion of how much money could be made with bitcoin. It is not my interest at all. I was trying to understand how the system could allow such a large theft, on a purely technical grounds. --AboutFace 22 (talk) 15:09, 2 February 2018 (UTC)[reply]

But that's the point. Even in terms of gross profit, it's simply not possible to make $0.53/day mining bitcoin with a single computer. if you're not able to understand this, I don't know if there's much point further discussing how the theft was possible, as it sounds like even the existing discussing is too complicated for you. Note as I said, it might be possible with some other cryptocurrency/altcoin, but again if you still don't understand there are plenty of cryptocurrencies besides, probably there's no point discussing further. As already mention this matters to your original point since the theft you referred to was not of bitcoin, but of NEM. These are very basic points, and you really need to be able to understand them before you can hope to understand the anything further. Nil Einne (talk) 13:11, 5 February 2018 (UTC)[reply]

Brussels Sprouts Seeds

edit

Where on the Brussel Sprout plant do the seeds get produced? Are the brussel sprouts we eat the seeds? 185.165.168.117 (talk) 18:32, 30 January 2018 (UTC)[reply]

Can just answer here. Brussel Sprouts are simply entire immature miniature cabbages, eaten whole or cut in half or quarter depending on size. They have not yet reached the age of maturity at which they would send up a flower spike (see the cabbage article), so they have not yet developed seeds. That's why they are "sprouts"--they are immature. μηδείς (talk) 18:55, 30 January 2018 (UTC)[reply]
Rubbish. Not immature cabbages at all. Axillary buds which grow on the stems of a different plant within the cabbage family. There is a photo here [3] of Brussels sprout plants in flower. The seeds are very small - like all Brassica seeds. Wymspen (talk) 21:27, 2 February 2018 (UTC)[reply]
It's not a different plant in the same family (biology). It's a different cultivar within the same species, Brassica oleracea (which to be fair does include other things people don't usually think of as cabbage, for example broccoli).
Just the same, Medeis is basically correct here, I think. --Trovatore (talk) 19:14, 5 February 2018 (UTC)[reply]
But what do Brussels sprouts have to do with computing? Basemetal 05:28, 6 February 2018 (UTC)[reply]