Keybase lance sa messagerie chiffrée d'équipe, ses applications mobiles en déclaration à l'ANSSI

Keybase is not #IRC is not Slack 30
Accès libre
image dediée
Sécurité
Par
le mercredi 20 septembre 2017 à 10:27
David Legrand

Keybase continue son évolution, lentement, mais sûrement. Alors que ses applications mobiles font l'objet d'une déclaration à l'ANSSI, une gestion par équipe est désormais disponible. Elle peut aussi être utilisée pour créer des salons de discussion communautaires.

Keybase est un service pensé au départ comme un annuaire de clés GPG, permettant de certifier la possession de comptes tiers à travers une preuve cryptographique. Il a depuis muté pour devenir une solution de communication plus globale (voir notre analyse) avec une même stratégie : la transparence technique et des solutions multiplateformes/open source.

Début 2016, il ajoutait une première brique : l'échange de données. Là aussi, le chiffrement était au cœur du dispositif avec une volonté de garder un fonctionnement assez simple et transparent pour l'utilisateur. Cette année, nous avons eu droit à la mise en place du chat (voir notre guide), puis à des extensions Chrome et Firefox pour faciliter un premier contact.

Les applications mobiles en cours de déclaration à l'ANSSI

La société, qui ne chôme décidemment pas, a publié il y a quelques mois des applications pour Android et iOS permettant d'échanger avec vos contacts depuis un appareil mobile. Mais elles ne sont malheureusement pas disponibles en France.

Comme d'autres avant elle, elle doit faire face à la procédure de déclaration à l'ANSSI (voir notre analyse) qui retarde le processus d'au moins un bon mois, ce qui n'est pas le cas dans d'autres pays. Le processus a été lancé en août, il devrait donc être bouclé d'ici quelques semaines, avant la fin de l'année dans le pire des cas.

Keybase Teams is not Slack

La prochaine étape paraît assez logique : proposer un fonctionnement par équipe. Une solution qui permettra de gagner le monde de l'entreprise, sans doute une avancée importante du modèle économique de la société qui mise, pour rappel, sur un accès gratuit pour tous (avec 10 Go) mais une facturation au niveau de l'espace de stockage utilisé (plus tard).

Les applications ont été mis à jour sur les différentes plateformes afin de mettre en place un embryon de cette fonctionnalité. Souvent présentée, à tort, comme un concurrent de Slack, elle n'en reprend que certains codes graphiques comme l'explique le billet d'annonce, qui évoque aussi le cas de Discord.

On retrouve en effet sur la partie gauche de l'application dédiée aux conversations une liste d'utilisateurs et d'équipes (Teams) pouvant contenir plusieurs canaux (Big Teams). Une manière de faire que l'on utilise au moins depuis... IRC. Il n'y a par contre aucune intégration de services tiers, le sujet n'étant pour le moment même pas évoqué.

Sur la partie droite, vous pourrez développer une zone comprenant la liste des membres d'une équipe, gérer les notifications (aucune, sur une mention, toujours) ou quitter le canal en cours.

Chiffrement E2E, rôles et chaîne de signature

Dans la pratique, comment cela fonctionne-t-il ? Pour le moment, c'est assez basique puisque toute la gestion passe en ligne de commandes à quelques exceptions près : la création d'équipe, de canaux et bien entendu les conversations.

Keybase précise en effet que l'idée est de vous permettre de réserver vos noms d'équipe et de commencer à goûter à la fonctionnalité qui va évoluer de manière constante dans les prochains mois. La situation actuelle devrait durer encore un mois ou deux, avec une mise à jour des applications prévue chaque semaine.

Ainsi, un nom d'équipe ne peut être utilisé qu'une fois. Les plus rapides auront sans doute déjà occupé le terrain, et il sera intéressant de voir comment la société compte gérer des cas où une entité viendrait revendiquer son nom ou sa marque, comme cela a pu être le cas avec Twitter les premières années. 

Keybase TeamsKeybase Teams
Les prochaines évolutions de l'interface

Comme pour le reste de l'application, un chiffrement de bout en bout (E2E) est mis en place. Un espace de stockage partagé et chiffré est accessible à travers le répertoire team de votre lecteur créé par Keybase. Le nom d'une équipe peut être visible par tous, mais les détails sur sa composition et son contenu est accessible uniquement à ses membres.

L'ensemble se base sur une chaîne de signatures, chacun pouvant ajouter un tiers et lui attribuer un rôle s'il en a les droits.  Il en existe cinq : owner, admin, implicit admin, writer et reader. Notez que la différence introduite par l'implicit admin est qu'il est administrateur pour une équipe, mais pas directement pour une sous-équipe qui en est dérivée (nous en reparlerons plus loin). Seul le propriétaire peut supprimer une équipe. Tous les détails se trouvent par ici.

Voici les commandes de base à utiliser :

keybase team create treehouse
keybase team add-member treehouse --user=barb --role=admin
keybase team add-member treehouse --user=carter --role=writer

keybase chat create-channel uber 'hr-issues'
keybase chat join-channel fyre 'festival2018'
keybase chat list-channels equifax # spoiler: none found

Sous-équipes et demande d'accès

