- Mycoria คือเครือข่ายโอเวอร์เลย์แบบเปิดที่ปลอดภัย ซึ่งมุ่งเชื่อมต่อผู้เข้าร่วมทุกคนอย่างเท่าเทียม และยึดแนวทางความเปิดกว้างกับจิตวิญญาณแห่งการสำรวจของอินเทอร์เน็ตยุคแรก
- การเข้าร่วมไม่มีขั้นตอนราชการ และทุกการเชื่อมต่อมี การยืนยันตัวตน และ การเข้ารหัส เป็นพื้นฐานโดยปริยาย
- สามารถเชื่อมต่อผ่านอินเทอร์เน็ตหรือขยายเป็น เครือข่ายเมช ของตนเองได้ เพื่อลดอุปสรรคในการเข้าร่วมเครือข่าย
- การออกแบบมุ่งเน้นโครงสร้างที่เล็กและเรียบง่าย ความเข้ากันได้กับโครงสร้างพื้นฐานเดิมอย่าง DNS และความปลอดภัยกับความเป็นส่วนตัวเป็นค่าเริ่มต้น
- มีการเข้ารหัสแบบปลายทางถึงปลายทางอัตโนมัติ การกำหนดเส้นทางที่ขยายได้ แดชบอร์ด การแปลชื่อ DNS
.mycoและการค้นหาบริการ โดยฟีเจอร์ด้านความเป็นส่วนตัวและการเพิ่มประสิทธิภาพอัตโนมัติบางส่วนยังอยู่ในสถานะ WIP
แนวทางการเชื่อมต่อที่ Mycoria มุ่งไป
- Mycoria คือเครือข่ายโอเวอร์เลย์แบบเปิดที่ปลอดภัยสำหรับเชื่อมต่อผู้เข้าร่วมทุกคน
- ยึดถือจิตวิญญาณแห่งความอยากรู้อยากเห็นและการผจญภัยของอินเทอร์เน็ตยุคแรก โดยให้เสรีภาพในการเชื่อมต่อเป็นคุณค่าหลัก
- หลักการสำคัญมีดังนี้
- Everyone is equal: ทุกคนเชื่อมต่อได้อย่างง่ายดาย
- Everyone is welcome: เป็นเครือข่ายเปิดที่เข้าร่วมได้โดยไม่มีขั้นตอนราชการ
- No spooking: ทุกการเชื่อมต่อได้รับการยืนยันตัวตน
- No surveillance: ทุกการเชื่อมต่อถูกเข้ารหัส และรวมถึง Private Addresses
- No barriers: เชื่อมต่อผ่านอินเทอร์เน็ตหรือขยาย Mycoria ด้วยเมชของตนเองได้
เป้าหมายการออกแบบและความสามารถปัจจุบัน
- ตั้งเป้าให้โครงสร้างมีขนาดเล็กและเรียบง่าย
- คำนึงถึง ความเข้ากันได้ กับโครงสร้างพื้นฐานเดิมอย่าง DNS
- ความปลอดภัยถูกเปิดใช้เป็นค่าเริ่มต้น และความเป็นส่วนตัวพื้นฐานยังอยู่ในสถานะ WIP
- ความสามารถที่มีอยู่ในปัจจุบัน ได้แก่
- การเข้ารหัสแบบปลายทางถึงปลายทาง อัตโนมัติ
- การเข้ารหัสสมัยใหม่
- การกำหนดเส้นทางที่ชาญฉลาดและขยายได้
- แดชบอร์ด
- การแปลชื่อ DNS
.myco- ต้องตั้งค่าระบบปฏิบัติการ
- การค้นหาบริการแบบเรียบง่าย
- การเพิ่มประสิทธิภาพและการกู้คืนเครือข่ายอัตโนมัติสำหรับอินเทอร์เน็ตโอเวอร์เลย์
- อยู่ในสถานะ WIP
- private addresses แบบหมุนเวียน
- อยู่ในสถานะ WIP
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
ผู้เขียนเองครับ ที่ Safing ผมเป็นผู้ร่วมก่อตั้ง/CTO และสร้าง เทคโนโลยีความเป็นส่วนตัวมาตลอด 8 ปีที่ผ่านมา ผลงานทางเทคนิคที่ใหญ่ที่สุดคือ SPN (เดิมชื่อ Port17/Gate17)
SPN เป็นเครือข่ายความเป็นส่วนตัวที่อยู่ในช่องว่างระหว่าง VPN กับ Tor กล่าวคือเป็นพร็อกซีเลเยอร์ 5 ตั้งค่าผิดไม่ได้ ความเร็วก็ใช้ได้ และให้ความเป็นส่วนตัวที่ดีกว่า VPN มากผ่านการเข้ารหัสแบบ onion และการแยกการยืนยันตัวตนออกจากการอนุญาตสิทธิ์
ที่น่าสนใจคือแนวทาง การยืนยันตัวตนแบบแยกส่วนนี้ภายหลังถูกนำไปใช้งานใน Apple Private Relay และ Google One VPN ด้วย
โดยรวมแล้ว SPN ทำงานได้ดี แต่ขยายระบบได้ยาก และเพราะเราทำเป็นพร็อกซีเลเยอร์ 5 เพื่อ ลดเมทาดาทาและเพิ่มความเป็นส่วนตัว จึงต้องนำการควบคุมทราฟฟิกและการควบคุมความคับคั่งมาทำใหม่ด้วย ซึ่งไม่ง่าย และยังสร้างปัญหาอยู่จนถึงตอนนี้
ระหว่างนั้นผมได้อ่านและติดตาม cjdns กับ Yggdrasil และเริ่มสนใจไอเดียด้านเน็ตเวิร์กกิ้ง พอราวเดือนพฤศจิกายน 2023 ก็สงสัยว่าด้วยประสบการณ์และความรู้ที่มีจนถึงตอนนี้ จะสร้าง เครือข่ายเมชเลเยอร์ 3 ที่ขยายได้ ซึ่งยังคงความเป็นส่วนตัวบางส่วนและความปลอดภัยเต็มรูปแบบได้ถึงแค่ไหน
ผมใช้เวลาช่วงเย็นส่วนใหญ่หลายเดือนในการสร้างมัน และคืบหน้าได้ดีกว่าที่คิด แต่หลังจากมี MVP ที่พอใช้ได้และมีเพื่อนคนแรกนำไปใช้ในโปรดักชันขนาดเล็ก ผมก็ไม่มีเวลาทำต่อมากนัก
ตอนนี้ผมกำลังเริ่มโปรเจกต์ใหม่และตั้งใจจะใช้สิ่งนี้ให้เกิดประโยชน์เต็มที่ที่นั่น ดังนั้นในอีกไม่กี่ปีข้างหน้าน่าจะมีการพัฒนาต่อไปอีกพอสมควร ณ ตอนนี้ Mycoria ทำงานได้ อย่างน้อยก็ในสเกลเล็ก ๆ แต่โดยรวมยังใกล้เคียงกับ MVP
ผมสงสัยว่ามีเหตุผลพิเศษอะไรที่ไม่ใช้ segment routing ตามมาตรฐาน ซึ่งสามารถนำมาใช้ในเลเยอร์ 3 เพื่อรองรับ source routing แต่กลับสร้างทรานสปอร์ตเลเยอร์ 4 แบบกำหนดเองขึ้นมา
และยังสงสัยด้วยว่าในการวิเคราะห์ความปลอดภัยได้ใช้ BAN logic กับเครื่องมือตรวจสอบ ProVerif หรือไม่
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
friendนี่ไม่ใช่การจับผิดเล็ก ๆ น้อย ๆ แต่ความหมายเชิงความสัมพันธ์ที่ไม่ปิดอยู่ภายในขอบเขตของ user agent ไม่ควรถูกนำมาใช้ในชั้นโครงสร้างพื้นฐานเซิร์ฟเวอร์บนแล็ปท็อปของผมก็เป็น user agent ของผม และอินสแตนซ์ที่รันบนมือถือก็เช่นกัน ดังนั้นทั้งสองเป็นเพียร์กัน
แอปพลิเคชันที่จะสร้างบนฐานนี้โดยทั่วไปจะจัดการความสัมพันธ์ทางสังคมของผู้ใช้ และคำอย่าง
friendจะมีประโยชน์ในเลเยอร์นั้นถ้าอย่างนั้นก็สงสัยว่าได้พิจารณาแรงจูงใจในการเข้าร่วม ไม่ว่าจะเป็นตัวเงินหรือไม่ใช่ตัวเงิน ไว้หรือยัง โจทย์ยากหลักในด้านนี้ดูเหมือนจะอยู่ที่การแก้เรื่อง การชำระเงินแบบนิรนามที่เป็นมาตรฐาน สำหรับผู้ให้บริการโครงสร้างพื้นฐานของเครือข่าย
ในทางทฤษฎีดูเหมือนจะเป็นไปได้ จึงอยากรู้ว่าถ้าใช้แนวทางนั้นทำอย่างไร หรือไม่ก็สงสัยว่าที่อยู่ของเราเตอร์ไม่มีเมทาดาทา และมีเพียงที่อยู่ของผู้ใช้ปลายทางเท่านั้นที่ถูกเข้ารหัสในลักษณะนั้น
แม้จะมี Private Relay แต่ก็ทำงานเฉพาะกับแอปของ Apple บางตัวอย่าง Safari เท่านั้น แถมยังรู้ได้ยากว่ามันกำลังทำงานอยู่หรือไม่ และบังคับให้ทราฟฟิกต้องส่งไปทางนั้นเท่านั้นก็ไม่ได้
ในเชิงเทคนิค ของแบบนี้ดีมากจริง ๆ มันทำให้จินตนาการถึงอนาคตไกล ๆ ที่เนิร์ดและกี๊กเจ๋ง ๆ ฝ่าฟันอุปสรรคสารพัด แล้วสร้าง เครือข่ายชุมชน ของตัวเองขึ้นมาได้ด้วยโครงสร้างพื้นฐานพื้นฐานเท่านั้น
แต่สุดท้ายแล้วการเข้าร่วมระบบแนวกระจายศูนย์ทั่วไปก็ไม่สะดวกใจและรู้สึกลังเล เพราะเหมือนจะไปช่วยแบ่งปันและเผยแพร่สื่อแสวงหาประโยชน์ทางเพศจากเด็ก
Tailscale อย่างน้อยก็ยังอยู่ในขอบเขตส่วนตัว แต่สิ่งนี้ให้ความรู้สึกว่าเป็นส่วนหนึ่งของเครือข่ายที่กว้างกว่า ผมสงสัยว่าโหนดของผมจะถูกใช้ในการเราเตอร์ทราฟฟิกแบบนั้นหรือไม่
ขอให้โชคดีนะ คุณบิ๊กบราเธอร์
ถ้าอย่างนั้นอินเทอร์เน็ตก็ไม่ควรถูกประดิษฐ์ขึ้นมาหรือ? จดหมาย, Facebook, รถยนต์, ปืน, มีด, เกษตรกรรม ก็เช่นกัน
เห็นได้ชัดเจนว่านำสิ่งที่เรียนรู้จาก cjdns และ Yggdrasil ไปสะท้อนไว้ตรงไหน และโปรเจกต์ก็ดูยอดเยี่ยมมาก
แต่เพราะดูมีอนาคตและโปรเจกต์ใหม่นี้ก็น่าสนใจ เลยอยากชี้ประเด็นเล็กน้อย ตาม FAQ ระบุว่า IP ของเราเตอร์มีโครงสร้าง และถ้าไม่นับคำนำหน้าสำหรับวัตถุประสงค์พิเศษ ส่วนใหญ่จะอยู่ใน คำนำหน้าที่ระบุภูมิศาสตร์ แต่ละประเทศและแต่ละรัฐของสหรัฐฯ จะมีคำนำหน้าเฉพาะใน Mycoria โดยเราเตอร์ในประเทศเดียวกันจะแชร์คำนำหน้าเดียวกันในระดับทั่วโลก และประเทศที่อยู่ใกล้กันก็มักมีคำนำหน้าคล้ายกันด้วย
ภายในคำนำหน้าของประเทศ Mycoria ใช้ การเราต์ตามระยะห่างของที่อยู่ โดยส่งแพ็กเก็ตไปยังเราเตอร์ที่รู้จักซึ่งมีที่อยู่ใกล้ที่สุดในเชิงที่อยู่ วิธีนี้ไม่ใช่การเราต์ที่มีประสิทธิภาพที่สุด แต่โดยเฉพาะเมื่อจำกัดให้อยู่ในพื้นที่ภูมิศาสตร์ที่เล็กลงแบบ Mycoria พร้อมมาตรการเสริมบางอย่าง ก็ทำงานได้ค่อนข้างดี
หนึ่งในบทเรียนที่ไม่น่ายินดีจากอินเทอร์เน็ต IPv4 และวิธีที่ RIR แต่ละแห่งบริหาร IP ของ IANA รวมถึงวิธีที่ผูกข้อมูลภูมิศาสตร์เข้ากับบล็อก IPv4 คือผู้กำหนดนโยบายชอบเอานโยบายไปวางทับบนแท็กภูมิศาสตร์มาก ตัวอย่างเช่น ถ้า Maxmind รายงานว่าที่อยู่หนึ่งอยู่ในปากีสถาน และตามกฎหมายปากีสถาน เนื้อหาที่ที่อยู่อื่นให้บริการเป็นสิ่งต้องห้าม ก็จะถูกบล็อกในลักษณะนั้น
หากมีการฝังการรับรู้ภูมิศาสตร์ไว้ในคำนำหน้าของเครือข่าย ก็อาจถูกนำไปใช้ในทางที่ผู้ใช้ไม่ต้องการได้ แน่นอนว่าอาจเป็นการแลกเปลี่ยนที่ยอมรับได้ และก็จินตนาการสถานการณ์ได้ง่ายว่าผู้ใช้ได้ประโยชน์จากคำนำหน้าที่รับรู้ภูมิศาสตร์มากพอจนยอมรับข้อเสียได้
ถ้าเป็นกรณีแรก ก็น่าพิจารณาย้ายจากคำนำหน้าที่รับรู้ภูมิศาสตร์ หรือ “อยู่ภายใน X ไมล์จากคนอื่นในเขตอำนาจศาลนี้” ไปเป็น คำนำหน้าที่รับรู้ค่าหน่วงเวลา หรือ “อยู่ภายใน Xms จากคนอื่นในคำนำหน้านี้” แทน
อย่างไรก็ตาม ถ้าจะโต้แย้งคำแนะนำของตัวเอง ฝ่ายที่ต้องการใช้นโยบายชั้นที่ 8 บนคำนำหน้าที่รับรู้ภูมิศาสตร์ก็อาจตั้งใจตีความคำนำหน้าที่รับรู้ค่าหน่วงเวลาว่าใกล้เคียงพอได้เช่นกัน และความพยายามมากมายก็อาจสูญเปล่า
ที่อยู่ส่วนตัวไม่มีการระบุภูมิศาสตร์และไม่ถูกเราต์ ตัวอย่างเช่น สร้างขึ้นแบบสุ่มและไม่สามารถโยงกลับไปยังตำแหน่งทางภูมิศาสตร์ได้ง่าย
เอกสารทำไว้ดีและดูน่าสนใจ คงต้องลองใช้เอง แต่คำถามแรกที่นึกขึ้นมาคือ Mycoria เปิดเผย ทั้งโหนด ภายในเครือข่ายจนต้องใช้ไฟร์วอลล์เพื่อจำกัดการเข้าถึงพอร์ต ฯลฯ หรือไม่
ถามเพราะใน Yggdrasil จำเป็นต้องทำแบบนี้: https://yggdrasil-network.github.io/faq.html#will-my-machine...
โดยค่าเริ่มต้น ไม่มีใครเข้าถึงอุปกรณ์ของฉันได้ ต้องอนุญาตอย่างชัดเจนในส่วน
servicesของการตั้งค่าอยากรู้ว่าเทียบกับ Veilid(https://veilid.com/) แล้วเป็นอย่างไร
สงสัยว่าเคยดู Reticulum[0] ไหม และอยากรู้ด้วยว่ามันทับซ้อนกับ เลเยอร์เครือข่าย ของ Mycoria แค่ไหน
[0]: https://github.com/markqvist/Reticulum
ผมอาจพลาดอะไรไปอย่างสิ้นเชิงก็ได้ แต่ Mycoria พยายามไม่ให้ผู้เข้าร่วมเครือข่ายค้นหา ที่อยู่ IP อินเทอร์เน็ตสาธารณะ ที่สอดคล้องกับ ID เราเตอร์ Mycoria หรือเปล่า?
ฟิลด์
ianaในการตั้งค่าทำให้ดูเหมือนว่านี่ไม่ใช่เป้าหมาย และถ้าเป็นเช่นนั้น ระบบนี้ก็ดูใกล้เคียงกับ Tailscale ที่มี IPv6 และเนมสเปซส่วนกลาง ในกรณีนี้โฮสต์อินเทอร์เน็ตแทบทั้งหมดสามารถติดต่อกันโดยตรงได้ด้วยเทคนิคเจาะ NAT แบบ BitTorrent จึงไม่ค่อยเข้าใจว่าทำไมถึงเน้นเรื่อง “การเราต์”ถ้าต้องการซ่อนที่อยู่ IP อินเทอร์เน็ตสาธารณะแบบบริการซ่อนของ Tor วิธีเราต์ก็ไม่ค่อยเข้าใจนัก เพราะคงไม่อยากให้มีข้อมูลรั่วจากการเลือกเส้นทางด้วยกลยุทธ์ที่เป็นเชิงกำหนดหรือขึ้นกับค่าหน่วงเวลา
แม้อินเทอร์เน็ตปัจจุบันจะทำงาน “ตามปกติ” ผู้ใช้เครือข่ายลักษณะคล้ายกันจำนวนมากก็รายงานว่าได้การเชื่อมต่อที่ดีขึ้นด้วยการเราต์ของเครือข่ายโอเวอร์เลย์ เพราะการเราต์ของอินเทอร์เน็ต IANA ได้รับผลกระทบอย่างมาก
หากให้ Mycoria สร้างการตั้งค่า ก็จะรวมอินเทอร์เฟซสาธารณะปัจจุบันของอุปกรณ์ไว้ด้วย ดังนั้นเรื่องนี้จึงจริงเฉพาะกับเซิร์ฟเวอร์ Mycoria ไม่ได้พึ่งพาที่อยู่ IANA แต่ใช้เพื่อปรับปรุงโครงสร้างเครือข่ายโดยอัตโนมัติ กล่าวคือใช้หาเส้นทางที่ดีกว่าระหว่างเราเตอร์ผ่านอินเทอร์เน็ต IANA
การไปมีส่วนร่วมกับเครือข่ายที่มีอยู่แล้วอย่าง i2p อาจมีประโยชน์กว่า
ส่วนใหญ่ล้มเหลวเพราะไม่ได้รับการใช้งานมากพอ โดยสาเหตุใหญ่คือไม่ยอมรับความจริงว่ามากกว่า 90% ของตลาดคอมพิวเตอร์เดสก์ท็อปไม่ได้ใช้ Linux หรือ BSD
บางรายรองรับไคลเอนต์ Windows แบบกระท่อนกระแท่น และแทบไม่มีรายไหนรองรับ macOS ซึ่งมีส่วนแบ่งราว 20–30% ของตลาดเดสก์ท็อป
อยากรู้ว่าเทียบกับ zrok(https://zrok.io/) แล้วเป็นอย่างไร อยากทดลองเอง แต่ฟังดูเหมือนว่า โดยค่าเริ่มต้นไม่ได้เป็นส่วนตัว เลยกังวลนิดหน่อย
โดยค่าเริ่มต้น ไม่มีอะไรเข้าถึงอุปกรณ์ของฉันได้ ต้องกำหนดบริการและเพิ่ม
friendsซึ่งก็คืออุปกรณ์อื่น ๆ ของฉัน เพื่ออนุญาตการเข้าถึง