What I install on a freshly set up Linux

I’ve been asked by a lot of people what the first things I install after a fresh setup are.

Recently, my filesystem (NILFS2) went amok. I really liked the idea of continuous snapshots so I can rollback if I do anything stupid. However, somehow the garbage collector didn’t delete old stuff (which has happened once or twice in the past), my / filesystem ran full, and the GC didn’t run at all anymore. So, yep, I had no way of getting some space free.

So I did a fresh setup, trying out some less experimental filesystem – btrfs.

So here we go, here was what I installed after some hours of use:

Continue reading

I love free software!

Today, it’s not only Valentine’s day, it’s also “I love free software” day:I love Free Software!

Chances are you are already using free software, maybe without even knowing. Happing to use Firefox? Or Gimp maybe? KeePass? Pidgin? Limewire? Vuze? Thunderbird? VLC? Open/Libreoffice? Audacity? Inkscape? Filezilla? Notepad++? Or even Ubuntu or some other Linux? – They are all opensource, and most of them are free software.

Software is like sex; it’s better when it’s free.

– Linus Torvalds

Why should software be free?”, you might ask? Let me quickly explain some points why avoid everything closed-source if I can:

  • Control - I want to have the control over my computer and my software, I don’t want arbitrary companies to be able to decide what their software does behind my back. With things like secure restricted boot companies like Microsoft are trying to gain control over the hardware you own and force you to use their software.
  • Transparency – If I’m unsure if a tool is secure or behaves they way I’d like it to, I can read its source code. I’ve done so in the past.
  • Curiousity – I can read source, and learn from it. I can see how something has been done.
  • Contribution – If I miss some feature or hit a bug, I can report the bug in an open bugtracker or contribute sourcecode (patches) to the project myself. I’m contributing a lot to herbstluftwm (the window manager I use) but also contributed smaller bits of code to numerous other projects.
  • Open Formats – For open formats, I can be sure I still can open them in 10 years. If I’m unable to run software to open the format, I can read the specification and implement it myself.
  • No financial pressure – often I find free software to be of a better quality than commercial one. Apart of the sometimes greater mass of people contributing, I think this is because there is usually no financial pressure behind a project, and there is much more love in it.
  • Power – you can not be arbitrarily restricted on how you use your software, or with which tools/formats you want it to work. It is yours.
  • Freedom to (not only) share – It’s completely legal and even encouraged to share the software with others. Behind each piece of free software, there is not only work, there is also an ideology – software should be free for everyone to use in every way they want. Not only like in free beer, but also like in freedom.
  • Security – Because code review can be done by everyone, security-critical software is more secure when it’s free. See Firefox vs. Internet Explorer.

All my software is free. I encourage you to do the same, you have nothing to lose.

Help to get rid of closed software – Write free software! Support the Free Software Foundation (or the FSFE if you’re in Europe)!

Share, contribute, fork, develop, use – in every way you want.

Lenovo, stop killing Thinkpad keyboards!

I love Lenovo, and I love my Thinkpad. Their keyboards are (were?) just perfect. I’ve seen people spending a lot of time modding Thinkpad laptop keyboards to use them with their computers. But now, it seems things are getting worse and worse.

Let me start with the tablet buttons first, since I’m a Tablet user. Let’s take a look at how the “evolution” looked over the years:

Overview of the different thinkpad tablet buttons

Overview of the different thinkpad tablet buttons

Left to right, oldest to newest.

The X61t had three buttons, as well as really nice direction keys. I’m sure they’re all very useful in the tablet mode. Also, everything relevant was displayed on the plenthora of LEDs, and of course you could control the LEDs from userspace for notifications and nice things like that.

The x201t, my first thinkpad lost the direction keys, but at least had four buttons and still all the LEDs.

The x220t which I have now only has two buttons left, and 3 LEDs facing the user. There is a sleep and a power LED on the other side. This might make sense for the sleep LED so you can know when it’s closed, but makes no sense whatsoever for the battery LED. I, like, totally want everyone except me to see the orange light when my battery is low, right?

