1 poin oleh GN⁺ 2024-08-16 | 1 komentar | Bagikan ke WhatsApp
  • Nomad Network adalah alat komunikasi mesh off-grid untuk membangun platform komunikasi privat yang tangguh, dimiliki dan dikendalikan langsung oleh pengguna tanpa pendaftaran, syarat layanan, pengiriman data, atau pemberi otorisasi
  • Fondasinya adalah LXMF dan Reticulum, yang menyediakan kemampuan jaringan pesan terenkripsi dan perutean pesan P2P sehingga dapat berjalan di berbagai media komunikasi dari packet radio hingga serat optik
  • Dapat digunakan tanpa internet publik, IP, atau Ethernet, dan bisa dijalankan di atas packet radio, LoRa, dan serial line; berkat Reticulum, ada kasus penggunaan bahkan pada tautan radio 300bps
  • Fiturnya mencakup perpesanan terenkripsi, komunikasi mesh tanpa konfigurasi, penyimpanan pesan terenkripsi terdistribusi untuk pengguna offline, node hosting halaman dan file, serta browser berbasis teks dan caching halaman
  • Saat ini masih perangkat lunak beta; meski dibuat dengan mempertimbangkan praktik terbaik kriptografi, perangkat ini belum menjalani audit keamanan eksternal dan mungkin masih memiliki bug yang merusak privasi

Model komunikasi yang disediakan Nomad Network

  • Nomad Network memungkinkan pengguna membangun platform komunikasi privat yang sepenuhnya mereka kendalikan dan miliki
  • Tidak memerlukan pendaftaran, persetujuan syarat layanan, pengiriman data, pemberi otorisasi, atau gatekeeper
  • Repositori ini adalah mirror publik, sementara pengembangan sebenarnya berlangsung di tempat lain
  • Jika menginginkan klien LXMF dengan antarmuka pengguna grafis, Anda dapat menggunakan Sideband untuk Linux, Android, dan macOS

Teknologi dasar dan media jaringan

  • Nomad Network dibangun di atas LXMF dan Reticulum
    • Kedua proyek ini menyediakan kemampuan jaringan pesan terenkripsi dan perutean pesan P2P yang menjadi ketergantungan Nomad Network
  • Fondasi ini memungkinkan program digunakan pada spektrum media komunikasi yang sangat luas, dari packet radio hingga serat optik
  • Tetap dapat berfungsi tanpa koneksi internet publik, dan jaringan IP atau Ethernet juga bukan syarat wajib
    • Dapat digunakan hanya dengan packet radio, LoRa, atau serial line
    • Jika diperlukan, jaringan yang terpisah dapat dijembatani ke internet atau Ethernet privat
    • Juga bisa membangun jaringan yang sepenuhnya berjalan di atas internet
  • Karena menggunakan Reticulum, sistem ini efisien bahkan pada media dengan bandwidth sangat rendah, dan pernah berhasil digunakan pada tautan radio 300bps

Fitur utama

  • Menyediakan perpesanan terenkripsi di packet radio, LoRa, WiFi, dan media lain yang didukung Reticulum
  • Mendukung komunikasi mesh dengan zero-configuration dan infrastruktur minimal
  • Memiliki penyimpanan pesan terenkripsi terdistribusi yang menyimpan pesan untuk pengguna offline
  • Node yang dapat dijangkau dapat meng-host halaman dan file
  • Di sisi node, halaman dapat dibuat dengan PHP, Python, bash, dan lainnya
  • Tersedia browser berbasis teks bawaan untuk berinteraksi dengan konten node
  • Menyediakan bahasa markup yang mudah digunakan dan efisien bandwidth untuk penulisan halaman
  • Mendukung caching halaman di browser

Instalasi dan menjalankan

  • Cara instalasi paling mudah adalah menggunakan pip
pip install nomadnet
nomadnet
nomadnet --daemon
nomadnet --help
  • Pada sistem operasi yang memblokir instalasi paket pengguna biasa, Anda dapat memulihkan perilaku pip dengan menambahkan pengaturan berikut ke bagian [global] di ~/.config/pip/pip.conf
