• यह open source प्रोजेक्ट कम-कीमत वाले Artix7 FPGA और open source toolchain का उपयोग करके Wireguard VPN को हार्डवेयर में इम्प्लीमेंट करता है
  • पारंपरिक software-आधारित तरीकों की तुलना में इसकी खासियत wire-speed के करीब गति और कम लागत है
  • सभी design files पूरी तरह सार्वजनिक हैं, इसलिए backdoor या security flaws की गहन जांच संभव है
  • ChaCha20-Poly1305, Curve25519, BLAKE2 जैसे Wireguard के आधुनिक cryptographic algorithms को hardware/software संयोजन के रूप में इम्प्लीमेंट किया गया है
  • यह प्रोजेक्ट अभी शुरुआती "Proof of Concept" चरण में है, और आगे feature expansion तथा optimization की योजना है

परिचय और महत्व

यह open source Wireguard FPGA प्रोजेक्ट Wireguard VPN को किफायती Artix7 FPGA पर हार्डवेयर में इम्प्लीमेंट करता है, जिससे network security infrastructure के एक मुख्य घटक VPN को कोई भी कम लागत पर अधिकतम गति के साथ उपयोग कर सके। मौजूदा hardware solutions में आम तौर पर महंगे commercial FPGA और closed toolchain की जरूरत होती थी, लेकिन यह प्रोजेक्ट open source-आधारित design, tools के उपयोग और पूर्ण source code disclosure के जरिए transparency और व्यापक पहुंच के मामले में स्पष्ट रूप से अलग और लाभकारी है.

प्रोजेक्ट की पृष्ठभूमि और लक्ष्य

  • मौजूदा OpenVPN, IPSec आदि performance और management के लिहाज से सीमाएं रखते हैं, इसलिए Wireguard एक आधुनिक और सुरक्षित विकल्प के रूप में उभर रहा है
  • वर्तमान Wireguard hardware implementations महंगे उपकरणों और closed IP पर निर्भर हैं, जबकि software implementations का performance network line speed तक नहीं पहुंचता
  • यह प्रोजेक्ट SystemVerilog में विकसित Wireguard को open source, low-cost FPGA environment में सभी के लिए उपयोगी बनाता है ❨जिसमें verification और education के उद्देश्य भी शामिल हैं❩

संबंधित प्रोजेक्ट्स से तुलना

  • Blackwire प्रोजेक्ट (100Gbps-स्तर का Wireguard hardware) महंगे Alveo U50 और बंद Vivado toolchain का उपयोग करता है, इसलिए इसकी पहुंच सीमित है
  • इस प्रोजेक्ट टीम ने पहले Balanced Binary Tree Search algorithm जैसे core modules विकसित किए थे, लेकिन commercialization में विफलता और ownership issues जैसी सीमाएं सामने आईं
  • Wireguard FPGA प्रोजेक्ट industry-standard HDL(SystemVerilog), open source tool support, सस्ते mass-market hardware और transparent open source policy पर जोर देता है

हार्डवेयर और सॉफ्टवेयर आर्किटेक्चर

हार्डवेयर(HW)

  • Control plane: boot ROM और DDR3 SDRAM controller से जुड़ा soft CPU Wireguard protocol management, routing, session/key management आदि संभालता है
  • Data plane: RTL में इम्प्लीमेंट किया गया है, जो packet encryption/decryption, routing और Wireguard protocol के वास्तविक data transfer को wire-speed पर प्रोसेस करता है
  • मुख्य घटक
    • PHY Controller, 1G MAC, Rx/Tx FIFO, Header Parser, Packet {Dis/As}sembler, ChaCha20-Poly1305 encryption/authentication module, IP Lookup engine आदि
    • सभी encryption और authentication modules RFC7539 standard के आधार पर इम्प्लीमेंट किए गए हैं

सॉफ्टवेयर(SW)

  • Wireguard Agent: protocol handshake, session maintenance, key/routing table management की भूमिका निभाता है
  • crypto-संबंधित modules
    • Curve25519: ECDH key exchange
    • ChaCha20-Poly1305, XChaCha20-Poly1305: AEAD-आधारित symmetric-key encryption/authentication और nonce protection
    • BLAKE2s: MAC authentication और hashing
    • इसके अलावा HKDF, Timer, SipHash, CLI, HAL/CSR drivers आदि शामिल हैं

विकास और execution योजना

प्रोजेक्ट चरण

  • चरण 1: board bring-up और design blueprint तैयार करना, HW/SW platform से परिचित होना, मौजूदा implementations का विश्लेषण, design partitioning/documentation
  • चरण 2: static Wireguard channel के hardware data path का बेसिक implementation और integration, cryptographic algorithms (खासकर ChaCha20-Poly1305) का HW implementation
  • चरण 3: soft RISC-V processor के भीतर management software development और HW/SW integration, session/key management जैसे कम-overhead कार्यों को software में संभालना
  • चरण 4: VPN tunnel के initialization, maintenance और secure shutdown तक का full workflow इम्प्लीमेंट करना
  • चरण 5: performance testing, optimization, अन्य open source toolchains(OpenXC7) के support का विस्तार, community documentation/CI का निरंतर रखरखाव
  • चरण 6(वैकल्पिक) : VPN tunnel data flow control software विकसित करना, स्थिर data transfer और management इम्प्लीमेंट करना

HW/SW संयुक्त आर्किटेक्चर(सहयोग)

  • WireGuard node IP router जैसी भूमिका निभाता है, इसलिए 2-layer structure(control/data plane) में प्रभावी विभाजन किया गया है
  • control traffic(protocol messages) और data traffic(encrypted/सामान्य user packets) को अलग करके, प्रत्येक के लिए उपयुक्त path और processing structure डिजाइन की गई है

simulation और verification प्रणाली

  • virtual(VProc) और RTL softcore(RISC-V आदि) आधारित CPU का चयन संभव है, और वास्तविक Wireguard traffic scenarios के आधार पर चरण-दर-चरण packet analysis किया जा सकता है
  • Co-simulation HAL: peakrdl के जरिए HW/SW के बीच control/status registers का auto-generation और API प्रदान करता है, जिससे वास्तविक संचालन में तेज SW/HW integration testing संभव होती है

open source और transparency

  • circuit(gateware), embedded software, build, bitstream आदि पूरे implementation क्षेत्र को BSD-3-Clause license के तहत पूरी तरह सार्वजनिक किया गया है
  • backdoor, vulnerabilities, legal ownership जैसी समस्याओं की community द्वारा सीधे जांच संभव हो, इसके लिए खुली संरचना पर जोर दिया गया है

अन्य जानकारी

  • development flow, भागों के विस्तृत विवरण, मुख्य reference sources और outsourced modules आदि README file और subdirectories(1.hw, 2.sw, 3.build आदि) में देखे जा सकते हैं
  • यह NLnet Foundation के सहयोग से चलाया जा रहा है

निष्कर्ष

  • यह प्रोजेक्ट high-performance Wireguard VPN hardware implementation के लिए open source standard बनने का लक्ष्य रखता है, और कम लागत, transparency तथा तेज adoption इसकी प्रमुख विशेषताएं हैं
  • यह अभी शुरुआती विकास चरण में है, लेकिन security और accessibility दोनों के लिहाज से भविष्य में open network infrastructure में इसकी महत्वपूर्ण भूमिका हो सकती है

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.