From e20f09d2003e38f1c8adfa461d959858cf0eddf8 Mon Sep 17 00:00:00 2001 From: Joshua <62268199+minimalsm@users.noreply.github.com> Date: Fri, 13 Feb 2026 23:51:46 +0000 Subject: [PATCH] i18n(fr): translation import part 02 of 13 (23 files) --- .../translations/fr/contributing/index.md | 100 +- .../fr/contributing/quizzes/index.md | 12 +- .../translation-program/faq/index.md | 50 +- .../how-to-translate/index.md | 24 +- .../contributing/translation-program/index.md | 41 +- .../translation-program/playbook/index.md | 317 +++++++ .../translation-program/resources/index.md | 39 +- .../translatathon/details/index.md | 90 ++ .../translatathon/index.md | 100 ++ .../translators-guide/index.md | 90 +- public/content/translations/fr/dao/index.md | 100 +- .../fr/decentralized-identity/index.md | 141 +-- public/content/translations/fr/defi/index.md | 145 +-- public/content/translations/fr/desci/index.md | 124 +-- .../fr/developers/docs/accounts/index.md | 57 +- .../fr/developers/docs/apis/backend/index.md | 86 +- .../developers/docs/apis/javascript/index.md | 133 ++- .../fr/developers/docs/apis/json-rpc/index.md | 858 ++++++++++-------- .../fr/developers/docs/blocks/index.md | 121 +-- .../fr/developers/docs/bridges/index.md | 105 +-- .../docs/consensus-mechanisms/index.md | 34 +- .../docs/consensus-mechanisms/poa/index.md | 11 +- .../pos/attack-and-defense/index.md | 8 +- 23 files changed, 1737 insertions(+), 1049 deletions(-) create mode 100644 public/content/translations/fr/contributing/translation-program/playbook/index.md create mode 100644 public/content/translations/fr/contributing/translation-program/translatathon/details/index.md create mode 100644 public/content/translations/fr/contributing/translation-program/translatathon/index.md diff --git a/public/content/translations/fr/contributing/index.md b/public/content/translations/fr/contributing/index.md index 5c92858687c..2e3ceba5f93 100644 --- a/public/content/translations/fr/contributing/index.md +++ b/public/content/translations/fr/contributing/index.md @@ -1,43 +1,49 @@ --- -title: Contribution -description: En savoir plus sur les différentes manières de contribuer à ethereum.org +title: Contribuer +description: "En savoir plus sur les différentes manières de contribuer à ethereum.org" lang: fr --- # Contribuer à ethereum.org 🦄 {#contributing-to-ethereumorg} -Ethereum.org est un projet open-source géré par **plus de 12 000** contributeurs qui aident à traduire, écrire, concevoir et maintenir le site web. +Ethereum.org est un projet open source géré par plus de **12 000** contributeurs qui aident à traduire, écrire, concevoir et maintenir le site Web. Nous sommes une communauté accueillante qui vous aidera à grandir et à vous former dans l'écosystème Ethereum tout en contribuant de manière significative et en obtenant une expérience pratique pertinente ! ## Comment contribuer {#ways-to-contribute} **Traductions** -- [Rejoignez le programme de traduction](/contributing/translation-program/). Aidez-nous à traduire ethereum.org dans de nouvelles langues + +- [Rejoignez le programme de traduction](/contributing/translation-program/) – Aidez-nous à traduire ethereum.org dans de nouvelles langues **Développement** -- [Travailler sur un ticket ouvert](https://github.com/ethereum/ethereum-org-website/issues) – Travail que nous avons identifié comme devant être fait + +- [Travaillez sur un problème ouvert](https://github.com/ethereum/ethereum-org-website/issues) – Des tâches que nous avons identifiées et qui restent à faire **Conception** -- [Aidez à concevoir le site web](/contributing/design/) – Les designers de tous niveaux peuvent contribuer à améliorer le site + +- [Aidez à la conception du site Web](/contributing/design/) – Les designers de tous les niveaux peuvent contribuer à l'amélioration du site Web **Contenu** -- [Créer/modifier du contenu](/contributing/#how-to-update-content) – Proposez de nouvelles pages ou des modifications de ce qui existe déjà -- [Ajouter un article pour la communauté](/contributing/content-resources/) – Ajoutez un article utile à une page pertinente -- [Suggérer une ressource de design](/contributing/design/adding-design-resources/) - Ajoutez, mettez à jour et supprimez des ressources de design utiles -- [Quiz](/contributing/quizzes/) - Ajoutez, mettez à jour et supprimez des questions de quiz sur une page pertinente + +- [Créer/modifier du contenu](/contributing/#how-to-update-content) – Suggérez de nouvelles pages ou apportez des modifications à ce qui existe déjà +- [Ajouter des ressources communautaires](/contributing/content-resources/) – Ajoutez un article ou une ressource utile à une page pertinente +- [Suggérer une ressource de conception](/contributing/design/adding-design-resources/) – Ajoutez, mettez à jour et supprimez des ressources de conception utiles +- [Quiz](/contributing/quizzes/) – Ajoutez, mettez à jour et supprimez des banques de questions de quiz pour une page pertinente **Idées de fonctionnalités** -- [Demander une fonctionnalité](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=Type%3A+Feature&template=feature_request.yaml&title=) – Faites-nous part de vos idées pour une nouvelle fonctionnalité ou un nouveau design + +- [Demander une fonctionnalité](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=Type%3A+Feature&template=feature_request.yaml&title=) – Faites-nous part de vos idées pour une nouvelle fonctionnalité ou une nouvelle conception **Liste de produits** -- [Ajouter une plateforme d'échange](/contributing/adding-exchanges/) – Ajoutez une plateforme d'échange à notre [outil de recherche d'échange](/get-eth/#country-picker) -- [Ajouter un produit/service](/contributing/adding-products/) – Ajoutez une application décentralisée (DApp) ou un portefeuille à une page pertinente + +- [Ajouter une plateforme d'échange](/contributing/adding-exchanges/) – Ajoutez une plateforme d'échange à notre [outil de recherche de plateformes d'échange](/get-eth/#country-picker) +- [Ajouter un produit](/contributing/adding-products/) – Ajoutez une dapp ou un portefeuille à une page pertinente - [Ajouter des outils de développement](/contributing/adding-developer-tools/) – Ajoutez un outil de développement à une page pertinente -- [Ajouter une couche 2](/contributing/adding-layer-2s/) – Ajoutez une seconde couche à une page pertinente -- [Ajouter un produit ou un service de mise en jeu](/contributing/adding-staking-products/) – Ajoutez un projet destiné à faciliter la mise en jeu, la mise en commun, ou la mise en jeu en tant que service -- [Ajouter un portefeuille](/contributing/adding-wallets/) – Ajoutez un portefeuille pour la [page de recherche de portefeuilles](/wallets/find-wallet/) -- [Suggérer un projet pour notre page DeSci](/contributing/adding-desci-projects/) – Ajoutez un projet construit sur Ethereum qui contribue à la science décentralisée +- [Ajouter une couche 2](/contributing/adding-layer-2s/) – Ajoutez une couche 2 à une page pertinente +- [Ajouter un produit ou service de staking](/contributing/adding-staking-products/) – Ajoutez un projet qui facilite le staking en solo, le staking en pool ou le staking en tant que service +- [Ajouter un portefeuille](/contributing/adding-wallets/) – Ajoutez un portefeuille pour la page [Trouver un portefeuille](/wallets/find-wallet/) +- [Suggérer un projet pour notre page DeSci](/contributing/adding-desci-projects/) – Ajoutez un projet basé sur Ethereum qui contribue à la science décentralisée Vous avez des questions ? 🤔 Rejoignez notre [serveur Discord](https://discord.gg/ethereum-org) @@ -51,64 +57,64 @@ Il s'agit de quelques tâches actuelles que vous pourriez nous aider à résoudr ## Comment travailler sur ethereum.org {#how-to-update-content} -Pour contribuer au [Programme de traduction](/contributing/translation-program/), vous devez créer un compte sur [Crowdin](https://crowdin.com/project/ethereum-org). Pour tout le reste, ajouter ou éditer du contenu ou des visuels sur le site web, corriger des bugs, travailler sur des tâches ouvertes, vous aurez besoin d'un compte [GitHub](https://github.com/). +Si vous souhaitez contribuer au [Programme de traduction](/contributing/translation-program/), nous vous demandons de créer un compte sur [Crowdin](https://crowdin.com/project/ethereum-org). Pour tout le reste – ajout ou modification de contenu ou de visuels sur le site Web, correction de bugs, travail sur des tâches ouvertes – vous aurez besoin d'un compte [GitHub](https://github.com/). Toutes les mises à jour sont faites sur GitHub via le processus de demande d'extraction (PR, de l'anglais « pull request »). Cela signifie que vous créez une copie locale du site web, modifiez le contenu et demandez à fusionner vos modifications avec le reste. Si vous n'avez jamais fait cela auparavant, suivez les instructions en bas de notre [dépôt GitHub](https://github.com/ethereum/ethereum-org-website). Vous n'avez pas besoin d'autorisation pour travailler sur quoi que ce soit, mais il est toujours préférable de nous faire savoir ce que vous prévoyez de faire. Pour ce faire, vous pouvez : -- commenter un ticket ou une PR sur [GitHub](https://github.com/ethereum/ethereum-org-website) ; ou -- Laissez un message sur notre [serveur Discord](https://discord.gg/ethereum-org) +- Commenter un problème ou une PR dans [GitHub](https://github.com/ethereum/ethereum-org-website) +- Envoyer un message sur notre [serveur Discord](https://discord.gg/ethereum-org) Avant de contribuer, assurez-vous que vous connaissez bien : -- la [vision d'ethereum.org](/about/) et son évolution ; -- nos [principes de conception](/contributing/design-principles/) ; et -- notre [guide de style](/contributing/style-guide/). +- la [vision évolutive d'ethereum.org](/about/) +- nos [principes de conception](/contributing/design-principles/) +- notre [guide de style](/contributing/style-guide/) - notre [code de conduite](/community/code-of-conduct) -## Comment sont prises les décisions concernant le site {#how-decisions-about-the-site-are-made} +## How decisions about the site are made {#how-decisions-about-the-site-are-made} -Les décisions concernant les RP individuelles, l'évolution de la conception et les mises à jour majeures sont prises par une équipe issue de l'ensemble de l'écosystème Ethereum. Cette équipe comprend des chefs de projet, des développeurs, des designers, des spécialistes du marketing et de la communication, ainsi que des experts thématiques. Chaque décision tient compte de l'avis de la communauté : n'hésitez donc pas à poser des questions via les tickets GitHub issue, à soumettre des pulls request ou à contacter l'équipe : +Decisions about individual PRs, design evolution and major upgrades are made by a team from across the Ethereum ecosystem. This team includes project managers, developers, designers, marketing and communications, and subject matter experts. Community input informs every decision: so please raise questions in issues, submit PRs, or contact the team: - [website@ethereum.org](mailto:website@ethereum.org) - [@ethdotorg](https://twitter.com/ethdotorg) -- [Serveur Discord](https://discord.gg/ethereum-org) +- [Discord server](https://discord.gg/ethereum-org) -### Remarque sur le plagiat {#plagiarism} +### A note on plagiarism {#plagiarism} -N'utilisez que votre travail original ou le contenu que vous avez la permission d'utiliser lorsque vous contribuez au contenu ou à l'artefact d'ethereum.org. De nombreux projets au sein de l'écosystème Ethereum utilisent des licences open source qui permettent le libre partage des informations. Toutefois, si vous ne trouvez pas ces informations, n'essayez pas de les ajouter à ethereum.org. Toute PR (pull request) considérée comme du plagiat sera rejetée. +Only use your original work or content that you have permission to use when contributing any content or artifact to ethereum.org. Many projects within the Ethereum ecosystem use open-source licensing that allows for the free sharing of information. However, if you cannot find this information, do not attempt to add it to ethereum.org. Any pull requests deemed as plagiarism will get rejected. -## Nouveau dans l'open source ? {#new-to-open-source} +## New to open-source? {#new-to-open-source} -Sur notre dépôt GitHub, nous avons des questions à faible barrière d'entrée spécialement conçues pour les développeurs qui sont novices en matière de logiciels libres et étiquetées [good first issue](https://github.com/ethereum/ethereum-org-website/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22). +We have low barrier to entry issues on our GitHub repository specifically designed for developers who are new to open-source labelled [good first issue](https://github.com/ethereum/ethereum-org-website/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22). -## Réclamer votre Onchain Achievement Token (OAT) {#oat} +## Claim your Onchain Achievement Token (OAT) {#oat} -Si votre contribution est intégrée à ethereum.org, vous aurez la possibilité de recevoir un badge spécial sur [Galxe](https://app.galxe.com/quest/ethereumorg). Un Onchain Achievement Token (OAT) est la preuve que vous avez contribué à rendre l'écosystème un peu plus incroyable. +If your contribution gets merged into ethereum.org, you will have a chance to claim a special badge on [Galxe](https://app.galxe.com/quest/ethereumorg). An Onchain Achievement Token (OAT) is a proof that you helped make the ecosystem a little more awesome. -[En savoir plus sur les OAT](https://help.galxe.com/en/articles/9645630-create-quest-rewards#h_1c5d63ba03) +[More on OATs](https://help.galxe.com/en/articles/9645630-create-quest-rewards#h_1c5d63ba03) -### Comment le récupérer -1. Rejoignez notre [serveur Discord](https://discord.gg/ethereum-org). -2. Collez un lien vers votre contribution dans le canal `#🥇 | proof-of-contribution`. -3. Attendez qu'un membre de notre équipe vous envoie un lien vers votre OAT. -4. Réclamez votre OAT ! +### How to claim -Vous ne devez utiliser que des portefeuilles autogérés pour récupérer les OAT. N'utilisez pas de comptes d'échange ou d'autres comptes dont vous ne détenez pas les clés privées, car ils ne vous permettront pas d'accéder à vos OAT et de les gérer. +1. Join our [Discord server](https://discord.gg/ethereum-org). +2. Paste a link to your contribution in the `#🥇 | proof-of-contribution` channel. +3. Wait for a member of our team to send you a link to your OAT. +4. Claim your OAT! -## Récupérez votre GitPOAP {#claim-gitpoap} +You should only use self-custody wallets to claim OATs. Do not use exchange accounts or other accounts you do not hold the private keys to, as these will not allow you to access and manage your OATs. -GitPOAP reconnaîtra automatiquement votre contribution intégrée et vous permettra de créer un POAP de contributeur unique et distinct sur leur plateforme ! +## Claim your GitPOAP {#claim-gitpoap} +GitPOAP will also automatically recognize your merged contribution and let you mint a separate unique contributors POAP on their platform itself! -### Comment l'obtenir {#how-to-claim} +### How to claim {#how-to-claim} -1. Visitez [GitPOAP](https://www.gitpoap.io). -2. Connectez-vous avec votre portefeuille ou même avec votre e-mail via l'option de connexion. -3. Recherchez votre nom d'utilisateur GitHub, votre adresse ETH, vos noms sur ENS ou d'autres GitPOAP pour vérifier si vous êtes éligible. -4. Si votre compte GitHub est éligible, alors vous pourrez avoir un GitPOAP ! +1. Visit [GitPOAP](https://www.gitpoap.io). +2. Connect with your wallet or even with your email through sign in option. +3. Search for your GitHub username, ETH address, ENS names or any GitPOAP to check if you're eligible. +4. If your GitHub account is eligible, then you would be able to mint a GitPOAP! -## Contributeurs {#contributors} +## Contributors {#contributors} diff --git a/public/content/translations/fr/contributing/quizzes/index.md b/public/content/translations/fr/contributing/quizzes/index.md index 00fdea1f525..e34837d3371 100644 --- a/public/content/translations/fr/contributing/quizzes/index.md +++ b/public/content/translations/fr/contributing/quizzes/index.md @@ -4,7 +4,7 @@ description: La politique que nous appliquons pour ajouter des quiz sur ethereum lang: fr --- -# Quiz {#quizzes} +# Questionnaires {#quizzes} Les quiz permettent aux utilisateurs de vérifier s'ils ont bien compris le contenu de la page qu'ils viennent de lire. Les questions doivent être basées sur le contenu de la page et ne doivent pas porter sur des informations qui n'y sont pas mentionnées. @@ -15,11 +15,11 @@ Vous trouverez ici quelques exemples de quiz actuels : - [Couche 2](/layer-2) - [NFT](/nft/) - [Qu'est-ce qu'Ethereum ?](/what-is-ethereum/) -- [Qu'est-ce que l'ETH ?](/what-is-ether/) +- [Qu'est-ce que l'ETH ?](/what-is-ether/) ## Ajouter un quiz d'apprentissage -Si une page n'a pas encore fait l'objet d'un quiz éducatif, veuillez [ouvrir un ticket](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=&template=suggest_quiz.yaml) pour cette page. +S'il existe une page pour laquelle aucun questionnaire d'apprentissage n'a été créé, veuillez [ouvrir un ticket](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=&template=suggest_quiz.yaml) à ce sujet. Veuillez fournir les informations suivantes : @@ -32,7 +32,7 @@ Veuillez fournir les informations suivantes : ## Ajouter une question de quiz -Si vous souhaitez ajouter une question à la base de questions d'un quiz, veuillez [ouvrir un ticket](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=&template=suggest_quiz.yaml) et fournir les informations suivantes : +Si vous souhaitez ajouter une question à la banque de questions pour un questionnaire, veuillez [ouvrir un ticket](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=&template=suggest_quiz.yaml) et fournir les informations suivantes : - La page sur laquelle vous souhaitez ajouter une question de quiz - Pour chaque question, fournir les informations suivantes : @@ -43,7 +43,7 @@ Si vous souhaitez ajouter une question à la base de questions d'un quiz, veuill ## Mettre à jour une question de quiz -Si vous souhaitez mettre à jour une question dans la base de questions d'un quiz, veuillez [ouvrir un ticket](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=&template=suggest_quiz.yaml) et fournir les informations suivantes : +Si vous souhaitez mettre à jour une question dans la banque de questions d'un questionnaire, veuillez [ouvrir un ticket](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=&template=suggest_quiz.yaml) et fournir les informations suivantes : - La page sur laquelle vous souhaitez mettre à jour une question de quiz - Pour chaque question modifiée, veuillez fournir les informations suivantes : @@ -55,7 +55,7 @@ Si vous souhaitez mettre à jour une question dans la base de questions d'un qui ## Supprimer une question de quiz -Si le contenu d'une question n'existe plus sur la page et que celle-ci doit être supprimée, veuillez [ouvrir un ticket](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=&template=suggest_quiz.yaml) pour supprimer la question et fournir les informations suivantes : +Si le contenu d'une question n'existe plus sur la page et qu'elle doit être supprimée, veuillez [ouvrir un ticket](https://github.com/ethereum/ethereum-org-website/issues/new?assignees=&labels=&template=suggest_quiz.yaml) pour supprimer la question et fournir les informations suivantes : - La page sur laquelle vous souhaitez supprimer une question de quiz - La question que vous souhaitez supprimer diff --git a/public/content/translations/fr/contributing/translation-program/faq/index.md b/public/content/translations/fr/contributing/translation-program/faq/index.md index b6cbe3c086e..6476d62437e 100644 --- a/public/content/translations/fr/contributing/translation-program/faq/index.md +++ b/public/content/translations/fr/contributing/translation-program/faq/index.md @@ -1,10 +1,10 @@ --- title: Foire aux questions du programme de traduction (FAQ) lang: fr -description: Questions fréquentes sur le programme de traduction d'ethereum.org +description: "Questions fréquentes sur le programme de traduction d'ethereum.org" --- -# Guide de traduction du site ethereum.org {#translating-ethereum-guide} +# Guide de traduction d'ethereum.org {#translating-ethereum-guide} Si vous n'avez jamais utilisé de logiciels de traduction et hésitez à vous lancer, voici quelques questions/réponses pour commencer. Utilisez ce guide pour trouver les réponses aux questions les plus courantes. @@ -18,31 +18,31 @@ Le but du programme de traduction est de rendre le contenu Ethereum accessible Par conséquent, le programme de traduction est ouvert et sur la base du volontariat, et la participation n'est pas rémunérée. Si nous devions indemniser les traducteurs pour le nombre de mots qu'ils traduisent, nous ne pourrions inviter que ceux qui ont une expérience de traduction suffisante (traducteurs professionnels) à rejoindre le programme de traduction. Cela rendrait le programme de traduction exclusif et nous empêcherait d'atteindre les objectifs énoncés, en particulier : permettre à chacun de participer et de s'impliquer dans l'écosystème. -Nous faisons tout notre possible pour permettre à nos contributeurs de réussir dans l'écosystème Ethereum. De nombreuses incitations non monétaires sont en place, notamment [l'offre de POAP](/contributing/translation-program/acknowledgements/#poap) et la délivrance d'un certificat de traducteur[](/contributing/translation-program/acknowledgements/#certificate), ainsi que l'organisation de [classements des traducteurs](/contributing/translation-program/acknowledgements/) et [la mention de tous nos traducteurs sur le site](/contributing/translation-program/contributors/). +Nous mettons tout en œuvre pour permettre à nos contributeurs de réussir dans l'écosystème Ethereum ; de nombreuses incitations non monétaires sont en place, telles que : [l'offre de POAP](/contributing/translation-program/acknowledgements/#poap) et d'un [certificat de traducteur](/contributing/translation-program/acknowledgements/#certificate), ainsi que l'organisation des [classements des traducteurs](/contributing/translation-program/acknowledgements/) et [la publication de la liste de tous nos traducteurs sur le site](/contributing/translation-program/contributors/). -## Comment traduire des chaînes avec des balises `` ? {#tags} +## Comment traduire des chaînes avec des `` ? {#tags} -Toutes les chaînes ne sont pas écrites sous forme de texte pur. Certaines se composent de scripts mixtes comme des balises HTML (`<0>`, ``), généralement utilisées pour les hyperliens ou les styles de caractère au sein d'une phrase. +Toutes les chaînes ne sont pas écrites sous forme de texte pur. Certaines chaînes se composent de scripts mixtes comme des balises HTML (`<0>`, ``). Ceci est généralement utilisé pour les hyperliens ou les styles alternatifs au milieu d'une phrase. -- Traduisez le texte à l'intérieur des balises, mais pas les balises elles-mêmes. Tout ce qui se trouve entre les `<` et `>` ne doit pas être traduit ni supprimé. +- Traduisez le texte à l'intérieur des balises, mais pas les balises elles-mêmes. Tout ce qui se trouve dans les chevrons `<` et `>` ne doit pas être traduit ou supprimé. - Pour éviter tout problème dans la chaîne, nous vous recommandons de cliquer sur le bouton « Copy Source » (Copier la source) situé en bas à gauche. La chaîne d'origine sera copiée et collée dans la zone texte. Cela vous permet de savoir clairement où se trouvent les balises et vous aide à éviter les erreurs. -![Interface Crowdin avec le bouton copy source mis en évidence](./html-tag-strings.png) +![Interface Crowdin avec le bouton « Copier la source » en surbrillance](./html-tag-strings.png) Vous pouvez déplacer les balises dans la chaîne pour la rendre plus naturelle dans votre langue. Assurez-vous de bien déplacer la balise entière. -Pour des informations plus détaillées sur le traitement des balises et des extraits de code, veuillez vous référer au [guide de style pour la traduction d'ethereum.org](/contributing/translation-program/translators-guide/#dealing-with-tags). +Pour obtenir des informations plus détaillées sur la gestion des balises et des extraits de code, veuillez vous référer au [guide de style de traduction d'ethereum.org](/contributing/translation-program/translators-guide/#dealing-with-tags). ## Où sont réellement les chaînes ? {#strings} Souvent, les chaînes sources seules ne sont pas suffisantes pour fournir une traduction précise. - Jetez un coup d'œil aux captures d'écran et au contexte pour plus d'informations. Dans la section « Source String » (Chaîne source), vous verrez la capture d'écran correspondante qui vous montrera comment la chaîne est utilisée en contexte. -- Si vous avez encore des doutes, signalez-le dans la section « Comments » (Commentaires). [Comment laisser un commentaire ?](#comment) +- Si vous avez encore des doutes, signalez-le dans la section « Comments » (Commentaires). [Vous ne savez pas comment laisser un commentaire ?](#comment) -![Image montrant comment du contexte peut être fourni pour une phrase avec une capture d'écran](./source-string.png) +![Montre comment le contexte d'une chaîne peut être fourni avec une capture d'écran](./source-string.png) -![Un exemple de capture d'écran ajoutée pour le contexte](./source-string-2.png) +![Exemple de capture d'écran ajoutée pour le contexte](./source-string-2.png) ## Comment laisser des commentaires ou poser des questions ? Je voudrais signaler un problème ou une faute de frappe... {#comment} @@ -52,36 +52,36 @@ Si vous voulez signaler une chaîne particulière qui a besoin d'être examinée - Une fois le commentaire envoyé, notre équipe en sera informée. Nous résoudrons le problème et vous le ferons savoir en répondant à votre commentaire et en clôturant le problème. - Si vous signalez une traduction incorrecte, la traduction initiale ainsi que votre proposition seront revues par un locuteur natif lors de la prochaine révision. -![Image montrant comment écrire des commentaires et signaler des problèmes/poser des questions](./comment-issue.png) +![Montre comment ajouter des commentaires et des problèmes](./comment-issue.png) ## Qu'est-ce que la mémoire de traduction (TM) ? {#translation-memory} -La mémoire de traduction (TM, de l'anglais Translation Memory) est une fonctionnalité de Crowdin qui stocke toutes les chaînes précédemment traduites sur [ethereum.org](https://ethereum.org/). Lorsqu'une chaîne de caractères est traduite, elle est automatiquement enregistrée dans notre TM du projet. Cela peut être un outil utile pour vous aider à gagner du temps ! +La mémoire de traduction (TM, de l'anglais Translation Memory) est une fonctionnalité de Crowdin qui stocke toutes les chaînes précédemment traduites sur ethereum.org. Lorsqu'une chaîne de caractères est traduite, elle est automatiquement enregistrée dans notre TM du projet. Cela peut être un outil utile pour vous aider à gagner du temps ! - Regardez la section « TM and MT Suggestions » (Suggestions de la mémoire de traduction et de traduction automatique) et vous verrez comment les autres traducteurs ont traduit la phrase ou une phrase similaire. Si vous trouvez une suggestion qui correspond, n'hésitez pas à l'utiliser en cliquant dessus. - S'il n'y a rien dans la liste, vous pouvez rechercher dans la TM des traductions faites précédemment et les réutiliser pour assurer la cohérence. -![Une capture d'écran de la mémoire de traduction](./translation-memory.png) +![Capture d'écran de la mémoire de traduction](./translation-memory.png) ## Comment utiliser le glossaire Crowdin ? {#glossary} -La terminologie Ethereum est un autre élément crucial de notre travail de traduction, car souvent les nouveaux termes technologiques n'auront pas encore d'équivalents dans de nombreuses langues. Certains termes ont également des significations différentes dans différents contextes. [En savoir plus sur la traduction de la terminologie Ethereum](#terminology) +La terminologie Ethereum est un autre élément crucial de notre travail de traduction, car souvent les nouveaux termes technologiques n'auront pas encore d'équivalents dans de nombreuses langues. Certains termes ont également des significations différentes dans différents contextes. [En savoir plus sur la traduction de la terminologie d'Ethereum](#terminology) Le glossaire Crowdin est le meilleur endroit pour clarifier les termes et les définitions. Il y a deux façons de se référer au glossaire. - Premièrement, lorsque vous voyez un terme souligné dans la chaîne source, vous pouvez le survoler, ce qui affichera une brève définition. -![Un exemple de définition du glossaire](./glossary-definition.png) +![Exemple de définition de glossaire](./glossary-definition.png) - Deuxièmement, si vous voyez un terme qui ne vous est pas familier, mais qui n'est pas souligné, vous pouvez effectuer une recherche dans l'onglet du glossaire (le troisième bouton de la colonne de droite). Vous trouverez des explications sur des termes spécifiques et sur ceux fréquemment utilisés dans le projet. -![Une capture d'écran montrant où trouver l'onglet glossaire dans Crowdin](./glossary-tab.png) +![Capture d'écran montrant où trouver l'onglet du glossaire dans Crowdin](./glossary-tab.png) - Si vous ne trouvez toujours pas votre terme, c'est l'occasion d'ajouter un nouveau terme ! Nous vous encourageons à le rechercher sur un moteur de recherche et à ajouter la description au glossaire. Cela sera d'une grande aide aux autres traducteurs pour mieux comprendre le terme. -![Une capture d'écran montrant comment ajouter un terme au glossaire de Crowdin](./add-glossary-term.png) +![Capture d'écran montrant comment ajouter un terme au glossaire dans Crowdin](./add-glossary-term.png) -### Politique de traduction terminologique {#terminology} +### Politique de traduction de la terminologie {#terminology} _Pour les noms (marques, entreprises, personnes) et les nouveaux termes technologiques (chaîne phare, chaîne de fragments, etc.)_ @@ -93,7 +93,7 @@ Après mûre réflexion, nous avons pris la décision de laisser le choix de la Voici ce que nous suggérons lorsque vous trouvez un terme qui vous est inconnu : -- Reportez-vous au [glossaire des termes](#glossary), vous pourriez y trouver comment d'autres traducteurs l'ont traduit précédemment. Si vous pensez que le terme précédemment traduit n'est pas approprié, n'hésitez pas à proposer votre traduction en ajoutant un nouveau terme au glossaire Crowdin. +- Reportez-vous au [Glossaire des termes](#glossary), vous y trouverez peut-être la façon dont d'autres traducteurs l'ont traduit précédemment. Si vous pensez que le terme précédemment traduit n'est pas approprié, n'hésitez pas à proposer votre traduction en ajoutant un nouveau terme au glossaire Crowdin. - Si aucune traduction précédente n'existe dans le glossaire, nous vous encourageons à rechercher le terme sur un moteur de recherche ou dans un article de presse pour déterminer comment le terme est réellement utilisé dans votre communauté. - Si vous ne trouvez aucune référence, n'hésitez pas à faire confiance à votre intuition et à suggérer une nouvelle traduction dans votre langue ! - Si vous n'êtes pas très confiant à cette idée, laissez le terme non traduit. Parfois, les termes anglais sont plus qu'adéquats pour fournir des définitions précises. @@ -102,18 +102,18 @@ Nous vous recommandons de laisser les noms des marques, des entreprises et des p ## Comment fonctionne le processus de révision ? {#review-process} -Pour assurer un certain niveau de qualité et de cohérence dans nos traductions, nous travaillons avec [Acolad](https://www.acolad.com/), l'un des plus grands fournisseurs de services linguistiques au monde. Acolad compte 20 000 linguistes professionnels, ce qui signifie qu'ils peuvent fournir des réviseurs professionnels pour chaque langue et chaque type de contenu dont nous avons besoin. +Pour garantir un certain niveau de qualité et de cohérence dans nos traductions, nous travaillons avec [Acolad](https://www.acolad.com/), l'un des plus grands fournisseurs de services linguistiques au monde. Acolad compte 20 000 linguistes professionnels, ce qui signifie qu'ils peuvent fournir des réviseurs professionnels pour chaque langue et chaque type de contenu dont nous avons besoin. -Le processus de révision est simple ; une fois qu'un certain [ensemble de contenu](/contributing/translation-program/content-buckets) est traduit à 100 %, nous commandons une révision pour cet ensemble de contenu. Le processus de révision se déroule directement dans Crowdin. Une fois la révision terminée, nous mettons à jour le site web avec le contenu traduit. +Le processus de révision est simple ; une fois qu'un ensemble de contenu est traduit à 100 %, nous commandons une révision pour ce lot de contenu. Le processus de révision se déroule directement dans Crowdin. Une fois la révision terminée, nous mettons à jour le site web avec le contenu traduit. ## Comment ajouter du contenu dans ma langue ? {#adding-foreign-language-content} Actuellement, tout le contenu dans d'autres langues que l'anglais a été traduit directement à partir du contenu source anglais, et tout contenu qui n'existe pas en anglais ne peut être ajouté dans les autres langues. -Pour proposer du nouveau contenu pour ethereum.org, vous pouvez [créer un ticket](https://github.com/ethereum/ethereum-org-website/issues) sur GitHub. S'il est ajouté, le contenu sera écrit en anglais et traduit par la suite dans d'autres langues à l'aide de Crowdin. +Pour suggérer du nouveau contenu pour ethereum.org, vous pouvez [créer un problème](https://github.com/ethereum/ethereum-org-website/issues) sur GitHub. S'il est ajouté, le contenu sera écrit en anglais et traduit par la suite dans d'autres langues à l'aide de Crowdin. Nous prévoyons de prendre en charge l'ajout de contenu dans d'autres langues que l'anglais dans un futur proche. -## Nous contacter {#contact} +## Contactez-nous {#contact} -Je vous remercie d'avoir lu toutes ces informations. Nous espérons que cela vous aidera à participer à notre programme. N'hésitez pas à rejoindre notre [canal de traduction sur Discord](https://discord.gg/ethereum-org) afin de poser des questions et de travailler avec les autres traducteurs, ou à nous contacter à l'adresse translations@ethereum.org ! +Je vous remercie d'avoir lu toutes ces informations. Nous espérons que cela vous aidera à participer à notre programme. N'hésitez pas à rejoindre notre [canal de traduction Discord](https://discord.gg/ethereum-org) pour poser des questions et collaborer avec d'autres traducteurs, ou contactez-nous à l'adresse translations@ethereum.org ! diff --git a/public/content/translations/fr/contributing/translation-program/how-to-translate/index.md b/public/content/translations/fr/contributing/translation-program/how-to-translate/index.md index b88a1af2503..e945092b8b2 100644 --- a/public/content/translations/fr/contributing/translation-program/how-to-translate/index.md +++ b/public/content/translations/fr/contributing/translation-program/how-to-translate/index.md @@ -22,28 +22,27 @@ Vous devrez vous connecter à votre compte Crowdin ou vous inscrire si vous n'av Rejoindre le projet -### Accédez à votre langue {#open-language} +### Ouvrez votre langue {#open-language} -Après vous être connecté à Crowdin, vous verrez une description du projet et une liste de toutes les langues disponibles. Chaque langue contient également des informations sur le nombre total de mots traduisibles et une vue d'ensemble de la quantité de contenu qui a été traduite et approuvée dans une langue spécifique. +Après vous être connecté à Crowdin, vous verrez une description du projet et une liste de toutes les langues disponibles. +Chaque langue contient également des informations sur le nombre total de mots traduisibles et une vue d'ensemble de la quantité de contenu qui a été traduite et approuvée dans une langue spécifique. Ouvrez la langue dans laquelle vous souhaitez traduire pour voir la liste des fichiers disponibles pour la traduction. -![Liste des langues sur Crowdin](./list-of-languages.png) +![Liste des langues dans Crowdin](./list-of-languages.png) ### Trouvez un document sur lequel travailler {#find-document} Le contenu du site web est divisé en un certain nombre de documents et d'ensembles de contenus. Vous pouvez vérifier la progression de chaque document sur la droite. Si la progression de la traduction est inférieure à 100 %, n'hésitez pas à y contribuer ! -Votre langage n'est pas répertorié ici ? [Créez un ticket](https://github.com/ethereum/ethereum-org-website/issues/new/choose) ou demandez de l'aide sur notre [Discord](https://discord.gg/ethereum-org) +Votre langage n'est pas répertorié ici ? [Ouvrez un ticket](https://github.com/ethereum/ethereum-org-website/issues/new/choose) ou demandez sur notre [Discord](https://discord.gg/ethereum-org) -![Fichiers traduits et non traduits sur Crowdin](./crowdin-files.png) +![Fichiers traduits et non traduits dans Crowdin](./crowdin-files.png) -Une remarque sur les ensembles de contenu : nous utilisons des « ensembles de contenu » dans Crowdin pour que le contenu le plus prioritaire soit publié en premier. Lorsque vous parcourez une langue, comme le [philippin](https://crowdin.com/project/ethereum-org/fil#) par exemple, vous verrez des dossiers pour chaque ensemble de contenu (« 1. Homepage », « 2. Essentials », « 3. Exploring », etc.). +Une remarque sur les ensembles de contenu : nous utilisons des « ensembles de contenu » dans Crowdin pour que le contenu le plus prioritaire soit publié en premier. Lorsque vous consultez une langue, par exemple, le [philippin](https://crowdin.com/project/ethereum-org/fil#) vous verrez des dossiers pour l'ensemble de contenu ("1. Homepage », « 2. Essentials », « 3. Exploring », etc.). Nous vous encourageons à traduire dans cet ordre numérique (1 → 2 → 3 → ⋯) afin de garantir que les pages ayant le plus fort impact soient traduites en premier. -[En savoir plus sur les compartiments de contenu ethereum.org](/contributing/translation-program/content-buckets/) - ### Traduire {#translate} Après avoir sélectionné le dossier que vous souhaitez traduire, il s'ouvrira dans l'éditeur en ligne. Si vous n'avez jamais utilisé Crowdin auparavant, vous pouvez utiliser ce guide rapide pour passer en revue les bases. @@ -60,7 +59,8 @@ Vous pouvez également utiliser les boutons situés en haut pour rechercher des **_2 – Zone éditeur_** -Il s'agit de la zone de traduction principale. Le texte source est affiché en haut, avec du contexte et des captures d'écran supplémentaires, si disponibles. Pour proposer une nouvelle traduction, tapez votre traduction dans le champ « Enter translation here » (Entrez la traduction ici), puis cliquez sur « Save » (Enregistrer). +Il s'agit de la zone de traduction principale. Le texte source est affiché en haut, avec du contexte et des captures d'écran supplémentaires, si disponibles. +Pour proposer une nouvelle traduction, tapez votre traduction dans le champ « Enter translation here » (Entrez la traduction ici), puis cliquez sur « Save » (Enregistrer). Dans cette section, vous pouvez également trouver des traductions existantes de la phrase dans d'autres langues, ainsi que des correspondances issues de la mémoire de traduction et des suggestions de traduction automatique. @@ -70,7 +70,7 @@ C'est ici que vous pouvez trouver des commentaires, des entrées de mémoire de En utilisant les boutons situés en haut, vous pouvez également accéder à la mémoire de traduction, où vous pouvez rechercher des traductions existantes, ou au glossaire, qui contient des descriptions et traductions de termes clés. -Vous voulez en savoir plus ? N'hésitez pas à consulter la [documentation sur l'utilisation de l'éditeur en ligne Crowdin](https://support.crowdin.com/online-editor/) +Vous voulez en savoir plus ? N'hésitez pas à consulter la [documentation sur l'utilisation de l'éditeur en ligne de Crowdin](https://support.crowdin.com/online-editor/) ### Processus de révision {#review-process} @@ -83,9 +83,9 @@ Une fois que vous avez terminé la traduction (c'est-à-dire que tous les fichie -### Nous contacter {#get-in-touch} +### Contactez-nous {#get-in-touch} -Avez-vous d'autres questions ? Ou souhaitez-vous collaborer avec notre équipe et d'autres traducteurs ? Envoyez un message dans le canal #translations sur notre [serveur Discord ethereum.org](https://discord.gg/ethereum-org) +Avez-vous d'autres questions ? Ou souhaitez-vous collaborer avec notre équipe et d'autres traducteurs ? Veuillez publier un message dans le canal #translations de notre [serveur Discord ethereum.org](https://discord.gg/ethereum-org) Vous pouvez également nous contacter à l'adresse translations@ethereum.org diff --git a/public/content/translations/fr/contributing/translation-program/index.md b/public/content/translations/fr/contributing/translation-program/index.md index 115ce339976..a3ce5991486 100644 --- a/public/content/translations/fr/contributing/translation-program/index.md +++ b/public/content/translations/fr/contributing/translation-program/index.md @@ -16,14 +16,14 @@ Le programme de traduction d'ethereum.org est ouvert et n'importe qui peut y con 1. Vous devrez vous connecter à votre compte Crowdin ou vous inscrire. 2. Sélectionnez la langue à laquelle vous souhaitez contribuer. -3. Avant de commencer, veuillez consulter le guide [Comment traduire](/contributing/translation-program/how-to-translate/) pour apprendre comment utiliser Crowdin, et le [Guide de style de traduction](/contributing/translation-program/translators-guide/) pour obtenir des conseils et connaître les bonnes pratiques. +3. Avant de commencer, veuillez consulter le guide [Comment traduire](/contributing/translation-program/how-to-translate/) pour apprendre à utiliser Crowdin, ainsi que le [Guide de style de traduction](/contributing/translation-program/translators-guide/) pour obtenir des conseils et des bonnes pratiques. 4. Les traductions automatiques ne seront pas approuvées. 5. Toutes les traductions sont vérifiées avant d'être ajoutées au site, par conséquent il y aura un court délai avant que vos traductions ne soient en ligne. -_Rejoignez [ethereum.org Discord](https://discord.gg/ethereum-org) pour collaborer aux traductions, poser des questions, partager des commentaires et des idées, ou rejoindre un groupe de traduction._ +_Rejoignez le [Discord d'ethereum.org](https://discord.gg/ethereum-org) pour collaborer aux traductions, poser des questions, partager vos commentaires et idées, ou rejoindre un groupe de traduction._ - Commencez à traduire + Commencer à traduire ## À propos du programme de traduction {#about-us} @@ -32,19 +32,20 @@ La communauté Ethereum se veut mondiale et inclusive, mais une grande partie de Le Programme de traduction d'ethereum.org vise à rendre Ethereum accessible à tous en traduisant le site ethereum.org et les autres contenus Ethereum en autant de langues que possible. -En savoir plus sur [la mission et la vision](/contributing/translation-program/mission-and-vision) du Programme de traduction d'ethereum.org. +En savoir plus sur la [mission et la vision](/contributing/translation-program/mission-and-vision) du programme de traduction d'ethereum.org. -### Les progrès réalisés jusqu'à présent {#our-progress} +### Nos progrès jusqu'à présent {#our-progress} -- [**plus de 6900** traducteurs](/contributing/translation-program/contributors/) -- **68** langues présentes sur le site +- [**Plus de 6 900** traducteurs](/contributing/translation-program/contributors/) +- **68** langues disponibles sur le site - [**2,89 millions** de mots traduits en 2024](/contributing/translation-program/acknowledgements/) ### Remerciements {#acknowledgements} -Ethereum.org est traduit par des milliers de membres de la communauté qui sont les membres clés du Programme de traduction. Nous voulons saluer le travail de nos traducteurs et les soutenir dans leur carrière. Voici quelques-uns de nos remerciements destinés aux traducteurs : +Ethereum.org est traduit par des milliers de membres de la communauté qui sont les membres clés du Programme de traduction. +Nous voulons saluer le travail de nos traducteurs et les soutenir dans leur carrière. Voici quelques-uns de nos remerciements destinés aux traducteurs : #### Certificat {#certificate} @@ -54,13 +55,13 @@ Si vous avez contribué au Programme de traduction et qu'au moins 5 000 des mots Les contributeurs au Programme de traduction sont éligibles à différents OAT (onchain achievement tokens) en fonction du nombre de mots traduits en 2024. Les OAT sont des NFT qui prouvent votre contribution au Programme de traduction d'ethereum.org. [En savoir plus sur les OAT](/contributing/translation-program/acknowledgements/#oats) -#### Traducteurs mis à l'honneur {#translator-acknowledgements} +#### Remerciements aux traducteurs {#translator-acknowledgements} -Reconnaissances publiques de nos meilleurs traducteurs en utilisant [des tableaux de classement](/contributing/translation-program/acknowledgements/) et une [liste de tous les contributeurs au Programme de traduction](/contributing/translation-program/contributors/). +Remerciements publics à nos meilleurs traducteurs au moyen de [classements](/contributing/translation-program/acknowledgements/) et d'une [liste de tous les contributeurs au programme de traduction](/contributing/translation-program/contributors/). #### Récompenses {#rewards} -Par le passé, nous avons récompensé rétroactivement nos contributeurs les plus actifs en leur offrant des billets pour les conférences Ethereum comme [Devcon](https://devcon.org/en/) et [Devconnect](https://devconnect.org/), ainsi que des produits dérivés exclusifs d'ethereum.org. +Par le passé, nous avons récompensé rétroactivement nos contributeurs les plus actifs en leur offrant des billets pour des conférences Ethereum comme [Devcon](https://devcon.org/en/) et [Devconnect](https://devconnect.org/), ainsi que des produits dérivés exclusifs d'ethereum.org. Nous réfléchissons constamment à de nouvelles façons innovantes de récompenser nos contributeurs, alors restez à l'écoute ! @@ -68,23 +69,23 @@ Nous réfléchissons constamment à de nouvelles façons innovantes de récompen Si vous contribuez au Programme de traduction ou songez à vous impliquer, vous devriez consulter les guides de traduction ci-dessous : -- [Guide de style pour la traduction](/contributing/translation-program/translators-guide/) _– instructions et conseils pour les traducteurs d'ethereum.org _ -- [FAQ sur la traduction](/contributing/translation-program/faq/) _– foire aux questions sur le programme de traduction d'ethereum.org_ -- [Guide sur l'éditeur en ligne Crowdin](https://support.crowdin.com/online-editor/) _– un guide détaillé sur l'utilisation de l'éditeur en ligne Crowdin et certaines des fonctionnalités avancées de Crowdin_ -- [Ensembles de contenu](/contributing/translation-program/content-buckets/) _– quelles pages sont incluses dans chaque ensemble de contenu d'ethereum.org_ +- [Guide de style de traduction](/contributing/translation-program/translators-guide/) _– instructions et conseils pour les traducteurs d'ethereum.org_ +- [FAQ sur la traduction](/contributing/translation-program/faq/) _– foire aux questions et réponses sur le programme de traduction d'ethereum.org_ +- [Guide de l'éditeur en ligne de Crowdin](https://support.crowdin.com/online-editor/) _– un guide détaillé sur l'utilisation de l'éditeur en ligne de Crowdin et certaines de ses fonctionnalités avancées_ -Pour obtenir d'autres outils de traduction utiles, connaître les communautés de traducteurs et lire des articles de blog du Programme de traduction, veuillez visiter la [page Ressources](/contributing/translation-program/resources/). +Pour d'autres outils de traduction utiles, les communautés de traducteurs et les articles de blog du programme de traduction, veuillez consulter la [page Ressources](/contributing/translation-program/resources/). -## Nous contacter {#get-in-touch} +## Contactez-nous {#get-in-touch} -Vous avez d'autres questions ? Ou souhaitez-vous collaborer avec notre équipe et d'autres traducteurs ? Envoyez un message dans le canal #translations sur notre [serveur Discord ethereum.org](https://discord.gg/ethereum-org) +Avez-vous d'autres questions ? Ou souhaitez-vous collaborer avec notre équipe et d'autres traducteurs ? Veuillez publier un message dans le canal #translations de notre [serveur Discord ethereum.org](https://discord.gg/ethereum-org) Vous pouvez également nous contacter à l'adresse translations@ethereum.org ## Lancer votre propre programme de traduction {#starting-a-translation-program} -Nous tenons à traduire le contenu Ethereum en autant de langues que possible et à mettre le contenu éducatif à la disposition de tous. En vertu de l'importance que nous accordons aux traductions, nous souhaitons apporter notre aide à d'autres projets Ethereum dans l'organisation, la gestion et l'amélioration de leurs propres efforts de traduction. +Nous tenons à traduire le contenu Ethereum en autant de langues que possible et à mettre le contenu éducatif à la disposition de tous. +En vertu de l'importance que nous accordons aux traductions, nous souhaitons apporter notre aide à d'autres projets Ethereum dans l'organisation, la gestion et l'amélioration de leurs propres efforts de traduction. -C'est pourquoi nous avons créé un [manuel pour le Programme de traduction](/contributing/translation-program/playbook/) qui contient quelques conseils et bonnes pratiques que nous avons identifiées et regroupés au cours du processus de traduction du site ethereum.org. +C'est pourquoi nous avons créé un [manuel du programme de traduction](/contributing/translation-program/playbook/) qui contient des conseils et des bonnes pratiques que nous avons recueillis lors de la traduction d'ethereum.org. Vous souhaitez collaborer davantage ou utiliser certaines de nos ressources de traduction ? Vous avez des commentaires sur le manuel ? N'hésitez pas à nous contacter à l'adresse translations@ethereum.org. diff --git a/public/content/translations/fr/contributing/translation-program/playbook/index.md b/public/content/translations/fr/contributing/translation-program/playbook/index.md new file mode 100644 index 00000000000..802fe2cbee2 --- /dev/null +++ b/public/content/translations/fr/contributing/translation-program/playbook/index.md @@ -0,0 +1,317 @@ +--- +title: Translation program playbook +lang: fr +description: "Une collection de conseils et de considérations importantes pour la mise en place d'un programme de traduction" +--- + +# Manuel du programme de traduction {#translation-program-playbook} + +English is one of the most spoken languages in the world and is by far the world’s most studied language. Comme l'anglais est la langue la plus couramment utilisée sur Internet - en particulier sur les médias sociaux - et que les langages de programmation multilingues sont rares, la majorité du contenu de l'espace blockchain est écrit nativement en anglais. + +However, as over 6 billion people in the world (more than 75% of the population) do not speak English at all, this presents a massive barrier for entry to Ethereum for the vast majority of the world’s population. + +For this reason, an increasing number of projects in the space are looking to get their content translated into different languages and localized for global communities. + +Fournir du contenu multilingue est un moyen simple et efficace de développer votre communauté mondiale, de fournir une éducation aux non-anglophones, de s'assurer que votre contenu et vos communications atteignent un public plus large et d'intégrer davantage de personnes dans l'espace. + +Ce guide vise à répondre aux défis et aux idées fausses courants concernant la localisation du contenu. It provides a step-by-step guide to managing content, the translation and review process, quality assurance, translator outreach, and other vital aspects of the localization process. + +## Content Management {#content-management} + +Translation content management refers to the process of automating the translation workflow, which removes the need for repetitive manual work, improves efficiency and quality, allows for better control, and enables collaboration. + +There are many different approaches to content management in the localization process, depending on the content and your needs. + +The fundamental way of managing content is to create bilingual files, containing the source and target text. Ceci est rarement utilisé en traduction, car il n'offre aucun avantage significatif, à part la simplicité. + +Les agences de traduction abordent généralement la gestion de la traduction en utilisant un logiciel de gestion de la traduction ou des outils de localisation, qui fournissent des capacités de gestion de projet et permettent un contrôle beaucoup plus grand sur les fichiers, le contenu et les linguistes. + +Read more about content management: + +[Trados on what is translation management](https://www.trados.com/solutions/translation-management/) + +[Phrase sur la gestion de contenu multilingue](https://phrase.com/blog/posts/multilingual-content-management/) + +### Translation Management Software {#translation-management-software} + +Il existe de nombreux systèmes de gestion de la traduction et outils de localisation, et le choix du logiciel dépend principalement de vos besoins. + +Alors que certains projets décident de ne pas utiliser de systèmes de gestion de traduction et préfèrent gérer les traductions manuellement - soit directement dans des fichiers bilingues, soit sur des services d'hébergement, tels que GitHub - cela réduit considérablement le contrôle, la productivité, la qualité, l'évolutivité et les capacités de collaboration. Such an approach might be most beneficial for small-scale or one-off translation projects. + +Un aperçu rapide de certains des outils de gestion de la traduction les plus puissants et les plus largement utilisés : + +**Best for crowdsourcing and collaboration** + +[Crowdin](https://crowdin.com/) + +- Gratuit pour les projets open source (nombre illimité de chaînes et de projets) +- TM and glossary available with all plans +- 60+ supported file formats, 70+ API integrations + +[Lokalise](https://lokalise.com/) + +- Free for 2 team members, paid plans for more contributors (limited number of strings for most plans) +- TM et glossaire disponibles avec certains plans payants +- 30+ supported file formats, 40+ API integrations + +[Transifex](https://www.transifex.com/) + +- Uniquement les plans payants (nombre limité de chaînes pour la plupart des plans) +- TM et glossaire disponibles avec tous les plans payants +- Plus de 30 formats de fichiers pris en charge, plus de 20 intégrations d'API + +[Phrase](https://phrase.com/) + +- Only paid plans (unlimited number of strings for all plans, limited number of projects and team members) +- TM et glossaire disponibles avec certains plans payants +- 40+ supported file formats, 20+ API integrations + +[Smartcat](https://www.smartcat.com/) + +- Basic free plan with payable advanced features (unlimited number of strings and projects for all plans) +- TM and glossary available with all plans +- 60+ supported file formats, 20+ API integrations + +[POEditor](https://poeditor.com/) + +- Free for open-source projects (limited number of strings for all projects, unlimited for open-source projects) +- TM and glossary available for paid plans +- 20+ supported file formats, 10+ API integrations + +Et beaucoup d'autres... + +**Outils de traduction professionnels** + +[SDL Trados Studio](https://www.trados.com/products/trados-studio/) + +- Plans rémunérés pour les traducteurs et les équipes indépendants +- Outil de traduction assistée par ordinateur (CAT) très puissant et logiciel de productivité traducteur + +[MemoQ](https://www.memoq.com/) + +- Version gratuite limitée disponible avec plusieurs plans payants pour des fonctionnalités avancées +- Translation management software for companies, language service providers and translators + +[Memsource](https://www.memsource.com/) + +- Free for individual translators with several paid plans for teams +- Système de traduction et de gestion de la traduction assisté par ordinateur basé sur le cloud + +Et beaucoup d'autres... + +Read more about translation management software: + +[Wikipedia definition of translation management systems](https://en.wikipedia.org/wiki/Translation_management_system) + +[Phrase sur 7 choses que tout logiciel de gestion de traduction devrait avoir](https://phrase.com/blog/posts/7-things-every-translation-management-software-should-have/) + +[MemoQ sur ce qu'est un système de gestion de la traduction](https://www.memoq.com/tools/what-is-a-translation-management-system) + +[Gengo’s list of 16 best translation management systems](https://gengo.com/translator-product-updates/16-best-translation-management-systems/) + +## Workflow {#workflow} + +In the translation space, translation workflow can mean a couple of different things, both somewhat interrelated, and important considerations for your project. + +We will explore both of them below. + +**Meaning 1** + +This is probably the most common way of thinking about translation workflows and something that usually comes to mind when hearing the word workflow. + +In its essence, it is the ‘flow of work’ from starting to think about translations to using the translated content in your product. + +An example workflow in this case would be: + +1. **Preparing the files for translation** – It sounds simple; however, you need to consider a couple of important things. At this step, you should have a clear plan on how the entire process should work. + +- _Which file types will you be using? Dans quel format souhaitez-vous recevoir vos fichiers traduits ? _ + - Si votre contenu est disponible au format DOCX ou MD, l'approche sera beaucoup plus simple que si vous traduisez une version PDF de votre livre blanc ou d'autres documents. +- _Which localization tools support this file type? Le fichier peut-il être traduit d'une manière qui conserve le formatage d'origine ? _ + - Not all file types support direct localization (e.g., PDF files, image files), and not all localization tools support all file types. +- _Who will be translating the content? Allez-vous commander des traductions professionnelles ou compter sur des bénévoles ? _ + - This affects a number of other decisions you need to make. For example, professional translators are more comfortable working with advanced localization tools than volunteers. +- _What are your expectations for the linguists? If you are using a language service provider, what do they expect from you?_ + - This is the step to make sure your goals, expectations, and timelines are aligned. +- _Is all the content for translation equally important? Faut-il d'abord traduire du contenu ? _ + - There are some ways to prioritize certain content, which should be translated and implemented first. Par exemple, si vous avez beaucoup de contenu à traduire, vous pouvez utiliser le contrôle de version pour vous assurer que les traducteurs sont conscients de ce qu'ils doivent prioriser. + +2. **Sharing the files for translation** – This step also requires some long-term thinking and is not as straightforward as sending the source files to a language service provider. + +- _Who will be translating the content? How many people will be involved in this process?_ + - If you plan to use a localization tool, this step is simplified since you can upload the source files to the tool directly. This is also true if the translation process takes place on the hosting service since the source files don’t need to be exported anywhere. +- _Will the source files be handled manually, or can this process be automated?_ + - Most localization tools allow for some type of integration or automation of the file management process. On the other hand, if you are working with individual translators and not using a localization tool, manually sending source files to hundreds or thousands of translators is not a scalable process. +- _Which tools will be used for the localization?_ + - The answer to this question will determine how you approach everything else. Selecting the proper tool can help you automate content management, managing the Translation Memory and Glossary, managing translators, keeping track of the translation/review progress, etc., so take some time and do some research on which tool you want to use. If you are not planning on using a localization tool, all of the above will need to be done manually. +- _How long will the translation process take? How much will it cost?_ + - At this point, you should be ready to share the source files with the language service provider or pool of translators. The language service provider can help you analyze the word count and provide a quote, including the rates and timeline for the translation process. +- _Are you planning on making changes/updating the source content during this process?_ + - If your content is dynamic and changes often, any changes or updates can disrupt the translation progress. Using a Translation Memory can help mitigate this significantly, though it is still important to think about how the process will work and how you can prevent setting back the progress the translators are making. + +3. **Managing the translation process** – Your work isn’t done once the source content is handed off to the language service provider or the translators. To ensure optimal quality of the translations, content creators should be as involved with the translation process as possible. + +- _Comment comptez-vous communiquer avec les traducteurs ? _ + - Si vous prévoyez d'utiliser un outil de localisation, la communication peut avoir lieu directement dans l'outil. Setting up an alternative communication channel with the translators is also recommended since they might be less hesitant to reach out, and messaging tools allow for more free-flowing communication. +- _Comment gérer les questions des traducteurs ? Who should be answering these questions?_ + - Translators (both professional and non-professional) will often reach out with questions and requests for clarification or additional context, as well as feedback and ideas for improvements. Replying to these inquiries can often lead to better engagement and quality of translated content. It is also valuable to provide them with as many resources as possible (e.g., guides, tips, terminology guidelines, FAQs, etc.). +- _Comment gérer le processus d'examen ? Do you want to outsource it, or do you have the capacity to perform reviews internally?_ + - While not always necessary, reviews are an integral part of an optimal translation process. Usually, it is easiest to outsource the review process to professional reviewers. Cependant, si vous avez une grande équipe internationale, les examens ou l'assurance qualité peuvent également être gérés en interne. + +4. **Implementing the translated content** – The last part of the workflow, though still important to consider ahead of time. + +- _Toutes les traductions seront-elles terminées en même temps ? _ + - If not, you should think about which translations should be prioritized, how to keep track of the translations in progress, and how the implementation is handled while the translations are done. +- _Comment le contenu traduit vous sera-t-il livré ? What format will it be in?_ + - C'est une considération importante, quelle que soit l'approche que vous utilisez. Localization tools allow you to maintain control over the target file format and export process and usually support automation, e.g., by enabling integration with the hosting service. +- _How will you be implementing the translations in your project?_ + - In some cases, this could be as simple as uploading the translated file or adding it to your docs. However, with more complex projects, like website or app translations, you should make sure the code supports internationalization and establish how the implementation process will be handled ahead of time. +- _What happens if the formatting is different to the source?_ + - Similar to the above, if you are translating simple text files, the formatting probably isn’t crucially important. However, with more complex files, like content for a website or application, the formatting and code need to be identical to the source in order to be implemented in your project. If not, the target files will need to be edited, either by the translators or your developers. + +**Meaning 2** + +An alternative translation workflow, which does not account for internal decisions and approaches. The main consideration here is the flow of the content itself. + +An example workflow in this case would be: + +1. _Translation → Implementation_ + +- Le flux de travail le plus simple, où la traduction sera probablement une traduction humaine, car il n'y a pas de processus d'examen ou d'assurance qualité pour évaluer la qualité et éditer les traductions avant la mise en œuvre. +- With this workflow, it is important that the translators can maintain a certain level of quality, which will require appropriate resources and communication between the project managers and translators. + +2. _Translation → Review → Implementation_ + +- A more advanced workflow, which includes a review and editing process, to ensure the quality of the translations is acceptable and consistent. +- There are a number of approaches to this workflow, where the translations could be performed by professional translators or volunteers, while the review process will likely be handled by professional reviewers, who are familiar with all the grammar and orthography rules that need to be observed in the target language. + +3. _Translation → Review → QA → Implementation_ + +- The optimal workflow to ensure the highest level of quality. While QA is not always necessary, it could be useful to give you a better sense of the quality of the translated text after translation and review. +- With this workflow, translations could be performed exclusively by volunteers or even machine translation. The review process should be performed by professional translators, while the QA can be performed by a language service provider or internally, if you have employees who are native speakers of the target languages. + +En savoir plus sur les flux de travail de traduction : + +[Content rules on the five phases of the translation workflow](https://contentrules.com/creating-translation-workflow/) + +[Smartling on what is translation workflow management](https://www.smartling.com/resources/101/what-is-translation-workflow-management/) + +[RixTrans on the translation workflow](https://www.rixtrans.com/translation-workflow) + +## Terminology Management {#terminology-management} + +Establishing a clear plan on how to handle terminology is one of the most important steps to ensure the quality and consistency of your translations and save your translators time. + +In the translation space, this is known as terminology management and is one of the key services language service providers offer their clients, in addition to access to their pool of linguists and content management. + +Terminology management refers to the process of identifying, gathering, and managing terminology that is important for your project and should always be translated correctly and consistently. + +There are a couple of steps to follow when starting to think about terminology management: + +- Identify key terms that should be included in the termbase. +- Create a glossary of terms and their definitions. +- Translate the terms and add them to the glossary. +- Check and approve the translations. +- Maintenez le glossaire et mettez-le à jour avec de nouveaux termes, à mesure qu'ils deviennent importants. + +Read more about terminology management: + +[Trados on what is terminology management](https://www.trados.com/solutions/terminology-management/translation-101-what-is-terminology-management.html) + +[Language Scientific on why terminology management matters](https://www.languagescientific.com/terminology-management-why-it-matters/#:~:text=Terminology%20management%20is%20the%20process,are%20related%20to%20each%20other.) + +[Clear Words Translation on what is terminology management and why it matters](http://clearwordstranslations.com/language/en/what-is-terminology-management/) + +### Translation Memory and Glossary {#tm-and-glossary} + +The Translation Memory and Glossary are important tools in the translation industry and something most language service providers rely on. + +Let’s look at what these terms mean and how they are different to each other: + +**Mémoire de traduction (TM)** - Une base de données qui stocke automatiquement des segments ou des chaînes, y compris des blocs de texte plus longs, des phrases complètes, des paragraphes et des termes individuels, ainsi que leurs traductions actuelles et précédentes dans toutes les langues. + +La plupart des outils de localisation, des systèmes de gestion de la traduction et des outils de traduction assistés par ordinateur ont des mémoires de traduction intégrées, qui peuvent généralement être exportées et utilisées dans d'autres outils similaires. + +The benefits of using a translation memory include faster translations, better translation quality, the ability to retain certain translations when updating or changing source content, and cheaper translation costs for repetitive content. + +Translation memories work based on a percentage match between different segments and are usually most useful when two segments contain over 50% of the same content. They are also used to automatically translate repetitive segments, which are 100% matches, thus removing the need to ever translate repetitive content more than once. + +Read more about translation memories: + +[Memsource on translation memories](https://www.memsource.com/translation-memory/) + +[Smartling sur ce qu'est une mémoire de traduction](https://www.smartling.com/resources/101/what-is-translation-memory/) + +**Glossary –** A list of important or sensitive terms, their definitions, functions, and established translations. The main difference between a glossary and a translation memory is that a glossary is not created automatically, and that it does not contain translations of full sentences. + +Most localization tools, translation management systems, and computer-assisted translation tools have built-in glossaries that you can maintain to ensure they contain terminology important for your project. Like the TM, the glossary can usually be exported and used in other localization tools. + +Before starting your translation project, it is highly recommended to take some time and create a glossary for your translators and reviewers. Using a glossary ensures that important terms are translated correctly, provides translators with much-needed context, and guarantees consistency in translations. + +While glossaries most often contain established translations in the target languages, they are also useful without this. Even without established translations, a glossary can have definitions of technical terms, highlight terms that should not get translated, and inform translators whether a specific term is used as a noun, verb, proper noun, or any other part of speech. + +Read more about glossaries: + +[Lionbridge on what is a translation glossary](http://info.lionbridge.com/rs/lionbridge/images/Lionbridge%20FAQ_Glossary_2013.pdf) + +[Transifex sur les glossaires](https://docs.transifex.com/glossary/glossary) + +Si vous ne prévoyez pas d'utiliser un outil de localisation pour votre projet, vous ne pourrez probablement pas utiliser une mémoire de traduction et un glossaire (vous pouvez créer un glossaire ou une base de termes dans un fichier Excel, cependant, les glossaires automatisés éliminent le besoin pour les traducteurs de rechercher manuellement les termes et leurs définitions). + +This means that all repetitive and similar content would have to be manually translated every time. De plus, les traducteurs devraient vous poser des questions pour savoir si un certain terme doit être traduit ou non, comment il est utilisé dans le texte et si un terme a déjà une traduction établie. + +_Voulez-vous utiliser la mémoire de traduction et le glossaire d'ethereum.org dans votre projet ? Contactez-nous à l'adresse translations@ethereum.org. _ + +## Translator Outreach {#translator-outreach} + +**Working with a language service provider** + +If you are working with a language service provider and their professional translators, this section might not be too relevant for you. + +Dans ce cas, il est important de sélectionner un fournisseur de services linguistiques ayant la capacité de fournir tous les services dont vous avez besoin (par exemple, traduction, révision, assurance qualité) dans de nombreuses langues. + +Bien qu'il puisse être tentant de choisir un fournisseur de services linguistiques uniquement en fonction de ses tarifs proposés, il est important de noter que les plus grands fournisseurs de services linguistiques ont des tarifs plus élevés pour une raison. + +- They have tens of thousands of linguists in their database, which means that they will be able to assign translators with sufficient experience and knowledge of your particular sector to your project (i.e., technical translators). +- They have significant experience working on different projects and meeting their clients’ diverse needs. This means they will be more likely to adapt to your particular workflow, offer valuable suggestions and potential improvements for your translation process, and meet your needs, requirements, and deadlines. +- Most of the largest language service providers also have their own localization tools, translation memories, and glossaries that you can use. Si ce n'est pas le cas, ils ont au moins suffisamment de linguistes dans leur bassin pour s'assurer que leurs traducteurs seront familiers et capables de travailler avec n'importe quel outil de localisation que vous souhaitez utiliser. + +You can find an in-depth comparison of the largest language service providers in the world, some details about each of them and breakdowns by the services they provide, geographical data, etc. in the [2021 Nimdzi 100 report](https://www.nimdzi.com/nimdzi-100-top-lsp/). + +**Working with non-professional translators** + +Vous travaillez peut-être avec des traducteurs non professionnels et recherchez des bénévoles pour vous aider à traduire. + +There are several ways to reach people and invite them to join your project. This will largely depend on your product and how big of a community you already have. + +Some ways of onboarding volunteers are outlined below: + +**Outreach –** While this is somewhat covered in the points below, reaching out to potential volunteers and making sure they are aware of your translation initiative can be effective in itself. + +A lot of people want to get involved and contribute to their favorite projects, but often don’t see a clear way of doing that without being a developer or having special technical skills. Si vous pouvez faire connaître votre projet, de nombreux bilingues seront probablement désireux de s'impliquer. + +**Looking within your community –** Most projects in the space already have large and active communities. A lot of your community members would probably appreciate the chance to contribute to the project in a simple way. + +Bien que la contribution à des projets open source soit souvent basée sur une motivation intrinsèque, c'est aussi une expérience d'apprentissage fantastique. Anyone interested in learning more about your project would likely be happy to get involved with a translation program as a volunteer, since it would allow them to combine the fact that they have contributed to something they care about with an intensive hands-on learning experience. + +**Mention de l'initiative dans votre produit -** Si votre produit est populaire et utilisé par un grand nombre de personnes, mettre en évidence votre programme de traduction et appeler les utilisateurs à l'action lors de l'utilisation du produit peut être extrêmement efficace. + +This could be as simple as adding a banner or pop-up with a CTA to your product for applications and websites. C'est efficace parce que votre public cible est votre communauté - les personnes qui sont les plus susceptibles de s'impliquer en premier lieu. + +**Social media –** Social media can be an effective way of spreading awareness about your translation program and reaching out to your community members, as well as other people who aren’t members of your community yet. + +If you have a Discord server or Telegram channel, it is easy to use that for outreach, communication with your translators, and acknowledging your contributors. + +Des plateformes comme X (anciennement Twitter) peuvent également être utiles pour intégrer de nouveaux membres de la communauté et reconnaître publiquement vos contributeurs. + +La Fondation Linux a créé un rapport détaillé, le [Report on the 2020 FOSS contributor survey](https://www.linuxfoundation.org/wp-content/uploads/2020FOSSContributorSurveyReport_121020.pdf), analysant les contributeurs open source et leurs motivations. + +## Conclusion {#conclusion} + +This document contains some key considerations every translation program should be aware of. Ce n'est en aucun cas un guide exhaustif, bien qu'il puisse aider toute personne sans expérience dans l'industrie de la traduction à organiser un programme de traduction pour son projet. + +If you are looking for more detailed instructions and breakdowns of different tools, processes, and critical aspects of managing a translation program, some of the largest language service providers maintain blogs and often publish articles on different aspects of the localization process. These are the best resources if you want to dive deeper into any of the topics above and understand how the localization process works professionally. + +Some relevant links are included at the end of each section; however, you can find many other resources online. + +Pour des propositions de coopération ou d'informations supplémentaires, d'apprentissages et de meilleures pratiques que nous avons recueillis en maintenant le programme de traduction ethereum.org, n'hésitez pas à nous contacter à translations@ethereum.org. diff --git a/public/content/translations/fr/contributing/translation-program/resources/index.md b/public/content/translations/fr/contributing/translation-program/resources/index.md index 671a206af19..2bf2f804ef0 100644 --- a/public/content/translations/fr/contributing/translation-program/resources/index.md +++ b/public/content/translations/fr/contributing/translation-program/resources/index.md @@ -10,35 +10,40 @@ Vous pouvez trouver ci-dessous des guides et des outils utiles pour les traducte ## Guides {#guides} -- [Guide de style pour la traduction](/contributing/translation-program/translators-guide/)_– instructions et conseils pour les traducteurs d'ethereum.org_ -- [FAQ sur la traduction](/contributing/translation-program/faq/) _– foire aux questions sur le programme de traduction d'ethereum.org_ -- [Guide sur l'éditeur en ligne Crowdin](https://support.crowdin.com/online-editor/) _– un guide détaillé sur l'utilisation de l'éditeur en ligne Crowdin et certaines des fonctionnalités avancées de Crowdin_ -- [Ensembles de contenu](/contributing/translation-program/content-buckets/) _– quelles pages sont incluses dans chaque ensemble de contenu d'ethereum.org_ +- [Guide de style de traduction](/contributing/translation-program/translators-guide/) _– instructions et conseils pour les traducteurs d'ethereum.org_ +- [FAQ sur la traduction](/contributing/translation-program/faq/) _– foire aux questions et réponses sur le programme de traduction d'ethereum.org_ +- [Guide de l'éditeur en ligne de Crowdin](https://support.crowdin.com/online-editor/) _– un guide détaillé sur l'utilisation de l'éditeur en ligne de Crowdin et certaines de ses fonctionnalités avancées_ ## Outils {#tools} -- [Linguee](https://www.linguee.com/) _– moteur de recherche de traductions et dictionnaire qui permet la recherche par mot ou phrase_ -- [Recherche de terme Proz](https://www.proz.com/search/) _– base de données de dictionnaires de traduction et de glossaires pour des termes spécialisés_ -- [Eurotermbank](https://www.eurotermbank.com/) _– collections de terminologie européenne en 42 langues_ +- [Linguee](https://www.linguee.com/) + _– moteur de recherche de traductions et dictionnaire qui permet la recherche par mot ou par phrase_ +- [Recherche de terme Proz](https://www.proz.com/search/) + _– base de données de dictionnaires de traduction et de glossaires pour les termes spécialisés_ +- [Eurotermbank](https://www.eurotermbank.com/) + _– collections de terminologie européenne en 42 langues_ ## Communautés {#communities} -- [Groupes de traduction spécifiques à une langue sur Discord](https://discord.gg/ethereum-org) _– une initiative pour connecter les traducteurs ethereum.org à travers des groupes de traduction_ -- [Groupe de traducteurs chinois](https://www.notion.so/Ethereum-org-05375fe0a94c4214acaf90f42ba40171) _– page de notion pour faciliter la coordination entre les traducteurs chinois_ +- [Groupes de traduction Discord spécifiques à une langue](https://discord.gg/ethereum-org) + _– une initiative pour connecter les traducteurs d'ethereum.org à des groupes de traduction_ +- [Groupe des traducteurs chinois](https://www.notion.so/Ethereum-org-05375fe0a94c4214acaf90f42ba40171) + _– Page Notion pour faciliter la coordination entre les traducteurs chinois_ ## Dernières mises à jour {#latest-updates} -Pour vous tenir au courant des dernières avancées du programme de traduction, vous pouvez suivre le blog de l'[Ethereum Foundation](https://blog.ethereum.org/) : +Pour vous tenir au courant des derniers progrès du programme de traduction, vous pouvez suivre le [blog de la Fondation Ethereum](https://blog.ethereum.org/) : -- [Mise à jour d'octobre 2021](https://blog.ethereum.org/2021/10/04/translation-program-update/) -- [Mise à jour de décembre 2020](https://blog.ethereum.org/2020/12/21/translation-program-milestones-updates-20/) -- [Mise à jour de juillet 2020](https://blog.ethereum.org/2020/07/29/ethdotorg-translation-milestone/) -- [Lancement du programme de traduction, août 2019](https://blog.ethereum.org/2019/08/20/translating-ethereum-for-our-global-community/) +- [Mise à jour des jalons d'octobre 2021](https://blog.ethereum.org/2021/10/04/translation-program-update/) +- [Mise à jour des jalons de décembre 2020](https://blog.ethereum.org/2020/12/21/translation-program-milestones-updates-20/) +- [Mise à jour des jalons de juillet 2020](https://blog.ethereum.org/2020/07/29/ethdotorg-translation-milestone/) +- [Lancement du programme de traduction d'août 2019](https://blog.ethereum.org/2019/08/20/translating-ethereum-for-our-global-community/) -## Permanence pour les traducteurs {#office-hours} +## Permanences pour les traducteurs {#office-hours} -Nous assurons des permanences pour les traducteurs le deuxième mercredi du mois. Celles-ci sont tenues dans le canal vocal #office-hours sur l'[ethereum.org Discord](https://discord.gg/ethereum-org), où vous pouvez également trouver les heures exactes et les détails supplémentaires. +Nous assurons des permanences pour les traducteurs le deuxième mercredi du mois. Elles ont lieu dans le canal vocal #office-hours sur le [Discord d'ethereum.org](https://discord.gg/ethereum-org), où vous pouvez également trouver les heures exactes et des détails supplémentaires. -Les heures de permanence permettent à nos traducteurs de poser des questions sur le processus de traduction, de faire part de leurs commentaires sur le programme, de partager leurs idées ou simplement de discuter avec l'équipe d'ethereum.org. Enfin, nous voulons utiliser ces appels pour communiquer les développements récents en lien avec le programme de traduction et partager avec nos contributeurs des conseils et des instructions. +Les heures de permanence permettent à nos traducteurs de poser des questions sur le processus de traduction, de faire part de leurs commentaires sur le programme, de partager leurs idées ou simplement de discuter avec l'équipe d'ethereum.org. +Enfin, nous voulons utiliser ces appels pour communiquer les développements récents en lien avec le programme de traduction et partager avec nos contributeurs des conseils et des instructions. Si vous êtes un traducteur ethereum.org ou si vous souhaitez le devenir, n'hésitez pas à nous rejoindre pendant l'une de ces sessions. diff --git a/public/content/translations/fr/contributing/translation-program/translatathon/details/index.md b/public/content/translations/fr/contributing/translation-program/translatathon/details/index.md new file mode 100644 index 00000000000..cb90549ae08 --- /dev/null +++ b/public/content/translations/fr/contributing/translation-program/translatathon/details/index.md @@ -0,0 +1,90 @@ +--- +title: "Détails et règles" +lang: fr +template: translatathon +--- + +![](./participate.png) + +Le Translatathon est ouvert et tout le monde peut participer en remplissant le formulaire de candidature et en rejoignant le projet sur Crowdin. + +Les traducteurs collectent des points en suggérant des traductions pour les chaînes non traduites dans leur langue dans l'éditeur Crowdin pendant la période de traduction. + +Le score final de chaque participant est déterminé par sa position dans le classement, en fonction du nombre de mots qu'il a traduits pendant la période de traduction et des éventuels points bonus qu'il a collectés. + +## Mise en route {#getting-started} + +Le processus de traduction se déroule dans le projet ethereum.org sur Crowdin, et les traducteurs suggèrent leurs traductions pour les chaînes non traduites, qui constituent la quasi-totalité du contenu du site web ethereum.org. + +Les traductions sont suggérées directement dans l'éditeur en ligne, il n'est donc pas nécessaire de télécharger ou de charger des fichiers ou des livrables. Chaque mot traduit est suivi et compté. + +**1) Rejoindre le projet** + +- Pour commencer à contribuer, rejoignez le [projet ethereum.org sur Crowdin](https://crowdin.com/project/ethereum-org) +- Vous devrez vous connecter ou créer un compte. Une adresse e-mail et un mot de passe sont tout ce qui est requis. + +**2) Sélectionnez votre langue** + +- Trouvez votre langue dans la liste des langues cibles et ouvrez-la en cliquant sur son nom ou son drapeau. +- Si vous souhaitez traduire dans une langue qui n'est pas disponible, contactez [l'équipe d'Ethereum.org](https://crowdin.com/profile/ethdotorg) sur Crowdin ou envoyez-nous un e-mail à translations@ethereum.org et nous ajouterons d'autres langues cibles sur demande. + +**3) Ouvrir un fichier non traduit** + +- Trouvez le premier fichier non traduit pour commencer la traduction. Les dossiers contenant les fichiers sources sont organisés par priorité, vous devez donc commencer à traduire le premier dossier qui contient des fichiers non traduits. +- Chaque fichier dispose d'un indicateur de progression qui indique la quantité de contenu traduisible du fichier qui a été traduite et approuvée… si la progression de la traduction d'un fichier est inférieure à 100 %, veuillez le traduire. + +**4) Traduire les chaînes non traduites** + +- Lorsque vous ouvrez un fichier à traduire, assurez-vous de ne traduire que les chaînes non traduites ! +- Chaque chaîne a un indicateur de statut qui indique si elle est _Traduite_, _Non traduite_ ou _Approuvée_. Si une chaîne source a déjà une traduction suggérée dans votre langue, il n'est pas nécessaire de la traduire. +- Vous pouvez également filtrer les chaînes dans l'éditeur pour afficher les chaînes _Non traduites en premier_ ou _Non traduites uniquement_. + +Pour un guide détaillé sur la navigation et l'utilisation de l'éditeur Crowdin, nous recommandons à tous les participants du Translatathon de lire notre guide [Comment traduire](/contributing/translation-program/how-to-translate/). + +Vous pouvez également trouver des conseils et des bonnes pratiques en consultant notre [guide de style de traduction](/contributing/translation-program/translators-guide/). + +**Fonctionnement des points** + +Chaque participant au Translatathon gagnera des points pour son score final en traduisant du contenu dans le projet ethereum.org sur Crowdin et d'autres projets éligibles (la liste complète des projets éligibles est disponible ci-dessous). + +Le décompte des points est simple : **1 mot traduit = 1 point**. + +Afin de recevoir votre attribution finale de points, vos traductions suggérées devront passer le processus d'évaluation, au cours duquel des réviseurs professionnels vérifieront les traductions de chaque participant pour s'assurer qu'elles respectent le seuil de qualité minimum et qu'aucune traduction automatique ou par IA n'a été utilisée. + +## Contenu de l'écosystème {#ecosystem-content} + +Le programme de traduction d'ethereum.org étant actif en permanence, la progression de la traduction dans certaines langues cibles sur le site web est nettement plus élevée que dans d'autres. + +Afin de garantir que tous les participants au Translatathon aient une chance égale de traduire autant de contenu que possible et de concourir pour les premiers prix, le contenu source qui fait partie du Translatathon ne se limite pas seulement au contenu du site web ethereum.org. + +Les participants qui traduisent l'un des projets éligibles gagneront un nombre égal de points, 1 mot traduit dans n'importe quel projet = 1 point. + +Voici la liste de tous les projets éligibles qui font partie du Translatathon 2025 : + +- [Ethereum.org](https://crowdin.com/project/ethereum-org) + +- [Tutoriels pour développeurs d'Ethereum.org](https://crowdin.com/project/33388446abbe9d7aa21e42e49bba7f97) + +- [CLI de dépôt EthStaker](https://crowdin.com/project/ethstaker-deposit-cli) + +- [Documentation d'Eth Docker](https://crowdin.com/project/eth-docker-docs) + +- [Documentation de Remix IDE](https://crowdin.com/project/remix-translation) + +- [Remix LearnEth](https://crowdin.com/project/remix-learneth) + +- [web3.py](https://crowdin.com/project/web3py) + +## Processus d'évaluation {#evaluation-process} + +Toutes les traductions seront soumises à une assurance qualité et à des commentaires, où des linguistes professionnels évalueront les soumissions en fonction de leur qualité et de leur exactitude. + +Nous appliquerons également des **mesures anti-traduction automatique** à l'aide d'outils qui détectent automatiquement les traductions automatiques ou par IA. + +Bien que la qualité de la traduction ne joue pas un rôle essentiel dans le décompte des points, les **participants surpris à utiliser des traductions automatiques ou par IA** ou à suggérer des traductions de mauvaise qualité et inexactes ne seront pas éligibles aux prix ! + +La période d'évaluation se déroulera tout au long du mois de septembre et les résultats seront annoncés lors de l'appel communautaire d'ethereum.org le 25 septembre. + +Toutes les traductions seront également entièrement révisées avant d'être ajoutées au site web. + + diff --git a/public/content/translations/fr/contributing/translation-program/translatathon/index.md b/public/content/translations/fr/contributing/translation-program/translatathon/index.md new file mode 100644 index 00000000000..c1333c9cca7 --- /dev/null +++ b/public/content/translations/fr/contributing/translation-program/translatathon/index.md @@ -0,0 +1,100 @@ +--- +title: Translatathon 2025 d'ethereum.org +lang: fr +template: translatathon +--- + + + + + + + +## Introduction {#introduction} + +Nous pensons que le contenu d'Ethereum et les ressources d'intégration devraient être accessibles à tous, quelle que soit la langue parlée. +Pour nous rapprocher de cet objectif, le programme de traduction d'ethereum.org est une initiative visant à traduire le site Web dans le plus de langues possible. + +Dans le cadre du programme de traduction, nous organisons la 3e édition du Translatathon, notre concours de traduction qui vise à encourager les contributions à la traduction dans les langues moins actives, à augmenter le nombre de langues et la quantité de contenu disponible sur le site, à intégrer de nouveaux contributeurs et à récompenser nos contributeurs existants. + +Si vous êtes un locuteur natif d'une autre langue que l'anglais et que vous souhaitez contribuer à rendre le contenu d'Ethereum plus accessible tout en concourant pour des prix, lisez la suite pour en savoir plus ! + +[En savoir plus sur le programme de traduction d'ethereum.org](/contributing/translation-program/) + +## Calendrier {#timeline} + +Voici les dates importantes pour le Translatathon 2025 : + + + + + +## Participer {#participate} + +![Image d'une communauté et d'un globe](./participate.png) + + + +

Qui peut participer ?

+ Toute personne âgée de plus de 18 ans, locuteur natif d'au moins une langue autre que l'anglais et maîtrisant l'anglais. +
+ +

Faut-il être traducteur ?

+ Non. Vous devez simplement être bilingue et suggérer des traductions humaines (l'utilisation de la traduction automatique est interdite !) au mieux de vos capacités, aucune expérience professionnelle n'est requise. +
+
+ + + +

Combien de temps dois-je y consacrer ?

+ Autant que vous le souhaitez. Le seuil minimum pour être éligible aux prix est de 1 000 mots traduits, ce qui devrait prendre environ 2 heures, tandis que la compétition pour les premiers prix exigera un engagement en temps plus important. +
+ +

Dois-je bien connaître Ethereum ?

+ Non. Bien que la connaissance d'Ethereum puisse améliorer votre productivité et la qualité de votre travail, le Translatathon est aussi une expérience d'apprentissage. Tout le monde est invité à participer pour en apprendre davantage sur Ethereum. +
+
+ +Pour plus de détails, [consultez l'intégralité des Conditions générales](/contributing/translation-program/translatathon/terms-and-conditions) + +### Instructions pas à pas {#step-by-step-instructions} + + + +## Prix {#prizes} + +| Classement | Montant du prix | +| ----------------- | --------------- | +| 1re place | $4000 | +| 2e place | $2500 | +| 3e place | $1500 | +| 4e place | $1100 | +| 5e place | $1000 | +| 6e place | $600 | +| 7e place | $550 | +| 8e place | $500 | +| 9e place | $450 | +| 10e place | $400 | +| 11e à 20e place | $240 | +| 21e à 50e place | $120 | +| 51e à 100e place | $60 | +| 101e à 150e place | $40 | +| Autres | $20 | + +Tous les prix seront payés en ETH. + + + + diff --git a/public/content/translations/fr/contributing/translation-program/translators-guide/index.md b/public/content/translations/fr/contributing/translation-program/translators-guide/index.md index bcb331c2aca..48431914bea 100644 --- a/public/content/translations/fr/contributing/translation-program/translators-guide/index.md +++ b/public/content/translations/fr/contributing/translation-program/translators-guide/index.md @@ -1,5 +1,5 @@ --- -title: Guide à l'intention des traducteurs +title: "Guide à l'intention des traducteurs" lang: fr description: Instructions et conseils pour les traducteurs d'ethereum.org --- @@ -10,13 +10,13 @@ Le guide de style pour la traduction d'ethereum.org contient les principales rec Ce document sert de guide général et n'est spécifique à aucune langue. -Si vous avez des questions, des suggestions ou des commentaires, n'hésitez pas à nous contacter à l'adresse translations@ethereum.org, à envoyer un message à @ethdotorg sur Crowdin ou à [rejoindre notre serveur Discord](https://discord.gg/ethereum-org), où vous pourrez nous envoyer un message dans le canal #translations ou contacter l'un des membres de l'équipe. +Si vous avez des questions, des suggestions ou des commentaires, n'hésitez pas à nous contacter à l'adresse translations@ethereum.org, à envoyer un message à @ethdotorg sur Crowdin ou à [rejoindre notre Discord](https://discord.gg/ethereum-org), où vous pourrez nous envoyer un message sur le canal #translations ou contacter l'un des membres de l'équipe. -## Utiliser Crowdin {#using-crowdin} +## Utilisation de Crowdin {#using-crowdin} -Vous pouvez trouver les instructions de base pour rejoindre le projet sur Crowdin et sur l'utilisation de l'éditeur en ligne de la plateforme sur la [page du programme de traduction](/contributing/translation-program/#how-to-translate). +Vous trouverez des instructions de base sur la façon de rejoindre le projet dans Crowdin et d'utiliser l'éditeur en ligne de Crowdin sur la [page du programme de traduction](/contributing/translation-program/#how-to-translate). -Si vous souhaitez en savoir plus sur Crowdin et sur certaines de ses fonctionnalités avancées, la [base de connaissances de Crowdin](https://support.crowdin.com/online-editor/) contient de nombreux guides approfondis et des aperçus de toutes les fonctionnalités de Crowdin. +Si vous souhaitez en savoir plus sur Crowdin et l'utilisation de certaines de ses fonctionnalités avancées, la [base de connaissances de Crowdin](https://support.crowdin.com/online-editor/) contient de nombreux guides approfondis et des aperçus de toutes les fonctionnalités de Crowdin. ## Saisir l'essence du message {#capturing-the-essence} @@ -28,7 +28,7 @@ Chaque langue a ses règles grammaticales, ses conventions et sa syntaxe. Lors d Au lieu de traduire le texte original mot pour mot, il est recommandé de lire la phrase entière et de l'adapter aux conventions de la langue de destination. -## Formel et informel {#formal-vs-informal} +## Formel ou informel {#formal-vs-informal} Nous utilisons la forme formelle (le vouvoiement), car elle est toujours polie et appropriée pour tous les visiteurs. @@ -42,7 +42,7 @@ Notre objectif est de rendre le contenu du site accessible au plus grand nombre La plupart du temps, il suffit d'utiliser des mots courts et simples qui sont faciles à comprendre. S'il y a plusieurs traductions possibles pour un certain mot, le meilleur choix sera souvent le mot le plus court reflétant clairement le sens. -## Système de rédaction {#writing-system} +## Système d'écriture {#writing-system} Ethereum.org est disponible en plusieurs langues qui utilisent des systèmes d'écriture (ou des scripts) différents du système latin. @@ -50,17 +50,17 @@ Tout le contenu doit alors être traduit en utilisant le système d'écriture de Lors de la traduction du contenu, vous devez vous assurer que les traductions sont cohérentes et n'incluent pas de caractères latins. -Une idée reçue courante voudrait qu'« Ethereum » soit toujours écrit en latin. C'est généralement incorrect. Veuillez utiliser l'orthographe d'« Ethereum » native dans votre langue (ex : 以太坊 en chinois, إيثيريوم en arabe, etc.). +Une idée reçue courante voudrait qu'« Ethereum » soit toujours écrit en latin. C'est généralement incorrect. Veuillez utiliser l'orthographe d'« Ethereum » native dans votre langue (ex : 以太坊 en chinois, إيثيريوم en arabe, etc.). **Ceci ne s'applique pas aux langues au sein desquelles il existe une règle proscrivant la traduction des noms propres.** -## Traduire les métadonnées des pages {#translating-metadata} +## Traduction des métadonnées de la page {#translating-metadata} Certaines pages contiennent des métadonnées comme « title », « lang », « description », « sidebar », etc. Nous « cachons » le contenu que les traducteurs ne doivent jamais traduire lors du chargement de nouvelles pages sur Crowdin, ce qui signifie que toutes les métadonnées visibles aux traducteurs dans Crowdin doivent être traduites. -Soyez particulièrement attentif lorsque vous traduisez des chaînes où le texte source est « en ». Ce texte indique la langue dans laquelle la page est disponible et doit donc être traduit par le [code de langue ISO correspondant à votre langue](https://www.andiamo.co.uk/resources/iso-language-codes/). Ces chaînes de caractères doivent toujours être traduites en utilisant des caractères latins, et non le script natif de la langue cible. +Soyez particulièrement attentif lorsque vous traduisez des chaînes où le texte source est « en ». Ceci représente la langue dans laquelle la page est disponible et doit être traduit par le [code de langue ISO de votre langue](https://www.andiamo.co.uk/resources/iso-language-codes/). Ces chaînes de caractères doivent toujours être traduites en utilisant des caractères latins, et non le script natif de la langue cible. Si vous n'êtes pas certain du code de langue à utiliser, vous pouvez vérifier la mémoire de traduction dans Crowdin ou trouver le code de votre langue dans l'URL de la page dans l'éditeur en ligne Crowdin. @@ -78,15 +78,18 @@ Certaines chaînes de caractères contiennent des titres d'articles externes. La Pour vous aider à les repérer, vous trouverez ci-dessous quelques exemples de ces chaînes (les liens vers les articles se trouvent principalement en bas de ces pages, dans la section « Further reading » [Lectures complémentaires]) : -![Titres des articles dans sidebar.png](./article-titles-in-sidebar.png) ![Titres des articles dans editor.png](./article-titles-in-editor.png) +![Titres des articles dans la barre latérale](./article-titles-in-sidebar.png) +![Titres des articles dans l'éditeur](./article-titles-in-editor.png) -## Notification d'erreur Crowdin {#crowdin-warnings} +## Avertissements de Crowdin {#crowdin-warnings} -Crowdin a une fonctionnalité intégrée qui avertit les traducteurs lorsqu'ils sont sur le point de faire une erreur. Crowdin vous en avertira automatiquement avant d'enregistrer votre traduction si vous oubliez d'inclure une balise de la source, de traduire des éléments qui ne devraient pas être traduits, d'ajouter plusieurs espaces consécutifs, d'oublier la ponctuation de fin, etc. Si un tel avertissement s'affiche, veuillez revenir en arrière et vérifier la traduction proposée. +Crowdin a une fonctionnalité intégrée qui avertit les traducteurs lorsqu'ils sont sur le point de faire une erreur. Crowdin vous en avertira automatiquement avant d'enregistrer votre traduction si vous oubliez d'inclure une balise de la source, de traduire des éléments qui ne devraient pas être traduits, d'ajouter plusieurs espaces consécutifs, d'oublier la ponctuation de fin, etc. +Si un tel avertissement s'affiche, veuillez revenir en arrière et vérifier la traduction proposée. **N'ignorez jamais ces avertissements, car ils signifient généralement que quelque chose ne va pas ou qu'il manque un élément essentiel du texte source dans la traduction.** -Voici un exemple d'avertissement Crowdin lorsque vous oubliez d'ajouter une balise à votre traduction : ![Exemple d'un avertissement dans Crowdin](./crowdin-warning-example.png) +Exemple d'un avertissement Crowdin lorsque vous oubliez d'ajouter une balise à votre traduction : +![Exemple d'un avertissement Crowdin](./crowdin-warning-example.png) ## Gestion des balises et des extraits de code {#dealing-with-tags} @@ -96,15 +99,18 @@ Une grande partie du contenu de la source contient des balises et des variables, Pour faciliter la gestion des tags et les copier directement à partir de la source, nous vous recommandons de modifier vos paramètres dans l'éditeur Crowdin. -1. Ouvrez les paramètres de l'éditeur ![Comment ouvrir les paramètres de l'éditeur](./editor-settings.png) +1. Ouvrir les paramètres + ![Comment ouvrir les paramètres dans l'éditeur](./editor-settings.png) 2. Allez à la section 'Affichage des tags HTML' -3. Sélectionnez 'Masquer' ![Veuillez sélectionner 'Masquer'](./hide-tags.png) +3. Sélectionner « Masquer » + ![Veuillez sélectionner « Masquer »](./hide-tags.png) 4. Cliquez sur 'Enregistrer' -En sélectionnant cette option, le texte du tag complet ne sera plus affiché et sera remplacé par un nombre. Lors de la traduction, cliquer sur ce tag copiera automatiquement le tag exact dans le champ de traduction. +En sélectionnant cette option, le texte du tag complet ne sera plus affiché et sera remplacé par un nombre. +Lors de la traduction, cliquer sur ce tag copiera automatiquement le tag exact dans le champ de traduction. **Liens** @@ -114,15 +120,15 @@ Ceux-ci doivent rester identiques à la source sans changement ni traduction. Si La meilleure façon de gérer les liens est de les copier directement à partir de la source, soit en cliquant dessus, soit en utilisant le bouton « Copy Source » (Copier la source) (Alt+C). -![Exemple de lien.png](./example-of-link.png) +![Exemple de lien](./example-of-link.png) -Les liens apparaissent également dans le texte source sous la forme de balises (c'est-à-dire `<0> `). Si vous survolez la balise, l'éditeur affichera son véritable contenu. Parfois, ces balises désigneront des liens. +Les liens apparaissent également dans le texte source sous la forme de balises (c'est-à-dire, `<0>` ``). Si vous survolez la balise, l'éditeur affichera son véritable contenu. Parfois, ces balises désigneront des liens. Il est très important de copier les liens depuis le texte source et de ne pas modifier l'ordre des balises. Si l'ordre des balises est changé, le lien qu'elles représentent sera cassé. -![Exemple de liens à l'intérieur de balises.png](./example-of-links-inside-tags.png) +![Exemple de liens à l'intérieur de balises](./example-of-links-inside-tags.png) **Balises et variables** @@ -130,19 +136,19 @@ Le texte source contient de nombreux types de balises différentes, qui doivent Les balises comprennent toujours une balise ouvrante et une balise fermante. Et en général, le texte compris entre les deux balises doit être traduit. -Exemple : ``Décentralisé`` +Exemple : ``Décentralisé`` -`` - _Balise ouvrante qui fait apparaître le texte en gras_ +`` - _Balise ouvrante qui met le texte en gras_ -Décentralisé - _Texte à traduire_ +Décentralisé - _Texte traduisible_ `` - _Balise fermante_ -![Exemple de balises strong.png](./example-of-strong-tags.png) +![Exemple de balises « strong »](./example-of-strong-tags.png) Les extraits de code doivent être abordés légèrement différemment des autres balises, car ils contiennent du code qui ne doit pas être traduit. -Exemple : ``nonce`` +Exemple : ``nonce`` `` - _Balise ouvrante, qui contient un extrait de code_ @@ -150,17 +156,17 @@ nonce - _Texte non traduisible_ `` - _Balise fermante_ -![Exemple d'extraits de code.png](./example-of-code-snippets.png) +![Exemple d'extraits de code](./example-of-code-snippets.png) Le texte source contient aussi des balises raccourcies. Elles contiennent uniquement des chiffres et leur fonction n'est donc pas directement identifiable. Vous pouvez survoler ces balises pour voir exactement ce à quoi elles servent. -Dans l'exemple ci-dessous, vous pouvez voir que survoler la balise `<0>` nous permet de savoir qu'elle désigne en fait une balise `` et qu'elle contient un extrait de code. Le contenu de ces balises ne doit donc pas être traduit. +Dans l'exemple ci-dessous, vous pouvez voir que le survol de la balise `<0>` montre qu'elle représente `` et contient un extrait de code. Par conséquent, le contenu à l'intérieur de ces balises ne doit pas être traduit. -![Exemple de balises ambiguës.png](./example-of-ambiguous-tags.png) +![Exemple de balises ambiguës](./example-of-ambiguous-tags.png) -## Formes courtes et formes complètes/abréviations {#short-vs-full-forms} +## Formes courtes ou complètes/abréviations {#short-vs-full-forms} -De nombreuses abréviations sont utilisées sur le site, comme dApps, NFT, DAO, DeFi, etc. Ces abréviations sont couramment utilisées en anglais et les visiteurs du site web les connaissent généralement. +De nombreuses abréviations sont utilisées sur le site, par exemple dapps, NFT, DAO, DeFi, etc. Ces abréviations sont couramment utilisées en anglais et les visiteurs du site web les connaissent généralement. Étant donné qu'elles n'ont souvent pas de traduction établie dans les autres langues, la meilleure façon d'adapter ces termes (ainsi que les termes qui gravitent autour) est de fournir une traduction descriptive de leur forme complète, puis d'ajouter l'abréviation entre parenthèses. @@ -168,7 +174,7 @@ Ne traduisez pas ces abréviations, car la plupart des gens ne les connaissent p Exemple de la manière de traduire « dApps » : -- Applications décentralisées (dApps) → _Forme complète traduite (abréviation anglaise entre parenthèses)_ +- Applications décentralisées (dapps) → _Forme complète traduite (abréviation anglaise entre parenthèses)_ ## Termes sans traduction établie {#terms-without-established-translations} @@ -180,17 +186,17 @@ Lorsque vous traduisez ces termes, soyez créatifs, utilisez des traductions des **Le fait de traduire ces termes, plutôt que de les laisser en anglais, permettra à cette nouvelle terminologie de se généraliser à l'avenir, à mesure que de plus en plus de personnes utiliseront Ethereum et les technologies associées. Si nous voulons faire connaître ce domaine à plus de personnes à travers le monde, nous devons fournir une terminologie compréhensible dans un maximum de langues, quitte à la créer nous-mêmes.** -## Boutons & boutons d'appel à l'action {#buttons-and-ctas} +## Boutons et CTA {#buttons-and-ctas} Le site contient de nombreux boutons, qui doivent être traduits différemment des autres contenus. Vous pouvez repérer un bouton et son contenu en visualisant les captures d'écran contextuelles, fournies avec la plupart des textes sources, ou bien en regardant le contexte de l'éditeur, qui inclura le terme « button » (bouton). -Les traductions des boutons doivent être aussi courtes que possible pour éviter les problèmes de mise en forme. En outre, la traduction des boutons doit être impérative, c'est-à-dire exprimer un ordre ou une demande. +Les traductions des boutons doivent être aussi courtes que possible pour éviter les problèmes de mise en forme. En outre, la traduction des boutons doit être impérative, c'est-à-dire présenter un ordre ou une demande. -![Comment repérer un bouton.png](./how-to-find-a-button.png) +![Comment trouver un bouton](./how-to-find-a-button.png) -## Traduire de façon inclusive {#translating-for-inclusivity} +## Traduction inclusive {#translating-for-inclusivity} Les visiteurs d'ethereum.org viennent de partout dans le monde et d'horizons différents. Le langage du site web devrait donc être neutre, accueillant pour tout le monde et inclusif. @@ -200,7 +206,7 @@ Une autre forme d'inclusivité consiste à faire en sorte que la traduction s'ad Enfin, le langage doit être adapté à tous les publics et tous les âges. -## Traductions spécifiques dans une langue {#language-specific-translations} +## Traductions spécifiques à la langue {#language-specific-translations} Lors de la traduction, plutôt que de calquer simplement la source, il est important de suivre les règles de grammaire, les conventions et le formatage en vigueur dans votre langue. Le texte source suit les règles et conventions de la grammaire anglaise, qui ne sont pas applicables dans beaucoup d'autres langues. @@ -208,7 +214,7 @@ Vous devez donc avoir les règles de votre langue en tête afin de traduire corr Voici quelques exemples de ce à quoi vous devrez faire attention : -### Ponctuation, mise en forme {#punctuation-and-formatting} +### Ponctuation et formatage {#punctuation-and-formatting} **Majuscules** @@ -216,12 +222,12 @@ Voici quelques exemples de ce à quoi vous devrez faire attention : - En anglais, il est courant de mettre en majuscule sur la première lettre de tous les mots contenus dans les titres, les noms, les mois, les jours, le nom des langues, les jours fériés, etc. Dans de nombreuses autres langues, c'est grammaticalement incorrect, car les règles sont différentes. - Certaines langues ont aussi des règles sur la mise en majuscule des pronoms personnels, des noms communs et de certains adjectifs, qui ne portent pas de majuscule en anglais. -**Espaces** +**Espacement** - Les règles orthographiques définissent l'utilisation des espaces pour chaque langue. Ces règles sont souvent très spécifiques, et parce que les espaces sont utilisés partout, ils sont parmi les éléments les plus mal traduits. - Voici quelques différences d'espacement fréquentes entre l'anglais et d'autres langues : - - Espace avant les unités de mesure et les devises (ex. USD, EUR, kB, MB) - - Espace avant le signe de degré (ex. °C, ℉) + - Espace avant les unités de mesure et les devises (par ex., USD, EUR, kB, MB) + - Espace avant les signes de degré (par ex., °C, ℉) - Espace avant certains signes de ponctuation, notamment l'ellipse (…) - Espace avant et après les barres obliques (/) @@ -229,7 +235,7 @@ Voici quelques exemples de ce à quoi vous devrez faire attention : - Chaque langue possède un ensemble de règles diverses et variées pour la rédaction des listes. Elles peuvent différer considérablement de l'anglais. - Dans certaines langues, le premier mot de chaque nouvelle ligne doit avoir sa première lettre en majuscule, tandis que dans d'autres langues, les nouvelles lignes doivent commencer par une lettre minuscule. Plusieurs langues ont aussi différentes règles sur la présence de majuscule en début de ligne, en fonction de la longueur de celle-ci. -- Il en va de même pour la ponctuation en fin de ligne. Cela peut être un point (**.**), une virgule (**,**) ou un point-virgule (**;**), en fonction de la langue. +- Il en va de même pour la ponctuation en fin de ligne. La ponctuation finale dans les listes peut être un point (.), une virgule (,) ou un point-virgule (;), selon la langue. **Guillemets** @@ -256,7 +262,7 @@ Voici quelques exemples de ce à quoi vous devrez faire attention : - Anglais – **1,000.50** - Espagnol – **1.000,50** - Français – **1 000,50** -- Une autre chose à prendre en considération lors de la traduction de nombres est le signe pourcentage. Il peut être écrit de différentes manières : **100%**, **100 %** ou encore **%100**. +- Une autre chose à prendre en considération lors de la traduction de nombres est le signe pourcentage. Il peut être écrit de différentes manières : **100%**, **100 %** ou **%100**. - Enfin, les nombres négatifs peuvent aussi s'afficher différemment en fonction de la langue : -100, 100-, (100) ou [100]. **Dates** diff --git a/public/content/translations/fr/dao/index.md b/public/content/translations/fr/dao/index.md index 962e8abd025..784018ed161 100644 --- a/public/content/translations/fr/dao/index.md +++ b/public/content/translations/fr/dao/index.md @@ -1,16 +1,16 @@ --- title: Qu'est-ce qu'une DAO ? -metaTitle: Qu'est-ce qu'une DAO ? | Organisation autonome et décentralisée -description: Un aperçu des DAO sur Ethereum +metaTitle: "Qu'est-ce qu'une DAO ? | Organisation autonome et décentralisée" +description: "Un aperçu des DAO sur Ethereum" lang: fr template: use-cases emoji: ":handshake:" sidebarDepth: 2 image: /images/use-cases/dao-2.png -alt: Une représentation d'une DAO qui vote une proposition. -summaryPoint1: Des communautés appartenant à leurs membres sans pouvoir centralisé. -summaryPoint2: Un moyen sûr de collaborer avec des étrangers sur Internet. -summaryPoint3: Un endroit sûr pour engager des fonds pour une cause précise. +alt: "Une représentation d'une DAO qui vote une proposition." +summaryPoint1: "Des communautés appartenant à leurs membres sans pouvoir centralisé." +summaryPoint2: "Un moyen sûr de collaborer avec des étrangers sur Internet." +summaryPoint3: "Un endroit sûr pour engager des fonds pour une cause précise." --- ## Que sont les DAO ? {#what-are-daos} @@ -19,7 +19,7 @@ Une DAO est une organisation collectivement détenue et qui travaille à une mis Les DAO nous permettent de travailler avec des personnes partageant le même état d'esprit et dans le monde entier, sans pour autant faire confiance à un dirigeant bienveillant pour gérer les fonds ou les opérations. Il n'y a pas de Directeur Général qui puisse dépenser des fonds sur un caprice ou un Chef de la direction financière capable de manipuler les registres. Au lieu de cela, les règles basées sur la blockchain ont été intégrées dans le code et définissent comment fonctionne l'organisation et comment les fonds sont dépensés. -Elles possèdent une trésorerie intégrée à laquelle personne ne peut accéder sans l'accord du groupe. Les décisions sont régies par des propositions et des votes pour s'assurer que tout le monde au sein de l'organisation puisse s'exprimer et que tout se passe de manière transparente [onchain](/glossary/#onchain). +Elles possèdent une trésorerie intégrée à laquelle personne ne peut accéder sans l'accord du groupe. Les décisions sont régies par des propositions et des votes pour s'assurer que tout le monde au sein de l'organisation a une voix, et que tout se passe de manière transparente [en chaîne](/glossary/#onchain). ## Pourquoi avons-nous besoin des DAO ? {#why-dao} @@ -29,19 +29,19 @@ Cela ouvre énormément de nouvelles possibilités de collaboration et de coordi ### Une comparaison {#dao-comparison} -| DAO | Organisation traditionnelle | -| --------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| Habituellement fixe, et pleinement démocratisée. | Généralement hiérarchique. | -| Vote requis par les membres pour que tout changement soit mis en œuvre. | Selon la structure, des changements peuvent être demandés par une seule personne et le vote peut être biaisé. | -| Votes comptabilisés et résultats mis en œuvre automatiquement sans intermédiaire de confiance. | Si les votes sont proposés, ils sont calculés en interne et les résultats des votes doivent être traités manuellement. | +| DAO | Organisation traditionnelle | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | +| Habituellement fixe, et pleinement démocratisée. | Généralement hiérarchique. | +| Vote requis par les membres pour que tout changement soit mis en œuvre. | Selon la structure, des changements peuvent être demandés par une seule personne et le vote peut être biaisé. | +| Votes comptabilisés et résultats mis en œuvre automatiquement sans intermédiaire de confiance. | Si les votes sont proposés, ils sont calculés en interne et les résultats des votes doivent être traités manuellement. | | Les services offerts sont gérés automatiquement de manière décentralisée (par exemple la distribution de fonds philanthropiques). | Nécessite une manipulation humaine ou une automatisation centralisée sujette à la manipulation. | -| Toutes les activités sont transparentes et entièrement publiques. | L'activité est généralement privée et limitée au public. | +| Toutes les activités sont transparentes et entièrement publiques. | L'activité est généralement privée et limitée au public. | ### Exemples de DAO {#dao-examples} Pour aider votre compréhension, voici quelques exemples de la façon dont vous pourriez utiliser une DAO : -- **Un organisme caritatif** – vous pouvez accepter les dons de n'importe qui dans le monde entier et voter pour les causes à financer. +- **Un organisme de bienfaisance** – vous pouvez accepter les dons de n'importe qui dans le monde entier et voter pour les causes à financer. - **Propriété collective** – vous pouvez acheter des actifs physiques ou numériques et les membres peuvent voter sur la façon de les utiliser. - **Entreprises et subventions** – vous pouvez créer un fonds de capital-risque qui regroupe le capital d'investissement et vote sur les entreprises à soutenir. L'argent perçu pourra plus tard être redistribué entre les membres de la DAO. @@ -49,11 +49,11 @@ Pour aider votre compréhension, voici quelques exemples de la façon dont vous ## Comment fonctionnent les DAO ? {#how-daos-work} -La colonne vertébrale d'une DAO est [son contrat intelligent](/glossary/#smart-contract), qui définit les règles de l'organisation et détient la trésorerie du groupe. Une fois que le contrat est en vigueur sur Ethereum, personne ne peut modifier les règles autrement que par un vote. Si quelqu'un essaie de faire quelque chose qui n'est pas couvert par les règles et la logique dans le code, il échouera. Et, comme la trésorerie est également définie par le contrat intelligent, personne ne peut dépenser l'argent sans l'approbation du groupe. Cela signifie que les DAO n'ont pas besoin d'une autorité centrale. Au lieu de cela, le groupe prend des décisions collectives et les paiements sont autorisés automatiquement lorsque les votes sont passés. +La colonne vertébrale d'une DAO est son [contrat intelligent](/glossary/#smart-contract), qui définit les règles de l'organisation et détient la trésorerie du groupe. Une fois que le contrat est en vigueur sur Ethereum, personne ne peut modifier les règles autrement que par un vote. Si quelqu'un essaie de faire quelque chose qui n'est pas couvert par les règles et la logique dans le code, il échouera. Et, comme la trésorerie est également définie par le contrat intelligent, personne ne peut dépenser l'argent sans l'approbation du groupe. Cela signifie que les DAO n'ont pas besoin d'une autorité centrale. Au lieu de cela, le groupe prend des décisions collectives et les paiements sont autorisés automatiquement lorsque les votes sont passés. Ceci est possible parce que les contrats intelligents sont étanches à toute intrusion dès qu'ils sont mis en service sur Ethereum. Vous ne pouvez pas simplement modifier le code (les règles DAO) sans que les gens le remarquent puisque tout est public. -## Ethereum et DAO {#ethereum-and-daos} +## Ethereum et les DAO {#ethereum-and-daos} Ethereum est une base parfaite pour les DAOs pour plusieurs raisons : @@ -62,7 +62,7 @@ Ethereum est une base parfaite pour les DAOs pour plusieurs raisons : - Les contrats intelligents peuvent envoyer/recevoir des fonds. Sans cela, vous aurez besoin d'un intermédiaire de confiance pour gérer les fonds de groupe. - La communauté Ethereum s'est révélée plus coopérative que compétitive, permettant ainsi l'émergence de pratiques exemplaires dotés d'une grande vitesse de développement. -## Gouvernance de DAO {#dao-governance} +## Gouvernance des DAO {#dao-governance} Il existe de nombreuses considérations à prendre en compte au moment de gouverner une DAO, comme le fonctionnement du vote et des propositions. @@ -70,9 +70,7 @@ Il existe de nombreuses considérations à prendre en compte au moment de gouver La délégation est la version DAO de la démocratie représentative. Les détenteurs de jetons délèguent des votes aux utilisateurs qui se désignent et s'engagent à gérer le protocole et à rester informés. -#### Un exemple célèbre {#governance-example} - -[ENS](https://claim.ens.domains/delegate-ranking) – Les détenteurs d'ENS peuvent déléguer leurs votes à des membres de la communauté engagés pour les représenter. +#### Un exemple célèbre {#governance-example}[ENS](https://claim.ens.domains/delegate-ranking) – Les détenteurs d'ENS peuvent déléguer leurs votes à des membres engagés de la communauté pour les représenter. ### Gouvernance automatique des transactions {#governance-example} @@ -80,35 +78,35 @@ Dans de nombreuse DAO, les transactions seront automatiquement exécutées si le #### Un exemple célèbre {#governance-example} -[Nouns](https://nouns.wtf) – Dans Nouns DAO, une transaction est automatiquement exécutée si un quorum de votes est atteint et qu'une majorité vote par l'affirmative, tant qu'elle ne fait pas l'objet d'un véto de la part des fondateurs. +[Nouns](https://nouns.wtf) – Dans la DAO Nouns, une transaction est automatiquement exécutée si un quorum de votes est atteint et qu'une majorité vote par l'affirmative, tant qu'elle ne fait pas l'objet d'un veto de la part des fondateurs. -### Gouvernance Multisig {#governance-example} +### Gouvernance multisig {#governance-example} -Tandis que les DAO peuvent avoir des milliers de membres votants, les fonds peuvent se trouver dans un [portefeuille](/glossary/#wallet) partagé par 5 à 20 membres actifs de la communauté qui sont dignes de confiance et généralement doxxés (identités publiques connues de la communauté). Après un vote, les signataires [multisig](/glossary/#multisig) exécutent la volonté de la communauté. +Bien que les DAO puissent avoir des milliers de membres votants, les fonds peuvent se trouver dans un [portefeuille](/glossary/#wallet) partagé par 5 à 20 membres actifs de la communauté qui sont dignes de confiance et généralement doxxés (dont les identités publiques sont connues de la communauté). Après un vote, les signataires [multisig](/glossary/#multisig) exécutent la volonté de la communauté. -## Les lois des DAO {#dao-laws} +## Lois sur les DAO {#dao-laws} En 1977, le Wyoming a créé la LLC, qui protège les entrepreneurs et limite leur responsabilité. Plus récemment, ils ont été les pionniers de la loi pour les DAO qui établit un statut juridique pour les DAO. Actuellement, le Wyoming, le Vermont et les Îles Vierges ont des lois portant sur les DAO sous une forme ou une autre. ### Un exemple célèbre {#law-example} -[CityDAO](https://citizen.citydao.io/) - CityDAO s'est servi de la loi DAO du Wyoming pour acheter 40 acres de terrain près du parc national de Yellowstone. +[CityDAO](https://citizen.citydao.io/) – CityDAO a utilisé la loi sur les DAO du Wyoming pour acheter 40 acres de terrain près du parc national de Yellowstone. -## Adhésion à la DAO {#dao-membership} +## Adhésion à une DAO {#dao-membership} Il existe différents modèles pour adhérer à une DAO. L'adhésion peut déterminer comment fonctionne le vote et d'autres éléments clés de la DAO. -### Adhésion basée sur des jetons {#token-based-membership} +### Adhésion basée sur les jetons {#token-based-membership} -Habituellement cela se fait totalement [sans permission](/glossary/#permissionless), seulement en fonction du jeton utilisé. La plupart de ces jetons de gouvernance peuvent être échangés sans permission sur un [échange décentralisé](/glossary/#dex). D’autres doivent être gagnés en fournissant des liquidités ou une autre « preuve de travail ». Quoi qu’il en soit, il suffit de détenir le jeton pour avoir accès au vote. +Généralement entièrement [sans permission](/glossary/#permissionless), en fonction du jeton utilisé. La plupart de ces jetons de gouvernance peuvent être échangés sans permission sur un [échange décentralisé](/glossary/#dex). D’autres doivent être gagnés en fournissant des liquidités ou une autre « preuve de travail ». Quoi qu’il en soit, il suffit de détenir le jeton pour avoir accès au vote. _Généralement, cela est utilisé pour régir des protocoles décentralisés et/ou des jetons eux-mêmes._ #### Un exemple célèbre {#token-example} -[MakerDAO](https://makerdao.com) – Le jeton MKR de MakerDAO est largement disponible sur les échanges décentralisés et tout le monde peut acheter un droit de vote sur le futur du protocole Maker. +[MakerDAO](https://makerdao.com) – Le jeton MKR de MakerDAO est largement disponible sur les échanges décentralisés et n'importe qui peut en acheter pour avoir un droit de vote sur l'avenir du protocole Maker. -### Adhésion basée sur les actions {#share-based-membership} +### Adhésion par actions {#share-based-membership} Les DAO basées sur le partage sont davantage soumises à l'autorisation, mais demeurent assez ouvertes. Tous les membres potentiels peuvent soumettre une proposition pour rejoindre la DAO, offrant habituellement une contribution d'une certaine valeur sous la forme de jetons ou de travail. Les actions représentent le droit de vote direct et la propriété. Les membres peuvent sortir à tout moment avec leur part proportionnelle de la trésorerie. @@ -116,51 +114,53 @@ _Habituellement utilisé pour des organisations plus proches et axées sur l'asp #### Un exemple célèbre {#share-example} -[MolochDAO](http://molochdao.com/) – MolochDAO se concentre sur le financement de projets Ethereum. Ils requièrent une proposition d’adhésion afin que le groupe puisse évaluer si vous avez l’expertise et le capital nécessaires pour émettre des jugements éclairés sur les bénéficiaires potentiels. Vous ne pouvez pas vous contenter d'acheter l'accès à la DAO sur le marché ouvert. +[MolochDAO](http://molochdao.com/) – MolochDAO se concentre sur le financement des projets Ethereum. Ils requièrent une proposition d’adhésion afin que le groupe puisse évaluer si vous avez l’expertise et le capital nécessaires pour émettre des jugements éclairés sur les bénéficiaires potentiels. Vous ne pouvez pas vous contenter d'acheter l'accès à la DAO sur le marché ouvert. ### Adhésion basée sur la réputation {#reputation-based-membership} Ici, la réputation représente une preuve de participation et accorde le droit de vote dans la DAO. Contrairement à une adhésion basée sur des jetons ou sur les actions, les DAO basées sur la réputation ne transfèrent pas la propriété aux contributeurs. En effet, la réputation ne peut pas être achetée, transférée ou déléguée  ; les membres de la DAO doivent mériter leur réputation par la participation. Le vote sur la chaîne est sans permission, les membres potentiels peuvent librement soumettre des propositions pour rejoindre la DAO et demander à obtenir une réputation et des jetons en guise de récompense en échange de leurs contributions. -_Habituellement utilisée pour le développement décentralisé et la gouvernance de protocoles et de [DApps](/glossary/#dapp), cette méthode est également adaptée à divers autres types d'organisations, comme les organismes caritatifs, les collectifs de travailleurs, les clubs d'investissement, etc._ +_Généralement utilisée pour le développement décentralisé et la gouvernance des protocoles et des [dapps](/glossary/#dapp), cette méthode convient également à divers types d'organisations, comme les organismes de bienfaisance, les collectifs de travailleurs, les clubs d'investissement, etc._ #### Un exemple célèbre {#reputation-example} -[DXdao](https://DXdao.eth.limo) - DXdao est une construction collective mondiale souveraine et régit des protocoles et applications décentralisés depuis 2019. DXdao tire parti d'une gouvernance basé sur la réputation et du [consensus holographique](/glossary/#holographic-consensus) pour coordonner et gérer les fonds, ce qui signifie que personne ne pourrait faire en sorte d'influencer son futur ou sa gouvernance. +[DXdao](https://DXdao.eth.limo) – DXdao était un collectif souverain mondial qui créait et gouvernait des protocoles et des applications décentralisés depuis 2019. Elle a tiré parti de la gouvernance basée sur la réputation et du [consensus holographique](/glossary/#holographic-consensus) pour coordonner et gérer les fonds, ce qui signifie que personne ne pouvait acheter son influence sur son avenir ou sa gouvernance. -## Rejoindre/démarrer une DAO {#join-start-a-dao} +## Rejoindre / créer une DAO {#join-start-a-dao} -### Rejoindre une organisation autonome décentralisée (DAO) {#join-a-dao} +### Rejoindre une DAO {#join-a-dao} - [DAO de la communauté Ethereum](/community/get-involved/#decentralized-autonomous-organizations-daos) -- [Liste des DAO de DAOHauss](https://app.daohaus.club/explore) -- [Liste des DAO Tally.xyz](https://www.tally.xyz) +- [Liste de DAO de DAOHaus](https://app.daohaus.club/explore) +- [Liste de DAO de Tally.xyz](https://www.tally.xyz/explore) +- [Liste de DAO de DeGov.AI](https://apps.degov.ai/) -### Démarrer une DAO {#start-a-dao} +### Créer une DAO {#start-a-dao} -- [Invoquer une DAO avec DAOHaus](https://app.daohaus.club/summon) -- [Lancer une Governor DAO avec Tally](https://www.tally.xyz/add-a-dao) +- [Créer une DAO avec DAOHaus](https://app.daohaus.club/summon) +- [Créer une Governor DAO avec Tally](https://www.tally.xyz/get-started) - [Créer une DAO propulsée par Aragon](https://aragon.org/product) - [Lancer une colonie](https://colony.io/) - [Créer une DAO avec le consensus holographique de DAOstack](https://alchemy.daostack.io/daos/create) +- [Lancer une DAO avec le DeGov Launcher](https://docs.degov.ai/integration/deploy) -## Complément d'information {#further-reading} +## En savoir plus {#further-reading} -### Articles DAO {#dao-articles} +### Articles sur les DAO {#dao-articles} - [Qu'est-ce qu'une DAO ?](https://aragon.org/dao) – [Aragon](https://aragon.org/) -- [La maison des DAOs](https://wiki.metagame.wtf/docs/great-houses/house-of-daos) – [Metagame](https://wiki.metagame.wtf/) -- [Qu'est-ce qu'une DAO et à quoi sert-elle ?](https://daohaus.substack.com/p/-what-is-a-dao-and-what-is-it-for) – [DAOhaus](https://daohaus.club/) -- [Comment démarrer une communauté numérique DAO](https://daohaus.substack.com/p/four-and-a-half-steps-to-start-a) – [DAOhaus](https://daohaus.club/) +- [House of DAOs](https://wiki.metagame.wtf/docs/great-houses/house-of-daos) – [Metagame](https://wiki.metagame.wtf/) +- [Qu'est-ce qu'une DAO et à quoi ça sert ?](https://daohaus.substack.com/p/-what-is-a-dao-and-what-is-it-for) – [DAOhaus](https://daohaus.club/) +- [Comment démarrer une communauté numérique alimentée par une DAO](https://daohaus.substack.com/p/four-and-a-half-steps-to-start-a) – [DAOhaus](https://daohaus.club/) - [Qu'est-ce qu'une DAO ?](https://coinmarketcap.com/alexandria/article/what-is-a-dao) – [Coinmarketcap](https://coinmarketcap.com) -- [Qu'est-ce que le Consensus holographique ?](https://medium.com/daostack/holographic-consensus-part-1-116a73ba1e1c) - [DAOstack](https://daostack.io/) -- [Les DAO ne sont pas des entreprises : là où la décentralisation dans les organisations autonomes compte, par Vitalik](https://vitalik.eth.limo/general/2022/09/20/daos.html) -- [DAO, DAC, DA et plus : un guide terminologique incomplet](https://blog.ethereum.org/2014/05/06/daos-dacs-das-and-more-an-incomplete-terminology-guide) - [Blog Ethereum](https://blog.ethereum.org) +- [Qu'est-ce que le consensus holographique ?](https://medium.com/daostack/holographic-consensus-part-1-116a73ba1e1c) - [DAOstack](https://daostack.io/) +- [Les DAO ne sont pas des entreprises : où la décentralisation dans les organisations autonomes est importante, par Vitalik](https://vitalik.eth.limo/general/2022/09/20/daos.html) +- [DAO, DAC, DA et plus encore : un guide terminologique incomplet](https://blog.ethereum.org/2014/05/06/daos-dacs-das-and-more-an-incomplete-terminology-guide) - [Blog Ethereum](https://blog.ethereum.org) ### Vidéos {#videos} -- [Qu'est-ce qu'une DAO en cryptomonnaie ?](https://youtu.be/KHm0uUPqmVE) -- [Une DAO peut-elle bâtir une ville ?](https://www.ted.com/talks/scott_fitsimones_could_a_dao_build_the_next_great_city) – [TED](https://www.ted.com/) +- [Qu'est-ce qu'une DAO en crypto ?](https://youtu.be/KHm0uUPqmVE) +- [Une DAO peut-elle construire une ville ?](https://www.ted.com/talks/scott_fitsimones_could_a_dao_build_the_next_great_city) – [TED](https://www.ted.com/) diff --git a/public/content/translations/fr/decentralized-identity/index.md b/public/content/translations/fr/decentralized-identity/index.md index b98754ae1cd..a05bb4b760f 100644 --- a/public/content/translations/fr/decentralized-identity/index.md +++ b/public/content/translations/fr/decentralized-identity/index.md @@ -1,25 +1,25 @@ --- -title: Identité décentralisée -description: Qu’est-ce que l’identité décentralisée et pourquoi est-ce important ? +title: "Identité décentralisée" +description: "Qu’est-ce que l’identité décentralisée et pourquoi est-ce important ?" lang: fr template: use-cases emoji: ":id:" sidebarDepth: 2 image: /images/eth-gif-cat.png -summaryPoint1: Les systèmes traditionnels d'identité centralisent l'émission, le maintien et le contrôle de vos identifiants. -summaryPoint2: L'identité décentralisée supprime la dépendance à l'égard de tiers centralisés. -summaryPoint3: Grâce à la cryptomonnaie, les utilisateurs ont maintenant les outils pour émettre, conserver et contrôler à nouveau leurs propres identifiants et attestations. +summaryPoint1: "Les systèmes traditionnels d'identité centralisent l'émission, le maintien et le contrôle de vos identifiants." +summaryPoint2: "L'identité décentralisée supprime la dépendance à l'égard de tiers centralisés." +summaryPoint3: "Grâce à la cryptomonnaie, les utilisateurs ont maintenant les outils pour émettre, conserver et contrôler à nouveau leurs propres identifiants et attestations." --- Aujourd'hui, l'identité sous-tend pratiquement tous les aspects de votre existence. Utiliser les services en ligne, ouvrir un compte bancaire, voter aux élections, acheter un bien, obtenir un emploi, tout cela nécessite de prouver votre identité. -Cependant, les systèmes traditionnels de gestion d'identité reposent depuis longtemps sur des intermédiaires centralisés qui émettent, conservent et contrôlent vos identifiants et vos [attestations](/glossary/#attestation). Cela signifie que vous ne pouvez pas contrôler les renseignements relatifs à votre identité ou décider qui a accès à des renseignements personnels identifiables (PII) et quel est le niveau d'accès de ces parties. +Cependant, les systèmes traditionnels de gestion d'identité reposent depuis longtemps sur des intermédiaires centralisés qui émettent, conservent et contrôlent vos identifiants et [attestations](/glossary/#attestation). Cela signifie que vous ne pouvez pas contrôler les renseignements relatifs à votre identité ou décider qui a accès à des renseignements personnels identifiables (PII) et quel est le niveau d'accès de ces parties. -Pour résoudre ces problèmes, nous avons des systèmes d'identité décentralisés construits sur des blockchains publiques comme Ethereum. L'identité décentralisée permet aux individus de gérer les informations relatives à leur identité. Avec des solutions d’identité décentralisées, _vous_ pouvez créer des identifiants et réclamer et détenir vos attestations sans compter sur les autorités centrales, comme les fournisseurs de services ou les gouvernements. +Pour résoudre ces problèmes, nous avons des systèmes d'identité décentralisés construits sur des blockchains publiques comme Ethereum. L'identité décentralisée permet aux individus de gérer les informations relatives à leur identité. Avec les solutions d'identité décentralisée, _vous_ pouvez créer des identifiants, réclamer et conserver vos attestations sans dépendre d'autorités centrales, telles que les fournisseurs de services ou les gouvernements. ## Qu'est-ce qu'une identité? {#what-is-identity} -L'identité signifie le sentiment de soi d'un individu, défini par des caractéristiques uniques. L'identité désigne le fait d'être un _individu_, c'est-à-dire une entité humaine distincte. L'identité pourrait également se référer à d'autres entités non humaines, comme une organisation ou une autorité. +L'identité signifie le sentiment de soi d'un individu, défini par des caractéristiques uniques. L'identité fait référence au fait d'être un _individu_, c'est-à-dire une entité humaine distincte. L'identité pourrait également se référer à d'autres entités non humaines, comme une organisation ou une autorité. @@ -35,51 +35,77 @@ Un identificateur est une information qui sert de pointeur vers une identité pa Ces exemples traditionnels d’identifiants sont publiés, détenus et contrôlés par des entités centrales. Vous avez besoin de la permission de votre gouvernement pour changer votre nom ou de celle d'une plateforme de médias sociaux pour changer de pseudo. -## Avantages d'une identité décentralisée {#benefits-of-decentralized-identity} +## Avantages de l'identité décentralisée {#benefits-of-decentralized-identity} 1. L'identité décentralisée accroît votre contrôle sur vos informations personnelles d'identification. Les identifiants et attestations décentralisés peuvent être vérifiés sans dépendre des autorités centralisées et des services tiers. -2. Les solutions d'identité décentralisées facilitent la vérification et la gestion de l'identité des utilisateurs de manière fiable, transparente et protègent la vie privée. +2. Les solutions d'identité décentralisée facilitent une méthode sans tiers de confiance, transparente et respectueuse de la vie privée pour vérifier et gérer l'identité des utilisateurs. 3. L'identité décentralisée exploite la technologie blockchain, qui crée la confiance entre les différentes parties et fournit des garanties cryptographiques pour prouver la validité des attestations. -4. L'identité décentralisée rend les données d'identité transférables. Les utilisateurs stockent des attestations et des identificateurs dans un portefeuille numérique et peuvent les partager avec n'importe quelle partie de leur choix. Les identifiants et attestations décentralisés ne sont pas verrouillés dans la base de données de l'organisme émetteur. +4. L'identité décentralisée rend les données d'identité transférables. Les utilisateurs stockent les attestations et les identifiants dans un portefeuille mobile et peuvent les partager avec n'importe quelle partie de leur choix. Les identifiants et attestations décentralisés ne sont pas verrouillés dans la base de données de l'organisme émetteur. -5. L'identité décentralisée devrait bien fonctionner avec les technologies émergentes de [connaissance zéro](/glossary/#zk-proof) qui permettront aux individus de prouver qu'ils possèdent ou ont fait quelque chose sans révéler ce que c'est. Cela pourrait devenir un moyen puissant de combiner confiance et confidentialité pour des applications telles que le vote. +5. L'identité décentralisée devrait bien fonctionner avec les technologies émergentes de [preuve à divulgation nulle de connaissance](/glossary/#zk-proof) qui permettront aux individus de prouver qu'ils possèdent ou ont fait quelque chose sans révéler ce que c'est. Cela pourrait devenir un moyen puissant de combiner confiance et confidentialité pour des applications telles que le vote. -6. L'identité décentralisée permet aux mécanismes [anti-Sybil](/glossary/#anti-sybil) de détecter lorsqu'un individu se fait passer pour plusieurs autres afin de jouer ou de spammer un système. +6. L'identité décentralisée active des mécanismes [anti-Sybil](/glossary/#anti-sybil) pour identifier quand un individu se fait passer pour plusieurs personnes pour exploiter ou polluposter un système. ## Cas d'utilisation de l'identité décentralisée {#decentralized-identity-use-cases} L'identité décentralisée propose de nombreux cas d'utilisation potentiels : -### 1. Connexions universelles {#universal-dapp-logins} +### 1. Identifiants universels {#universal-dapp-logins} -L'identité décentralisée peut aider à remplacer les connexions par mot de passe par une authentification décentralisée. Les fournisseurs de services peuvent délivrer des attestations aux utilisateurs, qui peuvent être stockées dans un portefeuille Ethereum. Un exemple d'attestation serait un [NFT](/glossary/#nft) accordant au titulaire l'accès à une communauté en ligne. +L'identité décentralisée peut aider à remplacer les connexions par mot de passe par une authentification décentralisée. Les fournisseurs de services peuvent délivrer des attestations aux utilisateurs, qui peuvent être stockées dans un portefeuille Ethereum. Un exemple d'attestation serait un [NFT](/glossary/#nft) accordant à son détenteur l'accès à une communauté en ligne. -Une fonction de [connexion avec Ethereum](https://siwe.xyz/) permettrait alors aux serveurs de confirmer le compte Ethereum de l'utilisateur et de récupérer l'attestation requise à partir de l'adresse de son compte. Cela signifie que les utilisateurs peuvent accéder aux plateformes et aux sites web sans avoir à mémoriser de longs mots de passe et améliore l'expérience en ligne des utilisateurs. +Une fonction [Se connecter avec Ethereum](https://siwe.xyz/) permettrait alors aux serveurs de confirmer le compte Ethereum de l'utilisateur et de récupérer l'attestation requise depuis l'adresse de son compte. Cela signifie que les utilisateurs peuvent accéder aux plateformes et aux sites web sans avoir à mémoriser de longs mots de passe et améliore l'expérience en ligne des utilisateurs. ### 2. Authentification KYC {#kyc-authentication} L'utilisation de nombreux services en ligne exige des personnes qu'elles fournissent des attestations et des justificatifs, tels qu'un permis de conduire ou un passeport national. Mais cette approche est problématique, car les informations privées des utilisateurs peuvent être compromises et les fournisseurs de services ne peuvent pas vérifier l'authenticité de l'attestation. -L'identité décentralisée permet aux entreprises de se passer des processus classiques de [connaissance du client (Know-Your-Customer KYC)](https://en.wikipedia.org/wiki/Know_your_customer) et d'authentifier l'identité des utilisateurs au moyen d'identifiants vérifiables. Cela réduit le coût de la gestion de l'identité et empêche l'utilisation de faux documents. +L'identité décentralisée permet aux entreprises de se dispenser des processus conventionnels de type [Connaissance du client (KYC)](https://en.wikipedia.org/wiki/Know_your_customer) et d'authentifier l'identité des utilisateurs via des informations d'identification vérifiables. Cela réduit le coût de la gestion de l'identité et empêche l'utilisation de faux documents. -### 3. Votes et communautés en ligne {#voting-and-online-communities} +### 3. Vote et communautés en ligne {#voting-and-online-communities} Le vote en ligne et les médias sociaux sont deux nouvelles applications de l'identité décentralisée. Les systèmes de vote en ligne sont susceptibles d'être manipulés, notamment si des acteurs malveillants créent de fausses identités pour voter. Demander aux personnes de présenter des attestations sur la chaîne peut améliorer l'intégrité des processus de vote en ligne. L'identité décentralisée peut contribuer à créer des communautés en ligne exemptes de faux comptes. Par exemple, chaque utilisateur pourrait devoir authentifier son identité à l'aide d'un système d'identité sur la chaîne, comme le service de nom Ethereum, ce qui réduirait les possibilités de bots. -### 4. Protection anti-sybil {#sybil-protection} +### 4. Protection anti-Sybil {#sybil-protection} -Les applications d'attribution de subvention qui utilisent le [vote quadratique](/glossary/#quadratic-voting) sont vulnérables aux [attaques Sybil](/glossary/#sybil-attack) car la valeur d'une subvention augmente quand davantage de personnes votent pour elle, incitant les utilisateurs à répartir leurs contributions sur plusieurs identités. Les identités décentralisées permettent d'éviter cela en faisant peser sur chaque participant la charge de prouver qu'il est réellement humain, mais souvent sans avoir à révéler des informations privées spécifiques. +Les applications de subvention qui utilisent le [vote quadratique](/glossary/#quadratic-voting) sont vulnérables aux [attaques Sybil](/glossary/#sybil-attack) parce que la valeur d'une subvention augmente lorsque plus d'individus votent pour elle, ce qui incite les utilisateurs à répartir leurs contributions sur plusieurs identités. Les identités décentralisées permettent d'éviter cela en faisant peser sur chaque participant la charge de prouver qu'il est réellement humain, mais souvent sans avoir à révéler des informations privées spécifiques. + +### 5. Identité nationale et gouvernementale {#national-and-government-id} + +Les gouvernements peuvent utiliser les principes de l'identité décentralisée pour émettre des documents d'identité fondamentaux – tels que des cartes d'identité nationales, des passeports ou des permis de conduire – sous forme d'informations d'identification vérifiables sur Ethereum, offrant de solides garanties cryptographiques d'authenticité pour réduire la fraude et la falsification lors de la vérification d'identité en ligne. Les citoyens peuvent stocker ces attestations dans leur [portefeuille](/wallets/) personnel et les utiliser pour prouver leur identité, leur âge ou leur droit de vote. + +Ce modèle permet une divulgation sélective, en particulier lorsqu'il est combiné avec la technologie de confidentialité de la [preuve à divulgation nulle de connaissance (ZKP)](/zero-knowledge-proofs/). Par exemple, un citoyen pourrait prouver par cryptographie qu'il a plus de 18 ans pour accéder à un service réservé aux personnes d'un certain âge sans révéler sa date de naissance exacte, offrant ainsi une plus grande confidentialité qu'une pièce d'identité traditionnelle. + +#### 💡Étude de cas : Identité numérique nationale (NDI) du Bhoutan sur Ethereum {#case-study-bhutan-ndi} + +- Fournit un accès à des informations d'identification vérifiables pour près de 800 000 citoyens bhoutanais +- Migration depuis le réseau Polygon [vers le réseau principal Ethereum](https://www.bhutanndi.com/article/bhutan-adopts-ethereum-for-national-identity-a-new-chapter-in-digital-sovereignty_2d0c7ec2-5605-4c42-b258-bd9361ae8878) en octobre 2025 +- Plus de [234 000 identités numériques](https://www.blockchain-council.org/blockchain/bhutan-uses-blockchain-in-digital-id-project/) émises en mars 2025 + +Le Royaume du Bhoutan a [migré son système d'identité numérique nationale (NDI)](https://www.bhutanndi.com/article/bhutan-adopts-ethereum-for-national-identity-a-new-chapter-in-digital-sovereignty_2d0c7ec2-5605-4c42-b258-bd9361ae8878) vers Ethereum en octobre 2025. Basé sur les principes de l'identité décentralisée et de l'identité auto-souveraine, le système NDI du Bhoutan utilise des identifiants décentralisés et des informations d'identification vérifiables pour émettre des informations d'identification signées numériquement directement dans le portefeuille personnel d'un citoyen. En ancrant les preuves cryptographiques de ces informations d'identification sur Ethereum, le système garantit qu'elles sont authentiques, infalsifiables et peuvent être vérifiées par n'importe quelle partie sans interroger une autorité centrale. + +L'architecture du système met l'accent sur la confidentialité grâce à l'utilisation de la technologie de [preuve à divulgation nulle de connaissance (ZKP)](/zero-knowledge-proofs/). Cette implémentation de la « divulgation sélective » permet aux citoyens de prouver des faits spécifiques (par exemple, « J'ai plus de 18 ans » ou « Je suis citoyen ») pour accéder à des services sans révéler les données personnelles sous-jacentes, telles que leur numéro d'identification complet ou leur date de naissance exacte. Cela démontre une utilisation puissante et concrète d'Ethereum pour un système d'identification national sécurisé, centré sur l'utilisateur et respectueux de la vie privée. + +#### 💡Étude de cas : QuarkID de la ville de Buenos Aires sur la [Couche 2](/layer-2/) d'Ethereum ZKSync Era {#case-study-buenos-aires-quarkid} + +- A émis des informations d'identification décentralisées à plus de [3,6 millions d'utilisateurs](https://buenosaires.gob.ar/innovacionytransformaciondigital/miba-con-tecnologia-quarkid-la-ciudad-de-buenos-aires-incorporo) lors du lancement +- QuarkID est un protocole open source reconnu comme un [bien public numérique](https://www.digitalpublicgoods.net/r/quarkid) dans le cadre des objectifs de développement durable de l'ONU +- Met l'accent sur un modèle de « [gouvernement en tant qu'utilisateur](https://buenosaires.gob.ar/innovacionytransformaciondigital/miba-con-tecnologia-quarkid-la-ciudad-de-buenos-aires-incorporo) », où la ville ne possède pas le protocole, donnant aux citoyens la pleine propriété de leurs données et la confidentialité + +En 2024, le gouvernement de la ville de Buenos Aires (GCBA) a intégré QuarkID, le « cadre de confiance numérique » open source créé par le Secrétariat de l'innovation et de la transformation numérique du GCBA, dans miBA, l'application officielle de la ville permettant aux résidents d'accéder aux services gouvernementaux et aux documents officiels. Au lancement, tous les 3,6 millions et plus d'utilisateurs de miBA ont reçu des identités numériques décentralisées qui leur permettent de gérer et de partager des documents et certificats numériques vérifiables en chaîne, y compris des titres de citoyenneté, des certificats de naissance, de mariage et de décès, des dossiers fiscaux, des carnets de vaccination, et plus encore. + +Basé sur le réseau de [Couche 2](/layer-2/) d'Ethereum ZKSync Era, le système QuarkID utilise la technologie ZKP pour permettre aux citoyens de vérifier leurs informations d'identification personnelles en pair-à-pair via leurs appareils mobiles, sans exposer de données personnelles inutiles. Le programme met en évidence un modèle de « gouvernement en tant qu'utilisateur » dans lequel le GCBA agit comme un utilisateur du protocole QuarkID, open source et interopérable, plutôt que comme un propriétaire centralisé. Cette architecture compatible ZKP offre une fonctionnalité de confidentialité essentielle : aucun tiers, pas même le GCBA, ne peut suivre comment, quand ou pourquoi un citoyen utilise ses informations d'identification. Ce programme réussi offre aux citoyens une identité entièrement auto-souveraine et un contrôle total sur leurs données sensibles, le tout sécurisé par le réseau mondialement distribué d'Ethereum. ## Que sont les attestations ? {#what-are-attestations} Une attestation est une déclaration faite par une entité sur une autre entité. Si vous vivez aux États-Unis, le permis de conduire qui vous a été délivré par le Department of Motor Vehicles (ministère des véhicules à moteur) (une entité) atteste que vous (une autre entité) êtes légalement autorisé à conduire une voiture. -Les attestations sont différentes des identifiants. Une attestation _contient_des identifiants pour référencer une identité particulière et émet une revendication à propos d'un attribut lié à cette identité. Ainsi, votre permis de conduire a des identifiants (nom, date de naissance, adresse) mais est aussi l'attestation de votre droit légal de conduire. +Les attestations sont différentes des identifiants. Une attestation _contient_ des identifiants pour référencer une identité particulière, et fait une déclaration sur un attribut lié à cette identité. Ainsi, votre permis de conduire a des identifiants (nom, date de naissance, adresse) mais est aussi l'attestation de votre droit légal de conduire. ### Que sont les identifiants décentralisés ? {#what-are-decentralized-identifiers} @@ -87,27 +113,27 @@ Les identificateurs traditionnels comme votre nom légal ou votre adresse de cou Des identifiants décentralisés sont émis, conservés et contrôlés par des individus. Un [compte Ethereum](/glossary/#account) est un exemple d'identifiant décentralisé. Vous pouvez créer autant de comptes que vous le souhaitez sans permission de personne et sans avoir à les stocker dans un registre central. -Les identifiants décentralisés sont stockés sur des registres distribués ([blockchains](/glossary/#blockchain)) ou sur des réseaux [pair-à-pair](/glossary/#peer-to-peer-network). Cela rend les DID [mondialement uniques, solubles avec une haute disponibilité, et vérifiables cryptographiquement](https://w3c-ccg.github.io/did-primer/). Un identifiant décentralisé peut être associé à différentes entités, y compris les personnes, les organisations ou les institutions gouvernementales. +Les identifiants décentralisés sont stockés sur des registres distribués ([blockchains](/glossary/#blockchain)) ou des [réseaux pair-à-pair](/glossary/#peer-to-peer-network). Cela rend les DID [uniques à l'échelle mondiale, résolvables avec une haute disponibilité et vérifiables par cryptographie](https://w3c-ccg.github.io/did-primer/). Un identifiant décentralisé peut être associé à différentes entités, y compris les personnes, les organisations ou les institutions gouvernementales. -## Qu'est-ce qui rend possible les identifiants décentralisés ? {#what-makes-decentralized-identifiers-possible} +## Qu'est-ce qui rend possible les identifiants décentralisés ? Qu'est-ce qui rend les identifiants décentralisés possibles ? {#what-makes-decentralized-identifiers-possible} ### 1. Cryptographie à clé publique {#public-key-cryptography} La cryptographie à clé publique est une mesure de sécurité de l'information qui génère une [clé publique](/glossary/#public-key) et une [clé privée](/glossary/#private-key) pour une entité. La [cryptographie](/glossary/#cryptography) à clé publique est utilisée dans les réseaux blockchain pour authentifier l'identité des utilisateurs et prouver la propriété des actifs numériques. -Certains identifiants décentralisés, tels qu'un compte Ethereum, possèdent des clés publiques et privées. La clé publique identifie le contrôleur du compte, tandis que les clés privées peuvent signer et déchiffrer les messages pour ce compte. La cryptographie à clé publique fournit les preuves nécessaires pour authentifier les entités et empêcher l'usurpation d'identité et l'utilisation de fausses identités, en utilisant [des signatures cryptographiques](https://andersbrownworth.com/blockchain/public-private-keys/) pour vérifier toutes les demandes. +Certains identifiants décentralisés, tels qu'un compte Ethereum, possèdent des clés publiques et privées. La clé publique identifie le contrôleur du compte, tandis que les clés privées peuvent signer et déchiffrer les messages pour ce compte. La cryptographie à clé publique fournit les preuves nécessaires pour authentifier les entités, empêcher l'usurpation d'identité et l'utilisation de fausses identités, en utilisant des [signatures cryptographiques](https://andersbrownworth.com/blockchain/public-private-keys/) pour vérifier toutes les déclarations. -### 2. Stockage de données décentralisé {#decentralized-datastores} +### 2. Magasins de données décentralisés {#decentralized-datastores} Une blockchain sert de registre de données vérifiable : un registre d'informations ouvert, dénué de confiance et décentralisé. L'existence de blockchains publiques élimine la nécessité de stocker des identifiants dans des registres centralisés. Si quelqu'un a besoin de confirmer la validité d'un identifiant décentralisé, il peut consulter la clé publique associée sur la blockchain. Cela diffère des identifiants traditionnels qui nécessitent l'authentification par des tiers. -## Comment les identifiants et les attestations décentralisés permettent-ils une identité décentralisée ? {#how-decentralized-identifiers-and-attestations-enable-decentralized-identity} +## Comment les identifiants et les attestations décentralisés permettent-ils une identité décentralisée ? Comment les identifiants et attestations décentralisés rendent-ils possible l'identité décentralisée ? {#how-decentralized-identifiers-and-attestations-enable-decentralized-identity} L'identité décentralisée est l'idée que les informations liées à l'identité doivent être autocontrôlées, privées et portables, les identifiants et les attestations décentralisés étant les principaux éléments constitutifs. -Dans le contexte de l'identité décentralisée, les attestations (également connues sous le nom de [identifiants vérifiables](https://www.w3.org/TR/vc-data-model/)) sont des déclarations infalsifiables et vérifiables par cryptographie faites par l'émetteur. Chaque attestation ou identifiant vérifiable émis par une entité (par exemple, une organisation) est associé à son identité décentralisée (IDD). +Dans le contexte de l'identité décentralisée, les attestations (également connues sous le nom d'[informations d'identification vérifiables](https://www.w3.org/TR/vc-data-model/)) sont des déclarations infalsifiables et vérifiables par cryptographie, faites par l'émetteur. Chaque attestation ou identifiant vérifiable émis par une entité (par exemple, une organisation) est associé à son identité décentralisée (IDD). Les IDD étant stockées sur la blockchain, n'importe qui peut vérifier la validité d'une attestation en recoupant l'IDD de l'émetteur sur Ethereum. Essentiellement, la blockchain Ethereum agit comme un répertoire mondial qui permet de vérifier les IDD associées à certaines entités. @@ -119,11 +145,11 @@ Les identifiants décentralisés sont également essentiels pour protéger la co La façon dont les informations d'attestation sont stockées et récupérées dans un écosystème d'identité basé sur Ethereum est différente de la gestion d'identité traditionnelle. Voici un aperçu des différentes approches de l'émission, du stockage et de la vérification des attestations dans les systèmes d'identité décentralisés : -### Attestations hors chaîne {#off-chain-attestations} +### Attestations hors chaîne {#offchain-attestations} L'une des préoccupations liées au stockage des attestations sur la chaîne est qu'elles peuvent contenir des informations que les personnes souhaitent garder privées. La nature publique de la blockchain Ethereum rend peu attrayant le stockage de telles attestations. -La solution consiste à délivrer des attestations, détenues par les utilisateurs en dehors de la chaîne dans des portefeuilles numériques, mais signées avec le DID de l'émetteur stocké sur la chaîne. Ces attestations sont encodées en [JSON Web Tokens](https://en.wikipedia.org/wiki/JSON_Web_Token) et contiennent la signature numérique de l'émetteur, ce qui permet une vérification facile des revendications hors chaîne. +La solution consiste à délivrer des attestations, détenues par les utilisateurs en dehors de la chaîne dans des portefeuilles numériques, mais signées avec le DID de l'émetteur stocké sur la chaîne. Ces attestations sont encodées sous forme de [jetons web JSON](https://en.wikipedia.org/wiki/JSON_Web_Token) et contiennent la signature numérique de l'émetteur, ce qui permet de vérifier facilement les déclarations hors chaîne. Voici un scénario hypothétique pour expliquer les attestations hors de la chaîne : @@ -133,13 +159,13 @@ Voici un scénario hypothétique pour expliquer les attestations hors de la cha ### Attestations hors chaîne avec accès persistant {#offchain-attestations-with-persistent-access} -Dans ce cas, les attestations sont transformées en fichiers JSON et stockées hors chaîne ( idéalement sur une plateforme [de stockage cloud décentralisée](/developers/docs/storage/), telle que IPFS ou Swarm). Cependant, un [hachage](/glossary/#hash) du fichier JSON est stocké sur la chaîne et lié à un DID via un registre sur la chaîne. Le DID associé peut être soit celui de l'émetteur de l'attestation, soit celui du destinataire. +Dans le cadre de cet arrangement, les attestations sont transformées en fichiers JSON et stockées hors chaîne (idéalement sur une plateforme de [stockage en nuage décentralisé](/developers/docs/storage/), comme IPFS ou Swarm). Cependant, un [hachage](/glossary/#hash) du fichier JSON est stocké en chaîne et lié à un DID via un registre en chaîne. Le DID associé peut être soit celui de l'émetteur de l'attestation, soit celui du destinataire. Cette approche permet aux attestations d'obtenir une persistance basée sur la blockchain, tout en conservant les informations relatives aux demandes de remboursement chiffrées et vérifiables. Elle permet également une divulgation sélective puisque le détenteur de la clé privée peut déchiffrer les informations. -### Attestations sur la chaîne {#onchain-attestations} +### Attestations en chaîne {#onchain-attestations} -Les attestations sur la chaîne sont détenues dans des [contrats intelligents](/glossary/#smart-contract) sur la blockchain Ethereum. Le contrat intelligent (agissant comme un registre) associera une attestation à un identifiant décentralisé correspondant sur la chaîne (une clé publique). +Les attestations en chaîne sont conservées dans des [contrats intelligents](/glossary/#smart-contract) sur la blockchain Ethereum. Le contrat intelligent (agissant comme un registre) associera une attestation à un identifiant décentralisé correspondant sur la chaîne (une clé publique). Voici un exemple pour montrer comment les attestations sur la chaîne pourraient fonctionner dans la pratique : @@ -149,43 +175,44 @@ Voici un exemple pour montrer comment les attestations sur la chaîne pourraient 3. Le contrat intelligent qui vend des actions peut vérifier dans le contrat de registre l'identité des acheteurs sélectionnés, ce qui permet au contrat intelligent de déterminer qui est autorisé à acheter des actions ou non. -### Jetons d'âme et identité {#soulbound} +### Jetons Soulbound et identité {#soulbound} -Les [jetons d'âmes](https://vitalik.eth.limo/general/2022/01/26/soulbound.html) ([NFT non transférables](/glossary/#nft)) pourraient être utilisés pour collecter des informations propres à un portefeuille spécifique. Cela crée effectivement une identité unique sur la chaîne, liée à une adresse Ethereum particulière, qui peut inclure des jetons représentant des réalisations (par exemple, terminer un cours en ligne spécifique ou atteindre un score seuil dans un jeu) ou la participation à une communauté. +Les [jetons Soulbound](https://vitalik.eth.limo/general/2022/01/26/soulbound.html) ([NFT non transférables](/glossary/#nft)) pourraient être utilisés pour collecter des informations uniques à un portefeuille spécifique. Cela crée de fait une identité en chaîne unique liée à une adresse Ethereum particulière qui pourrait inclure des jetons représentant des réussites (par exemple, terminer un cours en ligne spécifique ou dépasser un score seuil dans un jeu) ou la participation à la communauté. -## Utiliser une identité décentralisée {#use-decentralized-identity} +## Utiliser l'identité décentralisée {#use-decentralized-identity} Il existe de nombreux projets ambitieux utilisant Ethereum comme base pour des solutions d'identité décentralisée : -- **[Ethereum Name Service (ENS)](https://ens.domains/)** - _Un système de nommage décentralisé pour les identifiants sur la chaîne, lisibles par machine, tels que les adresses de portefeuilles Ethereum, les hachages de contenu et les métadonnées._ -- **[SprunceID](https://www.spruceid.com/)** - _Un projet d'identité décentralisé qui permet aux utilisateurs de contrôler leur identité numérique avec des comptes Ethereum et des profils ENS au lieu de s'appuyer sur des services tiers._ -- **[Ethereum Attestation Service (EAS)](https://attest.sh/)** - _Un registre/protocole décentralisé pour faire des attestations en chaîne ou hors chaîne sur quoi que ce soit._ -- **[Preuve d'humanité](https://www.proofofhumanity.id)** - _Preuve d'humanité (ou PoH) est un système de vérification d'identité sociale construit sur Ethereum._ -- **[BrightID](https://www.brightid.org/)** - _Un réseau d'identité sociale décentralisé et open-source qui cherche à réformer la vérification d'identité par la création et l'analyse d'un graphe social._ -- **[walt.id](https://walt.id)** — _Infrastructure décentralisée et open source d'identité et de portefeuille qui permet aux développeurs et aux organisations de tirer parti de l'identité souveraine et des NFT/SBT._ -- **[Veramo](https://veramo.io/)** - _Un environnement JavaScript qui permet à chacun d'utiliser facilement des données vérifiables cryptographiquement dans ses applications._ +- **[Ethereum Name Service (ENS)](https://ens.domains/)** – _Un système de nommage décentralisé pour les identifiants en chaîne lisibles par machine, comme les adresses de portefeuille Ethereum, les hachages de contenu et les métadonnées._ +- **[Se connecter avec Ethereum (SIWE)](https://siwe.xyz/)** – _Norme ouverte pour l'authentification avec les comptes Ethereum._ +- **[SpruceID](https://www.spruceid.com/)** – _Un projet d'identité décentralisée qui permet aux utilisateurs de contrôler leur identité numérique avec des comptes Ethereum et des profils ENS au lieu de dépendre de services tiers._ +- **[Ethereum Attestation Service (EAS)](https://attest.org/)** – _Un registre/protocole décentralisé pour faire des attestations en chaîne ou hors chaîne sur n'importe quel sujet._ +- **[Proof of Humanity](https://www.proofofhumanity.id)** – _Proof of Humanity (ou PoH) est un système de vérification d'identité sociale construit sur Ethereum._ +- **[BrightID](https://www.brightid.org/)** – _Un réseau d'identité sociale décentralisé et open source qui cherche à réformer la vérification d'identité par la création et l'analyse d'un graphe social._ +- **[walt.id](https://walt.id)** — _Infrastructure d'identité et de portefeuille décentralisée et open source qui permet aux développeurs et aux organisations d'exploiter l'identité auto-souveraine et les NFT/SBT._ +- **[Veramo](https://veramo.io/)** – _Un framework JavaScript qui permet à quiconque d'utiliser facilement des données vérifiables par cryptographie dans ses applications._ -## Complément d'information {#further-reading} +## En savoir plus {#further-reading} ### Articles {#articles} -- [Cas d'utilisation de la Blockchain : Blockchain en identité numérique](https://consensys.net/blockchain-use-cases/digital-identity/) — _ConsensusSys_ -- [Qu'est-ce qu'Ethereum ERC725 ? Gestion des identités autonomes sur la Blockchain](https://cryptoslate.com/what-is-erc725-self-sovereign-identity-management-on-the-blockchain/) — _Sam Town_ -- [Comment la Blockchain pourrait-elle résoudre le problème de l'identité numérique](https://time.com/6142810/proof-of-humanity/) — _Andrew R. Chow_ -- [Qu'est-ce que l'identité décentralisée et pourquoi devriez-vous vous en préocupper ?](https://web3.hashnode.com/what-is-decentralized-identity) — _Emmanuel Awosika_ -- [Introduction à l'Identité Décentralisée](https://walt.id/white-paper/digital-identity)— _Dominik Beron_ +- [Blockchain Use Cases: Blockchain in Digital Identity](https://consensys.net/blockchain-use-cases/digital-identity/) — _ConsenSys_ +- [What is Ethereum ERC725? Self-Sovereign Identity Management on the Blockchain](https://cryptoslate.com/what-is-erc725-self-sovereign-identity-management-on-the-blockchain/) — _Sam Town_ +- [How Blockchain Could Solve the Problem of Digital Identity](https://time.com/6142810/proof-of-humanity/) — _Andrew R. Chow_ +- [What Is Decentralized Identity And Why Should You Care?](https://web3.hashnode.com/what-is-decentralized-identity) — _Emmanuel Awosika_ +- [Introduction to Decentralized Identity](https://walt.id/white-paper/digital-identity) — _Dominik Beron_ ### Vidéos {#videos} -- [Identité décentralisée (Bonus Session Livestream)](https://www.youtube.com/watch?v=ySHNB1za_SE&t=539s) — _Une formidable vidéo explicative sur l'identité décentralisée par Andreas Antonopolous_ -- [Connexion avec Ethereum et Decentralized Identity avec Ceramic, IDX, React, et 3ID Connect](https://www.youtube.com/watch?v=t9gWZYJxk7c) — _tutoriel YouTube sur la création d'un système de gestion d'identité pour créer, lire et mettre à jour un profil d'utilisateur en utilisant son portefeuille Ethereum par Nader Dabit_ -- [BrightID - Identité décentralisée sur Ethereum](https://www.youtube.com/watch?v=D3DbMFYGRoM) — _Épisode de podcast non bancaire parlant de BrightID, une solution d'identité décentralisée pour Ethereum_ -- [The Off Chain Internet : Identités décentralisées & Références vérifiables](https://www.youtube.com/watch?v=EZ_Bb6j87mg) — Présentation EthDenver 2022 par Evin McMullen -- [Explication des Justificatifs Vérifiables](https://www.youtube.com/watch?v=ce1IdSr-Kig) - Vidéo explicative sur YouTube avec démonstration par Tamino Baumann +- [Decentralized Identity (Bonus Livestream Session)](https://www.youtube.com/watch?v=ySHNB1za_SE&t=539s) — _Une excellente vidéo explicative sur l'identité décentralisée par Andreas Antonopolous_ +- [Sign In with Ethereum and Decentralized Identity with Ceramic, IDX, React, and 3ID Connect](https://www.youtube.com/watch?v=t9gWZYJxk7c) — _Tutoriel YouTube sur la création d'un système de gestion d'identité pour créer, lire et mettre à jour le profil d'un utilisateur à l'aide de son portefeuille Ethereum par Nader Dabit_ +- [BrightID - Decentralized Identity on Ethereum](https://www.youtube.com/watch?v=D3DbMFYGRoM) — _Épisode du podcast Bankless discutant de BrightID, une solution d'identité décentralisée pour Ethereum_ +- [The Offchain Internet: Decentralized Identity & Verifiable Credentials](https://www.youtube.com/watch?v=EZ_Bb6j87mg) — Présentation à EthDenver 2022 par Evin McMullen +- [Verifiable Credentials Explained](https://www.youtube.com/watch?v=ce1IdSr-Kig) - Vidéo explicative YouTube avec une démonstration par Tamino Baumann ### Communautés {#communities} -- [ERC-725 Alliance sur GitHub](https://github.com/erc725alliance) — _Supporters de la norme ERC725 pour la gestion d'identité sur la blockchain Ethereum_ -- [Serveur Discord EthID](https://discord.com/invite/ZUyG3mSXFD) — _Communauté pour les adeptes et les développeurs travaillant sur la connexion avec Ethereum_ -- [Veramo Labs](https://discord.gg/sYBUXpACh4) — _Une communauté de développeurs contribuant à la construction d'un framework de données vérifiables pour les applications_ -- [walt.id](https://discord.com/invite/AW8AgqJthZ) — _Une communauté de développeurs et constructeurs travaillant sur des cas d'utilisation d'identité décentralisée dans diverses industries._ +- [ERC-725 Alliance on GitHub](https://github.com/erc725alliance) — _Partisans de la norme ERC725 pour la gestion de l'identité sur la blockchain Ethereum_ +- [Serveur Discord EthID](https://discord.com/invite/ZUyG3mSXFD) — _Communauté pour les passionnés et les développeurs travaillant sur Se connecter avec Ethereum, et le protocole de suivi Ethereum_ +- [Veramo Labs](https://discord.gg/sYBUXpACh4) — _Une communauté de développeurs qui contribuent à la création d'un framework pour les données vérifiables pour les applications_ +- [walt.id](https://discord.com/invite/AW8AgqJthZ) — _Une communauté de développeurs et de créateurs travaillant sur des cas d'utilisation de l'identité décentralisée dans divers secteurs_ diff --git a/public/content/translations/fr/defi/index.md b/public/content/translations/fr/defi/index.md index 829b566a078..b6bd9253577 100644 --- a/public/content/translations/fr/defi/index.md +++ b/public/content/translations/fr/defi/index.md @@ -1,16 +1,16 @@ --- -title: Finance Décentralisée (DeFi) -metaTitle: Qu'est-ce que DeFi ? | Avantages et utilisation de la finance décentralisée -description: Un aperçu de la DeFi sur Ethereum +title: "Finance Décentralisée (DeFi)" +metaTitle: "Qu'est-ce que DeFi ? | Avantages et utilisation de la finance décentralisée" +description: "Un aperçu de la DeFi sur Ethereum" lang: fr template: use-cases emoji: ":money_with_wings:" image: /images/use-cases/defi.png alt: Un logo Eth fait en briques lego. sidebarDepth: 2 -summaryPoint1: Une alternative mondiale ouverte au système financier actuel. -summaryPoint2: Des produits qui vous permettent d'emprunter, d'épargner, d'investir, d'échanger et plus encore. -summaryPoint3: Basé sur une technologie open-source avec laquelle n'importe qui peut programmer. +summaryPoint1: "Une alternative mondiale ouverte au système financier actuel." +summaryPoint2: "Des produits qui vous permettent d'emprunter, d'épargner, d'investir, d'échanger et plus encore." +summaryPoint3: "Basé sur une technologie open-source avec laquelle n'importe qui peut programmer." --- La DeFi est un système financier ouvert et mondial conçu pour l'ère de l'internet - une alternative à un système opaque, contrôlé rigoureusement et maintenu par des infrastructures et des processus vieux de plusieurs décennies. Il vous donne le contrôle et la visibilité de votre argent. Il vous offre une exposition aux marchés mondiaux et des alternatives à vos options bancaires ou monétaires locales. Les produits DeFi ouvrent des services financiers à toute personne disposant d'une connexion Internet et ils sont en grande partie la propriété de leurs utilisateurs. Jusqu'à présent, des dizaines de milliards de dollars de cryptomonnaies ont coulé à travers des applications DeFi et ils se développent chaque jour. @@ -32,44 +32,44 @@ L'une des meilleures façons de voir le potentiel de la DeFi est de comprendre l - Les services financiers peuvent vous empêcher d'être payé. - Des frais cachés de services financiers sont vos données personnelles. - Les gouvernements et les institutions centralisées peuvent fermer les marchés à volonté. -- Les heures de trading sont souvent limitées aux heures de bureau sur un fuseau horaire spécifique. +- Les heures de trading sont souvent limitées aux heures de bureau d'un fuseau horaire spécifique. - Les transferts d'argent peuvent prendre des jours en raison de processus humains internes. - Il y a une prime pour les services financiers parce que les institutions intermédiaires ont besoin de leur part. ### Une comparaison {#defi-comparison} -| DeFi | La finance traditionnelle | -| -------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Vous détenez votre argent. | Votre argent est détenu par des entreprises. | -| Vous contrôlez où va votre argent et comment il est dépensé. | Vous devez faire confiance à des entreprises pour ne pas mal gérer votre argent, comme prêter à des emprunteurs risqués. | -| Les transferts de fonds se font en quelques minutes. | Les paiements peuvent prendre des jours en raison de processus manuels. | -| L'activité de la transaction est anonyme | L'activité financière est étroitement associée à votre identité. | -| La DeFi est ouverte à tout le monde. | Vous devez faire une demande pour utiliser les services financiers. | -| Les marchés sont toujours ouverts. | Les marchés ferment parce que les employés ont besoin de pauses. | +| DeFi | La finance traditionnelle | +| ------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Vous détenez votre argent. | Votre argent est détenu par des entreprises. | +| Vous contrôlez où va votre argent et comment il est dépensé. | Vous devez faire confiance à des entreprises pour ne pas mal gérer votre argent, comme prêter à des emprunteurs risqués. | +| Les transferts de fonds se font en quelques minutes. | Les paiements peuvent prendre des jours en raison de processus manuels. | +| L'activité de la transaction est anonyme | L'activité financière est étroitement associée à votre identité. | +| La DeFi est ouverte à tout le monde. | Vous devez faire une demande pour utiliser les services financiers. | +| Les marchés sont toujours ouverts. | Les marchés ferment parce que les employés ont besoin de pauses. | | Il est construit sur la transparence – tout le monde peut regarder les données d'un produit et inspecter le fonctionnement du système. | Les institutions financières sont des livres fermés : vous ne pouvez pas demander à voir leurs antécédents de prêts, un dossier de leurs actifs gérés, etc. | - Explorer la DeFi + Explorer les applications DeFi ## Et si on commençait avec Bitcoin... {#bitcoin} Bitcoin à bien des égards a été la première application de la DeFi. Bitcoin vous permet de posséder et de contrôler la valeur et de l'envoyer partout dans le monde. Il le fait en fournissant un moyen à un grand nombre de personnes, qui ne se font pas confiance les unes aux autres, de se mettre d'accord sur un grand livre de comptes sans avoir besoin d'un intermédiaire de confiance. Le Bitcoin est ouvert à tout le monde et personne n'a l'autorité nécessaire pour modifier ses règles. Les règles du Bitcoin, comme sa rareté et son ouverture, sont inscrites dans la technologie. Ce n'est pas comme la finance traditionnelle où les gouvernements peuvent imprimer de l'argent qui déprécie vos épargnes et où les entreprises peuvent fermer les marchés. -L'Ethereum s'appuie sur cela. Comme le Bitcoin, les règles ne peuvent pas changer et tout le monde y a accès. Mais cela rend aussi cet argent numérique programmable, en utilisant des [contrats intelligents](/glossary/#smart-contract), vous pouvez donc aller au-delà du stockage et de la valeur d'envoi. +L'Ethereum s'appuie sur cela. Comme le Bitcoin, les règles ne peuvent pas changer et tout le monde y a accès. Mais cela rend également cette monnaie numérique programmable à l'aide de [contrats intelligents](/glossary/#smart-contract), ce qui permet d'aller au-delà du simple stockage et envoi de valeur. ## Monnaie programmable {#programmable-money} -Cela semble étrange... « pourquoi je voudrais programmer mon argent » ? Cependant, il s'agit plutôt d'une fonctionnalité par défaut des jetons sur Ethereum. N'importe qui peut programmer une logique de paiement. Ainsi, vous pouvez obtenir le contrôle et la sécurité de Bitcoin mélangés avec les services fournis par les institutions financières. Cela vous permet de faire des choses avec des cryptomonnaies que vous ne pouvez pas faire avec des Bitcoins comme des prêts et des emprunts, des paiements, des investissements dans des fonds d'indice et plus encore. +Cela semble étrange... « pourquoi voudrais-je programmer mon argent » ? Cependant, il s'agit plutôt d'une fonctionnalité par défaut des jetons sur Ethereum. N'importe qui peut programmer une logique de paiement. Ainsi, vous pouvez obtenir le contrôle et la sécurité de Bitcoin mélangés avec les services fournis par les institutions financières. Cela vous permet de faire des choses avec des cryptomonnaies que vous ne pouvez pas faire avec des Bitcoins comme des prêts et des emprunts, des paiements, des investissements dans des fonds d'indice et plus encore. - +
Explorez nos suggestions pour les applications de la DeFi pour essayer si vous êtes nouveau sur Ethereum.
- Explorer la DeFi + Explorer les applications DeFi
@@ -78,37 +78,37 @@ Cela semble étrange... « pourquoi je voudrais programmer mon argent » ? Cepen Il existe une alternative décentralisée à la plupart des services financiers. Mais Ethereum crée également des opportunités de création de produits financiers totalement nouveaux. Cette liste ne cesse de croître. -- [Envoyer de l'argent partout dans le monde](#send-money) -- [Diffuser de l'argent dans le monde entier](#stream-money) -- [Accéder aux devises stables](#stablecoins) +- [Envoyer de l'argent dans le monde entier](#send-money) +- [Transférer de l'argent en continu dans le monde entier](#stream-money) +- [Accéder à des monnaies stables](#stablecoins) - [Emprunter des fonds avec garantie](#lending) - [Emprunter sans garantie](#flash-loans) -- [Démarrer des économies de cryptomonnaies](#saving) +- [Commencer à épargner en cryptomonnaies](#saving) - [Échanger des jetons](#swaps) -- [Développer votre portefeuille](#investing) +- [Faire fructifier votre portefeuille](#investing) - [Financer vos idées](#crowdfunding) -- [Acheter une assurance](#insurance) +- [Souscrire une assurance](#insurance) - [Gérer votre portefeuille](#aggregators) -### Envoyer de l'argent partout dans le monde rapidement {#send-money} +### Envoyer de l'argent rapidement dans le monde entier {#send-money} -En tant que blockchain, Ethereum est conçu pour envoyer des transactions de manière sécurisée et globale. Tout comme Bitcoin, Ethereum vous permet d'envoyer de l'argent dans le monde entier aussi facilement qu'un un email. Entrez simplement le nom [ENS de votre destinataire](/glossary/#ens) (comme bob. th) ou l'adresse de leur compte à partir de votre portefeuille et votre paiement leur ira directement, en quelques minutes (habituellement). Pour envoyer ou recevoir des paiements, vous aurez besoin d'un [portefeuille](/wallets/). +En tant que blockchain, Ethereum est conçu pour envoyer des transactions de manière sécurisée et globale. Tout comme Bitcoin, Ethereum vous permet d'envoyer de l'argent dans le monde entier aussi facilement qu'un un email. Saisissez simplement le [nom ENS](/glossary/#ens) de votre destinataire (comme bob.eth) ou l'adresse de son compte depuis votre portefeuille et votre paiement lui parviendra directement en quelques minutes (généralement). Pour envoyer ou recevoir des paiements, vous aurez besoin d'un [portefeuille](/wallets/). - Voir les applications de paiement + Voir les dapps de paiement #### Diffuser de l'argent partout dans le monde... {#stream-money} Vous pouvez également diffuser de l'argent sur Ethereum. Cela vous permet de payer à quelqu'un son salaire en une seconde, lui donnant accès, ainsi, à son argent chaque fois qu'il en a besoin. Ou louer quelque chose presque instantanément comme un casier de stockage ou scooter électrique par exemple. -Et si vous ne voulez pas envoyer ou diffuser des [ETH](/glossary/#ether) en raison de sa volatilité, il existe des devises alternatives sur Ethereum : les [stablecoins](/glossary/#stablecoin). +Et si vous ne voulez pas envoyer ou streamer de l'[ETH](/glossary/#ether) en raison des fluctuations de sa valeur, il existe des monnaies alternatives sur Ethereum : les [stablecoins](/glossary/#stablecoin). -### Accéder aux monnaies stables {#stablecoins} +### Accéder à des monnaies stables {#stablecoins} La volatilité des cryptomonnaies est un problème pour de nombreux produits financiers et les dépenses en générales. La communauté de la DeFi a résolu cela avec des stablecoins. Leur valeur reste indexée sur un autre actif, généralement une devise populaire comme le dollar par exemple. @@ -120,7 +120,7 @@ Les pièces comme Dai ou USDC ont une valeur qui reste stable à quelques centim -### Emprunter {#lending} +### Emprunt {#lending} L'emprunt de l'argent auprès de prestataires décentralisés se compose de deux variétés principales. @@ -128,28 +128,28 @@ L'emprunt de l'argent auprès de prestataires décentralisés se compose de deux - Basé sur une pool où les prêteurs fournissent des fonds (liquidités) à une réserve dans laquelle les emprunteurs peuvent emprunter. - Voir les dapp d'emprunt + Voir les dapps d'emprunt Il y a de nombreux avantages à utiliser un prêteur décentralisé... -#### Emprunter avec confidentialité {#borrowing-privacy} +#### Emprunter en toute confidentialité {#borrowing-privacy} Aujourd'hui, le prêt et l'emprunt d'argent tournent autour des personnes impliquées. Les banques doivent savoir si vous êtes susceptible de rembourser un prêt avant de le prêter. -Les prêts décentralisés fonctionnent sans que l’une ou l’autre des parties n’ait à s’identifier. Au lieu de cela, l'emprunteur doit placer une garantie que le prêteur recevra automatiquement si leur prêt n'est pas remboursé. Certains prêteurs acceptent même les [NFT](/glossary/#nft) comme garanties. Les NFT sont un acte de propriété unique, comme une peinture par exemple. [Plus de détails sur les NFT](/nft/) +Les prêts décentralisés fonctionnent sans que l’une ou l’autre des parties n’ait à s’identifier. Au lieu de cela, l'emprunteur doit placer une garantie que le prêteur recevra automatiquement si leur prêt n'est pas remboursé. Certains prêteurs acceptent même les [NFT](/glossary/#nft) comme garantie. Les NFT sont un acte de propriété unique, comme une peinture par exemple. [En savoir plus sur les NFT](/nft/) Cela vous permet d'emprunter de l'argent sans chèques d'acompte et sans remise d'informations privées. #### Accès aux fonds mondiaux {#access-global-funds} -Lorsque vous utilisez un prêteur décentralisé, vous avez accès aux fonds déposés du monde entier, pas seulement les fonds détenus par la banque ou l'institution que vous avez choisie. Cela rend les prêts plus accessibles et améliore les taux d'intérêt. +Lorsque vous utilisez un prêteur décentralisé, vous avez accès aux fonds déposés du monde entier, pas seulement les fonds détenus par la banque ou l'institution que vous avez choisie. Cela rend les prêts plus accessibles et améliore les taux d’intérêt. -#### Efficacité fiscale {#tax-efficiencies} +#### Optimisations fiscales {#tax-efficiencies} -L’emprunt peut vous donner accès aux fonds dont vous avez besoin sans devoir vendre votre ETH (un événement imposable). Au lieu de cela, vous pouvez utiliser ETH comme garantie pour un prêt stablecoin. Cela vous donne le flux de trésorerie dont vous avez besoin et vous permet de garder votre ETH. Les Stablecoins sont des jetons qui sont beaucoup plus intéressant quand vous avez besoin d'argent car ils ne fluctuent pas en valeur comme ETH. [Plus d'infos sur les stablecoins](#stablecoins) +L’emprunt peut vous donner accès aux fonds dont vous avez besoin sans devoir vendre votre ETH (un événement imposable). Au lieu de cela, vous pouvez utiliser ETH comme garantie pour un prêt stablecoin. Cela vous donne le flux de trésorerie dont vous avez besoin et vous permet de garder votre ETH. Les Stablecoins sont des jetons qui sont beaucoup plus intéressant quand vous avez besoin d'argent car ils ne fluctuent pas en valeur comme ETH. [En savoir plus sur les stablecoins](#stablecoins) -#### Prêts Flash {#flash-loans} +#### Prêts instantanés {#flash-loans} Les prêts Flash sont une forme plus expérimentale de prêt décentralisé qui vous permet d'emprunter sans garantie ou sans fournir de renseignements personnels. @@ -173,12 +173,12 @@ Si l'échange B chutait soudainement et que l'utilisateur n'était pas en mesure Pour pouvoir faire ce qui précède dans le monde de la finance traditionnelle, vous auriez besoin d'une somme d'argent énorme. Ces stratégies pour gagner de l'argent ne sont accessibles qu'à ceux qui possèdent déjà une certaine richesse. Les prêts Flash sont un exemple d'avenir où avoir de l'argent n'est pas nécessairement une condition préalable pour gagner de l'argent. - Plus d'infos sur les prêts Flash + En savoir plus sur les prêts instantanés -### Commencez à épargner avec des cryptomonnaies {#saving} +### Commencer à épargner en cryptomonnaies {#saving} #### Prêt {#lending} @@ -186,14 +186,14 @@ Vous pouvez gagner de l'intérêt sur votre cryptomonnaie en le prêtant et en v - Vous prêtez vos 100 Dai, un [stablecoin](/stablecoins/), à un produit comme Aave. - Vous recevez 100 Aave Dai (aDai), ce qui représente votre Dai prêté. -- Votre aDai augmentera en fonction des taux d'intérêt et vous pourrez ainsi voir votre solde croître dans votre portefeuille. Dépendant de [l'APR](/glossary/#apr), le solde de votre portefeuille va afficher quelque chose comme 100,1234 après quelques jours ou même quelques heures ! +- Votre aDai augmentera en fonction des taux d'intérêt et vous pourrez ainsi voir votre solde croître dans votre portefeuille. En fonction de l'[APR](/glossary/#apr), le solde de votre portefeuille affichera quelque chose comme 100,1234 après quelques jours ou même quelques heures ! - Vous pouvez retirer un montant de Dai égal à votre solde aDai à tout moment. - Voir les dApps de prêt + Voir les dapps de prêt -#### Loteries sans risque {#no-loss-lotteries} +#### Loteries sans perte {#no-loss-lotteries} Les Loteries sans risque comme PoolTogether sont un moyen amusant et innovant d'épargner de l'argent. @@ -218,36 +218,36 @@ Il existe des milliers de jetons sur Ethereum. Les échanges décentralisés (DE Par exemple, si vous voulez vous lancer dans une loterie sans risque (décrite au dessus), vous aurez besoin de jeton comme les Dai ou USDC. Les DEXs vous permettent d'échanger vos ETH avec des tokens, et de les reconvertir en ETH lorsque vous avez terminé. - Voir échanger des jetons + Voir les plateformes d'échange de jetons -### Échanges avancés {#trading} +### Trading avancé {#trading} Pour les traders qui aiment le contrôle, il existe des options avancées. Les ordres à cours limités, échanges perpétuels, le trading sur marge sont tous possibles. Avec le trading décentralisé, vous avez accès à des liquidités dans le monde entier, le marché est toujours ouvert et vous gardez à tout moment le contrôle sur vos actifs. Avec le trading centralisé, vous devez déposer vos actifs avant les échanges et faire confiance à un tier pour en prendre soin. Lorsqu'ils sont déposés, vos actifs courent un risque par ce que les centres d'échange sont des cibles très attractives pour les hackers. - Voir Applications décentralisées (dapps) + Voir les dapps de trading -### Développer votre Portefeuille {#investing} +### Faire fructifier votre portefeuille {#investing} Il existe des outils de gestion de fonds sur Ethereum qui vous permettront de développer votre portefeuille en vous appuyant sur la stratégie de votre choix. C'est automatique, ouvert à tous, et personne ne pourra vous demander de commission. -Voilà un bon exemple [DeFi Pulse Index fund (DPI)](https://defipulse.com/blog/defi-pulse-index/). C'est un fonds qui se rééquilibre automatiquement pour garantir qu'il inclue toujours les jetons DeFi ayant la meilleure capitalisation boursière. Pas besoin de gérer les détails et vous pouvez retirer les fonds quand bon vous semble. +Un bon exemple est le [fonds indiciel DeFi Pulse (DPI)](https://defipulse.com/blog/defi-pulse-index/). C'est un fonds qui se rééquilibre automatiquement pour garantir qu'il inclue toujours les jetons DeFi ayant la meilleure capitalisation boursière. Pas besoin de gérer les détails et vous pouvez retirer les fonds quand bon vous semble. - Voir les applications d'investissement dapps + Voir les dapps d'investissement -### Financer vos projets {#crowdfunding} +### Financer vos idées {#crowdfunding} Ethereum est une plateforme idéale pour le crowdfunding: @@ -256,12 +256,12 @@ Ethereum est une plateforme idéale pour le crowdfunding: - Les collecteurs de fonds peuvent mettre en place des remboursements automatiques. Par exemple si un montant minimum n'est pas atteint à la deadline du projet. - Voir les dapps de crowdfunding + Voir les dapps de financement participatif -#### Financements quadratiques {#quadratic-funding} +#### Financement quadratique {#quadratic-funding} -Ethereum est un logiciel open source, une grand partie du travail à été financée par la communauté. Cela a conduit à la croissance d'un nouveau modèle de collecte de fond : le financement quadratique. Ce modèle a le potentiel d'améliorer la façon dont nous finançons tous les types de biens publics à l'avenir. +Ethereum est un logiciel open source, une grand partie du travail à été financée par la communauté. Cela a conduit à la croissance d'un nouveau modèle de collecte de fond : le financement quadratique. Ce modèle a le potentiel d'améliorer la façon dont nous finançons tous les types de bien publics à l'avenir. Le financement quadratique veille à ce que les projets qui reçoivent le plus de financement soient ceux dont la demande est la plus unique. En d'autres termes, des projets qui visent à améliorer la vie du plus grand nombre de personnes. Voici comment ça marche : @@ -282,10 +282,10 @@ Cela veut dire qu'un projet A avec ses 100 donneurs de 1 dollar pourrait finir a L'assurance décentralisée vise à rendre l'assurance moins chère, plus rapide à rembourser et plus transparente. Avec davantage d'automatisation, la protection est plus abordable et les paiements sont beaucoup plus rapides. Les données utilisées pour décider de votre réclamation sont complètement transparentes. -Les produits Ethereum, comme n'importe quel logiciel, peuvent souffrir de bugs et d'exploits. Actuellement, de nombreux produits d'assurance dans l'espace sont axés sur la protection de leurs utilisateurs contre la perte de fonds. Cependant, il y a des projets qui commencent à construire une couverture pour tous les événements de la vie. Un bon exemple de ceci est la couverture Etherisc's Crop qui vise à [protéger les petits agriculteurs kényans contre les sécheresses et les inondations](https://blog.etherisc.com/etherisc-teams-up-with-chainlink-to-deliver-crop-insurance-in-kenya-137e433c29dc). Les assurances décentralisées peuvent offrir une couverture moins chère aux agriculteurs qui n'ont souvent pas les moyens d'accéder aux assurances traditionnelles. +Les produits Ethereum, comme n'importe quel logiciel, peuvent souffrir de bugs et d'exploits. Actuellement, de nombreux produits d'assurance dans l'espace sont axés sur la protection de leurs utilisateurs contre la perte de fonds. Cependant, il y a des projets qui commencent à construire une couverture pour tous les événements de la vie. Un bon exemple est l'assurance récolte d'Etherisc qui vise à [protéger les petits agriculteurs du Kenya contre les sécheresses et les inondations](https://blog.etherisc.com/etherisc-teams-up-with-chainlink-to-deliver-crop-insurance-in-kenya-137e433c29dc). Les assurances décentralisées peuvent offrir une couverture moins chère aux agriculteurs qui n'ont souvent pas les moyens d'accéder aux assurances traditionnelles. - Voir les assurances Dapps + Voir les dapps d'assurance @@ -295,7 +295,7 @@ Les produits Ethereum, comme n'importe quel logiciel, peuvent souffrir de bugs e Avec tant de choses en cours, vous aurez besoin d'un moyen de suivre tous vos investissements, vos prêts et vos transactions. Il y a une foule de produits qui vous permettent de coordonner toutes vos activités de DeFi à partir d'un seul endroit. C'est la beauté de l'architecture ouverte de DeFi. Les équipes peuvent construire des interfaces où vous ne pouvez pas simplement voir vos balances entre produits mais également utiliser leurs fonctionnalités. Vous pourriez trouver cela utile en explorant plus à propos de la DeFi. - Voir les dApps de portefeuille + Voir les dapps de portefeuille @@ -312,7 +312,7 @@ Les contrats sont également publics pour toute personne voulant l'inspecter et Cela signifie qu'il est actuellement nécessaire de faire confiance aux membres les plus avancés de la communauté Ethereum qui peuvent lire du code. La communauté open-source aide à contrôler les développeurs, mais ce besoin diminuera avec le temps à mesure que les contrats intelligents deviennent plus faciles à lire et que d'autres moyens de prouver la fiabilité du code sont développés. -## Ethereum et DeFi {#ethereum-and-defi} +## Ethereum et la DeFi {#ethereum-and-defi} Ethereum est la fondation parfaite pour la DeFi pour plusieurs raisons: @@ -324,41 +324,42 @@ Ethereum est la fondation parfaite pour la DeFi pour plusieurs raisons: Vous pouvez voir la DeFi comme des couches : 1. La Blockchain, Ethereum qui trace l'historique des transactions et les états de comptes. -2. Les actifs [ETH](/what-is-ether/) et autres jetons (devises). -3. Les protocoles, [contrats intelligents](/glossary/#smart-contract) qui offrent des fonctionnalités comme les prêts d'actifs décentralisés. -4. [Les applications](/apps/) les produits que vous utilisez pour accéder et gérer les protocoles. +2. Les actifs – l'[ETH](/what-is-ether/) et les autres jetons (monnaies). +3. Les protocoles – les [contrats intelligents](/glossary/#smart-contract) qui fournissent la fonctionnalité, par exemple, un service qui permet le prêt décentralisé d'actifs. +4. [Les applications](/apps/) – les produits que nous utilisons pour gérer et accéder aux protocoles. -Note : Beaucoup de DeFi utilisent la [norme ERC-20](/glossary/#erc-20). Les applications de DeFi utilisent un "wrapper" pour l'ETH appelé Wrapped Ether (WETH). [En apprendre plus à propos de l'ether symbolique](/wrapped-eth). +Remarque : une grande partie de la DeFi utilise la [norme ERC-20](/glossary/#erc-20). Les applications de DeFi utilisent un "wrapper" pour l'ETH appelé Wrapped Ether (WETH). [En savoir plus sur l'ether encapsulé](/wrapped-eth). -## Fabriquer une DeFi {#build-defi} +## Construire sur la DeFi {#build-defi} DeFi est un mouvement open source. Les protocoles et applications DeFi sont ouverts et libres pour que vous puissiez les inspecter, fouiller et innover dessus. Grâce à cette superposition (ils partagent tous la même Blockchain et les mêmes ressources de base), les protocoles peuvent être mélangés et assemblés pour créer des combos d'opportunités uniques. - En savoir plus sur la fabrication de dapps + En savoir plus sur la création de dapps -## Complément d'information {#further-reading} +## En savoir plus {#further-reading} ### Données DeFi {#defi-data} - [DeFi Prime](https://defiprime.com/) - [DeFi Llama](https://defillama.com/) -### Articles DeFi {#defi-articles} +### Articles sur la DeFi {#defi-articles} -- [Un guide de la DeFi pour débutants](https://blog.coinbase.com/a-beginners-guide-to-decentralized-finance-defi-574c68ff43c4) - _Sid Coelho-Prabhu, 6 janvier 2020_ +- [Un guide du débutant sur la DeFi](https://blog.coinbase.com/a-beginners-guide-to-decentralized-finance-defi-574c68ff43c4) – _Sid Coelho-Prabhu, 6 janvier 2020_ +- [Directives d'évaluation des risques de la DeFi de l'EEA](https://entethalliance.org/specs/defi-risks/) – Un aperçu soutenu par l'industrie sur la manière d'identifier et d'évaluer les risques clés dans les protocoles DeFi. ### Vidéos {#videos} -- [Finematics - decentralized finance education](https://finematics.com/) _vidéos de DeFi_ -- [The Defiant](https://www.youtube.com/playlist?list=PLaDcID4s1KronHMKojfjwiHL0DdQEPDcq) - _Les bases de la DeFi : Tout ce que vous avez besoin de savoir pour commencer dans cet espace parfois déroutant_ -- [Whiteboard Crypto](https://youtu.be/17QRFlml4pA) _Qu'est-ce que DeFi?_ +- [Finematics - éducation sur la finance décentralisée](https://finematics.com/) – _Vidéos sur la DeFi_ +- [The Defiant](https://www.youtube.com/playlist?list=PLaDcID4s1KronHMKojfjwiHL0DdQEPDcq) - _Les bases de la DeFi : tout ce que vous devez savoir pour commencer dans cet espace parfois déroutant._ +- [Whiteboard Crypto](https://youtu.be/17QRFlml4pA) _Qu'est-ce que la DeFi ?_ ### Communautés {#communities} -- [Serveur Discord DeFi Llama](https://discord.defillama.com/) -- [Serveur Discord DeFi Pulse](https://discord.gg/Gx4TCTk) +- [Serveur Discord de DeFi Llama](https://discord.defillama.com/) +- [Serveur Discord de DeFi Pulse](https://discord.gg/Gx4TCTk) diff --git a/public/content/translations/fr/desci/index.md b/public/content/translations/fr/desci/index.md index 8802031f21b..54f28f4d354 100644 --- a/public/content/translations/fr/desci/index.md +++ b/public/content/translations/fr/desci/index.md @@ -1,57 +1,57 @@ --- -title: La science décentralisée (DeSci) -description: Présentation de la science décentralisée sur Ethereum +title: "La science décentralisée (DeSci)" +description: "Présentation de la science décentralisée sur Ethereum" lang: fr template: use-cases emoji: ":microscope:" sidebarDepth: 2 image: /images/future_transparent.png alt: "" -summaryPoint1: Une alternative globale et ouverte au système scientifique actuel. -summaryPoint2: Technologie qui permet aux scientifiques de recueillir des fonds, de mener des expériences, de partager des données, de diffuser des informations et plus encore. -summaryPoint3: S'appuie sur le mouvement science en libre accès. +summaryPoint1: "Une alternative globale et ouverte au système scientifique actuel. " +summaryPoint2: "Technologie qui permet aux scientifiques de recueillir des fonds, de mener des expériences, de partager des données, de diffuser des informations et plus encore." +summaryPoint3: "S'appuie sur le mouvement science en libre accès." --- ## Qu'est-ce que la science décentralisée (DeSci) ? {#what-is-desci} -La science décentralisée (DeSci) est un mouvement qui vise à construire une infrastructure publique en vue du financement, de la création, de l'examen, de l'attribution de crédits, du stockage et de la diffusion des connaissances scientifiques de manière juste et équitable en utilisant la pile [Web3](/glossary/#web3). +La science décentralisée (DeSci) est un mouvement qui vise à construire une infrastructure publique pour le financement, la création, l'examen, la crédibilisation, le stockage et la diffusion des connaissances scientifiques de manière juste et équitable en utilisant la pile [Web3](/glossary/#web3). La DeSci vise à créer un écosystème dans lequel les scientifiques sont incités à partager ouvertement leurs recherches et à être salués pour leurs travaux, tout en permettant à quiconque d'accéder et de contribuer facilement aux recherches. La DeSci part du principe que les connaissances scientifiques doivent être accessibles à tous et que le processus de recherche scientifique doit être transparent. La DeSci crée un modèle de recherche scientifique plus décentralisé et distribué, qui la rend plus résistante à la censure et au contrôle par les autorités centrales. La DeSci vise à créer un environnement où les idées nouvelles et non conventionnelles peuvent prospérer en décentralisant l’accès au financement, aux outils scientifiques et aux canaux de communication. -La science décentralisée permet d'accéder à des sources de financement plus variées (des [DAO](/glossary/#dao), [dons quadratiques](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2003531) aux financements participatifs et plus encore), des données et méthodes d'accès plus accessibles, et incite à la reproductibilité. +La science décentralisée permet des sources de financement plus diverses (des [DAO](/glossary/#dao) et des [dons quadratiques](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2003531) au financement participatif, et plus encore), des données et des méthodes plus accessibles, et incite à la reproductibilité. ### Juan Benet - Le Mouvement DeSci -## En quoi la DeSci fait avancer la science {#desci-improves-science} +## Comment la DeSci améliore la science {#desci-improves-science} Liste non exhaustive des principaux problèmes rencontrés par la science et comment la science décentralisée peut aider à les résoudre -| **La science décentralisée** | **La science traditionnelle** | -| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | -| La répartition des fonds est **déterminée par le public** à l’aide de mécanismes tels que les dons quadratiques ou les DAO. | De petits **groupes centralisés** et fermés contrôlent la distribution des fonds. | -| Vous collaborez avec des pairs du **monde entier** dans des équipes dynamiques. | Les organismes de financement et les établissements d’origine **limitent** vos collaborations. | -| Les décisions de financement sont prises en ligne et en toute **transparence**. De nouveaux mécanismes de financement sont explorés. | Les décisions de financement sont longues à prendre et la **transparence en la matière limitée**. Il existe peu de mécanismes de financement. | -| Partager des services de laboratoire devient plus facile et plus transparent en utilisant les technologies du [Web3](/glossary/#web3). | Le partage des ressources des laboratoires est souvent **lent et opaque**. | -| **De nouveaux modèles de publication** peuvent être développés en utilisant les primitives Web3 pour garantir confiance, transparence et accès universel. | Vous publiez par le biais de voies établies souvent considérées comme **inefficaces, partiales et basées sur l'exploitation**. | -| Vous pouvez **gagner des jetons et consolider votre réputation en faisant un travail d'évaluation par les pairs**. | Votre **travail d'évaluation par les pairs n'est pas rémunéré**, ce qui profite aux éditeurs à but lucratif. | -| **Vous êtes détenteur de la propriété intellectuelle (PI)** que vous créez et diffusez ces créations dans le respect de conditions transparentes. | **Votre institution d'origine est propriétaire de la PI** que vous générez. L'accès à la PI n'est pas transparent. | -| **Partagez toutes les recherches**, y compris les données issues de recherches infructueuses, en basculant toutes les étapes sur la chaîne. | Le **biais de publication** veut que les chercheurs soient plus susceptibles de partager des expériences qui ont donné des résultats positifs. | +| **La science décentralisée** | **La science traditionnelle** | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| La distribution des fonds est **déterminée par le public** à l'aide de mécanismes tels que les dons quadratiques ou les DAO. | De petits groupes, fermés et **centralisés**, contrôlent la distribution des fonds. | +| Vous collaborez avec des pairs du **monde entier** au sein d'équipes dynamiques. | Les organismes de financement et les établissements d'origine **limitent** vos collaborations. | +| Les décisions de financement sont prises en ligne et **en toute transparence**. De nouveaux mécanismes de financement sont explorés. | Les décisions de financement sont prises avec un long délai d'exécution et une **transparence limitée**. Il existe peu de mécanismes de financement. | +| Le partage des services de laboratoire est facilité et plus transparent grâce à la technologie [Web3](/glossary/#web3). | Le partage des ressources de laboratoire est souvent **lent et opaque**. | +| **De nouveaux modèles de publication** peuvent être développés en utilisant les primitives Web3 pour garantir confiance, transparence et accès universel. | Vous publiez par des voies établies, fréquemment reconnues comme **inefficaces, partiales et abusives**. | +| Vous pouvez **gagner des jetons et de la réputation en évaluant le travail de vos pairs**. | Votre **travail d'évaluation par les pairs n'est pas rémunéré**, ce qui profite aux éditeurs à but lucratif. | +| **Vous êtes propriétaire de la propriété intellectuelle (PI)** que vous générez et la distribuez selon des conditions transparentes. | **Votre établissement d'origine est propriétaire de la PI** que vous générez. L'accès à la PI n'est pas transparent. | +| **Partage de toutes les recherches**, y compris les données des tentatives infructueuses, en plaçant toutes les étapes sur la chaîne. | **Le biais de publication** signifie que les chercheurs sont plus susceptibles de partager des expériences qui ont eu des résultats positifs. | -## Ethereum et la DeSci {#ethereum-and-desci} +## Ethereum et DeSci {#ethereum-and-desci} Pour développer des applications, un système scientifique décentralisé exigera une sécurité renforcée, des coûts monétaires et de transaction minimaux et un écosystème riche. Ethereum fournit tout ce qui est nécessaire à la création d'une technologie scientifique décentralisée. -## Exemples d'utilisation de la DeSci {#use-cases} +## Cas d'usage de la DeSci {#use-cases} La DeSci met en place les outils scientifiques nécessaires pour faire basculer le milieu traditionnel universitaire vers le digital. Vous trouverez ci-dessous un échantillon d'exemples d'utilisation que le Web3 peut offrir à la communauté scientifique. -### Publications {#publishing} +### Publication {#publishing} -Comme chacun le sait, les publications scientifiques posent problème car elles sont gérées par des maisons d'édition qui s'appuient sur le travail gratuit de scientifiques, de réviseurs et d'éditeurs pour produire des articles, mais qui facturent ensuite des frais d'édition exorbitants. Le public, qui a généralement financé indirectement le travail et les coûts de publication à travers les taxes et les impôts qu'il paie, ne peut souvent pas accéder à ce même travail sans payer l'éditeur à nouveau. Le montant total des frais de publication d'articles scientifiques individuels est souvent à cinq chiffres ($USD), ce qui sape le concept même de connaissance scientifique en tant que [bien public](/glossary/#public-goods) tout en permettant à un petit groupe d'éditeurs d'engranger d'énormes profits. +Comme chacun le sait, les publications scientifiques posent problème car elles sont gérées par des maisons d'édition qui s'appuient sur le travail gratuit de scientifiques, de réviseurs et d'éditeurs pour produire des articles, mais qui facturent ensuite des frais d'édition exorbitants. Le public, qui a généralement financé indirectement le travail et les coûts de publication à travers les taxes et les impôts qu'il paie, ne peut souvent pas accéder à ce même travail sans payer l'éditeur à nouveau. Le montant total des frais de publication d'articles scientifiques individuels atteint souvent cinq chiffres (en $ USD), ce qui sape le concept même de connaissance scientifique en tant que [bien public](/glossary/#public-goods) tout en permettant à un petit groupe d'éditeurs de générer d'énormes profits. -Il existe des plateformes d'acès libre et gratuit sous forme de serveurs de pré-impression [comme ArXiv](https://arxiv.org/). Le contrôle qualité , de même que les [mécanismes anti-sybil](/glossary/#anti-sybil), font toutefois défaut sur ces plateformes, qui ne suivent généralement pas les paramètres en termes d'article, ce qui signifie qu'ils ne sont généralement utilisés que pour faire connaître un travail avant de le soumettre à un éditeur classique. SciHub permet également d'accéder gratuitement aux articles publiés, mais pas légalement, et seulement après que les éditeurs ont été réglés et ont lié l'œuvre à une législation stricte sur le droit d'auteur. Les données et articles scientifiques accessibles associés à un mécanisme de légitimité et à un modèle incitatif intégrés manquent donc cruellement. Le Web3 offre les outils nécessaire pour construire un tel système. +Il existe des plateformes gratuites et à accès libre sous la forme de serveurs de prépublication, [comme ArXiv](https://arxiv.org/). Cependant, ces plateformes manquent de contrôle qualité, de [mécanismes anti-Sybil](/glossary/#anti-sybil) et ne suivent généralement pas les indicateurs au niveau des articles, ce qui signifie qu'elles ne sont généralement utilisées que pour faire connaître un travail avant de le soumettre à un éditeur traditionnel. SciHub permet également d'accéder gratuitement aux articles publiés, mais pas légalement, et seulement après que les éditeurs ont été réglés et ont lié l'œuvre à une législation stricte sur le droit d'auteur. Les données et articles scientifiques accessibles associés à un mécanisme de légitimité et à un modèle incitatif intégrés manquent donc cruellement. Le Web3 offre les outils nécessaire pour construire un tel système. ### Reproductibilité et réplicabilité {#reproducibility-and-replicability} @@ -64,25 +64,26 @@ Avec les nouveaux outils Web3 natifs, reproductibilité et réplicabilité sont ### Financement {#funding} -Dans le cadre du modèle de financement actuel de la science, des personnes ou des groupes de scientifiques présentent des demandes de financement écrites à des organismes de financement. Un petit groupe de personnes de confiance notent les candidats, puis les interrogent avant d'attribuer des fonds à une fraction d'entre eux. En plus de créer un goulot d'étranglement qui mène parfois à **des années d'attente** entre l'application de la demande et la réception d'une subvention, ce modèle est réputé pour être hautement **vulnérable aux biais, aux intérêts personnels et aux politiques** du comité d'étude. +Dans le cadre du modèle de financement actuel de la science, des personnes ou des groupes de scientifiques présentent des demandes de financement écrites à des organismes de financement. Un petit groupe de personnes de confiance notent les candidats, puis les interrogent avant d'attribuer des fonds à une fraction d'entre eux. En plus de créer des goulots d'étranglement qui entraînent parfois des **années d'attente** entre la demande et la réception d'une subvention, ce modèle est connu pour être très **vulnérable aux préjugés, aux intérêts personnels et aux politiques** du comité d'évaluation. Des études ont montré que les comités d'étude des demandes de subventions ont du mal à sélectionner les propositions de qualité. En effet, les mêmes propositions soumises à des comités différents donnent des résultats très différents. Le financement étant de plus en plus limité, il s’est concentré sur un groupe plus restreint de chercheurs plus âgés, porteurs de projets plus classiques sur le plan intellectuel. Cela a eu pour effet de créer un paysage de financement hyperconcurrentiel, d'ancrer des incitations perverses et d'étouffer l'innovation. -Le Web3 a le potentiel d'ébranler ce modèle de financement dépassé en expérimentant différents modèles d'incitation développés par les DAO et le Web3 dans l'ensemble. [Le financement rétroactif des biens publics](https://medium.com/ethereum-optimism/retroactive-public-goods-funding-33c9b7d00f0c),[ le financement quadratique](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2003531),[ la gouvernance de DAO](https://www.antler.co/blog/daos-and-web3-governance-the-promise-implications-and-challenges-ahead) et [ les structures incitatives basées sur l'utilisation de jetons](https://cdixon.org/2017/05/27/crypto-tokens-a-breakthrough-in-open-network-design) sont quelques-uns des outils Web3 qui pourraient révolutionner le financement de la science. +Le Web3 a le potentiel d'ébranler ce modèle de financement dépassé en expérimentant différents modèles d'incitation développés par les DAO et le Web3 dans l'ensemble. Le [financement rétroactif des biens publics](https://medium.com/ethereum-optimism/retroactive-public-goods-funding-33c9b7d00f0c), le [financement quadratique](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2003531), la [gouvernance des DAO](https://www.antler.co/blog/daos-and-web3-governance-the-promise-implications-and-challenges-ahead) et les [structures d'incitation tokenisées](https://cdixon.org/2017/05/27/crypto-tokens-a-breakthrough-in-open-network-design) sont quelques-uns des outils Web3 qui pourraient révolutionner le financement de la science. ### Propriété et développement de la PI {#ip-ownership} -La propriété intellectuelle (PI) pose problème dans la science traditionnelle : cantonnée aux universités ou inutilisée dans les entreprises de biotechnologie, elle est de surcroît et comme chacun le sait difficile à évaluer. Le Web est cependant particulièrement performant en matière de propriété des actifs numériques (notamment des données scientifiques ou des articles), grâce au recours aux [jetons non fongibles (NFTs)](/glossary/#nft). +La propriété intellectuelle (PI) pose problème dans la science traditionnelle : cantonnée aux universités ou inutilisée dans les entreprises de biotechnologie, elle est de surcroît et comme chacun le sait difficile à évaluer. Cependant, la propriété des actifs numériques (tels que les données ou articles scientifiques) est une chose que le Web3 fait exceptionnellement bien en utilisant des [jetons non fongibles (NFT)](/glossary/#nft). De la même manière que les NFT peuvent transmettre les recettes de futures transactions au créateur initial, vous pouvez établir des chaînes d'attribution de valeur transparentes pour récompenser les chercheurs, les organes directeurs (les DAO par exemple), ou même les personnes dont les données sont collectées. -Les [NFT liés à la PI](https://medium.com/molecule-blog/ip-nfts-for-researchers-a-new-biomedical-funding-paradigm-91312d8d92e6) peuvent également servir de clé d'accès à un référentiel de données décentralisé relatif aux expériences de recherche en cours, et puiser dans les NFT et le financement de la [DeFi](/glossary/#defi) (de la fractionalisation aux groupes de prêt et à l'estimation de la valeur). Ils permettent également aux entités nativement en chaîne, telles que les DAO comme [VitaDAO](https://www.vitadao.com/), de mener des recherches directement en chaîne. Les [jetons « soulbound »](https://vitalik.eth.limo/general/2022/01/26/soulbound.html) non transférables peuvent également jouer un rôle important en matière de DeSci en permettant aux individus d'apporter la preuve de leur expérience et leurs identifiants liés à leur adresse Ethereum. +Les [IP-NFT](https://medium.com/molecule-blog/ip-nfts-for-researchers-a-new-biomedical-funding-paradigm-91312d8d92e6) peuvent également servir de clé à un référentiel de données décentralisé des expériences de recherche en cours, et se connecter à la financiarisation des NFT et de la [DeFi](/glossary/#defi) (du fractionnement aux pools de prêt et à l'évaluation de la valeur). Cela permet également à des entités nativement sur la chaîne telles que des DAO comme [VitaDAO](https://www.vitadao.com/) de mener des recherches directement sur la chaîne. +L'avènement des [jetons « soulbound »](https://vitalik.eth.limo/general/2022/01/26/soulbound.html) non transférables pourrait également jouer un rôle important dans la DeSci en permettant aux individus de prouver leur expérience et leurs références liées à leur adresse Ethereum. ### Stockage de données, accès et architecture {#data-storage} Les données scientifiques peuvent être rendues beaucoup plus accessibles en utilisant les modèles Web3, sachant que le stockage distribué permet aux recherches et études de survivre à des événements cataclysmiques. -Le tout doit reposer sur un système accessible par toute identité décentralisée disposant d'identifiants vérifiables appropriés. Les données sensibles peuvent ainsi être répliquées en toute sécurité par des parties de confiance, ce qui permet de résister à la redondance et à la censure, de reproduire les résultats et même à plusieurs parties de collaborer et d'ajouter de nouvelles données à l'ensemble de données. Des méthodes de calcul confidentielles telles que [compute-to-data](https://7wdata.be/predictive-analytics/compute-to-data-using-blockchain-to-decentralize-data-science-and-ai-with-the-ocean-protocol) offrent des mécanismes d'accès alternatifs à la réplication des données brutes, créant des environnements de recherche fiables pour les données les plus sensibles. Les environnements de recherche fiables ont été [cités par le NHS](https://medium.com/weavechain/whats-in-store-for-the-future-of-healthcare-data-b6398745fbbb) comme une solution de préservation de la confidentialité des données et de collaboration orientée vers l'avenir dans la mesure où ils créent un écosystème au sein duquel les chercheurs peuvent travailler en toute sécurité avec les données directement sur place en utilisant des environnements normalisés pour le partage de code et de pratiques. +Le tout doit reposer sur un système accessible par toute identité décentralisée disposant d'identifiants vérifiables appropriés. Les données sensibles peuvent ainsi être répliquées en toute sécurité par des parties de confiance, ce qui permet de résister à la redondance et à la censure, de reproduire les résultats et même à plusieurs parties de collaborer et d'ajouter de nouvelles données à l'ensemble de données. Les méthodes de calcul confidentiel comme le [compute-to-data](https://7wdata.be/predictive-analytics/compute-to-data-using-blockchain-to-decentralize-data-science-and-ai-with-the-ocean-protocol) fournissent des mécanismes d'accès alternatifs à la réplication des données brutes, créant des environnements de recherche fiables pour les données les plus sensibles. Les environnements de recherche fiables ont été [cités par le NHS](https://medium.com/weavechain/whats-in-store-for-the-future-of-healthcare-data-b6398745fbbb) comme une solution d'avenir pour la confidentialité des données et la collaboration en créant un écosystème où les chercheurs peuvent travailler en toute sécurité avec des données sur site en utilisant des environnements normalisés pour le partage de code et de pratiques. Les solutions Web 3 flexibles axées sur les données prennent en charge les scénarios ci-dessus et fournissent les bases d'une science réellement ouverte, où les chercheurs peuvent créer des biens publics sans autorisation d'accès ni frais. Les solutions Web3 relatives aux données publiques telles qu'IPFS, Arweave et Filecoin sont optimisées pour la décentralisation. dClimate, par exemple, fournit un accès universel aux données climatiques et météorologiques, y compris à partir de stations météo et de modèles climatiques prédictifs. @@ -90,48 +91,49 @@ Les solutions Web 3 flexibles axées sur les données prennent en charge les sc Explorer les projets et rejoindre la communauté DeSci. -- [DeSci.Global : calendrier des événements et des rencontres à l'échelle mondiale](https://desci.global) -- [La blockchain au service de la science avec Telegram](https://t.me/BlockchainForScience) -- [Molecule : Financer et recevoir des fonds pour vos projets de recherche](https://www.molecule.xyz/) -- [VitaDAO : recevoir des fonds par le biais d'accords de recherche sponsorisés en vue de recherches sur la longévité](https://www.vitadao.com/) -- [Research Hub : publier un résultat scientifique et participer à une conversation avec des pairs](https://www.researchhub.com/) -- [dClimate API : envoyer des requêtes concernant les données climatiques recueillies par une communauté décentralisée](https://www.dclimate.net/) -- [DeSci Foundation : fabricant d'outils de publication DeSci](https://descifoundation.org/) -- [DeSci.World : guichet unique grâce auquel les utilisateurs peuvent avoir une visibilité, échanger avec la science décentralisée](https://desci.world) -- [OceanDAO : source de financement régi par une DAO pour les études scientifiques liées aux données](https://oceanprotocol.com/) -- [Opscientia : flux de travaux scientifiques décentralisés ouverts](https://opsci.io/research/) -- [Bio.xyz : financer votre projet DAO ou desci biotech](https://www.bio.xyz/) -- [Protocole Fleming : économie des données open-source qui alimente la recherche biomédicale collaborative](http://flemingprotocol.io/) -- [Institut d'inférence active](https://www.activeinference.org/) -- [IdeaMarkets : pour une crédibilité scientifique décentralisée renforcée](https://ideamarket.io/) +- [DeSci.Global : calendrier mondial des événements et des rencontres](https://desci.global) +- [Blockchain for Science Telegram](https://t.me/BlockchainForScience) +- [Molecule : Financez et soyez financé pour vos projets de recherche](https://www.molecule.xyz/) +- [VitaDAO : recevez un financement pour la recherche sur la longévité via des accords de recherche sponsorisés](https://www.vitadao.com/) +- [ResearchHub : publiez un résultat scientifique et engagez la conversation avec vos pairs](https://www.researchhub.com/) +- [dClimate API : interrogez les données climatiques collectées par une communauté décentralisée](https://www.dclimate.net/) +- [DeSci Foundation : créateur d'outils de publication DeSci](https://descifoundation.org/) +- [DeSci.World : un guichet unique pour que les utilisateurs puissent consulter et s'engager dans la science décentralisée](https://desci.world) +- [OceanDAO : financement régi par une DAO pour la science liée aux données](https://oceanprotocol.com/) +- [Opscientia : flux de travail scientifiques décentralisés et ouverts](https://opsci.io/research/) +- [Bio.xyz : obtenez un financement pour votre projet de DAO biotechnologique ou de DeSci](https://www.bio.xyz/) +- [Fleming Protocol : une économie de données open source qui alimente la découverte biomédicale collaborative](http://flemingprotocol.io/) +- [Active Inference Institute](https://www.activeinference.org/) +- [IdeaMarkets : pour une crédibilité scientifique décentralisée](https://ideamarket.io/) - [DeSci Labs](https://www.desci.com/) -- [ValleyDAO : une communauté ouverte et mondiale offrant un financement et un support translationnel à la recherche en biologie synthétique](https://www.valleydao.bio) -- [Cerebrum DAO : recherche et développement de solutions pour améliorer la santé cérébrale et prévenir la neurodégénérescence](https://www.cerebrumdao.com/) -- [CryoDAO : financement de recherches audacieuses dans le domaine de la cryopréservation](https://www.cryodao.org) +- [ValleyDAO : une communauté mondiale ouverte offrant un financement et un soutien translationnel pour la recherche en biologie synthétique](https://www.valleydao.bio) +- [Cerebrum DAO : trouver et développer des solutions pour faire progresser la santé du cerveau et prévenir la neurodégénérescence](https://www.cerebrumdao.com/) +- [CryoDAO : financement de recherches audacieuses dans le domaine de la cryoconservation](https://www.cryodao.org) +- [Elata : Ayez votre mot à dire sur l'avenir de la médecine psychiatrique](https://www.elata.bio/) -Nous accueillons volontiers les suggestions de nouveaux projets à répertorier - veuillez consulter notre [politique d'inscription](/contributing/adding-desci-projects/) pour commencer ! +Nous sommes ouverts aux suggestions de nouveaux projets à répertorier. Veuillez consulter notre [politique de référencement](/contributing/adding-desci-projects/) pour commencer ! ## En savoir plus {#further-reading} - [DeSci Wiki par Jocelynn Pearl et Ultrarare](https://docs.google.com/document/d/1aQC6zn-eXflSmpts0XGE7CawbUEHwnL6o-OFXO52PTc/edit#) -- [Un guide sur la biotech décentralisée par Jocelynn Pearl pour a16z future](https://future.a16z.com/a-guide-to-decentralized-biotech/) -- [Arguments en faveur de la DeSci](https://gitcoin.co/blog/desci-the-case-for-decentralised-science/) -- [Guide relatif à la DeSci](https://future.com/what-is-decentralized-science-aka-desci/) -- [Ressources relatives à la science décentralisée](https://www.vincentweisser.com/desci) -- [Les IP-NFT de Molecule dans le domaine biopharmaceutique - Description technique](https://www.molecule.xyz/blog/molecules-biopharma-ip-nfts-a-technical-description) -- [Construire des systèmes scientifiques sans tiers de confiance par Jon Starr](https://medium.com/@jringo/building-systems-of-trustless-science-1cd2d072f673) +- [Un guide sur la biotechnologie décentralisée par Jocelynn Pearl pour a16z future](https://future.a16z.com/a-guide-to-decentralized-biotech/) +- [Plaidoyer pour la DeSci](https://gitcoin.co/blog/desci-the-case-for-decentralised-science/) +- [Guide de la DeSci](https://future.com/what-is-decentralized-science-aka-desci/) +- [Ressources sur la science décentralisée](https://www.vincentweisser.com/desci) +- [Les IP-NFT biopharmaceutiques de Molecule – Une description technique](https://www.molecule.xyz/blog/molecules-biopharma-ip-nfts-a-technical-description) +- [Construire des systèmes scientifiques sans confiance par Jon Starr](https://medium.com/@jringo/building-systems-of-trustless-science-1cd2d072f673) - [Paul Kohlhaas - DeSci : L'avenir de la science décentralisée (podcast)](https://anchor.fm/andrew-steinwold/episodes/Paul-Kohlhaas---DeSci-The-Future-of-Decentralized-Science---Zima-Red-ep-117-e1h683a) -- [Une ontologie des Inférences actives pour une science décentralisée : de la création de sens en situation aux biens communs épistémiques](https://zenodo.org/record/6320575) +- [Une ontologie de l'inférence active pour la science décentralisée : de la création de sens en situation aux biens communs épistémiques](https://zenodo.org/record/6320575) - [DeSci : l'avenir de la recherche par Samuel Akinosho](https://lucidsamuel.medium.com/desci-the-future-of-research-b76cfc88c8ec) -- [Financement de la science (Épilogue : la DeSci et les nouvelles primitives dans les cryptomonnaies) par Nadia](https://nadia.xyz/science-funding) -- [La décentralisation perturbe développement des médicaments](https://medium.com/id-theory/decentralisation-is-disrupting-drug-development-28b5ba5d447f) -- [Qu'est-ce que la DeSci – Science Décentralisée ?](https://usadailytimes.com/2022/09/12/what-is-desci-decentralized-science/) +- [Financement de la science (Épilogue : DeSci et nouvelles primitives de cryptomonnaies) par Nadia](https://nadia.xyz/science-funding) +- [La décentralisation bouleverse le développement de médicaments](https://medium.com/id-theory/decentralisation-is-disrupting-drug-development-28b5ba5d447f) +- [Qu'est-ce que la DeSci – la science décentralisée ?](https://usadailytimes.com/2022/09/12/what-is-desci-decentralized-science/) ### Vidéos {#videos} - [Qu'est-ce que la science décentralisée ?](https://www.youtube.com/watch?v=-DeMklVWNdA) -- [Conversation entre Vitalik Buterin et le scientifique Aubrey de Grey sur le croisement entre recherche sur la longévité et cryptomonnaie](https://www.youtube.com/watch?v=x9TSJK1widA) -- [La publication scientifique est en panne. Est-ce que le Web3 peut améliorer ?](https://www.youtube.com/watch?v=WkvzYgCvWj8) -- [Juan Benet - DeSci, laboratoires indépendants, & dcience des données à grande échelle](https://www.youtube.com/watch?v=zkXM9H90g_E) -- [Sebastian Brunemeier - Comment la DeSci peut transformer la recherche biomédicale & le capital risque](https://www.youtube.com/watch?v=qB4Tc3FcVbM) -- [Paige Donner - Outils pour la science ouverte avec le Web3 & La Blockchain](https://www.youtube.com/watch?v=nC-2QWQ-lgw&t=17s) +- [Conversation entre Vitalik Buterin et le scientifique Aubrey de Grey sur le croisement entre la recherche sur la longévité et les cryptomonnaies](https://www.youtube.com/watch?v=x9TSJK1widA) +- [La publication scientifique est en panne. Le Web3 peut-il y remédier ?](https://www.youtube.com/watch?v=WkvzYgCvWj8) +- [Juan Benet - DeSci, laboratoires indépendants et science des données à grande échelle](https://www.youtube.com/watch?v=zkXM9H90g_E) +- [Sebastian Brunemeier - Comment la DeSci peut transformer la recherche biomédicale et le capital-risque](https://www.youtube.com/watch?v=qB4Tc3FcVbM) +- [Paige Donner - Outiller la science ouverte avec le Web3 et la blockchain](https://www.youtube.com/watch?v=nC-2QWQ-lgw&t=17s) diff --git a/public/content/translations/fr/developers/docs/accounts/index.md b/public/content/translations/fr/developers/docs/accounts/index.md index 381a07c5d2a..bf4eaf09393 100644 --- a/public/content/translations/fr/developers/docs/accounts/index.md +++ b/public/content/translations/fr/developers/docs/accounts/index.md @@ -1,10 +1,10 @@ --- title: Comptes Ethereum -description: Explication des comptes Ethereum – leurs structures de données et leur relation avec la cryptographie asymétrique. +description: "Explication des comptes Ethereum – leurs structures de données et leur relation avec la cryptographie asymétrique." lang: fr --- -Un compte Ethereum est une entité avec un solde en ether (ETH) qui peut réaliser des transactions sur Ethereum. Les comptes peuvent être contrôlés par l'utilisateur ou déployés en tant que contrats intelligents. +Un compte Ethereum est une entité avec un solde d'éther (ETH) qui peut envoyer des messages sur Ethereum. Les comptes peuvent être contrôlés par l'utilisateur ou déployés en tant que contrats intelligents. ## Prérequis {#prerequisites} @@ -15,39 +15,40 @@ Pour vous aider à mieux comprendre cette page, nous vous recommandons de commen Ethereum comprend deux types de comptes : - Compte détenu en externe (EOA) – contrôlé par toute personne ayant les clés privées -- Compte de contrat – un contrat intelligent déployé sur le réseau, contrôlé par le code. En savoir plus sur [ les contrats intelligents](/developers/docs/smart-contracts/) +- Compte de contrat – un contrat intelligent déployé sur le réseau, contrôlé par le code. En savoir plus sur les [contrats intelligents](/developers/docs/smart-contracts/) Les deux types de comptes peuvent : - Recevoir, détenir et envoyer des ETH et des jetons - Interagir avec les contrats intelligents déployés -### Différences principales {#key-differences} +### Principales différences {#key-differences} -**Propriété externe** +**externe** - La création d'un compte est gratuite - Vous pouvez initier des transactions - Les transactions entre des comptes externes ne peuvent être que des transferts en ETH/jeton - Composé d'une paire de clés cryptographiques : clés publiques et privées qui contrôlent les activités du compte -**Contrats** +**Contrat** - La création d'un contrat a un coût dû à l'utilisation de stockage réseau -- Vous pouvez seulement envoyer des transactions en réponse à la réception d'une transaction +- Ne peut envoyer des messages qu'en réponse à la réception d'une transaction - Les transactions depuis un compte externe vers un compte de contrat peuvent déclencher un code pouvant exécuter plein d'actions différentes, comme transférer des tokens ou même créer un nouveau contrat - Les comptes de contrat n'ont pas de clés privées. Au lieu de cela, ils sont contrôlés par la logique du code du contrat intelligent -## Description d'un compte {#an-account-examined} +## Examen d'un compte {#an-account-examined} Les comptes Ethereum comportent quatre champs : -- `nonce` - Il s'agit soit d'un code indiquant le nombre de transactions envoyées à partir d'une adresse émettrice, soit du nombre de contrats créés auxquels vous pouvez avoir accès par le biais de la page dédiée aux contrats et aux adresses Ethereum (Account). Chaque adresse Ethereum (Account) peut être utilisée uniquement à chaque transaction en choisissant un nonce associé au bloc. Le rôle de ce dernier est de rendre impossible les attaques par rejeu, durant lesquelles des transactions signées sur une chaîne, sont réalisées et retransmises de manière continue sur l'autre chaîne. -- `balance` – le nombre de wei possédés par cette adresse. Le wei est une unité divisionnaire de l'ETH. Il y a 1e+18 wei pour 1 ETH. -- `codeHash` – ce hash est une référence au _code_ d'un compte dans la machine virtuelle Ethereum (EVM). Les comptes de contrat possèdent des fragments de code qui peuvent réaliser différentes opérations. Ce code EVM est exécuté si le compte reçoit un message. Contrairement aux autres champs, il ne peut pas être modifié. Tous ces fragments de code sont stockés dans une base de données à états, sous leur hachage correspondant, pour une récupération future. Cette valeur de hachage est connue en tant que codeHash. Pour les comptes externes, le champ du codeHash contient le hachage d'une chaîne vide. -- `storageRoot` – Parfois connu sous le nom de hachage de stockage. Un hash 256 bits du nœud racine d'un arbre de Merkle qui encode le contenu de stockage du compte (une correspondance entre 256 bits entiers), encodé dans un arbre préfixé comme correspondance d'un hach Keccak 256 bits des clés d'entier en 256 bits en des valeurs entières encodées en RLP. Cet arbre encode le hash des contenus stockés de ce compte, et est vide pas défaut. +- `nonce` – Un compteur qui indique le nombre de transactions envoyées depuis un compte externe ou le nombre de contrats créés par un compte de contrat. Chaque adresse Ethereum (Account) peut être utilisée uniquement à chaque transaction en choisissant un nonce associé au bloc. Le rôle de ce dernier est de rendre impossible les attaques par rejeu, durant lesquelles des transactions signées sur une chaîne, sont réalisées et retransmises de manière continue sur l'autre chaîne. +- `balance` – Le nombre de wei détenus par cette adresse. Le wei est une unité divisionnaire de l'ETH. Il y a 1e+18 wei pour 1 ETH. +- `codeHash` – Ce hachage fait référence au _code_ d'un compte sur la machine virtuelle Ethereum (EVM). Les comptes de contrat possèdent des fragments de code qui peuvent réaliser différentes opérations. Ce code EVM est exécuté si le compte reçoit un message. Contrairement aux autres champs, il ne peut pas être modifié. Tous ces fragments de code sont stockés dans une base de données à états, sous leur hachage correspondant, pour une récupération future. Cette valeur de hachage est connue en tant que codeHash. Pour les comptes externes, le champ du codeHash contient le hachage d'une chaîne vide. +- `storageRoot` – Parfois appelé hachage de stockage. Un hachage de 256 bits du nœud racine d'un [arbre de Merkle Patricia](/developers/docs/data-structures-and-encoding/patricia-merkle-trie/) qui encode le contenu de stockage du compte (une correspondance entre des valeurs entières de 256 bits), encodé dans l'arbre en tant que correspondance entre le hachage Keccak-256 des clés entières de 256 bits et les valeurs entières de 256 bits encodées en RLP. Cet arbre encode le hash des contenus stockés de ce compte, et est vide pas défaut. -![Schéma montrant la composition d'un compte](./accounts.png) _Schéma adapté à partir du document [Ethereum EVM illustrated](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ +![Un schéma montrant la composition d'un compte](./accounts.png) +_Schéma adapté de [Ethereum EVM illustrated](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ ## Comptes externes et paires de clés {#externally-owned-accounts-and-key-pairs} @@ -63,25 +64,25 @@ Lorsque vous souhaitez créer un compte, la plupart des bibliothèques générer Une clé privée est composée de 64 caractères hexadécimaux et peut être chiffrée avec un mot de passe. -Exemple : +Exemple : `fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd036415f` -La clé publique est générée à partir de la clé privée à l'aide d'un [algorithme de signature numérique basé sur les courbes elliptiques](https://wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm). On obtient l'adresse d'un compte en concatenant `0x` suivi des 20 derniers octets du code de hashage Keccak-256 de la clé pubique. +La clé publique est générée à partir de la clé privée en utilisant l'[algorithme de signature numérique à courbe elliptique](https://wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm). Vous obtenez une adresse publique pour votre compte en prenant les 20 derniers octets du hachage Keccak-256 de la clé publique et en ajoutant `0x` au début. -Cela signifie qu'un compte externe (EOA) possède une adresse de 42 caractères (un segment de 20 octets, soit 40 caractères hexadécimaux plus le préfixe `0x`). +Cela signifie qu'un compte externe (EOA) a une adresse de 42 caractères (un segment de 20 octets qui correspond à 40 caractères hexadécimaux plus le préfixe `0x`). -Exemple : +Exemple : `0x5e97870f263700f46aa00d967821199b9bc5a120` -L'exemple suivant montre comment utiliser un outil de signature appelé [Clef](https://geth.ethereum.org/docs/tools/clef/introduction) pour générer un nouveau compte. Clef est un outil de gestion de compte et de signature qui est fourni avec le client Ethereum [Geth](https://geth.ethereum.org). La commande `clef newaccount` crée une nouvelle paire de clés et les enregistre dans un magasin de clés chiffré. +L'exemple suivant montre comment utiliser un outil de signature appelé [Clef](https://geth.ethereum.org/docs/tools/clef/introduction) pour générer un nouveau compte. Clef est un outil de gestion de compte et de signature fourni avec le client Ethereum, [Geth](https://geth.ethereum.org). La commande `clef newaccount` crée une nouvelle paire de clés et l'enregistre dans un keystore chiffré. ``` -> clef newaccount --keystore +> clef newaccount --keystore -Please enter a password for the new account to be created: -> +Veuillez saisir un mot de passe pour le nouveau compte à créer : +> ------------ INFO [10-28|16:19:09.156] Your new key was generated address=0x5e97870f263700f46aa00d967821199b9bc5a120 @@ -92,15 +93,15 @@ Generated account 0x5e97870f263700f46aa00d967821199b9bc5a120 [Documentation Geth](https://geth.ethereum.org/docs) -Il est possible de dériver de nouvelles clés publiques à partir de votre clé privée, mais pas l'inverse. Il est impératif de conserver vos clés privées en sécurité. Comme leur nom l'indique, elles sont **PRIVÉES**. +Il est possible de dériver de nouvelles clés publiques à partir de votre clé privée, mais pas l'inverse. Il est essentiel de conserver vos clés privées en lieu sûr et, comme leur nom l'indique, de les garder **PRIVÉES**. -Vous avez besoin d'une clé privée pour signer les messages et les transactions produisant une signature. Les autres peuvent alors prendre la signature pour dériver votre clé publique, prouvant l'auteur du message. Dans votre application, vous pouvez utiliser une bibliothèque JavaScript pour envoyer des transactions au réseau. +Vous avez besoin d'une clé privée pour signer des messages et des transactions qui génèrent une signature. Les autres peuvent alors prendre la signature pour dériver votre clé publique, prouvant l'auteur du message. Dans votre application, vous pouvez utiliser une bibliothèque JavaScript pour envoyer des transactions au réseau. -## Les comptes de contrats {#contract-accounts} +## Comptes de contrat {#contract-accounts} Les comptes de contrats possèdent également une adresse hexadécimale de 42 caractères : -Exemple : +Exemple : `0x06012c8cf97bead5deae237070f9587f8e7a266d` @@ -116,7 +117,7 @@ Il existe également un autre type de clé dans Ethereum, qui a été mis en pla Un compte n'est pas un portefeuille. Un portefeuille est une interface ou une application qui vous permet d'interagir avec votre compte Ethereum, qu'il s'agisse d'un compte externe ou d'un compte de contrat. -## Démonstration visuelle {#a-visual-demo} +## Une démo visuelle {#a-visual-demo} Regardez Austin vous guider à travers les fonctions de hachage et les paires de clés. @@ -124,9 +125,9 @@ Regardez Austin vous guider à travers les fonctions de hachage et les paires de -## Complément d'information {#further-reading} +## En savoir plus {#further-reading} -- [Comprendre les Comptes Ethereum](https://info.etherscan.com/understanding-ethereum-accounts/) - etherscan +- [Comprendre les comptes Ethereum](https://info.etherscan.com/understanding-ethereum-accounts/) - etherscan _Une ressource communautaire vous a aidé ? Modifiez cette page et ajoutez-la !_ diff --git a/public/content/translations/fr/developers/docs/apis/backend/index.md b/public/content/translations/fr/developers/docs/apis/backend/index.md index 5eb8806452f..9617369525b 100644 --- a/public/content/translations/fr/developers/docs/apis/backend/index.md +++ b/public/content/translations/fr/developers/docs/apis/backend/index.md @@ -1,5 +1,5 @@ --- -title: Bibliothèques d'API backend +title: "Bibliothèques d'API backend" description: Introduction aux API clientes Ethereum, qui vous permettent d'interagir avec la blockchain depuis votre application. lang: fr --- @@ -8,15 +8,15 @@ Pour qu'une application logicielle puisse interagir avec la blockchain Ethereum À cette fin, chaque client Ethereum met en œuvre la spécification [JSON-RPC](/developers/docs/apis/json-rpc/), de sorte qu'il existe un ensemble uniforme de [méthodes](/developers/docs/apis/json-rpc/#json-rpc-methods) sur lesquelles les applications peuvent s'appuyer. -Si vous souhaitez utiliser un langage de programmation spécifique pour vous connecter à un nœud Ethereum, vous pouvez développer votre propre solution, mais il existe plusieurs bibliothèques pratiques au sein de l'écosystème qui facilitent grandement cette tâche. Grâce à ces bibliothèques, les développeurs peuvent rédiger des méthodes intuitives d'une seule ligne pour initialiser des demandes RPC JSON (sous le capot) qui interagissent avec Ethereum. +Si vous souhaitez utiliser un langage de programmation spécifique pour vous connecter à un nœud Ethereum, il existe de nombreuses bibliothèques pratiques au sein de l'écosystème qui facilitent grandement cette tâche. Avec ces bibliothèques, les développeurs peuvent écrire des méthodes intuitives d'une seule ligne pour initialiser les requêtes JSON-RPC (en arrière-plan) qui interagissent avec Ethereum. ## Prérequis {#prerequisites} -Il peut être utile de comprendre en quoi consiste la [pile Ethereum](/developers/docs/ethereum-stack/) et les [clients Ethereum](/developers/docs/nodes-and-clients/). +Il peut être utile de comprendre la [pile Ethereum](/developers/docs/ethereum-stack/) et les [clients Ethereum](/developers/docs/nodes-and-clients/). ## Pourquoi utiliser une bibliothèque ? {#why-use-a-library} -Les bibliothèques suppriment une grande partie de la complexité de l'interaction directe avec un nœud Ethereum. Elles fournissent également des fonctions utilitaires (par ex. convertir des ETH en gwei) afin que vous puissiez, en tant que développeur, passer moins de temps à gérer les subtilités des clients Ethereum et plus de temps à vous consacrer aux fonctionnalités uniques de votre application. +Ces bibliothèques suppriment une grande partie de la complexité d'une interaction directe avec un nœud Ethereum. Elles fournissent également des fonctions utilitaires (par ex. la conversion d'ETH en Gwei) afin que, en tant que développeur, vous puissiez passer moins de temps à gérer les subtilités des clients Ethereum et plus de temps à vous concentrer sur les fonctionnalités uniques de votre application. ## Bibliothèques disponibles {#available-libraries} @@ -25,7 +25,7 @@ Les bibliothèques suppriment une grande partie de la complexité de l'interacti **Alchemy -** **_Plateforme de développement Ethereum._** - [alchemy.com](https://www.alchemy.com/) -- [Documentation](https://docs.alchemy.com/) +- [Documentation](https://www.alchemy.com/docs/) - [GitHub](https://github.com/alchemyplatform) - [Discord](https://discord.com/invite/alchemyplatform) @@ -35,11 +35,11 @@ Les bibliothèques suppriment une grande partie de la complexité de l'interacti - [Documentation](https://docs.allthatnode.com) - [Discord](https://discord.gg/GmcdVEUbJM) -**Blast by Bware Labs-** **_ API décentralisées pour le réseau principal et les réseaux de tests Ethereum._** +**Blast by Bware Labs -** **_API décentralisées pour le réseau principal et les réseaux de test Ethereum._** - [blastapi.io](https://blastapi.io/) - [Documentation](https://docs.blastapi.io) -- [Discord](https://discord.gg/bwarelabs) +- [Discord](https://discord.gg/SaRqmRUjjQ) **BlockPi -** **_Fournit des services RPC plus efficaces et plus rapides_** @@ -48,19 +48,24 @@ Les bibliothèques suppriment une grande partie de la complexité de l'interacti - [GitHub](https://github.com/BlockPILabs) - [Discord](https://discord.com/invite/xTvGVrGVZv) -**Passerelle Ethereum de Cloudflare** +**Passerelle Ethereum de Cloudflare.** - [cloudflare-eth.com](https://www.cloudflare.com/application-services/products/web3/) **Etherscan - Explorateur de blocs et APIs de transaction** + - [Documentation](https://docs.etherscan.io/) -**GetBlock-** **_Blockchain-as-a-service pour le développement du Web3_** +**Blockscout - Open Source Block Explorer** + +- [Documentation](https://docs.blockscout.com/) + +**GetBlock -** **_Blockchain en tant que service pour le développement Web3_** - [GetBlock.io](https://getblock.io/) -- [Documentation](https://getblock.io/docs/) +- [Documentation](https://docs.getblock.io/) -**Infura -** **_L'API Ethereum en tant que service_** +**Infura -** **_L'API Ethereum en tant que service._** - [infura.io](https://infura.io) - [Documentation](https://docs.infura.io/api) @@ -71,24 +76,24 @@ Les bibliothèques suppriment une grande partie de la complexité de l'interacti - [noderpc.xyz](https://www.noderpc.xyz/) - [Documentation](https://docs.noderpc.xyz/node-rpc) -**NOWNodes - _Explorateurs de nœuds complets et de blocs._** +**NOWNodes - _Nœuds complets et explorateurs de blocs._** - [NOWNodes.io](https://nownodes.io/) -- [Documentation](https://documenter.getpostman.com/view/13630829/TVmFkLwy#intro) +- [Documentation](https://nownodes.gitbook.io/documentation) -**Quinone -** **_Infrastructure Blockchain en tant que service_** +**QuickNode -** **_Infrastructure de blockchain en tant que service._** - [quicknode.com](https://quicknode.com) - [Documentation](https://www.quicknode.com/docs/welcome) - [Discord](https://discord.gg/quicknode) -**Rivet -** **_API Ethereum et Ethereum Classic en tant que service alimenté par des logiciels libres._** +**Rivet -** **_API Ethereum et Ethereum Classic en tant que service, propulsées par des logiciels open source._** - [rivet.cloud](https://rivet.cloud) - [Documentation](https://rivet.cloud/docs/) - [GitHub](https://github.com/openrelayxyz/ethercattle-deployment) -**Zmok -** **_Nœuds Ethereum orientés vitesse comme API JSON-RPC/WebSockets_** +**Zmok -** **_Nœuds Ethereum axés sur la vitesse via une API JSON-RPC/WebSockets._** - [zmok.io](https://zmok.io/) - [GitHub](https://github.com/zmok-io) @@ -97,60 +102,62 @@ Les bibliothèques suppriment une grande partie de la complexité de l'interacti ### Outils de développement {#development-tools} -**ethers-kt** - **_Librairie Kotlin/Java/Andoid asynchrone et haute performance pour les blockchains basées sur l'EVM_** +**ethers-kt -** **_Bibliothèque Kotlin/Java/Android asynchrone et très performante pour les blockchains basées sur l'EVM._** - [GitHub](https://github.com/Kr1ptal/ethers-kt) - [Exemples](https://github.com/Kr1ptal/ethers-kt/tree/master/examples) - [Discord](https://discord.gg/rx35NzQGSb) -**Nethereum -** **_Une bibliothèque d’intégration .NET open source pour la blockchain._** +**Nethereum -** **_Une bibliothèque d'intégration .NET open source pour la blockchain._** - [GitHub](https://github.com/Nethereum/Nethereum) - [Documentation](http://docs.nethereum.com/en/latest/) - [Discord](https://discord.com/invite/jQPrR58FxX) -**Python Tooling -** **_Diverses bibliothèques pour interagir avec Ethereum via Python_** +**Outils Python -** **_Diverses bibliothèques pour interagir avec Ethereum via Python._** -- [py.ethereum.org](https://python.ethereum.org/) -- [GitHub Web3.py](https://github.com/ethereum/web3.py) -- [Chat Web3.py](https://gitter.im/ethereum/web3.py) +- [py.ethereum.org](https://snakecharmers.ethereum.org/) +- [GitHub de web3.py](https://github.com/ethereum/web3.py) +- [Chat de web3.py](https://gitter.im/ethereum/web3.py) -**Tatum -** **_Plateforme de développement de la blockchain._** +**Tatum -** **_La plateforme de développement blockchain ultime._** - [Tatum](https://tatum.io/) - [GitHub](https://github.com/tatumio/) - [Documentation](https://docs.tatum.io/) - [Discord](https://discord.gg/EDmW3kjTC9) -**web3j -** **_Bibliothèque d'intégration Java/Android/Kotlin/Scala pour Ethereum_** +**web3j -** **_Une bibliothèque d'intégration Java/Android/Kotlin/Scala pour Ethereum._** - [GitHub](https://github.com/web3j/web3j) - [Documentation](https://docs.web3j.io/) - [Gitter](https://gitter.im/web3j/web3j) -### Services blockchain {#blockchain-services} +### Services de blockchain {#blockchain-services} -**BlockCypher -** **_APIs Ethereum Web_** +**BlockCypher -** **_API Web Ethereum._** - [blockcypher.com](https://www.blockcypher.com/) - [Documentation](https://www.blockcypher.com/dev/ethereum/) +**Chainbase -** **_Infrastructure de données Web3 tout-en-un pour Ethereum._** + - [chainbase.com](https://chainbase.com/) - [Documentation](https://docs.chainbase.com/) - [Discord](https://discord.gg/Wx6qpqz4AF) -**Chainstack -** **_Nœuds Ethereum partagés et dédiés en tant que service_** +**Chainstack -** **_Nœuds Ethereum élastiques et dédiés en tant que service._** - [chainstack.com](https://chainstack.com) -- [Documentation](https://docs.chainbase.com/docs) +- [Documentation](https://docs.chainstack.com/) - [Référence de l'API Ethereum](https://docs.chainstack.com/reference/ethereum-getting-started) -**Nœud Cloud Coinbase -** **_API d'infrastructure blockchain._** +**Coinbase Cloud Node -** **_API d'infrastructure de blockchain._** -- [Nœud cloud de Coinbase](https://www.coinbase.com/cloud) -- [Documentation](https://docs.cloud.coinbase.com/) +- [Nœud Cloud Coinbase](https://www.coinbase.com/developer-platform) +- [Documentation](https://docs.cdp.coinbase.com/) -**DataHub by Figment -** **_Services API Web3 avec réseau principal et réseaux de tests Ethereum._** +**DataHub by Figment -** **_Services d'API Web3 avec le réseau principal et les réseaux de test Ethereum._** - [DataHub](https://www.figment.io/) - [Documentation](https://docs.figment.io/) @@ -163,7 +170,7 @@ Les bibliothèques suppriment une grande partie de la complexité de l'interacti - [Discord](https://moralis.io/joindiscord/) - [Forum](https://forum.moralis.io/) -**NFTPort -** **_API de frappe et de données Ethereum._** +**NFTPort -** **_API de données et de frappe Ethereum._** - [nftport.xyz](https://www.nftport.xyz/) - [Documentation](https://docs.nftport.xyz/) @@ -176,30 +183,29 @@ Les bibliothèques suppriment une grande partie de la complexité de l'interacti - [Documentation](https://services.tokenview.io/docs?type=api) - [GitHub](https://github.com/Tokenview) -**Watchdata** **_ - fournit un accès API simple et fiable à la blockchain Ethereum._** +**Watchdata -** **_Fournit un accès API simple et fiable à la blockchain Ethereum._** - [Watchdata](https://watchdata.io/) - [Documentation](https://docs.watchdata.io/) - [Discord](https://discord.com/invite/TZRJbZ6bdn) -**Covalent** - **_APIs blockchain enrichie pour plus de 200 chaines._** +**Covalent -** **_API de blockchain enrichies pour plus de 200 chaînes._** - [covalenthq.com](https://www.covalenthq.com/) - [Documentation](https://www.covalenthq.com/docs/api/) - [GitHub](https://github.com/covalenthq) - [Discord](https://www.covalenthq.com/discord/) - -## Complément d'information {#further-reading} +## En savoir plus {#further-reading} _Une ressource communautaire vous a aidé ? Modifiez cette page et ajoutez-la !_ ## Sujets connexes {#related-topics} -- [ Nœuds et clients](/developers/docs/nodes-and-clients/) +- [Nœuds et clients](/developers/docs/nodes-and-clients/) - [Frameworks de développement](/developers/docs/frameworks/) ## Tutoriels connexes {#related-tutorials} -- [Configurer Web3js pour utiliser la blockchain Ethereum avec JavaScript](/developers/tutorials/set-up-web3js-to-use-ethereum-in-javascript/)_ - Instructions pour installer et intégrer Web3js à votre projet_ -- [Appel d'un contrat intelligent à partir de JavaScript](/developers/tutorials/calling-a-smart-contract-from-javascript/) _ - À l'aide du jeton DAI, découvrez comment appeler une fonction de contrat en utilisant JavaScript._ +- [Configurer Web3js pour utiliser la blockchain Ethereum avec JavaScript](/developers/tutorials/set-up-web3js-to-use-ethereum-in-javascript/) _– Instructions pour installer et intégrer web3.js dans votre projet._ +- [Appeler un contrat intelligent depuis JavaScript](/developers/tutorials/calling-a-smart-contract-from-javascript/) _– À l'aide du jeton DAI, découvrez comment appeler des fonctions de contrat en JavaScript._ diff --git a/public/content/translations/fr/developers/docs/apis/javascript/index.md b/public/content/translations/fr/developers/docs/apis/javascript/index.md index 98969ec8413..07d5cad0a3d 100644 --- a/public/content/translations/fr/developers/docs/apis/javascript/index.md +++ b/public/content/translations/fr/developers/docs/apis/javascript/index.md @@ -1,40 +1,42 @@ --- -title: Bibliothèques d'API JavaScript -description: Introduction aux bibliothèques clientes JavaScript, qui vous permettent d'interagir avec la blockchain depuis votre application. +title: "Bibliothèques d'API JavaScript" +description: "Introduction aux bibliothèques clientes JavaScript, qui vous permettent d'interagir avec la blockchain depuis votre application." lang: fr --- -Pour qu'une application Web puisse interagir avec la blockchain Ethereum (c'est-à-dire lire les données de la blockchain et/ou envoyer des transactions sur le réseau), elle doit se connecter à un nœud Ethereum. +Pour qu'une application Web puisse interagir avec la blockchain Ethereum (c'est-à-dire lire les données de la blockchain et/ou envoyer des transactions sur le réseau), elle doit se connecter à un nœud Ethereum. -À cette fin, chaque client Ethereum met en œuvre la spécification [JSON-RPC](/developers/docs/apis/json-rpc/), de sorte qu'il existe un ensemble uniforme de [méthodes](/developers/docs/apis/json-rpc/#json-rpc-methods) sur lesquelles les applications peuvent s'appuyer. +Dans ce but, chaque client Ethereum implémente la spécification [JSON-RPC](/developers/docs/apis/json-rpc/), afin qu'il existe un ensemble uniforme de [méthodes](/developers/docs/apis/json-rpc/#json-rpc-methods) sur lesquelles les applications peuvent s'appuyer. -Si vous voulez utiliser JavaScript pour vous connecter à un nœud Ethereum, il est possible d'avoir recours à Vanilla JavaScript, mais plusieurs bibliothèques de commodité existent à l'intérieur même de l'écosystème, ce qui rend les choses beaucoup plus simples. Grâce à ces bibliothèques, les développeurs peuvent rédiger des méthodes intuitives d'une seule ligne pour initialiser des demandes RPC JSON (sous le capot) qui interagissent avec Ethereum. +Si vous voulez utiliser JavaScript pour vous connecter à un nœud Ethereum, il est possible d'avoir recours à Vanilla JavaScript, mais plusieurs bibliothèques de commodité existent à l'intérieur même de l'écosystème, ce qui rend les choses beaucoup plus simples. Avec ces bibliothèques, les développeurs peuvent écrire des méthodes intuitives d'une seule ligne pour initialiser les requêtes JSON-RPC (en arrière-plan) qui interagissent avec Ethereum. -Veuillez noter que depuis [La Fusion](/roadmap/merge/), deux parties de logiciels Ethereum connectés - un client d'exécution et un client de consensus - sont nécessaires pour exécuter un nœud. Veuillez vous assurer que votre nœud inclut à la fois un client d'exécution et un client de consensus. Si votre nœud n'est pas sur votre machine en local (par ex. votre nœud est exécuté sur une instance AWS), mettez à jour les adresses IP dans le tutoriel en conséquence. Pour plus d'informations, veuillez consulter notre page sur [l'exécution d'un noeud](/developers/docs/nodes-and-clients/run-a-node/). +Veuillez noter que depuis [La Fusion](/roadmap/merge/), deux logiciels Ethereum connectés - un client d'exécution et un client de consensus - sont nécessaires pour exécuter un nœud. Veuillez vous assurer que votre nœud inclut à la fois un client d'exécution et un client de consensus. Si votre nœud ne se trouve pas sur votre machine locale (par ex., votre nœud s'exécute sur une instance AWS), mettez à jour les adresses IP dans le tutoriel en conséquence. Pour plus d'informations, veuillez consulter notre page sur [l'exécution d'un nœud](/developers/docs/nodes-and-clients/run-a-node/). ## Prérequis {#prerequisites} -Il peut être utile de comprendre non seulement en quoi consiste JavaScript, mais aussi la [pile Ethereum](/developers/docs/ethereum-stack/) et les [clients Ethereum](/developers/docs/nodes-and-clients/). +En plus de comprendre JavaScript, il peut être utile de comprendre la [pile Ethereum](/developers/docs/ethereum-stack/) et les [clients Ethereum](/developers/docs/nodes-and-clients/). ## Pourquoi utiliser une bibliothèque ? {#why-use-a-library} -Ces bibliothèques suppriment une grande partie de la complexité d'une interaction directe avec un nœud Ethereum. Elles fournissent également des fonctions utilitaires (par ex. convertir des ETH en gwei) afin que vous puissiez, en tant que développeur, passer moins de temps à gérer les subtilités des clients Ethereum et plus de temps à vous consacrer aux fonctionnalités uniques de votre application. +Ces bibliothèques suppriment une grande partie de la complexité d'une interaction directe avec un nœud Ethereum. Elles fournissent également des fonctions utilitaires (par ex. la conversion d'ETH en Gwei) afin que, en tant que développeur, vous puissiez passer moins de temps à gérer les subtilités des clients Ethereum et plus de temps à vous concentrer sur les fonctionnalités uniques de votre application. -## Fonctionnalités d'une bibliothèque {#library-features} +## Fonctionnalités de la bibliothèque {#library-features} -### Se connecter à des nœud Ethereum {#connect-to-ethereum-nodes} +### Se connecter aux nœuds Ethereum {#connect-to-ethereum-nodes} En utilisant des fournisseurs, les bibliothèques vous permettent de vous connecter à Ethereum et de lire ses données, que ce soit sur JSON-RPC, INFURA, Etherscan, Alchemy ou Metamask. +> **Avertissement :** Web3.js a été archivé le 4 mars 2025. [Lire l'annonce](https://blog.chainsafe.io/web3-js-sunset/) Envisagez d'utiliser des bibliothèques alternatives comme [ethers.js](https://ethers.org) ou [viem](https://viem.sh) pour les nouveaux projets. + **Exemple Ether** ```js -// Un BrowserProvider enveloppe un fournisseur Web3 standard, qui est -// ce que MetaMask injecte comme window.ethereum dans chaque page. -const provider = new ethers.providers.BrowserProvider (window.ethereum) +// Un BrowserProvider encapsule un fournisseur Web3 standard, qui est +// ce que MetaMask injecte en tant que window.ethereum dans chaque page +const provider = new ethers.BrowserProvider(window.ethereum) // Le plugin MetaMask permet également de signer des transactions pour -// envoyer de l'ether et payer pour changer l'état de la blockchain. +// envoyer de l'éther et payer pour changer l'état au sein de la blockchain. // Pour cela, nous avons besoin du signataire du compte... const signer = provider.getSigner() ``` @@ -68,41 +70,41 @@ Une fois la configuration effectuée, vous pourrez interroger la blockchain pour - le gaz estimé ; - les événements du contract intelligent ; - l'ID du réseau ; -- et plus encore... +- Et plus encore... -### Fonctionnalités d'un portefeuille {#wallet-functionality} +### Fonctionnalité du portefeuille {#wallet-functionality} Les bibliothèques vous permettent de créer des portefeuilles, gérer vos clés et signer des transactions. Voici un exemple provenant de la bibliothèque Ethers ```js -// Créer une instance de portefeuille à partir d'un mnémonique... +// Créer une instance de portefeuille à partir d'une phrase mnémonique... mnemonic = "announce room limb pattern dry unit scale effort smooth jazz weasel alcohol" walletMnemonic = Wallet.fromPhrase(mnemonic) -// ...or from a private key +// ...ou à partir d'une clé privée walletPrivateKey = new Wallet(walletMnemonic.privateKey) walletMnemonic.address === walletPrivateKey.address -// true +// vrai -// The address as a Promise per the Signer API +// L'adresse en tant que promesse selon l'API du signataire walletMnemonic.getAddress() // { Promise: '0x71CB05EE1b1F506fF321Da3dac38f25c0c9ce6E1' } -// A Wallet address is also available synchronously +// L'adresse d'un portefeuille est également disponible de manière synchrone walletMnemonic.address // '0x71CB05EE1b1F506fF321Da3dac38f25c0c9ce6E1' -// The internal cryptographic components +// Les composants cryptographiques internes walletMnemonic.privateKey // '0x1da6847600b0ee25e9ad9a52abbd786dd2502fa4005dd5af9310b7cc7a3b25db' walletMnemonic.publicKey // '0x04b9e72dfd423bcf95b3801ac93f4392be5ff22143f9980eb78b3a860c4843bfd04829ae61cdba4b3b1978ac5fc64f5cc2f4350e35a108a9c9a92a81200a60cd64' -// The wallet mnemonic +// La phrase mnémonique du portefeuille walletMnemonic.mnemonic // { // locale: 'en', @@ -110,12 +112,12 @@ walletMnemonic.mnemonic // phrase: 'announce room limb pattern dry unit scale effort smooth jazz weasel alcohol' // } -// Note: A wallet created with a private key does not -// have a mnemonic (the derivation prevents it) +// Remarque : Un portefeuille créé avec une clé privée n'a pas +// de phrase mnémonique (la dérivation l'empêche) walletPrivateKey.mnemonic -// null +// nul -// Signing a message +// Signer un message walletMnemonic.signMessage("Hello World") // { Promise: '0x14280e5885a19f60e536de50097e96e3738c7acae4e9e62d67272d794b8127d31c03d9cd59781d4ee31fb4e1b893bd9b020ec67dfa65cfb51e2bdadbb1de26d91c' } @@ -124,34 +126,34 @@ tx = { value: utils.parseEther("1.0"), } -// Signing a transaction +// Signer une transaction walletMnemonic.signTransaction(tx) // { Promise: '0xf865808080948ba1f109551bd432803012645ac136ddd64dba72880de0b6b3a7640000801ca0918e294306d177ab7bd664f5e141436563854ebe0a3e523b9690b4922bbb52b8a01181612cec9c431c4257a79b8c9f0c980a2c49bb5a0e6ac52949163eeb565dfc' } -// The connect method returns a new instance of the -// Wallet connected to a provider +// La méthode connect renvoie une nouvelle instance du +// portefeuille connecté à un fournisseur wallet = walletMnemonic.connect(provider) -// Querying the network +// Interroger le réseau wallet.getBalance() // { Promise: { BigNumber: "42" } } wallet.getTransactionCount() // { Promise: 0 } -// Sending ether +// Envoyer de l'éther wallet.sendTransaction(tx) ``` -[Lire les documents complets](https://docs.ethers.io/v5/api/signer/#Wallet) +[Lire la documentation complète](https://docs.ethers.io/v5/api/signer/#Wallet) Une fois la configuration effectuée, vous pourrez : - créer un compte ; - envoyer des transactions ; - signer des transactions ; -- et plus encore... +- Et plus encore... -### Interagir avec les fonctions d'un contrat intelligent {#interact-with-smart-contract-functions} +### Interagir avec les fonctions de contrats intelligents {#interact-with-smart-contract-functions} Les bibliothèques clientes JavaScript autorisent votre application à appeler des fonctions de contrat intelligent en lisant l'interface binaire d'application (ABI) d'un contrat compilé. @@ -164,7 +166,7 @@ contract Test { uint a; address d = 0x12345678901234567890123456789012; - function Test(uint testInt) { a = testInt;} + constructor(uint testInt) { a = testInt;} event Event(uint indexed b, bytes32 c); @@ -217,7 +219,7 @@ Cela veut dire que vous pouvez : Les fonctions utilitaires vous offrent des raccourcis pour améliorer le développement Ethereum. -Les valeurs ETH sont en wei par défaut. 1 ETH = 1 000 000 000 000 000 000 WEI – ça en fait, des chiffres à gérer ! `web3.utils.toWei` convertit l'ether en wei pour vous. +Les valeurs ETH sont en wei par défaut. 1 ETH = 1 000 000 000 000 000 000 WEI – ça en fait, des chiffres à gérer ! `web3.utils.toWei` convertit l'ether en Wei pour vous. Et en ethers, cela ressemble à ce qui suit : @@ -232,49 +234,46 @@ ethers.utils.formatEther(balance) // '2.337132817842795605' ``` -- [Fonctions utilitaires Web3js](https://docs.web3js.org/api/web3-utils) -- [Fonctions utilitaires Ethers](https://docs.ethers.io/v5/api/utils/) +- [Fonctions utilitaires de Web3js](https://docs.web3js.org/api/web3-utils) +- [Fonctions utilitaires d'Ethers.js](https://docs.ethers.org/v6/api/utils/) ## Bibliothèques disponibles {#available-libraries} -**Web3.js -** **_Api JavaScript Ethereum _** +**Web3.js –** **_API JavaScript d'Ethereum._** -- [Documentation](https://docs.web3js.org/) -- [GitHub](https://github.com/ethereum/web3.js/) +- [Documentation](https://docs.web3js.org) +- [GitHub](https://github.com/ethereum/web3.js) -**Ethers.js -** **_Implémentation complète d'un portefeuille Ethereum, et utilitaires en JavaScript et TypeScript_** +**Ethers.js –** **_Implémentation complète de portefeuille Ethereum et utilitaires en JavaScript et TypeScript._** -- [Documentation](https://docs.ethers.io/) -- [GitHub](https://github.com/ethers-io/ethers.js/) +- [Accueil d'Ethers.js](https://ethers.org/) +- [Documentation](https://docs.ethers.io) +- [GitHub](https://github.com/ethers-io/ethers.js) -**The Graph -** **_Protocole permettant d'indexer les données Ethereum et IPFS, et d'exécuter des requêtes sur celles-ci en utilisant GraphQL_** +**The Graph –** **_Un protocole pour indexer les données d'Ethereum et d'IPFS et les interroger à l'aide de GraphQL._** -- [The Graph](https://thegraph.com/) -- [Explorateur Graph](https://thegraph.com/explorer/) -- [Documentation](https://thegraph.com/docs/) -- [GitHub](https://github.com/graphprotocol/) +- [The Graph](https://thegraph.com) +- [Explorateur Graph](https://thegraph.com/explorer) +- [Documentation](https://thegraph.com/docs) +- [GitHub](https://github.com/graphprotocol) - [Discord](https://thegraph.com/discord) -**light.js -** **_Bibliothèque JS réactive de haut niveau optimisée pour les clients légers_** - -- [GitHub](https://github.com/openethereum/js-libs/tree/master/packages/light.js) - -**Alchemyweb3 -** **_Enveloppe autour de Web3.js avec nouvelles tentatives automatiques et API améliorées._** +**Alchemy SDK –** **_Wrapper autour d'Ethers.js avec des API améliorées._** -- [Documentation](https://docs.alchemy.com/reference/api-overview) -- [GitHub](https://github.com/alchemyplatform/alchemy-web3) +- [Documentation](https://www.alchemy.com/docs) +- [GitHub](https://github.com/alchemyplatform/alchemy-sdk-js) -**Alchemy NFT API -** **_API pour récupérer les données NFT, y compris la détention, les attributs de métadonnées et plus encore._** - -- [Documentation](https://docs.alchemy.com/alchemy/enhanced-apis/nft-api) -- [GitHub](https://github.com/alchemyplatform/alchemy-web3) - -**viem -** **_Interface TypeScript pour Ethereum._** +**viem –** **_Interface TypeScript pour Ethereum._** - [Documentation](https://viem.sh) - [GitHub](https://github.com/wagmi-dev/viem) -## Complément d'information {#further-reading} +**Drift –** **_Méta-bibliothèque TypeScript avec mise en cache, hooks et mocks de test intégrés._** + +- [Documentation](https://ryangoree.github.io/drift/) +- [GitHub](https://github.com/ryangoree/drift/) + +## En savoir plus {#further-reading} _Une ressource communautaire vous a aidé ? Modifiez cette page et ajoutez-la !_ @@ -285,6 +284,6 @@ _Une ressource communautaire vous a aidé ? Modifiez cette page et ajoutez-la !_ ## Tutoriels connexes {#related-tutorials} -- [Configurer Web3js pour utiliser la blockchain Ethereum avec JavaScript](/developers/tutorials/set-up-web3js-to-use-ethereum-in-javascript/)_ - Instructions pour installer et intégrer Web3js à votre projet_ -- [Appel d'un contrat intelligent à partir de JavaScript](/developers/tutorials/calling-a-smart-contract-from-javascript/) _ - À l'aide du jeton DAI, découvrez comment appeler une fonction de contrat en utilisant JavaScript._ -- [Envoi des transactions en utilisant Web3 et Alchemy](/developers/tutorials/sending-transactions-using-Web3-and-alchemy/) _ - Procédure étape par étape pour envoyer des transactions depuis le backend._ +- [Configurer Web3js pour utiliser la blockchain Ethereum avec JavaScript](/developers/tutorials/set-up-web3js-to-use-ethereum-in-javascript/) _– Instructions pour installer et intégrer web3.js dans votre projet._ +- [Appeler un contrat intelligent depuis JavaScript](/developers/tutorials/calling-a-smart-contract-from-javascript/) _– À l'aide du jeton DAI, découvrez comment appeler des fonctions de contrat en JavaScript._ +- [Envoyer des transactions avec web3 et Alchemy](/developers/tutorials/sending-transactions-using-web3-and-alchemy/) _– Guide pas à pas pour envoyer des transactions depuis le backend._ diff --git a/public/content/translations/fr/developers/docs/apis/json-rpc/index.md b/public/content/translations/fr/developers/docs/apis/json-rpc/index.md index 727b550bb1e..8cf416bd316 100644 --- a/public/content/translations/fr/developers/docs/apis/json-rpc/index.md +++ b/public/content/translations/fr/developers/docs/apis/json-rpc/index.md @@ -1,36 +1,36 @@ --- title: API JSON-RPC -description: Un protocole allégé de procédure à distance (RPC) pour les clients Ethereum. +description: "Un protocole allégé de procédure à distance (RPC) pour les clients Ethereum." lang: fr --- Afin qu'une application logicielle interagisse avec la blockchain Ethereum (en lisant les données de la blockchain ou en envoyant des transactions au réseau), elle doit se connecter à un nœud Ethereum. -À cet effet, chaque [client Ethereum](/developers/docs/nodes-and-clients/#execution-clients) implémente une [spécification JSON-RPC](https://github.com/ethereum/execution-apis), ainsi il existe un ensemble uniforme de méthodes sur lesquelles les applications peuvent s'appuyer en fonction des spécificités du nœud ou de l'implémentation client. +À cette fin, chaque [client Ethereum](/developers/docs/nodes-and-clients/#execution-clients) met en œuvre une [spécification JSON-RPC](https://github.com/ethereum/execution-apis), de sorte qu'il existe un ensemble uniforme de méthodes sur lesquelles les applications peuvent s'appuyer, quelle que soit l'implémentation spécifique du nœud ou du client. -[JSON-RPC](https://www.jsonrpc.org/specification) est un protocole léger de procédure d'appel à distance (RPC). Il définit plusieurs structures de données et les règles entourant leur traitement. C'est un système de transport agnostique en ce sens que les concepts peuvent être utilisés dans le même processus, via les sockets et HTTP, ou dans de nombreux environnements de passage de messages. Il utilise JSON (RFC 4627) comme format de données. +[JSON-RPC](https://www.jsonrpc.org/specification) est un protocole d'appel de procédure à distance (RPC) léger et sans état. Il définit plusieurs structures de données et les règles entourant leur traitement. C'est un système de transport agnostique en ce sens que les concepts peuvent être utilisés dans le même processus, via les sockets et HTTP, ou dans de nombreux environnements de passage de messages. Il utilise JSON (RFC 4627) comme format de données. -## Implémentations de client {#client-implementations} +## Implémentations du client {#client-implementations} -Les clients Ethereum peuvent chacun utiliser différents langages de programmation lors de l'implémentation de la spécification JSON-RPC. Consultez la documentation individuelle [client](/developers/docs/nodes-and-clients/#execution-clients) pour plus de détails concernant des langages de programmation spécifiques. Nous vous recommandons de consulter la documentation de chaque client pour connaître les dernières informations de support de l'API. +Les clients Ethereum peuvent chacun utiliser différents langages de programmation lors de l'implémentation de la spécification JSON-RPC. Consultez la [documentation de chaque client](/developers/docs/nodes-and-clients/#execution-clients) pour plus de détails sur les langages de programmation spécifiques. Nous vous recommandons de consulter la documentation de chaque client pour connaître les dernières informations de support de l'API. -## Bibliothèques pratiques {#convenience-libraries} +## Bibliothèques de commodité {#convenience-libraries} -Bien que vous puissiez choisir d'interagir directement avec les clients Ethereum via l'API JSON-RPC, il y a souvent des options plus faciles pour les développeurs de dapp. De nombreuses librairies [JavaScript](/developers/docs/apis/javascript/#available-libraries) et [backend API](/developers/docs/apis/backend/#available-libraries) existent pour fournir des wrappers sur l'API JSON-RPC. Avec ces bibliothèques, les développeurs peuvent écrire de manières intuitives des méthodes d'une seule ligne pour initialiser les requêtes JSON-RPC (sans avoir besoin d'en voir les détails) qui interagissent avec Ethereum. +Bien que vous puissiez choisir d'interagir directement avec les clients Ethereum via l'API JSON-RPC, il y a souvent des options plus faciles pour les développeurs de dapp. Il existe de nombreuses bibliothèques [JavaScript](/developers/docs/apis/javascript/#available-libraries) et [API backend](/developers/docs/apis/backend/#available-libraries) qui fournissent des wrappers en plus de l'API JSON-RPC. Avec ces bibliothèques, les développeurs peuvent écrire de manières intuitives des méthodes d'une seule ligne pour initialiser les requêtes JSON-RPC (sans avoir besoin d'en voir les détails) qui interagissent avec Ethereum. -## API client de consensus {#consensus-clients} +## API du client de consensus {#consensus-clients} -Cette page traite principalement de l'API JSON-RPC utilisée par les clients d'exécution Ethereum. Cependant, les clients de consensus ont également une API RPC qui permet aux utilisateurs de interroger des informations sur le nœud, demander des blocs de balises, l'état de la balise et d'autres informations liées au consensus directement depuis un nœud. Cette API est documentée sur la [page Web de l'API de la chaîne phare](https://ethereum.github.io/beacon-APIs/#/). +Cette page traite principalement de l'API JSON-RPC utilisée par les clients d'exécution Ethereum. Cependant, les clients de consensus ont également une API RPC qui permet aux utilisateurs de interroger des informations sur le nœud, demander des blocs de balises, l'état de la balise et d'autres informations liées au consensus directement depuis un nœud. Cette API est documentée sur la [page Web de l'API Beacon](https://ethereum.github.io/beacon-APIs/#/). -Une API interne est également utilisée pour la communication entre les clients dans un noeud - c'est-à-dire permet au client de consensus et au client d'exécution d'échanger des données. Cela s'appelle une « API moteur » et les spécifications sont disponibles sur [GitHub](https://github.com/ethereum/execution-apis/blob/main/src/engine/common.md). +Une API interne est également utilisée pour la communication entre les clients dans un noeud - c'est-à-dire permet au client de consensus et au client d'exécution d'échanger des données. C'est ce qu'on appelle l'« API Engine » et les spécifications sont disponibles sur [GitHub](https://github.com/ethereum/execution-apis/blob/main/src/engine/common.md). -## Spécifications de client d'exécution {#spec} +## Spécification du client d'exécution {#spec} -[Lisez la spécification complète de l'API JSON-RPC sur GitHub](https://github.com/ethereum/execution-apis). Cette API est documentée sur la [page web d'exécution API](https://ethereum.github.io/execution-apis/api-documentation/) et comprend un inspecteur pour tester toutes les méthodes disponibles. +[Lisez la spécification complète de l'API JSON-RPC sur GitHub](https://github.com/ethereum/execution-apis). Cette API est documentée sur la [page Web de l'API d'exécution](https://ethereum.github.io/execution-apis/) et comprend un inspecteur pour essayer toutes les méthodes disponibles. ## Conventions {#conventions} -### Encodage hexadécimal {#hex-encoding} +### Encodage des valeurs hexadécimales {#hex-encoding} Deux types de données clés sont passés par JSON : des tableaux d'octets non formatés et des quantités. Les deux sont passés avec un encodage hexadécimal mais avec des formatages différents. @@ -58,9 +58,9 @@ Voici quelques exemples : - FAUX : 0xf0f0f (doit avoir un nombre pair de chiffres) - FAUX : 004200 (doit être préfixé par 0x) -### Le paramètre de bloc par défaut {#default-block} +### Le paramètre de bloc {#block-parameter} -Les méthodes suivantes ont un paramètre de bloc par défaut supplémentaire : +Les méthodes suivantes possèdent un paramètre de bloc : - [eth_getBalance](#eth_getbalance) - [eth_getCode](#eth_getcode) @@ -68,26 +68,27 @@ Les méthodes suivantes ont un paramètre de bloc par défaut supplémentaire : - [eth_getStorageAt](#eth_getstorageat) - [eth_call](#eth_call) -Lorsque des requêtes qui agissent sur l'état d'Ethereum sont exécutées, le dernier paramètre de bloc par défaut détermine la hauteur du bloc. +Lorsqu’une requête interroge l’état d’Ethereum, le paramètre de bloc fourni détermine la hauteur du bloc. -Les options suivantes sont possibles pour le paramètre defaultBlock : +Les options suivantes sont possibles pour le paramètre de bloc : -- `chaîne HEX` - un nombre de bloc entier -- `Chaîne « earliest »` pour le bloc d'origine/le plus ancien -- `String "latest"` - pour le dernier bloc proposé -- `Chaine « latest »` - pour le dernier bloc de tête sûr -- `Chaîne « finalized »` - pour le dernier bloc finalisé -- `Chaîne "pending"` - pour l'état ou les transactions en attente +- `Chaîne HEX` - un numéro de bloc entier +- `Chaîne \"earliest\"` pour le bloc le plus ancien/d'origine +- `Chaîne \"latest\"` - pour le dernier bloc proposé +- `Chaîne \"safe\"` - pour le dernier bloc de tête sûr +- `Chaîne \"finalized\"` - pour le dernier bloc finalisé +- `Chaîne \"pending\"` - pour l'état ou les transactions en attente ## Exemples -Sur cette page, nous fournissons des exemples d'utilisation des points de terminaison individuels de l'API JSON_RPC à l'aide de l'outil de ligne de commande, [curl](https://curl.se). Ces exemples de points de terminaison individuels se trouvent ci-dessous dans la section [Exemples Curl](#curl-examples). Plus bas sur la page, nous fournissons également un [exemple de bout en bout](#usage-example) pour compiler et déployer un contrat intelligent à l'aide d'un nœud Geth, de l'API JSON_RPC et de curl. +Sur cette page, nous fournissons des exemples sur la façon d'utiliser des points de terminaison individuels de l'API JSON-RPC en utilisant l'outil de ligne de commande, [curl](https://curl.se). Ces exemples de points de terminaison individuels se trouvent ci-dessous dans la section [Exemples de Curl](#curl-examples). Plus bas sur la page, nous fournissons également un [exemple de bout en bout](#usage-example) pour compiler et déployer un contrat intelligent en utilisant un nœud Geth, l'API JSON-RPC et curl. ## Exemples de Curl {#curl-examples} -Des exemples d'utilisation de l'API JSON_RPC en effectuant des requêtes [curl](https://curl.se) vers un nœud Ethereum sont fournis ci-dessous. Chaque exemple comprend une description du point de terminaison spécifique, de ses paramètres, du type de retour et un exemple concret de son utilisation. +Des exemples d'utilisation de l'API JSON-RPC en faisant des requêtes [curl](https://curl.se) à un nœud Ethereum sont fournis ci-dessous. Chaque exemple +comprend une description du point de terminaison spécifique, de ses paramètres, du type de retour et un exemple concret de son utilisation. -Les requêtes curl peuvent retourner un message d'erreur relatif au type de contenu. Ceci est dû au fait que l'option `--data` définit le type de contenu à `application/x-www-form-urlencoded`. Si votre nœud se plaint à ce sujet, définissez manuellement l'en-tête en plaçant `-H "Content-Type: application/json"` au début de l'appel. Les exemples ne comprennent pas non plus la combinaison URL/IP & port qui doit être le dernier argument donné à curl ( par exemple : `127.0.0.1:8545`). Une requête curl complète incluant ces données supplémentaires prend la forme suivante : +Les requêtes curl peuvent retourner un message d'erreur relatif au type de contenu. C'est parce que l'option `--data` définit le type de contenu à `application/x-www-form-urlencoded`. Si votre nœud se plaint de cela, définissez manuellement l'en-tête en plaçant `-H \"Content-Type: application/json\"` au début de l'appel. Les exemples n'incluent pas non plus la combinaison URL/IP et port qui doit être le dernier argument donné à curl (par exemple, `127.0.0.1:8545`). Une requête curl complète incluant ces données supplémentaires prend la forme suivante : ```shell curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}' 127.0.0.1:8545 @@ -95,7 +96,7 @@ curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0","metho ## Gossip, État, Historique {#gossip-state-history} -Une poignée de méthodes JSON-RPC de base nécessitent des données du réseau Ethereum, et se classent aisément dans 3 catégories principales : _Gossip, État, Historique_. Utilisez les liens dans ces sections pour passer à chaque méthode, ou utilisez la table des matières pour explorer la liste complète des méthodes. +Une poignée de méthodes JSON-RPC de base nécessitent des données du réseau Ethereum et se classent nettement dans trois catégories principales : _Gossip, État et Historique_. Utilisez les liens dans ces sections pour passer à chaque méthode, ou utilisez la table des matières pour explorer la liste complète des méthodes. ### Méthodes Gossip {#gossip-methods} @@ -134,9 +135,9 @@ Une poignée de méthodes JSON-RPC de base nécessitent des données du réseau ## Terrain de jeu pour l'API JSON-RPC -Vous pouvez utiliser [l'outil de terrain de jeu](https://ethereum-json-rpc.com) pour découvrir et tester les méthodes de l'API. Cela vous montre également quelles méthodes et réseaux sont pris en charge par les différents fournisseurs de nœud. +Vous pouvez utiliser l'[outil de terrain de jeu](https://ethereum-json-rpc.com) pour découvrir et essayer les méthodes de l'API. Cela vous montre également quelles méthodes et réseaux sont pris en charge par les différents fournisseurs de nœud. -## Méthodes API JSON-RPC {#json-rpc-methods} +## Méthodes de l'API JSON-RPC {#json-rpc-methods} ### web3_clientVersion {#web3_clientversion} @@ -146,11 +147,11 @@ Retourne la version courante du client. Aucun -**Valeur de retour** +**Retours** -`String` - La version actuelle du client +`Chaîne` - La version actuelle du client -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -165,26 +166,26 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[], ### web3_sha3 {#web3_sha3} -Retourne le Keccak-256 (_non pas_ le SHA3-256 standard) des données. +Renvoie le Keccak-256 (_pas_ le SHA3-256 normalisé) des données fournies. **Paramètres** -1. `DATA` - Les données à convertir en hachage SHA3 +1. `DONNÉES` - Les données à convertir en hachage SHA3 ```js params: ["0x68656c6c6f20776f726c64"] ``` -**Valeur de retour** +**Retours** -`DATA` - Le résultat SHA3 pour la chaîne donnée. +`DONNÉES` - Le résultat SHA3 de la chaîne donnée. -**Exemple** +\*\*Exemple \*\* ```js -// Request +// Requête curl -X POST --data '{"jsonrpc":"2.0","method":"web3_sha3","params":["0x68656c6c6f20776f726c64"],"id":64}' -// Result +// Résultat { "id":64, "jsonrpc": "2.0", @@ -198,24 +199,24 @@ Retourne l'identifiant du réseau actuel. **Paramètres** -Aucune +Aucun **Retours** -`String` - L'id actuelle du réseau. +`Chaîne` - L'ID de réseau actuel. -La liste complète des identifiants de réseau actuels est disponible à l'adresse suivante : [chainlist.org](https://chainlist.org). Quelques spécifications habituelles sont : +La liste complète des ID de réseau actuels est disponible sur [chainlist.org](https://chainlist.org). Quelques spécifications habituelles sont : -- `1`: réseau principal Ethereum -- `11155111`: Réseau de test Sepolia -- `560048`: Réseau de test Hoodi +- `1` : Réseau principal Ethereum +- `11155111` : Réseau de test Sepolia +- `560048` : Réseau de test Hoodi -**Exemple** +\*\*Exemple \*\* ```js -// Request +// Requête curl -X POST --data '{"jsonrpc":"2.0","method":"net_version","params":[],"id":67}' -// Result +// Résultat { "id":67, "jsonrpc": "2.0", @@ -229,18 +230,18 @@ Retourne `true` si le client écoute activement les connexions réseau. **Paramètres** -Aucune +Aucun **Retours** -`Boolean` - `true` lors de l'écoute, sinon `false`. +`Booléen` - `true` lors de l'écoute, sinon `false`. -**Exemple** +\*\*Exemple \*\* ```js -// Request +// Requête curl -X POST --data '{"jsonrpc":"2.0","method":"net_listening","params":[],"id":67}' -// Result +// Résultat { "id":67, "jsonrpc":"2.0", @@ -254,18 +255,18 @@ Retourne le nombre de pairs actuellement connectés au client. **Paramètres** -Aucune +Aucun **Retours** -`QUANTITY` - nombre entier du nombre de pairs connectés. +`QUANTITÉ` - nombre entier de pairs connectés. -**Exemple** +\*\*Exemple \*\* ```js -// Request +// Requête curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":74}' -// Result +// Résultat { "id":74, "jsonrpc": "2.0", @@ -279,18 +280,18 @@ Retourne la version actuelle du protocole Ethereum. Notez que cette méthode n'e **Paramètres** -Aucune +Aucun **Retours** -`String` - La version actuelle du protocole Ethereum +`Chaîne` - La version actuelle du protocole Ethereum -**Exemple** +\*\*Exemple \*\* ```js -// Request +// Requête curl -X POST --data '{"jsonrpc":"2.0","method":"eth_protocolVersion","params":[],"id":67}' -// Result +// Résultat { "id":67, "jsonrpc": "2.0", @@ -300,21 +301,25 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_protocolVersion","params":[] ### eth_syncing {#eth_syncing} -Renvoie un objet contenant des données sur l'état de la synchronisation ou `false`. +Renvoie un objet avec des données sur l'état de synchronisation ou `false`. + + + Essayer le point de terminaison dans le terrain de jeu + **Paramètres** -Aucune +Aucun **Retours** -Les données précises renvoyées varient entre les différentes implémentations de clients. Tous les clients renvoient `False` lorsque le nœud n'est pas en synchronisation, et tous les clients renvoient les champs suivants. +Les données précises renvoyées varient entre les différentes implémentations de clients. Tous les clients retournent `False` lorsque le nœud n'est pas en cours de synchronisation, et tous les clients retournent les champs suivants. -`Objet|Booléen`, un objet avec des données sur l'état de la synchronisation ou `FALSE`, s'il n'y a pas de synchronisation : +`Objet|Booléen`, un objet avec des données d'état de synchronisation ou `FALSE` lorsque la synchronisation n'a pas lieu : -- `startingBlock`: `QUANTITY` - Le bloc où l'importation a commencé (ne sera remis à zéro que lorsque la synchronisation aura atteint sa tête) -- `currentBlock`: `QUANTITY` - Le bloc actuel, identique à eth_blockNumber -- `highestBlock`: `QUANTITY` - Le bloc estimé le plus élevé +- `startingBlock` : `QUANTITÉ` - le bloc où l'importation a commencé (ne sera réinitialisé qu'une fois que la synchronisation aura atteint sa tête) +- `currentBlock` : `QUANTITÉ` - le bloc actuel, identique à eth_blockNumber +- `highestBlock` : `QUANTITÉ` - le plus haut bloc estimé Cependant, chaque client peut également fournir des données supplémentaires. Par exemple, Geth renvoie les informations suivantes : @@ -359,7 +364,7 @@ Alors que Besu renvoie : Reportez-vous à la documentation de votre client spécifique pour plus de détails. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -386,17 +391,21 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1} Renvoie l'adresse coinbase du client. -> **Note :** Cette méthode est obsolète depuis la version **v1.14.0** et n'est plus prise en charge. Essayer d’utiliser cette méthode entraînera une erreur « Méthode non prise en charge ». + + Essayer le point de terminaison dans le terrain de jeu + + +> **Remarque :** Cette méthode est obsolète depuis la **v1.14.0** et n'est plus prise en charge. Essayer d’utiliser cette méthode entraînera une erreur « Méthode non prise en charge ». **Paramètres** -Aucune +Aucun -**Valeur de retour** +**Retours** -`DATA`, 20 octets - l'adresse actuelle de coinbase. +`DONNÉES`, 20 octets - l'adresse coinbase actuelle. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -413,15 +422,19 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_coinbase","params":[],"id":6 Retourne la chaîne ID utilisée pour la signature d'opérations protégées par la rediffusion. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -Aucune +Aucun -**Valeur de retour** +**Retours** -`chainId`, valeur hexadécimale comme une chaîne représentant le nombre entier de l'id de la chaîne courante. +`chainId`, valeur hexadécimale sous forme de chaîne représentant l'entier de l'ID de la chaîne actuelle. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -436,17 +449,21 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":67 ### eth_mining {#eth_mining} -Retourne `true` si le client est en train de miner activement de nouveaux blocs. Cela ne peut renvoyer que `vrai` pour les réseaux en preuve de travail et peut ne pas être disponible dans certains clients depuis [La Fusion](/roadmap/merge/). +Retourne `true` si le client mine activement de nouveaux blocs. Cela ne peut renvoyer `true` que pour les réseaux à preuve de travail et peut ne pas être disponible dans certains clients depuis [La Fusion](/roadmap/merge/). + + + Essayer le point de terminaison dans le terrain de jeu + **Paramètres** -Aucune +Aucun -**Valeur de retour** +**Retours** -`Boolean` - renvoie `true` du client en train de miner, sinon `false`. +`Booléen` - renvoie `true` si le client mine, sinon `false`. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -461,17 +478,21 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_mining","params":[],"id":71} ### eth_hashrate {#eth_hashrate} -Retourne le nombre de hachages par seconde avec lesquels le nœud est miné. Cela ne peut renvoyer que `vrai` pour les réseaux en preuve de travail et peut ne pas être disponible dans certains clients depuis [La Fusion](/roadmap/merge/). +Retourne le nombre de hachages par seconde avec lesquels le nœud est miné. Cela ne peut renvoyer `true` que pour les réseaux à preuve de travail et peut ne pas être disponible dans certains clients depuis [La Fusion](/roadmap/merge/). + + + Essayer le point de terminaison dans le terrain de jeu + **Paramètres** -Aucune +Aucun -**Valeur de retour** +**Retours** -`QUANTITY` - nombre de hachages par seconde. +`QUANTITÉ` - nombre de hachages par seconde. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -488,15 +509,19 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_hashrate","params":[],"id":7 Retourne une estimation du prix actuel de gaz en wei. Par exemple, le client Besu examine les 100 derniers blocs et renvoie le prix médian du gaz en unité par défaut. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -Aucune +Aucun -**Valeur de retour** +**Retours** -`QUANTITY` - entier du prix actuel du gaz en wei. +`QUANTITÉ` - entier du prix actuel du gaz en wei. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -513,15 +538,19 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":7 Renvoie une liste d'adresses appartenant au client. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -Aucune +Aucun -**Valeur de retour** +**Retours** -`Array of DATA`, 20 octets - adresses appartenant au client. +`Tableau de DONNÉES`, 20 Octets - adresses appartenant au client. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -538,15 +567,19 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_accounts","params":[],"id":1 Renvoie le numéro du bloc le plus récent. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -Aucune +Aucun -**Valeur de retour** +**Retours** -`QUANTITY` - nombre entier du numéro de bloc actuel sur lequel se trouve le client. +`QUANTITÉ` - entier du numéro de bloc actuel sur lequel se trouve le client. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -561,22 +594,26 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id ### eth_getBalance {#eth_getbalance} -Renvoie le solde du compte de l'adresse donnée. +Renvoie le solde du compte à une adresse donnée. + + + Essayer le point de terminaison dans le terrain de jeu + **Paramètres** -1. `DATA`, 20 octets - adresse pour vérifier le solde. -2. `QUANTITY|TAG` - nombre entier d'un numéro de bloc, ou la chaîne `« latest »`, `« earliest »`, `« pending »`, `« safe »`, ou `« finalized »`, voir le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block) +1. `DONNÉES`, 20 octets - adresse pour vérifier le solde. +2. `QUANTITÉ|TAG` - numéro de bloc entier, ou la chaîne `\"latest\"`, `\"earliest\"`, `\"pending\"`, `\"safe\"`, ou `\"finalized\"`, voir le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter) ```js params: ["0x407d73d8a49eeb85d32cf465507dd71d507100c1", "latest"] ``` -**Valeur de retour** +**Retours** -`QUANTITY` - nombre entier du solde actuel en wei. +`QUANTITÉ` - entier du solde actuel en wei. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -593,30 +630,35 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0x407 Renvoie la valeur d'une position de stockage à une adresse donnée. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `DATA`, 20 octets - adresse du stockage. -2. `QUANTITY` - nombre entier de la position dans le stockage. -3. `QUANTITY|TAG` - nombre entier d'un numéro de bloc, ou la chaîne `« latest »`, `« earliest »`, `« pending »`, `« safe »`, ou `« finalized »`, voir le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block) +1. `DONNÉES`, 20 octets - adresse du stockage. +2. `QUANTITÉ` - entier de la position dans le stockage. +3. `QUANTITÉ|TAG` - numéro de bloc entier, ou la chaîne `\"latest\"`, `\"earliest\"`, `\"pending\"`, `\"safe\"`, `\"finalized\"`, voir le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter) -**Valeur de retour** +**Retours** -`DATA` - la valeur à cette position de stockage. +`DONNÉES` - la valeur à cette position de stockage. -**Exemple** Le calcul de la position correcte dépend du stockage à récupérer. Considérons le contrat suivant déployé à `0x295a70b2de5e3953354a6a8344e616ed314d7251` par l'adresse `0x391694e7e0b0cce554cb130d723a9d27458f9298`. +**Exemple** +Le calcul de la position correcte dépend du stockage à récupérer. Considérez le contrat suivant déployé à l'adresse `0x295a70b2de5e3953354a6a8344e616ed314d7251` par l'adresse `0x391694e7e0b0cce554cb130d723a9d27458f9298`. ``` contract Storage { uint pos0; - mapping(address => uint) pos1; - function Storage() { + mapping(adresse => uint) pos1; + constructor() { pos0 = 1234; pos1[msg.sender] = 5678; } } ``` -La récupération de la valeur pos0 est simple : +Récupérer la valeur de pos0 est simple : ```js curl -X POST --data '{"jsonrpc":"2.0", "method": "eth_getStorageAt", "params": ["0x295a70b2de5e3953354a6a8344e616ed314d7251", "0x0", "latest"], "id": 1}' localhost:8545 @@ -658,12 +700,16 @@ curl -X POST --data '{"jsonrpc":"2.0", "method": "eth_getStorageAt", "params": [ ### eth_getTransactionCount {#eth_gettransactioncount} -Renvoie le nombre de transactions _envoyées_ à partir d'une adresse. +Renvoie le nombre de transactions _envoyées_ depuis une adresse. + + + Essayer le point de terminaison dans le terrain de jeu + **Paramètres** -1. `DATA`, 20 octets - adresse. -2. `QUANTITY|TAG` - nombre entier d'un numéro de bloc, ou la chaîne `« latest »`, `« earliest »`, `« pending »`, `« safe »`, ou `« finalized »`, voir le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block) +1. `DONNÉES`, 20 octets - adresse. +2. `QUANTITÉ|TAG` - numéro de bloc entier, ou la chaîne `\"latest\"`, `\"earliest\"`, `\"pending\"`, `\"safe\"` ou `\"finalized\"`, voir le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter) ```js params: [ @@ -672,11 +718,11 @@ params: [ ] ``` -**Valeur de retour** +**Retours** -`QUANTITY` - nombre entier du nombre de transactions envoyées depuis cette adresse. +`QUANTITÉ` - entier du nombre de transactions envoyées depuis cette adresse. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -693,19 +739,23 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionCount","params Renvoie le nombre de transactions dans un bloc à partir d'un bloc correspondant au hachage de bloc donné. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `DATA`, 32 octets - hachage d'un bloc +1. `DONNÉES`, 32 octets - hachage d'un bloc ```js params: ["0xd03ededb7415d22ae8bac30f96b2d1de83119632693b963642318d87d1bece5b"] ``` -**Valeur de retour** +**Retours** -`QUANTITY` - nombre entier du nombre de transactions dans ce bloc. +`QUANTITÉ` - entier du nombre de transactions dans ce bloc. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -722,9 +772,13 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockTransactionCountByHa Renvoie le nombre de transactions dans un bloc correspondant au numéro de bloc donné. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `QUANTITY|TAG` - nombre entier d'un numéro de bloc, ou la chaîne `« latest »`, `« earliest »`, `« pending »`, `« safe »`, ou `« finalized »`, voir le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block). +1. `QUANTITÉ|TAG` - entier d'un numéro de bloc, ou la chaîne `\"earliest\"`, `\"latest\"`, `\"pending\"`, `\"safe\"` ou `\"finalized\"`, comme dans le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter). ```js params: [ @@ -732,11 +786,11 @@ params: [ ] ``` -**Valeur de retour** +**Retours** -`QUANTITY` - nombre entier du nombre de transactions dans ce bloc. +`QUANTITÉ` - entier du nombre de transactions dans ce bloc. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -753,19 +807,23 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockTransactionCountByNu Renvoie le nombre d'oncles dans un bloc à partir d'un bloc correspondant au hachage de bloc donné. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `DATA`, 32 octets - hachage d'un bloc +1. `DONNÉES`, 32 octets - hachage d'un bloc ```js params: ["0x1d59ff54b1eb26b013ce3cb5fc9dab3705b415a67127a003c3e61eb445bb8df2"] ``` -**Valeur de retour** +**Retours** -`QUANTITY` - nombre entier du nombre d'oncles dans ce bloc. +`QUANTITÉ` - entier du nombre d'oncles dans ce bloc. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -782,9 +840,13 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getUncleCountByBlockHash","p Renvoie le nombre d'oncles dans un bloc à partir d'un bloc correspondant au numéro de bloc donné. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `QUANTITY|TAG` - nombre entier d'un numéro de bloc, ou la chaîne `« latest »`, `« earliest »`, `« pending »`, `« safe »`, ou `« finalized »`, voir le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block) +1. `QUANTITÉ|TAG` - entier d'un numéro de bloc, ou la chaîne `\"latest\"`, `\"earliest\"`, `\"pending\"`, `\"safe\"` ou `\"finalized\"`, voir le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter) ```js params: [ @@ -792,11 +854,11 @@ params: [ ] ``` -**Valeur de retour** +**Retours** -`QUANTITY` - nombre entier du nombre d'oncles dans ce bloc. +`QUANTITÉ` - entier du nombre d'oncles dans ce bloc. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -813,10 +875,14 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getUncleCountByBlockNumber", Renvoie le code à une adresse donnée. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `DATA`, 20 octets - adresse -2. `QUANTITY|TAG` - nombre entier d'un numéro de bloc, ou la chaîne `« latest »`, `« earliest »`, `« pending »`, `« safe »`, ou `« finalized »`, voir le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block) +1. `DONNÉES`, 20 octets - adresse +2. `QUANTITÉ|TAG` - numéro de bloc entier, ou la chaîne `\"latest\"`, `\"earliest\"`, `\"pending\"`, `\"safe\"` ou `\"finalized\"`, voir le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter) ```js params: [ @@ -825,11 +891,11 @@ params: [ ] ``` -**Valeur de retour** +**Retours** -`DATA` - le code issu de l'adresse donnée. +`DONNÉES` - le code de l'adresse donnée. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -844,22 +910,22 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getCode","params":["0xC02aaA ### eth_sign {#eth_sign} -La méthode du signe calcule une signature spécifique à Ethereum avec : `sign(keccak256("\x19Message signé Ethereum :\n" + len(message) + message)))`. +La méthode de signature calcule une signature spécifique à Ethereum avec : `sign(keccak256("\x19Ethereum Signed Message:\n" + len(message) + message)))`. -En ajoutant un préfixe au message, la signature calculée peut être reconnue comme une signature spécifique à Ethereum. Cela empêche l'utilisation abusive où une DApp malveillante peut signer des données arbitraires (par exemple une transaction) et utiliser la signature pour usurper l'identité de la victime. +En ajoutant un préfixe au message, la signature calculée peut être reconnue comme une signature spécifique à Ethereum. Cela empêche une utilisation abusive où une dapp malveillante peut signer des données arbitraires (par exemple, une transaction) et utiliser la signature pour usurper l'identité de la victime. Remarque : l'adresse avec laquelle signer doit être déverrouillée. **Paramètres** -1. `DATA`, 20 octets - adresse -2. `DATA`, N octets - message à signer +1. `DONNÉES`, 20 octets - adresse +2. `DONNÉES`, N octets - message à signer -**Valeur de retour** +**Retours** -`DATA` : Signature +`DONNÉES` : Signature -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -874,26 +940,26 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sign","params":["0x9b2055d37 ### eth_signTransaction {#eth_signtransaction} -Signale une transaction qui peut être soumise au réseau plus tard en utilisant [eth_sendRawTransaction](#eth_sendrawtransaction). +Signe une transaction qui pourra être soumise ultérieurement au réseau en utilisant [eth_sendRawTransaction](#eth_sendrawtransaction). **Paramètres** -1. `Object` - L'objet de la transaction +1. `Objet` - L'objet de la transaction -- `type`: -- `from`: `DATA`, 20 octets - L'adresse à partir de laquelle la transaction est envoyée. -- `to`: `DATA`, 20 octets - (optionnel lors de la création d'un nouveau contrat) L'adresse vers laquelle la transaction est orientée. -- `gaz` : `QUANTITY` - (facultatif, par défaut : 90 000) Nombre entier du gaz fourni pour l'exécution de la transaction. Il retournera du gaz inutilisé. -- `gasPrice` : `QUANTITY` - (facultatif, par défaut : To-Be-Determined) Nombre entier du prix du gaz utilisé pour chaque gaz payé, à Wei. -- `value`: `QUANTITY` - (facultatif) Nombre entier de la valeur envoyée avec cette transaction, dans Wei. -- `data` : `DATA` - Le code compilé d'un contrat OU le hachage de la signature de la méthode invoquée et des paramètres encodés. -- `nonce` : `QUANTITY` - (facultatif) Entier d'un nonce. Cela permet d'écraser vos propres transactions en attente qui utilisent le même nonce. +- `type` : +- `from` : `DONNÉES`, 20 octets - L'adresse depuis laquelle la transaction est envoyée. +- `to` : `DONNÉES`, 20 octets - (facultatif lors de la création d'un nouveau contrat) L'adresse à laquelle la transaction est destinée. +- `gas` : `QUANTITÉ` - (facultatif, par défaut : 90000) Entier du gaz fourni pour l'exécution de la transaction. Il retournera du gaz inutilisé. +- `gasPrice` : `QUANTITÉ` - (facultatif, par défaut : à déterminer) Entier du gasPrice utilisé pour chaque gaz payé, en Wei. +- `value` : `QUANTITÉ` - (facultatif) Entier de la valeur envoyée avec cette transaction, en Wei. +- `data` : `DONNÉES` - Le code compilé d'un contrat OU le hachage de la signature de la méthode invoquée et des paramètres encodés. +- `nonce` : `QUANTITÉ` - (facultatif) Entier d'un nonce. Cela permet d'écraser vos propres transactions en attente qui utilisent le même nonce. -**Valeur de retour** +**Retours** -`DATA`, L'objet de transaction encodé en RLP signé par le compte spécifié. +`DONNÉES`, l'objet de transaction encodé en RLP signé par le compte spécifié. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -908,19 +974,19 @@ curl -X POST --data '{"id": 1,"jsonrpc": "2.0","method": "eth_signTransaction"," ### eth_sendTransaction {#eth_sendtransaction} -Crée une nouvelle transaction d'appel ou une création de contrat, si le champ de données contient du code, et la signe en utilisant le compte spécifié dans `from`. +Crée une nouvelle transaction d'appel de message ou une création de contrat, si le champ de données contient du code, et la signe en utilisant le compte spécifié dans `from`. **Paramètres** -1. `Object` - L'objet de la transaction +1. `Objet` - L'objet de la transaction -- `from`: `DATA`, 20 octets - L'adresse à partir de laquelle la transaction est envoyée. -- `to`: `DATA`, 20 octets - (optionnel lors de la création d'un nouveau contrat) L'adresse vers laquelle la transaction est orientée. -- `gaz` : `QUANTITY` - (facultatif, par défaut : 90 000) Nombre entier du gaz fourni pour l'exécution de la transaction. Il retournera du gaz inutilisé. -- `gasPrice` : `QUANTITY` - (facultatif, par défaut : To-Be-Determined) Nombre entier du prix du gaz utilisé pour chaque gaz payé. -- `value` : `QUANTITY` - (facultatif) Nombre entier de la valeur envoyée avec cette transaction. -- `input` : `DATA` - Le code compilé d'un contrat OU le hachage de la signature de la méthode invoquée et des paramètres encodés. -- `nonce` : `QUANTITY` - (facultatif) Entier d'un nonce. Cela permet d'écraser vos propres transactions en attente qui utilisent le même nonce. +- `from` : `DONNÉES`, 20 octets - L'adresse depuis laquelle la transaction est envoyée. +- `to` : `DONNÉES`, 20 octets - (facultatif lors de la création d'un nouveau contrat) L'adresse à laquelle la transaction est destinée. +- `gas` : `QUANTITÉ` - (facultatif, par défaut : 90000) Entier du gaz fourni pour l'exécution de la transaction. Il retournera du gaz inutilisé. +- `gasPrice` : `QUANTITÉ` - (facultatif, par défaut : à déterminer) Entier du gasPrice utilisé pour chaque gaz payé. +- `value` : `QUANTITÉ` - (facultatif) Entier de la valeur envoyée avec cette transaction. +- `input` : `DONNÉES` - Le code compilé d'un contrat OU le hachage de la signature de la méthode invoquée et des paramètres encodés. +- `nonce` : `QUANTITÉ` - (facultatif) Entier d'un nonce. Cela permet d'écraser vos propres transactions en attente qui utilisent le même nonce. ```js params: [ @@ -936,13 +1002,13 @@ params: [ ] ``` -**Valeur de retour** +**Retours** -`DATA`, 32 octets - le hachage de la transaction, ou le hachage zéro si la transaction n'est pas encore disponible. +`DONNÉES`, 32 octets - le hachage de la transaction, ou le hachage zéro si la transaction n'est pas encore disponible. -Utilisez [eth_getTransactionReceipt](#eth_gettransactionreceipt) pour obtenir l'adresse du contrat, après que la transaction a été proposée dans un block, lorsque vous avez créé un contrat. +Utilisez [eth_getTransactionReceipt](#eth_gettransactionreceipt) pour obtenir l'adresse du contrat, une fois que la transaction a été proposée dans un bloc, lorsque vous avez créé un contrat. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -961,7 +1027,7 @@ Crée une nouvelle transaction d'appel de message ou une création de contrat po **Paramètres** -1. `DATA`, Les données de transaction signées. +1. `DONNÉES`, les données de transaction signées. ```js params: [ @@ -969,13 +1035,13 @@ params: [ ] ``` -**Valeur de retour** +**Retours** -`DATA`, 32 octets - le hachage de la transaction, ou le hachage zéro si la transaction n'est pas encore disponible. +`DONNÉES`, 32 octets - le hachage de la transaction, ou le hachage zéro si la transaction n'est pas encore disponible. -Utilisez [eth_getTransactionReceipt](#eth_gettransactionreceipt) pour obtenir l'adresse du contrat, après que la transaction a été proposée dans un block, lorsque vous avez créé un contrat. +Utilisez [eth_getTransactionReceipt](#eth_gettransactionreceipt) pour obtenir l'adresse du contrat, une fois que la transaction a été proposée dans un bloc, lorsque vous avez créé un contrat. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -990,26 +1056,30 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sendRawTransaction","params" ### eth_call {#eth_call} -Exécute un nouvel appel de message immédiatement sans créer de transaction sur la chaîne de blocs. Souvent utilisé pour exécuter des fonctions de contrat intelligent en lecture seule, par exemple le `balanceOf` pour un contrat ERC-20. +Exécute un nouvel appel de message immédiatement sans créer de transaction sur la chaîne de blocs. Souvent utilisé pour exécuter des fonctions de contrat intelligent en lecture seule, par exemple `balanceOf` pour un contrat ERC-20. + + + Essayer le point de terminaison dans le terrain de jeu + **Paramètres** -1. `Object` - L'objet d'appel de transaction +1. `Objet` - L'objet d'appel de transaction -- `from` : `DATA`, 20 octets - (optionnel) - L'adresse à partir de laquelle la transaction est envoyée. -- `to` : `DATA`, 20 octets - L'adresse à laquelle la transaction est orientée. -- `gaz`: `QUANTITY` - (facultatif) Nombre entier du gaz fourni pour l'exécution de la transaction. eth_call consomme zéro gaz, mais ce paramètre peut être nécessaire pour certaines exécutions. -- `gasPrice` : `QUANTITY` - (facultatif) Nombre entier du prix du gaz utilisé pour chaque gaz payé -- `value` : `QUANTITY` - (facultatif) Nombre entier de la valeur envoyée avec cette transaction -- `input` : `DATA` - Hachage (facultatif) de la signature de la méthode et des paramètres encodés. Pour plus de détails, voir [le contrat Ethereum ABI dans la documentation de Solidity](https://docs.soliditylang.org/en/latest/abi-spec.html). +- `from` : `DONNÉES`, 20 octets - (facultatif) L'adresse depuis laquelle la transaction est envoyée. +- `to` : `DONNÉES`, 20 octets - L'adresse à laquelle la transaction est destinée. +- `gas` : `QUANTITÉ` - (facultatif) Entier du gaz fourni pour l'exécution de la transaction. eth_call consomme zéro gaz, mais ce paramètre peut être nécessaire pour certaines exécutions. +- `gasPrice` : `QUANTITÉ` - (facultatif) Entier du gasPrice utilisé pour chaque gaz payé +- `value` : `QUANTITÉ` - (facultatif) Entier de la valeur envoyée avec cette transaction +- `input` : `DONNÉES` - (facultatif) Hachage de la signature de la méthode et des paramètres encodés. Pour plus de détails, voir l'[ABI du contrat Ethereum dans la documentation de Solidity](https://docs.soliditylang.org/en/latest/abi-spec.html). -2. `QUANTITY|TAG` - nombre entier d'un numéro de bloc, ou la chaîne `« latest »`, `« earliest »`, `« pending »`, `« safe »`, ou `« finalized »`, voir le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block) +2. `QUANTITÉ|TAG` - numéro de bloc entier, ou la chaîne `\"latest\"`, `\"earliest\"`, `\"pending\"`, `\"safe\"` ou `\"finalized\"`, voir le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter) -**Valeur de retour** +**Retours** -`DATA` - la valeur de retour du contrat exécuté. +`DONNÉES` - la valeur de retour du contrat exécuté. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1026,15 +1096,19 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_call","params":[{see above}] Génère et retourne une estimation de la quantité de gaz nécessaire à la réalisation de la transaction. La transaction ne sera pas ajoutée à la blockchain. Notez que l'estimation peut être beaucoup plus grande que la quantité de gaz réellement utilisée par la transaction, pour diverses raisons, y compris la mécanique EVM et la performance des nœuds. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -Voir les paramètres de [eth_call](#eth_call) , hormis le fait que toutes les propriétés sont facultatives. Si aucune limite de gaz n'est spécifiée, geth utilise la limite de gaz du bloc en attente comme une limite supérieure. En conséquence, l'estimation retournée pourrait ne pas suffire à exécuter l'appel/la transaction lorsque la quantité de gaz est supérieure à la limite de gaz bloc en attente. +Voir les paramètres de [eth_call](#eth_call), sauf que toutes les propriétés sont facultatives. Si aucune limite de gaz n'est spécifiée, geth utilise la limite de gaz du bloc en attente comme une limite supérieure. Par conséquent, l'estimation retournée peut ne pas être suffisante pour exécuter l'appel/la transaction lorsque la quantité de gaz est supérieure à la limite de gaz du bloc en attente. -**Valeur de retour** +**Retours** -`QUANTITY` - la quantité de gaz utilisée. +`QUANTITÉ` - la quantité de gaz utilisée. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1051,10 +1125,14 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_estimateGas","params":[{see Retourne des informations à propos d'un bloc par hachage. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `DATA`, 32 octets - Hachage d'un bloc. -2. `Boolean` - Si `true` il retourne les objets de transaction complets, si `false` seulement les hachages des transactions. +1. `DONNÉES`, 32 octets - Hachage d'un bloc. +2. `Booléen` - Si `true`, il renvoie les objets de transaction complets, si `false`, seulement les hachages des transactions. ```js params: [ @@ -1063,41 +1141,40 @@ params: [ ] ``` -**Valeur de retour** - -`Object` - Un objet bloc, ou `null` quand aucun bloc n'a été trouvé : - -- `number` : `QUANTITY` - le numéro du bloc. `null` quand son bloc est en attente. -- `hash` : `DATA`, 32 octets - hachage du bloc. `null` quand son bloc est en attente. -- `parentHash` : `DATA`, 32 octets - hachage du bloc parent. -- `nonce` : `DATA`, 8 octets - hachage de la preuve de travail générée. `null` quand son bloc est en attente. -- `sha3Uncles` : `DATA`, 32 octets - SHA3 des oncles données dans le bloc. -- `logsBloom` : `DATA`, 256 octets - le filtre bloom pour les logs du bloc. `null` quand son bloc est en attente. -- `transactionsRoot` : `DATA`, 32 octets - la racine de la tentative de transaction du bloc. -- `stateRoot` : `DATA`, 32 octets - la racine de l'état final du bloc. -- `receiptsRoot` : `DATA`, 32 octets - la racine de la tentative de réception du bloc. -- `miner` : `DATA`, 20 octets - l'adresse du bénéficiaire auquel les récompenses minières ont été données. -- `difficulty` : `QUANTITY` - entier de la difficulté pour ce bloc. -- `totalDifficulty` : `QUANTITY` - entier de la difficulté globale de la chaîne jusqu'à ce bloc. -- `extraData` : `DATA` - le champ « données supplémentaires » de ce bloc. -- `size` : `QUANTITY` - entier de la taille de ce bloc en octets. -- `gasLimit` : `QUANTITY` - le gaz maximum autorisé dans ce bloc. -- `gasUsed`: `QUANTITY` - le total utilisé par toutes les transactions de ce bloc. -- `timestamp`: `QUANTITY` - l'horodatage unix pour le moment où le bloc a été assemblé. -- `transactions`: `Array` - Tableau d'objets de transaction, ou hachage de transaction 32 octets dépendant du dernier paramètre donné. -- `uncles`: `Array` - Tableau de hachages d'oncle. - -**Exemple** +**Retours** -```js -// Request +`Objet` - un objet de bloc, ou `null` si aucun bloc n'a été trouvé : + +- `number` : `QUANTITÉ` - le numéro du bloc. `null` quand il s'agit d'un bloc en attente. +- `hash` : `DONNÉES`, 32 octets - hachage du bloc. `null` quand il s'agit d'un bloc en attente. +- `parentHash` : `DONNÉES`, 32 octets - hachage du bloc parent. +- `nonce` : `DONNÉES`, 8 octets - hachage de la preuve de travail générée. `null` lorsqu'il s'agit d'un bloc en attente, `0x0` pour les blocs à preuve d'enjeu (depuis La Fusion) +- `sha3Uncles` : `DONNÉES`, 32 octets - SHA3 des données des oncles dans le bloc. +- `logsBloom` : `DONNÉES`, 256 octets - le filtre de bloom pour les journaux du bloc. `null` quand il s'agit d'un bloc en attente. +- `transactionsRoot` : `DONNÉES`, 32 octets - la racine du trie de transactions du bloc. +- `stateRoot` : `DONNÉES`, 32 octets - la racine du trie d'état final du bloc. +- `receiptsRoot` : `DONNÉES`, 32 octets - la racine du trie de reçus du bloc. +- `miner` : `DONNÉES`, 20 octets - l'adresse du bénéficiaire à qui les récompenses de bloc ont été données. +- `difficulty` : `QUANTITÉ` - entier de la difficulté pour ce bloc. +- `totalDifficulty` : `QUANTITÉ` - entier de la difficulté totale de la chaîne jusqu'à ce bloc. +- `extraData` : `DONNÉES` - le champ « données supplémentaires » de ce bloc. +- `size` : `QUANTITÉ` - entier de la taille de ce bloc en octets. +- `gasLimit` : `QUANTITÉ` - le gaz maximum autorisé dans ce bloc. +- `gasUsed` : `QUANTITÉ` - le gaz total utilisé par toutes les transactions dans ce bloc. +- `timestamp` : `QUANTITÉ` - l'horodatage unix du moment où le bloc a été assemblé. +- `transactions` : `Tableau` - Tableau d'objets de transaction, ou hachages de transaction de 32 octets en fonction du dernier paramètre donné. +- `uncles` : `Tableau` - Tableau de hachages d'oncles. + +\*\*Exemple \*\* + +```js +// Requête curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockByHash","params":["0xdc0818cf78f21a8e70579cb46a43643f78291264dda342ae31049421c82d21ae", false],"id":1}' -// Result +// Résultat { -{ -"jsonrpc": "2.0", -"id": 1, -"result": { + "jsonrpc": "2.0", + "id": 1, + "result": { "difficulty": "0x4ea3f27bc", "extraData": "0x476574682f4c5649562f76312e302e302f6c696e75782f676f312e342e32", "gasLimit": "0x1388", @@ -1120,7 +1197,7 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockByHash","params":["0 "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", "uncles": [ ] -} + } } ``` @@ -1128,10 +1205,14 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockByHash","params":["0 Renvoie des informations sur un bloc par numéro de bloc. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `QUANTITY|TAG` - nombre entier d'un numéro de bloc, ou la chaîne `« latest »`, `« earliest »`, `« pending »`, `« safe »`, ou `« finalized »`, voir le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block). -2. `Boolean` - Si `true` il retourne les objets de transaction complètes, si `false` seulement les hachages des transactions. +1. `QUANTITÉ|TAG` - entier d'un numéro de bloc, ou la chaîne `\"earliest\"`, `\"latest\"`, `\"pending\"`, `\"safe\"` ou `\"finalized\"`, comme dans le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter). +2. `Booléen` - Si `true`, il renvoie les objets de transaction complets, si `false`, seulement les hachages des transactions. ```js params: [ @@ -1140,9 +1221,10 @@ params: [ ] ``` -**Retourne** Voir [eth_getBlockByHash](#eth_getblockbyhash) +**Retours** +Voir [eth_getBlockByHash](#eth_getblockbyhash) -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1155,34 +1237,38 @@ Résultat voir [eth_getBlockByHash](#eth_getblockbyhash) Retourne les informations sur une transaction demandée par le hachage de la transaction. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `DATA`, 32 octets - hachage d'une transaction +1. `DONNÉES`, 32 octets - hachage d'une transaction ```js params: ["0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b"] ``` -**Valeur de retour** +**Retours** -`Object` - Un objet de transaction, ou `null` quand aucune transaction n'a été trouvée : +`Objet` - un objet de transaction, ou `null` si aucune transaction n'a été trouvée : -- `blockHash`: `DATA`, 32 octets - hachage du bloc dans lequel se trouvait cette transaction. `null` lors de son attente. -- `blockNumber`: `QUANTITY` - numéro de bloc où se trouvait cette transaction. `null` lors de son attente. -- `from`: `DATA`, 20 octets - adresse de l'expéditeur. -- `gas`: `QUANTITY` - gaz fourni par l'expéditeur. -- `gasPrice`: `QUANTITY` - prix du gaz fourni par l'expéditeur en Wei. -- `hash`: `DATA`, 32 octets - hachage de la transaction. -- `input`: `DATA` - les données envoyées avec la transaction. -- `nonce`: `QUANTITY` - le nombre de transactions effectuées par l'expéditeur avant celle-ci. -- `to`: `DATA`, 20 octets - adresse du destinataire. `null` lors d'une transaction de création de contrat. -- `transactionIndex`: `QUANTITY` - nombre entier de la position de l'indice des transactions dans le bloc. `null` lors de son attente. -- `valeur`: `QUANTITY` - valeur transférée dans Wei. -- `v`: `QUANTITY` - Identifiant de récupération ECDSA -- `r`: `QUANTITY` - Signature ECDSA r -- `s`: `QUANTITY` - Signature ECDSA s +- `blockHash` : `DONNÉES`, 32 octets - hachage du bloc dans lequel se trouvait cette transaction. `null` lorsqu'elle est en attente. +- `blockNumber` : `QUANTITÉ` - numéro de bloc où se trouvait cette transaction. `null` lorsqu'elle est en attente. +- `from` : `DONNÉES`, 20 octets - adresse de l'expéditeur. +- `gas` : `QUANTITÉ` - gaz fourni par l'expéditeur. +- `gasPrice` : `QUANTITÉ` - prix du gaz fourni par l'expéditeur en Wei. +- `hash` : `DONNÉES`, 32 octets - hachage de la transaction. +- `input` : `DONNÉES` - les données envoyées avec la transaction. +- `nonce` : `QUANTITÉ` - le nombre de transactions effectuées par l'expéditeur avant celle-ci. +- `to` : `DONNÉES`, 20 octets - adresse du destinataire. `null` lorsqu'il s'agit d'une transaction de création de contrat. +- `transactionIndex` : `QUANTITÉ` - entier de la position de l'index des transactions dans le bloc. `null` lorsqu'elle est en attente. +- `value` : `QUANTITÉ` - valeur transférée en Wei. +- `v` : `QUANTITÉ` - ID de récupération ECDSA +- `r` : `QUANTITÉ` - signature ECDSA r +- `s` : `QUANTITÉ` - signature ECDSA s -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1214,10 +1300,14 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionByHash","param Retourne des informations sur une transaction par hachage de bloc et la position de l'indice de transaction. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `DATA`, 32 octets - hachage d'un bloc. -2. `QUANTITY` - nombre entier de la position de l'indice de transaction. +1. `DONNÉES`, 32 octets - hachage d'un bloc. +2. `QUANTITÉ` - entier de la position de l'index de transaction. ```js params: [ @@ -1226,9 +1316,10 @@ params: [ ] ``` -**Retourne** Voir [eth_getTransactionByHash](#eth_gettransactionbyhash) +**Retours** +Voir [eth_getTransactionByHash](#eth_gettransactionbyhash) -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1241,10 +1332,14 @@ Résultat voir [eth_getTransactionByHash](#eth_gettransactionbyhash) Retourne des informations sur une transaction par numéro de bloc et la position de l'indice de transaction. + + Essayer le point de terminaison dans le terrain de jeu + + **Paramètres** -1. `QUANTITY|TAG` - un numéro de bloc, ou la chaîne `« earliest »`, `« latest »`, `« pending »`, `« safe »`, ou `« finalized »`, comme dans le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block). -2. `QUANTITY` - position de l'indice de transaction. +1. `QUANTITÉ|TAG` - un numéro de bloc, ou la chaîne `\"earliest\"`, `\"latest\"`, `\"pending\"`, `\"safe\"` ou `\"finalized\"`, comme dans le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter). +2. `QUANTITÉ` - position de l'indice de transaction. ```js params: [ @@ -1253,12 +1348,13 @@ params: [ ] ``` -**Retourne** Voir [eth_getTransactionByHash](#eth_gettransactionbyhash) +**Retours** +Voir [eth_getTransactionByHash](#eth_gettransactionbyhash) -**Exemple** +\*\*Exemple \*\* ```js -// Request +// Requête curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionByBlockNumberAndIndex","params":["0x9c47cf", "0x24"],"id":1}' ``` @@ -1268,38 +1364,39 @@ Résultat voir [eth_getTransactionByHash](#eth_gettransactionbyhash) Retourne la réception d'une transaction par hachage de la transaction. -**Remarque** que le reçu n'est pas disponible pour les transactions en attente. +**Remarque** Ce reçu n'est pas disponible pour les transactions en attente. **Paramètres** -1. `DATA`, 32 octets - hachage d'une transaction +1. `DONNÉES`, 32 octets - hachage d'une transaction ```js params: ["0x85d995eba9763907fdf35cd2034144dd9d53ce32cbec21349d4b12823c6860c5"] ``` -**Renvoie** `Object` - Un objet de réception de transaction, ou `null` quand aucun reçu n'a été trouvé : +**Retours** +`Objet` - Un objet de reçu de transaction, ou `null` si aucun reçu n'a été trouvé : -- `transactionHash`: `DATA`, 32 octets - hachage de la transaction. -- `transactionIndex`: `QUANTITY` - nombre entier de la position de l'indice des transactions dans le bloc. -- `blockHash`: `DATA`, 32 octets - hachage du bloc dans lequel se trouvait cette transaction. -- `blockNumber`: `QUANTITY` - numéro de bloc où se trouvait cette transaction. -- `from`: `DATA`, 20 octets - adresse de l'expéditeur. -- `to`: `DATA`, 20 octets - adresse du destinataire. null lors d'une transaction de création de contrat. -- `cumulativeGasUsed` : `QUANTITY` - Le montant total de gaz utilisé lorsque cette transaction a été exécutée dans le bloc. -- `effectiveGasPrice` : `QUANTITY` - La somme des frais de base et du pourboire payés par unité de gaz. -- `gasUsed`: `QUANTITY` - La quantité de gaz utilisée par cette transaction spécifique seule. -- `contractAddress`: `DATA`, 20 octets - L'adresse du contrat a été créée, si la transaction était une création de contrat, sinon `null`. -- `logs`: `Tableau` - Tableau d'objets de log, que cette transaction a générés. -- `logsBloom`: `DATA`, 256 octets - Filtre Bloom pour les clients légers pour récupérer rapidement les logs associés. -- `type`: `QUANTITY` - nombre entier du type de transaction, `0x00` pour les transactions héritées, `0x01` pour les types de listes d'accès, `0x02` pour les frais dynamiques. +- `transactionHash ` : `DONNÉES`, 32 octets - hachage de la transaction. +- `transactionIndex` : `QUANTITÉ` - entier de la position de l'index des transactions dans le bloc. +- `blockHash` : `DONNÉES`, 32 octets - hachage du bloc dans lequel se trouvait cette transaction. +- `blockNumber` : `QUANTITÉ` - numéro de bloc où se trouvait cette transaction. +- `from` : `DONNÉES`, 20 octets - adresse de l'expéditeur. +- `to` : `DONNÉES`, 20 octets - adresse du destinataire. null lors d'une transaction de création de contrat. +- `cumulativeGasUsed` : `QUANTITÉ ` - Le montant total de gaz utilisé lorsque cette transaction a été exécutée dans le bloc. +- `effectiveGasPrice` : `QUANTITÉ` - La somme des frais de base et du pourboire payés par unité de gaz. +- `gasUsed ` : `QUANTITÉ ` - La quantité de gaz utilisée par cette transaction spécifique seule. +- `contractAddress ` : `DONNÉES`, 20 octets - L'adresse du contrat créée, si la transaction était une création de contrat, sinon `null`. +- `logs` : `Tableau` - Tableau d'objets de journal que cette transaction a générés. +- `logsBloom` : `DONNÉES`, 256 octets - Filtre de Bloom pour que les clients légers puissent récupérer rapidement les journaux associés. +- `type` : `QUANTITÉ` - entier du type de transaction, `0x0` pour les transactions héritées, `0x1` pour les types de listes d'accès, `0x2` pour les frais dynamiques. -Il renvoie aussi _soit_ : +Il renvoie également _soit_ : -- `root` : `DATA` 32 octets de stateroot post-transaction (avant Byzantium) -- `status`: `QUANTITY` soit `1` (succès) ou `0` (échec) +- `root` : `DONNÉES` 32 octets de la racine de l'état post-transaction (avant Byzance) +- `status` : `QUANTITÉ` soit `1` (succès), soit `0` (échec) -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1333,12 +1430,16 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionReceipt","para ### eth_getUncleByBlockHashAndIndex {#eth_getunclebyblockhashandindex} -Retourne des informations à propos d'un oncle d'un bloc par hachage et position de l'indice. +Renvoie des informations sur un oncle d'un bloc par hachage et position de l'index de l'oncle. + + + Essayer le point de terminaison dans le terrain de jeu + **Paramètres** -1. `DATA`, 32 octets - Le hachage d'un bloc. -2. `QUANTITY` - La position de l'oncle dans l'indice. +1. `DONNÉES`, 32 octets - Le hachage d'un bloc. +2. `QUANTITÉ` - La position de l'indice de l'oncle. ```js params: [ @@ -1347,9 +1448,10 @@ params: [ ] ``` -**Retourne** Voir [eth_getBlockByHash](#eth_getblockbyhash) +**Retours** +Voir [eth_getBlockByHash](#eth_getblockbyhash) -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1358,16 +1460,20 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getUncleByBlockHashAndIndex" Résultat voir [eth_getBlockByHash](#eth_getblockbyhash) -**Remarque** : Un oncle ne contient pas de transactions individuelles. +**Remarque** : un oncle ne contient pas de transactions individuelles. ### eth_getUncleByBlockNumberAndIndex {#eth_getunclebyblocknumberandindex} -Renvoie des informations à propos d'un oncle d'un bloc par nombre et par position de l'indice. +Renvoie des informations sur un oncle d'un bloc par numéro et position de l'index de l'oncle. + + + Essayer le point de terminaison dans le terrain de jeu + **Paramètres** -1. `QUANTITY|TAG` - un numéro de bloc, ou la chaîne `« earliest »`, `« latest »`, `« pending »`, `« safe »`, ou `« finalized »`, comme dans le [paramètre de bloc par défaut](/developers/docs/apis/json-rpc/#default-block). -2. `QUANTITY` - la position de l'oncle dans l'indice. +1. `QUANTITÉ|TAG` - un numéro de bloc, ou la chaîne `\"earliest\"`, `\"latest\"`, `\"pending\"`, `\"safe\"`, `\"finalized\"`, comme dans le [paramètre de bloc](/developers/docs/apis/json-rpc/#block-parameter). +2. `QUANTITÉ` - la position de l'indice de l'oncle. ```js params: [ @@ -1376,11 +1482,12 @@ params: [ ] ``` -**Retourne** Voir [eth_getBlockByHash](#eth_getblockbyhash) +**Retours** +Voir [eth_getBlockByHash](#eth_getblockbyhash) -**Remarque** : Un oncle ne contient pas de transactions individuelles. +**Remarque** : un oncle ne contient pas de transactions individuelles. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1391,23 +1498,25 @@ Résultat voir [eth_getBlockByHash](#eth_getblockbyhash) ### eth_newFilter {#eth_newfilter} -Crée un objet filtre, basé sur les options de filtre, pour avertir lorsque l'état change (logs). Pour vérifier si l'état a changé, appelez [eth_getFilterChanges](#eth_getfilterchanges). +Crée un objet filtre, basé sur les options de filtre, pour avertir lorsque l'état change (logs). +Pour vérifier si l'état a changé, appelez [eth_getFilterChanges](#eth_getfilterchanges). -**Une note sur la spécification des filtres de sujet :** Les sujets sont dépendants de l'ordre. Une transaction avec un journal avec des sujets [A, B] sera mise en correspondance par les filtres de discussion suivants : +**Remarque sur la spécification des filtres de sujets :** +Les sujets dépendent de l'ordre. Une transaction avec un journal avec des sujets [A, B] sera mise en correspondance par les filtres de discussion suivants : -- `[]` « n'importe quoi » -- `[A]`: « A en première position (et n'importe quoi après) » -- `[null, B]` « tout ce qui est en première position ET B en seconde position (et tout ce qui est après) » -- `[A, B]` « A en première position ET B en deuxième position (et tout ce qui suivra) » -- `[[A, B], [A, B]]` « (A OU B) en première position ET (A OU B) en deuxième position (et n'importe quoi après) » +- `[]` « n'importe quoi » +- `[A]` « A en première position (et n'importe quoi après) » +- `[null, B]` « n'importe quoi en première position ET B en deuxième position (et n'importe quoi après) » +- `[A, B]` « A en première position ET B en deuxième position (et n'importe quoi après) » +- `[[A, B], [A, B]]` « (A OU B) en première position ET (A OU B) en deuxième position (et n'importe quoi après) » - **Paramètres** -1. `Object` - Les options de filtre : +1. `Objet` - Les options de filtre : -- `fromBlock`: `QUANTITY|TAG` - (optionnel, par défaut : `« latest »`) nombre entier de blocs, ou `« latest »` pour le dernier bloc proposé, `« safe »` pour le dernier bloc sécurisé, `« finalized »` pour le dernier bloc finalisé, ou `« pending »`, `« earliest »` pour les transactions ne faisant pas encore partie d'un bloc. -- `toBlock`: `QUANTITY|TAG` - (optionnel, par défaut : `« latest »`) nombre entier de blocs, ou `« latest »` pour le dernier bloc proposé, `« safe »` pour le dernier bloc sécurisé, `« finalized »` pour le dernier bloc finalisé, ou `« pending »`, `« earliest »` pour les transactions ne faisant pas encore partie d'un bloc. -- `address`: `DATA|Array`, 20 octets - (facultatif) adresse contractuelle ou une liste d'adresses d'où les logs doivent provenir. -- `topics`: `Array of DATA`, - (facultatif) tableau de 32 bytes `DATA` topics. Les sujets dépendent de l'ordre. Chaque sujet peut également être un tableau de DATA avec des options "ou". +- `fromBlock` : `QUANTITÉ|TAG` - (facultatif, par défaut : `\"latest\"`) Numéro de bloc entier, ou `\"latest\"` pour le dernier bloc proposé, `\"safe\"` pour le dernier bloc sûr, `\"finalized\"` pour le dernier bloc finalisé, ou `\"pending\"`, `\"earliest\"` pour les transactions qui ne sont pas encore dans un bloc. +- `toBlock` : `QUANTITÉ|TAG` - (facultatif, par défaut : `\"latest\"`) Numéro de bloc entier, ou `\"latest\"` pour le dernier bloc proposé, `\"safe\"` pour le dernier bloc sûr, `\"finalized\"` pour le dernier bloc finalisé, ou `\"pending\"`, `\"earliest\"` pour les transactions qui ne sont pas encore dans un bloc. +- `address` : `DONNÉES|Tableau`, 20 octets - (facultatif) Adresse de contrat ou liste d'adresses d'où les journaux doivent provenir. +- `topics` : `Tableau de DONNÉES`, - (facultatif) Tableau de sujets `DONNÉES` de 32 octets. Les sujets dépendent de l'ordre. Chaque sujet peut également être un tableau de DATA avec des options « ou ». ```js params: [ @@ -1427,9 +1536,10 @@ params: [ ] ``` -**Renvoie** `QUANTITY` - Un id de filtre. +**Retours** +`QUANTITÉ` - Un ID de filtre. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1444,13 +1554,16 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_newFilter","params":[{"topic ### eth_newBlockFilter {#eth_newblockfilter} -Crée un filtre dans le nœud, pour avertir lorsqu'un nouveau bloc arrive. Pour vérifier si l'état a changé, appelez [eth_getFilterChanges](#eth_getfilterchanges). +Crée un filtre dans le nœud, pour avertir lorsqu'un nouveau bloc arrive. +Pour vérifier si l'état a changé, appelez [eth_getFilterChanges](#eth_getfilterchanges). -**Paramètres :** Aucun +**Paramètres** +Aucun -**Renvoie** `QUANTITY` - Un id de filtre. +**Retours** +`QUANTITÉ` - Un ID de filtre. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1465,13 +1578,16 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_newBlockFilter","params":[], ### eth_newPendingTransactionFilter {#eth_newpendingtransactionfilter} -Crée un filtre dans le nœud, pour notifier quand de nouvelles transactions en attente arrivent. Pour vérifier si l'état a changé, appelez [eth_getFilterChanges](#eth_getfilterchanges). +Crée un filtre dans le nœud, pour notifier quand de nouvelles transactions en attente arrivent. +Pour vérifier si l'état a changé, appelez [eth_getFilterChanges](#eth_getfilterchanges). -**Paramètres :** Aucun +**Paramètres** +Aucun -**Renvoie** `QUANTITY` - Un id de filtre. +**Retours** +`QUANTITÉ` - Un ID de filtre. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1486,11 +1602,12 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_newPendingTransactionFilter" ### eth_uninstallFilter {#eth_uninstallfilter} -Désinstalle un filtre avec un identifiant donné. Doit toujours être appelé lorsque la montre n'est plus nécessaire. De plus, filtre le délai d'attente quand ils ne sont pas demandés avec [eth_getFilterChanges](#eth_getfilterchanges) pour une période de temps. +Désinstalle un filtre avec un identifiant donné. Doit toujours être appelé lorsque la montre n'est plus nécessaire. +De plus, les filtres expirent lorsqu'ils ne sont pas demandés avec [eth_getFilterChanges](#eth_getfilterchanges) pendant un certain temps. **Paramètres** -1. `QUANTITY` - L'identifiant du filtre. +1. `QUANTITÉ` - L'ID du filtre. ```js params: [ @@ -1498,9 +1615,10 @@ params: [ ] ``` -**Retourne** `Boolean` - `true` si le filtre a été désinstallé avec succès, sinon `false`. +**Retours** +`Booléen` - `true` si le filtre a été désinstallé avec succès, sinon `false`. -**Exemple** +\*\*Exemple \*\* ```js // Request @@ -1519,7 +1637,7 @@ Méthode de vote pour un filtre, qui retourne un tableau de logs qui s'est produ **Paramètres** -1. `QUANTITY` - L'identifiant du filtre. +1. `QUANTITÉ` - l'ID du filtre. ```js params: [ @@ -1527,26 +1645,30 @@ params: [ ] ``` -**Retourne** `Array` - Tableau d'objets de log, ou un tableau vide si rien n'a changé depuis le dernier sondage. +**Retours** +`Tableau` - Tableau d'objets de journal, ou un tableau vide si rien n'a changé depuis le dernier sondage. + +- Pour les filtres créés avec `eth_newBlockFilter`, le retour est un hachage de bloc (`DONNÉES`, 32 octets), par exemple, `[\"0x3454645634534...\"]`. + +- Pour les filtres créés avec `eth_newPendingTransactionFilter`, le retour est un hachage de transaction (`DONNÉES`, 32 octets), par exemple `[\"0x6345343454645...\"]`. + +- Pour les filtres créés avec `eth_newFilter`, les journaux sont des objets avec les paramètres suivants : + - `removed` : `TAG` - `true` lorsque le journal a été supprimé, en raison d'une réorganisation de la chaîne. `false` s'il s'agit d'un journal valide. + - `logIndex` : `QUANTITÉ` - entier de la position de l'index du journal dans le bloc. `null` lorsqu'il s'agit d'un journal en attente. + - `transactionIndex` : `QUANTITÉ` - entier de la position de l'index des transactions à partir de laquelle le journal a été créé. `null` lorsqu'il s'agit d'un journal en attente. + - `transactionHash` : `DONNÉES`, 32 octets - hachage des transactions à partir desquelles ce journal a été créé. `null` lorsqu'il s'agit d'un journal en attente. + - `blockHash` : `DONNÉES`, 32 octets - hachage du bloc dans lequel se trouvait ce journal. `null` lorsqu'elle est en attente. `null` lorsqu'il s'agit d'un journal en attente. + - `blockNumber` : `QUANTITÉ` - le numéro de bloc où se trouvait ce journal. `null` lorsqu'elle est en attente. `null` lorsqu'il s'agit d'un journal en attente. + - `address` : `DONNÉES`, 20 octets - adresse d'où provient ce journal. + - `data` : `DONNÉES` - données de journal non indexées de longueur variable. (En _Solidity_ : zéro ou plusieurs arguments de journal non indexés de 32 octets.) + - `topics` : `Tableau de DONNÉES` - Tableau de 0 à 4 `DONNÉES` de 32 octets d'arguments de journal indexés. (En _Solidity_ : le premier sujet est le _hachage_ de la signature de l'événement (par ex., `Deposit(address,bytes32,uint256)`), sauf si vous avez déclaré l'événement avec le spécificateur `anonymous`.) -- Pour les filtres créés avec `eth_newBlockFilter` le retour constitue des hachages de blocs (`DATA`, 32 octets), par exemple `["0x3454645634534..."]`. -- Pour les filtres créés avec `eth_newPendingTransactionFilter` le retour constitue des hachages de transaction (`DATA`, 32 octets), par exemple `["0x6345343454645..."]`. -- Pour les filtres créés avec `eth_newFilter`, les logs sont des objets avec les paramètres suivants : - - `removed` : `TAG` - `true` lorsque le journal a été supprimé, en raison d'une réorganisation de chaîne. `false` si c'est un journal valide. - - `logIndex`: `QUANTITY` - nombre entier de la position de l'indice des logs dans le bloc. `null` lors de son log en attente. - - `transactionIndex` : `QUANTITY` - nombre entier à partir duquel le log de position de l'indice des transactions a été créé. `null` lors de son log en attente. - - `transactionHash` : `DATA`, 32 octets - hachage des transactions à partir desquelles ce log a été créé. `null` lors de son log en attente. - - `blockHash` : `DATA`, 32 octets - hachage du bloc dans lequel se trouvait ce log. `null` lors de son attente. `null` lors de son log en attente. - - `blockNumber` : `QUANTITY` - le numéro de bloc où se trouvait ce log. `null` lors de son attente. `null` lors de son log en attente. - - `address`: `DATA`, 20 octets - adresse à partir de laquelle ce journal est originaire. - - `data`: `DATA` - contient zéro ou plus de 32 octets d'arguments non indexés du log. - - `topics`: `Array of DATA` - Tableau de 0 à 4 32 octets `DATA` d'arguments de log indexés. (Dans _Solidity_: Le premier sujet est le _hash_ de la signature de l'événement (par ex. `Déposit(adresse,octets32,uint256)`), sauf que vous avez déclaré l'événement avec le `spécificateur anonyme`.) -- **Exemple** +- \*\*Exemple \*\* ```js -// Request +// Requête curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getFilterChanges","params":["0x16"],"id":73}' -// Result +// Résultat { "id":1, "jsonrpc":"2.0", @@ -1571,7 +1693,7 @@ Retourne un tableau de tous les logs correspondant au filtre avec l'identifiant **Paramètres** -1. `QUANTITY` - L'identifiant du filtre. +1. `QUANTITÉ` - L'ID du filtre. ```js params: [ @@ -1579,16 +1701,17 @@ params: [ ] ``` -**Retourne** Voir [eth_getFilterChanges](#eth_getfilterchanges) +**Retours** +Voir [eth_getFilterChanges](#eth_getfilterchanges) -**Exemple** +\*\*Exemple \*\* ```js // Request curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getFilterLogs","params":["0x16"],"id":74}' ``` -Résultats voir [eth_getFilterChanges](#eth_getfilterchanges) +Résultat voir [eth_getFilterChanges](#eth_getfilterchanges) ### eth_getLogs {#eth_getlogs} @@ -1596,13 +1719,13 @@ Retourne un tableau de tous les logs correspondant à un objet filtre donné. **Paramètres** -1. `Object` - Les options de filtre : +1. `Objet` - Les options de filtre : -- `fromBlock`: `QUANTITY|TAG` - (optionnel, par défaut : `« latest »`) nombre entier de blocs, ou `« latest »` pour le dernier bloc proposé, `« safe »` pour le dernier bloc sécurisé, `« finalized »` pour le dernier bloc finalisé, ou `« pending »`, `« earliest »` pour les transactions ne faisant pas encore partie d'un bloc. -- `toBlock`: `QUANTITY|TAG` - (optionnel, par défaut : `« latest »`) nombre entier de blocs, ou `« latest »` pour le dernier bloc proposé, `« safe »` pour le dernier bloc sécurisé, `« finalized »` pour le dernier bloc finalisé, ou `« pending »`, `« earliest »` pour les transactions ne faisant pas encore partie d'un bloc. -- `address`: `DATA|Array`, 20 octets - (facultatif) adresse contractuelle ou une liste d'adresses d'où les logs doivent provenir. -- `topics`: `Array of DATA`, - (facultatif) tableau de 32 bytes `DATA` topics. Les sujets dépendent de l'ordre. Chaque sujet peut également être un tableau de DATA avec des options "ou". -- `blockhash`: `DATA`, 32 octets - (facultatif, **futur**) À l'ajout de EIP-234, `blockHash` sera une nouvelle option de filtre qui restreint les logs retournés au bloc unique avec le hachage de 32 octets `blockHash`. Utiliser `blockHash` est équivalent à `fromBlock` = `toBlock` = le numéro de bloc avec le hachage `blockHash`. Si `blockHash` est présent dans les critères de filtre, alors ni `fromBlock` ni `toBlock` ne sont autorisés. +- `fromBlock` : `QUANTITÉ|TAG` - (facultatif, par défaut : `\"latest\"`) Numéro de bloc entier, ou `\"latest\"` pour le dernier bloc proposé, `\"safe\"` pour le dernier bloc sûr, `\"finalized\"` pour le dernier bloc finalisé, ou `\"pending\"`, `\"earliest\"` pour les transactions qui ne sont pas encore dans un bloc. +- `toBlock` : `QUANTITÉ|TAG` - (facultatif, par défaut : `\"latest\"`) Numéro de bloc entier, ou `\"latest\"` pour le dernier bloc proposé, `\"safe\"` pour le dernier bloc sûr, `\"finalized\"` pour le dernier bloc finalisé, ou `\"pending\"`, `\"earliest\"` pour les transactions qui ne sont pas encore dans un bloc. +- `address` : `DONNÉES|Tableau`, 20 octets - (facultatif) Adresse de contrat ou liste d'adresses d'où les journaux doivent provenir. +- `topics` : `Tableau de DONNÉES`, - (facultatif) Tableau de sujets `DONNÉES` de 32 octets. Les sujets dépendent de l'ordre. Chaque sujet peut également être un tableau de DATA avec des options « ou ». +- `blockHash` : `DONNÉES`, 32 octets - (facultatif, **futur**) Avec l'ajout de l'EIP-234, `blockHash` sera une nouvelle option de filtre qui restreint les journaux retournés au seul bloc avec le hachage de 32 octets `blockHash`. L'utilisation de `blockHash` est équivalente à `fromBlock` = `toBlock` = le numéro de bloc avec le hachage `blockHash`. Si `blockHash` est présent dans les critères de filtre, ni `fromBlock` ni `toBlock` ne sont autorisés. ```js params: [ @@ -1614,24 +1737,25 @@ params: [ ] ``` -**Retourne** Voir [eth_getFilterChanges](#eth_getfilterchanges) +**Retours** +Voir [eth_getFilterChanges](#eth_getfilterchanges) -**Exemple** +\*\*Exemple \*\* ```js // Request curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getLogs","params":[{"topics":["0x000000000000000000000000a94f5374fce5edbc8e2a8697c15331677e6ebf0b"]}],"id":74}' ``` -Résultats voir [eth_getFilterChanges](#eth_getfilterchanges) +Résultat voir [eth_getFilterChanges](#eth_getfilterchanges) ## Exemple d'utilisation {#usage-example} -### Déploiement d'un contrat en utilisant JSON_RPC {#deploying-contract} +### Déploiement d'un contrat à l'aide de JSON-RPC {#deploying-contract} -Cette section comprend une démonstration de la façon de déployer un contrat en utilisant uniquement l'interface RPC. Il existe des voies alternatives pour le déploiement de contrats où cette complexité est abstraite, par exemple, en utilisant des bibliothèques construites au dessus de l'interface RPC comme [web3.js](https://web3js.readthedocs.io/) et [web3.py](https://github.com/ethereum/web3.py). Ces abstractions sont généralement plus faciles à comprendre et moins sujettes aux erreurs, mais il est toujours utile de comprendre ce qui se passe sous le capot. +Cette section comprend une démonstration de la façon de déployer un contrat en utilisant uniquement l'interface RPC. Il existe d'autres moyens de déployer des contrats où cette complexité est abstraite, par exemple, en utilisant des bibliothèques construites sur l'interface RPC telles que [web3.js](https://web3js.readthedocs.io/) et [web3.py](https://github.com/ethereum/web3.py). Ces abstractions sont généralement plus faciles à comprendre et moins sujettes aux erreurs, mais il est toujours utile de comprendre ce qui se passe sous le capot. -Ce qui suit est un contrat intelligent simple appelé `Multiply7` qui sera déployé à l'aide de l'interface JSON-RPC sur un nœud Ethereum. Ce tutoriel suppose que le lecteur exécute déjà un nœud Geth. Plus d'informations sur les nœuds et les clients sont disponibles [ici](/developers/docs/nodes-and-clients/run-a-node). Veuillez vous référer à la documentation de [client](/developers/docs/nodes-and-clients/) individuelle pour voir comment démarrer le JSON-RPC HTTP pour les clients non-Geth. La plupart des clients servent par défaut sur `localhost:8545`. +Ce qui suit est un contrat intelligent simple appelé `Multiply7` qui sera déployé à l'aide de l'interface JSON-RPC sur un nœud Ethereum. Ce tutoriel suppose que le lecteur exécute déjà un nœud Geth. Plus d'informations sur les nœuds et les clients sont disponibles [ici](/developers/docs/nodes-and-clients/run-a-node). Veuillez vous référer à la documentation de chaque [client](/developers/docs/nodes-and-clients/) pour voir comment démarrer le JSON-RPC HTTP pour les clients non-Geth. La plupart des clients servent par défaut sur `localhost:8545`. ```javascript contract Multiply7 { @@ -1649,12 +1773,12 @@ La première chose à faire est de s'assurer que l'interface HTTP RPC est activ geth --http --dev console 2>>geth.log ``` -Cela démarrera l'interface HTTP RPC sur `http://localhost:8545`. +Cela démarrera l'interface RPC HTTP sur `http://localhost:8545`. Nous pouvons vérifier que l'interface est en cours d'exécution en récupérant l'adresse coinbase (en obtenant la première adresse dans le tableau des comptes) et le solde en utilisant [curl](https://curl.se). Veuillez noter que les données contenues dans ces exemples seront différentes sur votre noeud local. Si vous voulez essayer ces commandes, remplacez les paramètres de la requête dans la deuxième requête avec le résultat retourné par la première. ```bash -curl --data '{"jsonrpc":"2.0","method":"eth_accounts","params":[]", "id":1}' -H "Content-Type: application/json" localhost:8545 +curl --data '{"jsonrpc":"2.0","method":"eth_accounts","params":[], "id":1}' -H "Content-Type: application/json" localhost:8545 {"id":1,"jsonrpc":"2.0","result":["0x9b1d35635cc34752ca54713bb99d38614f63c955"]} curl --data '{"jsonrpc":"2.0","method":"eth_getBalance", "params": ["0x9b1d35635cc34752ca54713bb99d38614f63c955", "latest"], "id":2}' -H "Content-Type: application/json" localhost:8545 @@ -1668,9 +1792,9 @@ web3.fromWei("0x1639e49bba16280000", "ether") // "410" ``` -Maintenant que notre chaîne de développement privé a un certain poids, nous pouvons déployer le contrat. La première étape est de compiler le contrat Multiply7 en byte code qui peut être envoyé à l'EVM. Pour installer solc, le compilateur Solidity, suivez la [documentation Solidity](https://docs.soliditylang.org/en/latest/installing-solidity.html). (Vous pouvez utiliser une ancienne version `solc` à des fins de correspondance à [la version du compilateur utilisée pour notre exemple](https://github.com/ethereum/solidity/releases/tag/v0.4.20).) +Maintenant que notre chaîne de développement privé a un certain poids, nous pouvons déployer le contrat. La première étape est de compiler le contrat Multiply7 en byte code qui peut être envoyé à l'EVM. Pour installer solc, le compilateur Solidity, suivez la [documentation Solidity](https://docs.soliditylang.org/en/latest/installing-solidity.html). (Vous voudrez peut-être utiliser une ancienne version de `solc` pour correspondre à [la version du compilateur utilisée pour notre exemple](https://github.com/ethereum/solidity/releases/tag/v0.4.20).) -L'étape suivante est de compiler le contrat Multiply7 en code d'octets qui peut être envoyé à l'EVM. +L'étape suivante consiste à compiler le contrat Multiply7 en code d'octet qui peut être envoyé à l'EVM. ```bash echo 'pragma solidity ^0.4.16; contract Multiply7 { event Print(uint); function multiply(uint input) public returns (uint) { Print(input * 7); return input * 7; } }' | solc --bin @@ -1694,7 +1818,7 @@ curl --data '{"jsonrpc":"2.0","method": "eth_sendTransaction", "params": [{"from {"id":6,"jsonrpc":"2.0","result":"0xe1f3095770633ab2b18081658bad475439f6a08c902d0915903bafff06e6febf"} ``` -La transaction est acceptée par le noeud et un hachage de la transaction est retourné. Ce hachage peut être utilisé pour suivre la transaction. La prochaine étape consiste à déterminer l'adresse où notre contrat est déployé. Chaque transaction exécutée créera un reçu. Ce reçu contient diverses informations sur la transaction telle que le bloc dans lequel la transaction a été incluse et la quantité de gaz utilisée par l'EVM. Si une transaction crée un contrat, elle contiendra également l'adresse du contrat. Nous pouvons récupérer le reçu avec la méthode `eth_getTransactionReceipt` RPC. +La transaction est acceptée par le noeud et un hachage de la transaction est retourné. Ce hachage peut être utilisé pour suivre la transaction. La prochaine étape consiste à déterminer l'adresse où notre contrat est déployé. Chaque transaction exécutée créera un reçu. Ce reçu contient diverses informations sur la transaction telle que le bloc dans lequel la transaction a été incluse et la quantité de gaz utilisée par l'EVM. Si une transaction crée un contrat, elle contiendra également l'adresse du contrat. Nous pouvons récupérer le reçu avec la méthode RPC `eth_getTransactionReceipt`. ```bash curl --data '{"jsonrpc":"2.0","method": "eth_getTransactionReceipt", "params": ["0xe1f3095770633ab2b18081658bad475439f6a08c902d0915903bafff06e6febf"], "id": 7}' -H "Content-Type: application/json" localhost:8545 @@ -1705,9 +1829,9 @@ Notre contrat a été créé sur `0x4d03d617d700cf81935d7f797f4e2ae719648262`. U #### Interagir avec les contrats intelligents {#interacting-with-smart-contract} -Dans cet exemple, nous enverrons une transaction en utilisant `eth_sendTransaction` à la méthode `multiply` du contrat. +Dans cet exemple, nous allons envoyer une transaction en utilisant `eth_sendTransaction` à la méthode `multiply` du contrat. -`eth_sendTransaction` nécessite plusieurs arguments, spécifiquement `from`, `to` et `data`. `From` est l'adresse publique de notre compte et `to` est l'adresse du contrat. L'argument `data` contient une charge utile qui définit quelle méthode doit être appelée et avec quels arguments. C'est ici que [l'ABI (interface binaire de l'application)](https://docs.soliditylang.org/en/latest/abi-spec.html) entre en jeu. L'ABI est un fichier JSON qui définit comment définir et encoder les données pour l'EVM. +`eth_sendTransaction` nécessite plusieurs arguments, en particulier `from`, `to` et `data`. `From` est l'adresse publique de notre compte et `to` est l'adresse du contrat. L'argument `data` contient une charge utile qui définit quelle méthode doit être appelée et avec quels arguments. C'est là que l'[ABI (interface binaire d'application)](https://docs.soliditylang.org/en/latest/abi-spec.html) entre en jeu. L'ABI est un fichier JSON qui définit comment définir et encoder les données pour l'EVM. Les octets de la charge utile définissent quelle méthode dans le contrat est appelée. Il s'agit des 4 premiers octets du hachage de Keccak sur le nom de la fonction et ses types d'arguments, encodés en hexa. La fonction multiplier accepte un uint qui est un alias pour uint256. Cela nous laisse avec : @@ -1718,11 +1842,11 @@ web3.sha3("multiply(uint256)").substring(0, 10) L'étape suivante est d'encoder les arguments. Il n'y a qu'un seul uint256, par exemple, la valeur 6. L'ABI a une section qui spécifie comment encoder les types uint256. -`int: enc(X)` est l'encodage gros-boutiste en complément à deux de X, ajouté sur le côté supérieur (gauche) avec Jeff pour X négatif et avec zéro > octets pour X positif de sorte que la longueur est un multiple de 32 octets. +`int: enc(X)` est l'encodage en complément à deux gros-boutiste de X, complété sur le côté d'ordre supérieur (gauche) avec 0xff pour X négatif et avec des octets nuls pour X positif de sorte que la longueur soit un multiple de 32 octets. Ceci encode en `0000000000000000000000000000000000000000000000000000000000000006`. -La combinaison du sélecteur de fonction et de l'argument encodé sera `0xc6888fa10000000000000000000000000000000000000000000000000000000000000006`. +En combinant le sélecteur de fonction et l'argument encodé, nos données seront `0xc6888fa10000000000000000000000000000000000000000000000000000000000000006`. Cela peut maintenant être envoyé au nœud : @@ -1755,7 +1879,7 @@ Puisqu'une transaction a été envoyée, un hachage de transaction a été retou } ``` -Le reçu contient un journal d'activités. Ce journal a été généré par l'EVM lors de l'exécution de la transaction et est inclus dans le reçu. La fonction `multiply` montre que l'événement `Print` a été levé avec le temps d'entrée 7. Puisque l'argument de l'événement `Print` était un uint256, nous pouvons le décoder selon les règles ABI qui nous laisseront avec la décimale prévue 42. Mis à part les données, il est intéressant de noter que les sujets peuvent être utilisés pour déterminer quel événement a créé le journal : +Le reçu contient un journal d'activités. Ce journal a été généré par l'EVM lors de l'exécution de la transaction et est inclus dans le reçu. La fonction `multiply` montre que l'événement `Print` a été déclenché avec l'entrée fois 7. Puisque l'argument pour l'événement `Print` était un uint256, nous pouvons le décoder selon les règles de l'ABI, ce qui nous donnera la décimale attendue 42. Mis à part les données, il est intéressant de noter que les sujets peuvent être utilisés pour déterminer quel événement a créé le journal : ```javascript web3.sha3("Print(uint256)") @@ -1767,7 +1891,7 @@ Il ne s'agissait que d'une brève introduction à certaines des tâches les plus ## Sujets connexes {#related-topics} - [Spécification JSON-RPC](http://www.jsonrpc.org/specification) -- [ Nœuds et clients](/developers/docs/nodes-and-clients/) +- [Nœuds et clients](/developers/docs/nodes-and-clients/) - [API JavaScript](/developers/docs/apis/javascript/) -- [API back-end](/developers/docs/apis/backend/) +- [API backend](/developers/docs/apis/backend/) - [Clients d'exécution](/developers/docs/nodes-and-clients/#execution-clients) diff --git a/public/content/translations/fr/developers/docs/blocks/index.md b/public/content/translations/fr/developers/docs/blocks/index.md index 0f2746b983a..357fb5a1d3b 100644 --- a/public/content/translations/fr/developers/docs/blocks/index.md +++ b/public/content/translations/fr/developers/docs/blocks/index.md @@ -1,6 +1,6 @@ --- title: Blocs -description: Présentation des blocs de la blockchain Ethereum, leur structure de données, pourquoi ils sont nécessaires et comment ils sont créés. +description: "Présentation des blocs de la blockchain Ethereum, leur structure de données, pourquoi ils sont nécessaires et comment ils sont créés." lang: fr --- @@ -8,13 +8,14 @@ Les blocs sont des lots de transactions avec un hachage du bloc précédent dans ## Prérequis {#prerequisites} -Les blocs sont un sujet très accessible pour les débutants. Mais pour vous aider à mieux comprendre cette page, nous vous recommandons de commencer par lire les pages [Comptes](/developers/docs/accounts/), [Transactions](/developers/docs/transactions/) et [Introduction à Ethereum](/developers/docs/intro-to-ethereum/). +Les blocs sont un sujet très accessible pour les débutants. Mais pour vous aider à mieux comprendre cette page, nous vous recommandons de lire d'abord [Comptes](/developers/docs/accounts/), [Transactions](/developers/docs/transactions/), et notre [introduction à Ethereum](/developers/docs/intro-to-ethereum/). ## Pourquoi les blocs? {#why-blocks} Afin de s'assurer que tous les participants du réseau Ethereum restent synchronisés et s'accordent sur l'historique exacte des transactions, les transactions sont traitées par blocs. Cela signifie que des dizaines (ou centaines) de transactions sont engagées, acceptées et synchronisées en même temps. -![Un schéma montrant la transaction dans un bloc provoquant des changements d'état](./tx-block.png) _Schéma adapté à partir du document [Ethereum EVM illustrated](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ +![Un diagramme montrant une transaction dans un bloc provoquant des changements d'état](./tx-block.png) +_Diagramme adapté de [Ethereum EVM illustrated](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ En espaçant les engagements, nous donnons à tous les participants du serveur assez de temps pour parvenir à un consensus : même si les demande de transaction se présentent des dizaines de fois par seconde, les blocs sont seulement créés et engagés sur Ethereum toutes les douze secondes. @@ -24,39 +25,39 @@ Pour préserver l'historique des transactions, les blocs sont strictement ordonn Une fois qu'un bloc a été lié aux autres blocs par un validateur sélectionné aléatoirement sur le réseau, il est scellé au reste du réseau ; ce bloc ajouté à la chaîne de bloc (blockchain) est lié au précédent, et une copie est transmise à tous les noeuds du réseau, ensuite un autre validateur est sélectionné pour créer le nouveau bloc. Le processus exact d'assemblage de blocs et le processus d'engagement/consensus sont actuellement spécifiés par le protocole de la « preuve d'enjeu » d'Ethereum. -## Protocole de la preuve d'enjeu {#proof-of-work-protocol} +## Protocole de preuve d'enjeu {#proof-of-stake-protocol} La preuve d'enjeu implique les éléments suivants : - La validation des nœuds nécessite de miser 32 ETH dans un contrat de dépôt comme collatéral contre les mauvais comportements. Cela aide à protéger le réseau puisque des activités manifestement malhonnêtes mènent à la destruction de tout ou partie des mises. - Dans chaque créneau (espacés de douze secondes), un validateur est sélectionné aléatoirement pour être le proposant de bloc. Ils regroupent les transactions ensemble, les exécutent et déterminent un nouvel « état ». Ils enveloppent ces informations dans un bloc et les transmettent à d'autres validateurs. -- Les autres validateurs qui entendent parler d'un nouveau bloc exécutent à nouveau les transactions pour s'assurer qu'ils sont d'accord avec le changement proposé d'état global. En supposant que le bloc soit valide, ils l'ajoutent à leur propre base de données. +- Les autres validateurs qui ont connaissance du nouveau bloc réexécutent les transactions pour s'assurer qu'ils sont d'accord avec la modification proposée de l'état global. En supposant que le bloc soit valide, ils l'ajoutent à leur propre base de données. - Si des validateurs entendent parler de deux blocs en conflit pour le même créneau, ils utilisent leur algorithme de choix de fourche pour choisir celui supporté par le plus grand nombre de mise en jeu d'ETH. [En savoir plus sur la preuve d'enjeu](/developers/docs/consensus-mechanisms/pos) -## Que contient un bloc ? {#block-anatomy} +## Que contient un bloc ? Anatomie du bloc {#block-anatomy} Un bloc contient de nombreuses informations. Au plus haut niveau, un bloc contient les champs suivants : | Champ | Description | -|:---------------- |:-------------------------------------------------------------- | -| `Créneau` | le créneau auquel appartient le bloc | +| :--------------- | :------------------------------------------------------------- | +| `créneau` | le créneau auquel appartient le bloc | | `proposer_index` | l'ID du validateur proposant le bloc | | `parent_root` | le hachage du bloc précédent | | `state_root` | le hachage racine de l'objet état | | `présentation` | un objet contenant plusieurs champs, tel que défini ci-dessous | -Le corps `body` du bloc contient plusieurs champs propres : +Le corps `body` du bloc contient plusieurs champs qui lui sont propres : | Champ | Description | -|:-------------------- |:-------------------------------------------------------------------- | +| :------------------- | :------------------------------------------------------------------- | | `randao_reveal` | une valeur utilisée pour sélectionner le prochain proposant de bloc | | `eth1_data` | informations sur le contrat de dépôt | | `graffiti` | données arbitraires utilisées pour étiqueter les blocs | | `proposer_slashings` | liste des validateurs à délester | | `attester_slashings` | liste des validateurs à sanctionner | -| `attestations` | liste des attestations en faveur du bloc actuel | +| `attestations` | liste des attestations effectuées pour les créneaux précédents | | `dépôts` | liste des nouveaux dépôts au contrat de dépôt | | `voluntary_exits` | liste des validateurs quittant le réseau | | `sync_aggregate` | sous-ensemble de validateurs utilisés pour servir les clients légers | @@ -64,48 +65,48 @@ Le corps `body` du bloc contient plusieurs champs propres : Le champ `attestations` contient une liste de toutes les attestations dans le bloc. Les attestations ont leur propre type de données, qui contient plusieurs morceaux de données. Chaque attestation contient : -| Champ | Description | -|:------------------ |:------------------------------------------------------------- | -| `aggregation_bits` | une liste des validateurs ayant participé à cette attestation | -| `données` | un conteneur avec plusieurs sous-champs | -| `signature` | agrégat de signature de tous les validateurs attestant | - -Le champ `data` dans `attestation` contient les éléments suivants : - -| Champ | Description | -|:------------------- |:--------------------------------------------------- | -| `Créneau` | le créneau auquel se rapporte l'attestation | -| `Index` | indices pour les validateurs attestant | -| `beacon_block_root` | le hachage racine du bloc Phare contenant cet objet | -| `source` | le dernier point de contrôle justifié | -| `target` | le dernier bloc limite de l'époque | - -Exécuter les transactions dans `execution_payload` met à jour l'état global. Tous les clients réexécutent les transactions dans le champ `execution_payload` pour s'assurer que le nouvel état corresponde à celui du champ `state_root` du nouveau bloc. C'est ainsi que les clients peuvent dire qu'un nouveau bloc est valide et sûr afin de l'ajouter à leur blockchain. Le `bloc d'exécution` est lui-même un objet doté de plusieurs champs. Il existe également un `execution_payload_header` qui contient des informations sommaires importantes sur les données d'exécution. Ces structures des données sont organisées de la manière suivante : - -`execution_payload_header` contient les champs suivants : - -| Champ | Description | -|:------------------- |:----------------------------------------------------------------------------------- | -| `parent_hash` | hachage du bloc parent | -| `fee_recipient` | adresse du compte pour le paiement des frais de transaction | -| `state_root` | hachage racine pour l'état global après avoir appliqué les changements dans ce bloc | -| `receipts_root` | hachage de la transaction de l'arboresence des reçus | -| `logs_bloom` | structure de données contenant les journaux d'événements | -| `prev_randao` | valeur utilisée dans la sélection aléatoire du validateur | -| `block_number` | le numéro de bloc actuel | -| `gas_limit` | gaz maximum autorisé dans ce bloc | -| `gas_used` | la quantité de gaz réelle utilisée dans ce bloc | -| `horodatage` | la durée du bloc | -| `extra_data` | données supplémentaires arbitraires en octets bruts | -| `base_fee_per_gas` | la valeur des frais de base | -| `block_hash` | hachage du bloc d'exécution | -| `transactions_root` | hachage racine des transactions dans le bloc | -| `withdrawal_root` | hachage racine des retraits dans le bloc | - -`execution_payload` contient lui-même ce qui suit (notez que cela est identique à l'en-tête sauf qu'au lieu du hachage racine des transactions, il inclut la liste réelle des transactions et des informations de retrait) : +| Champ | Description | +| :----------------- | :-------------------------------------------------------------------------- | +| `aggregation_bits` | une liste des validateurs ayant participé à cette attestation | +| `données` | un conteneur avec plusieurs sous-champs | +| `signature` | signature agrégée d'un ensemble de validateurs portant sur la partie `data` | + +Le champ `data` dans l'`attestation` contient les éléments suivants : + +| Champ | Description | +| :------------------ | :------------------------------------------------------------------- | +| `créneau` | le créneau auquel se rapporte l'attestation | +| `index` | indices pour les validateurs attestant | +| `beacon_block_root` | le hachage racine du bloc phare considéré comme la tête de la chaîne | +| `source` | le dernier point de contrôle justifié | +| `target` | le dernier bloc limite de l'époque | + +L'exécution des transactions dans `execution_payload` met à jour l'état global. Tous les clients réexécutent les transactions dans l'`execution_payload` pour s'assurer que le nouvel état corresponde à celui du champ `state_root` du nouveau bloc. C'est ainsi que les clients peuvent dire qu'un nouveau bloc est valide et sûr afin de l'ajouter à leur blockchain. La `charge utile d'exécution` elle-même est un objet avec plusieurs champs. Il existe également un `execution_payload_header` qui contient d'importantes informations récapitulatives sur les données d'exécution. Ces structures des données sont organisées de la manière suivante : + +L'`execution_payload_header` contient les champs suivants : + +| Champ | Description | +| :------------------ | :-------------------------------------------------------------------------------- | +| `parent_hash` | hachage du bloc parent | +| `fee_recipient` | adresse du compte pour le paiement des frais de transaction | +| `state_root` | hachage racine pour l'état global une fois appliqués les changements dans ce bloc | +| `receipts_root` | hachage de la transaction de l'arborescence des reçus | +| `logs_bloom` | structure de données contenant les journaux d'événements | +| `prev_randao` | valeur utilisée dans la sélection aléatoire du validateur | +| `block_number` | le numéro de bloc actuel | +| `gas_limit` | gaz maximum autorisé dans ce bloc | +| `gas_used` | la quantité de gaz réelle utilisée dans ce bloc | +| `timestamp` | le temps de bloc | +| `extra_data` | données supplémentaires arbitraires en octets bruts | +| `base_fee_per_gas` | la valeur des frais de base | +| `block_hash` | hachage du bloc d'exécution | +| `transactions_root` | hachage racine des transactions dans le bloc | +| `withdrawal_root` | hachage racine des retraits dans le bloc | + +L'`execution_payload` lui-même contient ce qui suit (notez que c'est identique à l'en-tête, sauf qu'au lieu du hachage racine des transactions, il inclut la liste réelle des transactions et les informations de retrait) : | Champ | Description | -|:------------------ |:--------------------------------------------------------------------------------- | +| :----------------- | :-------------------------------------------------------------------------------- | | `parent_hash` | hachage du bloc parent | | `fee_recipient` | adresse du compte pour le paiement des frais de transaction | | `state_root` | hachage racine pour l'état global une fois appliqués les changements dans ce bloc | @@ -119,29 +120,29 @@ Exécuter les transactions dans `execution_payload` met à jour l'état global. | `extra_data` | données supplémentaires arbitraires en octets bruts | | `base_fee_per_gas` | la valeur des frais de base | | `block_hash` | hachage du bloc d'exécution | -| `des transactions` | liste des transactions à exécuter | +| `transactions` | liste des transactions à exécuter | | `retraits` | liste des objets de retrait | -La liste `withdrawals` contient les objets `withdrawal` structurée de la façon suivante : +La liste `withdrawals` contient des objets `withdrawal` structurés de la manière suivante : | Champ | Description | -|:---------------- |:---------------------------------- | -| `address` | adresse du compte qui s'est retiré | +| :--------------- | :--------------------------------- | +| `adresse` | adresse du compte qui s'est retiré | | `montant` | montant du retrait | -| `Index` | valeur d'index du retrait | +| `index` | valeur d'index du retrait | | `validatorIndex` | valeur d'index du validateur | -## Durée de blocage {#block-time} +## Temps de bloc {#block-time} Le temps de bloc fait référence au temps qui sépare les blocs. Dans Ethereum, le temps est divisé en unités de douze secondes appelées « créneau ». Pour chaque créneau, un validateur est choisi pour proposer un bloc. Si tous les validateurs sont en ligne et complétement opérationnels, il y aura un bloc dans chaque créneau, ce qui signifie que le temps de bloc est de 12 s. Occasionnellement, des validateurs peuvent être hors-ligne lorsqu'ils sont appelés pour valider un bloc, de sorte que les créneaux peuvent parfois être vide. -Cette implémentation diffère des systèmes fondés sur la preuve de travail (PoW), dans lesquels la génération d'un bloc est une occurrence naturelle, compensée par la difficulté de mining du protocole. Le temps moyen de propagation des blocs d'Ethereum [average block time](https://etherscan.io/chart/blocktime) est l'exemple parfait de l'implementation de la preuve d'enjeu, et donc du passage de la preuve de travail (PoW) à la preuve d'enjeu (PoS), rendu possible grâce à un nouvel ajustement du temps de propagation des blocs, qui est passé à 12 secondes. +Cette implémentation diffère des systèmes fondés sur la preuve de travail (PoW), dans lesquels la génération d'un bloc est une occurrence naturelle, compensée par la difficulté de mining du protocole. Le [temps de bloc moyen](https://etherscan.io/chart/blocktime) d'Ethereum en est un parfait exemple, car il permet de déduire clairement la transition de la preuve de travail à la preuve d'enjeu grâce à la régularité du nouveau temps de bloc de 12 s. -## Taille des blocs {#block-size} +## Taille de bloc {#block-size} Une dernière remarque importante : les blocs eux-mêmes sont limités par la taille. Chaque bloc vise une taille cible de 30 millions de gaz, mais leur taille s'adapte aux exigences du réseau, jusqu'à la limite de 60 millions de gaz (deux fois la taille cible de bloc). La limite de gaz d'un bloc peut être ajustée à la hausse ou à la baisse par un facteur de 1/1024 par rapport à la limite de gaz du bloc précédent. Ainsi, les validateurs peuvent modifier la limite de gaz des blocs par consensus. La quantité totale de gaz dépensée par toutes les transactions dans le bloc doit être inférieure à la limite de gaz du bloc. Ce point est important car il garantit que les blocs ne peuvent pas être arbitrairement grands. Si les blocs pouvaient être arbitrairement grands, les nœuds complets moins performants cesseraient progressivement de suivre le réseau à cause des exigences d'espace et de vitesse. Plus le bloc est grand, plus il faut de puissance de calcul pour traiter la transaction à temps pour le prochain créneau. Il s'agit d'un facteur de centralisation, auquel nous nous opposons en plafonnant la taille des blocs. -## Complément d'information {#further-reading} +## En savoir plus {#further-reading} _Une ressource communautaire vous a aidé ? Modifiez cette page et ajoutez-la !_ diff --git a/public/content/translations/fr/developers/docs/bridges/index.md b/public/content/translations/fr/developers/docs/bridges/index.md index d0c7c2af504..bb5eb5b5067 100644 --- a/public/content/translations/fr/developers/docs/bridges/index.md +++ b/public/content/translations/fr/developers/docs/bridges/index.md @@ -1,12 +1,12 @@ --- title: Passerelles -description: Un aperçu de la passerelle pour les développeurs +description: "Un aperçu de la passerelle pour les développeurs" lang: fr --- -Avec la prolifération des blockchains L1 et des solutions L2 [scaling](/developers/docs/scaling/), aux côtés d'un nombre sans cesse croissant d'applications décentralisées passant d'une chaîne à l'autre, la nécessité de communiquer et de déplacer les actifs d'une chaîne à l'autre est devenue un élément essentiel de l'infrastructure du réseau. Différents types de passerelles existent pour aider à rendre cela possible. +Avec la prolifération des blockchains L1 et des solutions de [mise à l'échelle](/developers/docs/scaling/) L2, ainsi qu'un nombre toujours croissant d'applications décentralisées devenant inter-chaînes, le besoin de communication et de mouvement d'actifs entre les chaînes est devenu une partie essentielle de l'infrastructure du réseau. Différents types de passerelles existent pour aider à rendre cela possible. -## Besoin de passerelles {#need-for-bridges} +## Besoin de ponts {#need-for-bridges} Des ponts existent pour connecter les différentes blockchains. Ils permettent la connectivité et l'interopérabilité entre les blockchains. @@ -14,7 +14,7 @@ Les blockchains existent dans des environnements cloisonnés, ce qui signifie qu Les ponts offrent un moyen pour des environnements isolés de la blockchain de se connecter entre eux. Ils établissent une voie de transport entre les blockchains où les jetons, les messages, les données arbitraires et même les appels de [contrats intelligents](/developers/docs/smart-contracts/) peuvent être transférés d'une chaîne à l'autre. -## Avantages des passerelles {#benefits-of-bridges} +## Avantages des ponts {#benefits-of-bridges} En termes simples, les ponts débloquent de nombreux cas d'utilisation en permettant aux réseaux blockchain d'échanger des données et de déplacer des actifs entre eux. @@ -30,49 +30,49 @@ Pour les développeurs, les ponts activent les éléments suivants : ## Comment fonctionnent les ponts ? {#how-do-bridges-work} -Bien qu'il existe différents [types de modèles de ponts](https://li.fi/knowledge-hub/blockchain-bridges-and-classification/), trois façons de faciliter le transfert inter-chaîne d'actifs se distinguent : +Bien qu'il existe de nombreux [types de conceptions de ponts](https://li.fi/knowledge-hub/blockchain-bridges-and-classification/), trois manières de faciliter le transfert inter-chaînes d'actifs se distinguent : -- **Verrouiller et frapper -** Verrouiller les actifs sur la chaîne source et frapper les actifs sur la chaîne de destination. -- **Brûler et frapper -** Brûler les actifs sur la chaîne source et frapper les actifs sur la chaîne de destination. -- **Échanges atomiques -** Échanger des actifs sur la chaîne source contre des actifs sur la chaîne de destination avec une autre partie. +- **Verrouiller et frapper –** Verrouiller les actifs sur la chaîne source et frapper les actifs sur la chaîne de destination. +- **Brûler et frapper –** Brûler les actifs sur la chaîne source et frapper les actifs sur la chaîne de destination. +- **Échanges atomiques –** Échanger des actifs sur la chaîne source contre des actifs sur la chaîne de destination avec une autre partie. ## Types de ponts {#bridge-types} Les ponts peuvent généralement être classés dans l'un des compartiments suivants : -- **Ponts natifs -** Ces ponts sont généralement construits pour amorcer la liquidité sur une blockchain particulière, ce qui permet aux utilisateurs de transférer plus facilement des fonds vers l'écosystème. Par exemple, l'[Arbitrum Bridge](https://bridge.arbitrum.io/) est conçu pour permettre aux utilisateurs de passer facilement du réseau principal Ethereum à Arbitrum. Parmi les autres ponts de ce type, citons le pont PoS Polygon, [Optimism Gateway](https://app.optimism.io/bridge), etc. -- **Ponts basés sur des validateurs ou des oracles -** Ces ponts s'appuient sur un ensemble de validateurs ou d'oracles externes pour valider les transferts inter-chaînes. Exemples : Multichain et Across. -- **Passerelles généralisées de passage de messages -** Ces passerelles peuvent transférer des actifs, ainsi que des messages et des données arbitraires à travers les chaînes. Exemples : Axelar, LayerZero, et Nomad. -- **Réseaux de liquidité -** Ces ponts se concentrent principalement sur le transfert d'actifs d'une chaîne à une autre via des swaps atomiques. En général, ils ne prennent pas en charge le passage de messages inter-chaînes. Exemples : Connext et Hop. +- **Ponts natifs –** Ces ponts sont généralement construits pour amorcer la liquidité sur une blockchain particulière, ce qui permet aux utilisateurs de transférer plus facilement des fonds vers l'écosystème. Par exemple, le [pont Arbitrum](https://bridge.arbitrum.io/) est conçu pour permettre aux utilisateurs de passer facilement du réseau principal Ethereum à Arbitrum. D'autres ponts de ce type incluent le pont PoS de Polygon, [Optimism Gateway](https://app.optimism.io/bridge), etc. +- **Ponts basés sur un validateur ou un oracle –** Ces ponts s'appuient sur un ensemble de validateurs ou d'oracles externes pour valider les transferts inter-chaînes. Exemples : Multichain et Across. +- **Ponts généralisés de transmission de messages –** Ces ponts peuvent transférer des actifs, ainsi que des messages et des données arbitraires entre les chaînes. Exemples : Axelar, LayerZero, et Nomad. +- **Réseaux de liquidités –** Ces ponts se concentrent principalement sur le transfert d'actifs d'une chaîne à une autre via des échanges atomiques. En général, ils ne prennent pas en charge le passage de messages inter-chaînes. Exemples : Connext et Hop. -## Les compromis à prendre en compte {#trade-offs} +## Compromis à prendre en compte {#trade-offs} Avec les ponts, il n'y a pas de solution parfaite. Au contraire, il n'y a que des compromis faits pour remplir un objectif. Les développeurs et les utilisateurs peuvent évaluer les ponts en fonction des facteurs suivants : -- **Sécurité -** Qui vérifie le système ? Les ponts sécurisés par des validateurs externes sont généralement moins sûrs que les ponts qui sont sécurisés localement ou nativement par les validateurs de la blockchain. -- **Convivialité -** Combien de temps faut-il pour effectuer une transaction, et combien de transactions un utilisateur a-t-il dû signer ? Pour un développeur, combien de temps faut-il pour intégrer un pont, et quelle est la complexité du processus ? -- **Connectivité -** Quelles sont les différentes chaînes de destination qu'un pont peut connecter (c'est-à-dire les rollups, les chaînes latérales, les autres blockchains de couche 1, etc.), et quelle est la difficulté d'intégrer une nouvelle blockchain ? -- **Capacité à transmettre des données plus complexes -** Un pont peut-il permettre le transfert de messages et de données arbitraires plus complexes à travers les chaînes, ou ne prend-il en charge que les transferts d'actifs inter-chaînes ? -- **Coût-efficacité -** Combien cela coûte-t-il de transférer des actifs d'une chaîne à l'autre via un pont ? En général, les ponts facturent une redevance fixe ou variable en fonction du coût du gaz et de la liquidité de certains itinéraires. Il est également essentiel d'évaluer la rentabilité d'un pont en fonction du capital nécessaire pour assurer sa sécurité. +- **Sécurité –** Qui vérifie le système ? Les ponts sécurisés par des validateurs externes sont généralement moins sûrs que les ponts qui sont sécurisés localement ou nativement par les validateurs de la blockchain. +- **Commodité –** Combien de temps faut-il pour finaliser une transaction et combien de transactions un utilisateur doit-il signer ? Pour un développeur, combien de temps faut-il pour intégrer un pont, et quelle est la complexité du processus ? +- **Connectivité –** Quelles sont les différentes chaînes de destination qu'un pont peut connecter (p. ex. rollups, chaînes latérales, autres blockchains de couche 1, etc.) et quel est le degré de difficulté pour intégrer une nouvelle blockchain ? +- **Capacité à transmettre des données plus complexes –** Un pont peut-il permettre le transfert de messages et de données arbitraires plus complexes entre les chaînes, ou ne prend-il en charge que les transferts d'actifs inter-chaînes ? +- **Rentabilité –** Combien coûte le transfert d'actifs entre les chaînes via un pont ? En général, les ponts facturent une redevance fixe ou variable en fonction du coût du gaz et de la liquidité de certains itinéraires. Il est également essentiel d'évaluer la rentabilité d'un pont en fonction du capital nécessaire pour assurer sa sécurité. À un niveau élevé, les ponts peuvent être classés en deux catégories : ceux qui sont fiables et ceux qui ne le sont pas. -- **Trusted -** Les ponts de confiance sont vérifiés de l'extérieur. Ils utilisent un ensemble externe de vérificateurs (fédérations avec multi-sig, systèmes de calcul multi-parties, réseau d'oracles) pour envoyer des données à travers les chaînes. Par conséquent, ils peuvent offrir une grande connectivité et permettre un passage de messages entièrement généralisé à travers les chaînes. Ils ont également tendance à être performants en termes de rapidité et de rentabilité. Cela se fait au détriment de la sécurité, car les utilisateurs doivent s'en remettre à la sécurité du pont. -- **Trustless -** Ces ponts s'appuient sur les blockchains qu'ils connectent et leurs validateurs pour transférer des messages et des jetons. Elles sont « sans confiance » car elles n'ajoutent pas de nouvelles hypothèses de confiance (en plus des blockchains). Par conséquent, les ponts sans confiance sont considérés comme plus sûrs que les ponts avec confiance. +- **De confiance –** Les ponts de confiance sont vérifiés de manière externe. Ils utilisent un ensemble externe de vérificateurs (fédérations avec multi-sig, systèmes de calcul multi-parties, réseau d'oracles) pour envoyer des données à travers les chaînes. Par conséquent, ils peuvent offrir une grande connectivité et permettre un passage de messages entièrement généralisé à travers les chaînes. Ils ont également tendance à être performants en termes de rapidité et de rentabilité. Cela se fait au détriment de la sécurité, car les utilisateurs doivent s'en remettre à la sécurité du pont. +- **Sans confiance –** Ces ponts s'appuient sur les blockchains qu'ils connectent et leurs validateurs pour transférer des messages et des jetons. Elles sont « sans confiance » car elles n'ajoutent pas de nouvelles hypothèses de confiance (en plus des blockchains). Par conséquent, les ponts sans confiance sont considérés comme plus sûrs que les ponts avec confiance. Pour évaluer les ponts sans confiance en fonction d'autres facteurs, nous devons les décomposer en ponts de passage de messages généralisés et en réseaux de liquidité. -- **Ponts généralisés de passage de messages -** Ces ponts excellent en matière de sécurité et de capacité à transférer des données plus complexes à travers les chaînes. En général, ils sont également bons en termes de rentabilité. Cependant, ces points forts se font généralement au détriment de la connectivité pour les ponts de clients légers (ex : IBC) et des inconvénients de vitesse pour les ponts optimistes (ex : Nomad) qui utilisent des preuves de fraude. -- **Réseaux de liquidité -** Ces ponts utilisent des swaps atomiques pour transférer les actifs et sont des systèmes vérifiés localement (c'est-à-dire qu'ils utilisent les validateurs des blockchains sous-jacentes pour vérifier les transactions). Par conséquent, ils excellent en matière de sécurité et de rapidité. En outre, ils sont considérés comme comparativement rentables et offrent une bonne connectivité. Toutefois, le principal inconvénient est leur incapacité à transmettre des données plus complexes, car ils ne prennent pas en charge le passage de messages inter-chaînes. +- **Ponts généralisés de transmission de messages –** Ces ponts excellent en matière de sécurité et par leur capacité à transférer des données plus complexes entre les chaînes. En général, ils sont également bons en termes de rentabilité. Cependant, ces points forts se font généralement au détriment de la connectivité pour les ponts de clients légers (ex : IBC) et des inconvénients de vitesse pour les ponts optimistes (ex : Nomad) qui utilisent des preuves de fraude. +- **Réseaux de liquidités –** Ces ponts utilisent des échanges atomiques pour transférer des actifs et sont des systèmes vérifiés localement (c'est-à-dire qu'ils utilisent les validateurs des blockchains sous-jacentes pour vérifier les transactions). Par conséquent, ils excellent en matière de sécurité et de rapidité. En outre, ils sont considérés comme comparativement rentables et offrent une bonne connectivité. Toutefois, le principal inconvénient est leur incapacité à transmettre des données plus complexes, car ils ne prennent pas en charge le passage de messages inter-chaînes. -## Risque avec les ponts {#risk-with-bridges} +## Risques liés aux ponts {#risk-with-bridges} -Les ponts représentent les trois premiers [plus gros hacks de DeFi](https://rekt.news/leaderboard/) et en sont encore aux premiers stades de développement. L'utilisation de tout pont comporte les risques suivants : +Les ponts sont à l'origine des trois plus [grands piratages de la DeFi](https://rekt.news/leaderboard/) et sont encore à un stade précoce de leur développement. L'utilisation de tout pont comporte les risques suivants : -- **Risque lié aux contrats intelligents -** Alors que de nombreux ponts ont passé avec succès les audits, il suffit d'une faille dans un contrat intelligent pour que les actifs soient exposés à des piratages (ex : [Pont Wormhole de Solana](https://rekt.news/wormhole-rekt/)). -- **Risques financiers systémiques** - De nombreux ponts utilisent des actifs enveloppés pour frapper des versions canoniques de l'actif original sur une nouvelle chaîne. Cela expose l'écosystème à un risque systémique, car nous avons vu des versions enveloppées de jetons exploités. -- **Risque de contrepartie -** Certains ponts utilisent une conception de confiance qui exige que les utilisateurs se fient à l'hypothèse selon laquelle les validateurs ne s'entendront pas pour voler les fonds des utilisateurs. La nécessité pour les utilisateurs de faire confiance à ces acteurs tiers les expose à des risques tels que les rabattements, la censure et d'autres activités malveillantes. -- **Problèmes en suspens -** Étant donné que les ponts en sont aux premiers stades de leur développement, de nombreuses questions restent sans réponse quant à la manière dont les ponts se comporteront dans différentes conditions de marché, comme les périodes de congestion du réseau et lors d'événements imprévus tels que des attaques au niveau du réseau ou des reculs de l'état. Cette incertitude présente certains risques, dont le degré est encore inconnu. +- **Risque lié aux contrats intelligents –** Bien que de nombreux ponts aient passé avec succès des audits, il suffit d'une seule faille dans un contrat intelligent pour que les actifs soient exposés à des piratages (ex. : [le pont Wormhole de Solana](https://rekt.news/wormhole-rekt/)). +- **Risques financiers systémiques –** De nombreux ponts utilisent des actifs enveloppés pour frapper des versions canoniques de l'actif original sur une nouvelle chaîne. Cela expose l'écosystème à un risque systémique, car nous avons vu des versions enveloppées de jetons exploités. +- **Risque de contrepartie –** Certains ponts utilisent une conception de confiance qui exige des utilisateurs qu'ils partent du principe que les validateurs ne s'entendront pas pour voler leurs fonds. La nécessité pour les utilisateurs de faire confiance à ces acteurs tiers les expose à des risques tels que les rabattements, la censure et d'autres activités malveillantes. +- **Questions ouvertes –** Étant donné que les ponts n'en sont qu'aux premiers stades de leur développement, de nombreuses questions restent sans réponse quant à la manière dont ils se comporteront dans différentes conditions de marché, comme les périodes de congestion du réseau et lors d'événements imprévus tels que des attaques au niveau du réseau ou des retours en arrière de l'état. Cette incertitude présente certains risques, dont le degré est encore inconnu. ## Comment les dApps peuvent utiliser les ponts ? {#how-can-dapps-use-bridges} @@ -82,56 +82,57 @@ Voici quelques applications pratiques que les développeurs peuvent envisager à Pour les développeurs, il existe de nombreuses façons d'ajouter la prise en charge des ponts : -1. **Construire son propre pont -** Construire un pont sécurisé et fiable n'est pas chose aisée, surtout si l'on emprunte une voie qui minimise la confiance. En outre, elle exige des années d'expérience et d'expertise technique liées aux études d'évolutivité et d'interopérabilité. En outre, il faudrait une équipe expérimentée pour maintenir un pont et attirer suffisamment de liquidités pour le rendre réalisable. +1. **Construire votre propre pont –** Construire un pont sécurisé et fiable n'est pas chose aisée, surtout si vous empruntez une voie qui minimise la confiance. En outre, elle exige des années d'expérience et d'expertise technique liées aux études d'évolutivité et d'interopérabilité. En outre, il faudrait une équipe expérimentée pour maintenir un pont et attirer suffisamment de liquidités pour le rendre réalisable. -2. **Afficher pour les utilisateurs plusieurs options de pont -** De nombreuses [dApps](/developers/docs/dapps/) exigent que les utilisateurs disposent de leur jeton natif pour interagir avec elles. Pour permettre aux utilisateurs d'accéder à leurs jetons, ils proposent différentes options de pont sur leur site web. Cependant, cette méthode est une solution rapide au problème car elle éloigne l'utilisateur de l'interface de la dApp et l'oblige à interagir avec d'autres dApps et ponts. Il s'agit d'une expérience d'intégration lourde, avec un risque accru de faire des erreurs. +2. **Présenter plusieurs options de pont aux utilisateurs –** De nombreuses [dapps](/developers/docs/dapps/) exigent que les utilisateurs disposent de leur jeton natif pour interagir avec elles. Pour permettre aux utilisateurs d'accéder à leurs jetons, ils proposent différentes options de pont sur leur site web. Cependant, cette méthode est une solution rapide au problème car elle éloigne l'utilisateur de l'interface de la dApp et l'oblige à interagir avec d'autres dApps et ponts. Il s'agit d'une expérience d'intégration lourde, avec un risque accru de faire des erreurs. -3. **Intégration d'un pont -** Cette solution ne nécessite pas que la dApp envoie les utilisateurs vers le pont externe et les interfaces des DEX. Il permet aux dApps d'améliorer l'expérience d'intégration des utilisateurs. Toutefois, cette approche a ses limites : +3. **Intégrer un pont –** Cette solution ne nécessite pas que la dapp envoie les utilisateurs vers le pont externe et les interfaces des DEX. Il permet aux dApps d'améliorer l'expérience d'intégration des utilisateurs. Toutefois, cette approche a ses limites : - L'évaluation et l'entretien des ponts sont difficiles et prennent beaucoup de temps. - La sélection d'un seul pont crée un point unique de défaillance et de dépendance. - La dApp est limitée par les capacités du pont. - Les ponts seuls pourraient ne pas suffire. Les dApps pourraient avoir besoin des DEX pour offrir plus de fonctionnalités telles que les échanges inter-chaînes. -4. **Intégration de plusieurs ponts -** Cette solution résout de nombreux problèmes liés à l'intégration d'un seul pont. Cependant, elle présente également des limites, car l'intégration de plusieurs ponts consomme des ressources et crée des frais généraux techniques et de communication pour les développeurs - la ressource la plus rare dans le domaine de la cryptographie. +4. **Intégrer plusieurs ponts –** Cette solution résout de nombreux problèmes liés à l'intégration d'un seul pont. Cependant, elle présente également des limites, car l'intégration de plusieurs ponts consomme des ressources et crée des frais généraux techniques et de communication pour les développeurs - la ressource la plus rare dans le domaine de la cryptographie. -5. **Intégrer un agrégateur de ponts -** Une autre option pour les dApps consiste à intégrer une solution d'agrégation de ponts qui leur donne accès à plusieurs ponts. Les agrégateurs de ponts héritent des forces de tous les ponts et ne sont donc pas limités par les capacités d'un seul pont. En particulier, les agrégateurs de ponts assurent généralement la maintenance des intégrations de ponts, ce qui évite à la dApp d'avoir à se préoccuper des aspects techniques et opérationnels d'une intégration de pont. +5. **Intégrer un agrégateur de ponts –** Une autre option pour les dapps consiste à intégrer une solution d'agrégation de ponts qui leur donne accès à plusieurs ponts. Les agrégateurs de ponts héritent des forces de tous les ponts et ne sont donc pas limités par les capacités d'un seul pont. En particulier, les agrégateurs de ponts assurent généralement la maintenance des intégrations de ponts, ce qui évite à la dApp d'avoir à se préoccuper des aspects techniques et opérationnels d'une intégration de pont. Cela dit, les agrégateurs de ponts ont aussi leurs limites. Par exemple, s'ils peuvent offrir plus d'options de pont, il existe généralement beaucoup plus de ponts sur le marché que ceux proposés sur la plateforme de l'agrégateur. En outre, tout comme les ponts, les agrégateurs de ponts sont également exposés aux risques liés aux contrats intelligents et à la technologie (plus de contrats intelligents = plus de risques). Si une dapp emprunte la voie de l'intégration d'un pont ou d'un agrégateur, il existe différentes options en fonction du degré d'intégration souhaité. Par exemple, s'il s'agit uniquement d'une intégration frontale visant à améliorer l'expérience d'accueil des utilisateurs, une dApp intégrera le widget. Toutefois, si l'intégration vise à explorer des stratégies inter-chaînes plus approfondies comme le jalonnement, l'agriculture de rendement, etc., la dApp intègre le SDK ou l'API. -### Déploiement d'une dApp sur plusieurs chaînes {#deploying-a-dapp-on-multiple-chains} +### Déployer une dapp sur plusieurs chaînes {#deploying-a-dapp-on-multiple-chains} -Pour déployer une dApp sur plusieurs chaînes, les développeurs peuvent utiliser des plateformes de développement telles que [Alchemy](https://www.alchemy.com/), [Hardhat](https://hardhat.org/), [Moralis](https://moralis.io/), etc. En général, ces plateformes sont fournies avec des plugins composables qui permettent aux dApps de passer d'une chaîne à l'autre. Par exemple, les développeurs peuvent utiliser un proxy de déploiement déterministe proposé par le plugin [hardhat-deploy](https://github.com/wighawag/hardhat-deploy). +Pour déployer une dapp sur plusieurs chaînes, les développeurs peuvent utiliser des plateformes de développement comme [Alchemy](https://www.alchemy.com/), [Hardhat](https://hardhat.org/), [Moralis](https://moralis.io/), etc. En général, ces plateformes sont fournies avec des plugins composables qui permettent aux dApps de passer d'une chaîne à l'autre. Par exemple, les développeurs peuvent utiliser un proxy de déploiement déterministe proposé par le [plugin hardhat-deploy](https://github.com/wighawag/hardhat-deploy). #### Exemples : -- [Comment construire des dApps inter-chaine](https://moralis.io/how-to-build-cross-chain-dapps/) -- [Création d'une place de marché NFT inter-chaînes](https://youtu.be/WZWCzsB1xUE) -- [Moralis : Construire des dApps NFT inter-chaîne](https://www.youtube.com/watch?v=ehv70kE1QYo) +- [Comment créer des dapps inter-chaînes](https://moralis.io/how-to-build-cross-chain-dapps/) +- [Créer une place de marché NFT inter-chaînes](https://youtu.be/WZWCzsB1xUE) +- [Moralis : Créer des dapps NFT inter-chaînes](https://www.youtube.com/watch?v=ehv70kE1QYo) -### Suivi de l'activité contractuelle à travers les chaînes {#monitoring-contract-activity-across-chains} +### Surveiller l'activité des contrats entre les chaînes {#monitoring-contract-activity-across-chains} -Pour surveiller l'activité des contrats dans les chaînes, les développeurs peuvent utiliser des sous-graphes et des plateformes de développement comme Tenderly pour observer les contrats intelligents en temps réel. Ces plates-formes disposent également d'outils qui offrent une plus grande fonctionnalité de surveillance des données pour les activités inter-chaînes, comme la vérification des [événements émis par les contrats](https://docs.soliditylang.org/en/v0.8.14/contracts.html?highlight=events#events), etc. +Pour surveiller l'activité des contrats dans les chaînes, les développeurs peuvent utiliser des sous-graphes et des plateformes de développement comme Tenderly pour observer les contrats intelligents en temps réel. Ces plateformes disposent également d'outils qui offrent une plus grande fonctionnalité de surveillance des données pour les activités inter-chaînes, comme la vérification des [événements émis par les contrats](https://docs.soliditylang.org/en/v0.8.14/contracts.html?highlight=events#events), etc. #### Outils -- [Le réseau Graph](https://thegraph.com/en/) +- [The Graph](https://thegraph.com/en/) - [Tenderly](https://tenderly.co/) -## Complément d'information {#further-reading} -- [Blockchain Bridges](/bridges/) – ethereum.org -- [Cadre d’évaluation des risques des ponts de L2Beat](https://l2beat.com/bridges/summary) -- [Ponts Blockchain : Construire des réseaux de crypto-réseaux](https://medium.com/1kxnetwork/blockchain-bridges-5db6afac44f8) - 8 septembre 2021– Dmitriy Berenzon -- [Le Trilemme d'interopérabilité](https://blog.connext.network/the-interoperability-trilemma-657c2cf69f17) - 1er octobre 2021 – Arjun Bhuptani -- [Clusters : comment les ponts de confiance et les ponts à confiance minimisée façonnent le paysage multi-chaîne](https://blog.celestia.org/clusters/) – 4 octobre 2021 – Mustafa Al-Bassam -- [LI.FI : Avec les ponts, la confiance est un spectre](https://blog.li.fi/li-fi-with-bridges-trust-is-a-spectrum-354cd5a1a6d8) – 28 avril 2022 – Arjun Chand +## En savoir plus {#further-reading} + +- [Ponts de blockchain](/bridges/) – ethereum.org +- [Cadre de risque des ponts de L2Beat](https://l2beat.com/bridges/summary) +- [Ponts de blockchain : construire des réseaux de cryptoréseaux](https://medium.com/1kxnetwork/blockchain-bridges-5db6afac44f8) - 8 septembre 2021 – Dmitriy Berenzon +- [Le trilemme de l'interopérabilité](https://blog.connext.network/the-interoperability-trilemma-657c2cf69f17) - 1er octobre 2021 – Arjun Bhuptani +- [Clusters : Comment les ponts de confiance et à confiance minimisée façonnent le paysage multichaîne](https://blog.celestia.org/clusters/) - 4 octobre 2021 – Mustafa Al-Bassam +- [LI.FI : Avec les ponts, la confiance est un spectre](https://blog.li.fi/li-fi-with-bridges-trust-is-a-spectrum-354cd5a1a6d8) - 28 avril 2022 – Arjun Chand - [L'état des solutions d'interopérabilité des rollups](https://web.archive.org/web/20250428015516/https://research.2077.xyz/the-state-of-rollup-interoperability) - 20 juin 2024 – Alex Hook -- [Exploiter la sécurité partagée pour une interopérabilité cross-chain sécurisée : comités d'état Lagrange et au-delà](https://web.archive.org/web/20250125035123/https://research.2077.xyz/harnessing-shared-security-for-secure-blockchain-interoperability) - 12 juin 2024 – Emmanuel Awosika +- [Exploiter la sécurité partagée pour une interopérabilité inter-chaînes sécurisée : les comités d'état de Lagrange et au-delà](https://web.archive.org/web/20250125035123/https://research.2077.xyz/harnessing-shared-security-for-secure-blockchain-interoperability) - 12 juin 2024 – Emmanuel Awosika -En outre, voici quelques présentations perspicaces de [James Prestwich](https://twitter.com/_prestwich) qui peuvent aider à développer une compréhension plus approfondie des ponts : +De plus, voici quelques présentations pertinentes de [James Prestwich](https://twitter.com/_prestwich) qui peuvent aider à développer une compréhension plus approfondie des ponts : - [Construire des ponts, pas des jardins clos](https://youtu.be/ZQJWMiX4hT0) -- [Faire tomber les ponts](https://youtu.be/b0mC-ZqN8Oo) -- [Pourquoi les ponts brûlent-ils ?](https://youtu.be/c7cm2kd20j8) +- [Analyse des ponts](https://youtu.be/b0mC-ZqN8Oo) +- [Pourquoi les ponts brûlent-ils](https://youtu.be/c7cm2kd20j8) diff --git a/public/content/translations/fr/developers/docs/consensus-mechanisms/index.md b/public/content/translations/fr/developers/docs/consensus-mechanisms/index.md index 827efdffaa6..1d840a3502e 100644 --- a/public/content/translations/fr/developers/docs/consensus-mechanisms/index.md +++ b/public/content/translations/fr/developers/docs/consensus-mechanisms/index.md @@ -1,20 +1,20 @@ --- -title: Mécanismes de consensus -description: Explication des protocoles de consensus dans les systèmes distribués et du rôle qu'ils jouent dans Ethereum. +title: "Mécanismes de consensus" +description: "Explication des protocoles de consensus dans les systèmes distribués et du rôle qu'ils jouent dans Ethereum." lang: fr --- -Le terme « mécanisme de consensus » est souvent utilisé familièrement pour désigner les protocoles de preuve d'enjeu, de preuve de travail ou de preuve d'autorité. Néanmoins, ceux-ci ne sont que des composantes du mécanisme de consensus qui protègent de façon préventive contre les [attaques de type 'Sybil](/glossary/#sybil-attack). Les mécanismes de consensus désignent la pile complète des idées, protocoles et incitations qui permettent à un ensemble de nœuds distribués de se mettre d'accord sur l'état d'une blockchain. +Le terme « mécanisme de consensus » est souvent utilisé familièrement pour désigner les protocoles de preuve d'enjeu, de preuve de travail ou de preuve d'autorité. Cependant, ce ne sont que des composantes des mécanismes de consensus qui protègent contre les [attaques Sybil](/glossary/#sybil-attack). Les mécanismes de consensus désignent la pile complète des idées, protocoles et incitations qui permettent à un ensemble de nœuds distribués de se mettre d'accord sur l'état d'une blockchain. ## Prérequis {#prerequisites} -Pour mieux comprendre cette page, nous vous recommandons de commencer par lire cette [introduction à Ethereum](/developers/docs/intro-to-ethereum/). +Pour mieux comprendre cette page, nous vous recommandons de lire d'abord notre [introduction à Ethereum](/developers/docs/intro-to-ethereum/). ## Qu'est-ce que le consensus ? {#what-is-consensus} Par consensus, nous voulons dire qu'un accord général a été trouvé. Prenons le cas d'un groupe de personnes qui vont au cinéma. S'il n'existe pas de désaccord sur le choix du film, alors un consensus se dégage. En cas de désaccord, le groupe doit avoir les moyens de décider du film à voir. Dans un cas extrême, le groupe finira par se séparer. -En ce qui concerne la blockchain Ethereum, parvenir à un consensus signifie qu'au moins 66 % des nœuds du réseau sont d'accord sur l'état global du réseau. +En ce qui concerne la blockchain Ethereum, le processus est formalisé, et parvenir à un consensus signifie qu'au moins 66 % des nœuds du réseau s'accordent sur l'état global du réseau. ## Qu'est-ce qu'un mécanisme de consensus ? {#what-is-a-consensus-mechanism} @@ -32,7 +32,7 @@ Ces composantes forment ensemble le mécanisme de consensus. ### Basé sur la preuve de travail {#proof-of-work} -Tout comme Bitcoin, Ethereum a utilisé un protocole de consensus basé sur la **preuve de travail (PoW)**. +Tout comme Bitcoin, Ethereum utilisait autrefois un protocole de consensus basé sur la **preuve de travail (PoW)**. #### Création de blocs {#pow-block-creation} @@ -56,7 +56,7 @@ Les validateurs créent des blocs. Un validateur est sélectionné aléatoiremen Un système de preuve d'enjeu est sécurisé économiquement dans la mesure où un attaquant qui tente de prendre le contrôle de la chaîne doit détruire une quantité massive d'ETH. Un système de récompenses encourage les validateurs individuels à se comporter honnêtement et les pénalités dissuadent les validateurs d’agir de manière malveillante. -En savoir plus sur la [preuve de travail](/developers/docs/consensus-mechanisms/pos/) +En savoir plus sur la [preuve d'enjeu](/developers/docs/consensus-mechanisms/pos/) ### Un guide visuel {#types-of-consensus-video} @@ -64,27 +64,27 @@ En savoir plus sur les différents types de mécanismes de consensus utilisés s -### Résistance à l'attaque Sybil et sélection en chaîne {#sybil-chain} +### Résistance Sybil & sélection de chaîne {#sybil-chain} La preuve de travail et la preuve d’enjeu ne sont pas des protocoles de consensus, mais on les appelle souvent ainsi par souci de simplicité. Ce sont en fait des mécanismes de résistance à l'attaque Sybil et des sélecteurs d'auteurs de bloc ; ils permettent de décider qui est l'auteur du dernier bloc. Un autre composant important est l'algorithme de sélection de chaînes (alias choix de fourche) qui permet aux nœuds de choisir un unique bloc correct en tête de chaîne dans des scénarios où plusieurs blocs se trouveraient dans la même position. -La **Résistance à l'attaque Sybil** mesure l'efficacité d'un protocole face à une attaque Sybil. La résistance à ce type d'attaque est essentielle pour une blockchain décentralisée et permet aux mineurs et validateurs d'être récompensés de manière égale en fonction des ressources mises à disposition. La preuve de travail et la preuve de mise en jeu protègent de ce risque en obligeant les utilisateurs à dépenser beaucoup d'énergie ou à mettre beaucoup de collatérales. Ces protections sont un moyen de dissuasion économique contre les attaques Sybil. +La **résistance Sybil** mesure la capacité d'un protocole à se défendre contre une attaque Sybil. La résistance à ce type d'attaque est essentielle pour une blockchain décentralisée et permet aux mineurs et validateurs d'être récompensés de manière égale en fonction des ressources mises à disposition. La preuve de travail et la preuve de mise en jeu protègent de ce risque en obligeant les utilisateurs à dépenser beaucoup d'énergie ou à mettre beaucoup de collatérales. Ces protections sont un moyen de dissuasion économique contre les attaques Sybil. -**Une règle de sélection de la chaîne** est utilisée pour décider quelle chaîne est la chaîne « correcte ». Bitcoin utilise actuellement la règle de la « plus longue chaîne », ce qui signifie que quelle que soit la chaîne de blocs la plus longue, elle sera celle que les autres nœuds acceptent comme valide et avec laquelle ils travailleront. Pour les chaînes de preuve de travail, la chaîne la plus longue est déterminée par la difficulté cumulative totale de preuve de travail. Ethereum avait également l'habitude d'utiliser la règle de la chaîne la plus longue ; cependant, maintenant qu'Ethereum fonctionne avec la preuve d'enjeu, il a adopté un algorithme de choix de fourche mis à jour qui mesure le « poids » de la chaîne. Le poids est la somme cumulée des votes de validateur, pondérée par les soldes en Ether misés par les validateurs. +Une **règle de sélection de chaîne** est utilisée pour décider quelle chaîne est la chaîne "correcte". Bitcoin utilise actuellement la règle de la « plus longue chaîne », ce qui signifie que quelle que soit la chaîne de blocs la plus longue, elle sera celle que les autres nœuds acceptent comme valide et avec laquelle ils travailleront. Pour les chaînes de preuve de travail, la chaîne la plus longue est déterminée par la difficulté cumulative totale de preuve de travail. Ethereum avait également l'habitude d'utiliser la règle de la plus longue chaîne ; Cependant, maintenant qu'Ethereum fonctionne avec la preuve d'enjeu, il a adopté un algorithme de choix de fourche mis à jour qui mesure le 'poids' de la chaîne. Le poids est la somme cumulée des votes de validateur, pondérée par les soldes en Ether misés par les validateurs. -Ethereum utilise un mécanisme de consensus connu sous le nom de [Gasper](/developers/docs/consensus-mechanisms/pos/gasper/) qui combine la preuve d'enjeu [Casper FFG](https://arxiv.org/abs/1710.09437) avec la [règle de choix de fourche GHOST](https://arxiv.org/abs/2003.03052). +Ethereum utilise un mécanisme de consensus connu sous le nom de [Gasper](/developers/docs/consensus-mechanisms/pos/gasper/) qui combine la [preuve d'enjeu Casper FFG](https://arxiv.org/abs/1710.09437) avec la [règle de choix de fourche GHOST](https://arxiv.org/abs/2003.03052). -## Complément d'information {#further-reading} +## En savoir plus {#further-reading} -- [Qu'est-ce qu'un algorithme de consensus de la blockchain ?](https://academy.binance.com/en/articles/what-is-a-blockchain-consensus-algorithm) -- [Qu'est-ce que le Consensus de Nakamoto ? Guide complet du débutant](https://blockonomi.com/nakamoto-consensus/) +- [Qu'est-ce qu'un algorithme de consensus de blockchain ?](https://academy.binance.com/en/articles/what-is-a-blockchain-consensus-algorithm) +- [Qu'est-ce que le Consensus Nakamoto ? Guide complet pour débutant](https://blockonomi.com/nakamoto-consensus/) - [Comment fonctionne Casper ?](https://medium.com/unitychain/intro-to-casper-ffg-9ed944d98b2d) -- [À propos de la sécurité et les performances des blockchains de la preuve de travail](https://eprint.iacr.org/2016/555.pdf) -- [Panne Byzantine](https://en.wikipedia.org/wiki/Byzantine_fault) +- [Sur la sécurité et les performances des blockchains à preuve de travail](https://eprint.iacr.org/2016/555.pdf) +- [Panne byzantine](https://en.wikipedia.org/wiki/Byzantine_fault) _Une ressource communautaire vous a aidé ? Modifiez cette page et ajoutez-la !_ -## Thèmes connexes {#related-topics} +## Sujets connexes {#related-topics} - [Preuve de travail](/developers/docs/consensus-mechanisms/pow/) - [Minage](/developers/docs/consensus-mechanisms/pow/mining/) diff --git a/public/content/translations/fr/developers/docs/consensus-mechanisms/poa/index.md b/public/content/translations/fr/developers/docs/consensus-mechanisms/poa/index.md index b0a5269d00e..52d07205ece 100644 --- a/public/content/translations/fr/developers/docs/consensus-mechanisms/poa/index.md +++ b/public/content/translations/fr/developers/docs/consensus-mechanisms/poa/index.md @@ -1,10 +1,10 @@ --- -title: Preuve d'autorité (PoA) -description: Explication du protocole de consensus « preuve d'autorité » et de son rôle dans l'écosystème blockchain. +title: "Preuve d'autorité (PoA)" +description: "Explication du protocole de consensus « preuve d'autorité » et de son rôle dans l'écosystème blockchain." lang: fr --- -La **Preuve d'autorité (PoA)** est un algorithme de consensus basé sur la réputation qui est une version modifiée de la [preuve d'enjeu] (/developers/docs/consensus-mechanisms/pos/). Il est principalement utilisé par des chaînes privées, des réseaux de test et des réseaux de développement locaux. Le PoA est un algorithme de consensus basé sur la réputation qui nécessite de faire confiance à un ensemble de signataires autorisés pour produire des blocs, plutôt que de se baser sur un mécanisme d'enjeu comme le PoS. +La **Preuve d'autorité (PoA)** est un algorithme de consensus basé sur la réputation qui est une version modifiée de la [preuve d'enjeu](/developers/docs/consensus-mechanisms/pos/). Il est principalement utilisé par des chaînes privées, des réseaux de test et des réseaux de développement locaux. Le PoA est un algorithme de consensus basé sur la réputation qui nécessite de faire confiance à un ensemble de signataires autorisés pour produire des blocs, plutôt que de se baser sur un mécanisme d'enjeu comme le PoS. ## Prérequis {#prerequisites} @@ -12,9 +12,9 @@ Pour mieux comprendre cette page, nous vous recommandons d'abord d'en lire plus ## Qu'est-ce que la Preuve d'autorité (PoA) ? {#what-is-poa} -La Preuve d'autorité est une version modifiée de la **[Preuve d'enjeu] (/developers/docs/consensus-mechanisms/pos/) (PoS)** qui est un algorithme de consensus basé sur la réputation plutôt que sur un mécanisme basé sur l'enjeu avec le PoS. Le terme a été introduit pour la première fois en 2017 par Gavin Wood, et cet algorithme de consensus est principalement utilisé par des chaînes privées, des réseaux de test et des réseaux de développement locaux, car il surmonte le besoin de ressources de haute qualité comme le PoW, et résout les problèmes de scalabilité avec le PoS en ayant un petit sous-ensemble de nœuds stockant la blockchain et produisant des blocs. +La Preuve d'autorité est une version modifiée de la **[Preuve d'enjeu](/developers/docs/consensus-mechanisms/pos/) (PoS)** qui est un algorithme de consensus basé sur la réputation plutôt que sur un mécanisme basé sur l'enjeu avec le PoS. Le terme a été introduit pour la première fois en 2017 par Gavin Wood, et cet algorithme de consensus est principalement utilisé par des chaînes privées, des réseaux de test et des réseaux de développement locaux, car il surmonte le besoin de ressources de haute qualité comme le PoW, et résout les problèmes de scalabilité avec le PoS en ayant un petit sous-ensemble de nœuds stockant la blockchain et produisant des blocs. -La Preuve d'autorité nécessite de faire confiance à un ensemble de signataires autorisés qui sont définis dans le [bloc de genèse] (/glossary/#genesis-block). Dans la plupart des implémentations actuelles, tous les signataires autorisés conservent un pouvoir et des privilèges égaux lorsqu'il s'agit de déterminer le consensus de la chaîne. L'idée derrière l'enjeu sur la réputation est que chaque validateur autorisé est bien connu de tous grâce à des éléments tels que la vérification de l'identité des clients (KYC) ou parce qu'il fait partie d'une organisation bien connue qui est le seul validateur. Ainsi, si un validateur commet une erreur, son identité est connue. +La Preuve d'autorité nécessite de faire confiance à un ensemble de signataires autorisés qui sont définis dans le [bloc de genèse](/glossary/#genesis-block). Dans la plupart des implémentations actuelles, tous les signataires autorisés conservent un pouvoir et des privilèges égaux lorsqu'il s'agit de déterminer le consensus de la chaîne. L'idée derrière l'enjeu sur la réputation est que chaque validateur autorisé est bien connu de tous grâce à des éléments tels que la vérification de l'identité des clients (KYC) ou parce qu'il fait partie d'une organisation bien connue qui est le seul validateur. Ainsi, si un validateur commet une erreur, son identité est connue. Il existe plusieurs implémentations de PoA, mais l'implémentation standard d'Ethereum est **clique**, qui implémente [EIP-225](https://eips.ethereum.org/EIPS/eip-225). Clique est agréable à utiliser par les développeurs et facilite l'implémentation de normes, prenant en charge tous les types de synchronisation de clients. D'autres implémentations incluent [IBFT 2.0](https://besu.hyperledger.org/private-networks/concepts/poa) and [Aura](https://openethereum.github.io/Chain-specification). @@ -77,3 +77,4 @@ Regardez une explication en vidéo de la preuve d'autorité : - [Preuve de travail](/developers/docs/consensus-mechanisms/pow/) - [Preuve d'enjeu](/developers/docs/consensus-mechanisms/pos/) + diff --git a/public/content/translations/fr/developers/docs/consensus-mechanisms/pos/attack-and-defense/index.md b/public/content/translations/fr/developers/docs/consensus-mechanisms/pos/attack-and-defense/index.md index e0d5d85f957..84065a07589 100644 --- a/public/content/translations/fr/developers/docs/consensus-mechanisms/pos/attack-and-defense/index.md +++ b/public/content/translations/fr/developers/docs/consensus-mechanisms/pos/attack-and-defense/index.md @@ -1,6 +1,6 @@ --- -title: Attaques visant la preuve d'enjeu Ethereum et modes de défense -description: Découvrez les vecteurs d'attaques connus sur la preuve d'enjeu Ethereum et ses modes de défense. +title: "Attaques visant la preuve d'enjeu Ethereum et modes de défense" +description: "Découvrez les vecteurs d'attaques connus sur la preuve d'enjeu Ethereum et ses modes de défense." lang: fr --- @@ -120,7 +120,7 @@ Avec plus de 50 % de la mise totale, l'attaquant pourrait dominer l'algorithme d ### Attaquants utilisant plus de 66 % du total des mises {#attackers-with-66-stake} -Un attaquant disposant de 66 % ou plus de l'ether total misé peut finaliser sa chaîne préférée sans avoir à contraindre aucun validateur honnête. L'attaquant peut simplement voter pour sa fourche préférée puis la finaliser, simplement parce qu'il peut voter avec une super-majorité malhonnête. En tant que détenteur de la super-majorité des enjeux, l'attaquant contrôlerait toujours le contenu des blocs finalisés, avec le pouvoir de dépenser, rembobiner et dépenser à nouveau, censurer certaines transactions et réorganiser la chaîne à volonté. En achetant de l'ether supplémentaire pour contrôler 66 % plutôt que 51 %, l'attaquant achète effectivement la capacité d'effectuer des réarrangements ex post et des réversions de finalité (c'est-à-dire de changer le passé ainsi que de contrôler l'avenir). Les seules véritables défenses ici sont l'énorme coût de 66 % de l'ether total misé, et la possibilité de se replier sur la couche sociale pour coordonner l'adoption d'une fourche alternative. Nous verrons cela plus en détail dans la section suivante. +Un attaquant disposant de 66 % ou plus de l'ether total misé peut finaliser sa chaîne préférée sans avoir à contraindre aucun validateur honnête. L'attaquant peut simplement voter pour sa fourche préférée puis la finaliser, simplement parce qu'il peut voter avec une super-majorité malhonnête. En tant que détenteur de la super-majorité des enjeux, l'attaquant contrôlerait toujours le contenu des blocs finalisés, avec le pouvoir de dépenser, rembobiner et dépenser à nouveau, censurer certaines transactions et réorganiser la chaîne à volonté. En achetant de l'ether supplémentaire pour contrôler 66 % plutôt que 51 %, l'attaquant achète effectivement la capacité d'effectuer des reorgs ex post et des réversions de finalité (c'est-à-dire de changer le passé ainsi que de contrôler l'avenir). Les seules véritables défenses ici sont l'énorme coût de 66 % de l'ether total misé, et la possibilité de se replier sur la couche sociale pour coordonner l'adoption d'une fourche alternative. Nous verrons cela plus en détail dans la section suivante. ## Les personnes : la dernière ligne de défense {#people-the-last-line-of-defense} @@ -130,7 +130,7 @@ L'une des forces du consensus de la preuve d'enjeu d'Ethereum est qu'il existe t Quelle que soit la pénalité imposée à l'attaquant, la communauté doit également décider ensemble si la chaîne malhonnête, bien que favorisée par l'algorithme de choix de fourche codé dans les clients Ethereum, est en réalité invalide et que la communauté devrait plutôt construire sur la chaîne honnête. Les validateurs honnêtes pourraient collectivement accepter de construire sur une fourche acceptée par la communauté de la blockchain Ethereum qui aurait, par exemple, bifurqué de la chaîne canonique avant le début de l'attaque ou dont les validateurs attaquants seraient supprimés de force. Les validateurs honnêtes seraient incités à construire sur cette chaîne car ils éviteraient les pénalités qui leur seraient infligées pour ne pas avoir attesté (à juste titre) de la chaîne de l'attaquant. Les échanges, les points d'entrée et les applications construites sur Ethereum préféreraient probablement être sur la chaîne honnête et suivraient les validateurs honnêtes vers la blockchain honnête. -Cependant, il s'agirait d'un défi important en matière de gouvernance. Certains utilisateurs et validateurs subiraient inévitablement des pertes à la suite du retour à la chaîne honnête, les transactions dans les blocs validés après l'attaque pourraient potentiellement être annulées, perturbant la couche d'application, et cela remettrait tout simplement en question l'éthique de certains utilisateurs qui ont tendance à croire que « le code est la loi ». Les échanges et les applications auront très probablement établi un lien entre des actions hors chaîne et des transactions en chaîne qui pourraient maintenant être annulées, déclenchant une cascade de rétractations et de révisions qui seraient difficiles à démêler équitablement, surtout si les gains mal acquis ont été mélangés, déposés dans la DeFi ou d'autres dérivés ayant des effets secondaires pour les utilisateurs honnêtes. Certains utilisateurs, peut-être même institutionnels, auraient certainement déjà bénéficié de la chaîne malhonnête, soit par habileté, soit par hasard, et pourraient s'opposer à une fourche pour protéger leurs gains. Il y a eu des appels à répéter la réponse de la communauté face aux attaques à plus de 51 % afin qu'une réaction coordonnée et raisonnable puisse être exécutée rapidement. Vitalik a mené des discussions utiles sur ethresear.ch [ici](https://ethresear.ch/t/timeliness-detectors-and-51-attack-recovery-in-blockchains/6925) et [ici](https://ethresear.ch/t/responding-to-51-attacks-in-casper-ffg/6363) et sur Twitter ici. L'objectif d'une réponse sociale coordonnée devrait être de punir très précisément l'attaquant et de minimiser les effets sur les autres utilisateurs. +Cependant, il s'agirait d'un défi important en matière de gouvernance. Certains utilisateurs et validateurs subiraient inévitablement des pertes à la suite du retour à la chaîne honnête, les transactions dans les blocs validés après l'attaque pourraient potentiellement être annulées, perturbant la couche d'application, et cela remettrait tout simplement en question l'éthique de certains utilisateurs qui ont tendance à croire que « le code est la loi ». Les échanges et les applications auront très probablement établi un lien entre des actions hors chaîne et des transactions en chaîne qui pourraient maintenant être annulées, déclenchant une cascade de rétractations et de révisions qui seraient difficiles à démêler équitablement, surtout si les gains mal acquis ont été mélangés, déposés dans la DeFi ou d'autres dérivés ayant des effets secondaires pour les utilisateurs honnêtes. Certains utilisateurs, peut-être même institutionnels, auraient certainement déjà bénéficié de la chaîne malhonnête, soit par habileté, soit par hasard, et pourraient s'opposer à une fourche pour protéger leurs gains. Il y a eu des appels à répéter la réponse de la communauté face aux attaques à plus de 51 % afin qu'une réaction coordonnée et raisonnable puisse être exécutée rapidement. Vitalik a mené des discussions utiles sur ethresear.ch [ici](https://ethresear.ch/t/timeliness-detectors-and-51-attack-recovery-in-blockchains/6925) et [ici](https://ethresear.ch/t/responding-to-51-attacks-in-casper-ffg/6363) et sur Twitter [ici](https://twitter.com/skylar_eth/status/1551798684727508992?s=20&t=oHZ1xv8QZdOgAXhxZKtHEw). L'objectif d'une réponse sociale coordonnée devrait être de punir très précisément l'attaquant et de minimiser les effets sur les autres utilisateurs. La gouvernance est déjà un sujet complexe. Gérer une réponse d'urgence de la couche 0 à une chaîne finalisée malhonnête serait sans aucun doute un défi pour la communauté Ethereum, mais [cela s'est produit](/ethereum-forks/#dao-fork-summary) - [deux fois](/ethereum-forks/#tangerine-whistle) - dans l'histoire d'Ethereum).