LessPass - de wachtwoordbeheerder die geen wachtwoorden onthoudt

 Het open source programma LessPass is een wachtwoordbeheerder met een speciale aanpak. In plaats van wachtwoorden in een versleuteld bestand of in de cloud op te slaan, berekent LessPass ze telkens als je ze nodig hebt. Daardoor zijn je wachtwoorden overal beschikbaar zonder dat je ze hoeft te synchroniseren.

 Als je je wachtwoorden op al je apparaten beschikbaar wilt hebben, moet je normaal gesproken die wachtwoorden op al je apparaten synchroniseren. Je draait dan óf een wachtwoordbeheerder die in de cloud werkt (zoals LastPass) óf je gebruikt software die je wachtwoorden op je eigen computer opslaat (zoals KeePassX). Je zorgt dan zelf dat je de wachtwoorddatabase synchroniseert tussen al je apparaten. Een andere optie is om je wachtwoorden op te slaan op een apparaatje dat je overal mee naartoe neemt, zoals de Mooltipass. Dit zijn allemaal variaties die hetzelfde doel hebben: jouw wachtwoordlijst synchroniseren tussen je apparaten.

 

Bereken je wachtwoorden

Er is echter nog een andere manier, waarbij je geen wachtwoordlijst hoeft te synchroniseren of bij je te dragen. In plaats van je wachtwoorden op te slaan, bereken je die wachtwoorden. Dat is de aanpak van LessPass. Lesspass omschrijft zichzelf als een "stateless password manager".

LessPass berekent een wachtwoord voor een website op basis van vier parameters: een login, de website, je hoofdwachtwoord en eventuele opties. Op die manier genereert het programma een sterk wachtwoord voor de website. Als je dat wachtwoord dan voor de website hebt ingesteld en de volgende keer weer op de website wilt inloggen, vul je in LessPass weer de vier (vaak maar drie) parameters in. LessPass genereert dan weer hetzelfde wachtwoord, en daarmee log je in op de website.

Het maakt daarbij niet uit op welk apparaat je dat doet. Je slaat je wachtwoorden niet op, omdat je ze telkens opnieuw berekent. Die berekening gebeurt volledig offline, want er is geen toegang tot een online wachtwoord database nodig. Er bestaat een Android-app van LessPass, browserextensies voor Chrome en Firefox en een commandline toepassing en experimentele desktoptoepassing voor Linux. De broncode van LessPass is beschikbaar, zodat iedereen kan nakijken dat er geen achterpoortje in de software zijn.

 

Account aanmaken op een website

De meeste wachtwoorden die je dient in te voeren, zijn voor websites. De browserextensie van LessPass voor Firefox of Chrome is dan ook voor de meeste mensen hun belangrijkste interface met LessPass. Wij probeerden de extensie voor Firefox uit. Na installatie nestelt LessPass zich met een icoontje rechtsboven in Firefox.

Als je nu op een website een account aanmaakt of je wachtwoord verandert en een wachtwoord moet kiezen, druk je gewoon op het icoontje van LessPass. De website is al ingevuld. Dan hoef je alleen nog maar je login voor de website in te voeren en je master password. Dat master password is voor alle websites hetzelfde, dus denk hier een keer goed over na. Kies een wachtwoord dat lang genoeg en zo willekeurig mogelijk is, maar toch nog redelijk goed is te onthouden. Je zult dit wachtwoord namelijk bij gebruik van LessPass nog vaak moeten invoeren.

Daarna klik je op 'Generate', waarna in het tekstveld eronder het wachtwoord voor deze website komt, uiteraard afgeschermd met bolletjes. Klik op het knopje ervoor om het wachtwoord naar het klembord te kopiëren. Hierna plak je het in het tekstveld waar je bij het aanmaken van je account je wachtwoord kiest.

 

Inloggen

Nadat je account op de website is aangemaakt, log je op dezelfde manier in. Je klikt op het icoon van de LessPass-extensie. De website is al ingevuld, dus je hoeft alleen nog maar je login en je master password in te voeren. De browserextensie toont trouwens naast je master password drie gekleurde icoontjes. Dit is een visuele hulp waarmee je na het invoeren van je master password direct ziet of je het correct hebt ingevoerd, zonder dat LessPass het wachtwoord zelf prijsgeeft.

Na een klik op 'Generate' berekent LessPass het wachtwoord voor de website. Met een klik op het knopje ervoor kopieer je dit naar het klembord, om het daarna in het tekstveld te plakken waar je bij het inloggen je wachtwoord voor de website moet invoeren. Zo slaag je erin om op allerlei websites in te loggen zonder dat je een wachtwoorddatabase hoeft te synchroniseren.

 Je hebt in de browserextensie zeker al gezien dat er naast de Generate-knop een button staat met een icoontje van schuifregelaars. Klik je hierop, dan krijg je 'Advanced options' te zien, waarmee je instelt hoe LessPass je wachtwoorden standaard voor alle websites genereert. Zo stel je hier de lengte in en of je wachtwoorden kleine letters, hoofdletters, cijfers en speciale tekens mogen bevatten. Klik na het instellen van de opties op 'Save options'. De browserextensie maakt gebruik van lokale opslag om die opties op te slaan.

 

Opties synchroniseren

Sommige websites leggen beperkingen op de wachtwoorden op, zoals een maximumaantal tekens of ze aanvaarden alleen letters en cijfers in de wachtwoorden. Als je dan voor een heleboel websites verschillende wachtwoordopties wilt gebruiken, en daarmee ook op meerdere apparaten wilt inloggen, heb je nog altijd een manier nodig om die opties te synchroniseren. Uiteraard wil je al die opties niet onthouden, want dan heb je één probleem (veel wachtwoorden onthouden) alleen maar vervangen door een ander probleem (veel opties onthouden). LessPass biedt je daarom de mogelijkheid om de wachtwoordopties voor al je websites te synchroniseren via hun server.

Klik daarvoor in de browserextensie op het icoontje rechtsboven. Als server staat https://lesspass.com ingevuld; laat dit staan. Vul je e-mailadres in en een masterwachtwoord en klik op "Encrypt my master password". Klik tot slot op 'Register' om je account bij LessPass.com te registreren.

Daarna kun je wachtwoorden voor websites berekenen. Als je opties hebt veranderd, klik je bovenaan rechts op het save-icoontje om de opties op te slaan op de LessPass server. Dit is ook handig wanneer je je wachtwoord voor een website wilt veranderen. Dan tel je één bij de Counter op, waardoor LessPass een volledig ander wachtwoord genereert.

 

Je eigen LessPass-database

We begonnen dit artikel met de uitspraak dat we met LessPass geen clouddienst nodig hadden, dus we gaan het synchroniseren van opties nu anders aanpakken dan met behulp van de servers van LessPass. Het is immers mogelijk om een LessPass-database op je eigen server te draaien.

LessPass maakt daarvoor gebruik van Docker. Installeer eerst de pakketten docker en docker-compose op je server. Voer dan het installatieprogramma uit met:

 

bash <(curl -s https://raw.githubusercontent.com/lesspass/lesspass/master/lesspass.sh) [DOMAIN]

 

Hierbij voer je voor [DOMAIN] de domeinnaam van je server in. Het installatiescript downloadt dan een Docker container en installeert die, zodat die op je domein draait.

Voer daarna de instellingen van je mailserver in, zodat de LessPass-databaseserver je e-mails kan sturen als je je wachtwoord niet meer weet en dat wilt resetten. Vul daarvoor de volgende regels in het bestand ~/LessPass/.env in:

 

DEFAULT_FROM_EMAIL="LessPass" <Dit e-mailadres wordt beveiligd tegen spambots. JavaScript dient ingeschakeld te zijn om het te bekijken. >

EMAIL_HOST=...

EMAIL_HOST_USER=...

EMAIL_HOST_PASSWORD=...

EMAIL_PORT=...

EMAIL_USE_TLS=1

 

Daarna stel je in de browserextensie als server je eigen domeinnaam in in plaats van https://lesspass.com in. De rest werkt vervolgens zoals in de vorige sectie.

 

Mobiele app

Ook op je Android-smartphone heb je toegang tot al je wachtwoorden. Installeer de app van LessPass op je telefoon en open ze. De interface is identiek aan die van de browserextensie: je vult de website, de login en je master password in en drukt op 'Generate'. Het verschil is dat het genereren van de wachtwoorden op je telefoon wel wat langer duurt dan op een pc. Er staat ook een delen-knop naast het gegenereerde wachtwoord om dit met andere apps te delen.

Net zoals in de browserextensie kun je hier de geavanceerde opties openen en lokaal of op een server (die van LessPass of van jezelf) opslaan. Maar al met al is de app nogal omslachtig. De meeste wachtwoorden die je op je telefoon nodig hebt, zijn immers van websites. En dan moet je telkens tussen de webbrowser en de app van LessPass schakelen om in te loggen.

 

Op de commandline

Ook aan de liefhebbers van de commandline is gedacht: er is een Node.js-commandline programma voor LessPass. Dat installeer je zo:

 

sudo npm install --global lesspass-cli

 

Installeer indien nodig eerst npm als je de Node.js package manager nog niet hebt. Daarna bekijk je de mogelijkheden met lesspass --help. De eenvoudigste manier om een wachtwoord te genereren, is als volgt:

 

lesspass http://www.example.com/ gebruikersnaam

 

Het programma vraagt dan je master password en geeft het berekende wachtwoord als uitvoer. Wil je het wachtwoord niet in de uitvoer zien, maar rechtstreeks in het klembord? Gebruik dan de optie -C.

Specifiekere opties om wachtwoorden te genereren, zijn er ook. Je hebt dezelfde mogelijkheden als in de browserextensie. De uitvoer van lesspass --help toont je de opties. Wil je bijvoorbeeld een wachtwoord van 20 tekens en met counter 2, dan voeg je de opties -L20 -c2 toe. Het opslaan of synchroniseren van de opties voor de wachtwoorden is helaas nog niet mogelijk in de commandline client.

 

Op de desktop

LessPass heeft ook een experimentele desktoptoepassing, maar de ontwikkelaars promoten dit nog niet op hun eigen website. Download de broncode van GitHub:

 

git clone https://github.com/lesspass/desktop.git

 

Installeer daarna eerst enkele benodigde pakketten:

 

sudo npm install gulp electron electron-packager

 

Ga daarna naar de directory van het project:

 

cd desktop

 

Vervang in het bestand package.json de naam electron-prebuilt in electron. Bouw daarna de code:

 

npm run build:linux

 

En start het programma daarna met:

 

npm start

 

Bij de redactiesluiting bleek het programma helaas niet bruikbaar onder Linux Mint 18.

 

Conclusie

LessPass heeft een verfrissende aanpak onder de wachtwoordbeheerders. Het feit dat je geen wachtwoorden opslaat, maar berekent, heeft heel wat voordelen. Zo kun je eenvoudig overal dezelfde wachtwoorden gebruiken zonder dat je ze hoeft te synchroniseren. Dat werkt ook offline. Bovendien werkt dezelfde extensie of app voor meerdere gebruikers: iedereen geeft zijn eigen login en hoofdwachtwoord in, waarna het juiste wachtwoord wordt gegenereerd.

We begonnen onze verkenning van LessPass dan ook met veel enthousiasme, omdat het zo'n totaal andere aanpak is dan andere wachtwoordbeheerders. Hoewel het in theorie heel interessant is en het project al zijn code ook openbaart, vinden we het momenteel toch niet handig genoeg om in de praktijk te gebruiken.

Zowel de browserextensie als de mobiele app werken niet erg handig en de (toegegeven, experimentele) desktoptoepassing werkt nog niet. De synchronisatie van de wachtwoordopties met een server, al dan niet van jezelf, doet ook wat omslachtig aan. Als je die toch nodig hebt, omdat één van de websites waar je een account hebt, speciale wachtwoordvereisten heeft, dan kun je net zo goed de wachtwoorden zelf synchroniseren. Er is bovendien één belangrijk nadeel: als je je hoofdwachtwoord verandert (bijvoorbeeld omdat iemand het gezien heeft) moet je al je wachtwoorden veranderen...

Kortom, LessPass is een goed idee, maar de uitwerking laat nog wat te wensen over. Maar zelfs al zou de software perfect zijn, dan nog valt de hele opzet in duigen, zodra je een wachtwoord wilt opslaan bij een website met afwijkende wachtwoordbeperkingen. In situaties zonder zo'n spelbreker is LessPass wel een mooie oplossing.

 

 

Master Password

Een vergelijkbaar project als LessPass is Master Password (https://ssl.masterpasswordapp.com/). Het is eveneens open source en het werkt op dezelfde manier, maar dan met andere algoritmes. Master Password heeft geen browserextensies, maar focust zich op het desktopprogramma, mobiele apps en een commandline programma. Master Password is bovendien een hybride wachtwoordbeheerder: als je verplicht bent om specifieke wachtwoorden te gebruiken (bijvoorbeeld omdat je ze van je baas moet delen met collega's, ook al is dat superonveilig), kan Master Password deze lokaal opslaan.

 

 

NEDLINUX FORUM

Het nederlandse linuxforum
Voor beginners en pro’s

 

 

 

 

E-mailadres



 

 

Nieuwste editie:

Linuxmag op Facebook

@linuxmagnl op Twitter

linuxmagNL De meeste (server)software onder Linux configureer je via tekstbestanden. Een goede kennis van commando's om de tek… https://t.co/n8KNTWZJQN
6hreplyretweetfavorite
linuxmagNL @wligtenberg Beste Willem, wij hebben even teruggekeken met de redactie en hebben zo snel geen artikel kunnen vinde… https://t.co/tVf7fo1H82
7hreplyretweetfavorite
linuxmagNL In principe is het pdf-formaat niet bedoeld om verder te bewerken. Meestal gebruik je een pdf export vanuit je teks… https://t.co/2mySLSMguZ