En plus des Teams et des Big Teams qui contiennent plusieurs canaux, il est possible de créer des sous-équipes qui se distinguent par la présence d'un point dans leur nom (keybase.design, keybase.marketing, keybase.help, etc.) et qui peuvent être renommées. Chacune peut avoir ses propres utilisateurs et rôles, des fichiers isolés, etc.

Elles ont un autre intérêt particulier : elles sont invisibles pour ceux qui n'en sont pas membre. Il est aussi impossible pour un utilisateur qui n'est pas membre d'accéder à leurs données, même un admin implicite. Une solution dont on a hâte de voir comment elle se manifeste dans la pratique et notamment en entreprise.

Elles se distinguent donc des canaux qui peuvent, eux, être rejoints par n'importe qui. On se demande d'ailleurs pourquoi Keybase ne les présente pas comme des canaux privés plutôt que d'introduire une notion supplémentaire. 

On voit d'ailleurs toute leur portée avec l'exemple donné par Keybase :

« Un nom d'équipe est visible par le monde entier, donc si vous créez l'équipe allez_virons_bob, le monde entier pourra la voir, ils ne pourront juste pas savoir qui en est membres avant d'en être membres eux-mêmes.

Les sous-équipes sont dérivée d'une équipe principale. [...] L'existence de chaque sous-équipe est cachée de tous ceux qui n'en sont pas membre. Ainsi, si vous voulez créer l'équipe allez_virons_bob.non_je_déconne_virons_bruce, alors Bruce n'aura aucun moyen de savoir ce qu'il se trame. »

Ambiance !

Notez au passage qu'un utilisateur peut être rajouté à une sous-équipe sans être membre de l'équipe principale. Leur utilité est donc avant tout la discrétion. N'importe qui peut effectuer une demande d'accès comme pour une équipe classique, l'application ne divulguera pas l'existence ou non de l'équipe/sous-équipe lors de cette procédure.

Les administrateurs seront pour le moment prévenus de la demande par e-mail. Notez enfin qu'un administrateur peut aussi ajouter un membre en passant par son adresse e-mail :

keybase team request-access treehouse
keybase team add-member treehouse --email=sarah@treehouse.com --role=writer

Et en cas de reset du compte ?

Si jamais vous avez le besoin de remettre votre compte à zéro, pour faire un peu de ménage ou encore parce que vous avez perdu l'accès à votre machine, vous serez éjecté de vos équipes. Les autres administrateurs seront notifiés de cette action et devront vous ajouter à nouveau. 

Veillez donc à bien disposer d'au moins deux administrateurs au sein de vos équipes. Car si un seul est nommé et qu'il perd l'accès au compte, elles deviendront alors orphelines. Un choix assumé par l'équipe qui explique que s'il en était autrement « Keybase pourrait vous retirer d'une équipe, indiquer que vous avez demandé un reset et placer quelqu'un d'autre à votre place ». Comme toujours, la sécurité demandera donc un surcroit de vigilance.

Quid des métadonnées ?

Du côté de la gestion des données, les choses changent assez peu : chiffrement E2E oblige, Keybase ne peut accéder à aucune information détaillée ni à aucun fichier ou message, votre clef de chiffrement étant propre à votre appareil et stockée sur celui-ci. Le service sait néanmoins quel utilisateur est présent dans quelle équipe et leur rôle dans celles-ci.

Keybase veut aussi accueillir les communautés

Si la visée du monde de l'entreprise est assez claire dans l'annonce de Keybase, la société semble aussi continuer à vouloir miser sur l'aspect communautaire. Voulant sans doute devenir une sorte d'IRC chiffré, elle précise que les équipes peuvent aussi être créées autour de sujet plutôt que d'entité.

Un maximum de 1 000 personnes peut rejoindre une même équipe, un chiffre qu'il est déjà prévu d'étendre par la suite. Il n'y a pas de moteur de recherche d'équipe, et il faudra disposer de l'accord d'un administrateur pour rejoindre une équipe, ce qui peut être un frein. Surtout que cet ajout se fait pour le moment lui aussi en ligne de commande.

Le service semble attendre de voir comment cela s'organise dans la pratique et appelle ceux qui veulent constituer des communautés à les contacter afin de leur permettre de suivre l'avancée des choses. Il s'agit néanmoins d'une manière de faire de Keybase un outil que l'on utilise au quotidien, pour échanger entre amis ou dans un cadre plus professionnel.

Reste maintenant à voir si la société arrivera à atteindre cet objectif. Il faudra aussi qu'elle fasse évoluer son outil de manière plus général, le client ayant encore du mal sur certains points, notamment en cas de remise à zéro d'un compte.

Rejoignez l'équipe Next INpact !

Afin de vous permettre de tester la fonctionnalité, nous avons créé une équipe « nextinpact » que vous pouvez demander à rejoindre simplement afin de discuter entre vous ou avec les membres de l'équipe qui utilisent Keybase. Cela pourra prendre un peu de temps avant que votre accès soit validé puisque tout se fait manuellement.

Pour ce faire, rien de plus simple, il vous suffit d'installer Keybase et de vous y créer un compte ou de vous connecter puis de taper la commande suivante dans l'application Keybase Shell

keybase team request-access nextinpact

chargement
Chargement des commentaires...