Vous connaissez sans doute déjà les agents PGP et SSH : ce sont des logiciels qui permettent de conserver des clefs privées en mémoire, pour effectuer les tâches de signature ou de déchiffrement numérique pour les programmes qui le demandent, sans avoir à recharger la clef à chaque fois.
Je vais décrire ce que serait pour moi un agent parfait, par rapport aux agents existants que je connais : OpenSSH ssh-agent (agent SSH), GnuPG agent (agent SSH et PGP), GNOME Keyring (trousseau de mots de passe et agent SSH) et Seahorse (agent PGP et proxy d'agent SSH).
Un seul agent, simple à lancer
Certains agents cryptographiques cumulent les fonctions d'agent PGP et SSH : c'est plus pratique. D'autres n'ont qu'une seule de ces deux fonctions : ce n'est pas bien compliqué non plus. Mais la palme de la complexité revient à GNOME : ce bureau a deux agents, GNOME Keyring et Seahorse, dont les fonctions se recoupent ; ils sont en outre compliqués à lancer, puisqu'il faut d'abord lancer leurs programmes, puis leur demander de « démarrer » effectivement en les appelant à nouveau avec une option du style « --start ».
Un bon agent cryptographique devrait avoir des fonctions clairement identifiées, soit agent SSH, soit agent PGP, soit les deux, et pouvoir se lancer en une seule commande.
Chargement automatique des clefs à la demande
Avec un agent PGP, dès qu'une requête de signature ou de déchiffrement arrive, l'agent charge la clef privée, en demandant au besoin le mot de passe à l'utilisateur.
Avec les agents SSH, ce n'est généralement pas le cas, et il faut charger manuellement les clefs dans l'agent, avec la commande ssh-add. Seul GNOME Keyring s'en démarque en chargeant tout seul la clef à la première demande.
Un agent cryptographique parfait devrait charger toutes les clefs automatiquement à la demande.
Demande de confirmation à l'utilisation d'une clef
En général, les agents SSH et PGP conservent les clefs pendant un temps fini ou infini, et permettent à tout programme qui en fait la demande de les utiliser. La fonction PGP de Seahorse s'en démarque, en demandant une confirmation de ce style : « Un programme souhaite utiliser une clef privée en mémoire, l'autorisez-vous ? ». C'est bien mais pas parfait, vu qu'il n'indique pas de quel programme il s'agit.
Un agent cryptographique parfait devrait demander confirmation pour toute utilisation d'une clef en mémoire, en précisant le programme qui le demande (PID, nom).
Conclusion
Je n'ai pas trouvé de logiciel répondant à toutes ces contraintes. Celui qui s'en approche le plus est Seahorse comme agent PGP, mais il a l'inconvénient de ne pas prendre en charge les cartes à puces. Pour l'agent SSH, GNOME Keyring est convenable, mais ne demande jamais confirmation, et est compliqué au possible à lancer.
Si quelqu'un envisage de coder un nouvel agent, voici donc des idées…
# L'agent cryptographique parfait existe deja
Posté par pasBill pasGates . Évalué à -4.
Vu qu'il y a 325326333 manieres differentes d'ecrire le meme code, tu peux reconnaitre l'auteur a coup sur a la maniere dont il a ecrit le code, et selon la maniere dont il l'a ecrit, personne d'autre ne pourra le comprendre a part la personne qui a le convertisseur Perl -> C approprie (on appelle cela la cle de nos jours)
[^] # Re: L'agent cryptographique parfait existe deja
Posté par Axioplase ıɥs∀ (site web personnel) . Évalué à 3.
En revanche, ça me fait penser à une présentation du CCC hier ou avant-hier d'un responsable en sécurité de chez MS qui dit qu'ils ont pu détecter que plusieurs auteurs avaient écrit le botnet qui s'attaquait aux centrales iraniennes, là.
Article intéressant (malheureusement, les publications scientifiques sur ce sujet (« authorship discrimination ») que j'ai trouvées n'ont pas grand chose de technique à se mettre sous la dent). À lire sur : [http://www.wired.com/threatlevel/2010/12/a-four-day-dive-int(...)]
[^] # Re: L'agent cryptographique parfait existe deja
Posté par Rémi Birot-Delrue . Évalué à 2.
[^] # Re: L'agent cryptographique parfait existe deja
Posté par Krunch (site web personnel) . Évalué à 4.
pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.
[^] # Re: L'agent cryptographique parfait existe deja
Posté par Krunch (site web personnel) . Évalué à 4.
Et j'ai pas été à celle sur Stuxnet mais j'avais vu Bruce Dang en 2008 : http://events.ccc.de/congress/2008/Fahrplan/events/2938.en.h(...)
pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.
[^] # Re: L'agent cryptographique parfait existe deja
Posté par zebra3 . Évalué à 4.
Article Quarante-Deux : Toute personne dépassant un kilomètre de haut doit quitter le Tribunal. -- Le Roi de Cœur
[^] # Re: L'agent cryptographique parfait existe deja
Posté par imr . Évalué à 7.
[^] # Re: L'agent cryptographique parfait existe deja
Posté par pasScott pasForstall . Évalué à 7.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: L'agent cryptographique parfait existe deja
Posté par Axioplase ıɥs∀ (site web personnel) . Évalué à 2.
Faut penser à sortir un peu, hein… Eux au moins, il ont compris comment utiliser le système…
[^] # Re: L'agent cryptographique parfait existe deja
Posté par Misc (site web personnel) . Évalué à 1.
à condition d'avoir de l'ipv6...
# Huh ? retour vers le futur ou quoi ?
Posté par -=[ silmaril ]=- (site web personnel) . Évalué à 3.
Et l'agent SSH seahorse est deprecated depuis gnome 2.22
[^] # Re: Huh ? retour vers le futur ou quoi ?
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 2.
[^] # Re: Huh ? retour vers le futur ou quoi ?
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 1.
Donc, GNOME Keyring daemon, c'est un agent SSH uniquement. Et Seahorse agent, c'est un agent PGP qui peut faire proxy d'agent SSH mais je ne sais pas trop à quoi ça sert et cette fonctionnalité est de toute façon dépréciée.
Bref, pour avoir les fonctionnalités d'agent SSH et PGP avec les logiciels de GNOME, il faut lancer le démon GNOME Keyring, le lancer une seconde fois avec l'option --start, et lancer aussi Seahorse.
[^] # Re: Huh ? retour vers le futur ou quoi ?
Posté par -=[ silmaril ]=- (site web personnel) . Évalué à 4.
1/ Gnome Keyring:
Infrastructure générique de stockage pour des clefs, passwords, certificats, ...
http://live.gnome.org/GnomeKeyring
2/ Seahorse
Application pour gérer les clefs et mot de passes stockés dans le keyring, remplacant du gnome-keyring-manager, toutes les fonctions 'd'agents' de seahorse sont deprecated et intégrées directement dans gnome-keyring
http://live.gnome.org/Seahorse (semble pas a jour)
Roadmap de gnome-keyring
http://live.gnome.org/GnomeKeyring/Goals
>Bref, pour avoir les fonctionnalités d'agent SSH et PGP avec les
>logiciels de GNOME, il faut lancer le démon GNOME Keyring, le
>lancer une seconde fois avec l'option --start, et lancer aussi
>Seahorse.
Mouais je sais pas quel est ta config mais gnome-keyring est normalement integré au login sur toutes les versions récentes et
dévérouillé automatiquement via pam-keyring
Enfin la beauté de l'opensource est de proposer a tout un chacun de faire evoluer lui-même directement ou indirectement les soft, le meilleur endroit pour discuter de tes remarques sur les avertissements et fonctionnements des agents gnome serait plutot la/les mailling lists associées au projet
[^] # Re: Huh ? retour vers le futur ou quoi ?
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 0.
Application pour gérer les clefs et mot de passes stockés dans le keyring, remplacant du gnome-keyring-manager, toutes les fonctions 'd'agents' de seahorse sont deprecated et intégrées directement dans gnome-keyring
On en reparlera le jour où GNOME Keyring daemon fera agent PGP…
[^] # Re: Huh ? retour vers le futur ou quoi ?
Posté par alk . Évalué à 2.
C'est le cas en 2.32. Je ne sais pas si c'est au point mais ça fonctionne pour le peu de tests que j'ai fait. L'option est activable via gconf-editor ou avec l'option --components=gpg
[^] # Re: Huh ? retour vers le futur ou quoi ?
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 2.
[^] # Re: Huh ? retour vers le futur ou quoi ?
Posté par claudex . Évalué à 3.
« Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche
[^] # Re: Huh ? retour vers le futur ou quoi ?
Posté par -=[ silmaril ]=- (site web personnel) . Évalué à 2.
...
GPG Agent
To provide a better experience for GnuPG users, we have a gpg-agent in GNOME Keyring. This agent caches passwords for PGP keys. Can store these passwords short term (for a timeout, or the current session), or permanently in the common password storage.
* Done: Part of gnome-keyring 2.32.x
* Where: The gpg-agent component of gnome-keyring
* Code: http://git.gnome.org/browse/gnome-keyring/tree/daemon/gpg-ag(...)
* Task: --use-agent needs to be enabled in gpg.conf. Figure out user interface.
...
mais a part ça ils documentent pas ...
# Ca ne répond pas parfaitement à ta question mais...
Posté par Jerome Herman . Évalué à 2.
La logique est légèrement différente de celles que tu cherches à obtenir, mais ca permet de débloquer des clefs SSH ou PGP à la demande, par application. Couplé avec du SASL du PAM et une bonne gestion des token ca fait tout ce que tu demandes.
Par contre l'installation est un peu lourdingue si c'est juste pour un desktop seul.
[^] # Re: Ca ne répond pas parfaitement à ta question mais...
Posté par Larry Cow . Évalué à 2.
Un peu, oui. Très légèrement. Ceci dit, si quelqu'un se sent de pré-packager un Kerb adapté à cet usage, ça pourrait marcher.
# keychain
Posté par John Balcaen (site web personnel) . Évalué à 2.
il supporte gpg et ssh (en lançant les agents ssh et gpg adéquats)
il chargera à la demande la clé.
En revanche il ne demandera pas confirmation pour l'utilisation d'une clé précise.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.