Comment executer le code contenu dans la blockchain G1 - How to execute code stored inside G1 blockchain

Crowdfunding :

ePyStoleR

Content:

Comment executer le code contenu dans la blockchain G1
How to execute code stored inside G1 blockchain

Libération de code source
Release of source code

Key :

DuZhZHrbBJQdCMoTQZRxZF4WdHS5Q7NwKFgQPGaBHv42

Notes :

Une partie de ces fonds iront aux développeurs de la G1.
A part of funds will go to G1 software programmers.

Thanks ! :slight_smile:

Est ce que tu peux nous en dire plus sur ce que tu aimerais valoriser à 4242 DU ? :slight_smile:

1%, 2%…? :slight_smile:

1 J'aime
  1. Du code !

  2. 42

@Max
Qu’entend tu par du code contenu dans la blockchain ?

Est-ce un crowdfunding pour financer le développement du support des « smart-contract » dans Duniter ?

3 J'aimes

C’est vrai que c’est flou.

Bonjour @bpresles

  1. j’entends par « code » , des instructions, executables,
    contenues/enregistrées/stockées/inscrites dans la base de données

  2. Je confirme que non, cela ne relève pas de ces développements

:slightly_smiling_face:

La blockchain ne contient des instructions que dans le sens où elle contient la liste ordonnée des changements du contenu des indexes. Si c’est de ça dont tu parles, Duniter l’exécute déjà.

Mais je pense que tu parles de programmes plus complexes, mais si ce ne sont pas des smart contracts alors c’est quoi ?

Qui exécuterait ce code, quel serait son champ d’action, quelle serait son utilité ?

1 J'aime

Rho cet enfumage :joy:

Soit vous proposez des développements pour utiliser les conditions de lock, et dans ce cas il serait bon de préciser pour quels logiciels clients,

Soit vous racontez n’importe quoi.

Et quoi qu’il en soit, vous avez une manière de communiquer vos idées qui est très inefficace, en témoigne le nombre de questions qui suivent votre post. Mais je pense que c’est délibéré de votre part.

2 J'aimes

« Py » pour Python ? « Stole » pour le preterite de « to steal », voler/dérober en anglais ? Sans explication ni démo, ce crownfunding est une arnaque :stuck_out_tongue: :wink:

4 J'aimes

Il suffit d’inscrire le hash IPFS de son code dans le commentaire de transaction?
Puis de passer par un client qui sait interpréter ces commandes et exécuter le code…

Ou en utilisant des conditions sur la libération de TX??

Il faut effectivement être plus clair…

1 J'aime

Tiens, ça me donne envie d’essayer de mettre du code dans les G1Tag :wink:

Bonsoir @matograine

A vrai dire, c’est au choix… ?
Notez que c’est une question, je m’interroge :

  • c’est moi qui ait le choix…
    ou
  • tout à chacun à le choix…

…pour le repas ? matograine vous prendrez quoi ?
Puis-je vous proposer en entrée du foie gras, suivis d’une pizza ?
Aimez vous les anchois ? je n’aime pas cela…
Et pour terminer ce repas, au dessert, une glace au chocolat ? j’aime aussi le parfum nougat.
C’est vrai que ce repas est un peu gras, bon… c’est un choix.


Il est dit que la musique adoucie les moeurs.
Permettez moi, pour accompagner ce repas, de vous proposez d’écouter cela :
epystoler_audio

Cette partition nous permettra, en coeur, d’exercer :musical_keyboard::desktop_computer:, d’échauffer :plate_with_cutlery: nos doigts


Nous pouvons envisager un apéro, par exemple au bistrot …
Peut être connaissez vous un caviste bio ?

Ils n’ont de cesse de le répéter, l’abus d’alcool est dangeureux pour la santé,
nous irons donc avec modération, consommer notre boisson. :cup_with_straw:

Ceci étant dit, Monsieur, Madame… je ne sais pas ?
je vous rejoins sur un point :

matograine, s’il vous plaît, ne vous offensez pas,
voyez en ce message une invitation, ce n’est rien d’autre qu’une proposition,
croyez moi, ou pas, ce n’est pas pour être désobligeant, je ne suis pas méchant, peut être un peu… chiant.

matograine , accordons nous pour ce repas ?


PS:

  • cette réalisation étant d’ores et déjà effective depuis 2 ans [ 2017 ] ayant permis de notifier que l’implémentation de Duniter sur ce point précisément n’étais pas fonctionnelle
    [ le Lead développeur de Duniter ayant eu la décence de le reconnaître - il existe un topic sur ce forum ]
  • du code étant disponible sur le gitlab depuis cette année [ 2019 ]
    ceci étant :

il n’y a pas lieu de préciser pour quels logiciels client dès lors la possibilité de l’intégrer dans le langage de son choix, aussi bien coté server que client

Il y a fort a parier qu’un nombre considérables d’inepties ce soit glissés sur ce topic,
passons cet effet " kiss cool " qui sensiblement n’étais, vraiment, pas prévus au programme.
quand bien même…

ePyStoleR \e.pis.tɔ.lɛʁ\ epistolaire

…cela rentre parfaitement dans ce cadre!

Effet garantis !


Salut
@tuxmain :slight_smile:

Aucuns tricks ou de black voodoo, sans heurts ni violence, le sujet est bien de savoir comment executer ce.s code.s, question qui restera en suspend (note que ePyStoleR c’est bien pour le clin d’oeil ^^ je sais également que certains termes te sont familiers [ainsi qu’a d’autres], ils s’adressent essentiellement au lecteur (les moins avertis) , je m’essai à un peu de pédago …)

ePyStoleR

  • est un programme
  • prend en paramètre un programme
  • execute ce programme

Ce.s programme.s

  • sont enregistrés/stockés dans la bdd G1,
  • sont accessibles par le biais de la bdd G1

Qui execute ePyStoleR ?

  • celui qui dispose de ce programme (ePyStoleR)
  • sur la machine / ordinateur qui dispose de ce programme

Qui execute ce.s programme.s ?

Tous programmes ayant accès à ces instructions / permettant d’executer ces instructions.

ePyStoleR n’est qu’un exemple parmis d’autres :

  • d’ores et déjà développés ou en cours de développement
  • d’ores et déjà en cours d’execution sur certaines machines (ordinateurs) ou dans un futur probable.

Concernant le champ d’application

  1. d’ePyStoleR => il execute ce.s programme.s [ tout du moins il place le pointeur d’instruction du CPU sur ces programmes ]
  2. de ce.s programme.s => ce pourquoi ils sont programmés :upside_down_face:

Concernant l’utilité relative

  1. de ce.s programme.s
  2. d’ePyStoleR
  3. du genre epistolaire

c’est… sans communes mesures :

Au regard d’une telle chaine de caractère:

6867310A0048C7C2030000004889E648C7C70100000048C7C0010000005C0F0548C7C03C0000000F05

un nombre certains d’individus n’y voient qu’une succession de chiffres & de lettres

et d’autres, du code => un programme => une suite d’instructions pour une architecture donnée [ en l’occurrence ici, Intel X86_64 (plateforme 64 bits) ]

Cette chaîne de caractère (sous forme hexadécimal) [ cette suite d’instruction / ce programme ] peut être stocker dans la base de données G1, cette dernière (ci-dessus) affiche:

g1

A savoir en ce qui me concerne, il y a 2 programme.s dans la bdd G1.

Ces 2 programmes sont visibles dans les transactions concernées via cette clée :

DuZhZHrbBJQdCMoTQZRxZF4WdHS5Q7NwKFgQPGaBHv42

Dont 1 présent à 2 reprises.
J’ai utilisé les identifiants ( jetestlamonnaielibre / jetestcesium )
pour faire un « backchange » => une transaction pour soi même ( en destinataire les mêmes identifiants ),
cela il y a quelques temps déjà :

  • block 264138

passé complétement inaperçu, sans que quiconque s’offusque de quoi que ce soit.

ce programme sur mon poste,
[via l’execution d " ePyStoler", que je n’ai pas renommé, il a le nom d’un executable par défaut => a.out ]
lance l’execution d’un shell (/bin/sh) :

epystoler17

le 2e :
epystoler16

En résumé ?

  • G1 permet d’inscrire des données arbitraires dans sa base de données (Looarn à levé un topic à ce sujet il y a 1 an)
  • Les transactions sont vecteurs de propagation (champs de commentaire & xhx )

c’est un choix de conception depuis la mise en prod

  • n’importe qui peut écrire de l’assembleur , laissant place à la créativité / l’imagination de ses auteurs
  • toutes personnes ayant accès à la base de données G1 (à ces programmes), est donc susceptible de pouvoir éxecuter ce code, de son gré ou à son insu
  • calculer l’espace de stockage disponible au travers d’une seule transaction pour écrire du code, par le biais de XHX & des commentaires, extrapoler en prenant en considération le montant minimum d’unité nécessaire pour effectuer une transaction…et ouvrir grand ses chakras

il n’y a rien d’anxiogène pour autant (en tous cas, pas de ma part) => Keep Calm

:slight_smile:
Enfin … quand :

jetestlamonnaielibre
jetestcesium

  1. je rends la monnaie

  2. j’écris du code open source

  3. vérifiable par tous !

  4. partagé auprès de tous :earth_asia:

PS : j’aurais souhaité trouver une telle clée que je n’y serais jamais parvenu…

et d’ajouter que

  1. il va de soit que le code concerné ne sera bien entendu pas communiqué (disons que je ne suis pas certains que ce soit à mettre entre les mains de tous le monde)
  1. pour certains techniciens, à la lecture de ce poste, ils n’auront sensiblement aucun mal à comprendre le sujet

  2. en ce qui me concerne, si toutefois une question pertinente se manifeste, pas de soucis pour y répondre, le cas échéant => merci de passez votre chemin :slight_smile:

1 J'aime

Il aurait suffi d’être clair dès le début.

J’ai plusieurs interrogations :

  • Pourquoi vouloir stocker des programmes de quelques octets dans la blockchain ? Un programme de cette taille peut-il avoir une utilité pratique ? Y a-t-il tant de programmes de cette taille qu’on préfère stocker chez soi un client BMA et des numéros de blocs plutôt que ces programmes ?
  • Comment savoir si un commentaire est bien un programme, ou seulement une suite de caractères aléatoires ? Il faut un magic number ou une référence externe.

Bref, pour mettre des programmes en blockchain il me semble plus efficace de stocker une multiaddr menant vers un programme (notamment via IPFS).

3 J'aimes