HPKE ওভারভিউ
হাইব্রিড পাবলিক কী এনক্রিপশন (HPKE) হল একটি ক্রিপ্টোগ্রাফিক প্রক্রিয়া যা একটি পাবলিক কীতে একটি পেলোড এনক্রিপ্ট করার জন্য ব্যবহৃত হয়। এটিকে "হাইব্রিড" বলা হয় কারণ পেলোডটি নিজেই একটি সিমেট্রিক কী দিয়ে এনক্রিপ্ট করা হয় এবং HPKE একটি ডিফি-হেলম্যান কী এক্সচেঞ্জ ব্যবহার করে এই সিমেট্রিক কীটি তৈরি করে।
HPKE মোড
- বেস: সবচেয়ে সাধারণ মোড।
- প্রমাণীকরণ: প্রমাণীকরণের জন্য প্রেরকের ব্যক্তিগত কী ব্যবহার করে।
- PSK: প্রমাণীকরণের জন্য একটি প্রাক-শেয়ার করা, উচ্চ-এনট্রপি কী ব্যবহার করে।
- AuthPSK: প্রমাণীকরণের জন্য প্রেরকের ব্যক্তিগত কী এবং একটি প্রাক-শেয়ার করা, উচ্চ-এনট্রপি কী একত্রিত করে।
বেস মোড ইন্টারঅ্যাকশন (ডিভাইস এবং ইস্যুকারী কর্তৃপক্ষ)
এখানে একটি উচ্চ স্তরের প্রবাহ দেখানো হয়েছে যেখানে একটি ডিভাইস সংবেদনশীল তথ্য ইস্যুকারী কর্তৃপক্ষের কাছে পাঠাতে চায়।
ধাপ ১: কী তৈরি এবং বিনিময়
- ইস্যুকারী কর্তৃপক্ষ একটি এনক্রিপশন কী পেয়ার তৈরি করে:
IE₍ₚₖ, ₛₖ₎যেখানে ₚₖ হল পাবলিক কী এবং ₛₖ হল প্রাইভেট কী। - ইস্যুকারী কর্তৃপক্ষ ডিভাইসের সাথে পাবলিক কী (
IEₚₖ) পাঠায় এবং শেয়ার করে।
ধাপ ২: এনক্রিপ্ট করুন এবং পাঠান
ডিভাইসটি Hybrid-Encrypt(Data, IEₚₖ, Context) চালায়।
- ডিভাইসটি এনক্রিপশনের জন্য একটি ক্ষণস্থায়ী অসমমিতিক কী জোড়া তৈরি করে:
₍Eₚₖ, Eₛₖ₎। - এটি একটি প্রতিসম AES কী তৈরি করে, যা শেয়ার্ড সিক্রেট (SS) নামে পরিচিত, যা সূত্রটি ব্যবহার করে:
SS = ExtractAndExpand(Diffie-Hellman(IEₚₖ, Eₛₖ), _Context)। - ডিভাইসটি এই ভাগ করা গোপন তথ্য ব্যবহার করে ডেটা এনক্রিপ্ট করে
encDataতৈরি করে। - এটি
{ encData, Eₚₖ }শেয়ার করে এবং ইস্যুকারী কর্তৃপক্ষের কাছে পাঠায়।
ধাপ ৩: ডিক্রিপ্ট করুন
ইস্যুকারী কর্তৃপক্ষ বর্তমানে IE₍ₚₖ, ₛₖ₎ এবং প্রাপ্ত { encData, Eₚₖ } ধারণ করে। এটি Hybrid-Decrypt(encData, Eₚₖ, IEₛₖ, Context) কার্যকর করে।
- এটি সূত্র ব্যবহার করে প্রতিসম AES কী (শেয়ার্ড সিক্রেট, SS) তৈরি করে:
SS = ExtractAndExpand(Diffie-Hellman(IEₛₖ, Eₚₖ), _Context)। - এটি SS ব্যবহার করে
encDataডিক্রিপ্ট করে।
পরিভাষা
| মেয়াদ | সংজ্ঞা এবং বিবরণ |
|---|---|
| ডিআইₚₖ | ক্রেডেনশিয়াল কী সার্টিফিকেট চেইন (ডিভাইস আইডেন্টিটি সার্টিফিকেট): ক্রেডেনশিয়ালকির জন্য একটি X.509 সার্টিফিকেট চেইন যা ইস্যুকারী কর্তৃপক্ষের কাছে ক্রেডেনশিয়াল সনাক্ত করে।
|
| Aₚₖ | প্রমাণীকরণ কী: ডায়নামিক X.509 প্রমাণীকরণ কী যার জন্য সার্টিফিকেশন প্রয়োজন, প্রতিটি CredentialKey দ্বারা স্বাক্ষরিত।
|
| আইই₍ₛₖ,ₚₖ₎ | ইস্যুয়ার এনক্রিপশন কী পেয়ার: ইস্যুয়ার দ্বারা তৈরি একটি অসমমিতিক কী। ডিভাইসটি ইস্যুয়ারকে হাইব্রিড এনক্রিপশন সম্পাদন করতে এই কী ব্যবহার করে। |
| II₍ₛₖ,ₚₖ₎ | ইস্যুয়ার আইডেন্টিটি কী পেয়ার: ইস্যুয়ার দ্বারা তৈরি একটি অসমমিতিক কী। ডিভাইসটি ইস্যুয়ারের পরিচয় যাচাই করতে এই কী ব্যবহার করে। |
| ডি₍ₛₖ,ₚₖ₎ | ডিভাইস এনক্রিপশন কী পেয়ার: প্রতি অনুরোধে ডিভাইস দ্বারা তৈরি একটি ক্ষণস্থায়ী অ্যাসিমেট্রিক কী। ইস্যুকারী ডিভাইসে হাইব্রিড এনক্রিপশন সম্পাদন করতে এই কী ব্যবহার করে। |
| ফে₍ₛₖ,ₚₖ₎ | ফিল্ড এনক্রিপশন কী: হাইব্রিড এনক্রিপশনের সময় প্রতি ফিল্ডে তৈরি একটি ক্ষণস্থায়ী অসমমিতিক কী। |
গুগল ডিজিটাল ক্রেডেনশিয়াল প্রোভিশনিং এপিআই-তে E2EE
ধাপ ১: ইস্যুকারী পরিচয় কী এবং এনক্রিপশন কী পান
- API এন্ডপয়েন্ট:
/getIdentityKey,/getHybridEncryptionKey. - রিটার্ন:
IIₚₖ,IEₚₖ.
ধাপ ২: ডিভাইস নিবন্ধন নন্স পান
- একটি ডিভাইস রেফারেন্স আইডি (
deviceReferenceId) তৈরি করুন। - API এন্ডপয়েন্ট:
/getDeviceRegistrationNonce(deviceReferenceId)কল করুন। - রিটার্নস:
nonce।
ধাপ ৩: ডিভাইস নিবন্ধন করুন
- অ্যান্ড্রয়েড আইডেন্টিটি ক্রেডেনশিয়াল সেটআপ করুন।
-
IC.getCredentialKeyCertificateChain(nonce)কল করুন যা একটি nonce-এমবেডেডDIₚₖপ্রদান করে। - API এন্ডপয়েন্ট: কল
/registerDevice(deviceReferenceId, DIₚₖ)। - রুট সার্টিফিকেটটি সুপরিচিত কিনা, চ্যালেঞ্জটি উপস্থিত কিনা,
ATTESTATION_APPLICATION_IDপ্রত্যাশিত অ্যাপের সাথে মেলে কিনা, যাচাইকৃত বুট সক্ষম করা আছে কিনা এবং স্বাক্ষর বা প্রত্যাহার বৈধ কিনা তা নিশ্চিত করার জন্য ইস্যুকারী কর্তৃপক্ষকে এই সার্টিফিকেট শৃঙ্খলটি সাবধানতার সাথে পরীক্ষা করতে হবে। - ফেরত:
ack.
ধাপ ৪ক: প্রুফিং অনুরোধ পাঠান
- প্রতিটি ক্ষেত্রের জন্য:
-
encDataএবংFEₚₖতৈরি করতেHybrid-Encrypt(Data, IEₚₖ, Context=FieldName)কার্যকর করুন। -
sigData(CredentialKey দ্বারা স্বাক্ষরিত একটি COSE_Sign1 ডেটা স্ট্রাকচার, যার পেলোড ProofOwnership এ সেট করা আছে) পেতেIC.proveOwnership(SHA-256(Data + IEₚₖ))এ কল করুন।
-
- API এন্ডপয়েন্ট: কল
/proofUser([encData, sigData, FEₚₖ])। - ইস্যুকারী কর্তৃপক্ষ
DIₚₖব্যবহার করেsigDataযাচাই করে। - ইস্যুকারী কর্তৃপক্ষ
Dataতৈরি করতেHybrid-Decrypt(encData, FEₚₖ, IEₛₖ, Context=FieldName)কার্যকর করে। - ফেরত:
ack.
ধাপ ৪খ: প্রুফিং স্ট্যাটাস আপডেট
-
deviceReferenceIdএবংproofingIdব্যবহার করে Google-কে প্রুফিং স্ট্যাটাস আপডেট সম্পর্কে অবহিত করুন। - API এন্ডপয়েন্ট: কল করুন
/notifyProofingStatusUpdateAvailable(...)। - গুগল সার্ভার
/getProofingStatus(deviceReferenceId, proofingId)কল করে ইস্যুকারীর কাছ থেকে প্রুফিং স্ট্যাটাস নিয়ে আসে।
ধাপ ৫: প্রভিশন ক্রেডেনশিয়াল
-
sigDEₚₖ(পেলোড প্রুফঅনার্সশিপ সহ CredentialKey/DIₛₖ দ্বারা স্বাক্ষরিত COSE_Sign1 কাঠামো) পেতেIC.proveOwnership(SHA-256(DEₚₖ))এ কল করুন। - API এন্ডপয়েন্ট:
/provisionCredential(dRId, pId, cId, DEₚₖ, sigDEₚₖ)এর মাধ্যমে ইস্যুকারীর কাছেdeviceReferenceId,proofingId,credentialId, এবংsigDEₚₖপাঠান। - ইস্যুকারী পক্ষ:
-
DIₚₖদিয়েsigDEₚₖযাচাই করুন। - শংসাপত্র এনক্রিপ্ট করুন (ব্যক্তিগতকরণ ডেটা + অ্যাক্সেসকন্ট্রোল প্রোফাইল)।
-
encCredএবংFEₚₖতৈরি করতেHybrid-Encrypt(Cred, DEₚₖ, Context=FieldName)কার্যকর করুন। -
IIₛₖদিয়ে COSE_Sign1 SHA-256(Cred + DEₚₖ) সাইন করেsigCredতৈরি করুন। -
encCred,sigCred,FEₚₖফেরত পাঠান।
-
- ডিভাইসের দিক:
-
IIₚₖব্যবহার করেsigCredযাচাই করুন। -
Credএক্সট্র্যাক্ট করতেHybrid-Decrypt(encCred, FEₚₖ, DEₛₖ, Context=FieldName)এক্সিকিউট করুন। -
sigCredReceipt(CredentialKey দ্বারা স্বাক্ষরিত COSE_Sign1, payload ProofOfProvisioning) পেতেWC.personalize(Cred)এ কল করুন। -
encReceiptএবংFE1ₚₖতৈরি করেHybrid-Encrypt(sigCredReceipt, DEₛₖ, Context=FieldName)চালান। -
sigReceipt(CredentialKey দ্বারা স্বাক্ষরিত COSE_Sign1, মালিকানার প্রমাণপত্রের পেলোড) পেতেIC.proveOwnership(SHA-256(encReceipt + IEₚₖ))এ কল করুন। - Auth কী তৈরি করুন [
Aₚₖ]।
-
ধাপ ৬: MSO এবং StaticAuthData তৈরি করুন
- ডিভাইসের দিক:
- প্রতিটি Auth Key-এর জন্য:
encAuthKeyএবংFEₚₖতৈরি করতেHybrid-Encrypt(AuthKey, IEₚₖ, Context=FieldName)এক্সিকিউট করুন। -
sigAuthKeyপেতেIC.proveOwnership(SHA-256(AuthKey + IEₚₖ))এ কল করুন। - API এন্ডপয়েন্ট: কল
/provisionMSOs(.., encReceipt, sigReceipt, [encAuthKey, sigAuthKey, FEₚₖ], DEₚₖ, sigDEₚₖ)।
- প্রতিটি Auth Key-এর জন্য:
- ইস্যুকারী পক্ষ:
- রসিদ যাচাই করতে
DIₚₖবিপরীতেsigReceiptএবংsigDEₚₖযাচাই করুন। - প্রতিটি
[encAuthKey, sigAuthKey, FEₚₖ]এর জন্য:AuthKeyএক্সট্র্যাক্ট করতেHybrid-Decrypt(encAuthKey, FEₚₖ, IEₛₖ, Context=FieldName)এক্সিকিউট করুন। - MSO (AuthKey সহ) তৈরি করুন এবং staticAuthData (SAD) তৈরি করুন, যার মধ্যে digestIdMapping এবং issuerAuth অন্তর্ভুক্ত।
-
encSADএবংFEₚₖতৈরি করতেHybrid-Encrypt(SAD, DEₚₖ, Context=FieldName)চালান। -
sigSADতৈরি করতে COSE_Sign1 SHA-256(SAD + DEₚₖ) ব্যবহার করেIIₛₖদিয়ে সাইন করুন। -
[encSAD, sigSAD, FEₚₖ]ফেরত দিন।
- রসিদ যাচাই করতে
- ডিভাইস সাইড (ফাইনাল):
- প্রতিটি
encSAD, sigSAD, FEₚₖএর জন্য ফেরত পাঠানো হয়েছে:IIₚₖদিয়েsigSADযাচাই করুন। -
SADবের করার জন্যHybrid-Decrypt(encSAD, FEₚₖ, DEₛₖ, Context=FieldName)এক্সিকিউট করুন। - প্রক্রিয়াটি সম্পন্ন করতে
storeStaticAuthenticationDatawithSADতে কল করুন।
- প্রতিটি
ঘূর্ণনের প্রয়োজনীয়তা
ইস্যুয়ার আইডেন্টিটি কী প্রতি বছর একবার ঘোরানো উচিত। ঘূর্ণন সময়কালে, ইস্যুয়ারকে পুরানো এবং নতুন কী হোস্ট করতে হবে এবং ডিভাইসটি এই দুটি কীকেই বিশ্বাস করবে। ইস্যুয়ার সম্পূর্ণরূপে নতুন ইস্যুয়ার আইডেন্টিটি কী ব্যবহার করার জন্য অদলবদল করার পরে, ইস্যুয়ারের পুরানো কী হোস্ট করা বন্ধ করা উচিত এবং ডিভাইসটি আর এটিকে বিশ্বাস করবে না।
ইস্যুয়ার হাইব্রিড এনক্রিপশন কী প্রতি ৩ মাস অন্তর একবার ঘোরানো উচিত। ঘূর্ণন সময়কালে, ইস্যুয়ারকে কেবল নতুন কী হোস্ট করা শুরু করতে হবে এবং ডিভাইসটি নতুন কীতে এনক্রিপ্ট করা শুরু করবে। ডাউনটাইম এড়াতে ইস্যুয়ারকে যুক্তিসঙ্গত সময়ের জন্য পুরানো এবং নতুন উভয় কী ব্যবহার করে ডিক্রিপ্টিং সমর্থন করতে হবে।
AAD মান
AAD এর জন্য নিম্নলিখিত প্রসঙ্গ মানগুলি ব্যবহার করুন।
| ক্ষেত্র | প্রসঙ্গ মান |
|---|---|
| প্রাক-অনুমোদন কোড | প্রাক-অনুমোদন কোড |
অন্যান্য প্রমাণের ধরণের AAD মানের জন্য, আপনার Google প্রতিনিধির সাথে যোগাযোগ করুন।
ডিজিটাল শংসাপত্রের জন্য পরীক্ষামূলক ভেক্টর এন্ড-টু-এন্ড এনক্রিপশন
ডিজিটাল আইডি এন্ড-টু-এন্ড এনক্রিপশনের জন্য টেস্ট ভেক্টর হল পূর্বনির্ধারিত বার্তা এবং তাদের এনক্রিপ্ট করা সংস্করণের একটি সেট যা এনক্রিপশন অ্যালগরিদমের সঠিকতা পরীক্ষা করতে ব্যবহৃত হয়।
HPKE এনক্রিপশন প্যারামিটার:
KEM = DHKEM(P-256, HKDF-SHA256), id = 0x0010 KDF = HKDF-SHA256, id = 0x0001 AEAD = AES-256-GCM, id = 0x0002
- অতিরিক্ত সহযোগী ডেটা (AAD) হল HPKE CtxInfo-এর একটি ইনপুট, AES (প্রতিসম) এনক্রিপশনের জন্য AAD হল NULL (খালি)।
- JSON স্ট্রাকচারের বাইনারি ডেটা Base64 এনকোডেড, এই ডকুমেন্টের মধ্যবর্তী মানগুলি হেক্স এনকোডেড।
- এই ডকুমেন্টেশনে স্বাক্ষরের ফর্ম্যাট:
- ডিভাইস → ইস্যুকারী, ইস্যুকারী → ডিভাইস:
COSE_Sign1
- ডিভাইস → ইস্যুকারী, ইস্যুকারী → ডিভাইস:
ক্লায়েন্ট → ইস্যুকারী, ইস্যুকারী → ক্লায়েন্ট
উভয় দিকে যোগাযোগের জন্য নমুনা।
নমুনা এনক্রিপ্ট করা অনুরোধ ক্ষেত্র
প্লেইনটেক্সট = "হ্যালো, বিশ্ব!", অ্যাসোসিয়েটেড-ডেটা = "ফিল্ড১"
{
"field1": {
"encryptedValue": "yGFWT9MkgV6/IZfYUZjqGEf3k2M/HQhz9XnKWyI\u003d",
"encapsulatedKey": "BOpBC2LGh1RWk99iIm6ISsaPbtrNnu9hIgHeby5khXY6PG+ZmDOYmorEUne7uzhDmD6JCVYyME1+A8ueJ0CZvAI\u003d",
"signature": "hEOhASagWE+EcFByb29mT2ZPd25lcnNoaXB4GG9yZy5pc28uMTgwMTMtNS4yMDE5Lm1kbFggTOsHXzsgDgh/2chekltve8rJsFFb6DTtBjY98H58gjb0WEBUnwNT3gvbavE8QoaAKaELqF7JKqh0+ivPisQg6RerTmx8Zsk/tCjW/y1cxhGKatl2EjASemns67r1/lZumEqZ",
"recipientKeyId": "4D7E5D8B9460810A"
}
}গভীর ডুব:
>> plaintext = "Hello, world!" 48656C6C6F2C20776F726C6421 >> associated-data = "field1" 6669656C6431 ## AES key = 2831F07355FEAB3A8654EADEEC2E2D497B9FD3C76CB8B5E776DB03583F302332 ## AES initialization vector = 64620929032C85B352156528 ## AES associated data (empty) = >> encrypted-value = HPKE(plaintext, associated-data) C861564FD324815EBF2197D85198EA1847F793633F1D0873F579CA5B22 >> encapsulated-key (ephemeral) = 04EA410B62C687545693DF62226E884AC68F6EDACD9EEF612201DE6F2E648576 3A3C6F999833989A8AC45277BBBB3843983E89095632304D7E03CB9E274099BC 02 >> tbs-data = plaintext || issuer-encryption-key 48656C6C6F2C20776F726C6421044F1FC726AFFFC32EAA1275B5B49D67018ADE 7D8599DE53FE049996C0EC45D26EA3375BF467B631CF8AB0F284E4B628E287C8 99107465529DCA93DCF5F7A7EA5F >> sha-256(tbs-data) 4CEB075F3B200E087FD9C85E925B6F7BCAC9B0515BE834ED06363DF07E7C8236 >> proof-of-ownership (cbor array) 847050726F6F664F664F776E65727368697078186F72672E69736F2E31383031 332D352E323031392E6D646C58204CEB075F3B200E087FD9C85E925B6F7BCAC9 B0515BE834ED06363DF07E7C8236F4 >> signature (cose_sign1) 8443A10126A0584F847050726F6F664F664F776E65727368697078186F72672E 69736F2E31383031332D352E323031392E6D646C58204CEB075F3B200E087FD9 C85E925B6F7BCAC9B0515BE834ED06363DF07E7C8236F45840549F0353DE0BDB 6AF13C42868029A10BA85EC92AA874FA2BCF8AC420E917AB4E6C7C66C93FB428 D6FF2D5CC6118A6AD9761230127A69ECEBBAF5FE566E984A99
নমুনা ইস্যুকারী বা ডিভাইস এনক্রিপশন কী
{
"deviceEncryptionKey": {
"publicKey": "BP5vgzZ+UTozzb6cmaZ8tkof2nh2Q2oHVAsggvc8V8SR6C9wWU6W9JEq0AmsGbou3jYw4BLftJP2XQeCB3uD/to\u003d",
"signature": "hEOhASagWE+EcFByb29mT2ZPd25lcnNoaXB4GG9yZy5pc28uMTgwMTMtNS4yMDE5Lm1kbFgg7641tE2UhuT5Tw9p1u9yEDpyYzDf1Jf9m//mIQfd4Kf0WEBB7PvHbfWozCYlFUqMJ6x+QWzoUU/OT10F1J1zoB8MTELPqfC9acF6IX5oMmsgLn2RtPS7QfylRqEAfG0FyYli",
"keyIdentifier": "F29BA6298BC93156D2D50EA7E2233FC4"
}
}গভীর ডুব:
>> ec-point 04FE6F83367E513A33CDBE9C99A67CB64A1FDA7876436A07540B2082F73C57C4 91E82F70594E96F4912AD009AC19BA2EDE3630E012DFB493F65D0782077B83FE DA >> sha-256(ec-point) EFAE35B44D9486E4F94F0F69D6EF72103A726330DFD497FD9BFFE62107DDE0A7 >> proof-of-ownership (cbor array) 847050726F6F664F664F776E65727368697078186F72672E69736F2E31383031 332D352E323031392E6D646C5820EFAE35B44D9486E4F94F0F69D6EF72103A72 6330DFD497FD9BFFE62107DDE0A7F4 >> signature (cose_sign1) 8443A10126A0584F847050726F6F664F664F776E65727368697078186F72672E 69736F2E31383031332D352E323031392E6D646C5820EFAE35B44D9486E4F94F 0F69D6EF72103A726330DFD497FD9BFFE62107DDE0A7F4584041ECFBC76DF5A8 CC2625154A8C27AC7E416CE8514FCE4F5D05D49D73A01F0C4C42CFA9F0BD69C1 7A217E68326B202E7D91B4F4BB41FCA546A1007C6D05C98962
পরীক্ষার কী এবং সার্টিফিকেট
বাস্তবায়নের সময় আপনি নিম্নলিখিত পরীক্ষা কীগুলি উল্লেখ করতে পারেন।
পরীক্ষার ইস্যুকারী পরিচয় (স্বাক্ষর) কী
ব্যক্তিগত চাবি
-----BEGIN PRIVATE KEY----- MEECAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQcEJzAlAgEBBCBSDJqogkjkqD7O8mX5 FcUvwOxFp0CxPOGnMD8BfSbcyw== -----END PRIVATE KEY-----
পাবলিক কী সার্টিফিকেট
-----BEGIN CERTIFICATE----- MIIBkDCCATegAwIBAgIIIi7oI6UIMEYwCgYIKoZIzj0EAwIwNzE1MDMGA1UEAxMs Ly9leHBlcmltZW50YWwvdXNlcnMvaWdhcmlldi9jcnlwdG86U2lnbkNlcnQwHhcN MjIxMjEyMjAyNDA0WhcNMjMxMjEyMjAyNDA0WjBSMQ8wDQYDVQQLEwZXYWxsZXQx DzANBgNVBAoTBkdvb2dsZTEuMCwGA1UEAxMlVEVTVCBEQVRBIElzc3VlciBJZGVu dGl0eSAoU2lnbmF0dXJlKTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABHV9uYlT wGV3UB+SM62fXcW6QzFfSoxq2gU34xG+XVMjxk9JDP9UTE34zX72WIfZ9nqRN9y/ SsbSxw5WrSQdGY2jEjAQMA4GA1UdDwEB/wQEAwIHgDAKBggqhkjOPQQDAgNHADBE AiBnMgsyJhdfelqpOFvT4H63dWSrNPxyrKEdxTwbYMfCKQIgOh2n2gCETH07tjxR l9HQfUcb6vqQY4EoPz2O0wNs6yc= -----END CERTIFICATE-----
পরীক্ষা ইস্যুকারী এনক্রিপশন কী
ব্যক্তিগত চাবি
-----BEGIN PRIVATE KEY----- MEECAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQcEJzAlAgEBBCDZMUnwmygUdKXSujXS ye7YbVnk1Zy/qwnQtzlZs3pQFQ== -----END PRIVATE KEY-----
পাবলিক কী সার্টিফিকেট
-----BEGIN CERTIFICATE----- MIIBpjCCAUygAwIBAgIIIVwLEOrrzm0wCgYIKoZIzj0EAwIwNzE1MDMGA1UEAxMs Ly9leHBlcmltZW50YWwvdXNlcnMvaWdhcmlldi9jcnlwdG86U2lnbkNlcnQwHhcN MjIxMjIyMjA1NzIzWhcNMjMxMjIyMjA1NzIzWjBIMQ8wDQYDVQQLEwZXYWxsZXQx DzANBgNVBAoTBkdvb2dsZTEkMCIGA1UEAxMbVEVTVCBEQVRBIElzc3VlciBFbmNy eXB0aW9uMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETx/HJq//wy6qEnW1tJ1n AYrefYWZ3lP+BJmWwOxF0m6jN1v0Z7Yxz4qw8oTktijih8iZEHRlUp3Kk9z196fq X6MxMC8wDgYDVR0PAQH/BAQDAgMYMB0GA1UdDgQWBBQKFb7K4eZjtp70DLoCHWe7 v/toXzAKBggqhkjOPQQDAgNIADBFAiEAwN1gOwiSx3999Zxc980eKv3p2H8kA4J6 9aWH6jiVaGMCIA7lLkebHFhD0fItGqXv1f5fwiMBV0605KZFh5+RBj/W -----END CERTIFICATE-----
ডিভাইস আইডেন্টিটি (স্বাক্ষর) কী, ওরফে ক্রেডেনশিয়াল কী
- পাবলিক কী সার্টিফিকেট চেইন (X.509)
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
আরও বিস্তারিত জানার জন্য অ্যান্ড্রয়েডের কী অ্যাটেস্টেশন ডকুমেন্টেশন দেখুন।
ডিভাইস এনক্রিপশন কী
ব্যক্তিগত চাবি
-----BEGIN PRIVATE KEY----- MEECAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQcEJzAlAgEBBCBJY8n7A1v+thMM63np m0wr+rAoMFEYmMZ+mWzBIj2CiQ== -----END PRIVATE KEY-----
পাবলিক কী সার্টিফিকেট
-----BEGIN CERTIFICATE----- MIIBhzCCAS2gAwIBAgIIAyJ+NkzueMUwCgYIKoZIzj0EAwIwNzE1MDMGA1UEAxMs Ly9leHBlcmltZW50YWwvdXNlcnMvaWdhcmlldi9jcnlwdG86U2lnbkNlcnQwHhcN MjMwMTA5MjMwOTIwWhcNMjQwMTA5MjMwOTIwWjBIMQ8wDQYDVQQLEwZXYWxsZXQx DzANBgNVBAoTBkdvb2dsZTEkMCIGA1UEAxMbVEVTVCBEQVRBIERldmljZSBFbmNy eXB0aW9uMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/m+DNn5ROjPNvpyZpny2 Sh/aeHZDagdUCyCC9zxXxJHoL3BZTpb0kSrQCawZui7eNjDgEt+0k/ZdB4IHe4P+ 2qMSMBAwDgYDVR0PAQH/BAQDAgMYMAoGCCqGSM49BAMCA0gAMEUCIQD9syewRhvK KcyaM7fLwuuCidpiIVd/CZxFCLOo9adCPAIgNd3FMcT710KtYptJBZQ/i7N+C7G5 pLbHmAUoFwNuB2E= -----END CERTIFICATE-----