Hello nal,
Je viens de consacrer un temps beaucoup trop important au backport de NSS dans Chromium 58.
NSS, historiquement "Netscape Security Services", c'est la bibliothèque de sécurité concurrente d'OpenSSL ; utilisée notamment par Firefox, Curl et Git (quand on fait un git clone https://[…] par exemple).
Cela fait longtemps (~4 ans) que les devs Chromium ont switché vers BoringSSL, leur fork auto-hébergé d'OpenSSL. Là j'ai remis l'ancien système, ça marchote, mais il commence à manquer des fonctionnalités et surtout l'effort devient de plus en plus important.
Le patch est gigantesque : en plus de ça et ça, il faut encore balancer ces arborescences de fichiers là et là.
Je me doute que cela n'en intéressera pas des masses ici.
Pour ceux qui le seront, j'abandonne probablement le truc pour la prochaine version, une fois que j'aurai pigé comment compiler avec la version système d'OpenSSL -ce sera moins lourd.
À toutes fins utiles…
# Intérêt ?
Posté par BFG . Évalué à 8.
Quel est l'intérêt exact d'utiliser NSS au lieu de BoringSSL ?
[^] # Re: Intérêt ?
Posté par Tarnyko (site web personnel) . Évalué à 4. Dernière modification le 05 mai 2019 à 10:48.
La réponse générale sera la même que pour :
"Quel est l'intérêt exact d'utiliser OpenSSL au lieu de BoringSSL ?"
C'est une bibliothèque connue et à l'API standard, réutilisable sur de nombreux systèmes.
C'est surtout utile si tu veux relier Chromium, entier ou en parties, à cette brique standard.
Cela n'a aucun intérêt si tu te contentes de builder le Chromium "d'un bloc" proposé par le projet.
Le choix historique de l'implé NSS vient juste du fait qu'à l'époque, elle était presque standard alors que la OpenSSL/BoringSSL l'était beaucoup moins = moins d'effort.
[^] # Re: Intérêt ?
Posté par goeb . Évalué à 6.
NSS avait un meilleur support des token PKCS11 (typiquement un module USB qui contient la clé privée d'un certificat client, et la seule manière de l'utiliser est par des appels de fonctions PKCS11).
Mais peut-être que OpenSSL et BoringSSL ont progressé récemment dans ce domaine.
[^] # Re: Intérêt ?
Posté par benoar . Évalué à 3.
Perso j'ai déjà vue comme argument :
- Certification FIPS
- Keystore plus évolué (pas juste une liste de CAs balancé à un endroit, mais store système + user, avec clés persos & co ; cf. le support PKCS11 évoqué plus haut, en gros NSS se soucie bien de l'authentification SSL client), mais sans documentation (de mémoire)
# Convergence ?
Posté par rzr (site web personnel) . Évalué à 3.
Gz Tarnyko !
Tu peux tjr envoyer ton patch (in progress) pour avoir du feedback d'upstream
Pense tu qu'une (Re-)convergence est elle désirable ou envisageable ?
Good luck
gpg:0x467094BC
[^] # Re: Convergence ?
Posté par Tarnyko (site web personnel) . Évalué à 2.
Hey Rzr,
Ils ont sué pour se débarrasser de NSS, je ne pense pas qu'ils voudront le remettre.
Ici, on est en face d'un effort dicté par des considérations totalement détachées d'upstream. Si totalement désintéressées, presque christiques.
[^] # Re: Convergence ?
Posté par rzr (site web personnel) . Évalué à 2.
A voir si ces tickets sont crosslinkés coté NSS:
https://bugs.chromium.org/p/chromium/issues/detail?id=604728
https://bugs.chromium.org/p/chromium/issues/detail?id=603319
…
gpg:0x467094BC
[^] # Re: Convergence ?
Posté par Tarnyko (site web personnel) . Évalué à 1. Dernière modification le 06 mai 2019 à 08:56.
Je m'abstiens de poster des tickets côté NSS depuis ça.
;)
[^] # Re: Convergence ?
Posté par Sylvestre Ledru (site web personnel) . Évalué à 2.
wtc bosse plus sur nss depuis un moment, faut pinger les gens pour que ca avance :)
[^] # Re: Convergence ?
Posté par Tarnyko (site web personnel) . Évalué à 1.
Bah sur Tinder p.ex., quand je relance ça marche jamais.
[^] # Re: Convergence ?
Posté par Tarnyko (site web personnel) . Évalué à 2.
Ah, tu as fait bouger l'ancêtre… je viens de commenter (et fermer).
Sans plaisanter maintenant : en général je poste 1-2 tickets sur un projet, si ça gigote pas je n'y touche plus. Mais là je te remercie, ça a dû changer ; je réessaierai si besoin.
[^] # Re: Convergence ?
Posté par Sylvestre Ledru (site web personnel) . Évalué à 4.
Un projet comme Firefox a des centaines de nouveaux bugs par jour, on peut pas tout faire…
Faut pas hésiter à insister/relancer.
[^] # Re: Convergence ?
Posté par benoar . Évalué à 2.
Par curiosité, c'est quoi ta motivation ?
[^] # Re: Convergence ?
Posté par Tarnyko (site web personnel) . Évalué à 2.
Cela s'inscrit dans un effort plus large nommé Chromium-Lite.
En gros une version allégée, plus modulaire, qui builde avec une toolchain standard
et se lie avec des bibliothèques systeme (libicui18n.so, libsqlite3.so, libnss3.so…) plutôt que d'être entièrement auto-contenue.
Il y a déjà eu une release, je bosse sur la deuxième.
[^] # Re: Convergence ?
Posté par benoar . Évalué à 3.
Merci. Ça me semble un projet « dans le bon sens », mais bon vu l'upstream, ça fait projet à rebours qui n'a jamais aucune chance d'être mergé de toutes façons… C'est quoi l'objectif « à long terme » ? Ou alors il n'y en a pas, c'est juste pour le beau geste ? Bravo en tous cas pour ce travail, même si je ne suis pas un fan de Google et n'utilise pas Chromium.
[^] # Re: Convergence ?
Posté par Tarnyko (site web personnel) . Évalué à 1. Dernière modification le 11 mai 2019 à 14:24.
Effectivement. Pas un gros souci personnellement.
Oulà… tout de suite les grands mots ;).
Pour toi et moi, ça permet de le builder sur une machine moyen de gamme, et en moins de 6 heures ;-).
À titre perso, savoir builder Chromium, me permet de savoir comment il marche. Et ça c'est génial.
À d'autres titres, c'est une compétence extrêmement rare qui ouvre plein de possibilités.
Chromium-Lite n'est que la partie visible d'autres projets plus ciblés.
Merci beaucoup !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.