Mycoria - Herkesin eşit şekilde bağlandığı açık ağ
(mycoria.org)- Mycoria, tüm katılımcıları eşit şekilde bağlamayı amaçlayan açık ve güvenli bir overlay ağıdır; erken dönem internetin açık ve maceracı ruhunu hedefler
- Katılım için bürokratik süreçler yoktur; tüm bağlantılar varsayılan olarak kimlik doğrulama ve şifreleme üzerine kuruludur
- İnternet üzerinden bağlanabilir ya da kendi mesh ağı ile genişletilebilir; böylece ağa katılım engellerini azaltmayı amaçlar
- Tasarım; küçük ve basit bir yapı, DNS gibi mevcut altyapılarla uyumluluk, varsayılan güvenlik ve gizlilik üzerine odaklanır
- Otomatik uçtan uca şifreleme, ölçeklenebilir yönlendirme, pano,
.mycoDNS çözümleme ve servis keşfi sunar; bazı gizlilik ve otomatik optimizasyon özellikleri ise WIP durumundadır
Mycoria'nın hedeflediği bağlantı biçimi
- Mycoria, tüm katılımcıları birbirine bağlayan açık ve güvenli bir overlay ağıdır
- Erken dönem internetin meraklı ve maceracı ruhunu izler; bağlantı özgürlüğünü temel değer olarak görür
- Temel ilkeleri şunlardır
- Everyone is equal: Herkese kolayca bağlanmak mümkündür
- Everyone is welcome: Bürokratik süreçler olmadan katılınabilen açık bir ağdır
- No spooking: Tüm bağlantıların kimliği doğrulanır
- No surveillance: Tüm bağlantılar şifrelenir ve Private Addresses içerir
- No barriers: İnternet üzerinden bağlanılabilir veya Mycoria kendi mesh yapısıyla genişletilebilir
Tasarım hedefleri ve mevcut özellikler
- Yapının küçük ve basit tutulması hedeflenir
- DNS gibi mevcut altyapılarla uyumluluk gözetilir
- Güvenlik varsayılan olarak uygulanır; varsayılan gizlilik ise WIP durumunda kalmaktadır
- Şu anda sunulan özellikler şunlardır
- Otomatik uçtan uca şifreleme
- Modern kriptografi
- Akıllı ve ölçeklenebilir yönlendirme
- Pano
.mycoDNS çözümleme- OS ayarı gerektirir
- Basit servis keşfi
- İnternet overlay'i için otomatik ağ optimizasyonu ve kurtarma
- WIP durumundadır
- Dönen private addresses
- WIP durumundadır
1 yorum
Hacker News yorumları
Yazarıyım. Safing’de kurucu ortak/CTO olarak son 8 yıldır gizlilik teknolojileri geliştiriyorum; en büyük teknik başarımız SPN’di (önceki adıyla Port17/Gate17).
SPN, VPN ile Tor arasındaki boşlukta konumlanan bir gizlilik ağıydı; yani 5. katman bir proxy’ydi. Yanlış yapılandırılması imkânsızdı, hızı da fena değildi; onion şifreleme ve kimlik doğrulama/yetkilendirme ayrımı sayesinde VPN’den çok daha iyi gizlilik sağlıyordu.
İlginç şekilde bu ayrılmış kimlik doğrulama yaklaşımı daha sonra Apple Private Relay ve Google One VPN’de de uygulandı.
SPN genel olarak iyi çalıştı ama ölçeklendirmesi zordu; meta veriyi azaltıp gizliliği artırmak için 5. katman proxy olarak tasarladığımızdan trafik kontrolünü ve tıkanıklık kontrolünü de yeniden uygulamamız gerekti. Bu kolay değildi ve hâlâ sorun çıkarmaya devam ediyor.
Bu süreçte cjdns ve Yggdrasil’i okuyup takip ederken ağ fikirleri ilgimi çekti; 2023 Kasım civarında, o zamana kadarki deneyim ve bilgilerimle gizliliğin bir kısmını ve tam güvenliği koruyan ölçeklenebilir bir 3. katman mesh ağını ne kadar ileri götürebileceğimi merak ettim.
Birkaç ay boyunca akşamlarımın çoğunu buna ayırdım ve beklediğimden iyi ilerledi; ama düzgün bir MVP ve küçük ölçekli üretim ortamında ilk kullanan bir arkadaş çıktıktan sonra üzerinde daha fazla çalışacak zamanım kalmadı.
Şu anda yeni bir projeye başlıyorum ve bunu orada iyi şekilde kullanmayı planlıyorum; bu yüzden önümüzdeki birkaç yıl içinde geliştirme epey ilerleyecek. Mycoria şimdilik en azından küçük ölçekte çalışıyor, ama genel olarak MVP’ye yakın.
Kaynak yönlendirme desteği için 3. katmanda benimsenebilecek standart tabanlı segment routing kullanmak yerine özel bir 4. katman taşıma protokolü oluşturmanızın özel bir nedeni var mı merak ediyorum.
Güvenlik analizinde BAN mantığı ve ProVerif doğrulama aracını kullanıp kullanmadığınızı da merak ediyorum.
https://en.wikipedia.org/wiki/Gnutella
https://en.wikipedia.org/wiki/Segment_routing
https://en.wikipedia.org/wiki/Burrows%E2%80%93Abadi%E2%80%93...
https://en.wikipedia.org/wiki/ProVerif
friendyerine peer gibi bir terim önermek isterim. Bu küçük bir kelime takıntısı değil; kullanıcı ajanı alanında ucu açık ilişki semantiğini altyapı katmanında kullanmamak daha iyi.Dizüstü sunucum da benim kullanıcı ajanım, telefonda çalışan örnek de öyle; dolayısıyla ikisi peer.
Bu temel üzerinde geliştirilecek uygulamalar çoğunlukla kullanıcıların sosyal ilişkileriyle ilgilenecek ve
friendgibi ifadeler o katmanda işe yarayacaktır.Öyleyse katılım teşviklerini, parasal olsun ya da olmasın, devreye almayı düşünüp düşünmediğinizi merak ediyorum. Bu alandaki temel zor meselenin, ağın altyapı hizmeti sağlayıcıları için standartlaştırılmış anonim ödemeyi çözmekte yattığı görülüyor.
Teorik olarak mümkün göründüğü için, yaklaşım buysa nasıl yapıldığını öğrenmek isterim. Yoksa router adreslerinde meta veri yok da yalnızca son kullanıcı adresleri mi bu şekilde kodlanıyor, onu merak ediyorum.
Private Relay var gerçi ama yalnızca Safari gibi bazı Apple uygulamalarında çalışıyor; çalışıp çalışmadığını anlamak da zor, trafiğin mutlaka oradan geçmesini zorunlu kılmak da mümkün değil.
Teknik açıdan böyle şeyler gerçekten çok iyi. Uzak bir gelecekte, havalı nerd ve geek’lerin her türlü zorluğa rağmen yalnızca temel altyapıyla kendi topluluk ağlarını kurduklarını hayal ettiriyor.
Ama sonunda genel merkeziyetsiz sistemlere katılmak rahatsız edici ve itici geliyor. Çünkü çocuklara yönelik cinsel istismar materyallerinin paylaşılmasına ve dağıtılmasına yardımcı olacakmışım gibi hissediyorum.
Tailscale en azından özel bir kapsamda kalıyor, ama bu daha geniş bir ağın parçası olmak gibi. Düğümümün bu tür trafiği yönlendirmek için kullanılıp kullanılmayacağını merak ediyorum.
Bol şans, Bay Büyük Birader.
O hâlde internet de icat edilmemeli miydi? Mektuplar, Facebook, arabalar, silahlar, bıçaklar ve tarım da aynı şekilde.
cjdns ve Yggdrasil’den öğrenilenlerin nereye yansıtıldığı açıkça görülüyor; proje de çok havalı
Ancak gelecek vadettiği ve yeni proje de ilginç olduğu için küçük bir noktaya değinmek istiyorum. FAQ’ye göre yönlendirici IP’lerinin bir yapısı var ve özel amaçlı önekler dışında çoğu coğrafi işaret öneki içinde yer alıyor. Her ülke ve ABD’deki her eyalet Mycoria içinde kendine özgü bir öneke sahip; aynı ülkedeki yönlendiriciler küresel düzeyde aynı öneki paylaşıyor ve yakın ülkelerin önekleri de genellikle birbirine benziyor
Ülke öneki içinde Mycoria adres mesafesi yönlendirmesi kullanarak paketleri, bilinen diğer yönlendiriciler arasında adres olarak en yakın olana gönderiyor. En verimli yönlendirme değil, ancak özellikle Mycoria gibi daha küçük bir coğrafi alanla sınırlandığında, birkaç ek önlemle birlikte oldukça iyi çalışıyor
IPv4 internetinden, IANA IP’lerini her RIR’ın yönetme biçiminden ve IPv4 bloklarına coğrafi bilgi iliştirilmesinden çıkarılan talihsiz derslerden biri, politika yapıcıların coğrafi etiketlerin üzerine politika bindirmeyi çok sevdiği. Örneğin Maxmind bir adresin Pakistan’da olduğunu bildirir ve Pakistan yasalarına göre başka bir adresin sunduğu içerik yasaksa, engelleme böyle gerçekleşir
Ağ öneklerine coğrafi farkındalık yerleşik olduğunda, bu kullanıcıların istemediği şekillerde kötüye kullanılabilir. Elbette kabul edilebilir bir ödün olabilir ve kullanıcıların coğrafi farkındalıklı öneklerin avantajlarından yeterince yararlanıp dezavantajlarına katlanacağı senaryoları hayal etmek de kolay
Eğer ilkiyse, coğrafi farkındalıklı önekler, yani “bu yargı alanındaki diğer kişilerle X mil içinde” yerine gecikme farkındalıklı öneklere, yani “bu önek içindeki diğer kişilerle X ms içinde” yaklaşımına geçmeyi değerlendirmek isteyebilirsiniz
Yine de kendi önerime karşı çıkarsam, coğrafi farkındalıklı öneklerin üzerine 8. katman politikaları uygulamak isteyenler gecikme farkındalıklı önekleri de yeterince yakın diye kasıtlı olarak yanlış yorumlayabilir; bu durumda birçok emek boşa gidebilir
Özel adreslerde coğrafi işaret yoktur ve yönlendirilmezler. Örneğin rastgele oluşturulurlar ve coğrafi konuma kolayca atfedilemezler
Belgeler iyi hazırlanmış ve ilginç görünüyor. Kendim denemem gerekecek, ama aklıma gelen ilk soru Mycoria’nın ağ içinde tüm düğümü açığa çıkarıp çıkarmadığı; port erişimini sınırlamak vb. için bir güvenlik duvarı gerekip gerekmediği
Bunu Yggdrasil’de gerekli olduğu için soruyorum: https://yggdrasil-network.github.io/faq.html#will-my-machine...
Varsayılan olarak kimse cihazıma erişemez. Yapılandırmanın
servicesbölümünde bunu açıkça izinli hâle getirmeniz gerekirVeilid(https://veilid.com/) ile karşılaştırıldığında nasıl olduğunu merak ediyorum
Reticulum[0]’a baktınız mı merak ediyorum. Mycoria’nın ağ katmanıyla ne kadar örtüştüğünü de bilmek isterim
[0]: https://github.com/markqvist/Reticulum
Bir şeyi tamamen kaçırıyor olabilirim ama Mycoria, ağ katılımcılarının Mycoria yönlendirici ID’sine karşılık gelen genel internet IP adresini öğrenmesini engellemeyi mi amaçlıyor?
Yapılandırmadaki
ianaalanı bunun hedef olmadığı izlenimini veriyor; öyleyse bu sistem IPv6 ve küresel ad alanına sahip Tailscale’e daha yakın görünüyor. Bu durumda neredeyse tüm internet host’ları BitTorrent’teki gibi NAT geçiş teknikleriyle birbirlerine doğrudan ulaşabildiğinden, “yönlendirme” vurgusunu pek anlayamıyorumTor gizli servisleri gibi genel internet IP adresini gizlemeyi amaçlıyorsa, yönlendirme biçimi de pek anlamlı gelmiyor. Çünkü muhtemelen belirleyici ya da gecikmeye bağlı bir stratejiyle rota seçildiğinde bilgi sızmasını istemezsiniz
Mevcut internet “normal” çalışsa bile, benzer ağların çok sayıda kullanıcısı overlay ağ yönlendirmesiyle daha iyi bağlantı elde ettiklerini bildirdi. IANA internetinin yönlendirmesi bundan büyük ölçüde etkileniyor
Mycoria’nın yapılandırmayı oluşturmasına izin verirseniz cihazın mevcut genel arayüzü dahil edilir; bu nedenle bu yalnızca sunucular için geçerlidir. Mycoria IANA adreslerine bağımlı değildir, ancak ağ yapısını otomatik olarak iyileştirmek için bunları kullanır. Yani IANA interneti üzerinden yönlendiriciler arasında daha iyi yollar bulur
Zaten var olan i2p gibi ağlara katkıda bulunmak daha yararlı olabilir
Bunların çoğu yeterli benimsenme oranına ulaşamadığı için başarısız oldu; bunun büyük nedenlerinden biri, masaüstü bilgisayar pazarının %90’dan fazlasının Linux ya da BSD kullanmadığı gerçeğini kabul etmemeleri
Bazıları Windows istemcisini yarım yamalak destekliyor; masaüstü pazarının yaklaşık %20–30’unu oluşturan macOS’u destekleyen ise neredeyse yok
zrok(https://zrok.io/) ile karşılaştırıldığında nasıl olduğunu merak ediyorum. Kendim denemek istiyorum ama varsayılan olarak özel değilmiş gibi geldiği için biraz endişeliyim
Varsayılan olarak hiçbir şey cihazıma erişemez. Bir hizmet tanımlayıp
friends, yani diğer cihazlarımı eklemem gerekir; ancak o zaman erişime izin verebilirim