• Mycoria คือโอเพนซีเคียวร์โอเวอร์เลย์เน็ตเวิร์ก ที่ต้องการสืบทอดจิตวิญญาณที่เสรีและชอบการทดลองของอินเทอร์เน็ตยุคแรก
  • ยึดถือ ความเท่าเทียมในการเข้าร่วม, ความไม่เปิดเผยตัวตน และการสื่อสารแบบเข้ารหัสโดยปราศจากการสอดส่อง เป็นปรัชญาหลัก ทำให้ทุกคนเชื่อมต่อได้อย่างง่ายดาย
  • โดยพื้นฐานแล้วถูกออกแบบให้ เล็กและเรียบง่าย และเข้ากันได้กับโครงสร้างพื้นฐานเดิม เช่น DNS
  • มีฟีเจอร์อย่าง การเข้ารหัสแบบ end-to-end อัตโนมัติ, สมาร์ตรูตติง, การค้นหาบริการ, และ รองรับโดเมน .myco
  • ในอนาคตกำลังพัฒนาฟีเจอร์ การหมุนเวียน private address และ การปรับแต่งเครือข่ายด้วยตัวเอง เพิ่มเติม

แนะนำ Mycoria

  • Mycoria คือโอเพนซีเคียวร์โอเวอร์เลย์เน็ตเวิร์กแบบเปิดที่เชื่อมต่อผู้เข้าร่วมทุกคน โดยมีเป้าหมายเพื่อฟื้นคืน จิตวิญญาณแห่งการผจญภัยและความอยากรู้อยากเห็น ของอินเทอร์เน็ตยุคแรก
  • รับประกันการเชื่อมต่ออย่างอิสระระหว่างผู้ใช้ และมอบ สภาพแวดล้อมการสื่อสารที่ปราศจากการสอดส่องผ่านการยืนยันตัวตนและการเข้ารหัส

ปรัชญาหลัก

  • ทุกคนเท่าเทียมกัน: เชื่อมต่อกับใครก็ได้อย่างง่ายดาย
  • เปิดกว้างสำหรับทุกคน: เป็นเครือข่ายเปิดที่ไม่มีระบบราชการมาขวางกั้น
  • ไม่มีการสอดส่อง: การสื่อสารทั้งหมดถูกเข้ารหัส และสามารถใช้ private address ได้
  • ไร้กำแพงกั้น: ขยายผ่านอินเทอร์เน็ตหรือเมชเน็ตเวิร์กของตัวเองได้อย่างง่ายดาย

เป้าหมายด้านการออกแบบ

  • รักษาโครงสร้างที่ เล็กและเรียบง่าย
  • ทำให้ เข้ากันได้กับโครงสร้างพื้นฐานเดิม เช่น DNS
  • ออกแบบโดยให้ ความปลอดภัยเป็นพื้นฐาน
  • ปกป้องความเป็นส่วนตัวขั้นพื้นฐาน (กำลังพัฒนาอยู่ในขณะนี้)

ฟีเจอร์หลัก

  • การเข้ารหัสแบบ end-to-end อัตโนมัติ
  • ใช้ เทคโนโลยีการเข้ารหัสสมัยใหม่
  • รูตติงอัจฉริยะที่ขยายได้
  • มีแดชบอร์ดให้ใช้งาน
  • สามารถ resolve DNS .myco ได้ (ต้องตั้งค่าระบบปฏิบัติการ)
  • service discovery แบบเรียบง่าย
  • ฟีเจอร์ปรับแต่งและฟื้นตัวอัตโนมัติสำหรับอินเทอร์เน็ตโอเวอร์เลย์เน็ตเวิร์ก (กำลังพัฒนา)
  • ฟีเจอร์หมุนเวียน private address อัตโนมัติ (กำลังพัฒนา)

Concept ของ Mycoria

