तरीका: privilegedprivatekeydecrypt

यह रैप की गई निजी कुंजी के ACL की जांच किए बिना डिक्रिप्ट करता है. इसका इस्तेमाल, Google से एक्सपोर्ट किए गए डेटा (takeout) को डिक्रिप्ट करने के लिए किया जाता है.

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

POST https://KACLS_URL/privilegedprivatekeydecrypt

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

पाथ पैरामीटर

कोई नहीं.

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

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

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

string

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

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 केबी.

spki_hash

string

ऐक्सेस की जा रही निजी कुंजी के DER कोड में बदले गए SubjectPublicKeyInfo का स्टैंडर्ड base64 कोड में बदला गया डाइजेस्ट.

spki_hash_algorithm

string

spki_hash को जनरेट करने के लिए इस्तेमाल किया गया एल्गोरिदम. "SHA-256" हो सकता है.

wrapped_private_key

string

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

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

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

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

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

string

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

उदाहरण

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

अनुरोध

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

{
  "wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
  "encrypted_data_encryption_key": "dGVzdCB3cmFwcGVkIGRlaw...",
  "authentication": "eyJhbGciOi...",
  "spki_hash": "LItGzrmjSFD57QdrY1dcLwYmSwBXzhQLAA6zVcen+r0=",
  "spki_hash_algorithm": "SHA-256",
  "algorithm": "RSA/ECB/PKCS1Padding",
  "reason": "admin decrypt"
}

जवाब

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