Commentaires sur la blockchain Duniter G1

blockchain
security
g1

#1

Salut,

Je ne savais pas trop où poster ça.

J’ai fait ce post sur l’autre forum, pour illustrer mon propos. https://forum.monnaie-libre.fr/t/nuage-de-mots-de-la-blockchain-duniter-g1/2694

Ici je souhaite qu’on réfléchisse aux implications du stockage de commentaires sur la blockchain.

Je pense que la première chose est le faite de garnir la blockchain d’un message (on le voit sur le nuage de mot, ce message est bienveillant et technique), mais qu’en serait il si les mots principal de notre blockchain serait Hitler ou pedophilie ?
A mon sens la blockchain devrait rester neutre de toute opinion.

Un autre point évident c’est que ces commentaires alourdissent la blockchain et donc engendre + de bande passante pour le réseau et donc un surcoût énergétique inutile. :sunflower:

Enfin dernier aspect on pourrait imaginer une attaque de duniter, par les commentaires, en y incluant de la pub ou des choses visant a discréditer l’outil par son usage (stratégie classique : on condamne bitTorrent car il sert aux pirates.).
Je pense à ça : https://news.bitcoin.com/no-isnt-child-porn-bitcoin-blockchain/

Quel serait les implications si on enlevait les commentaires ? Ne devraient ils pas être de la responsabilité des clients et non de la blockchain ?


#2

Avoir un libellé de transaction me semble très utile, ne serais-ce que pour permettre à des outils de prendre en compte automatiquement une transaction à l’aide d’une référence.

