The bitcoin mining arms race

Bitcoin is in the press a lot these days. Nobel Laureate Paul Krugman thinks it’s antisocial (and get’s it all wrong). Be that as it may, on the technical side interesting things are happening too.

Let me start with a bit of introduction: As you may know, bitcoins are generated through mining, which is the process of adding new blocks to the blockchain. This in turn, consists of taking a bunch of transactions, adding salt, hashing the result, and see if the hash starts with a lot of zeros. If it does, you get some coins and the transactions are validated.  (I’m simplifying a little.)  Since the hash almost never starts with many zeros, you have to try with many many different amounts of salt. In the news this is often called “solving difficult mathematical problems”, which is ridiculous. In any case, people compete for finding a hash with many zeros in the beginning and the difficulty of the hashing problem is adjusted regularly so that the number of found blocks per unit of time is approximately one per 10 minutes. Bitcoins can be pretty valuable, especially when there is a bubble. So the more valuable, the more people will start generating lots of hashes. Since the total number of bitcoins generated by mining is fixed (the difficulty adjusts itself), this means that the cake is shared among all participants of the hash lottery. The number of tickets you own is your hashrate.  Let me say this once more: Your revenue from mining is proportional to your share of the total hash rate of the network.

For example, let’s assume the only people hashing are you and I and we both hash with our CPUs (which is slow and energy inefficient). One day I come up with the idea to hash with my GPU bringing up my hash rate by a factor of 100 (at better energy efficiency). Now your hashing is basically pointless, you may es well stop doing it, or start hashing with your GPU as well. So after we both upgraded, we spent a lot of money, waste more energy, and the hashrate is a lot higher. Otherwise everything is the same, the higher hash rate is compensated by the adjusted difficulty. Game theoretically this  is nothing but the the good old prisoners dilemma or, as the title says it, an arms race.

In the history of bitcoin mining there have been a number of disruptive technological changes to hashing (each bringing the hash rate up a factor of about 100), and very soon the majority of hashing will be done by integrated circuits (specialized hardware).  If you hash with your GPU, you are not in the race anymore.

This is very undemocratic, but not  the anti-social that Krugman is referring to. (He didn’t do his homework, because he thinks he can get away with repeating that bitcoin is drug money.)  The original idea that everybody can mine bitcoin is not valid anymore. In fact, at this very moment, the hash rate of the bitcoin network is focussing sharply on those few that have specialized ASIC hardware. What can be done about this? Nothing probably. There is a variant of bitcoin called litecoin which uses the scrypt hash. They claim that it is more memory intensive and will therefore be mined on CPUs and GPUs only.  I think this is bogus. As soon as litecoin becomes more valuable, somebody will make specialized hardware. If we can make special hardware to play chess, then we can also make special hardware for scrypt hashing. As you can imagine, the fear of not being the first brings out the best in humans. An ebay search for bitcoin mining devices is instructive. For instance here somebody is offering 4300 Euros for an early pre-order(!) of a device that has been delayed over and over again (shipping date was October last year).

In any case, all this is about the mining business being concentrated in the hands of a (comparably) few who can get to this specialized hardware. Making the money in your wallet is also in the hands of a few (whom you did not elect directly, or did you?), so this may not be a threat to using bitcoin per se. If nobody get’s close to 51% of the hash rate (which would basically allow stealing bitcoin), things should be fine. Some people will get very rich, just because they were lucky and moved quickly, but that’s the same in the real world. I’m curious about the future of bitcoin.  Maybe it is possible to break the paypal/VISA syndicate using the public decentralized approach? To try it, I’ve set up a donations address for this page and removed all the Google ads. Let’s see if it ever sees a deposit.

No more ads (here)

Hi.  For your viewing pleasure I removed all the Google Advertisement from the page (you should all have an AdBlocker anyway…). Instead, from now on I accept Bitcoin donations under

13hXk95wmpHmqFb9wrUGdKHJ5qiKcycGT1

Any amount helps running my educational expenses.

Owncloud and the clientsync folder misconception

Owncloud seems to have a lot of traction lately. There are some rough edges, but I’m happily using it (without protective gloves now). There is one thing that confuses users migrating from commercial providers like Dropbox: When setting up everything to the default settings, the local ownCloud folder gets synced to a special ‘clientsync’ folder on the server (instead of the root folder). I was also shortly confused by this. For instance my phone uploads every photo to a special folder on my owncloud, and if I don’t sync the root folder on the cloud, then how should the pictures migrate automatically to my laptop?