For the x230t it seems they killed the bluetooth led. Oh well, it looks ugly, but I’m okay with that. I just don’t get it.

Now that this is over, let’s take a look at the evolution of the legendary keyboard. Between the x201 and the x220 not much changed. Esc and Delete got double-height, F-keys were shifted one to the right, the volume keys got bigger and easier to handle. That’s all fine, that actually was an improvement.

Thinkpad X220 keyboard

Now let’s see what Lenovo did for the x230 and all other new Thinkpad models (the W ones for example as well!):

Thinkpad x230 keyboard

I can’t speak about the precision keyboard itself and if it still feels that awesome, since I’ve not tested it yet. But let’s take a closer look at some of the giant fails with the keyboard layout:

Home/End keys on x230t

There are no Scroll Lock, Num Lock, Pause, Break and SysRq keys. If you wonder where Page Up/Down went, that’s going to follow in a second.

It seems you can use Fn+{B,S,C,P} (unlabelled) for Break, SysRq, Scroll Lock and Pause. I still find it disturbing…

Oh right, and there is A LOT of free space there. Because everyone needs free space instead of keys.

F-Keys on the x230

The F-Keys are not grouped into groups of four with a little bit of space in between, making it cumbersome to use them in the dark. Many Fn-functions (including the media keys on the arrow keys) are gone.

Print screen key on x230t

The menu key was removed and replaced by a Print Screen key. Because everyone needs Print Screen in a location they can easily reach by just moving one finger, RIGHT? I used the menu key as a compose key, good there’s xmodmap and I don’t need a Printscreen key.

Arrow keys on x230t

Now the thing which annoys me most: The Back/Forward keys are gone. FUCK YOU. These were perfect for switching workspaces in my window manager. Now there’s Page Up/Down there. AAAAAAARRRGGGH!

Since it seems impossible to switch the new keyboard with an old one, I’m not sure if my next laptop will really be a Thinkpad. And if so, I’ll xmodmap the hell out of it.

Oh right, one more thing: With the Thinkpad Helix they killed the dedicated Trackpoint buttons as well:

Trackpoint of the Thinkpad helix

And there are plans to kill Capslock as well… sigh

Why browser fingerprinting is a problem

You have persistent cookie storage turned off and you think you can’t be identified? You are so wrong.

I think I’ve seen it before, but I lately discovered PanOptiClick again. It’s a website where your browser fingerprint is compared to everyone else who used the website, and it tells you how unique that fingerprint is. You are encouraged to give it a try, since that makes their sample size bigger.

Your browser fingerprint consists of informations every website you visit knows about you:

  • Your user agent
  • Your HTTP_ACCEPT headers
  • Your browser plugins list, including versions (plugins like your PDF-Viewer or Java/Flash plugins, not browser extensions)
  • Your timezone, as reported by your browser
  • Your screen size and color depth
  • Your system font list, as reported by Flash and Java, which are presumably even ordered in inode walk order.
  • Whether cookies are enabled or not
  • A so-called supercookie test which seems to test localstorage

That’s quite a bit of information, right? This should rarely to never change, and quite possibly is unique to your computer:

Your browser fingerprint appears to be unique among the 2,622,016 tested so far.

Currently, we estimate that your browser has a fingerprint that conveys at least 21.32 bits of identifying information.

And that’s when I turn Javascript and Flash explicitely on, which I normally have blocked on my machine. If I let them blocked, it doesn’t even look that much better:

Within our dataset of several million visitors, only one in 262,202 browsers have the same fingerprint as yours.

Currently, we estimate that your browser has a fingerprint that conveys 18 bits of identifying information.

This is also not including the font list, because it somehow couldn’t be retrieved on my machine.

And shockingly, there would be more information which can be used to identify your browser, just take a look at BrowserSpy. There is also a nice paper by the EFF on the topic, but I’ve not taken a closer look at it yet.

