Guten Tag!
Ich möchte einige interessante Gedanken zur Schaffung einer autonomen dezentralen E-Mail und zur praktischen Demonstration einer bereits existierenden Implementierung mit der Gemeinschaft teilen.
UrsprĂŒnglich wurde âTelegraphâ als Amateurkommunikationsmittel fĂŒr die Mitglieder unserer kleinen Studenten-Community entwickelt, die sich auf die Informatik und Kommunikation konzentrieren.
Nota Bene: âTelegraphâ ist ein Amateurkommunikationsmittel; einen praktischen Nutzen im industriellen MaĂstab zu ziehen, scheint ziemlich problematisch zu sein, dennoch kann dieses Problem kaum als wesentlich bezeichnet werden â hauptsĂ€chlich betrachten wir es als unser Ziel, Aufmerksamkeit auf die Entwicklung solcher Kommunikationssysteme zu lenken.
Wir neigen dazu zu glauben, dass ein erhöhtes allgemeines Interesse an der Entwicklung verschiedener Kommunikationssysteme eine notwendige und recht wichtige Angelegenheit ist, weil das VerstĂ€ndnis der grundlegenden Prinzipien, wie diese Systeme funktionieren und auf welchen Grundlagen sie basieren, der SchlĂŒssel zur Erhöhung des Bewusstseins der BĂŒrger in Fragen der Informationssicherheit ist.

Achtung!Um MissverstĂ€ndnisse zu vermeiden â in einigen FĂ€llen können Bilder geblĂ€ttert werden:

