Signal Messenger hat die Veröffentlichung des Servercodes und die integrierte Kryptowährung wieder aufgenommen

Die Signal Technology Foundation, die das sichere Kommunikationssystem Signal entwickelt, hat die Veröffentlichung des Codes für die Serverteile des Messengers wieder aufgenommen. Der Code des Projekts war ursprünglich Open-Source unter der AGPLv3-Lizenz, aber die Veröffentlichung von Änderungen im öffentlichen Repository wurde am 22. April letzten Jahres ohne Begründung gestoppt. Die Repository-Aktualisierung wurde nach der Ankündigung der Absicht, ein Zahlungssystem in Signal zu integrieren, eingestellt.

Vor kurzem haben wir damit begonnen, das in Signal integrierte Zahlungssystem zu testen, das auf unserer eigenen Kryptowährung MobileCoin (MOB) basiert und von Moxie Marlinspike, dem Autor des Signal-Protokolls, entwickelt wurde. Etwa zur gleichen Zeit wurden im Laufe des Jahres gesammelte Änderungen an Serverkomponenten im Repository veröffentlicht, darunter auch solche, die die Implementierung eines Zahlungssystems beinhalteten.

Signal Messenger hat die Veröffentlichung des Servercodes und die integrierte Kryptowährung wieder aufgenommen

Die Kryptowährung MobileCoin wurde entwickelt, um ein mobiles Zahlungsnetzwerk aufzubauen, das die Privatsphäre der Benutzer gewährleistet. Die Benutzerdaten bleiben nur in ihren Händen und Signalentwickler oder Infrastrukturelementadministratoren haben keine Möglichkeit, auf Geld, Benutzerkontodaten und Transaktionsverlauf zuzugreifen. Das Zahlungsnetzwerk hat keinen einzigen Kontrollpunkt und basiert auf der Idee des gemeinsamen Eigentums, dessen Kern darin besteht, dass alle Netzwerkfonds als eine Sammlung einzelner Aktien gebildet werden, die ausgetauscht werden können. Der Gesamtbetrag der Mittel im Netzwerk ist auf 250 Millionen MOB festgelegt.

MobileCoin basiert auf einer Blockchain, die den Verlauf aller erfolgreichen Zahlungen speichert. Um den Besitz von Geldern zu bestätigen, müssen Sie über zwei Schlüssel verfügen – einen Schlüssel zum Überweisen von Geldern und einen Schlüssel zum Anzeigen des Status. Für die meisten Benutzer können diese Schlüssel von einem gemeinsamen Basisschlüssel abgeleitet werden. Um eine Zahlung zu erhalten, muss der Benutzer dem Absender zwei öffentliche Schlüssel zur Verfügung stellen, die den vorhandenen privaten Schlüsseln entsprechen, die zum Senden und Verifizieren des Besitzes der Gelder verwendet werden. Transaktionen werden auf dem Computer oder Smartphone des Benutzers generiert und anschließend an einen der Knoten übertragen, der den Status eines Validators zur Verarbeitung in einer isolierten Enklave hat. Validatoren verifizieren die Transaktion und tauschen Transaktionsinformationen Peer-to-Peer mit anderen Knoten im MobileCoin-Netzwerk aus.

Daten können nur an Knoten übertragen werden, die die Verwendung von unverändertem MobileCoin-Code in der Enklave kryptografisch verifiziert haben. Jede isolierte Enklave repliziert eine Zustandsmaschine, die mithilfe des MobileCoin Consensus Protocol gültige Transaktionen zur Blockchain hinzufügt, um Zahlungen zu bestätigen. Knoten können auch die Rolle vollständiger Validatoren übernehmen, die zusätzlich eine öffentliche Kopie der berechneten Blockchain in Content-Delivery-Netzwerken erstellen und hosten. Die resultierende Blockchain enthält keine Informationen, die eine Identifizierung eines Benutzers ermöglichen, ohne seine Schlüssel zu kennen. Die Blockchain enthält nur Identifikatoren, die auf der Grundlage der Schlüssel des Benutzers berechnet werden, verschlüsselte Daten über Gelder und Metadaten zur Integritätskontrolle.

Um die Integrität sicherzustellen und nachträglich vor Datenkorruption zu schützen, wird eine Merkle-Tree-Baumstruktur verwendet, bei der jeder Zweig alle zugrunde liegenden Zweige und Knoten durch gemeinsames (Baum-)Hashing überprüft. Mit dem endgültigen Hash kann der Benutzer die Richtigkeit des gesamten Betriebsverlaufs sowie die Richtigkeit der vergangenen Zustände der Datenbank überprüfen (der Root-Verifizierungs-Hash des neuen Zustands der Datenbank wird unter Berücksichtigung des vergangenen Zustands berechnet). ).

Neben Validatoren verfügt das Netzwerk auch über Watcher-Knoten, die die digitalen Signaturen überprüfen, die Validatoren an jeden Block in der Blockchain anhängen. Beobachterknoten überwachen ständig die Integrität des dezentralen Netzwerks, verwalten ihre eigenen lokalen Kopien der Blockchain und stellen APIs für Wallet-Anwendungen und Exchange-Clients bereit. Den Validator und Observing Node kann jeder betreiben; dazu werden die entsprechenden Dienste, Enclave-Images für Intel SGX und der mobilecoind-Daemon verteilt.

Der Schöpfer von Signal begründete die Idee, Kryptowährungen in den Messenger zu integrieren, mit dem Wunsch, Benutzern ein benutzerfreundliches Zahlungssystem bereitzustellen, das die Privatsphäre schützt, ähnlich wie der Signal-Messenger die Sicherheit der Kommunikation gewährleistet. Bruce Schneier, ein bekannter Experte auf dem Gebiet der Kryptographie und Computersicherheit, kritisierte das Vorgehen der Signal-Entwickler. Schneier glaubt, dass es nicht die beste Lösung ist, alles auf eine Karte zu setzen, und es geht nicht darum, dass es zu einer Aufblähung und Komplexität des Programms führt, noch nicht einmal, dass die Verwendung von Blockchain zweifelhaft ist, und nicht, dass es sich um einen Versuch handelt Signal an eine Kryptowährung zu binden.

Das Hauptproblem besteht laut Schneier darin, dass das Hinzufügen eines Zahlungssystems zu einer Ende-zu-Ende-verschlüsselten Anwendung zusätzliche Bedrohungen mit sich bringt, die mit einem erhöhten Interesse seitens verschiedener Geheimdienste und staatlicher Regulierungsbehörden einhergehen. Sichere Kommunikation und sichere Transaktionen könnten problemlos als separate Anwendungen implementiert werden. Anwendungen, die eine starke Ende-zu-Ende-Verschlüsselung implementieren, werden bereits angegriffen, und es ist gefährlich, den Grad des Widerstands noch weiter zu erhöhen – wenn die Funktionalität kombiniert wird, wird die Auswirkung auf das Zahlungssystem die Funktionalität der Ende-zu-Ende-Verschlüsselung nach sich ziehen . Wenn ein Teil stirbt, stirbt das gesamte System.

Source: opennet.ru

Kommentar hinzufügen