[global]
break-system-packages = true
  • Untuk menginstal di lingkungan terisolasi, Anda dapat menggunakan pipx
pipx install nomadnet
pipx install rns
pipx install lxmf
nomadnet
nomadnet --daemon
nomadnet --help
  • Jika ini pertama kalinya Anda menginstal program dengan pip di sistem tersebut, dan perintah eksekusi tidak dikenali, Anda mungkin perlu me-reboot sistem lalu mencoba lagi
  • Saat program dijalankan untuk pertama kali, Guide section akan ditampilkan, berisi informasi yang diperlukan untuk mulai menggunakannya

Penggunaan packet radio, LoRa, dan testnet

  • Untuk menggunakan Nomad Network di packet radio atau LoRa, instalasi Reticulum harus dikonfigurasi agar memakai TNC packet radio atau perangkat LoRa yang relevan
  • Jika ingin menguji tanpa membangun jaringan fisik sendiri, Anda dapat terhubung melalui internet ke Unsigned.io RNS Testnet
    • Di testnet sudah ada sebagian aktivitas Nomad Network dan LXMF
    • Setelah terhubung, jalankan nomadnet selama beberapa saat untuk menerima announce dari node lain yang meng-host halaman atau layanan
  • Node testnet yang bisa dicoba untuk koneksi langsung:
    • abb3ebcd03cb2388a838e70c001291f9: Dublin Hub Testnet Node
    • ea6a715f814bdc37e56f80c34da6ad51: Frankfurt Hub Testnet Node
  • Untuk menjelajahi halaman dari node yang belum dikenal, buka dialog URL dengan Ctrl+U di bagian Network pada program, masukkan alamatnya, lalu pilih Go atau tekan Enter
    • NomadNet akan mencoba menemukan dan terhubung ke node yang diminta

Android dan Docker

  • Di Android, Nomad Network dapat diinstal menggunakan Termux, tetapi memerlukan lebih banyak perintah dibanding instalasi satu baris biasa
    • Prosedurnya didokumentasikan pada Android Installation di Reticulum Manual
    • Setelah Reticulum terinstal, Anda dapat menginstal Nomad Network dengan pip
  • Jika membutuhkan aplikasi grafis Android native, Anda dapat menggunakan Sideband
  • Nomad Network dipublikasikan secara otomatis sebagai image Docker di GitHub Packages
    • Tag image menggunakan master untuk commit terbaru atau format nomor versi rilis tertentu
    • Contoh tag versi adalah 0.2.0
docker pull ghcr.io/markqvist/nomadnet:master
docker run -it ghcr.io/markqvist/nomadnet:master --textui
docker run -i ghcr.io/markqvist/nomadnet:master --daemon --console

Alat, ekstensi, dan roadmap

  • Nomad Network adalah platform yang fleksibel dan dapat diperluas, dengan alat buatan komunitas dan ekstensi sisi node
  • Permintaan dukungan, diskusi, dan berbagi ide dapat dilakukan di Nomad Network discussions pages
  • Fitur utama baru dalam roadmap pengembangan mencakup bulletin dan discussion thread yang tersebar ke seluruh jaringan, peta kolaboratif, dan berbagi informasi geospasial
  • Daftar peningkatan dan perbaikan mencakup indikator status tautan, pintasan navigasi menu, berbagi node, perbaikan masalah editor internal pada beberapa OS, dan mekanisme percobaan ulang pesan yang gagal

Status keamanan dan perhatian

  • Nomad Network harus dianggap sebagai perangkat lunak beta
  • Meski dibuat dengan prioritas tinggi pada praktik terbaik kriptografi, perangkat ini belum menjalani audit keamanan eksternal
  • Mungkin masih ada bug yang merusak privasi
  • Ada petunjuk untuk menghubungi pengembang jika ingin membantu audit atau memberikan sponsor

