"Telegrafo" - retpoŝto sen Interreto

Bonan tagon!

Mi ŝatus dividi kelkajn interesajn pensojn kun la komunumo pri kreado de memstara malcentralizita retpoŝto kaj pruvi kiel unu ekzistanta efektivigo funkcias praktike.

Komence, "Telegrafo" estis evoluigita kiel amatora komunikilo inter membroj de nia malgranda studenta komunumo, kiu laŭ unu maniero aŭ alia dediĉis siajn agadojn al komputila teknologio kaj komunikado.

Nota Bene: "Telegrafo" estas amatora komunikilo; Ŝajnas sufiĉe probleme derivi praktikajn profitojn sur industria skalo, sed ĉi tiun problemon apenaŭ oni povas nomi signifa iagrade - ni konsideras, ke nia ĉefa celo estas rekte altiri atenton al la evoluo de ĉi tia komunika sistemo.

Ni emas kredi, ke pliiĝanta ĝenerala intereso pri la disvolviĝo de diversaj komunikadsistemoj estas necesa kaj sufiĉe grava, ĉar kompreni la fundamentajn principojn pri kiel tiuj sistemoj funkcias kaj sur kio ili baziĝas estas la ĉefa ŝlosilo por pliigi la konscion de la civitanoj pri informa sekureco. aferoj.

"Telegrafo" - retpoŝto sen Interreto

Achtung!Por eviti eblajn miskomprenojn, en iuj kazoj vi povas rulumi tra la bildoj:
"Telegrafo" - retpoŝto sen Interreto

La sistemo baziĝas sur volontuloj kaj pura entuziasmo - ni nur ŝatas tion, kion ni faras. Vi povas konsideri ĉi tion ŝatokupo kaj vi ne eraros – ja ankoraŭ ekzistas amantoj de komunikado per la uzo de papera korespondado; "Telegrafo" en la plej multaj kazoj povas esti reprezentita kiel cifereca efektivigo de la principoj de regula poŝto.

Telegrafo estas eksterreta analogo de retpoŝto, kiu ebligas al vi sendi simplajn tekstmesaĝojn sen uzi Interreton. "Telegrafo" en unu grado aŭ alia povas esti atribuita al Sneakernet - maniero interŝanĝi informojn sen uzi reton.

Flash drives estas uzataj kiel leterkestoj, kaj terminaloj - komputiloj, kiuj estas unikaj alirpunktoj por ricevi kaj transdoni elektronikan korespondadon - funkcias kiel poŝtejoj.

Ni konsideru la plej simplan ekzemplon de interago kun la sistemo. Ni havas du flash drives kaj unu terminalon en stoko. La skripto mem enhavas la necesajn tutmondajn variablojn por posta interagado kun la sistemo - fina nombro, vojo al la radiko, ktp.

Se ni konektas forpreneblan diskon al la terminalo kaj rulas la skripton, ĝi provos ricevi elirantajn mesaĝojn de la dosierujo. /mnt/Telegraph/Elirkesto kaj transdonu ilin al via memoro, tiam kontrolu novajn mesaĝojn en via memoro por la nuna uzanto. Se estas iuj, skribu ilin enen /mnt/Telegraph/Enirkesto.

Registrante novajn aparatojn

Ĝi okazas sufiĉe hazarde. La skripto trovas novajn poŝmemorojn konektitajn al la sistemo kaj provas kongrui iliajn unikajn identigilojn kun tiuj prezentitaj en la radiko. Se aparatoj ne antaŭe estis registritaj, ili estos formatitaj laŭ la reguloj deklaritaj de Telegraph.

Post registri novan aparaton, la radika strukturo prenas la jenan formon:

View post en imgur.com

En la agorda dosiero agordo.ini, situanta en la radiko de la poŝmemoro, ekzistas sistema informo - unika identigilo kaj sekreta ŝlosilo.

View post en imgur.com

Donu al la homoj iom da rumo!

Ne, vere, serioze! Vi povas akiri la fontojn tie, kaj estas tempo por ni malrapide transiri de teorio al praktiko.

Sed mi devus diri kelkajn pliajn vortojn pri kiel la mesaĝsistemo funkcias praktike.

Unue, ni eltrovu, el kio konsistas dek unu-cifera unika identigilo. Ekz. 10455000001.

La unua cifero 1, respondecas pri la landa numero. Internacia kodo - 0, Rusio ĉi-kaze - 1.

Poste venas kvar ciferoj, kiuj respondecas pri la nombro de la regiono, en kiu troviĝas la terminalo. 0455 estas la urba distrikto Kolomna.

Ili estas sekvataj de du nombroj - 00, - rekte respondeca pri la terminala nombro.

Kaj nur tiam - kvar ciferoj, kiuj estas la seria numero de la uzanto asignita al ĉi tiu terminalo. Ni havas ĉi tion - 0001. Estas ankaŭ 0000 — ĉi tiu numero apartenas rekte al la terminalo mem. Vi ne povas sendi skriban korespondadon al ĝi, sed la terminalo mem uzas ĉi tiun numeron por sendi servomesaĝojn al uzantoj. Ekzemple, se la mesaĝo ne povus esti transdonita ial.

View post en imgur.com

Ĉe la radiko de nia "leterkesto" estas du dosierujoj necesaj por ricevi kaj sendi tekstmesaĝojn. Kiam aparato estas konektita al la terminalo, elirantaj mesaĝoj estas senditaj al la servilo de la dosierujo "Elirkesto", kaj envenantaj mesaĝoj estas ŝarĝitaj en la dosierujon "Enirkesto", kio estas logika.

Ĉiu dosiero, depende de la dosierujo, estas nomita de la ricevanto aŭ sendinto nombro.

Se ni provas sendi mesaĝon al neekzistanta ricevanto, la terminalo sendos al ni erarmesaĝon.

View post en imgur.com

Tamen, se ni decidas sendi leteron al adresato situanta sur alia terminalo (sendepende de ĉu ĝi ekzistas aŭ ne), ĝi estos registrita en la memoro de la terminalo antaŭ ol la agento transdonos la skriban korespondadon de nia terminalo al lia.

View post en imgur.com

Kiam la branĉo agento 10500000000 (alivorte, la leterportisto) konektos sian aparaton al nia terminalo, elirantaj leteroj estos translokigitaj al lia stirado. Poste, kiam li konektas sian aparaton al sia terminalo, ĉi tiuj leteroj estos forĵetitaj en la memoron de la terminalo kaj atendos ke la ricevanto elŝutos ilin al sia poŝmemoro.

Sesio pri komunikado

Ni provu sendi mesaĝon kun la teksto "Saluton!" de 10455000001 к 10455000002.

View post en imgur.com

Tio estas ĉio!

Mi ĝojos ricevi ajnan kritikon pri la fontkodo de la projekto kaj la artikolo mem.

Dankon pro via atento.

fonto: www.habr.com

Aldoni komenton