तरीका: Privatekeysign

रैप की गई निजी कुंजी को खोलें. इसके बाद, क्लाइंट से मिले डाइजेस्ट पर हस्ताक्षर करें.

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

POST https://BASE_URL/privatekeysign

BASE_URL को बेस यूआरएल से बदलें.

पाथ के पैरामीटर

कोई नहीं.

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

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

जेएसओएन के काेड में दिखाना
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "digest": string,
  "rsa_pss_salt_length": integer,
  "reason": string,
  "wrapped_private_key": string
}
फ़ील्ड
authentication

string

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

authorization

string

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

algorithm

string

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

digest

string

Base64 कोड में बदला गया मैसेज डाइजेस्ट. DER एन्कोड किए गए SignedAttributes का डाइजेस्ट. इस वैल्यू को पैड नहीं किया गया है. ज़्यादा से ज़्यादा साइज़: 128B

rsa_pss_salt_length

integer

(ज़रूरी नहीं) अगर सिग्नेचर एल्गोरिदम आरएसएएसएसए-पीएसएस है, तो नमक की लंबाई. अगर सिग्नेचर एल्गोरिदम आरएसएएसएसए-पीएसएस नहीं है, तो इस फ़ील्ड को अनदेखा कर दिया जाता है.

reason

string (UTF-8)

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

wrapped_private_key

string

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

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

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

अगर यह तरीका काम करता है, तो यह base64 कोड में बदला गया हस्ताक्षर दिखाता है.

अगर कार्रवाई नहीं हो पाती है, तो स्ट्रक्चर्ड गड़बड़ी का जवाब दिखाया जाता है.

जेएसओएन के काेड में दिखाना
{
  "signature": string
}
फ़ील्ड
signature

string

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=="
}