Simplicity (ความเรียบง่าย)

  • เราเตอร์ Mycoria มี ID ในรูปแบบที่อยู่ IPv6 ซึ่งไม่ใช่แค่ที่อยู่ธรรมดา แต่ยังทำหน้าที่เป็น ลายนิ้วมือแฮชของ public key ด้วย
  • สร้างขึ้นด้วยกระบวนการ สร้างคู่กุญแจ Ed25519 → public key → แฮช BLAKE3 → แปลงเป็นที่อยู่ IPv6
  • วิธีนี้ทำให้สามารถ รวม public key และที่อยู่เข้าเป็นข้อมูลชุดเดียวกัน และยังเข้ากันได้กับโครงสร้างพื้นฐานเดิมที่รองรับ IPv6
  • ในสภาพแวดล้อมที่ติดตั้ง Mycoria แล้ว จะสามารถทำ การเข้ารหัสแบบ end-to-end ได้ 100%

Scalable Routing (รูตติงที่ขยายได้)

  • ที่อยู่ IPv6 อาจดูเหมือนสุ่ม แต่จริง ๆ แล้วมี โครงสร้าง prefix ตามประเทศและภูมิภาค
    • prefix แยกตามประเทศทำให้ ปรับแต่งเส้นทางตามภูมิศาสตร์ได้
  • ภายใน prefix นั้นจะใช้ รูตติงตามระยะห่างของที่อยู่ และส่งข้อมูลไปยังเราเตอร์ที่มีที่อยู่ใกล้เคียง
  • ยังสามารถหาเส้นทางรูตติงที่มีประสิทธิภาพได้ผ่าน การสำรวจเส้นทาง (source routing)

Layers (โครงสร้างเลเยอร์)

  • เมื่อรับแพ็กเก็ตเข้ามา จะถูกประมวลผลที่ สวิตช์เลเยอร์ ก่อน
    • แพ็กเก็ตแบบ source routing จะมีเส้นทางทั้งหมดอยู่ในส่วนหัวแพ็กเก็ต ทำให้ ส่งต่อได้โดยไม่ต้องค้นตารางเราเตอร์
    • ระบุอินเทอร์เฟซและส่งต่อโดยอิงจากสวิตช์เลเบล
  • หากสวิตช์เลเยอร์จัดการไม่ได้ จะถูกส่งต่อไปยัง รูตติงเลเยอร์ เพื่อทำการรูตติงตามปกติ

Private Address (ที่อยู่ส่วนตัว)

  • แม้ยังไม่ได้ถูกนำไปใช้งานจริง แต่กำลังพัฒนา ระบบ private address ที่ไม่สามารถติดตามได้
  • เนื่องจาก Router ID ถูกเข้ารหัสแต่มีความถาวร จึงมีการนำ private prefix ที่ไม่สามารถรูตได้ มาใช้เพื่อชดเชยจุดนี้
  • private address จำเป็นต้องใช้สวิตช์เลเบล และสามารถ เรียนรู้เส้นทางแบบอ้อมผ่าน discovery packet ได้
  • ผู้รับสามารถส่งคำตอบกลับโดยย้อนตามเส้นทางของเลเบลได้ จึง ไม่จำเป็นต้องรู้ตำแหน่งของฝั่งผู้ส่ง
  • เพื่อบรรเทาปัญหาที่เลเบลอาจเปิดเผยข้อมูลมากเกินไป จึงกำลังศึกษา แนวทางการ masking เลเบล อยู่ด้วย

Cryptography (เทคโนโลยีการเข้ารหัส)

  • เทคโนโลยีที่ใช้:
    • Curve25519: public/private key และการแลกเปลี่ยนกุญแจ
    • Chacha20Poly1305: การเข้ารหัสแบบยืนยันความถูกต้อง
    • BLAKE3: การทำแฮช
  • ในอนาคตยังเผื่อ version และ type field ไว้อย่างเพียงพอ เพื่อให้เปลี่ยนไปใช้อัลกอริทึมอื่นได้

Inspirations (แรงบันดาลใจ)

  • Mycoria ได้รับ แรงบันดาลใจ จากแนวคิดของโครงการโอเพนซอร์สดังต่อไปนี้:

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น