zlib-rs
জেলিব লাইব্রেরি, জিন-লুপ গেইলি এবং মার্ক অ্যাডলার দ্বারা বিকাশিত, একটি অপরিহার্য উপাদান যেহেতু এটি বিভিন্ন ধরনের অ্যাপ্লিকেশনে ব্যবহৃত হয় জিপ, জিজিপ এবং পিএনজির মতো ফরম্যাটে ফাইলের সংকোচনের উপর দৃষ্টি নিবদ্ধ করে এর দক্ষতা এবং বহুমুখিতা কারণে। এই লাইব্রেরি 1995 সাল থেকে উপস্থিত রয়েছে এবং এর ব্যাপক ব্যবহারের ফলে, এটি একাধিক মেমরি নিরাপত্তা দুর্বলতার লক্ষ্যবস্তুও হয়েছে।
zlib এর মূল হল DEFLATE কম্প্রেশন অ্যালগরিদম, যা LZ77 অ্যালগরিদমের ক্ষতিহীন ডেটা কম্প্রেশন কৌশলগুলিকে একটি হাফম্যান ট্রি স্ট্রাকচারের সাথে একত্রিত করে উল্লেখযোগ্য কম্প্রেশন রেট অর্জন করতে। কৌশলগুলির এই সংমিশ্রণটি zlib কে ডেটা কম্প্রেস এবং ডিকম্প্রেস করার ক্ষেত্রে অত্যন্ত দক্ষ করে তোলে, এটি বিশেষ করে এমন অ্যাপ্লিকেশনগুলিতে কার্যকর করে যেখানে স্টোরেজ স্পেস বা ব্যান্ডউইথ সীমিত।
ফাইল কম্প্রেশন ছাড়াও, zlib এটি ব্যান্ডউইথ লোড কমাতে নেটওয়ার্কগুলিতে সংকুচিত ডেটা স্থানান্তর করতেও ব্যবহৃত হয়, ফাইল স্টোরেজ এবং প্রসেসিং অ্যাপ্লিকেশনের পাশাপাশি অডিও এবং ভিডিও ডেটা সংকোচনের জন্য মাল্টিমিডিয়া অ্যাপ্লিকেশনগুলিতে।
সময়ের সাথে সাথে, zlib কিছু দুর্বলতার সম্মুখীন হয়েছে যা সমাধান করা হয়েছে zlib-এর পরবর্তী সংস্করণগুলিতে, যেমন উপরে উল্লিখিত CVE-2005-1849, CVE-2016-9840, CVE-2016-9841 এবং CVE-2016-9842 (শুধুমাত্র zlib থেকে পরিচিত কিছু উল্লেখ করার জন্য), যেগুলিকে কাজে লাগানো যেতে পারে আক্রমণকারীদের দ্বারা পরিষেবা অস্বীকার করা (DoS) বা এমনকি নির্বিচারে কোড চালানোর জন্য এবং C/C++ এ লেখা কম্প্রেশন লাইব্রেরির জন্য সাধারণ মেমরি নিরাপত্তা ত্রুটির কারণে, zlib একটি প্রধান লক্ষ্য রয়ে গেছে।
যাতে এসব সমস্যা সমাধান করা যায়, zlib এর প্রকৃতি এবং সুবিধা বাদ না দিয়ে, আইএসআরজি (লেটস এনক্রিপ্ট প্রকল্পের পিছনে সংস্থা এবং ইন্টারনেট নিরাপত্তা উন্নত করার জন্য নিবেদিত) সম্প্রতি একটি নতুন প্রকল্প চালু করার ঘোষণা দিয়েছে যার উদ্দেশ্য হল রাস্ট প্রোগ্রামিং ভাষায় zlib-এর একটি অ্যানালগ তৈরি করা।
আমরা 2023 সালের ডিসেম্বরে zlib-ng-এর উপর ভিত্তি করে প্রাথমিক বাস্তবায়নের জন্য Tweede Golf নিয়োগ করেছি, মেমরি নিরাপত্তা প্রবর্তন করার সময় চমৎকার পারফরম্যান্স বজায় রাখার উপর মনোযোগ দিয়ে।
পরবর্তী কি
আমরা বর্তমানে উত্পাদনের জন্য প্রাথমিক বাস্তবায়ন প্রস্তুত করার জন্য প্রয়োজনীয় কাজটি সম্পূর্ণ করার জন্য তহবিল চাইছি।
নতুন বিকল্প বলা হয় "zlib-rs" এবং এই হিসাবে উপস্থাপন করা হয় মরিচা লেখা একটি zlib সমাধান মেমরি ত্রুটি এবং দুর্বলতাগুলির সাথে সম্পর্কিত সুরক্ষা সমস্যাগুলি মোকাবেলার প্রাথমিক লক্ষ্যের সাথে যা সাধারণত C/C++ এ লেখা কম্প্রেশন লাইব্রেরিতে উপস্থিত থাকে।
zlib-rs এর বিকাশ প্রতিক্রিয়ায় উদ্ভূত হয় মাইক্রোসফ্ট এবং গুগলের পরিসংখ্যান যা প্রায় ইঙ্গিত করে 70% দুর্বলতা অনিরাপদ মেমরি ব্যবস্থাপনার কারণে। একটি প্রোগ্রামিং ভাষা হিসাবে মরিচা ব্যবহার করে, এটি এই দুর্বলতার ঝুঁকি উল্লেখযোগ্যভাবে হ্রাস করবে বলে আশা করা হচ্ছে, যেমন মুক্ত মেমরি এলাকায় অ্যাক্সেস বা বাফার ওভারফ্লো।
প্রকল্পটি zlib-rs-এ zlib ফাইল ফরম্যাটের একটি মরিচা বাস্তবায়ন রয়েছে যা zlib API-এর সাথে সামঞ্জস্যপূর্ণ এবং সংগ্রহস্থল বর্তমানে দুটি বাস্তবায়নে কাজ করছে:
- zlib-rs, একটি সুরক্ষিত মরিচা API সহ একটি zlib-ভিত্তিক মরিচা বাস্তবায়ন (বর্তমানে অস্থির বলে বিবেচিত, তবে শীঘ্রই বাস্তবায়ন স্থিতিশীল হবে বলে আশা করা হচ্ছে)।
- libz-rs-sys, zlib-rs এর জন্য একটি C API একটি C API। API ব্যাপকভাবে zlib-sys এবং zlib-ng-sys-এর সমতুল্য, কিন্তু বর্তমানে ফাংশনের gz* পরিবার প্রদান করে না। জং এর দৃষ্টিকোণ থেকে, এই API খুব ergonomic নয়, তাই flat2 এর সাথে কাজ করার জন্য আপাতত সুপারিশ করা হয়।
বর্তমান উন্নয়নে কাজ সম্পর্কে, এটি উল্লেখ করা হয়েছে যে মরিচায় একটি অ্যানালগ অফার করা অন্যদের দৃষ্টি আকর্ষণ করতে পারে এবং তারা কাজে যোগ দিতে পারে, যেহেতু সুরক্ষা এবং সাধারণ ত্রুটি প্রতিরোধের উপর দৃষ্টি নিবদ্ধ করে বিকল্প প্রস্তাব করা কিছু বছরের মধ্যে করতে পারে। কাজ এবং উন্নয়ন zlib এর জন্য একটি স্বচ্ছ প্রতিস্থাপন প্রদান করে।
পরিশেষে, এটি উল্লেখ করার মতো যে zlib-rs কাজটি বর্তমানে GitHub-এ নিম্নলিখিত সংগ্রহস্থলে প্রকাশিত হয়েছে এবং কোডটি Zlib লাইসেন্সের অধীনে বিতরণ করা হয়েছে। আপনি এটি সম্পর্কে আরো পরীক্ষা করতে পারেন en নিম্নলিখিত লিঙ্ক।