diff --git a/_i18n/de/resources/user-guides/multisig-messaging-system.md b/_i18n/de/resources/user-guides/multisig-messaging-system.md index 213e6369..0fac3540 100644 --- a/_i18n/de/resources/user-guides/multisig-messaging-system.md +++ b/_i18n/de/resources/user-guides/multisig-messaging-system.md @@ -1,30 +1,30 @@ -{% include disclaimer.html translated="no" translationOutdated="no" %} +{% include disclaimer.html translated="yes" translationOutdated="no" %} -## Table Of Contents -- [Table Of Contents](#table-of-contents) -- [Introduction](#introduction) -- [Monero Multisig in a Nutshell](#monero-multisig-in-a-nutshell) -- [The Architecture of the MMS](#the-architecture-of-the-mms) -- [The MMS User Experience](#the-mms-user-experience) - - [A Messaging System](#a-messaging-system) - - [Signers and Messages](#signers-and-messages) -- [Getting the MMS](#getting-the-mms) -- [Installing and Configuring PyBitmessage](#installing-and-configuring-pybitmessage) -- [Further PyBitmessage Tweaks](#further-pybitmessage-tweaks) -- [MMS Command Overview](#mms-command-overview) -- [Configuring a Wallet for Use with the MMS](#configuring-a-wallet-for-use-with-the-mms) - - [Addresses and Labels](#addresses-and-labels) - - [Running CLI Wallet](#running-cli-wallet) - - [Initializing the MMS](#initializing-the-mms) - - [Configuring Signers](#configuring-signers) - - [Manually Configuring Signers](#manually-configuring-signers) +## Inhaltsverzeichnis +- [Inhaltsverzeichnis](#inhaltsverzeichnis) +- [Einleitung](#einleitung) +- [Monero-Multisig zusammengefasst](#monero-multisig-zusammengefasst) +- [Die Architektur des MMS](#die-architektur-des-mms) +- [Das Benutzererlebnis des MMS](#das-benutzererlebnis-des-mms) + - [Ein Nachrichtensystem](#ein-nachrichtensystem) + - [Unterzeichner und Nachrichten](#unterzeichner-und-nachrichten) +- [Das MMS erhalten](#das-mms-erhalten) +- [PyBitmessage installieren und einrichten](#pybitmessage-installieren-und-einrichten) +- [Weitere PyBitmessage-Optimierungen](#weitere-pybitmessage-optimierungen) +- [Befehlsübersicht des MMS](#befehlsübersicht-des-mms) +- [Ein Wallet zur Nutzung mit MMS einrichten](#ein-wallet-zur-nutzung-mit-mms-einrichten) + - [Adressen und Labels](#adressen-und-labels) + - [CLI-Wallet starten](#cli-wallet-starten) + - [MMS initialisieren](#mms-initialisieren) + - [Unterzeichner einrichten](#unterzeichner-einrichten) + - [Unterzeichner manuell einrichten](#unterzeichner-manuell-einrichten) - [Auto-Config](#auto-config) - - [Sending Signer Configuration](#sending-signer-configuration) -- [Establishing the Multisig Address](#establishing-the-multisig-address) -- [Funding the Multisig Wallet](#funding-the-multisig-wallet) -- [Syncing Wallets](#syncing-wallets) -- [Making Multisig Transactions](#making-multisig-transactions) -- [The Commands in Detail](#the-commands-in-detail) + - [Unterzeichnerkonfiguration senden](#unterzeichnerkonfiguration-senden) +- [Multisig-Adresse herleiten](#multisig-adresse-herleiten) +- [Finanzausstattung des Multisig-Wallets](#finanzausstattung-des-multisig-wallets) +- [Wallets synchronisieren](#wallets-synchronisieren) +- [Multisig-Transaktionen erstellen](#multisig-transaktionen-erstellen) +- [Die Befehle im Detail](#die-befehle-im-detail) - [mms init](#mms-init) - [mms info](#mms-info) - [mms signer](#mms-signer) @@ -43,235 +43,234 @@ - [mms auto\_config](#mms-auto_config) - [mms stop\_auto\_config](#mms-stop_auto_config) - [mms send\_signer\_config](#mms-send_signer_config) -- [Security](#security) - - [Use of Encryption and Signatures](#use-of-encryption-and-signatures) - - [Communication MMS to PyBitmessage](#communication-mms-to-pybitmessage) - - [Impersonation](#impersonation) - - [Attacker-Controlled Data](#attacker-controlled-data) -- [Troubleshooting](#troubleshooting) - - [Solving Syncing Troubles](#solving-syncing-troubles) - - [Redirecting a Transaction to Another Signer](#redirecting-a-transaction-to-another-signer) - - [Ignoring Uncooperative Signers when Syncing](#ignoring-uncooperative-signers-when-syncing) - - [Recovering from Lost or Duplicate Messages](#recovering-from-lost-or-duplicate-messages) - - [Correcting / Updating Signer Information](#correcting--updating-signer-information) - - [Starting from Scratch](#starting-from-scratch) - - [MMS / PyBitmessage Interactions](#mms--pybitmessage-interactions) +- [Sicherheit](#sicherheit) + - [Nutzen von Verschlüsselung und Signaturen](#nutzen-von-verschlüsselung-und-signaturen) + - [Kommunikation von MMS zu PyBitmessage](#kommunikation-von-mms-zu-pybitmessage) + - [Identitätsbetrug](#identitätsbetrug) + - [Von Angreifern kontrollierte Daten](#von-angreifern-kontrollierte-daten) +- [Fehlerbehebung](#fehlerbehebung) + - [Synchronisierungsprobleme lösen](#synchronisierungsprobleme-lösen) + - [Eine Transaktion an einen anderen Unterzeichner umleiten/weiterleiten](#eine-transaktion-an-einen-anderen-unterzeichner-umleiten/weiterleiten) + - [Unkooperative Unterzeichner beim Synchronisieren ignorieren](#unkooperative-unterzeichner-beim-synchronisieren-ignorieren) + - [Von abhandengekommenen oder doppelten Nachrichten wiederherstellen](#von-abhandengekommenen-oder-doppelten-nachrichten-wiederherstellen) + - [Informationen von Unterzeichnern korrigieren/aktualisieren](#informationen-von-unterzeichnern-korrigieren/aktualisieren) + - [Von Grund auf beginnen](#von-grund-auf-beginnen) + - [Interaktionen von MMS/PyBitmessage](#interaktionen-von-mms/pybitmessage) -## Introduction +## Einleitung -This manual describes the *Multisig Messaging System*, abbreviated as *MMS*. It's a system that aims to **simplify multisig transactions** for Monero and similar CrypoNote-based cryptocurrencies by making it easy to exchange info like key sets and sync data between wallets and by offering some "workflow support" guiding you through the various steps. +Diese Anleitung behandelt das *Multisig Messaging System* (Multisig-Nachrichtensystem), kurz *MMS*. Dieses System strebt an, **Multisig-Transaktionen** für Monero und ähnliche, CryptoNote-basierte Kryptowährungen zu **vereinfachen**, indem der Austausch von Infos (etwa von Schlüsselsätzen) und die Synchronisation von Daten zwischen Wallets erleichtert werden. Zudem bietet es Unterstützung bezüglich des Arbeitsablaufs, indem Nutzer durch die verschiedenen Schritte geführt werden. -The MMS so far presents itself to the user as a set of new commands in the CLI wallet. This is not surprising, as currently the CLI wallet is the only way to do multisig transactions interactively anyway. Hopefully this will be extended in the future; the MMS was designed with other wallets like e.g. the Monero GUI wallet in mind. +Bislang erscheint das MMS für Nutzer wie eine Reihe neuer Befehle im CLI-Wallet, was im Grunde keine Überraschung ist: Das CLI-Wallet ist derzeit die einzige Möglichkeit zur interaktiven Erstellung von Multisig-Transaktionen. Dies wird aber in Zukunft hoffentlich erweitert; das MMS wurde auch mit anderen Wallets (etwa dem Monero-GUI) im Hinterkopf entworfen. -This manual has some tutorial-like aspects and is intended to be read in sequential fashion, best without skipping any chapter before chapter *The Commands in Detail*. +Diese Anleitung umfasst einige übungsähnliche Punkte und sollte der Reihe nach durchgegangen werden, möglichst ohne die Kapitel vor dem *Die Befehle im Detail*-Teil zu überspringen. -If you have high requirements regarding security and are not sure whether using the MMS is acceptable for you in the first place, you may read the chapter *Security* first. +Wenn du hohe Sicherheitsanforderungen hast und dir nicht sicher bist, ob ein Gebrauch des MMS für dich überhaupt infrage kommt, solltest du als Erstes das Kapitel *Sicherheit* lesen. -This first version of the manual was written around year-end 2018 by René Brunner (*rbrunner7*), the original author of the MMS. +Die erste Version dieser Anleitung wurde um das Jahresende 2018 herum von René Brunner (*rbrunner7*), dem ursprünglichen Schöpfer des MMS, verfasst. -## Monero Multisig in a Nutshell +## Monero-Multisig zusammengefasst -Probably it will be pretty hard to understand the MMS without at least a basic grasp of how Monero multisig transactions work in principle. Here a short overview together with info about the *terminology* that this manual uses; for more details and more *technical* explanations you will have to look elsewhere. +Es wird vermutlich ziemlich schwer sein, das MMS zu verstehen, ohne wenigstens ein Grundverständnis davon zu haben, wie Multisig-Transaktionen bei Monero prinzipiell funktionieren. Daher hier nun eine kurze Übersicht, gemeinsam mit Infos bezüglich der in dieser Anleitung verwendeten *Terminologie*. Für noch mehr Details und weitere *fachspezifische* Erklärungen müsstest du dich woanders umsehen. -*Multisig* means that a transaction needs multiple signatures before it can be submitted to the Monero network and executed. Instead of one Monero wallet creating, signing, and submitting transactions all on its own, you will have a whole group of wallets and collaboration between them to transact. +*Multisig* bedeutet, dass eine Transaktion mehrere Signaturen benötigt, bevor sie im Monero-Netzwerk eingereicht und ausgeführt werden kann. Anstelle eines einzigen Monero-Wallets, welches Transaktionen erstellt, signiert und absendet, hast du nun eine ganze Gruppe von Wallets, die zwecks Transaktion kollaborieren. -In this manual those wallets, or if you prefer, the people controlling them, are called *authorized signers*. Depending on the type of multisig used, not **all** authorized signers need to sign before a transaction becomes valid, but only a subset of them. The corresponding number (which is equal to or smaller than the number of authorized signers) is called *required signers*. +In dieser Anleitung werden diese Wallets - oder die sie kontrollierenden Personen, wenn du es so präferierst - *autorisierte Unterzeichner* genannt. Je nach Form des genutzten Multisigs müssen zur Validierung einer Transaktion nicht **alle** der autorisierten Unterzeichner, sondern nur eine Teilmenge dieser signieren. Die entsprechende Anzahl (die kleiner oder gleich der Anzahl autorisierter Unterzeichner ist) wird als *erforderliche Unterzeichner* bezeichnet. -The usual notation in use here is *M/N*, with *M* standing for the number of required signers, and *N* standing for the total number of authorized signers. For example, probably the most useful and most popular type of multisig is written as *2/3*: Out of a total of **three** authorized signers, any **two** are needed to make a transaction valid. +Die üblicherweise genutzte Schreibweise ist *M/N*, wobei *M* für die Anzahl erforderlicher Unterzeichner und *N* für die Gesamtzahl autorisierter Unterzeichner steht. So wird bspw. die vermutlich nützlichste und beliebteste Multisig-Form als *2/3* geschrieben: Aus einer Gesamtsumme von **drei** autorisierten Unterzeichnern werden **zwei** beliebige Unterzeichner zur Validation einer Transaktion benötigt. -For technically "simple" coins like Bitcoin and its forks doing multisig transactions consists of the following steps: +Bei technisch "einfacheren" Coins wie Bitcoin und dessen Abspaltungen ist der Ablauf von Multisig-Transaktionen wie folgt: -* Configure the multisig wallets and establish the multisig address -* Fund the multisig wallets / the multisig address so there is something to spend in the first place -* Do as many multisig transactions as you like +* Multisig-Wallets einrichten und die Multisig-Adresse herleiten +* Multisig-Wallets/die Multisig-Adresse mit Guthaben ausstatten, sodass überhaupt etwas ausgegeben werden kann +* So viele Multisig-Transaktionen durchführen, wie gewünscht -Monero adds one more type of step, necessary for internal bookkeeping so to speak. Simply told all the mechanisms that make Monero transactions truly private complicate things and lead to a necessity to exchange information between wallets to enable them to correctly process transactions, both incoming and outgoing. +Monero fügt dem eine Art weiteren Schritt hinzu, der gleichsam wichtig für die interne Buchhaltung ist. Einfach gesagt komplizieren all die Mechanismen, die Monero-Transaktionen wahrlich privat machen, doch so einiges und führen zu der Notwendigkeit des Austauschs von Informationen zwischen Wallets, um diese dazu zu befähigen, ein- wie ausgehende Transaktionen richtig zu verarbeiten. -The MMS uses the term *syncing* for the process to making wallets ready to transact again after sending or receiving transactions, and *multisig sync data* or simply *sync data* for the information that has to be exchanged to achieve that. +Das MMS nutzt den Begriff *syncing* ("Synchronisieren") für den Vorgang der Wiederherstellung der Betriebsbereitschaft, durch welchen Wallets nach dem Senden/Empfangen einer Transaktion auf neue Transaktionen vorbereitet werden. *multisig sync data* oder auch einfach *sync data* bezeichnet die Informationen, die dazu notwendigerweise ausgetauscht werden müssen. -So the steps for Monero multisig look like that: +Die Schritte des Monero-Multisigs sehen also so aus: -* Configure the multisig wallets and establish the multisig address -* Fund the multisig wallets / the multisig address so there is something to spend in the first place -* Sync the wallets for a first time -* Do 1 multisig transaction -* Sync the wallets again -* Do another multisig transaction and/or receive more funds -* Sync the wallets yet again -* ... +* Multisig-Wallets einrichten und die Multisig-Adresse herleiten +* Multisig-Wallets/die Multisig-Adresse mit Guthaben ausstatten, sodass überhaupt etwas ausgegeben werden kann +* Wallets erstmalig synchronisieren +* Eine Multisig-Transaktion tätigen +* Wallets erneut synchronisieren +* Eine weitere Multisig-Transaktion tätigen und/oder Geld empfangen +* Wallets ein weiteres Mal synchronisieren +* ... -The "value" of the MMS is making it easy and painless to exchange all those data packets between the wallets, and telling the signers at which point of the "workflow" they currently are and what has to be the next action in order to proceed. +Der Nutzen des MMS ist die Vereinfachung des Austauschs all dieser Datenpakete zwischen den Wallets. Außerdem wird Unterzeichnern mitgeteilt, in welchem Schritt des Arbeitsablaufs sie sich gerade befinden und was der nächste Schritt zum Fortfahren ist. -## The Architecture of the MMS +## Die Architektur des MMS -The MMS basically has 3 parts: +Das MMS besteht im Grunde aus drei Teilen: -* A set of new commands in the CLI wallet -* A running instance of PyBitmessage reachable from the computer running the CLI wallet, doing message transport on behalf of the wallet -* Internal code extensions to wallet code managing a new `.mms` file per wallet with the messages in it and interfacing with PyBitmessage +* Einem Satz neuer Befehle im CLI-Wallet +* Einer laufenden Instanz von PyBitmessage, die für den Computer, auf welchem das CLI-Wallet läuft, erreichbar ist und im Namen des Wallets Nachrichten transportiert +* Internen Erweiterungen des Wallet-Codes, die pro Wallet eine neue `.mms`-Datei, die Nachrichten enthält, verwalten und mit PyBitmessage koppeln -[PyBitmessage](https://bitmessage.org/wiki/Main_Page) is currently the only supported program for message transport, the MMS won't "speak" to any other system. You can't use e-mail nor any other of the myriad of communication programs out there. If you don't like PyBitmessage or can't run it for any reason you won't be able to use the current version of the MMS. +[PyBitmessage](https://bitmessage.org/wiki/Main_Page) ist das derzeit einzige unterstützte Nachrichtentransportprogramm; das MMS "interagiert" nicht mit anderen Systemen. Du kannst weder E-Mails noch irgendein anderes der unzähligen Kommunikationsprogramme da draußen verwenden. Wenn dir PyBitmessage nicht gefällt oder du es aus etwaigen Gründen nicht betreiben kannst, wird es dir nicht möglich sein, die aktuelle Version des MMS zu nutzen. -The author of the MMS hopes that you will give it a try: PyBitmessage is fully open source, is under continued development, has enough users to almost assure message transport at any time, and takes privacy very seriously - just like Monero. +Der Schöpfer des MMS hofft, dass du es zumindest ausprobierst: PyBitmessage ist komplett quelloffen, befindet sich in kontinuierlicher Entwicklung, hat genügend Nutzer, um den Nachrichtentransport beinahe jederzeit sicherzustellen und nimmt Privatsphäre sehr ernst - genau wie Monero. -Hopefully a future MMS will build on Monero's "native" private communication system, [Kovri](https://kovri.io/), but we are probably still quite some time away from a Kovri release ready for broad use. +Ein zukünftiges MMS wird hoffentlich auf Moneros "eigenem", privaten Kommunikationssystem ([Kovri](https://kovri.io/)) aufgebaut; wir sind aber wahrscheinlich immer noch eine ganze Weile von der Veröffentlichung einer breit verwendbaren Kovri-Version entfernt. -MMS communications should be **safe**: The Bitmessage system is considered safe as it's completely invisible who sends messages to whom, and all traffic is encrypted. For additional safety the MMS encrypts any message contents itself as well: Nobody except the receiver of an MMS message can decrypt and use its content, and the messages are signed, meaning the receiver can be sure they come from the right sender. +Kommunikationen des MMS sollten **sicher** sein: Das Bitmessage-System wird als sicher erachtet, da Informationen darüber, wer an wen Nachrichten sendet, komplett unsichtbar sind. Jeder Datenverkehr ist verschlüsselt. Für zusätzliche Sicherheit verschlüsselt das MMS auch alle Inhalte jeder Nachricht: Abgesehen vom Empfänger einer MMS-Nachricht kann niemand ihre Inhalte entschlüsseln und verwenden. Außerdem sind die Nachrichten signiert, wodurch der Empfänger sicher sein kann, dass sie von den richtigen Sendern stammen. -## The MMS User Experience +## Das Benutzererlebnis des MMS -To see the "user experience" of multisig in the CLI wallet **without** MMS you can e.g. check [here](https://taiga.getmonero.org/project/rbrunner7-really-simple-multisig-transactions/wiki/22-multisig-in-cli-wallet) and [here](https://taiga.getmonero.org/project/rbrunner7-really-simple-multisig-transactions/wiki/23-multisig-in-cli-wallet). +Um **ohne** MMS das "Benutzererlebnis" des Multisigs im CLI-Wallet zu erfahren, kannst du bspw. [hier](https://taiga.getmonero.org/project/rbrunner7-really-simple-multisig-transactions/wiki/22-multisig-in-cli-wallet) und [hier](https://taiga.getmonero.org/project/rbrunner7-really-simple-multisig-transactions/wiki/23-multisig-in-cli-wallet) nachsehen. -Those pages are also useful to familiarize yourself with the steps for multisig transactions in general, as the MMS will not change the order of the steps or make any of them superfluous, but will just make execution considerably easier, and the MMS will be able to tell you the next step in order automatically in most cases. +Diese Seiten sind auch nützlich, um sich mit den Schritten von Multisig-Transaktionen im Allgemeinen vertraut zu machen. Das MMS wird weder die Schrittfolge ändern oder irgendeinen dieser Schritte überflüssig machen, aber es wird die Ausführung deutlich vereinfachen. Dabei wird das MMS dazu in der Lage sein, dir in den meisten Fällen automatisch und der Reihe nach die nächsten Schritte mitzuteilen. -### A Messaging System +### Ein Nachrichtensystem -The general approach of the MMS is very **similar to e-mail**: You send messages around, with the MMS command set in the CLI wallet playing the part of your e-mail client, allowing you to send messages, receive messages and manage a list of stored messages, something like a combined inbox and outbox. +Der allgemeine Ansatz der MMS ist ziemlich **ähnlich zur E-Mail**: Wenn du Nachrichten umhersendest, agieren die MMS-Befehle im CLI-Wallet als dein E-Mail-Client und erlauben es dir damit, Nachrichten zu senden, zu empfangen und außerdem ein Verzeichnis abgespeicherter Nachrichten zu unterhalten - in etwa wie ein kombinierter Postein- und ausgang. -The contents of those messages are of course all those things that must be transported between the wallets of the signers: key sets, wallet sync data, transactions to sign and/or submit to the network. +Der Inhalt dieser Nachrichten umfasst natürlich all die Dinge, die zwischen den Wallets der Unterzeichner umhertransportiert werden müssen: Sätze von Schlüsseln, Synchronisationsdaten von Wallets und eben die zu signierenden und/oder im Netzwerk einzureichenden Transaktionen. -PyBitmessage is used for the actual message transport and thus plays the part of your e-mail server. Once configuration is done sending and receiving messages is fully automatic i.e. needs no manual intervention. +PyBitmessage wird hierbei für den tatsächlichen Nachrichtentransport genutzt und übernimmt damit die Aufgabe deines E-Mail-Servers. Sobald die Einrichtung abgeschlossen ist, läuft das Senden und Empfangen von Nachrichten komplett automatisch ab und benötigt damit keinen manuellen Eingriff. -You don't use e-mail addresses, but Monero addresses to tell where messages should go, and you only ever send messages to other authorized signers: E.g. with 2/3 multisig you only have 2 partners to send something to. +Statt E-Mail-Adressen werden Monero-Adressen genutzt, welche die Ziele der Nachrichten kennen. Du schickst Nachrichten immer nur an autorisierte Unterzeichner: Mit einem 2/3-Multisig hast du bspw. lediglich zwei Partner, an die du etwas sendest. -Like with e-mail people don't have to be online at the same time for message transport to work: PyBitmessage will keep messages for up to 2 days, giving you time to fetch them. +Wie bei E-Mails müssen Personen nicht gleichzeitig online sein, damit der Nachrichtentransport funktioniert: PyBitmessage speichert Nachrichten für bis zu zwei Tage und gibt dir damit Zeit, sie abzurufen. -The approach is in general quite flexbile and robust: If you need messages from several signers to proceed the MMS will wait until it finds all of them in the list of received messages, and the order of reception does not matter either, which results in a quite unstressed experience. +Im Allgemeinen ist dieser Ansatz ziemlich flexibel und robust: Solltest du zum Fortfahren Nachrichten mehrerer Unterzeichner benötigen, wartet das MMS, bis es all diese in seiner Liste empfangener Nachrichten findet. Hierbei ist die Empfangsreihenfolge unwichtig, wodurch ein ziemlich entspanntes Nutzererlebnis generiert wird. -If another signer tells you that a particular message did not arrive or was lost somehow you can send it again anytime, picking it from the message list, like you would re-send an e-mail in a similar situation. +Wenn dir ein Unterzeichner mitteilt, dass eine bestimmte Nachricht nicht angekommen oder gar verschwunden ist, kannst du sie jederzeit erneut senden, indem du sie in der Nachrichtenliste auswählst - genauso, als würdest du in einer ähnlichen Situation eine E-Mail erneut absenden. -### Signers and Messages +### Unterzeichner und Nachrichten -So, where a "normal" Monero wallet without MMS simply told manages three types of data (addresses, accounts and transactions), the MMS adds two more: Signers and messages. +Während also ein "normales" Monero-Wallet ohne MMS - einfach gesagt - drei Arten von Daten (Adressen, Konten und Transaktionen) managt, fügt das MMS zwei weitere hinzu: Unterzeichner und Nachrichten. -The MMS manages, for each multisig wallet separately, a list of *authorized signers*. With 2/3 multisig that list has **three** entries. On a technical level, each entry represents a Monero wallet containing keys that can be used to sign multisig transactions. On a conceptual level it's easier to imagine a group of 3 people, i.e. yourself and 2 partners, as those "authorized signers". (Often there will be indeed 3 distinct people controlling the 3 wallets, but not always of course.) +Für jedes einzelne Multisig-Wallet managt das MMS eine separate Liste *autorisierter Unterzeichner*. Mit einem 2/3-Multisig umfasst eine solche Liste **drei** Einträge. Technisch gesehen repräsentiert jeder Eintrag ein Monero-Wallet, das zum Signieren von Multisig-Transaktionen verwendbare Schlüssel enthält. Konzeptuell gesehen ist es wohl einfacher, sich eine Gruppe von drei Leuten (etwa dich und zwei Partner) als ebendiese "autorisierten Unterzeichner" vorzustellen. (Häufig werden diese drei Wallets tatsächlich von drei verschiedene Menschen kontrolliert; dies ist aber natürlich nicht immer der Fall.) -The MMS also manages a single list of *messages* per wallet: All messages you send, plus all messages you receive. While the list of authorized signers is the same in all involved wallets, those messages of course differ. The more authorized signers there are to send you messages, and the longer you transact, the more messages will accumulate. +Das MMS unterhält außerdem eine einzelne Liste von *Nachrichten* pro Wallet, welche alle gesendeten und alle empfangenen Nachrichten enthält. Zwar ist die Liste autorisierter Unterzeichner in allen involvierten Wallets dieselbe, die Nachrichten unterscheiden sich jedoch. Je mehr autorisierte Unterzeichner vorhanden sind (die dir Nachrichten senden) und je länger du Transaktionen durchführst, desto mehr Nachrichten sammeln sich an. -## Getting the MMS +## Das MMS erhalten -Right now, at the time of writing this manual (year-end 2018), the MMS is only available as part of the latest Monero code (`master` branch on Monero's [GitHub repository](https://github.com/monero-project/monero)). To use it, you have to check out that source code and compile it yourself. Doing so is easiest on a Linux system. +Jetzt gerade, während des Verfassens dieser Anleitung (Jahresende 2018), ist das MMS nur als Teil des aktuellsten Monero-Codes (der `master`-Zweig in Moneros [GitHub-Repository](https://github.com/monero-project/monero)) verfügbar. Um es zu nutzen, musst du diesen Quellcode prüfen und eigenständig kompilieren. Das geht am einfachsten auf einem Linuxsystem. -With the next hardfork in Spring 2019 the MMS will become an integral standard part of the Monero software: You install Monero, you have it. +Mit dem nächsten Hardfork im Frühling 2019 wird das MMS zu einem integralen Bestandteil der Monero-Software: Du installierst Monero, du hast das MMS. -A word of caution: At the time of writing using the latest development Monero version does not lead to conflicts and complications with any regular Monero release software and downloaded blockchain on the same system, but that may change between now and the hardfork, especially near the hardfork. +Ein Wort der Warnung: Zur Zeit des Verfassens führt die Nutzung der aktuellsten Entwicklungsversion Moneros zu keinerlei Konflikten und Problemen mit jeglicher regulärer Versionssoftware und heruntergeladener Blockchain auf demselben System. Dies könnte sich aber in der Zwischenzeit von jetzt bis zum Hardfork - besonders um die Zeit des Hardforks herum - ändern. -## Installing and Configuring PyBitmessage +## PyBitmessage installieren und einrichten -Installing PyBitmessage is easy enough: You find links to downloads and install instructions from the [Bitmessage Wiki homepage](https://bitmessage.org/wiki/Main_Page). There are versions for all the major OS that Monero also supports: Linux, Windows, and macOS. +Die Installation von PyBitmessage ist einfach: Du findest Links zu Downloads und Installationsanleitungen auf der [Seite des Bitmessage-Wiki](https://bitmessage.org/wiki/Main_Page). Dort sind Versionen für alle geläufigen, durch Monero unterstützten Betriebssysteme verfügbar: Linux, Windows und macOS. -After installing run it, configure a Bitmessage address for you and note it, as you will later need it to configure your multisig wallet. +Führe das Programm nach dem Installieren aus, richte eine Bitmessage-Adresse für dich ein und notiere diese, da du sie später zum Einrichten deines Multisig-Wallets benötigen wirst. -Don't worry right away if PyBitmessage does not seem to connect to the Bitmessage network when you run it the first time: Due to the decentral nature of that network it can take quite some time for your initial connect. It seems this often takes **half an hour**. +Mache dir keine Sorgen, wenn sich PyBitmessage nach dem ersten Start nicht gleich zum Bitmessage-Netzwerk zu verbinden scheint: Aufgrund des dezentralen Charakters dieses Netzwerks kann es bis zur ersten Verbindung eine ganze Weile dauern. Es scheint, als dauere dies häufig eine **halbe Stunde**. -Likewise sending the very first message to a brand-new Bitmessage address can take time because there is a key exchange involved, sometimes another half of an hour. Once the key exchange is done messages are typically delivered within a few minutes however, sometimes within seconds. +Ebenso kann das Senden der allerersten Nachricht an eine brandneue Bitmessage-Adresse einige Zeit - manchmal eine weitere halbe Stunde - dauern, weil hier ein Schlüsselaustausch involviert ist. Sobald dieser abgeschlossen ist, werden Nachrichten üblicherweise innerhalb weniger Minuten und manchmal schon nach Sekunden zugestellt. -You don't need to configure more than one Bitmessage address for you. You can run several multisig wallets over a **single** address without any problems because the MMS will be able to pick the right messages for the right wallets. You can even continue to use the same address for "normal" messages; those won't disturb the MMS, it will simply ignore any messages not intended for it. +Du musst nicht mehr als eine Bitmessage-Adresse für dich einrichten. Du kannst problemlos mehrere Multisig-Wallets über eine **einzige** Adresse betreiben, weil das MMS die richtigen Nachrichten für die jeweils korrekten Wallets herausfiltert. Du kannst sogar dieselbe Adresse für "normale" Nachrichten verwenden; da das MMS schlicht jegliche Nachrichten, die nicht für ebenjenes gedacht sind, ignoriert, werden diese es nicht stören. -Out of the box your PyBitmessage installation is not yet ready for use with the MMS because it does not allow other programs to use its API per default, you have to enable this explicitely (which makes sense, of course, for security reasons). +Die vorkonfigurierte PyBitmessage-Installation ist in Verbindung mit dem MMS zunächst nicht einsatzbereit. Da es anderen Programmen standardmäßig die Verwendung seines APIs verwehrt, muss die entsprechende Berechtigung erst explizit erteilt werden (aus Sicherheitsgründen ergibt dies natürlich Sinn). -You find instructions how to **enable the API** on the [Bitmessage wiki API reference page](https://bitmessage.org/wiki/API_Reference). You will use the user name and the password you choose here later as command-line parameters for the CLI wallet so that the MMS will be able to log in to PyBitmessage. +Anleitungen bezüglich der **Freigabe des APIs** finden sich auf der [Bitmessage-Wiki-Seite zur "API reference"](https://bitmessage.org/wiki/API_Reference). Der hier gewählte Nutzername und das Passwort werden später als Befehlszeilenparameter für das CLI genutzt, damit der Log-in des MMS in PyBitmessage ermöglicht wird. -## Further PyBitmessage Tweaks +## Weitere PyBitmessage-Optimierungen -The current official release version 0.6.3.2 has a [Dandelion++ protocol extension](https://arxiv.org/abs/1805.11060) built-in that hardens the network further against attacks that try to track message flow to find out who sends messages to whom. Unfortunately it seems that it has still a bug somewhere that can lead to wildly differing and very long message transmission times which is quite unfortunate when using the MMS. +Die aktuelle, offizielle Freigabeversion 0.6.3.2 verfügt über eine eingebaute [Dandelion++-Protokollerweiterung](https://arxiv.org/abs/1805.11060), die das Netzwerk gegenüber Angriffen, in welchen versucht wird, durch Verfolgen des Nachrichtenflusses Sender und Empfänger von Nachrichten auszumachen, verstärkt. Unglücklicherweise scheint irgendwo ein Bug zu existieren, der zu sehr unterschiedlichen und extrem langen Nachrichtenübertragungszeiten führen kann - beim Verwenden des MMS ist das ziemlich unerfreulich. -There is a way to switch off Dandelion++ which, in general, is not recommended of course, but useful for using the MMS as of now: +Es besteht die Möglichkeit, Dandelion++ auszuschalten. Dies wird natürlich nicht empfohlen, kann für den Augenblick allerdings durchaus nützlich sein, um das MMS verwenden zu können: -* Locate PyBitmessage's config file `keys.dat` -* Make a new section there named `[network]` -* Add the following line to this new section: `dandelion = 0` -* Restart PyBitmessage +* Lokalisiere die PyBitmessage-Konfigurationsdatei `keys.dat` +* Erstelle dort einen neuen, `[network]` genannten Abschnitt +* Füge zu diesem neuen Abschnitt folgende Zeile hinzu: `dandelion = 0` +* Starte PyBitmessage erneut -As a "good citizen" you may consider to open your PC for access from other Bitmessage nodes to your node from the outside by opening port 8444. You find background info about that in their [FAQ](https://bitmessage.org/wiki/FAQ). It's not strictly necessary however for your client to function. +Als "guter Bürger" möchtest du anderen Bitmessage-Nodes eventuell den Zugriff auf deinen Node ermöglichen. Dies erreichst du durch Öffnen des Ports 8444. Hintergrundinformationen darüber findest du im [Bitmessage-FAQ](https://bitmessage.org/wiki/FAQ). Damit dein Client funktioniert, ist dies aber nicht unbedingt notwendig. -## MMS Command Overview +## Befehlsübersicht des MMS -There is only **one** new command in the CLI wallet that gives access to the MMS, sensibly called `mms`. That command has however quite a number of subcommands to handle all the various functions of the MMS. Here a list of the commands; for details each command has its own chapter later in the manual: +Es gibt lediglich **einen** neuen Befehl im CLI-Wallet, der den Zugriff auf das MMS ermöglicht und - ganz zweckmäßig - die Bezeichnung `mms` trägt. Allerdings hat dieser Befehl eine ganze Zahl an Unterbefehlen, mit denen die verschiedenen Funktionen des MMS bedient werden. Hier ist eine Liste dieser Befehle; jeder Befehl hat aber auch im späteren Verlauf dieser Anleitung sein eigenes, detailliertes Kapitel. - init Initialize and configure the MMS - info Display current MMS configuration - signer Define a signer by giving a single-word label, a transport address, and a Monero address, or list all defined signers - list List all messages - next Evaluate the next possible multisig-related action(s) according to wallet state, and execute or offer for choice - sync Force generation of multisig sync data regardless of wallet state, to recover from special situations like "stale data" errors - transfer Initiate transfer with MMS support; arguments identical to normal 'transfer' command arguments, for info see there - delete Delete a single message by giving its id, or delete all messages by using 'all' - send Send a single message by giving its id, or send all waiting messages - receive Check right away for new messages to receive - note Send a one-line note message to a signer, identified by its label, or show all unread notes - show Show detailed info about a single message - export Export the content of a message to file - set Set options, 'auto-send' being the only one so far - - start_auto_config Start the auto-config process at the auto-config manager's wallet by creating new tokens - auto_config Start auto-config by using the token received from the auto-config manager - stop_auto_config Delete any tokens and abort an auto-config process - send_signer_config Send your complete signer configuration to all other signers - -You get the list of commands by issuing `help mms`, and help for a particular subcommand by using `help mms `, e.g. `help mms next`. You can alternatively use `mms help ` if that feels more natural. + init MMS initialisieren und einstellen + info Aktuelle MMS-Einstellung anzeigen + signer Einen Unterzeichner durch ein Ein-Wort-Label, eine Transportadresse und eine Monero-Adresse bestimmen oder alle festgelegten Unterzeichner auflisten + list Alle Nachrichten auflisten + next Die nächste(n) potentielle(n) Multisig-bezogenen Aktion(en) gemäß Wallet-Status auswerten und wahlweise zeigen oder ausführen + sync Erstellung von Multisig-Synchronisationsdaten ungeachtet des Wallet-Status, um nach besonderen Situationen, etwa Fehlern aufgrund "veralteter Daten", wiederherzustellen + transfer Übertragung mit MMS-Unterstützung einleiten; Argumente sind identisch mit üblichen "transfer"-Befehlen, für Infos dort nachsehen + delete Eine einzelne Nachricht durch Angabe ihrer ID löschen oder unter Verwendung von "all" alle Nachrichten löschen + send Eine einzelne Nachricht durch Angabe ihrer ID versenden oder alle ausstehenden Nachrichten senden + receive Unmittelbar auf zu empfangene Nachrichten überprüfen + note Eine einzeilige, durch ihr Label gekennzeichnete Notiz als Nachricht an einen Unterzeichner senden oder alle ungelesenen Notizen anzeigen + show Detaillierte Infos über eine einzelne Nachricht anzeigen + export Den Inhalt einer Nachricht in eine Datei exportieren + set Einstellungen festlegen; die einzige Option ist bislang 'auto-send' + start_auto_config Den Auto-Config-Prozess im Wallet des Auto-Config-Managers durch Erstellen neuer Token starten + auto_config Auto-Config unter Verwendung des vom Auto-Config-Manager erhaltenen Token starten + stop_auto_config Jegliche Token löschen und Auto-Config-Prozess abbrechen + send_signer_config Deine gesamte Unterzeichner-Konfiguration an alle anderen Unterzeichner senden -## Configuring a Wallet for Use with the MMS +Du erhältst die Liste der Befehle durch Erteilen des `help mms`-Befehls. Durch `help mms ` (bspw. `help mms next`) erhältst du Hilfestellung für einen bestimmten Unterbefehl. Alternativ kannst du `mms help ` nutzen, wenn dir das natürlicher erscheint. -### Addresses and Labels +## Ein Wallet zur Nutzung mit MMS einrichten -First for better understanding some basic facts about addressing and referring to signers (or their wallets respectively) in the MMS: +### Adressen und Labels -If you create a new wallet it gets (of course) its own, unique public Monero address. If you later configure the wallet for multisig, the wallet **changes** its public address to the common multisig address that you share with all the other authorized signers. +Zwecks besserer Verständlichkeit hier einige grundlegende Fakten zum Adressieren von Unterzeichnern und Verweisen an ebendiese (bzw. ihre Wallets) via MMS: -The MMS uses the first, "original" public Monero address over the whole wallet lifetime for addressing, before **and** after "going multisig". It may be a little confusing that a wallet should have **two** public addresses somehow, but once you got the original address into your signer configuration you can more or less forget about it. +Wenn du ein neues Wallet erstellst, bekommt dieses (natürlich) seine eigene, einzigartige, öffentliche Monero-Adresse. Konfigurierst du das Wallet später für Multisig, **ändert** das Wallet seine öffentliche Adresse in die gemeinsame Multisig-Adresse, welche du mit allen anderen autorisierten Unterzeichnern teilst, ab. -The MMS uses *labels* that allow you to name yourself and the other signers, and that the MMS commands use when referring to signers. (Using Monero addresses or Bitmessage addresses in such commands would be quite cumbersome.) +Das MMS nutzt über die gesamte Laufzeit des Wallets zum Adressieren die erste, "ursprüngliche", öffentliche Monero-Adresse, vor **und** nach dem Übergang zu Multisig. Es mag etwas verwirrend sein, dass ein Wallet irgendwie **zwei** öffentliche Adressen haben sollte; sobald die ursprüngliche Adresse in deine Unterzeichner-Einstellung integriert ist, musst du nicht mehr wirklich darüber nachdenken. -Labels must be one word, and they must be unique within a single wallet. The example later on in this manual uses the labels `alice` and `bob` for a case of 2/2 multisig. +Das MMS verwendet *Labels*, die es dir erlauben, dich selbst und andere Unterzeichner zu benennen. Diese Labels nutzt das MMS, wenn es an Unterzeichner verweist. (In solcherlei Befehlen wäre es ziemlich mühselig, Monero- oder Bitmessage-Adressen zu verwenden.) -### Running CLI Wallet +Labels müssen aus einem Wort bestehen und innerhalb eines einzelnen Wallets einzigartig sein. In einem späteren Beispiel innerhalb dieser Anleitung werden für ein 2/2-Multisig die Labels `alice` und `bob` genutzt. -When you start the CLI wallet for use with the MMS there are the following two new (optional) command line parameters for connecting to PyBitmessage: +### CLI-Wallet starten + +Wenn du das CLI-Wallet zum Gebrauch mit dem MMS öffnest, existieren zwei neue (optionale) Befehlszeilenparameter, um zu PyBitmessage zu verbinden: --bitmessage-address Use PyBitmessage instance at URL --bitmessage-login Specify as username:password for PyBitmessage API -If you have PyBitmessage running on the same machine as the CLI wallet the default for the first parameter will do, and you should not need to set anything different. If it does not seem to find it despite running locally try to use `http://localhost` or `http://127.0.0.1` as argument for the first parameter. +Wenn du auf dem gleichen Gerät sowohl PyBitmessage als auch das CLI-Wallet betreibst, ist die Voreinstellung des ersten Parameters ausreichend und es sollte nicht notwendig sein, eine andere Einstellung vorzunehmen. Wenn diese Voreinstellung trotz lokalen Betriebs nicht gefunden wird, kannst du versuchen, `http://localhost` oder `http://127.0.0.1` als Argument für den ersten Parameter zu verwenden. -Beside that, you need of course either `--testnet` or `--stagenet` to connect to the right network. Also using `--log-level 0` could be useful: This instructs the wallet to write detailed info into its logfile that might help to find bugs or problems with the MMS. +Um dich zum richtigen Netzwerk zu verbinden, benötigst du daneben natürlich entweder `--testnet` oder `--stagenet`. Auch der Gebrauch von `--log-level 0` könnte nützlich sein: Das Wallet wird hierdurch angewiesen, detaillierte Infos in seine Logdatei zu schreiben, welche zum Finden von Bugs oder Problemen innerhalb des MMS hilfreich sein könnten. -So a complete command line for the CLI wallet could look like this: +Eine komplette Befehlszeile für das CLI-Wallet könnte also so aussehen: ./monero-wallet-cli --testnet --bitmessage-login mmstest:p4ssw0rd --log-level 0 -### Initializing the MMS +### MMS initialisieren -After creating a new wallet you have to initialize it for use with the MMS; without that crucial first step you won't be able to use any MMS features. The command to do so is `mms init`: +Nach dem Erstellen eines neuen Wallets musst du es zunächst für den Gebrauch mit dem MMS vorbereiten, da es dir ohne diesen essenziellen ersten Schritt nicht möglich sein wird, jegliche MMS-Funktionen zu nutzen. Der entsprechende Befehl lautet `mms init`: mms init / -`own_transport_address` is the Bitmessage address that you configured in your own PyBitmessage program. A full `init` command could look like this: +`own_transport_address` ist die Bitmessage-Adresse, welche du in deinem eigenen PyBitmessage-Programm eingestellt hast. Ein kompletter `init`-Befehl könnte wie folgt aussehen: mms init 2/2 alice BM-2cUVEbbb3H6ojddYQziK3RafJ5GPcFQv7e -Use that `init` command **only once**: Executing it a second time will completely re-initialize the MMS by deleting any signer info and any messages, which you don't want except in special circumstances. +Nutze diesen `init`-Befehl nur **ein Mal**: Eine zweite Ausführung würde das MMS durch Löschen jeglicher Unterzeichner-Informationen und Nachrichten neu initialisieren; abgesehen von besonderen Umständen ist dies nicht gewünscht. -If you want to go through a MMS test as fast as possible you can instruct the wallet to ask for the password only when strictly necessary for technical reasons, and tell the MMS to send any generated message right away instead of prompting before doing so: +Wenn du einen MMS-Test schnellstmöglich durchführen möchtest, kannst du dein Wallet anweisen, das Passwort nur im technisch unbedingt notwendigen Fall abzufragen. Außerdem kannst du dem MMS befehlen, jede erstellte Nachricht direkt und ohne vorheriges Anzeigen abzusenden: set ask-password 0 mms set auto-send 1 -(Both those settings are active during the 2/2 multisig example shown in this manual.) +(Beide Einstellungen sind in dem in dieser Anleitung angeführten 2/2-Multisig-Beispiel aktiviert.) -### Configuring Signers +### Unterzeichner einrichten -About each signer the MMS needs to know three things: +Das MMS muss drei Infos eines jeden Unterzeichners wissen: -* The one-word *label* that you will use to refer to that signer -* The *transport address* which currently means their Bitmessage address as long as this is the only supported message transport system -* The *Monero address* i.e. the "original" Monero address of their wallet +* Das Ein-Wort-*Label*, um an diesen Unterzeichner weiterzuleiten +* Die *Transportadresse*, was derzeit und bis zur Unterstützung anderer Nachrichtentransportsysteme die Bitmessage-Adresse ist +* Die *Monero-Adresse*, sprich die *ursprüngliche* Monero-Adresse des Wallets -(See also above chapter *Addresses and Labels*.) +(Siehe auch das vorhergehende Kapitel *Adressen und Labels*.) -You don't have to create signers; after the `mms init` command they are already all "there", although without any info yet with the exception of yourself. The commands for setting signer information refer to them by number, 1 up to the total number of authorized signers, so 1 and 2 in the following 2/2 multisig example with signers named *Alice* and *Bob* and thus with the labels *alice* and *bob*. +Du musst die Unterzeichner nicht erst erstellen: Nach dem `mms init`-Befehl sind die bereits "da", obgleich bisher - mit Ausnahme von dir selbst - ohne jegliche Info. Die Befehle zum Einstellen der Unterzeichnerinformationen beziehen sich via Nummer auf die jeweiligen Unterzeichner, von eins bis hin zur Gesamtzahl der autorisierten Unterzeichner. Im folgenden 2/2-Multisig-Beispiel sind das also die Zahlen "1" und "2" für Unterzeichner mit den Namen "Alice" und "Bob" und damit den Labeln *alice* und *bob*. -After the above sample `init` command the list of signers looks like that: +Nach dem obigen, beispielhaftem Ausführen des `init`-Befehls würde die Unterzeichnerliste also so aussehen: # Label Transport Address Auto-Config Token Monero Address @@ -281,37 +280,37 @@ After the above sample `init` command the list of signers looks like that: 2 -Note that signer #1 is always "me" i.e. your own label, transport address and Monero address. So in Alice's signer list #1 will be Alice and #2 will be Bob, while in Bob's wallet it will be exactly the other way round. +Beachte, dass Unterzeichner Nr. 1 immer "du" bist, also dein eigenes Label, deine Transport- und deine Monero-Adresse. In Alice' Unterzeichnerliste wird Alice selbst als Nr. 1 und Bob als Nr. 2 aufgeführt sein. In Bobs Wallet wäre es dagegen genau umgekehrt. -There are **three ways** to complete signer information: You can enter it manually, or you can use the auto-config mechanism that the MMS offers, which has a second, "semi-automatic" variant. With 2/2 there is hardly a difference in effort, but with higher numbers of signers auto-config is easier and more reliable. In any case, one advantage of auto-config is a secure transport of addresses because PyBitmessage is used. +Zum Vervollständigen der Unterzeichnerinformationen gibt es **drei Wege**: Du kannst diese manuell eingeben oder den vom MMS angebotenen Auto-Config-Vorgang (oder dessen "halbautomatische" Variante) nutzen. Bei 2/2 macht dies wohl keinen großen Unterschied bezüglich des Arbeitsaufwands, mit höheren Anzahlen von Unterzeichnern ist Auto-Config jedoch leichter und verlässlicher. Ein Vorteil von Auto-Config ist aufgrund der Nutzung von PyBitmessage in jedem Fall ein sicherer Adressentransport. -So pick **one** method from the three following chapters *Manually Configuring Signers*, *Auto-Config* and *Sending Signer Information*: +Wähle also **eine** Methode aus den drei folgenden Kapiteln (*Unterzeichner manuell einrichten*, *Auto-Config* und *Unterzeichnerkonfiguration senden*) aus: -### Manually Configuring Signers +### Unterzeichner manuell einrichten -The command to manually enter signer info and display the list of signers is `mms signer`: +Zur manuellen Eingabe der Unterzeichnerinformationen und zum Anzeigen der Unterzeichnerliste wird der Befehl `mms signer` ausgeführt: mms signer [