1 komentar

 
GN⁺ 2024-08-16
Opini Hacker News
  • Bisa jadi tidak demikian jika NextNav mengambil sebagian besar pita ISM 900MHz: https://news.ycombinator.com/item?id=41226802
    https://en.wikipedia.org/wiki/ISM_radio_band
    Anda bisa mendaftarkan komentar di sini: https://www.fcc.gov/ecfs/search/docket-detail/24-240

    • Cara meninggalkan komentar itu tidak langsung terlihat. Kalau saya saja sampai tidak bisa menemukannya, orang lain juga mungkin begitu, jadi akan bagus jika diberi tahu harus ke mana
    • Saya tidak bisa menemukan area komentar. Saya memang sudah tua dan mata juga mulai buram, tapi tetap tidak terlihat, dan agent juga tidak bisa menemukan tautannya
    • Karena LoRaWAN WiFi berada di pita 900MHz sebagai bagian dari WiFi 6 atau 7, semoga dalam skenario terburuk pun itu diperlakukan sebagai pengecualian
  • Ada thread terkait yang sedang berjalan:
    Private, Secure and Uncensorable Messaging over a LoRa Mesh (2022) - https://news.ycombinator.com/item?id=41256623 - Agustus 2024, 21 komentar

  • Jaringan Reticulum yang menjadi basisnya cukup menarik karena mendukung banyak media transmisi seperti packet radio

    • Reticulum sangat fleksibel, dan ada ekosistem alat yang sedang dikembangkan. NomadNet hanyalah salah satu messenger, dan ada juga Sideband(https://github.com/markqvist/Sideband), klien aplikasi mobile, serta Reticulum MeshChat(https://github.com/liamcottle/reticulum-meshchat), klien berbasis browser yang dikembangkan oleh Liam Cottle
      Reticulum bisa berjalan di media apa pun selama memiliki throughput lebih dari 5 bit per detik dan MDU 500 byte. Selain berjalan di atas ratusan carrier seperti LoRa, BLE, packet radio, dan jaringan overlay seperti Tor atau I2P, carrier-carrier ini juga bisa menjadi bagian dari jaringan yang sama
      Saya pernah membuat proof-of-concept cepat yang berjalan di atas radio HF. Saya menyiapkan dua node yang berjarak sekitar 144 km, keduanya memakai ICOM-7300 dan Raspberry Pi 5 untuk menjalankan software modem yang menerima paket Reticulum dan mengirimkannya secara nirkabel: https://www.youtube.com/watch?v=blwNVumLujc
      Node 1 berada di luar ruangan dan Node 2 berada di rumah. Pada Node 2, saya mengonfigurasi satu interface untuk modem HF dan satu interface lain yang terhubung ke TCP testnet, sehingga Node 1 bisa mengakses semua peer di TCP testnet
      Ada juga video pengantar singkat yang menjelaskan konsep dasar Reticulum: https://www.youtube.com/watch?v=q8ltLt5SK6A
    • Lucu juga ternyata ini benar-benar ada. Saya kira itu lelucon tentang jaringan komputer fiktif reticulum dari novel Neal Stephenson, Anathem
    • Saya sedang melihat bagian toleransi terhadap latensi pada protokolnya, dan rasanya akan sempurna kalau sampai mendukung sneakernet sebagai sarana transmisi
      Koreksi: ternyata tidak. Sepertinya pengaturannya bersifat global, bukan per-link
  • Konsepnya menarik, tetapi masalahnya adalah berkomunikasi dengan orang yang memakai perangkat iOS/iPadOS. Biasanya, karena pembatasan sistem operasi, aplikasi seperti ini tidak bisa digunakan[1], dan karena efek jaringan, ini menjadi sangat sulit dipakai oleh kebanyakan orang
    [1] https://forums.developer.apple.com/forums/thread/685525

  • Saya tidak paham bagaimana orang bisa merasa privasinya terjamin sambil mengetik di keyboard layar sentuh perangkat Android atau iOS
    Kalau benar-benar menginginkan privasi, seharusnya menggunakan keyboard/terminal yang berjalan dengan kode bare-metal untuk menangkap dan menampilkan teks, melakukan enkripsi, serta mengirim paket terenkripsi, dengan cara mengirim blob terenkripsi di atas klien Reticulum
    Misalnya bisa berupa serial kabel atau Bluetooth, dan networking serta protokolnya juga bisa ditangani oleh MCU terpisah. Intinya adalah menjalankan kode terverifikasi tanpa blob biner di bare-metal, dan hanya mengirim payload terenkripsi ke node jaringan. Jika memungkinkan, sebaiknya gunakan link serial TTL antara controller terminal dan controller jaringan

  • Penasaran bagaimana NomadNet/Reticulum dibandingkan dengan Yggdrasil, IPFS, Nostr, Scuttlebutt

    • Memang sulit membandingkan hal-hal yang begitu berbeda, tapi saya akan mencoba
      Scuttlebutt: Reticulum adalah stack jaringan yang merutekan data secara real-time, bukan jejaring sosial terdesentralisasi
      Nostr: sama seperti Scuttlebutt
      IPFS: Reticulum tidak menyimpan data, melainkan mengirimkannya. Namun beberapa protokol yang berjalan di atas Reticulum, seperti LXMF, secara opsional menyediakan fungsi penyimpanan pesan sementara
      Yggdrasil adalah contoh paling mirip dengan Reticulum di antara yang disebutkan, tetapi dari pencarian sekilas saya tidak menemukan detail tentang cara kerjanya. Saat ini tampaknya hanya berjalan di atas IPv6 dengan sebagian penggunaan tunnel IPv4, sedangkan Reticulum berbeda karena bisa berjalan di atas apa saja
      Jika tertarik, saya sarankan setidaknya membaca http://reticulum.network/manual/understanding.html untuk melihat bagaimana Reticulum bekerja
  • Catatan usability dari hasil menelusuri cepat, mungkin dalam kondisi belum terlalu paham
    Menampilkan angka yang digunakan sebagai alamat identitas di bagian depan dengan cara yang bisa dipahami maknanya oleh pengguna lebih baik daripada kebanyakan. Cara identitas dan kepercayaan ditangani bersama dalam dialog juga tampak relatif bisa dipahami. Adanya kategori selain tepercaya/tidak tepercaya (tidak diketahui) adalah ide bagus, tetapi tidak langsung mudah dimengerti. Pengguna perlu diedukasi tentang apa persisnya arti "trust" dalam konteks ini
    Pengguna tidak perlu tahu sampai fakta bahwa Curve25519 digunakan; cukup tahu bahwa suatu bentuk enkripsi telah terbentuk
    Menampilkan nomor identitas dalam heksadesimal adalah pilihan terburuk di antara basis bilangan yang mungkin. Desimal yang familiar untuk identifikasi atau base32 yang lebih pendek lebih baik, dan nomor identitas sebaiknya ditampilkan secara konsisten dengan pengelompokan yang membantu. Misalnya 4 grup masing-masing 5 digit

  • Membaca ini membuat saya sangat bersemangat. Membangun jaringan mesh off-grid adalah premis utama novel SF saya, 'Mesh': https://inkican.com/mesh-middle-grade-scifi-thriller/

  • Saya teringat Meshtastic, tetapi Nomad tampaknya untuk PC dan Meshtastic untuk mikrokontroler
    https://meshtastic.org/

  • Sudah saya cari, tapi tidak menemukannya. Apakah ini pernah diaudit?

    • “Nomad Network adalah perangkat lunak beta dan harus diperlakukan demikian. Walaupun dibuat dengan praktik terbaik kriptografi sebagai pertimbangan utama, ia belum menjalani audit keamanan eksternal dan sangat mungkin masih memiliki bug yang merusak privasi. Jika ingin membantu atau membantu mensponsori audit, silakan hubungi kami.”
    • Pada tahap ini, menurut saya tidak masuk akal mengharapkan audit formal untuk produk nonkomersial, kecuali Anda akan membayar biayanya atau memimpin penggalangan dananya