So what can you do against browser fingerprinting? Turns out, nearly nothing. Unfortunately, there seems to be no Chrom{e,ium} addon which fakes/cleans/blocks this information (cough hint, hint cough). For Firefox, there is FireGloves, but that’s not actively developed anymore. Turning Javascript, Java and Flash off (e.g. with something like NoScript for Firefox or NotScripts for Chrome) helps a little bit, but not a great deal.

Then of course there is also evercookie which probably would be worth a blog post on it’s own, a more persistent, nearly undeleteable cookie.

Koss Porta Pro

Wheee, time for a new post! Hope you all had a nice Christmas and a happy new year!

Also, first of all: no, I’ve not been paid by anyone for writing this post. I’m just a fanboy :D

Today I want to give you a quick look at my favourite headphones since a few months, the Koss Porta Pros:

portapro

Yes, they look horrible. But they sound so damn awesome. They exist unmodified since 1984, the only thing which was changed since then is the plug which is now (depending on what model you get, it seems) sometimes straight instead of angled.

People even start modding them:


kramer

… they drill holes into the grills to get some more mids and highs out (the headphones are quite bassy)

Koss Porta Pro Cushion Mod

… they put different cushions and cans on them.

kabel

… they attach a $275+ cable to them. (Yes, really.)

crazy porta pro mod

… or they go completely crazy and do their own wood cans and leather cushion.


Since I also think they’re too open (e.g. you hear noises a lot, and other people hear your music) I tried to move them into the case of some other, full headphone, but after that they sounded horrible and I had to get me a new pair :-/

Other people say from the subjective sound quality they blew away their $350 Bose or their $200 Sennheiser.

Oh, right, price. You can get them for $35 (USA/Amazon) / EUR 25 (Germany/Amazon) / CHF 52 (Switzerland/Digitec). Cheap, right? On top of that, lifetime warranty included.

Oh, and just for fun:

graphCompare

My girlfriend switched from her Apple Buds to these after trying mine and loves them as well. A friend of mine and me did a blind comparison and we can tell a 128 kbit MP3 apart of a lossless FLAC with these.

By the way: Wonder what that weird screw on the earpiece is for? It seems to be a leftover of the ancient (1970) Pro4AA headphones which had a screw for broadcasters to attach a microphone. Kinda cute!

By the way #2: If you have Porta Pros and they start to have some weird rattling/clicking sound at some frequences, this might occur because of hairs on the membrane. Take the ear pads off and gently blow inside the holes and get all these little hairs out – that helped a lot for me!

Spambots are fun!

Just noticed I had posted this as a page instead of a post some while ago…

Nothing lengthy this time, just saw this in my pastebin:

One moment, please <a href=" spam-url ">spam link</a> thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you thank you

Please hold the line… your call is very important to us…

Well, THANKS TO YOU TOO!

Time, or lack thereof

Heya,

you might have noticed it got rather quiet here. Just wanted to let all you guys and gals know it probably will stay like that until Christmas or so. I’m currently having more exams than school days and also two school projects going on. I still can’t really tell where all the time I need for that is, but it certainly helps when I don’t spend the time blogging. Hey, I even temporarily stopped coding.

I have some great topics to blog about in my head, and I will do so as soon as I get a chance. If you check this website by hand, check again after Christmas. If you use an RSS-reader, just stay tuned.

~Florian

Hallo Orange, tschüss Sunrise!

Yep, another post in German. I guess the next one will be in English. :P


Die Story vom letzten Mal geht weiter, allerdings bisher weit positiver :) Man muss Sunrise lassen, dass die fristlose Kündigung relativ unkompliziert gelaufen ist. Mir wurde einige Tage später wieder angerufen, das mit der Kündigung sei in Ordnung, und es sei bei mir im Kundenkonto vermerkt, ich könne die Nummer ohne Gebühren transferieren. Ich hoffe nun nur noch, dass das mit der Rufnummernübernahme dann auch wirklich funktioniert, das steht momentan noch aus.

Nun ja, ich bin bei Orange gelandet. Es gab dabei viele gute, und einige wenige schlechte Erfahrungen. Dazu sei vielleicht noch gesagt, dass ich von Orange kein Geld oder so für den Blogpost bekomme :D