Das System funktioniert freiwillig und basiert auf reinem Enthusiasmus â wir tun einfach gerne, was wir tun. Sie können dies als Hobby betrachten und liegen damit nicht falsch â denn es gibt nach wie vor Liebhaber der Kommunikation durch die Verwendung von Briefkorrespondenz; âTelegraphâ kann in den meisten FĂ€llen als digitale Umsetzung der Funktionsweise der regulĂ€ren Post betrachtet werden.
âTelegraphâ stellt eine autonome Alternative zur E-Mail dar, die das Senden einfacher Textnachrichten ohne Internetverbindung ermöglicht. âTelegraphâ kann mehr oder weniger zu gezĂ€hlt werden â ein Weg, Informationen ohne Nutzung eines Netzwerks auszutauschen.
Als PostfĂ€cher werden USB-Sticks verwendet, wĂ€hrend die Terminals â Computer â als Poststellen fungieren, die als Zugangspunkte fĂŒr den Empfang und die Ăbertragung elektronischer Korrespondenz dienen.
Betrachten wir ein einfaches Beispiel fĂŒr die Interaktion mit dem System. Wir haben zwei USB-Sticks und ein Terminal zur VerfĂŒgung. Im Skript sind die erforderlichen globalen Variablen fĂŒr die spĂ€tere Interaktion mit dem System definiert â die Terminalnummer, der Pfad zum Root-Verzeichnis und mehr.
Wenn wir ein externes Speichermedium an das Terminal anschlieĂen und das Skript starten, wird es versuchen, aus dem Verzeichnis auszuhende Nachrichten abzurufen. /mnt/Telegraph/Outbox und sie in seinen Speicher zu ĂŒbertragen, um danach das Vorhandensein neuer Nachrichten fĂŒr den aktuellen Benutzer in seinem Speicher zu ĂŒberprĂŒfen. Falls vorhanden, werden sie in /mnt/Telegraph/Inbox.
Registrierung neuer GerÀte
geschieht relativ unspektakulÀr. Das Skript findet neue USB-Sticks, die an das System angeschlossen sind, und versucht, ihre einzigartigen Identifikatoren mit denjenigen abzugleichen, die im Root-Verzeichnis prÀsentiert werden. Wenn die GerÀte zuvor nicht registriert wurden, werden sie gemÀà den vom 'Telegraf' festgelegten Regeln formatiert.
Nach der Registrierung des neuen GerÀts hat die Root-Struktur die folgende Form:
In der Konfigurationsdatei config.ini, die sich im Root-Verzeichnis des USB-Sticks befindet, sind systematische Informationen zu finden â ein einzigartiger Identifikator und ein geheimer SchlĂŒssel.
Gibt den Menschen Rum!
Nein, ernsthaft! Die Quellcodes lassen sich besorgen, , und wir mĂŒssen langsam zur Praxis ĂŒbergehen.
Ich muss jedoch noch ein paar Worte dazu sagen, wie das NachrichtenĂŒbertragungssystem in der Praxis funktioniert.
Zuerst lassen Sie uns klÀren, woraus die elfstellige einzigartige Identifikationsnummer besteht. Zum Beispiel, 10455000001.
Die erste Ziffer, 1, steht fĂŒr die LĂ€ndervorwahl. Der internationale Code ist â 0, Russland in diesem Fall ist â 1.
Dann folgen vier Ziffern, die fĂŒr die Regionsnummer stehen, in der sich das Terminal befindet. 0455 â das ist der Kolomensky Stadtkreis.
Danach folgen zwei Ziffern, â 00, die direkt fĂŒr die Nummer des Terminals stehen.
Und erst danach â vier Ziffern, die die fortlaufende Nummer des Benutzers darstellen, die mit diesem Terminal verbunden sind. In unserem Fall ist das â 0001. Es gibt auch eine Nummer, die dem Terminal selbst zugehört. Diese Nummer kann nicht fĂŒr schriftliche Korrespondenz verwendet werden, aber das Terminal nutzt diese Nummer, um Dienstnachrichten an die Benutzer zu senden. Zum Beispiel, wenn die Nachricht aus irgendeinem Grund nicht zugestellt werden konnte. 0000 â diese Nummer gehört direkt dem Terminal. An sie kann keine schriftliche Korrespondenz gesendet werden, aber das Terminal verwendet diese Nummer zur Versendung von Servicemeldungen an die Benutzer. Zum Beispiel, wenn eine Nachricht aus irgendwelchen GrĂŒnden nicht zugestellt werden konnte.
Im Kern unseres âPostfachsâ befinden sich zwei Verzeichnisse, die erforderlich sind, um Textnachrichten zu empfangen und zu senden. Wenn das GerĂ€t mit dem Terminal verbunden wird, werden aus dem Verzeichnis âOutboxâ die ausgehenden Nachrichten an den Server gesendet, wĂ€hrend in das Verzeichnis âInboxâ, was logisch ist, die eingehenden Nachrichten geladen werden.
Jede Datei ist je nach Verzeichnis mit der Nummer des EmpfÀngers oder Absenders benannt.
Wenn wir versuchen, eine Nachricht an einen nicht existierenden EmpfÀnger zu senden, wird uns das Terminal eine Fehlermeldung senden.
Wenn wir jedoch beschlieĂen, einen Brief an einen EmpfĂ€nger an einem anderen Terminal zu senden (unabhĂ€ngig davon, ob dieser existiert oder nicht), wird er im Speicher des Terminals gespeichert, bis der Agent die schriftliche Korrespondenz von unserem Terminal auf sein eigenes ĂŒbertrĂ€gt.
Wenn der Postagent 10500000000 (anders ausgedrĂŒckt â der Postbote) sein GerĂ€t mit unserem Terminal verbindet, werden die ausgehenden Briefe auf seinen Speicher ĂŒbertragen. SpĂ€ter, wenn er sein GerĂ€t mit seinem Terminal verbindet, werden diese Briefe im Speicher des Terminals abgelegt und warten darauf, dass der EmpfĂ€nger sie auf sein USB-Laufwerk ĂŒbertrĂ€gt.
Die Kommunikationssitzung
Lassen Sie uns versuchen, eine Nachricht mit dem Text âHallo!â von 10455000001 zu 10455000002.
Das ist alles!
Ich freue mich ĂŒber jede Kritik am Quellcode des Projekts und am Artikel selbst.
Vielen Dank fĂŒr Ihre Aufmerksamkeit.
Quelle: habr.com
