Tout le monde, toi y compris : Firefox, OpenSSH, libSSL, le kernel Linux etc.
C'est le propre d'une faille de sécurité : transformer un logiciel bienveillant en un logiciel malveillant.
Et donc tu arrêtes d’embarquer en dur tes libs ou de te transformer en leur mainteneur.
Pour justement te mettre à jour le plus vite possible quelque soit l’état d’utilisation des logiciels à la fin.
Et tu vires immédiatement tout ce qui ne supporte pas la nouvelle versions patchée.
Pour résumer, tu as la reproductibilité pour une image donnée et un contexte d’exécution donné.
Dès que tu reconstruits l’image en changeant une dépendance, tu ne garanties plus rien (incompatiblité fonctionnelle).
Dès que tu changes le contexte d’exécution (passage alpine/debian, ou changement de distribution hôte), tu ne garanties plus rien non plus (incompatibilité ABI).
L'isolation des dépendances à au moins l'avantage de permettre la reproductibilité de l’environnement, de pouvoir exécuter des tests dans un environnement contrôlé et rentre tout processus de mise à jour automatisable plus facilement.
Pour moi c’est justement exactement le contraire.
L’embarquement des dépendances pose la question de la glibc et du kernel utilisés.
La compatibilité entre versions y est plutôt bonne mais pas garantie et tu t’exposes à des crashs totalement incompréhensibles d’une machine à l’autre si tu utilises un binaire compilé avec une glibc qui n’est pas celle utilisée par le kernel de ta machine. Cf ici pour le détail du problème de compatibilité.
La garantie de reproductibilité vient donc de sauter (et encore pire sous Docker avec des trucs type Alpine/µClibc quand le dev a toutes les chances d’utiliser et de tester sous glibc).
Les mises-à-jour automatisables sont rarement des mises-à-jour des libs systèmes.
Peu de monde s’amuse à changer ses fichiers de dépendances pour mettre à jour avec la dernière version connue.
Généralement, les gens ne rebuildent que sur des changements de version upstream de l’application (et non d’une des dépendances) et ne changent les versions des dépendances que sur une version majeure de l’application (et non d’une dépendance).
Je ne connais d’ailleurs pas de process de build capable d’aller détecter un changement de dépendances de manière fiable, et encore moins capable de garantir que l’image finale est toujours fonctionnelle avec la nouvelle version. C’est un processus relativement très manuel qui nécessite de revalider l’ensemble de l’applicatif suite à un tel changement, et l’automatisation demanderait des tests d’intégration très couvrants pour ça, ce qu’on a généralement jamais.
Ton idée de maj auto vient de sauter aussi du coup.
On est en deux mille dix huit ; 2go c'est que dalle, parce que, comme indiqué ci dessus c'est une seule fois : les applications suivantes utiliseront le même runtime. Au pire si un deuxième runtime est installé les fichiers identiques ne seront pas dupliqués sur le disque. Je préfère perdre 2go que des heures sur des problèmes idiots de dépendance. Mais votre temps est peut être moins précieux que le mien!
Et c’est exactement avec ce type d’argumentation qu’on en est là aujourd’hui…
Pour Linux, il faut attendre la prochaine version de ta distrib, croiser les doigts et espérer un backport
Non. Tu te prends par la main, tu codes ton appli pour utiliser les libs couramment utilisées par les plus grosses distrib’ du marché et tu livres un soft potable.
Les gens se feront un plaisir de packager un logiciel propre.
Ça prend 40 ans à packager pour beaucoup d’applis parce que les devs font juste n’importe quoi et ne pensent pas à leur release avant.
Oui, un soft qui embarque la moitié du monde, les packageurs ne vont pas se presser au portillon…
Tu peux faire sans, ce n'est pas une nécessité loin de là, mais affirmer que ça ne sert à rien en prod c'est faux.
Je n’ai pas dis que ça ne servait à rien en prod, j’ai juste dit que ça apportait tout plein de problème (en particulier de sécurité, cf le problème de la longue traîne des fixes de sécu qui doivent remonter tous les layers) par rapport à d’autres solutions équivalentes si tu veux de la reproductibilité.
Le rapport avantages/problèmes est en défaveur de Docker (la sécurité pesant devant peser un ÉNORME poids quand on fait un choix technique).
Posté par Aeris (site web personnel) .
En réponse au journal Flatpak.
Évalué à 6.
Dernière modification le 12 octobre 2018 à 10:57.
A partir du moment ou les dépendances sont proprement déclarées, la plateforme de build peut tracer quels sont les packages qui ont besoin d’être rebuildes, et donc relancer un build automatiquement.
Sur Snapcraft, ca semble etre fait comme ca (https://forum.snapcraft.io/t/further-automation-of-build-snapcraft-io/2926), et vu que les updates sont automatiques du cote de l'utilisateur, on sait que chaque mise a jour sera rapidement déployé.
Sauf que ça va à l’encontre complet de ce qu’annonce FlatPak : stabilité et reproductibilité.
Finit aussi l’argument de « on va faire tourner de vieilles applis comme ça ou des trucs qui dépendent de vieilles bibliothèques ! »
Si tu veux faire des choses comme ça, ça s’appelle bizarrement apt ou pacman… :)
Pas besoin de FlatPak encore une fois.
Ou alors FlatPak est juste en train de faire le taff d’une distribution, et devient une inception avec une distrib dans une distrib…
Posté par Aeris (site web personnel) .
En réponse au journal Flatpak.
Évalué à 2.
Dernière modification le 12 octobre 2018 à 10:11.
C’est comme dire que Docker sert à rien parce que tu peux utiliser lxc/nsenter/etc. à la main
Oui et non. Effectivement Docker ne sert à rien (en tout cas en prod) parce que tu peux utiliser LXC & cie, et parce qu’il apporte plus de problèmes qu’il n’en résout (problème du monitoring, mise-à-jour, maîtrise de l’environnement, etc).
Tout comme FlatPak réinvente la roue en répondant à un non-problème (les applications foireuses quasi inexistantes sous GNU ou dont tu devrais te passer plutôt que de chercher à les faire tourner) via un syndrome du « pas inventé ici » (si tu veux du cloisonnement, AppArmor ou NSJail existent déjà et sont bien moins bloatware que FlatPak) tout en apportant d’autres problèmes encore plus toxiques (duplication des bibliothèques, longue traîne des mises-à-jour, incitation à continuer à ne pas migrer les applications vers les nouvelles versions des dépendances vu qu’on aura FlatPak pour les faire tourner, incitation à continuer à faire de la merde dans les applis en se disant qu’on aura de toute façon FlatPak pour les cloisoner).
Posté par Aeris (site web personnel) .
En réponse au journal Flatpak.
Évalué à 0.
Dernière modification le 11 octobre 2018 à 23:22.
Pour installer des trucs vraiment craignos ou qui risquent de t’exploser ton système, tu passes par de la virtualisation ou des chroot quoi… Pas besoin de s’emmerder avec des trucs à la flatpak…
Et si ça ne s’installe pas sur une distrib standard, c’est peut-être que ça ne devrait pas être installé ni utilisé tout court :D
Les versions obsolètes contenant des failles de sécurité
Pas de réutilisation des bibliothèques du système (inconvénient, ou avantage…)
Pour moi, c’est ça le vrai problème de FlatPac, AppImage, Docker, Go et plus ou moins tout ce qui embarque en dur la liste de ses dépendances.
Ça transforme de facto le mainteneur de l’application en le mainteneur de l’ensemble de ses dépendances.
À la moindre modification d’une dépendance, pour cause de fix de sécu par exemple, il faut explicitement reconstruire toute la chaîne jusqu’à l’image finale (les overlay chez Docker, les runtime chez FlatPak, etc).
Ça donne une longue traîne de trucs pas patchés parce que quelqu’un s’est endormi quelque part sur la chaîne.
Je serais par exemple curieux de connaître le nombre d’images Docker basées sur Alpine qui sont maintenant fixées depuis la grosse CVE de fin septembre.
Ça incite les gens à ne pas mettre leurs applications à jour et à utiliser des trucs complètement dépréciés au motif qu’avec FlatPak, ça tourne.
Dire "la sandbox peut être mal utilisée donc elle sert à rien" me semble un peu fallacieux, il faut juste le temps que les logiciels s'y adaptent et se confinent de mieux en mieux. Au moins on leur donne les moyens de le faire ! Si la sandbox était totalement inflexible, aucun logiciel actuel ne marcherait dedans et l'adoption de la technologie serait nulle…
La gestion des permissions a été un désastre partout avant, que ça soit les applications Android ou les extensions Firefox. Personne ne lit jamais les permissions, on les accepte sans réfléchir, et les devs doivent viser le maximum d’utilisabilité donc le maximum de permission.
Typiquement les accès réseaux sont généralement actifs parce qu’une appli qui n’utilise pas Internet en 2018, c’est rare, ou encore l’accès à ~ est nécessaire pour sauvegarder ses documents dans un endroit accessible (bien que FlatPak vise l’utilisation de couche d’abstraction/tunnel pour régler ça.
Ça risque du coup de se chier encore sur les grôles sur ce sujet à la fin…
De plus, le besoin de cloisonnement est une solution à un non problème. Qui ici a déjà eu une application malveillante sous GNU ? Quel est du coup l’utilité du cloisonnement ?
Il fingerprintera pas grand chose, sauf à avoir une sonde dédiée SOCKS5…
Et le contenu qui passe dans le tunnel est chiffré si tu consultes un site en HTTPS. Il y a alors 2 couches de chiffrement, celle du tunnel (que le proxy de ta boîte shootera peut-êter) et celle du site directement (que ta boîte ne pourra pas shooter car elle n’est plus en position de MITM, la négociation étant faite à l’autre bout).
Je comprend bien le soucis quand c'est plus rapide d'acheter un truc déjà fait,
C’est en fait bien plus un problème de faisabilité qu’un problème de rapidité.
Cozy n’a pas vocation à redévelopper un aggrégateur bancaire (comme on n’en a pas à redévelopper un webmail).
C’est extrêmement chronophage, en particulier la maintenance permanente à assurer pour conserver la compatibilité avec toutes les banques qui changent leurs « API » tous les 4 matins.
On doit donc forcément passer par un aggrégateur existant. Pour des raisons techniques (scallabilité, intégration…), Kresus n’est pas utilisable de notre côté pour nos offres. On envisage weboob pour les auto-hébergés, mais il y aura aussi un gros boulot d’intégration à faire.
Quand on dit qu’on fait du proprio, c’est plus un abus de langage qu’autre chose.
Les bouts non libérés sont uniquement des bouts de gestion interne de notre infra, nos outils de gestion de notre parc, etc.
N’importe qui souhaitant proposer le même service que nous est en mesure de le faire, il faudra juste qu’il réfléchisse à sa propre infrastructure pour faire tourner tout ça et écrive le code ad-hoc pour sa gestion.
À l’exception de l’aggrégateur bancaire (dont on espère bien donner un équivalent libre pour les auto-hébergés), toutes les fonctionnalités proposées par Cozy sont libres et accessibles à tous.
Pour le moment, il n’y a rien qui sort du Cozy, donc pas réellement d’aggrégation. Les cas d’usages sont donc plutôt orientés « personne ». On peut envisager des applications cozies qui remontent des données à la demande, mais ce n’est pas le but recherché, justement par soucis de confidentialité et de contrôle de tes données (on cherche plutôt à sortir les données des silos, pas à en créer de nouveaux :P).
C’est la thèse en cours qui va nous apporter le calcul distribué tout en étant respectueux de ta confidentialité.
Le problème est qu’actuellement, on ne sait pas réellement faire d’anonymisation.
Même anonymisées, les données peuvent encore en dire beaucoup sur une personne, via de la corrélation ou des métadonnées.
Une anonymisation efficace fait aussi trop perdre de sens aux données, qui en deviennent moins voire plus du tout utilisables.
Pas mal de recherches scientifiques sur le sujet vont dans ce sens : une bonne anonymisation nécessite de ne plus être capable de traiter les données…
Par exemple pour des données démographiques, il faudrait casser le lien familial entre les individus pour réellement anonymiser le jeu de données (une famille de 7 porte beaucoup d’information par exemple puisqu’est relativement rare), lien qui est pourtant vital pour l’analyse.
Pour des données médicales, il va falloir supprimer tous les patients à pathologies rares, qui sont pourtant les plus intéressantes statistiquement parlant.
Traiter les données nécessitera donc, en tout cas à l’heure actuelle, de lever au moins partiellement l’anonymat des utilisateurs…
C’est pour ça que Cozy considère que rien ne doit sortir du Cozy pour le moment et que tout est calculé localement.
Le but de faire plus ou moins ce que tu cherches à faire. Lancer un calcul distribué sur des données sans que celui qui a demandé le calcul ne puisse avoir accès aux données.
Ça pose effectivement potentiellement le problème de la vérifiabilité. Au mieux tu peux retenter l’expérience, mais tu ne peux pas vraiment refaire le calcul sur les mêmes données.
une application peut elle être exécutée depuis un serveur arbitraire et être autorisée à utiliser des données de ton instance de Cozy ?
Non, l’application s’exécute localement sur ton cozy à toi. Tu peux envisager de remonter le résultat de tes analyses à ton serveur par la suite. À terme on aimerait bien que ça suppose l’acceptation de la part de l’utilisateur (cozy en mode pull uniquement par défaut, pour le push il faut autorisation explicite), mais pas géré pour le moment.
Il existe un catalogue de formats quelque part ? Ils parlent de tes données de poids dans les pages de présentation, pas trouvé l’exemple.
Il n’y a actuellement pas d’application permettant de traiter les données de poids, mais on peut déjà facilement crééer un connecteur pour aller récupérer les données des gros silos (fitbit & cie) et les stocker bien à l’abri dans ton cozy, pour ensuite développer des applications pour traiter ces données.
Le problème de validation des expés (confiance, relecture du code) et de la pub ne semble pas être traîté non plus. Il existe des catalogues d’appli Cozy ?
C’est en train d’arriver. On en avait un pour notre v2, là le store pour la v3 est en train de sortir.
Je dis ça, mais c’est un peu exactement ce que fait Cozy, non ?
Tu veux faire des traitements sur des données, tu proposes une application Cozy qui va pouvoir utiliser les données de tes utilisateurs, en local sur leur cozy, pour faire ton traitement, sans jamais avoir toi-même directement accès aux données.
Il y a aussi 1 thèse en cours sur la possibilité de faire la même chose avec du calcul distribué entre tous les cozies, toujours sans accès direct aux données et avec de fortes garanties de confidentialité et d’anonymat.
Le problème de l’arrondi dans le bancaire n’est pas qu’il se fasse, mais qu’il se fasse toujours dans le même sens, occasionnant à long terme une perte ou un gain « important » pour le créditeur ou le débiteur.
Par exemple sur une facturation mensuel de calcul de la TVA, si tu arrondis toujours 10.222€ à 10.22€, tu vas perdre 24 centimes au bout de 10 ans de paiement. Tu aurais plus intérêt à arrondir à 10.22€ certains mois et à 10.23€ d’autre, pour éviter les dérives.
Le fait d’être en virgule flottante ajoute aussi l’erreur (indétectable) de perte de précision lors de la conversion, alors qu’en virgule fixe, tu peux détecter qu’un arrondi s’est produit et réagir en conséquence.
C’est pour ça que des langages comme COBOL sont très présents encore aujourd’hui dans le secteur bancaire, parce que sa gestion des arrondis et des débordements ainsi que le fait qu’il soit en calcul à virgule fixe et non flottante permet un suivi plus propre de ces dérives sur le long terme.
En même temps, vu la complexité astronomique nécessaire pour accéder aux infos d’un serveur distant, ça ne devrait pas prendre longtemps pour coder un truc propre et empaquetable :)
[^] # Re: Espace disque partagé...
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 3.
Et donc tu arrêtes d’embarquer en dur tes libs ou de te transformer en leur mainteneur.
Pour justement te mettre à jour le plus vite possible quelque soit l’état d’utilisation des logiciels à la fin.
Et tu vires immédiatement tout ce qui ne supporte pas la nouvelle versions patchée.
[^] # Re: Dépendances
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 1.
Pour résumer, tu as la reproductibilité pour une image donnée et un contexte d’exécution donné.
Dès que tu reconstruits l’image en changeant une dépendance, tu ne garanties plus rien (incompatiblité fonctionnelle).
Dès que tu changes le contexte d’exécution (passage alpine/debian, ou changement de distribution hôte), tu ne garanties plus rien non plus (incompatibilité ABI).
[^] # Re: Dépendances
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 1.
Pour moi c’est justement exactement le contraire.
L’embarquement des dépendances pose la question de la glibc et du kernel utilisés.
La compatibilité entre versions y est plutôt bonne mais pas garantie et tu t’exposes à des crashs totalement incompréhensibles d’une machine à l’autre si tu utilises un binaire compilé avec une glibc qui n’est pas celle utilisée par le kernel de ta machine. Cf ici pour le détail du problème de compatibilité.
La garantie de reproductibilité vient donc de sauter (et encore pire sous Docker avec des trucs type Alpine/µClibc quand le dev a toutes les chances d’utiliser et de tester sous glibc).
Les mises-à-jour automatisables sont rarement des mises-à-jour des libs systèmes.
Peu de monde s’amuse à changer ses fichiers de dépendances pour mettre à jour avec la dernière version connue.
Généralement, les gens ne rebuildent que sur des changements de version upstream de l’application (et non d’une des dépendances) et ne changent les versions des dépendances que sur une version majeure de l’application (et non d’une dépendance).
Je ne connais d’ailleurs pas de process de build capable d’aller détecter un changement de dépendances de manière fiable, et encore moins capable de garantir que l’image finale est toujours fonctionnelle avec la nouvelle version. C’est un processus relativement très manuel qui nécessite de revalider l’ensemble de l’applicatif suite à un tel changement, et l’automatisation demanderait des tests d’intégration très couvrants pour ça, ce qu’on a généralement jamais.
Ton idée de maj auto vient de sauter aussi du coup.
[^] # Re: Espace disque partagé...
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 9.
Et c’est exactement avec ce type d’argumentation qu’on en est là aujourd’hui…
[^] # Re: Espace disque partagé...
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 4.
Non. Tu te prends par la main, tu codes ton appli pour utiliser les libs couramment utilisées par les plus grosses distrib’ du marché et tu livres un soft potable.
Les gens se feront un plaisir de packager un logiciel propre.
Ça prend 40 ans à packager pour beaucoup d’applis parce que les devs font juste n’importe quoi et ne pensent pas à leur release avant.
Oui, un soft qui embarque la moitié du monde, les packageurs ne vont pas se presser au portillon…
[^] # Re: Dépendances
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 2.
Je n’ai pas dis que ça ne servait à rien en prod, j’ai juste dit que ça apportait tout plein de problème (en particulier de sécurité, cf le problème de la longue traîne des fixes de sécu qui doivent remonter tous les layers) par rapport à d’autres solutions équivalentes si tu veux de la reproductibilité.
Le rapport avantages/problèmes est en défaveur de Docker (la sécurité pesant devant peser un ÉNORME poids quand on fait un choix technique).
Cf ça par exemple.
Ou ça.
Ou encore ça.
Oui, il est possible de monitorer. Avec des blagues dans le système en terme de sécurité.
Cf ça.
[^] # Re: Dépendances
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 6. Dernière modification le 12 octobre 2018 à 10:57.
Sauf que ça va à l’encontre complet de ce qu’annonce FlatPak : stabilité et reproductibilité.
Finit aussi l’argument de « on va faire tourner de vieilles applis comme ça ou des trucs qui dépendent de vieilles bibliothèques ! »
Si tu veux faire des choses comme ça, ça s’appelle bizarrement apt ou pacman… :)
Pas besoin de FlatPak encore une fois.
Ou alors FlatPak est juste en train de faire le taff d’une distribution, et devient une inception avec une distrib dans une distrib…
[^] # Re: Dépendances
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 2. Dernière modification le 12 octobre 2018 à 10:11.
Oui et non. Effectivement Docker ne sert à rien (en tout cas en prod) parce que tu peux utiliser LXC & cie, et parce qu’il apporte plus de problèmes qu’il n’en résout (problème du monitoring, mise-à-jour, maîtrise de l’environnement, etc).
Tout comme FlatPak réinvente la roue en répondant à un non-problème (les applications foireuses quasi inexistantes sous GNU ou dont tu devrais te passer plutôt que de chercher à les faire tourner) via un syndrome du « pas inventé ici » (si tu veux du cloisonnement, AppArmor ou NSJail existent déjà et sont bien moins bloatware que FlatPak) tout en apportant d’autres problèmes encore plus toxiques (duplication des bibliothèques, longue traîne des mises-à-jour, incitation à continuer à ne pas migrer les applications vers les nouvelles versions des dépendances vu qu’on aura FlatPak pour les faire tourner, incitation à continuer à faire de la merde dans les applis en se disant qu’on aura de toute façon FlatPak pour les cloisoner).
[^] # Re: Dépendances
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 0. Dernière modification le 11 octobre 2018 à 23:22.
Pour installer des trucs vraiment craignos ou qui risquent de t’exploser ton système, tu passes par de la virtualisation ou des chroot quoi… Pas besoin de s’emmerder avec des trucs à la flatpak…
Et si ça ne s’installe pas sur une distrib standard, c’est peut-être que ça ne devrait pas être installé ni utilisé tout court :D
# Dépendances
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 10.
Pour moi, c’est ça le vrai problème de FlatPac, AppImage, Docker, Go et plus ou moins tout ce qui embarque en dur la liste de ses dépendances.
Ça transforme de facto le mainteneur de l’application en le mainteneur de l’ensemble de ses dépendances.
À la moindre modification d’une dépendance, pour cause de fix de sécu par exemple, il faut explicitement reconstruire toute la chaîne jusqu’à l’image finale (les overlay chez Docker, les runtime chez FlatPak, etc).
Ça donne une longue traîne de trucs pas patchés parce que quelqu’un s’est endormi quelque part sur la chaîne.
Je serais par exemple curieux de connaître le nombre d’images Docker basées sur Alpine qui sont maintenant fixées depuis la grosse CVE de fin septembre.
Ça incite les gens à ne pas mettre leurs applications à jour et à utiliser des trucs complètement dépréciés au motif qu’avec FlatPak, ça tourne.
Bref, c’est un joyeux bordel au niveau sécurité.
[^] # Re: Espace disque partagé...
Posté par Aeris (site web personnel) . En réponse au journal Flatpak. Évalué à 10.
La gestion des permissions a été un désastre partout avant, que ça soit les applications Android ou les extensions Firefox. Personne ne lit jamais les permissions, on les accepte sans réfléchir, et les devs doivent viser le maximum d’utilisabilité donc le maximum de permission.
Typiquement les accès réseaux sont généralement actifs parce qu’une appli qui n’utilise pas Internet en 2018, c’est rare, ou encore l’accès à
~est nécessaire pour sauvegarder ses documents dans un endroit accessible (bien que FlatPak vise l’utilisation de couche d’abstraction/tunnel pour régler ça.Ça risque du coup de se chier encore sur les grôles sur ce sujet à la fin…
De plus, le besoin de cloisonnement est une solution à un non problème. Qui ici a déjà eu une application malveillante sous GNU ? Quel est du coup l’utilité du cloisonnement ?
[^] # Re: TLS over TLS
Posté par Aeris (site web personnel) . En réponse au journal Légalité de l'interception du flux SSL au sein d'une entreprise. Évalué à 3.
Il fingerprintera pas grand chose, sauf à avoir une sonde dédiée SOCKS5…
Et le contenu qui passe dans le tunnel est chiffré si tu consultes un site en HTTPS. Il y a alors 2 couches de chiffrement, celle du tunnel (que le proxy de ta boîte shootera peut-êter) et celle du site directement (que ta boîte ne pourra pas shooter car elle n’est plus en position de MITM, la négociation étant faite à l’autre bout).
# TLS over TLS
Posté par Aeris (site web personnel) . En réponse au journal Légalité de l'interception du flux SSL au sein d'une entreprise. Évalué à 7.
Perso, j’avais développé ça pour shunter le proxy de mon ex-boîte :
https://github.com/aeris/firewall-piercer
Ça fait du TLS avec un serveur, qui sert ensuite de proxy SOCKS5 distant.
Du coup le proxy de la boîte est aveugle.
Ça nécessite quand même de trouver un port accessible par le proxy (généralement ça filtre assez violamment).
[^] # Re: "Le Logiciel Libre fait partie de notre ADN"
Posté par Aeris (site web personnel) . En réponse à la dépêche Cozy, votre domicile numérique. Évalué à 4.
C’est en fait bien plus un problème de faisabilité qu’un problème de rapidité.
Cozy n’a pas vocation à redévelopper un aggrégateur bancaire (comme on n’en a pas à redévelopper un webmail).
C’est extrêmement chronophage, en particulier la maintenance permanente à assurer pour conserver la compatibilité avec toutes les banques qui changent leurs « API » tous les 4 matins.
On doit donc forcément passer par un aggrégateur existant. Pour des raisons techniques (scallabilité, intégration…), Kresus n’est pas utilisable de notre côté pour nos offres. On envisage weboob pour les auto-hébergés, mais il y aura aussi un gros boulot d’intégration à faire.
[^] # Re: "Le Logiciel Libre fait partie de notre ADN"
Posté par Aeris (site web personnel) . En réponse à la dépêche Cozy, votre domicile numérique. Évalué à 10.
Quand on dit qu’on fait du proprio, c’est plus un abus de langage qu’autre chose.
Les bouts non libérés sont uniquement des bouts de gestion interne de notre infra, nos outils de gestion de notre parc, etc.
N’importe qui souhaitant proposer le même service que nous est en mesure de le faire, il faudra juste qu’il réfléchisse à sa propre infrastructure pour faire tourner tout ça et écrive le code ad-hoc pour sa gestion.
À l’exception de l’aggrégateur bancaire (dont on espère bien donner un équivalent libre pour les auto-hébergés), toutes les fonctionnalités proposées par Cozy sont libres et accessibles à tous.
[^] # Re: et le multi-utilisateurs ?
Posté par Aeris (site web personnel) . En réponse à la dépêche Cozy, votre domicile numérique. Évalué à 4.
Une seule stack peut gérer plusieurs instances différentes dorénavant oui.
[^] # Re: Cozy ?
Posté par Aeris (site web personnel) . En réponse au journal Comment concilier partage de ses données personnelles et vie privée ?. Évalué à 1.
Pour le moment, il n’y a rien qui sort du Cozy, donc pas réellement d’aggrégation. Les cas d’usages sont donc plutôt orientés « personne ». On peut envisager des applications cozies qui remontent des données à la demande, mais ce n’est pas le but recherché, justement par soucis de confidentialité et de contrôle de tes données (on cherche plutôt à sortir les données des silos, pas à en créer de nouveaux :P).
C’est la thèse en cours qui va nous apporter le calcul distribué tout en étant respectueux de ta confidentialité.
[^] # Re: Cozy ?
Posté par Aeris (site web personnel) . En réponse au journal Comment concilier partage de ses données personnelles et vie privée ?. Évalué à 1. Dernière modification le 14 septembre 2017 à 23:57.
Le problème est qu’actuellement, on ne sait pas réellement faire d’anonymisation.
Même anonymisées, les données peuvent encore en dire beaucoup sur une personne, via de la corrélation ou des métadonnées.
Une anonymisation efficace fait aussi trop perdre de sens aux données, qui en deviennent moins voire plus du tout utilisables.
Pas mal de recherches scientifiques sur le sujet vont dans ce sens : une bonne anonymisation nécessite de ne plus être capable de traiter les données…
Par exemple pour des données démographiques, il faudrait casser le lien familial entre les individus pour réellement anonymiser le jeu de données (une famille de 7 porte beaucoup d’information par exemple puisqu’est relativement rare), lien qui est pourtant vital pour l’analyse.
Pour des données médicales, il va falloir supprimer tous les patients à pathologies rares, qui sont pourtant les plus intéressantes statistiquement parlant.
Traiter les données nécessitera donc, en tout cas à l’heure actuelle, de lever au moins partiellement l’anonymat des utilisateurs…
C’est pour ça que Cozy considère que rien ne doit sortir du Cozy pour le moment et que tout est calculé localement.
[^] # Re: Cozy ?
Posté par Aeris (site web personnel) . En réponse au journal Comment concilier partage de ses données personnelles et vie privée ?. Évalué à 4.
Il y a 2 thèses pour être exact :
Le but de faire plus ou moins ce que tu cherches à faire. Lancer un calcul distribué sur des données sans que celui qui a demandé le calcul ne puisse avoir accès aux données.
Ça pose effectivement potentiellement le problème de la vérifiabilité. Au mieux tu peux retenter l’expérience, mais tu ne peux pas vraiment refaire le calcul sur les mêmes données.
[^] # Re: Cozy ?
Posté par Aeris (site web personnel) . En réponse au journal Comment concilier partage de ses données personnelles et vie privée ?. Évalué à 2.
Pour la partie calcul sur 1000 personnes, c’est une thèse qui est en cours chez nous en partenariat avec les labos de l’INRIA
https://www.inria.fr/equipes/petrus
[^] # Re: Cozy ?
Posté par Aeris (site web personnel) . En réponse au journal Comment concilier partage de ses données personnelles et vie privée ?. Évalué à 2.
Non, l’application s’exécute localement sur ton cozy à toi. Tu peux envisager de remonter le résultat de tes analyses à ton serveur par la suite. À terme on aimerait bien que ça suppose l’acceptation de la part de l’utilisateur (cozy en mode pull uniquement par défaut, pour le push il faut autorisation explicite), mais pas géré pour le moment.
Il n’y a actuellement pas d’application permettant de traiter les données de poids, mais on peut déjà facilement crééer un connecteur pour aller récupérer les données des gros silos (fitbit & cie) et les stocker bien à l’abri dans ton cozy, pour ensuite développer des applications pour traiter ces données.
C’est en train d’arriver. On en avait un pour notre v2, là le store pour la v3 est en train de sortir.
# Cozy ?
Posté par Aeris (site web personnel) . En réponse au journal Comment concilier partage de ses données personnelles et vie privée ?. Évalué à 3.
Je dis ça, mais c’est un peu exactement ce que fait Cozy, non ?
Tu veux faire des traitements sur des données, tu proposes une application Cozy qui va pouvoir utiliser les données de tes utilisateurs, en local sur leur cozy, pour faire ton traitement, sans jamais avoir toi-même directement accès aux données.
Il y a aussi 1 thèse en cours sur la possibilité de faire la même chose avec du calcul distribué entre tous les cozies, toujours sans accès direct aux données et avec de fortes garanties de confidentialité et d’anonymat.
# Cumul des arrondis
Posté par Aeris (site web personnel) . En réponse au journal SQL Decimal vs Double. Évalué à 4.
Le problème de l’arrondi dans le bancaire n’est pas qu’il se fasse, mais qu’il se fasse toujours dans le même sens, occasionnant à long terme une perte ou un gain « important » pour le créditeur ou le débiteur.
Par exemple sur une facturation mensuel de calcul de la TVA, si tu arrondis toujours 10.222€ à 10.22€, tu vas perdre 24 centimes au bout de 10 ans de paiement. Tu aurais plus intérêt à arrondir à 10.22€ certains mois et à 10.23€ d’autre, pour éviter les dérives.
Le fait d’être en virgule flottante ajoute aussi l’erreur (indétectable) de perte de précision lors de la conversion, alors qu’en virgule fixe, tu peux détecter qu’un arrondi s’est produit et réagir en conséquence.
C’est pour ça que des langages comme COBOL sont très présents encore aujourd’hui dans le secteur bancaire, parce que sa gestion des arrondis et des débordements ainsi que le fait qu’il soit en calcul à virgule fixe et non flottante permet un suivi plus propre de ces dérives sur le long terme.
[^] # Re: Tests fragiles
Posté par Aeris (site web personnel) . En réponse à la dépêche OpenSSH : configuration des algorithmes de cryptographie. Évalué à 1.
Pour Cryptcheck, c’est plus un problème de scheduler qu’autre chose.
C’est 100% compatible toute version de OpenSSL et toute configuration :D
[^] # Re: Test offline
Posté par Aeris (site web personnel) . En réponse à la dépêche OpenSSH : configuration des algorithmes de cryptographie. Évalué à 2.
En même temps, vu la complexité astronomique nécessaire pour accéder aux infos d’un serveur distant, ça ne devrait pas prendre longtemps pour coder un truc propre et empaquetable :)