Erster Eindruck

Sunrise sagte mir also, dass ich kündigen “darf”, und ich ging am gleichen Tag noch in den Orange Shop in Winterthur, der netterweise sogar bis 21:00 offen hat.

Ich musste überhaupt nicht anstehen, und wurde sehr freundlich bedient. Als ich merkte, dass ich meine Postcard vergessen hatte, wurde mir sogar angeboten, dass mir die SIM-Karte ausnahmsweise geschenkt wird. Erste Klasse also erstmal.

Dann aber kam schon die erste grosse Ernüchterung: Ich wurde in eine niederige Bonitätsstufe eingeteilt. Ich kann mit gutem Gewissen sagen, dass ich noch nie mit irgendwelchen Betreibungen in Berührung gekommen bin, soweit ich weiss hab ich sogar noch nie eine kostenpflichtige Mahnung bekommen.

Nach ein bisschen Recherche wird so eine Bonitätsprüfung von verschiedenen externen Firmen ausgeführt, die Verfahren dahinter sind völlig intransparent, ich vermute, dass sie sogar auf reinen statistischen Wahrscheinlichkeiten beruhen (sowas wie “50% der Leute in dem Alter an dem Wohnort sind verschuldet, also muss der es auch sein!!1!”). Eine Infoseite des DRS3 zum Thema erklärt, wie man diese Leute dazu bringt, einem mehr Auskunft zu geben, das werde ich dann auch mal tun.

Naja, zurück zu Orange: Niemand konnte mir verraten, wieso das so sei, aber das sei halt jetzt so, und ich habe entweder ein halbes Jahr lang eine Kostenlimite von 300 CHF pro Monat (mir egal) und kein Roaming (mir definitiv nicht egal), oder ich soll ein Depot von 500 CHF hinterlegen, welches ich (hoffentlich) nach einem halben Jahr wieder bekomme. Ich scheine nicht der einzige mit diesem Problem zu sein.

Naja, nachdem ich – so als Lehrling (Azubi, für die Deutschen) – erstmal 500 CHF auftreiben konnte (danke, Mama! :D ) ging ich dann am nächsten Tag wieder in den Orange-Shop und schloss mein Abo ab. Das mit der gratis SIM erwähnte ich dann auch nochmals, und kriegte diese ohne Probleme dann trotzdem noch gratis.

Die Hotline

Ich entschied mich dafür, dass schon die provisorische Nummer aufgeschaltet werden soll, so lange die alte Nummer von Sunrise noch nicht portiert ist, da ich primär eigentlich eh nur die Internetverbindung brauche.

Als ich dann am nächsten Morgen (also nach rund 12 Stunden) immer noch kein Netz hatte, dachte ich, ich probiere doch mal die Orange Hotline aus, und frag nach, wie lange sowas eigentlich geht.

Ein super Pluspunkt in dieser Hinsicht! Die Hotline ist 24/7 bedient, ich musste keine Minute warten, und die Person am anderen Ende der Leitung war freundlich und meinte, dass das bis zu 24 Stunden dauern kann, hat dann auch nochmal nachgeguckt ob alles okay ist, und meinte, ich soll einfach noch ein paar Stunden warten, und mich sonst einfach nochmals melden. Ein paar Stunden später ging es dann auch tatsächlich.

Auch die Authentifizierung klappt deutlich einfacher als bei Sunrise: Entweder man ruft einfach von seiner Orange-Nummer aus an (alle Funktionen freigeschaltet), oder man gibt die Nummer und das Geburtsdatum ein (einige Funktionen freigeschaltet). Bei Sunrise lief das immer etwa nach dem Schema “Nummer eingeben -> warten -> Nummer nochmals vorlesen (wieso hab ich sie dann überhaupt eingegeben?!) -> Geburtsdatum vorsagen -> Adresse vorsagen -> Letzte Rechnungssumme oder Anzahl Produkte vortragen -> hach, endlich krieg ich Support” ab.

Die Community

Auf der Orange-Website hat es ein Forum in dem sich Orange-Kunden zu beliebigen Themen austauschen können. Da ich einige Rechtschreibfehler auf der Website gefunden hatte, habe ich einfach mal da einen Thread eröffnet und darauf hingewiesen. Ich scheine da ein bisschen ein Stein ins Rollen gebracht zu haben, da auf einmal alle Leute nach Rechtschreibefehlern auf der Website suchen :D

Die Fehler wurden inzwischen behoben, auch dafür ein dickes Plus, dass diese Firma in Sachen Social Media offensichtlich nicht ganz schläft.

Das Netz

Das wichtigste an einem Provider ist natürlich das Netz. Die landläufige Meinung dazu scheint zu sein, dass das Netz von Orange eher schlecht ist. Gemäss Orange bzw. Connect sei das Orange-Netz das beste Datennetz der Schweiz.

Ich bin soweit zufrieden, unterwegs im Zug merke ich keine grossen Unterschiede, an meinem Arbeitsort in Hittnau habe ich endlich 3G mit ca. 1 Mbit down und up. Bei Sunrise hatte ich EDGE, hab aber nur irgendwie 5 KB/s oder so durchgekriegt, sprich die Verbindung war relativ unbrauchbar.

Fazit

Wie ein Kollege so schön sagte – ob ein Provider wirklich gut ist, merkt man erst, wenn man mit ihm Probleme bekommt. Bis auf den Wehrmutstropfen mit dem Depot war ich eigentlich mit allem bisher mehr als zufrieden, und hoffe, dass das auch so bleibt.

Ich hoffe, das mit der Nummernportierung von Sunrise funktioniert auch noch, ohne dass ich dann doch noch zur Kasse gebeten werde.

Ausserdem muss ich mir noch überlegen, ob ich mich wegen Sunrise mal noch bei K-Tipp/Beobachter/20min/… melden soll. Ich will ja keinen “Rufmord” betreiben, aber das Tethering/VoIP-Verbot ohne die Leute zu benachrichtigen find ich dann doch unter aller Sau.

Sunrise, Tethering-Verbot und stillschweigende Vertragsänderungen

For everyone speaking English here: sorry, this blog post is in German only. It’s basically about the mobile provider Sunrise, and them forbidding tethering, even for contracts which are already running.


Seit einiger Zeit verbietet Sunrise Tethering sowie VoIP mit ihren Handyabos. Vor einigen Tagen ist nun auch mir diese Klausel in den “rechtlichen und allgemeinen Hinweisen” aufgefallen:

Mobiles Internet mit einem Mobilabo oder einer Zusatzoption ist auf Datenverbindungen ohne VoIP mit einem einzigen Mobiltelefon beschränkt ohne Nutzung mit daran angeschlossenen Geräten, Modems oder Geräten mit eingebautem Modem.

Auf gut Deutsch: Tethering verboten, VoIP verboten. Sofort kündigen wäre mir am liebsten gewesen, aber wegen dem Knebelvertrag kostet sowas irgendwie 500 CHF. Mein erster Schritt darauf war, folgende Anfrage an Sunrise zu stellen:

Als ich mich über die Sunrise Flats informiert habe, ist mir folgende Klausel aufgefallen:

[...]

Ich finde dies inakzeptabel, da ich selbst entscheiden will, was ich mit meiner mobilen Internetverbindung mache.

Ist diese Klausel bei meinem jetzt laufenden Abo ebenfalls aktiv? Ich wurde nie über eine entsprechende Vertragsänderung informiert. Meiner Meinung nach würde Sunrise bei einer Änderung bestehender Verträge auch gegen Ziffer 12 Absatz 2 der AGB verstossen.

Ich würde das Handyabo ausserdem gerne auf Vertragsende kündigen.

Die Antwort darauf – wohlgemerkt erst eine Woche später – sah so aus:

[...]

Sofern Ihr Gerät das VoIP unterstützt, können Sie dieses nutzen.

Da es sich hierbei aber um keine Dienstleistung von Sunrise handelt, können wir leider keinen Support anbieten.

Wenden Sie sich für weitere Fragen an den Gerätehersteller.

Bezug nehmend auf Ihre Frage betreffend der Kündigung haben wir Ihr Anliegen an die entsprechende Abteilung weitergeleitet.

[...]

Der für mich eigentlich wichtige Teil meiner Frage wurde einfach ignoriert. Von der Kündigung hörte ich die nächsten Tage auch nichts. Dann halt eben per Telefon.

Also angerufen, erstmal nochmals erwähnt, dass ich auf Vertragsende gerne kündigen würde. Die Frau am anderen Ende hat irgendwie nicht ganz begriffen wieso, jedenfalls hat sie mir angeboten, 200 CHF auf meine nächste Rechnung gutzuschreiben, falls ich die Kündigung zurückziehe. Danach hat sie mich gefragt, ob auch sonst nichts (z.B. eine Vergünstigung des DSLs zuhause) möglich wäre. Nein verdammt, ich will kündigen, wenn ich mein Handy nicht mehr als Hotspot nutzen kann, danke.

Auf meine Frage wie das nun aussehe mit dieser Klausel und meinem laufenden Abo wurde ich an den technischen Support weitergeleitet. Die Dame die ich da am Ohr hatte war (und ist) in der Angelegenheit sehr hilfsbereit, aber die erste Reaktion war diese:

Nein, bei Sunrise gibt es keine Regeln gegen Tethering, vielleicht gibt es sowas bei anderen Anbietern, aber nicht bei Sunrise

Ja klar!!11! Als ich ihr dann die Klausel nochmals vorgelesen hatte, und ihr erklärt habe, wo diese auf der Webseite von Sunrise zu finden ist, klärte sie die Sache mit ihrem Chef ab, und meldete sich einige Tage später wieder.

Sie entschuldigte sich, und sagte mir, dass das in der Tat so sei, und dass das bei allen Abos so sei.

Ja, cool, danke, und was ist jetzt mit meinem laufenden Abo? Irgendwie ging das schon wieder *hust* vergessen *hust* und sie musste dies abermals mit ihrem Chef abklären.

Heute habe ich nun die Rückmeldung bekommen: Die Sperre trifft auch auf mein laufendes Mobilabo zu, der Vertrag wurde stillschweigend geändert. Krass. Gucken wir doch erstmal kurz in die AGB von Sunrise:

Punkt 12:

Die Leistungsbeschreibungen können geändert werden, wenn dies aus triftigem Grund erforderlich ist, der Kunde hierdurch gegenüber der bei Vertragsschluss einbezogenen Leistungsbeschreibung objektiv nicht schlechtergestellt (z.B. Beibehaltung oder Verbesserung von Funktionalitäten) und von dieser nicht deutlich abgewichen wird. [...] [Die Änderungen] werden Kunden auf geeignetem Weg vor Inkrafttreten der Änderung mitgeteilt. [...] kann der Kunde innerhalb von drei Wochen nach Versand der Änderungsmitteilung schriftlich widersprechen. Unterlässt er dies, werden die Änderungen zum Zeitpunkt des Wirksamwerdens Vertragsbestandteil. Andernfalls hat der Kunde das Recht, den Vertrag auf den Zeitpunkt des Inkrafttretens der Änderung zu kündigen.
(meine Hervorhebung)

Ahja. Sunrise verstösst also gegen ihre eigene AGB.

Hab der am Telefon dann auch gleich gesagt, dass ich in diesem Fall gerne fristlos kündigen würde, ohne etwas dafür zu bezahlen, da sich der Vertrag geändert hat, ohne mir das mitzuteilen.

Nunja, mein Anliegen wird nun an die Kündigungsabteilung weitergeleitet, ich sei da aber auch nicht der erste, glaube sie.

Mal gucken, was dabei herauskommt. Und sonst gibts immer noch ombudscom.

The mail and password problem – and my solution

First of all, sorry it was so quiet here lately, had a bit of a busy time. But I can assure you, there’s plenty of stuff on my “to-blog”-list!

(and phew, this post will be long!)

