আপলোড করার আগে সুরক্ষা শুরু হয়
স্থানীয় ভল্টগুলি Revault অ্যাকাউন্ট ছাড়াই স্থানীয়ভাবে কাজ করে। ফাইলের বিষয়বস্তু, ফাইলের নাম, MIME প্রকার, থাম্বনেইল, ভল্টের নাম, ফোল্ডার, ট্যাগ এবং পছন্দগুলি ডিভাইসে এনক্রিপ্ট করা হয়েছে। স্থানীয় ব্যবহার Revault এ ভল্ট ফাইল আপলোড করে না। নেটিভ ক্লাউড সিঙ্ক এবং ভাগ করা ঐচ্ছিক, পৃথক অপারেশন।
ভল্ট তৈরি বা আনলক করার সময় মডেলটি একটি বিশ্বস্ত অপারেটিং সিস্টেম, ইনস্টল করা অ্যাপ এবং ক্রিপ্টোগ্রাফিক র্যান্ডম সোর্স ধরে নেয়। শুধুমাত্র এনক্রিপ্ট করা ফাইল এবং কী র্যাপার সহ কেউ প্রয়োজনীয় গোপনীয়তা ছাড়া সেগুলি ডিক্রিপ্ট করতে পারে না। একটি ভল্ট খোলা থাকা অবস্থায় ম্যালওয়্যার বা আপস করা অ্যাপটি প্লেইনটেক্সট এবং কী ক্যাপচার করতে পারে।
প্রতিটি ভল্টের জন্য স্বাধীন কী
প্রতিটি ভল্ট একটি র্যান্ডম 256-বিট AES মাস্টার কী দিয়ে শুরু হয়, যা অপারেটিং সিস্টেমের ক্রিপ্টোগ্রাফিক র্যান্ডম উত্স ব্যবহার করে তৈরি করা হয়। অঙ্গভঙ্গি সরাসরি এই কী নির্ধারণ করে না। প্রতিটি ভল্টে স্বাধীন মাস্টার কী উপাদান থাকে, তাই একটি ভল্ট কী প্রকাশ করলে অন্যটি পাওয়া যায় না।
একটি ডিভাইস প্যাটার্ন একটি র্যান্ডম 256-বিট ডিভাইস গোপনের সাথে তার অর্ডারকৃত ডট সিকোয়েন্সকে একত্রিত করে। ফলস্বরূপ ইনপুটটি NFKC দিয়ে স্বাভাবিক করা হয় এবং একটি তাজা 128-বিট লবণ এবং 600,000 পুনরাবৃত্তি সহ PBKDF2-HMAC-SHA-256-এ পাঠানো হয়। প্রাপ্ত 256-বিট কী AES-256-GCM ব্যবহার করে মাস্টার কীকে মোড়ানো হয়। অ্যাপটি প্লেইনটেক্সট প্যাটার্ন বা আলাদা প্যাটার্ন ফিঙ্গারপ্রিন্ট সেভ করে না।
প্যাটার্ন 6 থেকে 25 স্বতন্ত্র বিন্দু সহ একটি 5 × 5 গ্রিড ব্যবহার করে এবং একই ডিভাইসে নথিভুক্ত ভল্ট জুড়ে অনন্য হতে হবে। একটি মিলিত প্যাটার্ন শুধুমাত্র তার খিলান খোলে; অন্যান্য ভল্টের নাম এবং বিষয়বস্তু লুকানো থাকে। অনুমানযোগ্য অঙ্গভঙ্গিগুলি অনুমান করা এখনও সহজ। যে ব্যক্তি একটি ডিভাইসের গোপনীয়তা এবং এর এনক্রিপ্ট করা র্যাপার উভয়ই পান তিনি অফলাইন প্যাটার্ন অনুমান করার চেষ্টা করতে পারেন৷
একটি নেটিভ ভল্ট খোলার জন্য এর স্থানীয় প্যাটার্ন বা একটি সুস্পষ্ট পুনরুদ্ধার প্রবাহ প্রয়োজন, Revault অ্যাকাউন্ট বা পাসকি নয়। ঐচ্ছিক ক্লাউড সিঙ্ক প্ল্যাটফর্মের Apple বা Google অনুমোদন ব্যবহার করে এবং স্টোর কেনাকাটা প্ল্যাটফর্ম বিলিং অ্যাকাউন্ট ব্যবহার করে। ক্লাউড অনুমোদন বা ক্রয় কোনোটিই ভল্ট ডিক্রিপশন কী সরবরাহ করে না।
| উদ্দেশ্য | নির্মাণ |
|---|---|
| ভল্ট মাস্টার কী | র্যান্ডম 256-বিট AES কী |
| কী মোড়ানো | PBKDF2-HMAC-SHA-256 · 600,000 পুনরাবৃত্তি · 128-বিট লবণ → AES-256-GCM |
| মেটাডেটা এবং থাম্বনেল | AES-256-GCM · এলোমেলো 96-বিট নন্স · 128-বিট প্রমাণীকরণ ট্যাগ |
| ফাইল কী ডেরিভেশন | HKDF-SHA-256 · প্রতি-ফাইল র্যান্ডম 256-বিট লবণ · 256-বিট AES আউটপুট |
| পুনরুদ্ধারের গোপনীয়তা | উত্পন্ন: 18 র্যান্ডম শব্দ (198 বিট); কাস্টম: কমপক্ষে 6টি স্বতন্ত্র শব্দ এবং 32-512 অক্ষর |
শুধুমাত্র ডিভাইস কী সুরক্ষা
iOS-এ, ডিভাইস লকটি WhenUnlockedThisDeviceOnly সুরক্ষা ব্যবহার করে একটি নন-সিঙ্ক্রোনাইজিং Keychain আইটেম হিসাবে সংরক্ষণ করা হয়। ডিভাইসটি আনলক থাকা অবস্থায়ই এটি অ্যাক্সেসযোগ্য এবং Keychain সিঙ্কের মাধ্যমে স্থানান্তরিত হয় না। সঞ্চিত গোপন একটি Secure Enclave কী নয়।
Android-এ, ডিভাইস লকটি একটি অ-রপ্তানিযোগ্য Android Keystore কী এর অধীনে AES-256-GCM ব্যবহার করে এনক্রিপ্ট করা হয় যার জন্য একটি আনলক করা ডিভাইসের প্রয়োজন হয়। এনক্রিপ্ট করা লক ফাইল অ্যাপের নো-ব্যাকআপ ডিরেক্টরিতে থাকে। Keystore হার্ডওয়্যার ব্যাকিং ডিভাইসের উপর নির্ভর করে; অ্যাপটি প্রতিশ্রুতি দেয় না যে প্রতিটি ডিভাইস হার্ডওয়্যার-ব্যাকড কী ব্যবহার করে।
স্থানীয় আনলক গোপনীয়তাগুলি নেটিভ ক্লাউড সিঙ্ক এবং পোর্টেবল ভল্ট ব্যাকআপ থেকে বাদ দেওয়া হয়েছে৷ একটি Apple বা Google অ্যাকাউন্টের দখল সেই গোপনীয়তাগুলিকে পুনরায় তৈরি করে না বা স্বয়ংক্রিয়ভাবে একটি পুনরুদ্ধার করা ভল্ট আনলক করে না। একটি নতুন ডিভাইসকে অবশ্যই স্বাধীন পুনরুদ্ধারের গোপনীয়তা যাচাই করতে হবে এবং তার নিজস্ব প্যাটার্ন নথিভুক্ত করতে হবে।
গোপনীয়তা এবং ট্যাম্পার সনাক্তকরণ
ভল্ট মেটাডেটা, ফাইল মেটাডেটা, থাম্বনেইল এবং মোড়ানো কী 128-বিট প্রমাণীকরণ ট্যাগের সাথে AES-256-GCM ব্যবহার করে। প্রতিটি স্বাধীন এনক্রিপশন একটি তাজা র্যান্ডম 96-বিট নন্স ব্যবহার করে। ডিক্রিপশন প্লেইনটেক্সট ফেরত দেওয়ার আগে ট্যাগ যাচাই করে; পরিবর্তিত সাইফারটেক্সট বা একটি ভুল কী প্রমাণীকরণ ব্যর্থ করে দেয়।
অতিরিক্ত প্রমাণীকৃত ডেটা প্রতিটি এনক্রিপ্ট করা বস্তুকে তার বিন্যাস সংস্করণ, ভল্ট শনাক্তকারী, বস্তু শনাক্তকারী এবং উদ্দেশ্যের সাথে আবদ্ধ করে। উদাহরণস্বরূপ, একটি থাম্বনেইল এবং ফাইল মেটাডেটা রেকর্ড বিভিন্ন প্রসঙ্গ ব্যবহার করে। একটি এনক্রিপ্ট করা বস্তুকে একটি ভিন্ন ভল্টে সরানো বা অন্য বস্তুর জন্য প্রতিস্থাপন করা প্রমাণীকৃত প্রসঙ্গ পরিবর্তন করে এবং যাচাইকরণ ব্যর্থ হয়।
প্রমাণীকৃত প্রসঙ্গ শনাক্তকারীকে লুকিয়ে রাখে না এবং তাজাতা প্রমাণ করে না। একটি বৈধ পুরানো রেকর্ডের এখনও একটি বৈধ ট্যাগ থাকতে পারে৷ অ্যাপ্লিকেশান রিভিশন চেক সাধারণ সমসাময়িক আপডেটগুলি সনাক্ত করে, কিন্তু এটি একটি সম্পূর্ণ পুরানো অবস্থার রিপ্লে করার ক্ষতিকারক পরিষেবার বিরুদ্ধে একটি ক্রিপ্টোগ্রাফিক প্রতিরক্ষা নয়।
বড় ফাইল প্রমাণীকৃত সেগমেন্ট ব্যবহার করে
নেটিভ ফাইল এনক্রিপশন টিঙ্ক দ্বারা বর্ণিত AES-256-GCM-HKDF-SHA-256 স্ট্রিমিং নির্মাণ ব্যবহার করে। iOS AES-GCM এবং HKDF এর জন্য CryptoKit ব্যবহার করে; Android প্ল্যাটফর্ম ক্রিপ্টোগ্রাফিক আদিম ব্যবহার করে। প্রতিটি নতুন স্ট্রীমের একটি 40-বাইট শিরোনাম রয়েছে যার দৈর্ঘ্য চিহ্নিতকারী, একটি এলোমেলো 32-বাইট লবণ এবং একটি র্যান্ডম সাত-বাইট ননস উপসর্গ রয়েছে।
HKDF ভল্ট মাস্টার কী থেকে একটি পৃথক ফাইল এনক্রিপশন কী প্রাপ্ত করে। এর প্রেক্ষাপটে ভল্ট এবং ফাইল শনাক্তকারী, প্লেইনটেক্সট বাইট দৈর্ঘ্য এবং কনফিগার করা সেগমেন্টের আকার অন্তর্ভুক্ত রয়েছে। প্রতিটি সেগমেন্টের 12-বাইট ননস এলোমেলো উপসর্গ, একটি চার-বাইট সেগমেন্ট কাউন্টার এবং একটি চূড়ান্ত-সেগমেন্ট পতাকাকে একত্রিত করে। সেগমেন্ট 128-বিট GCM ট্যাগ বহন করে।
নেটিভ অ্যাপগুলি আনুমানিক 5 MiB এর আবদ্ধ অংশে ফাইলগুলি প্রক্রিয়া করে। সেগমেন্ট কাউন্টার, চূড়ান্ত-সেগমেন্ট পতাকা এবং প্রত্যাশিত বাইট দৈর্ঘ্য পরিবর্তিত, পুনর্বিন্যাস করা বা কাটা অংশ সনাক্ত করে। প্রতিটি সেগমেন্ট ব্যবহারের আগে প্রমাণীকরণ করা হয়, এবং একটি ব্যক্তিগত পূর্বরূপ প্রকাশ করা হয় শুধুমাত্র তার ফাইল ডিক্রিপ্ট করা শেষ হওয়ার পরে। অসম্পূর্ণ আউটপুট ব্যর্থ হলে বাতিল করা হয়; পুনরায় চেষ্টা করে বিদ্যমান এনক্রিপ্ট করা বাইট স্থানান্তর করে।
নির্মাণ অনুসরণ করে Tink AES-GCM-HKDF স্ট্রিমিং স্পেসিফিকেশন. Revault এর বাস্তবায়ন এবং সেগমেন্ট কনফিগারেশন টিঙ্ক দ্বারা স্বাধীনভাবে নিরীক্ষিত বা প্রত্যয়িত হয়নি।
ব্যক্তিগত সঞ্চয়স্থান, আমদানি এবং পূর্বরূপ
এনক্রিপ্ট করা ভল্ট ফাইলগুলি ব্যক্তিগত অ্যাপ স্টোরেজে থাকে। ফাইলের নাম, MIME প্রকার, ফোল্ডার, ট্যাগ, ফেভারিট এবং থাম্বনেল হল প্রমাণীকৃত এনক্রিপ্ট করা রেকর্ড। অনুসন্ধান এবং ট্যাগ ফিল্টারিং আনলক করার পরে সক্রিয় ভল্টের ডিক্রিপ্ট করা মেটাডেটাতে কাজ করে; কোন প্লেইনটেক্সট সার্ভার অনুসন্ধান সূচক নেই.
ছবি, ভিডিও এবং ফাইল আমদানি এনক্রিপশনের আগে ব্যক্তিগত অস্থায়ী স্টেজিং ব্যবহার করতে পারে। ইন-ভল্ট ক্যামেরা ক্যাপচার স্বয়ংক্রিয়ভাবে গ্যালারিতে একটি অনুলিপি সংরক্ষণ করে না। ফটো বা অন্য প্রদানকারী থেকে আমদানি করা সেই প্রদানকারীর আসল অক্ষত রেখে যায়। ঐচ্ছিক মিডিয়া অপ্টিমাইজেশন এনক্রিপশনের আগে স্থানীয়ভাবে ঘটে এবং শুধুমাত্র নতুন আমদানি করা মিডিয়া পরিবর্তন করে।
প্রাইভেট প্রিভিউগুলি খোলা থাকার সময় অস্থায়ী প্লেইনটেক্সট প্রয়োজন। অ্যাপগুলি বন্ধ, লক এবং পরবর্তী স্টার্টআপে তাদের অস্থায়ী পূর্বরূপগুলি সরিয়ে দেয়; iOS ডিক্রিপ্ট করা প্রিভিউ ফাইলগুলিতে সম্পূর্ণ ফাইল সুরক্ষা প্রয়োগ করে। অন্য অ্যাপে স্পষ্টভাবে রপ্তানি করা ফাইলগুলি ভল্টের সুরক্ষা ছেড়ে যায়। অস্থায়ী-ফাইল মুছে ফেলা ফরেনসিক মুছে ফেলার গ্যারান্টি নয়।
ঐচ্ছিক নেটিভ ক্লাউড সিঙ্ক
সিঙ্ক ডিফল্টরূপে বন্ধ থাকে এবং প্রতিটি ডিভাইসে প্রতিটি ভল্টের জন্য আলাদাভাবে সক্ষম হয়৷ iOS ব্যবহারকারীর ব্যক্তিগত CloudKit ডাটাবেসে iCloud এনক্রিপ্ট করা রেকর্ড এবং ফাইল সেগমেন্ট সঞ্চয় করে। Android Google Drive এর ব্যক্তিগত appDataFolder ব্যবহার করে। পরিবহনের জন্য একটি Revault অ্যাকাউন্টের প্রয়োজন হয় না বা Revault-এর ওয়েব ক্লাউডে নেটিভ সিঙ্ক ডেটা আপলোড করা হয় না।
ক্লাউড এনক্রিপ্ট করা মেটাডেটা, ফাইল সেগমেন্ট এবং কী র্যাপার পায়, প্লেইনটেক্সট ভল্ট মাস্টার কী নয়, স্থানীয় ডিভাইস গোপন বা পুনরুদ্ধারের গোপনীয়তা। একই প্ল্যাটফর্মের অন্য একটি ডিভাইসের নিজস্ব স্থানীয় প্যাটার্ন নথিভুক্ত করার জন্য একই স্থানীয় ক্লাউড অ্যাকাউন্ট এবং ভল্ট পুনরুদ্ধার কী প্রয়োজন। Apple এবং Google অনুমোদন এনক্রিপ্ট করা রেকর্ডগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করে, তাদের ডিক্রিপশন নয়।
সিঙ্ক বন্ধ করা বর্তমান ডিভাইস থেকে সেই ভল্টের জন্য আরও স্থানান্তর বন্ধ করে দেয়; বিদ্যমান এনক্রিপ্ট করা ক্লাউড কপি রয়ে গেছে। সিঙ্ক পরিবর্তন এবং মুছে ফেলা প্রচার করতে পারে, এবং সমসাময়িক সম্পাদনাগুলির জন্য বিরোধ পর্যালোচনার প্রয়োজন হতে পারে। iCloud এবং Google Drive হল আলাদা স্টোর, কোনো স্বয়ংক্রিয় ক্রস-প্ল্যাটফর্ম ব্রিজ নেই। আইফোন এবং Android এর মধ্যে সরানোর জন্য একটি এনক্রিপ্ট করা ফোন স্থানান্তর ব্যবহার করুন।
পুনরুদ্ধার একই কীর দ্বিতীয় পথ
Revault একটি পুনরুদ্ধার বাক্যাংশ তৈরি করে যার মধ্যে 18টি স্বাধীনভাবে নির্বাচিত শব্দ রয়েছে একটি বান্ডেল করা 2,048-শব্দ তালিকা থেকে, যা 198 বিট এলোমেলোতা প্রদান করে। সৃষ্টি কাস্টম বাক্যাংশ বা পুনর্জন্ম প্রদান করে না। শব্দবন্ধটি স্বাধীনভাবে PBKDF2-HMAC-SHA-256 এবং একটি তাজা লবণ ব্যবহার করে একটি মোড়ানো কী প্রাপ্ত করে, তারপর AES-256-GCM দিয়ে ভল্ট মাস্টার কীটি মোড়ানো হয়। শব্দগুচ্ছ এবং এনক্রিপ্ট করা ভল্ট সহ যে কেউ এটিকে ডিক্রিপ্ট করতে পারে৷ বিদ্যমান কাস্টম বাক্যাংশ এবং হেক্সাডেসিমেল পুনরুদ্ধার কীগুলি তাদের আসল ভল্টের সাথে সামঞ্জস্যপূর্ণ থাকে।
পুনরুদ্ধারের গোপনীয়তা সেটআপের সময় দেখানো হয় এবং নেটিভ অ্যাপ স্টোরেজে টিকে থাকে না বা নেটিভ ক্লাউড স্টোরেজে আপলোড করা হয় না। এনক্রিপ্ট করা ফাইল থেকে আলাদা করে রাখুন। অন্য ডিভাইস নথিভুক্ত করার জন্য মূল নেটিভ ক্লাউড অ্যাকাউন্ট থেকে এনক্রিপ্ট করা ভল্ট, বা একটি এনক্রিপ্ট করা ব্যাকআপ, এবং পুনরুদ্ধার কী প্রয়োজন। একটি গোপন ফাইল অনুপস্থিত ডেটা পুনরুদ্ধার করতে পারে না, এবং Revault কোনো প্রদানকারীর হাতে থাকা রিসেট কী নেই।
একটি পোর্টেবল .qvault ব্যাকআপে এনক্রিপ্ট করা কী র্যাপার, একটি প্রমাণীকৃত এনক্রিপ্টেড ইনভেন্টরি এবং এনক্রিপ্ট করা ফাইল সেগমেন্ট থাকে। এটি স্থানীয় ডিভাইস আনলক গোপন বাদ. নতুন শনাক্তকারী, মাস্টার কী, ফাইল কী এবং একটি নতুন ডিভাইস প্যাটার্ন সহ একটি ভল্টে পুনরুদ্ধার করার আগে আমদানি ইনভেন্টরি, মেটাডেটা এবং প্রতিটি সেগমেন্ট যাচাই করে। পুনরুদ্ধারের পরে নতুন পুনরুদ্ধার কী সংরক্ষণ করুন।
নতুন পুনরুদ্ধার বাক্যাংশগুলি কেস সংরক্ষণ করে, NFKC দিয়ে ইউনিকোডকে স্বাভাবিক করে এবং অতিরিক্ত হোয়াইটস্পেস ভেঙে দেয়। লিগ্যাসি হেক্সাডেসিমেল কী সমর্থিত থাকে। আপনি নতুন বাক্যাংশ সংরক্ষণ করার পরে সেটিংসে একটি ভল্টের পুনরুদ্ধার বাক্যাংশ প্রতিস্থাপন করতে পারেন। এটি বর্তমান পুনরুদ্ধারের মোড়ক প্রতিস্থাপন করে; পুরানো ব্যাকআপ এবং ডিভাইসগুলি যেগুলি সিঙ্ক হয়নি সেগুলি এখনও পুরানো মোড়ক ধরে রাখতে পারে৷ একটি প্যাটার্ন বা পুনরুদ্ধার বাক্যাংশ পরিবর্তন করা ভল্ট মাস্টার কী ঘোরানো বা অনুলিপি প্রত্যাহার করে না। যদি মূল উপাদান আপোস করা হয়, ফাইলগুলিকে নতুন কী দিয়ে একটি নতুন ভল্টে সরান৷
এনক্রিপ্ট করা ফোন-টু-ফোন মাইগ্রেশন
ফোন স্থানান্তর তাজা ভল্ট শনাক্তকারী, মাস্টার কী, ফাইল কী এবং স্ট্রিম হেডার সহ একটি পোর্টেবল এনক্রিপ্টেড কপি তৈরি করে। এর স্বাধীন ট্রান্সফার সিক্রেট সোর্স ভল্টটিকে আনলক করতে পারে না এবং সোর্স রিকভারি সিক্রেট এবং ডিভাইস আনলক সিক্রেট অন্তর্ভুক্ত নয়। এনক্রিপ্ট করা প্যাকেজ এবং স্থানান্তর গোপন আলাদাভাবে বিতরণ করা আবশ্যক.
গ্রহনকারী অ্যাপটি প্যাকেজ এবং এর ফাইলের অংশগুলিকে প্রমাণীকরণ করে, তারপর একটি নতুন স্থানীয় প্যাটার্ন এবং পুনরুদ্ধার কী সহ একটি নতুন ভল্টে পুনরুদ্ধার করে৷ এটি iOS এবং Android এর মধ্যে কাজ করে তাদের ক্লাউড অ্যাকাউন্টগুলি ব্রিজ না করে। আসলটি পুরানো ডিভাইসে রয়ে গেছে; পুনরুদ্ধার করা বিষয়বস্তু নিশ্চিত করুন এবং এটি মুছে ফেলার আগে নতুন পুনরুদ্ধার কী সংরক্ষণ করুন।
লকিং এবং সেশন ক্লিনআপ
মোবাইল অ্যাপ্লিকেশানগুলি ব্যাকগ্রাউন্ড করা হলে অবিলম্বে লক হয়ে যায় এবং ডিফল্টরূপে নিষ্ক্রিয়তার 60 সেকেন্ড পরে৷ প্রতিটি ভল্ট 30 সেকেন্ড, 1 মিনিট, 2 মিনিট, 5 মিনিট বা 10 মিনিট নির্বাচন করতে পারে। একটি ভাগ করা ভল্ট 60-সেকেন্ডের ডিফল্ট ব্যবহার করে। প্রস্থান করা প্যাটার্ন স্ক্রিনে ফিরে আসে এবং ডিক্রিপ্ট করা সেশন শেষ করে।
লক করা সেশনের কাজ বাতিল করে, ডিক্রিপ্ট করা মেটাডেটা এবং সার্চ স্টেট সাফ করে, প্রিভিউ বন্ধ করে, অস্থায়ী ফাইলগুলি সরিয়ে দেয় এবং মালিকানাধীন কী বাফারগুলি প্রকাশ করার আগে ওভাররাইট করে। অস্থায়ী ডেরিভেশন কীগুলিও ব্যবহারের পরে সাফ করা হয়। Swift এবং JVM মেমরি ব্যবস্থাপনা, ক্রিপ্টোগ্রাফিক লাইব্রেরি এবং মিডিয়া ডিকোডার কপি তৈরি করতে পারে; প্রতিটি অনুলিপি অবিলম্বে মুছে ফেলার নিশ্চয়তা দেওয়া যায় না।
iOS একটি গোপনীয়তা শিল্ড সহ অ্যাপ-সুইচার স্ন্যাপশট কভার করে। Android স্ক্রিনশট এবং সাম্প্রতিক-অ্যাপ পূর্বরূপ সীমাবদ্ধ করতে সুরক্ষিত-উইন্ডো পতাকা ব্যবহার করে। এই প্ল্যাটফর্ম সুরক্ষাগুলি কাউকে আনলক করা স্ক্রীনের ছবি তুলতে বাধা দেয় না এবং তারা অন্য অ্যাপে আগে রপ্তানি করা ফাইলগুলি প্রত্যাহার করে না।
Revault Cloud
Revault Cloud ক্রস-প্ল্যাটফর্ম সিঙ্কের জন্য একটি ঐচ্ছিক প্রো স্টোরেজ প্রদানকারী। এনক্রিপ্ট করা সেগমেন্ট এবং এনক্রিপ্ট করা ফাইল মেটাডেটা একটি ছদ্মনাম বিলিং ইনস্টলেশনের সাথে সংযুক্ত। পরিষেবাটি স্টোরেজ শনাক্তকারী, আকার, চেকসাম, পুনর্বিবেচনা এবং স্থানান্তর কার্যকলাপ পর্যবেক্ষণ করতে পারে, তবে কোনও মোড়ানো ভল্ট কী বা পুনরুদ্ধার বাক্যাংশ পায় না। একটি পৃথক র্যান্ডম সংযোগ কোড স্টোরেজ অ্যাক্সেস অনুমোদন করে; অন্য ডিভাইস সংযোগ করার জন্যও পুনরুদ্ধার বাক্যাংশ প্রয়োজন। বিদ্যমান ক্লাউড ডেটা প্রো মেয়াদ শেষ হওয়ার পরে পুনরুদ্ধারের জন্য পাঠযোগ্য থাকে।
নেটিভ শেয়ারিং পরিবহন এবং অ্যাক্সেস নিয়ন্ত্রণ
iOS-এ, একটি ব্যক্তিগত, শুধুমাত্র-পঠনযোগ্য CloudKit আমন্ত্রণ এনক্রিপ্ট করা স্ন্যাপশটটিকে ব্যক্তিগত সিঙ্ক জোনের বাইরে, একটি পৃথক ভাগ করে নেওয়ার রেকর্ড অনুক্রমের মধ্যে রাখে। Apple আমন্ত্রণ অ্যাক্সেস নিয়ন্ত্রণ করে; প্রাপকের এখনও আলাদা ডিক্রিপশন গোপন প্রয়োজন। CloudKit আমন্ত্রণগুলি সার্ভারের অ্যাক্সেস-সেশন গণনা, নির্দিষ্ট মেয়াদ বা ধ্বংসের টাইমার প্রয়োগ করে না। মালিক ভবিষ্যতে CloudKit অ্যাক্সেস বন্ধ করতে পারেন।
ক্রস-প্ল্যাটফর্ম শেয়ারগুলি এনক্রিপ্ট করা অংশগুলি Revault-এর শেয়ারিং পরিষেবাতে আপলোড করে। স্বাধীন র্যান্ডম 256-বিট পঠন এবং পরিচালনার ক্ষমতা SHA-256 হ্যাশ হিসাবে সংরক্ষণ করা হয়। ওয়েবসাইট লিঙ্কটি তার খণ্ডে পড়ার ক্ষমতা বহন করে, ডিক্রিপশন গোপন নয়। এটি খোলা একটি ভাগ করা ভল্টের সাথে গভীর-লিঙ্ক করে এবং প্রেরকের গোপনীয়তার জন্য অনুরোধ করে; কোন ব্যক্তিগত প্যাটার্ন বা বিদ্যমান ভল্ট প্রয়োজন হয় না. ব্যক্তিগত খিলান তালাবদ্ধ থাকে।
নিয়ন্ত্রিত সার্ভার শেয়ার প্রেরকের সর্বোচ্চ অ্যাক্সেস সেশন, 30 দিনের মধ্যে নির্দিষ্ট মেয়াদ, প্রত্যাহার এবং ঐচ্ছিক রপ্তানি অনুমতি প্রয়োগ করে। একটি অধিবেশন পারমাণবিকভাবে মঞ্জুর করা হয় এবং শেয়ারের সময়সীমা দ্বারা আবদ্ধ, সর্বাধিক 15 মিনিট স্থায়ী হয়। ডাউনলোড বা ডিক্রিপশন ব্যর্থ হলেও সেশন মঞ্জুর হলে অ্যাক্সেস গণনা করা হয়। দর্শক চলমান অ্যাক্সেস পরীক্ষা করে এবং তার সময়সীমাতে বন্ধ করে দেয়।
SHA-256 চেকসাম স্থানান্তরিত অংশগুলি যাচাই করে, যখন প্রমাণিত এনক্রিপশন তাদের বিষয়বস্তু যাচাই করে। যখন রপ্তানির অনুমতি দেওয়া হয়, তখন দর্শক একটি এনক্রিপ্ট করা .qvault কপি সংরক্ষণ করতে পারে যা শেয়ার গোপনীয়তার সাথে খোলে। রপ্তানি অক্ষম করা সেই অ্যাপ্লিকেশন ক্রিয়াকে সরিয়ে দেয়; এটি ক্রিপ্টোগ্রাফিকভাবে স্ক্রিনশট বা পরিবর্তিত ক্লায়েন্টকে প্লেইনটেক্সট ধরে রাখতে বাধা দিতে পারে না। একটি উৎস ফাইল মুছে ফেলা একটি স্বাধীনভাবে তৈরি শেয়ার প্রত্যাহার করে না।
ঐচ্ছিক ভল্ট কার্যকলাপ
নেটিভ অডিট লগগুলি ডিফল্টরূপে বন্ধ থাকে এবং প্রতিটি ডিভাইসে প্রতি ভল্টে কনফিগার করা হয়। সর্বশেষ 500টি স্থানীয় ইভেন্টগুলি ভল্টের মাস্টার কী এবং একটি উত্সর্গীকৃত প্রমাণীকৃত প্রসঙ্গ দিয়ে এনক্রিপ্ট করা হয়েছে। এগুলি কী, প্যাটার্ন, ফাইল সামগ্রী এবং অন্যান্য ভল্টের ডেটা বাদ দেয়, সিঙ্ক হয় না এবং সাফ বা অক্ষম করা যেতে পারে। তারা টেম্পার-প্রুফ প্রমাণ নয়। ব্যর্থ আনলকগুলি একটি ভল্টে বরাদ্দ করা হয় না৷
লগিং সক্ষম করে তৈরি করা নতুন নিয়ন্ত্রিত শেয়ার শেয়ারিং পরিষেবাতে 100টি অ্যাক্সেস-সেশন টাইমস্ট্যাম্প ধরে রাখে। শুধুমাত্র ব্যবস্থাপনা ক্ষমতা তাদের পুনরুদ্ধার করতে পারে; লগটিতে প্রাপকের পরিচয় বা ডিক্রিপশন গোপনীয়তা নেই। স্থানীয় লগিং অক্ষম করা ভবিষ্যতে শেয়ার প্রভাবিত করে. বিদ্যমান শেয়ার লগগুলি প্রত্যাহার বা মেয়াদ শেষ না হওয়া পর্যন্ত এবং পরিষ্কার করা পর্যন্ত তাদের আসল সেটিং বজায় রাখে।
ঐচ্ছিক এনক্রিপ্ট করা ব্রেক-ইন ফটো
মালিকরা প্রতিটি ডিভাইসে প্রতিটি ভল্টের জন্য আলাদাভাবে ব্রেক-ইন সতর্কতা সক্ষম করতে পারেন। তিনটি অতুলনীয় প্যাটার্নের পরে, ফোরগ্রাউন্ড অ্যাপটি একটি ফ্রন্ট-ক্যামেরা ফটো ক্যাপচার করতে পারে, অনুমতি সাপেক্ষে, ক্যামেরার প্রাপ্যতা এবং এক মিনিটের কুলডাউন। সিস্টেম ক্যামেরা সূচক দৃশ্যমান থাকে। সর্বশেষ দশটি সতর্কতা স্থানীয়ভাবে সংরক্ষণ করা হয় এবং ফটোতে যোগ করা বা আপলোড করা হয় না। একটি অতুলনীয় প্যাটার্ন একটি লক্ষ্য ভল্ট সনাক্ত করে না, তাই প্রতিটি অপ্ট-ইন ভল্ট একটি পৃথকভাবে এনক্রিপ্ট করা ডিভাইস-প্রচেষ্টা রেকর্ড পায়।
একটি ডেডিকেটেড RSA-3072 পাবলিক কী SHA-256 এবং MGF1-SHA-256 এর সাথে OAEP ব্যবহার করে প্রতিটি সতর্কতার জন্য একটি নতুন 256-বিট AES-GCM কী মোড়ানো হয়। ভল্ট লক থাকা অবস্থায় এটি এনক্রিপশনের অনুমতি দেয়। সংশ্লিষ্ট প্রাইভেট কী নিজেই সেই ভল্টের মাস্টার কী-এর অধীনে একটি ডেডিকেটেড প্রমাণীকৃত প্রসঙ্গ সহ এনক্রিপ্ট করা হয়েছে। শুধুমাত্র সেই ভল্টটি আনলক করলেই এর ফটো ডিক্রিপ্ট করা যাবে। সতর্কতাগুলি সাধারণ কার্যকলাপ লগিং থেকে স্বাধীনভাবে এর অডিট ভিউতে প্রদর্শিত হয় এবং ব্রেক-ইন সতর্কতা সেটিংসে সাফ করা যেতে পারে। তারা টেম্পার-প্রুফ প্রমাণ নয়।
Safe Exit স্থানীয় অ্যাক্সেস সরিয়ে দেয়
একটি ডিভাইসে একটি ভল্ট Safe Exit এর জন্য মনোনীত করা যেতে পারে। অন্যান্য স্থানীয় ভল্ট রেকর্ড, এনক্রিপ্ট করা খণ্ড, ডিভাইস আনলক উপাদান এবং সারিবদ্ধ পরিবর্তনগুলি সরানোর সময় এর প্যাটার্নটি প্রবেশ করালে এটি স্বাভাবিকভাবে খোলে। অ্যাপটি একটি স্থায়ী স্থানীয় অনুমোদন তালিকা রাখে যাতে সিঙ্ক নীরবে বাদ দেওয়া ভল্টগুলিকে পুনরুদ্ধার করতে পারে না। ইতিমধ্যেই ইন-ফ্লাইট এনক্রিপ্ট করা স্থানান্তর এখনও শেষ হতে পারে৷
অন্যান্য ডিভাইসে নেটিভ ক্লাউড কপি এবং কপি রয়ে গেছে। একটি নতুন স্থানীয় প্যাটার্ন নথিভুক্ত করার আগে স্পষ্ট পুনরুদ্ধারের জন্য বাদ দেওয়া ভল্টের পুনরুদ্ধার কী প্রয়োজন। একটি পৃথক ব্যাকআপ ছাড়া একটি অফলাইন-শুধু ভল্ট হারিয়ে যেতে পারে৷ এই সেটিংটি বর্তমান ইনস্টলেশনের ক্ষেত্রে প্রযোজ্য, একই ক্লাউড অ্যাকাউন্ট ব্যবহার করে প্রতিটি ডিভাইস নয়।
Safe Exit ফরেনসিক মুছে ফেলা বা গোপন করার নিশ্চয়তা নেই। ফ্ল্যাশ স্টোরেজ, অপারেটিং-সিস্টেম ক্যাশে, ব্যাকআপ এবং পূর্বের রপ্তানি ট্রেস ধরে রাখতে পারে। অ্যাপ ডেটা অপসারণ বা পুনরায় ইনস্টল করা স্থানীয় বিচ্ছিন্নতা সীমানা মুছে ফেলতে পারে; ক্লাউড রেকর্ডগুলি আবার নেটিভ ক্লাউড অ্যাকাউন্টের মাধ্যমে আবিষ্কৃত হতে পারে। শুধুমাত্র পুনরুদ্ধারের গোপন সেই রেকর্ডগুলি আনলক করতে পারে।
যা দৃশ্যমান থেকে যায়
এনক্রিপশন সামগ্রী লুকিয়ে রাখে, সমস্ত অপারেশনাল তথ্য নয়। স্থানীয় রেকর্ড এবং ক্লাউড প্রদানকারীরা শনাক্তকারী, রেকর্ড সম্পর্ক, বস্তুর সংখ্যা, আকার, সংশোধন, টাইমস্ট্যাম্প, এনক্রিপ্ট করা কী মোড়ক এবং স্ট্রীম শিরোনাম পর্যবেক্ষণ করতে পারে। শনাক্তকারীরা UUIDv7 ব্যবহার করে এবং সৃষ্টির সময়ের তথ্য অন্তর্ভুক্ত করে; তারা গোপন নয়। Apple বা Google প্ল্যাটফর্ম অ্যাকাউন্টের সাথে নেটিভ সিঙ্ক অ্যাক্টিভিটি যুক্ত করতে পারে।
Revault-এর নিয়ন্ত্রিত শেয়ারিং পরিষেবা এনক্রিপ্ট করা প্যাকেজের আকার, অংশ চেকসাম, মেয়াদ শেষ হওয়ার সেটিংস, অ্যাক্সেস-সেশনের সংখ্যা এবং ঐচ্ছিক সেশন টাইমস্ট্যাম্পগুলি পর্যবেক্ষণ করতে পারে, তবে আলাদাভাবে বিতরণ করা ডিক্রিপশন গোপনীয়তা নয়। CloudKit শেয়ার করা আমন্ত্রণ এবং অংশগ্রহণকারীদের তথ্য Apple এর কাছে প্রকাশ করে। নেটওয়ার্ক এবং অপারেশনাল রেকর্ড সংযোগ তথ্য প্রকাশ করতে পারে. Revault বেনামী বা ট্রাফিক-বিশ্লেষণ প্রতিরোধ প্রদান করে না।
HTTPS ট্রানজিটে নেটওয়ার্ক অনুরোধ রক্ষা করে। অন-ডিভাইস প্রমাণীকৃত এনক্রিপশন স্থানীয়ভাবে এবং ক্লাউডে সংরক্ষিত ভল্ট বিষয়বস্তুকে আলাদাভাবে রক্ষা করে। ট্রান্সপোর্ট এনক্রিপশন বা সাইফারটেক্সট কখন, কোথায় বা কতটা ডেটা স্থানান্তরিত হয় সে সম্পর্কে প্রতিটি তথ্য গোপন করে না।
যেখানে সুরক্ষা শেষ হয়
একটি আনলক করা ভল্ট অগত্যা তার অ্যাপ সেশনে ডিক্রিপ্ট করা তথ্য প্রকাশ করে। ম্যালওয়্যার, একটি আপস করা অপারেটিং সিস্টেম বা অ্যাপ, কেউ স্ক্রীন দেখছে, বা অবিশ্বস্ত প্রাপক এটি ক্যাপচার করতে পারে৷ শুধুমাত্র ডিভাইস কী সঞ্চয়স্থান একটি অতিরিক্ত সীমানা, সম্পূর্ণরূপে আপস করা ডিভাইসের বিরুদ্ধে একটি গ্যারান্টি নয়। একটি অনুমানযোগ্য প্যাটার্ন অনিরাপদ হয় একবার এর স্থানীয় গোপনীয়তার সাথে আপস করা হয়।
এনক্রিপশন ক্লাউড মুছে ফেলা, র্যানসমওয়্যার, একটি পুনরুদ্ধারের গোপনীয়তা হারানো, একটি প্রদানকারীর রেকর্ড আটকে রাখা বা সম্পূর্ণ পূর্বে বৈধ এনক্রিপ্ট করা অবস্থার রোলব্যাক প্রতিরোধ করে না। স্বাধীন এনক্রিপ্ট করা ব্যাকআপ রাখুন এবং একটি পুরানো ডিভাইস সরানোর আগে পুনরুদ্ধার যাচাই করুন। প্রত্যাহার স্ক্রিনশট, রপ্তানি বা অন্য ব্যক্তির দ্বারা ইতিমধ্যে রক্ষিত কপি প্রত্যাহার করতে পারে না।
Revault একটি স্বাধীন নিরাপত্তা নিরীক্ষার মধ্য দিয়ে যায়নি। এগুলো বাস্তবায়িত ক্রিপ্টোগ্রাফিক ডিজাইনের বর্ণনা, প্রতিটি অনুপ্রবেশের বিরুদ্ধে সার্টিফিকেশন বা গ্যারান্টি নয়।
বিদ্যমান ব্রাউজার ভল্ট
এই রেফারেন্সটি নেটিভ অ্যাপের বর্ণনা দেয়। বিদ্যমান ব্রাউজার ভল্টের একটি পৃথক অ্যাকাউন্ট, ডিভাইস-স্টোরেজ এবং ওয়েব-ক্লাউড মডেল রয়েছে। ব্রাউজার-নির্দিষ্ট S3 আপলোড এবং ব্রাউজার শেয়ার লিঙ্কগুলি নেটিভ ক্লাউড সিঙ্ক নয়। ব্রাউজার অ্যাকাউন্ট আপনাকে মোবাইল অ্যাপে সাইন ইন করে না; একটি নেটিভ ভল্টে বিদ্যমান ব্রাউজার ডেটা সরাতে একটি এনক্রিপ্ট করা ব্যাকআপ এবং এর পুনরুদ্ধার কী ব্যবহার করুন।