বিশ্বস্ত একটি নিরাপদ অপারেটিং সিস্টেম (OS) যা Android এর জন্য একটি বিশ্বস্ত এক্সিকিউশন এনভায়রনমেন্ট (TEE) প্রদান করে। ট্রাস্টি ওএস অ্যান্ড্রয়েড অপারেটিং সিস্টেমের মতো একই প্রসেসরে চলে, তবে হার্ডওয়্যার এবং সফ্টওয়্যার উভয়ের মাধ্যমেই ট্রাস্টি সিস্টেমের বাকি অংশ থেকে বিচ্ছিন্ন। বিশ্বস্ত এবং অ্যান্ড্রয়েড একে অপরের সমান্তরালভাবে চলে। ট্রাস্টির একটি ডিভাইসের প্রধান প্রসেসর এবং মেমরির সম্পূর্ণ শক্তির অ্যাক্সেস আছে কিন্তু সম্পূর্ণ বিচ্ছিন্ন। ট্রাস্টির বিচ্ছিন্নতা এটিকে ব্যবহারকারীর দ্বারা ইনস্টল করা দূষিত অ্যাপ এবং Android-এ আবিষ্কৃত হতে পারে এমন সম্ভাব্য দুর্বলতা থেকে রক্ষা করে।
বিশ্বস্ত ARM এবং Intel প্রসেসরের সাথে সামঞ্জস্যপূর্ণ। ARM সিস্টেমে, Trusty মূল প্রসেসর ভার্চুয়ালাইজ করতে এবং একটি নিরাপদ বিশ্বস্ত কার্যকরী পরিবেশ তৈরি করতে ARM এর Trustzone™ ব্যবহার করে। Intel এর ভার্চুয়ালাইজেশন প্রযুক্তি ব্যবহার করে Intel x86 প্ল্যাটফর্মেও অনুরূপ সমর্থন পাওয়া যায়।
বিশ্বস্ততা নিয়ে গঠিত:
- লিটল কার্নেল থেকে প্রাপ্ত একটি ছোট ওএস কার্নেল
- নিরাপদ পরিবেশ এবং অ্যান্ড্রয়েডের মধ্যে ডেটা স্থানান্তর করার জন্য একটি লিনাক্স কার্নেল ড্রাইভার
- কার্নেল ড্রাইভারের মাধ্যমে বিশ্বস্ত অ্যাপ্লিকেশনগুলির সাথে যোগাযোগ করার জন্য একটি অ্যান্ড্রয়েড ইউজারস্পেস লাইব্রেরি (অর্থাৎ, নিরাপদ কাজ/পরিষেবা)
দ্রষ্টব্য: বিশ্বস্ত এবং বিশ্বস্ত API পরিবর্তন সাপেক্ষে। বিশ্বস্ত API সম্পর্কে তথ্যের জন্য, API রেফারেন্স দেখুন।
কেন বিশ্বস্ত?
অন্যান্য TEE অপারেটিং সিস্টেমগুলি ঐতিহ্যগতভাবে তৃতীয় পক্ষের বিক্রেতাদের দ্বারা বাইনারি ব্লব হিসাবে সরবরাহ করা হয় বা অভ্যন্তরীণভাবে বিকাশ করা হয়। অভ্যন্তরীণ TEE সিস্টেম তৈরি করা বা তৃতীয় পক্ষের কাছ থেকে TEE লাইসেন্স করা সিস্টেম-অন-চিপ (SoC) বিক্রেতা এবং OEM-এর কাছে ব্যয়বহুল হতে পারে। অনির্ভরযোগ্য থার্ড-পার্টি সিস্টেমের সাথে একত্রিত আর্থিক খরচ Android এর জন্য একটি অস্থির ইকোসিস্টেম তৈরি করে। বিশ্বস্ত এক্সিকিউশন এনভায়রনমেন্টের জন্য একটি নির্ভরযোগ্য এবং বিনামূল্যের ওপেন সোর্স বিকল্প হিসেবে ট্রাস্টি এর অংশীদারদের প্রদান করা হচ্ছে। বিশ্বস্ত স্বচ্ছতার একটি স্তর অফার করে যা বন্ধ উত্স সিস্টেমের সাথে সম্ভব নয়।
Android বিভিন্ন TEE বাস্তবায়ন সমর্থন করে তাই আপনি ট্রাস্টি ব্যবহারে সীমাবদ্ধ নন। প্রতিটি TEE OS এর বিশ্বস্ত অ্যাপ্লিকেশন স্থাপনের নিজস্ব অনন্য উপায় রয়েছে। এই ফ্র্যাগমেন্টেশন বিশ্বস্ত অ্যাপ্লিকেশন ডেভেলপারদের জন্য একটি সমস্যা হতে পারে যাতে তাদের অ্যাপগুলি প্রতিটি Android ডিভাইসে কাজ করে তা নিশ্চিত করার চেষ্টা করে। ট্রাস্টিকে একটি স্ট্যান্ডার্ড হিসাবে ব্যবহার করা অ্যাপ্লিকেশন বিকাশকারীদেরকে একাধিক TEE সিস্টেমের বিভক্তকরণের জন্য অ্যাকাউন্টিং ছাড়াই সহজেই অ্যাপ্লিকেশন তৈরি করতে এবং স্থাপন করতে সহায়তা করে। বিশ্বস্ত TEE বিকাশকারী এবং অংশীদারদের স্বচ্ছতা, সহযোগিতা, কোডের পরিদর্শনযোগ্যতা এবং ডিবাগিংয়ের সহজতা প্রদান করে। বিশ্বস্ত অ্যাপ্লিকেশন বিকাশকারীরা নিরাপত্তা দুর্বলতা প্রবর্তনের ঝুঁকি কমাতে সাধারণ সরঞ্জাম এবং API-এর চারপাশে একত্রিত হতে পারে। এই বিকাশকারীদের আত্মবিশ্বাস থাকবে যে তারা একটি অ্যাপ্লিকেশন বিকাশ করতে পারে এবং এটিকে আরও বিকাশ ছাড়াই একাধিক ডিভাইসে পুনরায় ব্যবহার করতে পারে।
অ্যাপ্লিকেশন এবং পরিষেবা
একটি বিশ্বস্ত অ্যাপ্লিকেশন বাইনারি ফাইল (এক্সিকিউটেবল এবং রিসোর্স ফাইল), একটি বাইনারি ম্যানিফেস্ট এবং একটি ক্রিপ্টোগ্রাফিক স্বাক্ষর হিসাবে সংজ্ঞায়িত করা হয়। রানটাইমে, বিশ্বস্ত অ্যাপ্লিকেশনগুলি বিশ্বস্ত কার্নেলের অধীনে সুবিধাবিহীন মোডে বিচ্ছিন্ন প্রক্রিয়া হিসাবে চলে। TEE প্রসেসরের মেমরি ম্যানেজমেন্ট ইউনিটের ক্ষমতা ব্যবহার করে প্রতিটি প্রক্রিয়া নিজস্ব ভার্চুয়াল মেমরি স্যান্ডবক্সে চলে। হার্ডওয়্যারের বিল্ড সঠিক প্রক্রিয়াটিকে পরিবর্তন করে যা Trusty অনুসরণ করে, কিন্তু উদাহরণস্বরূপ, কার্নেল একটি নিরাপদ টাইমার টিক দ্বারা চালিত একটি অগ্রাধিকার-ভিত্তিক, রাউন্ড-রবিন শিডিউলার ব্যবহার করে এই প্রক্রিয়াগুলি নির্ধারণ করে। সমস্ত বিশ্বস্ত অ্যাপ্লিকেশন একই অগ্রাধিকার শেয়ার করে।
তৃতীয় পক্ষের বিশ্বস্ত অ্যাপ্লিকেশন
বর্তমানে সমস্ত বিশ্বস্ত অ্যাপ্লিকেশন একটি একক পক্ষ দ্বারা তৈরি করা হয় এবং বিশ্বস্ত কার্নেল চিত্রের সাথে প্যাকেজ করা হয়। বুট করার সময় পুরো ছবিটি বুটলোডার দ্বারা স্বাক্ষরিত এবং যাচাই করা হয়। থার্ড-পার্টি অ্যাপ্লিকেশন ডেভেলপমেন্ট এই সময়ে ট্রাস্টিতে সমর্থিত নয়। যদিও ট্রাস্টি নতুন অ্যাপ্লিকেশনগুলির বিকাশকে সক্ষম করে, তবে তা করতে হবে চরম যত্ন সহকারে; প্রতিটি নতুন অ্যাপ্লিকেশন সিস্টেমের বিশ্বস্ত কম্পিউটিং বেস (TCB) এর এলাকা বৃদ্ধি করে। বিশ্বস্ত অ্যাপ্লিকেশনগুলি ডিভাইসের গোপনীয়তাগুলি অ্যাক্সেস করতে পারে এবং সেগুলি ব্যবহার করে গণনা বা ডেটা রূপান্তর করতে পারে৷ TEE তে চলমান নতুন অ্যাপ্লিকেশন বিকাশ করার ক্ষমতা উদ্ভাবনের জন্য অনেক সম্ভাবনা উন্মুক্ত করে। যাইহোক, একটি TEE-এর খুব সংজ্ঞার কারণে, এই অ্যাপ্লিকেশনগুলি কোনো প্রকার বিশ্বাস সংযুক্ত না করে বিতরণ করা যাবে না। সাধারণত এটি একটি ডিজিটাল স্বাক্ষরের আকারে আসে যে পণ্যটির ব্যবহারকারীর দ্বারা বিশ্বস্ত একটি সত্তা যার উপর অ্যাপ্লিকেশনটি চলে।
ব্যবহার এবং উদাহরণ
বিশ্বস্ত এক্সিকিউশন এনভায়রনমেন্ট দ্রুত মোবাইল ডিভাইসে একটি স্ট্যান্ডার্ড হয়ে উঠছে। ব্যবহারকারীরা তাদের দৈনন্দিন জীবনের জন্য তাদের মোবাইল ডিভাইসের উপর নির্ভর করছে এবং নিরাপত্তার প্রয়োজনীয়তা সবসময়ই বাড়ছে। একটি TEE সহ মোবাইল ডিভাইসগুলি একটি TEE ছাড়া ডিভাইসগুলির চেয়ে বেশি সুরক্ষিত৷
একটি TEE বাস্তবায়ন সহ ডিভাইসগুলিতে, প্রধান প্রসেসরকে প্রায়শই "অবিশ্বস্ত" হিসাবে উল্লেখ করা হয়, যার অর্থ এটি RAM, হার্ডওয়্যার রেজিস্টার এবং রাইট-ওয়ান ফিউজের নির্দিষ্ট কিছু জায়গায় অ্যাক্সেস করতে পারে না যেখানে গোপন ডেটা (যেমন, ডিভাইস-নির্দিষ্ট ক্রিপ্টোগ্রাফিক কী) থাকে। প্রস্তুতকারকের দ্বারা সংরক্ষিত। প্রধান প্রসেসরে চলমান সফ্টওয়্যার টিইই প্রসেসরের কাছে গোপন ডেটা ব্যবহারের প্রয়োজন হয় এমন কোনও অপারেশন অর্পণ করে।
অ্যান্ড্রয়েড ইকোসিস্টেমে এর সর্বাধিক পরিচিত উদাহরণ হল সুরক্ষিত সামগ্রীর জন্য ডিআরএম কাঠামো । TEE প্রসেসরে চলমান সফ্টওয়্যার সুরক্ষিত সামগ্রী ডিক্রিপ্ট করার জন্য প্রয়োজনীয় ডিভাইস-নির্দিষ্ট কীগুলি অ্যাক্সেস করতে পারে। প্রধান প্রসেসর শুধুমাত্র এনক্রিপ্ট করা বিষয়বস্তু দেখে, সফ্টওয়্যার-ভিত্তিক আক্রমণের বিরুদ্ধে উচ্চ স্তরের নিরাপত্তা এবং সুরক্ষা প্রদান করে।
মোবাইল পেমেন্ট, সুরক্ষিত ব্যাঙ্কিং, মাল্টি-ফ্যাক্টর প্রমাণীকরণ, ডিভাইস রিসেট সুরক্ষা, রিপ্লে-সুরক্ষিত অবিরাম স্টোরেজ, সুরক্ষিত পিন এবং ফিঙ্গারপ্রিন্ট প্রক্রিয়াকরণ এবং এমনকি ম্যালওয়্যার সনাক্তকরণের মতো টিইই-এর আরও অনেক ব্যবহার রয়েছে।