Today I want to show you a (IMHO) clever solution to a few typical problems when creating online accounts.

Mails for online accounts

The first one is the problem of mail adresses for online accounts, even more so when you can’t be sure if your mail is going to get used for spam mails. My solution for that is simple: On every page I sign up (since I had the idea, that is), I use a dedicated email adress, in the form of example.com@the-compiler.org.

If you happen to be using GMail, there is a little known fact: you can simply append a + sign and any word to your username, and you still get the mail. So if you own johndoe@gmail.com, johndoe+spam@gmail.com or johndoe+mailinglists@gmail.com all arrives to you as well.

However, I solved this using Google Apps, Google’s “business service” thingy, which let’s you run GMail, Google Calendar and all that with your own domain. You really only need three things:

  • A free account at google apps (not the free trial, the free account which is hidden well)
  • A domain. I have mine at proplay and I really can suggest them since they’re cheap and good.
  • A DNS Server where you can add your own records. At proplay, you already get that bundled with the domain, if you get your domain without a nameserver, I can suggest Dyn

After you took some time to set it all up, log in to the Google Apps panel, navigate to Settings (on the top) -> Email (on the left) -> Catch-all address and enter your primary mail address there. From then on you get mails at anything@yourdomain.com!

Although google claims this could get you a lot of spam because bots try to bruteforce domain usernames and you get all that spam, I never had that problem.

Password management

Now the second problem: Managing your passwords. As there are companies where you might have an online account at which don’t care about security (cough Sony cough), it’s quite possible your password will get leaked (or already was) at some point. And even if only hashes are leaked, if they’re unsalted and you have a weak password it’s cracked as well.

Now how can you protect against that? You probably know: choosing a strong password, and (more important) using a different password for every site you sign up.

Now on how many sites do you have an account? A few dozen? A few hundreds? One thing is sure: You won’t be able to keep that many passwords in your mind. Now there are some solutions to that:

Storing them in your browser

About every browser has some way of storing passwords. That solution is not that bad, but it gets very inconvenient when you use different browsers or even different computers. Also, as soon as your harddisk crashes, you’re lost (except if you have a recent backup).

Storing them at an online service

You could, for example, use lastpass, probably the most popular online password storage. There are a number of problems with that approach though:

  • Your passwords are stored on a server which is not under your own control. In my opinion, this is not a favourable thing for any kind of data.
  • Attackers might get access to your (encrypted) passwords, like it maybe happened last year. They reacted in the best way they possibly could, even if there was no clear evidence any data was leaked, so I’m not going to blame them – still, it’s a potential risk
  • Last of all, you never know when a such a service might cease to exist.

Storing them in a password manager

Another way would be storing them in a password manager like KeePass, possibly storing the encrypted database on an online service like Wuala or Dropbox. At least the last drawback of storing passwords on an online service still exists, also it’s very inconvenient.

So now, let’s go to the (in my opinion) optimal way:

Calculating passwords

There is a really simple way, and I wonder why I never had the idea: You take a master password, append the page URL to that, generate a hash of it, and then use base64 on that. There is an algorithm which is (more or less) widely used for that purpose: supergenpass.

It’s dead simple: As soon as the URL or masterpassword changes, the generated password is totally different. With the same masterpassword and URL, you get the same generated password. The algorithm is not reversible, e.g. from the generated password there is no way to get to the master password.

To make it more convenient, there are tools/addons for a multitude of different clients. Here is what I use or have been using in the past:

Nearly all of these implementations also support a salt you can add in the settings, so even if a page or keylogger could sniff your master password, they can’t genarate the correct passwords unless they have the saved salt as well.

You can also choose the length of the genrated passwords. I went for 20 chars, but in retrospective I’d chose 10 or 15 since there are some websites which limit the maximum length of a password :( (also, if I’d implement it myself, I’d use SHA512 or so instead of MD5)

The passwords are all unique, long and random, but since they are not saved anywhere, there is no way someone can get a hold of them, and you can not lose them.

Perfect.

How do you manage these two problems? I’d like to hear your opinions in the comments!