1 पॉइंट द्वारा GN⁺ 2024-05-20 | 1 टिप्पणियां | WhatsApp पर शेयर करें

विश्वसनीय, मुक्त Linux-संगत सेल्फ-होस्टिंग 64-बिट RISC-V कंप्यूटर

प्रेरणा

  • लक्ष्य: पूरी तरह विश्वसनीय Free/OpenSource कंप्यूटर बनाना

    • हार्डवेयर और सॉफ़्टवेयर सिस्टम का हर व्यवहार पूरी तरह खुले HDL (hardware description language) और सॉफ़्टवेयर सोर्स से उत्पन्न हो
    • compiler और संबंधित toolchain भी Free/OpenSource होने चाहिए, और उसी कंप्यूटर सिस्टम पर build और run किए जा सकें
    • यानी, self-hosting Free/OpenSource hardware+software stack की आवश्यकता है
  • सीमाएँ: silicon foundry का स्वामित्व या नियंत्रण नहीं है

    • अपना ASIC नहीं बना सकते, इसलिए FPGA पर "hardware" components बनाए जाएंगे
    • FPGA programming और bitstream generation Free/OpenSource tools से किया जाएगा
  • विश्वसनीयता के नज़रिए से फ़ायदे:

    • chip foundry यह नहीं जान सकती कि FPGA का उपयोग किस लिए होगा, और यह भी नहीं जान सकती कि chip में "privileged bits" कहाँ रखे जाएंगे
    • इससे privilege escalation hardware backdoor को रोकने में मदद मिलती है
    • FPGA एक ही तरह के components की नियमित grid से बने होते हैं, इसलिए dedicated ASIC की तुलना में visual inspection (chemical removal और TEM imaging) आसान होता है
  • manufacturing-stage attack surface को सीमित करना:

    • malicious source और/या toolchain को buildable source तक सीमित करके, एक विश्वसनीय final product (deploy किया गया hardware+software कंप्यूटर) बनाया जाता है

अतिरिक्त सामग्री और शुरुआती प्रयोग

  • CReSCT 2020 paper, slides और presentation: IEEE S&P 2020 citation

  • CMU/SEI research review 2019 slide deck और presentation

  • CERT/SEI में trustworthy computing कार्य पर पिछला slide deck

  • lowRISC project:

    • components को उनके upstream project पर rebase करने का प्रयास
    • यह project बहुत उपयोगी resource रहा है और components को समझने में काफी मददगार था
    • लेकिन लेखन के समय यह closed HDL toolchain पर निर्भर है, और component list में proprietary IP modules (DRAM controller आदि) का उपयोग करता है
  • yoloRISC:

    • RV64IMAC, Rocket-Chip आधारित blinky demo SoC
    • Lattice ECP5 5G Versa development board के लिए yosys/trellis/nextpnr का उपयोग करके बनाया गया

GN⁺ की राय

  • मुक्त hardware और software: यह project पूरी तरह मुक्त और open source hardware तथा software बनाने की कोशिश है, इसलिए यह उन उपयोगकर्ताओं के लिए बहुत आकर्षक है जो विश्वसनीयता और पारदर्शिता को महत्व देते हैं.
  • FPGA के फ़ायदे: FPGA का उपयोग करके hardware backdoor को रोका जा सकता है, और visual inspection के ज़रिए विश्वसनीयता बढ़ाई जा सकती है.
  • toolchain और IP modules: अभी कई projects closed toolchain और proprietary IP modules पर निर्भर हैं, जिससे पूरी तरह open source लक्ष्य हासिल करना कठिन हो जाता है.
  • तकनीकी चुनौती: self-hosting Free/OpenSource hardware+software stack बनाना तकनीकी रूप से बहुत चुनौतीपूर्ण काम है.
  • भविष्य की संभावनाएँ: यह project भविष्य के trustworthy computing systems के विकास में महत्वपूर्ण योगदान दे सकता है और open source community पर बड़ा प्रभाव डाल सकता है.

1 टिप्पणियां

 
GN⁺ 2024-05-20
Hacker News राय

Hacker News टिप्पणियों का संक्षिप्त सार

  • FPGA की सुरक्षा: FPGA निर्माण प्रक्रिया में hardware backdoor लगाए जाने को रोका जा सकता है। सिस्टम पूरी तरह रुक सकता है, लेकिन सामान्य रूप से काम करने का दिखावा करते हुए अपने मालिक के साथ विश्वासघात नहीं करेगा।

  • FPGA के संभावित जोखिम: FPGA में छिपा हुआ CPU हो सकता है, जिसे FPGA प्रोग्राम पर पूर्ण read/write access मिल सकता है। अगर सिस्टम लोकप्रिय हो जाए, तो निर्माण प्रक्रिया से अधिक जानकारी लेकर privileged bits खोजे जाने की संभावना बढ़ जाती है।

  • open source toolchain का उपयोग: open source toolchain का उपयोग करके OrangeCrab FPGA पर चल रहे RISC-V softcore में Linux shell में लॉगिन कर पाना चौंकाने वाला है। पहले यह संभव नहीं था।

  • VexRiscv और SpinalHDL: VexRiscv और SpinalHDL पर आधारित design का उपयोग किया जा रहा है, और सीमित SRAM (512KB) के कारण Linux नहीं चल रहा, लेकिन Ethernet और HDMI समर्थित हैं। CGA जैसा video adapter कोड किया गया है, जो graphics और text mode को सपोर्ट करता है।

  • DDC और trust attack: diverse double-compiling (DDC) के ज़रिए trust attack को रोकने के काम का उल्लेख देखकर खुशी हुई। अगर DDC में रुचि हो, तो संबंधित लिंक देखने की सिफारिश की गई है।

  • system rebuild: सिस्टम को खुद से rebuild करके यह सत्यापित करना अच्छा है कि bitfile समान है या नहीं। यह बात चौंकाती है कि 512MB पर 65MHz CPU के साथ 4.5 घंटे में rebuild किया जा सकता है।

  • शुरुआती Unix workstations से तुलना: 50-65MHz और 512MB, 1990 के शुरुआती दशक के Unix workstations से तुलना योग्य हैं। RAM के मामले में यह बेहतर भी हो सकता है।

  • LiteX और Kintex-7 FPGA: 2022 में LiteX का उपयोग करके ऐसा ही काम किया गया था, लेकिन Kintex-7 FPGA के लिए Vivado की आवश्यकता थी। नतीजतन Linux और Xorg चलाने वाला open gateware laptop बनाया गया।

  • Shakti project: भारत के IIT-Madras में विकसित RISC-V आधारित open source processor development ecosystem, Shakti project, को देखने की सिफारिश की गई है।

  • OSXKVM कार्य: यही व्यक्ति QEMU/KVM पर OSX चलाने वाले काम से भी जुड़ा हुआ है, और उसी ने यह project आगे बढ़ाया है।

  • self-hosting RISC-V machine की आवश्यकता: पूरी तरह self-hosting RISC-V machine की ज़रूरत होने की राय दी गई। फिलहाल सबसे बड़ी सीमा पर्याप्त RAM वाले FPGA board को ढूँढना है।

  • self-hosting की कठिनाई: self-hosting hardware और software का विचार अच्छा है, लेकिन 60MHz CPU पर GCC जैसी चीज़ें build करना लगभग अकल्पनीय रूप से कठिन है। एक व्यक्ति ने साझा किया कि उसने Gentoo को RockPro64 पर इस्तेमाल किया, लेकिन compile time बहुत लंबा होने के कारण उसे छोड़ना पड़ा।