तरीका: privacykeydecrypt

यह रैप की गई निजी कुंजी को अनरैप करता है. इसके बाद, कॉन्टेंट को एन्क्रिप्ट (सुरक्षित) करने वाली उस कुंजी को डिक्रिप्ट करता है जिसे सार्वजनिक कुंजी का इस्तेमाल करके एन्क्रिप्ट (सुरक्षित) किया गया है.

एचटीटीपी अनुरोध

POST https://KACLS_URL/privatekeydecrypt

KACLS_URL की जगह, कुंजी ऐक्सेस कंट्रोल लिस्ट (केएसीएल) सेवा का यूआरएल डालें.

पाथ पैरामीटर

कोई नहीं.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में, इस स्ट्रक्चर का डेटा शामिल होता है:

JSON के काेड में दिखाना
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "encrypted_data_encryption_key": string,
  "rsa_oaep_label": string,
  "reason": string,
  "wrapped_private_key": string
}
फ़ील्ड
authentication

string

यह आइडेंटिटी प्रोवाइडर (IdP) की ओर से जारी किया गया JWT है. इससे यह पता चलता है कि उपयोगकर्ता कौन है. पुष्टि करने वाले टोकन देखें.

authorization

string

यह एक JWT है. इससे यह पुष्टि होती है कि उपयोगकर्ता को resource_name के लिए कुंजी को अनरैप करने की अनुमति है. अनुमति देने वाले टोकन देखें.

algorithm

string

एन्वलप एन्क्रिप्शन में, डेटा एन्क्रिप्शन की (डीईके) को एन्क्रिप्ट यानी सुरक्षित करने के लिए इस्तेमाल किया गया एल्गोरिदम.

encrypted_data_encryption_key

string (UTF-8)

Base64-एन्कोड की गई, एन्क्रिप्ट (सुरक्षित) किए गए कॉन्टेंट को एन्क्रिप्ट (सुरक्षित) करने के लिए इस्तेमाल की जाने वाली कुंजी. इसे निजी कुंजी से जुड़ी सार्वजनिक कुंजी का इस्तेमाल करके एन्क्रिप्ट (सुरक्षित) किया जाता है. ज़्यादा से ज़्यादा साइज़: 1 केबी.

rsa_oaep_label

string

अगर एल्गोरिदम RSAES-OAEP है, तो Base64 में एन्कोड किया गया लेबल L. अगर एल्गोरिदम RSAES-OAEP नहीं है, तो इस फ़ील्ड को अनदेखा कर दिया जाता है.

reason

string (UTF-8)

यह एक पासथ्रू JSON स्ट्रिंग है. इससे ऑपरेशन के बारे में अतिरिक्त जानकारी मिलती है. दिखाने से पहले, दिए गए JSON को सैनिटाइज़ किया जाना चाहिए. ज़्यादा से ज़्यादा साइज़: 1 केबी.

wrapped_private_key

string

Base64 कोड में बदली गई रैप की गई निजी कुंजी. ज़्यादा से ज़्यादा साइज़: 8 केबी.

निजी कुंजी या रैप की गई निजी कुंजी का फ़ॉर्मैट, कुंजी ऐक्सेस कंट्रोल लिस्ट सर्विस (केएसीएलएस) के लागू होने पर निर्भर करता है. क्लाइंट और Gmail, दोनों ही इसे अपारदर्शी ब्लब के तौर पर मानते हैं.

जवाब का मुख्य भाग

अगर अनुरोध सही से काम करता है, तो यह तरीका base64 डेटा एन्क्रिप्शन कुंजी दिखाता है.

अगर ऑपरेशन पूरा नहीं होता है, तो स्ट्रक्चर्ड गड़बड़ी वाला जवाब मिलता है.

JSON के काेड में दिखाना
{
  "data_encryption_key": string
}
फ़ील्ड
data_encryption_key

string

Base64 में कोड में बदली गई डेटा एन्क्रिप्शन की.

उदाहरण

इस उदाहरण में, privatekeydecrypt तरीके के लिए अनुरोध और जवाब का सैंपल दिया गया है.

अनुरोध

POST https://mykacls.example.org/v1/privatekeydecrypt

{
  "wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
  "encrypted_data_encryption_key": "dGVzdCB3cmFwcGVkIGRlaw...",
  "authorization": "eyJhbGciOi...",
  "authentication": "eyJhbGciOi...",
  "algorithm": "RSA/ECB/PKCS1Padding",
  "reason": "decrypt"
}

जवाब

{
  "data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}