Ceci dit, il me semblerait en effet faisable de stocker en blockchain non pas le commentaire, mais un hash de celui-ci. Aux clients d’utiliser un stockage hors blockchain pour fournir les messages correspondants à ces hash. (et ce stockage lui, peut voir certaines de ses entrée supprimée (sur décision de justice ou selon la loi informatique et liberté), bref, avec un fonctionnement style cesium+ par exemple, ou autre xmpp, activitypub ou autre…


#3

Oui c’est très facile a faire niveau protocole, on peut stocker un hash Sha256 facultatif associé a chaque transaction, c’est une excellente idée et sa peut permettre d’autres usages que le seul commentaire :slight_smile:
En plus un hash c’est de taille fixe et connue ce qui est un chemin facilitant vers la binarisation des documents ^^


#4

En fait on ne peut pas empêcher l’écriture de messages, car tout peut servir de support.

Exemple : imagine quelqu’un qui dit « j’ai stocké un message caché en blockchain, il suffit de prendre le montant de mes 6 dernières transactions et de faire correspondre le montant à un caractère Ascii » et de retrouver le mot « Hitler » tant redouté.

Ainsi même si l’on disait “le champ commentaire d’une transaction est un un hash”, d’autres pourront dire “non il s’agit en fait d’un mot encodé”. Qui aura raison ? Personne. D’une suite de bits tu peux leur faire dire n’importe quoi, selon l’algorithme de “décodage” que tu choisis.

À partir du moment où il existe un champ libre à l’utilisateur, ne serait-ce qu’un simple chiffre, il peut le transformer pour une toute autre utilisation.


#5

Euh, juste que là c’est en clair. XD


#6

Je pose le souci autrement. :wink:

Qqun de mal intentionné envoi des TX avec des commentaires diffamatoires envers qqun qqch.
Cette personne aura pris le soin de brouiller les pistes (gmix ou fausse identité membre).
La personne visé par la diffamation porte plainte, la justice tranche, il faut supprimer le commentaire.
Qu’est ce qu’on fait avec ça ? On ferme boutique ? :thinking:
C’est tout de même une faille béante de mon point de vue.


#7

Je vais me répéter : le champ commentaire n’est qu’une suite d’octets sur laquelle on n’a aucun contrôle.

Tu me dis “c’est en clair”, je te réponds : non, c’est une suite d’octets. Tu es libre de l’interpréter avec le décodage que tu veux, en particulier c’est ton client qui décide d’y voir une chaîne de caractères.

Si demain on disait “le champ commentaire est un hash”, donc un gros nombre, rien n’empêcherait un utilisateur de dire “je m’en fiche, j’y mets des 1 et des 0 et si vous utilisez la fonction AsciiDecode vous y verrez un message lisible par un humain” sans qu’on puisse y faire quoi que ce soit.

Je le redis pour que ce soit bien clair : on ne peut absolument pas contrôler l’interprétation d’un champ de commentaire. Et même de manière générale, la blockchain est une grosse suite d’octets et je ne serais pas surpris que tu réussisse à en extraire des mots déplaisants dès aujourd’hui, en-dehors même du champ commentaire.


#8

Bref il est peine perdue de combattre quoi que ce soit, “la justice” n’aura par ailleurs rien à dire puisqu’il n’existe pas d’entité juridique à laquelle adresser ses injonctions, et nous mêmes ne pouvons pas empêcher des utilisateurs de caser des mots pénibles de façon astucieuse.

Autant lâcher prise tout de suite :slight_smile:


#9

Une transaction (monétaire ou pas) n’est-elle pas l’expression même une opinion ?


#10

Je pense que le fait que le champ commentaire soit en clair, tout comme le contenu de ce forum, qui in fine est aussi composé de 1 et de 0 sur une machine, on est d’accord là dessus, mais dans les fait il y a un responsable de publication, qui répond de ces 1 et 0, surtout quand ils sont dans le lightnet.

Un moyen simple pour passé du lightnet au darknet est de faire une zone privée protégé par un mot de passe. Simple as that.

La solution de @1000i100 est génial, car ça floute les commentaires et ne laisse qu’un hash au yeux de tous. Les commentaires en eux mêmes peuvent être mis à l’abris ailleurs. (Si tant est qu’on en ai besoin. :wink: )

Le seul avantage est celui de la sécurité, une “attaque aux commentaires”, sera moins valable au yeux d’un juge, si c’est un hash, qui est non human-readable.

Ça ne comble peut être pas la faille à tes yeux, mais convient en, ça la réduit considérablement. :slight_smile:


#11

La neutralité est une protection, désolé si j’ai tendance à focus sur l’aspect “il faut sécuriser la G1”. ^^


#12

Alors non faut pas être désolé. C’est bien de focus sur cet aspect, c’est juste que cgeek considère que ton argument sur l’interprétabilité des commentaires est infondé dans l’absolu.

Mais il y a d’autres arguments pour remplacer les commentaires de TX par un champ extraHash :

  1. On gagne en place, la blockchain est plus légère.
  2. Ça permet l’échange de commentaires privés/confidentiels, certes c’est déjà possible en stockant le commentaire chiffré, mais la pas besoin de chiffrement, c’est plus simple.
  3. Ça permet aux utilisateurs plus de souveraineté sur leurs données car ça leur ouvre la possibilité de supprimer plus tard leurs commentaires, tout comme c’est le cas avec les profil cesium+, et tout comme c’est le cas avec les messages de ce forum. Le coté irréversible du contenu de la blockchain est fondamentale incompatible avec le droit a l’oubli, la blockchain ne devrait donc jamais contenir de données a caractère personnel, or un commentaire de transaction ça peut parfois l’être. Et un chiffrement des commentaires n’est pas aussi fiable car si la clé de déchiffrement est trouvée un jours le commentaire sera dévoilé, alors qu’avec un hash, si le commentaire correspondant est détruit il ne sera jamais retrouvé. Et il est bien plus commode de supprimer un commentaire d’une base de donnée tierces que de détruire sa clé de déchiffrement, surtout s’il s’agit de son trousseau de clés membres, s’il faut révoquer son compte a chaque fois qu’on veut détruire toute trace d’un commentaire émis via ce compte c’est vraiment pas commode :confused:

#13

… mais ça ouvre en même temps tout l’arsenal de possibilités qu’offre aux hackers en tous genres un système centralisé. Or certains commentaires (par exemple les transactions gchange aujourd’hui) ont une portée réellement fonctionnelle ce qui n’est pas anodin.

Après c’est vrai qu’on ne peut pas empêcher quiconque de mettre le commentaire suivant :

       _.-;;-._
'-..-'|   ||   |
'-..-'|_.-;;-._|
'-..-'|   ||   |
'-..-'|_.-''-._|

:scream:

ou toute autre image qui pourrait être visible dans un explorateur de blockchain. Bon faudra juste prévenir que l’explorateur est PG18, c’est tout.

Bon, on hard-fork, une chaîne avec commentaires et l’autre sans ? :smiley: (j’ai hâte de dédoubler mon pactole, moi ! :rofl: )


#14

je partage en tous points les interrogations / conclusions à l’initiative du topic

de notifier concernant l’encodage d’une info , que la condition de verrouillage XHX ( et son parametre d’entrée) réalise d’une certaine manière cette fonctionnalité

de manière à mener une experience ( intéressante à mon goût ^^) concernant l’impact relatif a ce qu’une info en clair dans le champ commentaire puisse ainsi continuer d’être telle qu’elle est

je propose que toutes personnes disposant de monnaie effectue des transactions en commentant allègrement celles-ci

de sorte que et si bien que comparaison n’est pas raison :

Après une journée et plus de 96 000 tweets envoyés, Microsoft suspend temporairement le compte Twitter de Tay pour des « ajustements », à la suite d’un « effort coordonné de plusieurs utilisateurs pour abuser des compétences à commenter de Tay dans le but que Tay réponde de manière inappropriée ». Il avait en particulier tenu des propos racistes et misogynes, et l’expérience a été qualifiée de désastreuse pour l’image de Microsoft. Une deuxième tentative le 30 mars s’est à nouveau soldée par une déconnexion.

:slight_smile:


#15

yaka faire une blockchain pour les commentaires.
Ok je sors.


#16

Il n’est pas en clair, c’est une illusion donnée par le protocole qui s’inteprète en Ascii. Quand demain il sera en binaire, comment interpréteras-tu ce champ ?

Par ailleurs étant donné que demain Duniter ne stockera plus les transactions, la question ne se posera plus pour les logiciels du cœur. Éventuellement il se posera pour les services tiers qui décideront de tout stocker pour restitution, mais là encore l’interprétation entrera en jeu.


#17

pour ma part, le coté en clair me semble anecdotique (oui, il y a une étape de plus si le commentaire est externalisé, mais quelqu’un que veux mettre le même nombre de bit qu’un hash aura de forte chance de pouvoir le faire, à moins que la validation initial du bloque vérifie qu’en “db commentaire” il y ai bien une séquence dont c’est le hash).

ce qui me semble important en revanche, c’est la capacité de droit à l’oubli offerte.

et externaliser les commentaire ne signifie pas les externalisé dans une db centrale.
des db répliqué ou fédéré ou d’autres mécanisme distribué peuvent très bien faire l’affaire !

exemple : les liens magnet: sont constitué d’un hash qui désigne un torrent. On est loin du centralisé.


#18

Ascii tu le dis toi même est un protocol, en binaire c’est pareil, il ne s’agit pas là d’un hash qui n’offre pas de retour vers la donnée.

Finalement c’est plus le fait que les données soient là et non protégée qui me chiffonne. :wink:

Intéressant tu peux développer ? :slight_smile:


#19

Quelle « autorité » se chargera de l’effacement ? Sous quels critères ? Qui sera légitime pour demander un effacement ? En particulier si l’émetteur a oublié ses clés entre-temps ? Par ailleurs, si on rentre là-dedans, n’importe qui aurait son potentiel mot à dire sur n’importe quelle partie de l’info (diffamation, etc.). Ça devient compliqué…


#20

Ben pas plus compliqué que ce que fait déjà Cesium+ avec les données de profil. Et puis nous on s’en fou on aura pas a gérer ça de toute façon, c’est les services tiers en charge du stockage des commentaires qui devrons résoudre ces questions :wink: