Inleiding
Tijdens het computergebruik van alledag komt een gebruiker continu in aanraking met wachtwoorden. Een wachtwoord om de computer te bedienen, een wachtwoord voor het ophalen van e-mails, een wachtwoord voor internetbankieren… Gelukkig bieden de meeste programma's een mogelijkheid om het ingevoerde wachtwoord te onthouden, en zo het telkens opnieuw invoeren te vermijden.
Een gebruiker zou er vanuit gemakzucht voor kunnen kiezen om bij al deze programma's, accounts en systemen dan maar hetzelfde of een licht afwijkend wachtwoord te gebruiken. Dit is echter funest voor de veiligheid - één gekraakt wachtwood zou betekenen dat alle anderen ook gevaar lopen.
Wachtwoordbeheer
Als het dan zo verstandig is, om verschillende en liefst lange en complexe wachtwoorden te gebruiken, hoe is dit dan nog gebruiksvriendelijk te realiseren? Met een wachtwoordbeheer applicatie. Het is een programma dat alle verschillende wachtwoorden onthoudt in een database, en deze na invoer van slechts één wachtwoord toegankelijk maakt.
KeePass
Er zijn talloze programma's en diensten beschikbaar om een gebruiker dit werk uit handen te nemen. Voor mij waren de volgende eigenschappen van bepalend belang:
- beschikbaarheid voor GNU/Linux, Android, Windows
- toegankelijkheid voor schermlezers
Ik koos voor KeePass, een open source applicatie die inderdaad voor meerdere platformen beschikbaar is. Ten tijde van mijn eerste stappen met KeePass was versie 1.x actueel. Onder GNU/Linux kon ik gebruik maken van KeePassX, een grafisch programma dat de wachtwoorddatabase kan beheren en voorziet in globale sneltoetsen om makkelijk te kunnen inloggen.
Toen kwam versie 2.x van het KeePass-formaat, en kon KeePassX daar niet (meer) mee overweg. Ik moest op zoek naar een alternatief, maar wilde wel bij KeePass blijven. Ik experimenteerde met KeePass2, de officiële opvolger van KeePass. De GNU/Linux-versie bleek gebouwd te zijn met het Mono-framework, dat van huis uit onder GNU/Linux (nog) niet toegankelijk is. Mijn schermlezer bleef stil en ik zocht verder.
KPCLI
Uiteindelijk kwam ik terecht bij kpcli
, een commandline programma dat via
de terminal mijn wachtwoorden kan beheren en naadloos samenwerkt met Orca,
mijn schermlezer. Het kan overweg met zowel KeePass-bestanden van versie
1.x als 2.x en biedt de mogelijkheid om naar het klembord te kopiëren. Dit
laatste was echter nog wel een uitdaging, toen ik niet lang geleden mijn
besturingssysteem opnieuw installeerde.
XClip
Met het commando xp
kopiëert kpcli
het aangegeven wachtwoord naar het
klembord. Welk klembord? Zijn er meerdere klemborden, dan? Onder GNU/Linux'
grafische omgeving X11
wel. Het onderdeel van kpcli
dat de daadwerkelijke
interactie met de klemborden afhandelt is XClip
, een in Perl geschreven
programma voor werken met klemborden onder X11
.
De wachtwoorden van kpcli
bleken standaard naar het primary
klembord van X
te worden gekopiëerd. Het gekopiëerde is daarna met behulp van een klik op de
middelste muisknop te plakken. Maar dat is niet wat ik gewend ben als
slechtziende computergebruiker. Ik ben volledig getraind op Ctrl +
V en Ctrl + Shift + V.
Open source
Dankzij het feit dat de broncode van XClip
gewoon is in te zien, ging ik in
perl5/lib/perl5/Clipboard/XClip.pm
op zoek naar de plek waar het te gebruiken
klembord werd geselecteerd. En waarempel, ergens rond regel 33 vond ik
onderstaand commentaar met bijbehorende definitie:
# This ordering isn't officially verified, but so far seems to work the best:
sub all_selections { qw(primary buffer clipboard secondary) }
sub favorite_selection { my $self = shift; ($self->all_selections)[0] }
# ...
Ik herkende de keuze van item 0
uit een array, lees het eerste item uit de
lijst - in dit geval primary
. Ik veranderde het naar item 2
, het derde item,
lees clipboard
:
# This ordering isn't officially verified, but so far seems to work the best:
# Preferred clipboard set to 'clipboard' instead of 'primary'
sub all_selections { qw(primary buffer clipboard secondary) }
sub favorite_selection { my $self = shift; ($self->all_selections)[2] }
# ...
Vanaf dat moment verschenen de wachtwoorden, gebruikersnamen en URLs van kpcli
op het 'gewone' klembord van X
en kon ik naar hartelust met Ctrl +
V en Ctrl + Shift + V werken.