"Telegraph": correu electrònic sense Internet

Bon dia!

M'agradaria compartir algunes reflexions interessants amb la comunitat sobre la creació d'un correu electrònic descentralitzat autònom i demostrar com funciona una implementació existent a la pràctica.

Inicialment, "Telegraph" es va desenvolupar com un mitjà de comunicació aficionat entre membres de la nostra petita comunitat estudiantil, que d'una manera o altra dedicava les seves activitats a la tecnologia informàtica i les comunicacions.

Nota Bene: "Telègraf" és un mitjà de comunicació amateur; Sembla bastant problemàtic obtenir beneficis pràctics a escala industrial, però aquest problema difícilment es pot qualificar de significatiu en cap mesura: considerem que el nostre objectiu principal és cridar directament l'atenció sobre el desenvolupament d'aquest tipus de sistemes de comunicació.

Ens inclinem a creure que és necessari i força important augmentar l'interès general pel desenvolupament de diversos sistemes de comunicació, perquè comprendre els principis fonamentals de com funcionen aquests sistemes i en què es basen és la clau principal per augmentar la consciència dels ciutadans sobre la seguretat de la informació. qüestions.

"Telegraph": correu electrònic sense Internet

Achtung!Per evitar possibles malentesos, en alguns casos podeu desplaçar-vos per les imatges:
"Telegraph": correu electrònic sense Internet

El sistema es basa en voluntaris i pur entusiasme: ens agrada el que fem. Podeu considerar això un hobby i no us equivoqueu; després de tot, encara hi ha amants de la comunicació mitjançant l'ús de la correspondència en paper; El "telègraf" en la majoria dels casos es pot representar com una implementació digital dels principis del correu ordinari.

Telegraph és un anàleg autònom del correu electrònic que us permet enviar missatges de text senzills sense utilitzar Internet. "Telègraf" en un grau o un altre es pot atribuir Sneakernet - una manera d'intercanviar informació sense utilitzar una xarxa.

Les unitats flash s'utilitzen com a bústies de correu, i els terminals -ordinadors, que són punts d'accés únics per rebre i transmetre correspondència electrònica- actuen com a oficines de correus.

Considerem l'exemple més senzill d'interacció amb el sistema. Tenim dues unitats flash i un terminal en estoc. El propi script conté les variables globals necessàries per a la interacció posterior amb el sistema: número de terminal, ruta a l'arrel, etc.

Si connectem una unitat extraïble al terminal i executem l'script, intentarà rebre missatges de sortida del directori /mnt/Telegraph/Outbox i transferiu-los a la vostra memòria, després comproveu si hi ha missatges nous a la vostra memòria per a l'usuari actual. Si n'hi ha, escriu-los /mnt/Telegraph/Inbox.

Registre de nous dispositius

Passa força aleatòriament. L'script troba unitats flash noves connectades al sistema i intenta fer coincidir els seus identificadors únics amb els que es presenten a l'arrel. Si els dispositius no s'han registrat prèviament, es formataran d'acord amb les normes establertes per Telegraph.

Després de registrar un dispositiu nou, l'estructura arrel pren la forma següent:

Veure publicació a imgur.com

Al fitxer de configuració config.ini, situat a l'arrel de la unitat flaix, hi ha informació del sistema: un identificador únic i una clau secreta.

Veure publicació a imgur.com

Dóna una mica de rom a la gent!

No, de debò, de debò! Podeu obtenir les fonts aquí, i és hora que a poc a poc passem de la teoria a la pràctica.

Però hauria de dir algunes paraules més sobre com funciona el sistema de missatgeria a la pràctica.

Primer, esbrineu en què consisteix un identificador únic d'onze dígits. Per exemple, 10455000001.

El primer dígit 1, és responsable del número de país. Codi internacional - 0, Rússia en aquest cas - 1.

A continuació vénen quatre dígits que són responsables del número de la regió on es troba el terminal. 0455 és el districte urbà de Kolomna.

Van seguits de dos números: 00, - responsable directe del número de terminal.

I només llavors: quatre dígits, que són el número de sèrie de l'usuari assignat a aquest terminal. Tenim això - 0001. També hi ha 0000 — aquest número pertany directament al terminal mateix. No hi podeu enviar correspondència escrita, però el mateix terminal utilitza aquest número per enviar missatges de servei als usuaris. Per exemple, si el missatge no s'ha pogut lliurar per algun motiu.

Veure publicació a imgur.com

A l'arrel de la nostra "bústia" hi ha dos directoris necessaris per rebre i enviar missatges de text. Quan un dispositiu està connectat al terminal, els missatges de sortida s'envien al servidor des del directori "Safata de sortida" i els missatges entrants es carreguen al directori "Safata d'entrada", que és lògic.

Cada fitxer, segons el directori, s'anomena pel número de destinatari o remitent.

Si intentem enviar un missatge a un destinatari inexistent, el terminal ens enviarà un missatge d'error.

Veure publicació a imgur.com

Tanmateix, si decidim enviar una carta a un destinatari situat en un altre terminal (independentment de si existeix o no), quedarà gravada a la memòria del terminal abans que l'agent transfereixi la correspondència escrita del nostre terminal al seu.

Veure publicació a imgur.com

Quan l'agent de la sucursal 10500000000 (és a dir, el carter) connectarà el seu dispositiu al nostre terminal, les cartes sortints es transferiran a la seva unitat. Posteriorment, quan connecti el seu dispositiu al seu terminal, aquestes cartes s'enviaran a la memòria del terminal i esperaran que el destinatari les descarregui a la seva unitat flash.

Sessió de comunicació

Intentem enviar un missatge amb el text "Hola!" des de 10455000001 к 10455000002.

Veure publicació a imgur.com

Això és tot!

Estaré encantat de rebre qualsevol crítica al codi font del projecte i al propi article.

Gràcies per la vostra atenció.

Font: www.habr.com

Afegeix comentari