Android Mainline Modules ট্রান্সপারেন্সি লগ

Android Mainline মডিউল ট্রান্সপারেন্সি লগ যাচাইযোগ্য ডেটা স্ট্রাকচার ব্যবহার করে Mainline মডিউলের ইন্টিগ্রিটি নিশ্চিত করে।

Pixel Binary Transparency এবং Certificate Transparency-এর মতো প্রোজেক্টের মাধ্যমে স্বচ্ছতা সম্পর্কিত লগের উপযোগিতা প্রমাণিত হয়েছে।

স্বচ্ছতা সম্পর্কিত লগ Merkle ট্রি-তে তৈরি করা হয়। এই পৃষ্ঠাটি ধরে নেয় যে আপনার Merkle ট্রি এবং বাইনারি স্বচ্ছতা সম্পর্কে সাধারণ জ্ঞান আছে। Merkle ট্রি-এর ওভারভিউয়ের জন্য যাচাইযোগ্য ডেটা স্ট্রাকচার এবং Android-এর মধ্যে বাইনারি ট্রান্সপারেন্সি সংক্রান্ত প্রচেষ্টার ওভারভিউয়ের জন্য মূল পৃষ্ঠা দেখুন।

লগ প্রয়োগ করা

Android Mainline মডিউল ট্রান্সপারেন্সি লগ Tessera ব্যবহার করে ইমপ্লিমেন্ট করা হয় এবং tlog-tiles স্পেসিফিকেশন মেনে চলে, যার টাইল হাইট হল ৮ (প্রতিটি টাইল বা বান্ডেলে সর্বাধিক ২৮ = ২৫৬টি আইটেম থাকে)।

লগ কন্টেন্টের রুট এখানে পরিবেশন করা হয়: https://www.gstatic.com/android/binary_transparency/mainline/2026/02/tile/entries/

টাইল কন্টেন্টের রুট এখানে পরিবেশন করা হয়: https://www.gstatic.com/android/binary_transparency/mainline/2026/02/tile/

মনে রাখবেন, এইসব URL স্ট্যান্ডার্ড ওয়েব পেজ নয়। পরিবর্তে, এর সাবডিরেক্টরিতে লগ এন্ট্রিগুলি Tessera বা Golang SumDB Tlog লাইব্রেরি-এর মতো টুল ব্যবহার করে প্রোগ্রাম্যাটিকভাবে অ্যাক্সেস করা উচিত।

  • ট্রি টাইল: Merkle tree-এর ইন্টেরিয়র ও লিফ নোড হ্যাশ tile/<level>/<path>-এর (যেমন, tile/0/000, tile/1/000) অধীনে পরিবেশন করা হয়।
  • এন্ট্রি বান্ডেল: লগ লিফ পে-লোড এন্ট্রি বান্ডেলে সাজানো থাকে, tile/entries/<path> (যেমন, tile/entries/000, tile/entries/001), যেখানে প্রতিটি বান্ডেলে ২৫৬টি পর্যন্ত কনক্যাটেনেট করা এন্ট্রি থাকে।

প্রতিটি এন্ট্রিতে কী আছে তার বিবরণের জন্য লগ কন্টেন্ট দেখুন।

চেকপয়েন্ট-এ থাকা লগের Merkle ট্রি রুট হ্যাশ, https://www.gstatic.com/android/binary_transparency/mainline/2026/02/checkpoint-এ চেকপয়েন্ট ফর্ম্যাটে পরিবেশন করা হয়। চেকপয়েন্টের উৎস হল android.transparency.goog/mainline/modules/2026/1।

Ed25519 সিগনেচার অ্যালগরিদম ব্যবহার করে চেকপয়েন্ট সিগনেচার তৈরি করা হয়। চেকপয়েন্টের স্বাক্ষর নিম্নলিখিত সর্বজনীন কী-এর মাধ্যমে যাচাই করা যেতে পারে নোট যাচাইকারী ফর্ম্যাট (golang.org/x/mod/sumdb/note-এ যেমন উল্লেখ করা আছে) অথবা স্ট্যান্ডার্ড PEM ফর্ম্যাটে:

  • নোট যাচাইকারীর ফর্ম্যাট (<name>+<key_hash>+<public_key_bytes>):
android.transparency.goog/mainline/modules/2026/1+1a8e4064+AfwnHm59rNQTJICchMd7a2W5PQa7nC5h2gTEfq3fhCEI
  • PEM ফর্ম্যাট (SubjectPublicKeyInfo):
-----BEGIN PUBLIC KEY-----
MCowBQYDK2VwAyEA/Ccebn2s1BMkgJyEx3trZbk9BrucLmHaBMR+rd+EIQg=
-----END PUBLIC KEY-----

আর্কাইভ করা লগ (V1)

২০২৬-এর তৃতীয় কোয়ার্টারের আপডেটের আগে, লগটি ECDSA (SHA-256 সহ NIST P-256) স্বাক্ষর ব্যবহার করে আগের V1 ইমপ্লিমেন্টেশনের অধীনে পরিচালিত হয়েছিল। V1 লগ আর্কাইভ করা এবং শুধুমাত্র পড়ার জন্য, তবে পুরনো এন্ট্রি যাচাই করার জন্য সর্বজনীনভাবে অ্যাক্সেসযোগ্য থাকে:

-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEr6nPds8eKCYU42avidXNM1GDCtQ/
66GjGuIpUcZjqQNngwRFVCFZDpWuvDnqXzhJRxqccL9lbeEVVZGpa4x6pg==
-----END PUBLIC KEY-----

Mainline মডিউল APK-এর মতো হওয়ায়, Google APK যাচাইকরণ পৃষ্ঠায় বর্ণিত যাচাইকরণ পদ্ধতি এখানেও প্রযোজ্য। দাবিদার মডেলে করা দাবি যাচাই করার জন্য আপনি সেখানে উল্লেখ করা পদ্ধতি ব্যবহার করতে পারেন।