একটি মোড়ানো প্রাইভেট কী খুলে দেয় এবং তারপর ক্লায়েন্ট দ্বারা প্রদত্ত ডাইজেস্টে স্বাক্ষর করে।
HTTP অনুরোধ
POST https:// KACLS_URL /privatekeysign
KACLS_URL কী অ্যাক্সেস কন্ট্রোল লিস্ট সার্ভিস (KACLS) URL দিয়ে প্রতিস্থাপন করুন।
পথের পরামিতি
কোনোটিই নয়।
অনুরোধের মূল অংশ
অনুরোধের মূল অংশে নিম্নলিখিত কাঠামো সহ ডেটা রয়েছে:
| JSON উপস্থাপনা | |
|---|---|
{ "authentication": string, "authorization": string, "algorithm": string, "digest": string, "rsa_pss_salt_length": integer, "reason": string, "wrapped_private_key": string } | |
| ক্ষেত্র | |
|---|---|
authentication | পরিচয় প্রদানকারী (আইডিপি) কর্তৃক জারি করা একটি JWT যা ব্যবহারকারী কে তা নিশ্চিত করে। প্রমাণীকরণ টোকেন দেখুন। |
authorization | একটি JWT দাবি করছে যে ব্যবহারকারীকে |
algorithm | এনভেলপ এনক্রিপশনে ডেটা এনক্রিপশন কী (DEK) এনক্রিপ্ট করার জন্য যে অ্যালগরিদম ব্যবহার করা হয়েছিল। |
digest | Base64-এনকোডেড মেসেজ ডাইজেস্ট। DER এনকোডেড |
rsa_pss_salt_length | (ঐচ্ছিক) যদি স্বাক্ষর অ্যালগরিদম RSASSA-PSS হয়, তাহলে ব্যবহার করার জন্য লবণ দৈর্ঘ্য। যদি স্বাক্ষর অ্যালগরিদম RSASSA-PSS না হয়, তাহলে এই ক্ষেত্রটি উপেক্ষা করা হবে। |
reason | একটি পাসথ্রু JSON স্ট্রিং যা অপারেশন সম্পর্কে অতিরিক্ত প্রসঙ্গ প্রদান করে। প্রদত্ত JSON প্রদর্শনের আগে স্যানিটাইজ করা উচিত। সর্বোচ্চ আকার: ১ KB। |
wrapped_private_key | base64-এনকোডেড মোড়ানো প্রাইভেট কী। সর্বোচ্চ আকার: 8 KB। প্রাইভেট কী বা র্যাপড প্রাইভেট কী-এর ফর্ম্যাট কী অ্যাক্সেস কন্ট্রোল লিস্ট সার্ভিস (KACLS) বাস্তবায়নের উপর নির্ভর করে। ক্লায়েন্ট এবং জিমেইল উভয় পক্ষের ক্ষেত্রে এটি একটি অস্বচ্ছ ব্লব হিসেবে বিবেচিত হয়। |
প্রতিক্রিয়া মূল অংশ
যদি সফল হয়, তাহলে এই পদ্ধতিটি একটি base64-এনকোডেড স্বাক্ষর প্রদান করে।
যদি অপারেশনটি ব্যর্থ হয়, তাহলে একটি কাঠামোগত ত্রুটির উত্তর ফেরত পাঠানো হবে।
| JSON উপস্থাপনা | |
|---|---|
{ "signature": string } | |
| ক্ষেত্র | |
|---|---|
signature | একটি base64-এনকোডেড স্বাক্ষর। |
উদাহরণ
এই উদাহরণে privatekeysign পদ্ধতির জন্য একটি নমুনা অনুরোধ এবং প্রতিক্রিয়া প্রদান করা হয়েছে।
অনুরোধ
{
"wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
"digest": "EOBc7nc+7JdIDeb0DVTHriBAbo/dfHFZJgeUhOyo67o=",
"authorization": "eyJhbGciOi...",
"authentication": "eyJhbGciOi...",
"algorithm": "SHA256withRSA",
"reason": "sign"
}
প্রতিক্রিয়া
{
"signature": "LpyCSy5ddy82PIp/87JKaMF4Jmt1KdrbfT1iqpB7uhVd3OwZiu+oq8kxIzB7Lr0iX4aOcxM6HiUyMrGP2PG8x0HkpykbUKQxBVcfm6SLdsqigT9ho5RYw20M6ZXNWVRetFSleKex4SRilTRny38e2ju/lUy0KDaCt1hDUT89nLZ1wsO3D1F3xk8J7clXv5fe7GPRd1ojo82Ny0iyVO7y7h1lh2PACHUFXOMzsdURYFCnxhKAsadccCxpCxKh5x8p78PdoenwY1tnT3/X4O/4LAGfT4fo98Frxy/xtI49WDRNZi6fsL6BQT4vS/WFkybBX9tXaenCqlRBDyZSFhatPQ=="
}