"Telegraf" - e-mel tanpa Internet

hari yang baik!

Saya ingin berkongsi beberapa pemikiran menarik dengan komuniti tentang mencipta e-mel terpencar kendiri dan menunjukkan cara pelaksanaan yang sedia ada berfungsi dalam amalan.

Pada mulanya, "Telegraph" dibangunkan sebagai alat komunikasi amatur antara ahli komuniti pelajar kecil kami, yang dalam satu cara atau yang lain menumpukan aktivitinya kepada teknologi komputer dan komunikasi.

Nota Bene: β€œTelegraph” ialah satu cara komunikasi amatur; Nampaknya agak bermasalah untuk memperoleh faedah praktikal pada skala perindustrian, tetapi masalah ini tidak boleh dikatakan penting pada tahap apa pun - kami menganggap matlamat utama kami untuk menarik perhatian secara langsung kepada pembangunan sistem komunikasi jenis ini.

Kami cenderung untuk mempercayai bahawa peningkatan minat umum dalam pembangunan pelbagai sistem komunikasi adalah perlu dan agak penting, kerana memahami prinsip asas bagaimana sistem ini berfungsi dan berdasarkan asasnya adalah kunci utama untuk meningkatkan kesedaran rakyat tentang keselamatan maklumat. isu.

"Telegraf" - e-mel tanpa Internet

Achtung!Untuk mengelakkan kemungkinan salah faham, dalam beberapa kes anda boleh menatal imej:
"Telegraf" - e-mel tanpa Internet

Sistem ini berdasarkan sukarelawan dan semangat murni - kami suka apa yang kami lakukan. Anda boleh menganggap ini sebagai hobi dan anda tidak akan salah - lagipun, masih ada pencinta komunikasi melalui penggunaan surat-menyurat kertas; "Telegraf" dalam kebanyakan kes boleh diwakili sebagai pelaksanaan digital bagi prinsip mel biasa.

Telegraph ialah analog e-mel yang berdiri sendiri yang membolehkan anda menghantar mesej teks ringkas tanpa menggunakan Internet. "Telegraf" ke satu darjah atau yang lain boleh dikaitkan dengan Sneakernet - satu cara untuk bertukar maklumat tanpa menggunakan rangkaian.

Pemacu kilat digunakan sebagai peti mel, dan terminal - komputer, yang merupakan pusat akses unik untuk menerima dan menghantar surat-menyurat elektronik - bertindak sebagai pejabat pos.

Mari kita pertimbangkan contoh paling mudah interaksi dengan sistem. Kami mempunyai dua pemacu kilat dan satu terminal dalam stok. Skrip itu sendiri mengandungi pembolehubah global yang diperlukan untuk interaksi seterusnya dengan sistem - nombor terminal, laluan ke akar, dsb.

Jika kami menyambungkan pemacu boleh tanggal ke terminal dan menjalankan skrip, ia akan cuba menerima mesej keluar daripada direktori /mnt/Telegraf/Peti Keluar dan pindahkannya ke ingatan anda, kemudian semak mesej baharu dalam ingatan anda untuk pengguna semasa. Jika ada, tuliskannya /mnt/Telegraf/Peti Masuk.

Mendaftar peranti baharu

Ia berlaku secara rawak. Skrip mencari pemacu kilat baharu yang disambungkan ke sistem dan cuba memadankan ID unik mereka dengan yang dibentangkan dalam akar. Jika peranti belum didaftarkan sebelum ini, ia akan diformat mengikut peraturan yang dinyatakan oleh Telegraph.

Selepas mendaftarkan peranti baharu, struktur akar mengambil bentuk berikut:

Lihat pos pada imgur.com

Dalam fail konfigurasi config.ini, terletak di akar pemacu kilat, terdapat maklumat sistem - pengecam unik dan kunci rahsia.

Lihat pos pada imgur.com

Beri orang ramai rum!

Tidak, sungguh, serius! Anda boleh mendapatkan sumbernya di sini, dan sudah tiba masanya untuk kita perlahan-lahan beralih dari teori ke amalan.

Tetapi saya harus mengatakan beberapa perkataan lagi tentang cara sistem pemesejan berfungsi dalam amalan.

Mula-mula, mari kita fikirkan apa yang terdiri daripada pengecam unik sebelas digit. Cth, 10455000001.

Digit pertama 1, bertanggungjawab untuk nombor negara. Kod antarabangsa - 0, Rusia dalam kes ini - 1.

Seterusnya datang empat digit yang bertanggungjawab untuk bilangan wilayah di mana terminal itu berada. 0455 ialah daerah bandar Kolomna.

Mereka diikuti oleh dua nombor - 00, - bertanggungjawab secara langsung untuk nombor terminal.

Dan hanya kemudian - empat digit, yang merupakan nombor siri pengguna yang diberikan kepada terminal ini. Kami ada ini - 0001. Terdapat juga 0000 β€” nombor ini dimiliki terus kepada terminal itu sendiri. Anda tidak boleh menghantar surat-menyurat bertulis kepadanya, tetapi terminal itu sendiri menggunakan nombor ini untuk menghantar mesej perkhidmatan kepada pengguna. Contohnya, jika mesej tidak dapat dihantar atas sebab tertentu.

Lihat pos pada imgur.com

Pada akar "peti mel" kami terdapat dua direktori yang diperlukan untuk menerima dan menghantar mesej teks. Apabila peranti disambungkan ke terminal, mesej keluar dihantar ke pelayan daripada direktori "Peti Keluar", dan mesej masuk dimuatkan ke dalam direktori "Peti Masuk", yang logik.

Setiap fail, bergantung pada direktori, dinamakan oleh nombor penerima atau pengirim.

Jika kami cuba menghantar mesej kepada penerima yang tidak wujud, terminal akan menghantar mesej ralat kepada kami.

Lihat pos pada imgur.com

Walau bagaimanapun, jika kami memutuskan untuk menghantar surat kepada penerima yang terletak di terminal lain (tidak kira sama ada ia wujud atau tidak), ia akan direkodkan dalam ingatan terminal sebelum ejen memindahkan surat-menyurat bertulis daripada terminal kami kepada terminalnya.

Lihat pos pada imgur.com

Apabila ejen cawangan 10500000000 (dalam erti kata lain, posmen) akan menyambungkan perantinya ke terminal kami, surat keluar akan dipindahkan ke pemacunya. Selepas itu, apabila dia menyambungkan perantinya ke terminalnya, surat ini akan dibuang ke dalam memori terminal dan akan menunggu penerima memuat turunnya ke pemacu denyarnya.

Sesi komunikasi

Mari cuba hantar mesej dengan teks "Hello!" daripada 10455000001 ΠΊ 10455000002.

Lihat pos pada imgur.com

Itu sahaja!

Saya berbesar hati menerima sebarang kritikan terhadap kod sumber projek dan artikel itu sendiri.

Terima kasih atas perhatian anda.

Sumber: www.habr.com

Tambah komen