Suite à la lecture d'un article de Ploum je découvre Gemini et je test de faire tourner un petit serveur, c'est hyper simple et rigolo.
Et je note qu'il n'y a pas besoin de ces fichus Autorités de Certification pour faire du TLS sans que ça affiche une erreur de confiance bidon \o/
@codeurimpulsif EuhâŠÂ Pour le 2nd §, jâai un gros gros doute quand mĂȘme⊠đ€
Câest impossible que le navigateur ne hurle pas sans une CAÂ valide quelque part dans la chaĂźne.
@aeris je t'assure qu'aucun navigateur Gemini sur les 5 que j'ai testé n'a crié avec mon certificat auto-généré.
Pour le soucis du TOFU c'est certes chiant Ă verifier mais perso j'ai du DNSSEC et je peux mettre le certificat dans un record TLSA, si tout est codĂ© pour verifier ça cĂŽtĂ© navigateur (ce que les navigo web ne font toujours pas d'ailleurs --") ça peut ĂȘtre fun
@codeurimpulsif On parle bien de la version https de gemini ? Le certificat nâest pas auto-signĂ© mais vient de Let's Encrypt.
@codeurimpulsif Ou alors je ne comprend pas de quoi tu parles. đ€·
@aeris non pas du https justement, je parle bien de TLS sur Gemini, d'afficher une page web servie par un serveur Gemini sur un navigateur Gemini
@codeurimpulsif @aeris TLS requiert une chaßne de confiance, avec donc des CA connues. Gemini sur TLS n'a aucune raison de différé sur ce point. Donc 2 possibilités:
- soit le client Gemini n'en a rien Ă foutre de la chaĂźne de confiance -> client poubelle
- soit l'autorité de certification est connue
@codeurimpulsif @dfgweb (Sachant en plus que CN a Ă©tĂ© dĂ©prĂ©ciĂ©, je juste rigole aussi đ€Ł )
https://frasertweedale.github.io/blog-redhat/posts/2017-07-11-cn-deprecation.html
@codeurimpulsif @dfgweb
This greatly reduces TLS overhead on the network (only one cert needs to be sent, not a whole chain) and lowers the barrier to entry for setting up a Gemini site (no need to pay a CA or setup a Let's Encrypt cron job, just make a cert and go)
Des gens qui Ă©crivent ça ne devraient juste pas avoir le droit de faire de la crypto⊠đ
@codeurimpulsif @dfgweb
1- TLS nâa jamais imposĂ© de transmettre toute la chaĂźne. Sans certificat intermĂ©diaire, le certificat final suffit. Mais on a **besoin** de certificats intermĂ©diaire pour des problĂšmes de sĂ©curitĂ© (la clef de la CA racine ne devant jamais ĂȘtre manipulĂ©e)
@codeurimpulsif @dfgweb
2- Payer pour une CA nâa jamais Ă©tĂ© une obligation non plus (CACert & cie) et le renouvellement Ă 90j de LE vient aussi de contrainte opĂ©rationnelle de sĂ©curitĂ© sur TLS.
@codeurimpulsif @dfgweb Et câest dâautant plus WTF que les gens de gemini repartent dâun navigateur from scratch donc pouvaient parfaitement intĂ©grer un client ACME automatique dĂšs la crĂ©ation⊠đ
@codeurimpulsif @dfgweb HonnĂȘtement fuyez⊠Ces gens ne savent absolument pas de quoi ils parlent et nâont absolument aucune idĂ©e de ce quâils font⊠đ
@aeris @dfgweb encore une fois : le protocole en est Ă ses dĂ©buts, c'est comme dire Ă des Ă©tudiants qui font un projet « c'est nul vous n'avez mĂȘme pas mis en place tel et tel truc », oui c'est normal c'est tout neuf, y a peu de gens, c'est basiquement juste au stade de projet rigolo donc normal. Par contre il va ĂȘtre interessant de voir comment ça Ă©volue, en bien ou pas âŠ
@codeurimpulsif @dfgweb Totalement faux. Oui, un Ă©tudiant qui aujourdâhui implĂ©mente du TCP sans TLS ne mĂ©rite mĂȘme pas la moyenne.
@codeurimpulsif @dfgweb Et lĂ on ne parle pas dâĂ©tudiant, mais dâun vĂ©ritable protocole Ă utiliser. Ne pas implĂ©menter TLS proprement dĂšs le dĂ©part ou avec des suppositions complĂštement erronĂ©es est juste trĂšs dangereuxâŠ
@aeris @dfgweb mince alors, moi dans mon projet de fin d'annĂ©e j'ai mis du TLS mais sans CA, je mĂ©ritais quoi du coup ? 5/20 car j'ai pas mis de chaine de certif ? đ€
Combien de projets ont commencés comme ça et sont aujourd'hui utilisés malgré cela ?
Donc oui c'est actuellement mal fait mais rien ne dit que ça ne va pas bien Ă©voluer, comme ça peut tout autant se casser la gueule bien sur âŠ
@codeurimpulsif @dfgweb Quand tu vois les justifications donnĂ©es pour ne pas implĂ©menter correctement TLS dĂšs le dĂ©part, ça veut dire que les personnes derriĂšre ça nâont strictement aucune notion de sĂ©curitĂ©.
@codeurimpulsif @dfgweb Et la sĂ©curitĂ©, ça ne sâajoute pas a posteriori. Cf SMTP ou mĂȘme HTTPS. Quitte Ă repartir de 0, ça doit ĂȘtre lâĂ©lĂ©ment n°1 dâun nouveau projet.
@codeurimpulsif @dfgweb Et il y a une grosse diffĂ©rence entre dire « je nâai pas intĂ©grer de CA actuellement mais jâai conçu mon projet pour pouvoir le faire facilement derriĂšre et jâen connais les limites que jâai exposĂ© dans mon rapport » et « je refais mon truc from scratch en mâasseyant sur lâintĂ©gralitĂ© des retours dâexpĂ©rience de 50 ans de TLS et en le justifiant avec des arguments complĂštement faux montrant que je ne sais mĂȘme pas de quoi je parle »
@aeris @dfgweb ils en sont encore à faire des specs pour les formats de fichiers donc bon ⊠et en l'occurrence le sujet est discuté sur la mailing list qui existe depuis à peine un an, tu peux en discuter avec eux si tu le souhaite, il y aura surement des discussions et propositions interessantes qui en ressortirons
@codeurimpulsif @dfgweb Jâai assez peu de temps Ă dispo pour aller expliquer 32 ans de retour dâexpĂ©rience autour de X.509 et 22 ans de SSL/TLS Ă des gens qui nâont manifestement mĂȘme pas la base de ces 2 trucs⊠đ
@aeris @codeurimpulsif @dfgweb Je pense que le TLS de Gemini est pensĂ© comme SSH. Dans le sens ou, câest Ă lâutilisateur de vĂ©rifier que le certificat est bien celui attendu. Mais la plus grande reproche quâon peut faire câest quâil manque un moyen automatique de faire la vĂ©rification.
Le problĂšme ce nâest pas de virer les CA câest de ne pas proposer dâautre moyen de vĂ©rifier le certificat de maniĂšre simple, rapide et sĂ©curisĂ©.
@eragon Si la vĂ©rification n'est pas automatique, elle ne peut ĂȘtre fiable. J'en vois pas comment l'utilisateur peut vĂ©rifier le certificat lui-mĂȘme. Le serveur "pinning" permettrait de s'affranchir de la chaĂźne de CA, mais c'est carrĂ©ment pas l'idĂ©al. @aeris @codeurimpulsif
@dfgweb @eragon @codeurimpulsif TOFU rÚgle une partie du problÚme⊠Mais est clairement trÚs limitant dans le cas de contenu « à haute valeur ». Type banque & cie.
@codeurimpulsif Ăa dĂ©pend qui communique avec qui. Sinon, un certificat client, du serveur pinning, le client partage la mĂȘme CA, il y a des alternatives Ă la chaĂźne de CA classique si l'environnement est maĂźtrisĂ©. @aeris
@aeris @dfgweb si ça t'amuse tu peux proposer des modifications aux différents clients, les spécificatiosn relative à TLS pour Gemini sont ici en section 4 : https://gemini.circumlunar.space/docs/specification.html ça parle justement de TOFU