The solution is very simple: You have to think out of the (Drop)box! Why on earth should there only be one magic folder that is synced to the cloud? Dropbox forced this on us, but it is not necessary. With owncloud you just set up an arbitrary mapping of remote and local folders. So my instantly uploaded photos are synced somewhere to my local photo hierarchy, pdf files to read go in their little folder and so on.  Everything sits on my file system exactly where it belongs, and some things get mirrored in the clouds. With Dropbox everybody seriously using it ended up having a second home directory in the Dropbox folder, which is stupid. Don’t be stupid.

Gentoo on a Strato VServer

Recently I got around to installing a new Strato VServer of the medium powerful sort. Instead of bothering with Ubuntu, I wanted Gentoo. Strato (like many other virtual hosters) uses Virtuozzo/OpenVZ and after a few glitches the installation was relatively painless. Strato provides a recovery system which mounts the disk of the virtual server in some directory so that you can just go there and replace all the files with a Gentoo stage3. Network configuration can be a bit tricky, but since you can always go back to recovery system and check logs it is not undoable either. The most irritating glitch was that before you can start, you have to replace the preinstalled Ubuntu by CentOS as this seems to be the only way to reconfigure the Virtuozzo container to actually call /sbin/init. Another small problem is that booting will fail because udev is trying to mount /dev which is already mounted so it needs to be removed from the boot process. Anyway, there were no serious barriers and the server was up and running in less than 2 hours.

There are by now a few outdated guides around on the Internet, so I decided to update the only one I could get access to: Virtuozzo Guest install (in German). To my knowledge this is a correct up-to-date guide now. Unfortunately it is only available in German for now, but isn’t that a great chance to get to know a new language?

An interesting observation is that Strato is apparently running enough private virtual “teamspeak” servers now that the Asian army of ssh login-tries focusses on that too. The attacks began immediately when the server was online. Here’s the small statistics for the first 48 hours: There were 2476 ssh login attempts and the top three are

  1. root (1017)
  2. teamspeak (631)
  3. ftp (77)

So people out there, make sure you don’t allow ssh-login by password at all!

 

Don’t RTFM (on macs)

The other day I tried to figure out where on Kai’s Mac to find the personal dictionary of aspell. I tried reading the f***ing manual, but usually on Macs this does not help (it is all intuitive!). Also here, I found several locations where it should be, but they are all irrelevant (and so is the customization variable). The engineering solution was to save a unique word like “letsbefriends” in the dictionary and use ‘grep -r’ to find the dictionary.

The internet removed the middle man. Really?

I work in a slightly remotely located institute up a hill. The lunch options there are pretty scarce, but proximity of the silicon valley implies that there must be a web-based solution for this problem. The institute set up a lunch-order system: They made a website (or probably some outside company was hired to create it). Each day the institute will order food from a local restaurant and on the site you can choose from their menu. Payment is organized through PayPal. So here is what happens if I order lunch: After paying on the site, paypal charges my credit card so they get $6-10 from VISA who charges my bank. Now since I don’t like those super annoying bonus programs, I signed up for a credit card which donates half of the bank income a non-profit called utopia which in turn donates half of its returns for reforestation in the Sahel. That’s on my end of the money chain. On the other end, PayPal pays the institute which then pays company that delivers the food which finally pays the restaurant. In total there are 8 parties involved in the monetary transactions to get a $6 lunch (restaurant, delivery service, institute, PayPal, VISA, my bank, Utopia, reforestation project) Aren’t we living in great times?

Filterbubbleupdate

Neu Entdeckt: Google’s SEO ist sich dem Filterbubbleproblem bewusst und bringt einige ziemlich gute Argumente vor.  Ausserdem entdeckt: Die “verbatim” Suchoption deaktiviert mit einem einfachen Click alle Personalisierungsfeatures, …aber Facebook ist immer noch evil :)

Filterbubblenotizen

