নিরাপত্তা
Parla আপনার মাইক্রোফোন নিয়ে কাজ করে, তাই এটি এমনভাবে তৈরি যাতে অপব্যবহার কঠিন হয়। আপনার কণ্ঠ কখনো আপনার ডিভাইস ছেড়ে যায় না, এক্সটেনশন যত কম সম্ভব অনুমতি চায়, আর আমরা যে কোড প্রকাশ করি তার প্রতিটি অংশ আপনার কাছে পৌঁছানোর আগে নির্দিষ্ট ভার্সনে বাঁধা, স্ক্যান ও পরীক্ষা করা হয়।
আপনি যখন Parla ব্যবহার করেন
- আপনার কণ্ঠ আপনার ডিভাইসেই, ব্রাউজারের ভেতরে পরিষ্কার হয়। Parla-র এমন কোনো সার্ভার নেই যা অডিও গ্রহণ করে, আর চুরি হওয়ার মতো কোনো অ্যাকাউন্ট বা পাসওয়ার্ডও নেই।
- ইঞ্জিনটি আমাদের নিজস্ব কোড, তৃতীয় পক্ষের লাইব্রেরি ছাড়া Rust-এ লেখা, এবং ব্রাউজারের স্যান্ডবক্সে WebAssembly হিসেবে চলে। AI মডেলগুলো ডেটা (সংখ্যা), প্রোগ্রাম নয়: মডেল নির্মাতাদের কোনো কোড আপনার কম্পিউটারে চলে না।
- মাইক্রোফোন পরিষ্কার করতে যা লাগে, এক্সটেনশন শুধু সেটুকুই চায়: নিজের সেটিংস রাখা এবং যে পেজে আপনি মাইক্রোফোন ব্যবহার করেন সেখানে চলা। এর নিজস্ব পেজগুলো শুধু নিজেদের স্ক্রিপ্টই চালায় (কঠোর Content Security Policy)।
- ওয়েব পেজ শুধু একটি সরু চ্যানেল দিয়ে এক্সটেনশনের কাছে পৌঁছাতে পারে: তারা ইঞ্জিনের ফাইল পায়, আর কিছুই না, এবং তারা যা পাঠায় সবই যাচাই করা হয় ও আকারে সীমিত রাখা হয়।
- আপনি চালু না করা পর্যন্ত রিপোর্ট বন্ধ থাকে। সেগুলো বেনামি, আর প্রতিটি ফিল্ড আমাদের ডকুমেন্টেশনে তালিকাভুক্ত।
আমাদের কোড থেকে আপনার ব্রাউজারে
- বিল্ড যা কিছু ব্যবহার করে, সবই একটি নির্দিষ্ট ভার্সনে বাঁধা এবং তার ফিঙ্গারপ্রিন্ট দিয়ে যাচাই করা: GitHub actions commit দিয়ে, কন্টেইনার ইমেজ digest দিয়ে, ডাউনলোড SHA-256 দিয়ে, npm ও Python প্যাকেজ lockfile দিয়ে।
- 3 দিনের চেয়ে নতুন কোনো রিলিজ ঢোকে না। বেশিরভাগ ক্ষতিকর প্যাকেজ ভার্সন কয়েক দিনের মধ্যেই ধরা পড়ে ও সরিয়ে ফেলা হয়, তাই আমরা আগে সেগুলো ধরা পড়ার সুযোগ দিই। স্বয়ংক্রিয় আপডেট এক সপ্তাহ অপেক্ষা করে, আর গ্রহণ করার আগে প্রতিটি বিল্ড ও পরীক্ষা করা হয়।
- প্যাকেজগুলোকে কখনো ইনস্টল স্ক্রিপ্ট চালাতে দেওয়া হয় না, আর প্রতিটি বিল্ডে npm রেজিস্ট্রির সিগনেচার যাচাই করা হয়।
- শুধু আমাদের স্বয়ংক্রিয় পাইপলাইনই মূল ব্রাঞ্চ থেকে রিলিজ বিল্ড করে। স্টোর ও npm-এর ক্রেডেনশিয়াল একটি সুরক্ষিত পরিবেশে রাখা থাকে, যা শুধু রিলিজ ধাপই ব্যবহার করতে পারে, আর বিল্ড রিপোজিটরির অ্যাক্সেস টোকেন রেখে দেয় না।
প্রতিটি পরিবর্তনে যাচাই
- স্ট্যাটিক বিশ্লেষণ: CodeQL TypeScript, Rust ইঞ্জিন ও বিল্ড ওয়ার্কফ্লো পড়ে; zizmor ওয়ার্কফ্লোগুলো অডিট করে।
- প্রতিটি পরিবর্তনে এবং প্রতি সপ্তাহে ওয়েবসাইটের ডায়নামিক স্ক্যান (OWASP ZAP)।
- পরিচিত দুর্বলতাসহ কোনো প্যাকেজ যোগ করা পরিবর্তন আটকে দেওয়া হয়, আর Dependabot সতর্কতা প্রতিটি lockfile নজরে রাখে।
- push সুরক্ষাসহ সিক্রেট স্ক্যানিং: পাসওয়ার্ড বা কী থাকা যেকোনো commit GitHub প্রত্যাখ্যান করে।
- কঠোরভাবে টাইপ করা কোড (TypeScript ও Python) এবং প্রতিটি রিলিজের আগে Chrome ও Firefox-এ স্বয়ংক্রিয় পরীক্ষা।
কোনো সমস্যা পেয়েছেন?
অনুগ্রহ করে আমাদের গোপনে জানান: GitHub-এ একটি দুর্বলতা রিপোর্ট করুন। এতে প্রকাশ্যে আসার আগেই এটি ঠিক করা যায়।
এই পেজের সবকিছুই যাচাই করা যায়: কোড, বিল্ড পাইপলাইন আর নিরাপত্তা যাচাই, সবই ওপেন সোর্স। রিলিজ কীভাবে বিল্ড ও যাচাই করা হয়