"Телеграф" - електронска пошта без интернета

Добар дан!

Желео бих да поделим неке занимљиве мисли са заједницом о креирању самосталне децентрализоване е-поште и демонстрирам како једна постојећа имплементација функционише у пракси.

У почетку, „Телеграф” је развијен као аматерско средство комуникације између чланова наше мале студентске заједнице, која је на овај или онај начин своје активности посветила рачунарској технологији и комуникацијама.

имај на уму: „Телеграф” је аматерско средство комуникације; Чини се прилично проблематичним извући практичне користи у индустријским размерама, али се овај проблем тешко може назвати значајним у било којој мери – сматрамо да је наш главни циљ директно привлачење пажње на развој ове врсте комуникационих система.

Склони смо да верујемо да је повећање општег интересовања за развој различитих комуникационих система неопходно и веома важно, јер је разумевање фундаменталних принципа како ови системи функционишу и на чему су засновани главни кључ за повећање свести грађана о безбедности информација. питања.

"Телеграф" - електронска пошта без интернета

Ацхтунг!Да бисте избегли могуће неспоразуме, у неким случајевима можете да скролујете кроз слике:
"Телеграф" - електронска пошта без интернета

Систем је заснован на волонтерима и чистом ентузијазму – ми једноставно волимо оно што радимо. Ово можете сматрати хобијем и нећете погрешити - на крају крајева, још увек постоје љубитељи комуникације кроз употребу папирне кореспонденције; „Телеграф” се у већини случајева може представити као дигитална имплементација принципа обичне поште.

Телеграф је самостални аналог е-поште који вам омогућава да шаљете једноставне текстуалне поруке без коришћења интернета. „Телеграфу“ се у једном или другом степену може приписати Снеакернет - начин размене информација без коришћења мреже.

Флеш дискови се користе као поштански сандучићи, а терминали - рачунари, који су јединствене приступне тачке за пријем и пренос електронске кореспонденције - делују као поште.

Хајде да размотримо најједноставнији пример интеракције са системом. Имамо два флеш диска и један терминал на лагеру. Сама скрипта садржи неопходне глобалне променљиве за накнадну интеракцију са системом - број терминала, путању до корена итд.

Ако повежемо преносиви диск са терминалом и покренемо скрипту, он ће покушати да прими одлазне поруке из директоријума /мнт/Телеграпх/Оутбок и пренесите их у своју меморију, а затим проверите да ли постоје нове поруке у вашој меморији за тренутног корисника. Ако их има, запишите их /мнт/Телеграпх/Примљене.

Регистрација нових уређаја

То се дешава сасвим насумично. Скрипта проналази нове флеш дискове повезане са системом и покушава да усклади њихове јединствене ИД-ове са онима представљеним у роот-у. Ако уређаји нису претходно регистровани, биће форматирани у складу са правилима која наводи Телеграпх.

Након регистрације новог уређаја, основна структура има следећи облик:

Погледај пост на имгур.цом

У конфигурационој датотеци цонфиг.ини, који се налази у корену флеш диска, постоје системске информације - јединствени идентификатор и тајни кључ.

Погледај пост на имгур.цом

Дајте људима мало рума!

Не, стварно, озбиљно! Можете добити изворе овде, и време је да полако пређемо са теорије на праксу.

Али требало би да кажем још неколико речи о томе како систем за размену порука функционише у пракси.

Прво, хајде да схватимо од чега се састоји једанаестоцифрени јединствени идентификатор. На пример, 10455000001.

Прва цифра 1, је одговоран за број земље. Међународни код - 0, Русија у овом случају - 1.

Следе четири цифре које су одговорне за број региона у коме се терминал налази. 0455 је градски округ Коломна.

Иза њих следе два броја - 00, - директно одговоран за број терминала.

И тек онда - четири цифре, које су серијски број корисника додељен овом терминалу. Имамо ово - 0001. Постоји и 0000 — овај број припада директно самом терминалу. На њега не можете слати писану кореспонденцију, али сам терминал користи овај број за слање сервисних порука корисницима. На пример, ако се порука из неког разлога не може испоручити.

Погледај пост на имгур.цом

У корену нашег „поштанског сандучета“ налазе се два директоријума неопходна за примање и слање текстуалних порука. Када је уређај повезан са терминалом, одлазне поруке се шаљу на сервер из директоријума „Оутбок“, а долазне поруке се учитавају у директоријум „Инбок“, што је логично.

Свака датотека, у зависности од директоријума, има назив по броју примаоца или пошиљаоца.

Ако покушамо да пошаљемо поруку непостојећем примаоцу, терминал ће нам послати поруку о грешци.

Погледај пост на имгур.цом

Међутим, ако одлучимо да пошаљемо писмо примаоцу који се налази на другом терминалу (без обзира да ли постоји или не), оно ће бити забележено у меморији терминала пре него што агент пренесе писану кореспонденцију са нашег терминала на његов.

Погледај пост на имгур.цом

Када агент филијале 10500000000 (другим речима, поштар) ће повезати свој уређај са нашим терминалом, одлазна писма ће бити пребачена на његов диск. Након тога, када повеже свој уређај са терминалом, ова слова ће бити бачена у меморију терминала и чекаће да их прималац преузме на свој флеш диск.

Сесија комуникације

Хајде да покушамо да пошаљемо поруку са текстом "Здраво!" из 10455000001 к 10455000002.

Погледај пост на имгур.цом

То је све!

Биће ми драго да примим сваку критику на рачун изворног кода пројекта и самог чланка.

Хвала на пажњи.

Извор: ввв.хабр.цом

Додај коментар