Ich habe “The Filter Bubble” von Eli Pariser gelesen (und sogar schon zwei Wochen darüber nachgedacht).  Das Buch ist wirklich nicht schlecht (zumindest in der Sachbuch-zu-aktuellem-Thema Liga).  Ein paar Sachen die mir in Erinnerung geblieben sind und hier notiert werden damit sie das auch noch ein wenig bleiben.

  • Das Buch verzichtet fast vollständig auf die guten alten “deutschen” Privacy Argumente.  Diese Diskussion läuft ja immer ab a la: Wenn du etwas aufgibst (privacy) bekommst du etwas tolles (gratis Service).  Die Argumentation im Buch ist erfrischend anders: Das was du da gratis bekommst ist gar nicht so toll.  Es könnte, wenn man den Gedanken zu Ende denkt sogar schaden, da es deine Sichtweise einschränkt.
  • Fundamental attribution fallacy: Dieser psychologische Effekt ist etwas tricky.  Im Prinzip ist die Beobachtung, dass Menschen bei der Erklärung von beobachtetem Verhalten Anderer die Beobachtung eher charakterlichen Eigenschaften als situativen Eigenschaften zuschreiben.  Wenn Alice Bob an einer Treppenstufe stolpern sieht, wird sie Bob eher für ungeschickt halten, als wenn sie selbst stolpert (und das der unebenen Stufe zuschreibt).  Algorithmische Analysen des Users machen den gleichen Fehler.  Wenn ein Algorithmus von meinem Klickverhalten auf meinen Charakter, meine Persönlichkeit schließt muss die situative Komponente ausgeblendet bleiben.  Ein großer Teil davon (meine Stimmung, meine Müdigkeit, wer noch im Raum ist, etc.) steht überhaupt nicht zur Verfügung.  Das Abbild wird immer einen Attributionsfehler tragen.
  • Google als neuer Gatekeeper: Wenn sie sagen “We’re giving you the most relevant information,” ist das völlig undefiniert. Ist es für jemanden mit einer festen Meinung zu einem Thema relevanter mehr von dieser Information zu bekommen, oder gegensätzliche Information.  Wer soll das entscheiden und wo beginnt der Paternalismus?
  • Die Idee Filterung durch die Peergruppe ist eingebaut in Google’s Zukunftsvision. Google+ Circles sind eine weitere Filterbubbleschicht. (Diese Idee ist eigentlich von hier)
  • Google ist wenigstens semi-öffentlich. Schonmal von Acxiom gehört?  Die sammeln auch Daten, verknüpfen Sie, verkaufen Sie, und sind nicht dem öffentlichen Druck einer prominenten Firma wie Google ausgesetzt.

Dieses Buch ist voller interessanter Ideen die zum Weiterdenken und Diskutieren anregen.  Sehr zu empfehlen.

Data liberation

Today I downloaded all my latitude data from Google (and afterwards requested deletion).  When you Google for how to do this, you run into a particularly nasty filterbubble: Overexposure with a wrong solution. There are tons of pages coming up that tell you the obvious way to do it via the ‘Export’ button in the web interface. Now that doesn’t really work (anymore?). It just gives you thirty days at a time and the interface is slow and clumsy. (So much for Google’s commitment to data liberation!). As far as I can tell, the obvious one-click-download-all button does not exist. Funnily, the solution was quite simple: The export link (for a single day) contains the unix-times and looks as follows:

https://www.google.com/latitude/b/0/apps/history/kml?startTime=1331334000000&endTime=1331420400000

As startTime and endTime you can plug in unix-epoch dates which you can get with ‘date’ like so:

date '+%s' -d "2 years ago"

Google still fiddles with this somehow because “2 years ago” was interpreted as all the history since the beginning of the epoch (which gave me the desired result anyway). After this I deleted my location history online which is also non-trivial. The delete-all button also only appears if you select a day for which you have a location history. Deleting this data is also not available through your account dashboard. This all is part of my new web-hygiene: From now on I only surf (and search!) when being logged out of all tracking websites like facebook, Google, … I do the social networking in a separate browser, in fact. A pretty easy and convenient implementation of ‘do-not-track’ and more importantly ‘do-not-personalize’.

In principle I like the idea of location tracking as part of life-statistics. I just don’t want to upload it to Google in real-time. Couldn’t my phone just track locations? Let me know if there’s an app for that. (I use cyanogen, so I don’t benefit from the great features of provider delivered customer tracking via CarrierIQ) Finally, according to Google’s estimate I travelled 59,699 miles in the last year (phew!).

The filter bubble

Sometimes you find great stuff by accident. I remember a documentary on the power of Google that I saw on a flight, unable to sleep and  having watched everything else remotely interesting. The documentary, made around 2005, was not very good. I don’t even remember its full name, but it featured an interview with some guy whose name I also forgot. He offered a truly new perspective on personalized search. I vividly remember what he said about the recommendation system on amazon: “It makes you more like you are.” Since then I’ve been thinking about this, for instance when reading tante’s datenschutzkritische defense of personalized search. Via Sebastian Spaeth‘s blog I now learned that this is all long known as the filter bubble, advertised by Eli Pariser who has already published a book with the same title. What I have not found are practical ways out of this danger.