chrome.certificateProvider

refresh date: 2026-09-25 robots: noindex

ब्यौरा

इस एपीआई का इस्तेमाल करके, प्लैटफ़ॉर्म को सर्टिफ़िकेट दिखाए जा सकते हैं. प्लैटफ़ॉर्म, टीएलएस की पुष्टि करने के लिए इन सर्टिफ़िकेट का इस्तेमाल कर सकता है.

अनुमतियां

certificateProvider

उपलब्धता

Chrome 46 या इसके बाद का वर्शन सिर्फ़ ChromeOS के लिए

इस्तेमाल

ChromeOS को क्लाइंट सर्टिफ़िकेट दिखाने के लिए, इस एपीआई का इस्तेमाल आम तौर पर इस तरह किया जाता है:

  • एक्सटेंशन, onCertificatesUpdateRequested और onSignatureRequested इवेंट के लिए रजिस्टर करता है.
  • एक्सटेंशन, setCertificates को कॉल करता है, ताकि शुरू होने के बाद सर्टिफ़िकेट की शुरुआती सूची दी जा सके.
  • एक्सटेंशन, उपलब्ध सर्टिफ़िकेट की सूची में हुए बदलावों पर नज़र रखता है. साथ ही, इस तरह के हर बदलाव के बारे में ब्राउज़र को सूचना देने के लिए, setCertificates को कॉल करता है.
  • TLS हैंडशेक के दौरान, ब्राउज़र को क्लाइंट सर्टिफ़िकेट का अनुरोध मिलता है. onCertificatesUpdateRequested इवेंट की मदद से, ब्राउज़र एक्सटेंशन से उन सभी सर्टिफ़िकेट की जानकारी देने के लिए कहता है जो वह फ़िलहाल उपलब्ध कराता है.
  • एक्सटेंशन, setCertificates तरीके का इस्तेमाल करके, फ़िलहाल उपलब्ध सर्टिफ़िकेट की जानकारी देता है.
  • ब्राउज़र, रिमोट होस्ट से मिले क्लाइंट सर्टिफ़िकेट के अनुरोध के साथ, सभी उपलब्ध सर्टिफ़िकेट का मिलान करता है. उपयोगकर्ता को, चुनने के लिए एक डायलॉग बॉक्स में मैच दिखाए जाते हैं.
  • उपयोगकर्ता कोई सर्टिफ़िकेट चुन सकता है. इससे वह पुष्टि करने की प्रोसेस को स्वीकार कर सकता है या उसे रद्द कर सकता है.

सर्टिफ़िकेट चुनने का डायलॉग बॉक्स

  • अगर उपयोगकर्ता पुष्टि की प्रोसेस को बीच में ही रोक देता है या अनुरोध से कोई भी सर्टिफ़िकेट मेल नहीं खाता है, तो टीएलएस क्लाइंट की पुष्टि करने की प्रोसेस बंद हो जाती है.
  • हालांकि, अगर उपयोगकर्ता इस एक्सटेंशन से मिले सर्टिफ़िकेट से पुष्टि करने की अनुमति देता है, तो ब्राउज़र, एक्सटेंशन से डेटा पर हस्ताक्षर करने का अनुरोध करता है, ताकि टीएलएस हैंडशेक जारी रखा जा सके. अनुरोध को onSignatureRequested इवेंट के तौर पर भेजा जाता है.
  • इस इवेंट में इनपुट डेटा होता है. साथ ही, यह एलान किया जाता है कि हस्ताक्षर जनरेट करने के लिए किस एल्गोरिदम का इस्तेमाल करना है. इसके अलावा, यह उस सर्टिफ़िकेट में से किसी एक को रेफ़र करता है जिसकी शिकायत इस एक्सटेंशन ने की थी. एक्सटेंशन को दिए गए डेटा के लिए, रेफ़रंस किए गए सर्टिफ़िकेट से जुड़े निजी पासकोड का इस्तेमाल करके हस्ताक्षर बनाना होगा. हस्ताक्षर बनाने के लिए, हस्ताक्षर करने से पहले DigestInfo को जोड़ना और नतीजे में पैडिंग जोड़ना पड़ सकता है.
  • एक्सटेंशन, reportSignature तरीके का इस्तेमाल करके, हस्ताक्षर को ब्राउज़र पर वापस भेजता है. अगर हस्ताक्षर की गिनती नहीं की जा सकी, तो इस तरीके को बिना हस्ताक्षर के कॉल करना होगा.
  • अगर हस्ताक्षर दिया गया है, तो ब्राउज़र टीएलएस हैंडशेक पूरा करता है.

हालांकि, चरणों का क्रम अलग-अलग हो सकता है. उदाहरण के लिए, अगर सर्टिफ़िकेट को अपने-आप चुनने के लिए एंटरप्राइज़ नीति का इस्तेमाल किया जाता है, तो उपयोगकर्ता से सर्टिफ़िकेट चुनने के लिए नहीं कहा जाएगा. AutoSelectCertificateForUrls और उपयोगकर्ताओं के लिए Chrome नीतियां देखें.

एक्सटेंशन में, यह स्निपेट कुछ इस तरह दिख सकता है:

function collectAvailableCertificates() {
  // Return all certificates that this Extension can currently provide.
  // For example:
  return [{
    certificateChain: [new Uint8Array(...)],
    supportedAlgorithms: ['RSASSA_PKCS1_v1_5_SHA256']
  }];
}

// The Extension calls this function every time the currently available list of
// certificates changes, and also once after the Extension's initialization.
function onAvailableCertificatesChanged() {
  chrome.certificateProvider.setCertificates({
    clientCertificates: collectAvailableCertificates()
  });
}

function handleCertificatesUpdateRequest(request) {
  // Report the currently available certificates as a response to the request
  // event. This is important for supporting the case when the Extension is
  // unable to detect the changes proactively.
  chrome.certificateProvider.setCertificates({
    certificatesRequestId: request.certificatesRequestId,
    clientCertificates: collectAvailableCertificates()
  });
}

// Returns a private key handle for the given DER-encoded certificate.
// |certificate| is an ArrayBuffer.
function getPrivateKeyHandle(certificate) {...}

// Digests and signs |input| with the given private key. |input| is an
// ArrayBuffer. |algorithm| is an Algorithm.
// Returns the signature as ArrayBuffer.
function signUnhashedData(privateKey, input, algorithm) {...}

function handleSignatureRequest(request) {
  // Look up the handle to the private key of |request.certificate|.
  const key = getPrivateKeyHandle(request.certificate);
  if (!key) {
    // Handle if the key isn't available.
    console.error('Key for requested certificate not available.');

    // Abort the request by reporting the error to the API.
    chrome.certificateProvider.reportSignature({
      signRequestId: request.signRequestId,
      error: 'GENERAL_ERROR'
    });
    return;
  }

  const signature = signUnhashedData(key, request.input, request.algorithm);
  chrome.certificateProvider.reportSignature({
    signRequestId: request.signRequestId,
    signature: signature
  });
}

chrome.certificateProvider.onCertificatesUpdateRequested.addListener(
    handleCertificatesUpdateRequest);
chrome.certificateProvider.onSignatureRequested.addListener(
    handleSignatureRequest);

टाइप

Algorithm

Chrome 86 या इसके बाद के वर्शन

क्रिप्टोग्राफ़िक हस्ताक्षर के लिए इस्तेमाल किए जा सकने वाले एल्गोरिदम के टाइप.

Enum

"RSASSA_PKCS1_v1_5_MD5_SHA1"
यह MD5-SHA-1 हैशिंग के साथ RSASSA PKCS#1 v1.5 सिग्नेचर एल्गोरिदम के बारे में बताता है. एक्सटेंशन को DigestInfo प्रीफ़िक्स को पहले से नहीं जोड़ना चाहिए. हालांकि, यह सिर्फ़ PKCS#1 पैडिंग जोड़ सकता है. इस एल्गोरिदम का इस्तेमाल नहीं किया जा सकता. Chrome के वर्शन 109 और इसके बाद के वर्शन में, Chrome कभी भी इस एल्गोरिदम का अनुरोध नहीं करेगा.

"RSASSA_PKCS1_v1_5_SHA1"
यह SHA-1 हैश फ़ंक्शन के साथ RSASSA PKCS#1 v1.5 सिग्नेचर एल्गोरिदम के बारे में बताता है.

"RSASSA_PKCS1_v1_5_SHA256"
यह SHA-256 हैशिंग फ़ंक्शन के साथ RSASSA PKCS#1 v1.5 सिग्नेचर एल्गोरिदम के बारे में बताता है.

"RSASSA_PKCS1_v1_5_SHA384"
यह SHA-384 हैशिंग फ़ंक्शन के साथ RSASSA PKCS#1 v1.5 सिग्नेचर एल्गोरिदम के बारे में बताता है.

"RSASSA_PKCS1_v1_5_SHA512"
यह SHA-512 हैशिंग फ़ंक्शन के साथ RSASSA PKCS#1 v1.5 सिग्नेचर एल्गोरिदम के बारे में बताता है.

"RSASSA_PSS_SHA256"
यह SHA-256 हैशिंग फ़ंक्शन, MGF1 मास्क जनरेशन फ़ंक्शन, और हैश के बराबर साइज़ वाले सॉल्ट के साथ RSASSA PSS सिग्नेचर एल्गोरिदम के बारे में बताता है.

"RSASSA_PSS_SHA384"
यह SHA-384 हैशिंग फ़ंक्शन, MGF1 मास्क जनरेशन फ़ंक्शन, और हैश के बराबर साइज़ वाले सॉल्ट के साथ RSASSA PSS सिग्नेचर एल्गोरिदम के बारे में बताता है.

"RSASSA_PSS_SHA512"
यह SHA-512 हैशिंग फ़ंक्शन, MGF1 मास्क जनरेशन फ़ंक्शन, और हैश के बराबर साइज़ वाले सॉल्ट के साथ RSASSA PSS सिग्नेचर एल्गोरिदम के बारे में बताता है.

CertificateInfo

प्रॉपर्टी

  • सर्टिफ़िकेट

    ArrayBuffer

    यह X.509 सर्टिफ़िकेट का DER एन्कोडिंग होना चाहिए. फ़िलहाल, सिर्फ़ आरएसए कुंजियों के सर्टिफ़िकेट इस्तेमाल किए जा सकते हैं.

  • supportedHashes

    इसे इस सर्टिफ़िकेट के लिए काम करने वाले सभी हैश पर सेट किया जाना चाहिए. यह एक्सटेंशन, सिर्फ़ इन हैश एल्गोरिदम का इस्तेमाल करके कैलकुलेट किए गए डाइजेस्ट के हस्ताक्षर मांगेगा. यह हैश की प्राथमिकता के घटते क्रम में होना चाहिए.

CertificatesUpdateRequest

Chrome 86 या इसके बाद के वर्शन

प्रॉपर्टी

  • certificatesRequestId

    संख्या

    अनुरोध आइडेंटिफ़ायर को setCertificates को पास किया जाना चाहिए.

ClientCertificateInfo

Chrome 86 या इसके बाद के वर्शन

प्रॉपर्टी

  • certificateChain

    ArrayBuffer[]

    ऐरे में, X.509 क्लाइंट सर्टिफ़िकेट का DER एन्कोडिंग, पहले एलिमेंट के तौर पर होना चाहिए.

    इसमें सिर्फ़ एक सर्टिफ़िकेट शामिल होना चाहिए.

  • supportedAlgorithms

    इस सर्टिफ़िकेट के लिए काम करने वाले सभी एल्गोरिदम. एक्सटेंशन सिर्फ़ उन हस्ताक्षर के लिए मांगा जाएगा जिनमें इनमें से किसी एक एल्गोरिदम का इस्तेमाल किया गया है.

Error

Chrome 86 या इसके बाद के वर्शन

एक्सटेंशन, किस तरह की गड़बड़ियों की रिपोर्ट कर सकता है.

वैल्यू

"GENERAL_ERROR"

Hash

समर्थन नहीं होना या रुकना. Algorithm से बदला गया.

Enum

"MD5_SHA1"
MD5 और SHA1 हैशिंग एल्गोरिदम के बारे में बताता है.

"SHA1"
SHA1 हैशिंग एल्गोरिदम के बारे में बताता है.

"SHA256"
SHA256 हैशिंग एल्गोरिदम के बारे में बताता है.

"SHA384"
SHA384 हैशिंग एल्गोरिदम के बारे में बताता है.

"SHA512"
SHA512 हैशिंग एल्गोरिदम के बारे में बताता है.

PinRequestErrorType

Chrome 57 या इसके बाद का वर्शन

requestPin फ़ंक्शन के ज़रिए, उपयोगकर्ता को दिखाई जा सकने वाली गड़बड़ियों के टाइप.

Enum

"INVALID_PIN"
इससे पता चलता है कि पिन अमान्य है.

"INVALID_PUK"
इससे पता चलता है कि पीयूके अमान्य है.

"MAX_ATTEMPTS_EXCEEDED"
इससे पता चलता है कि पुष्टि कराने के लिए, तय की गई ज़्यादा से ज़्यादा कोशिशें की जा चुकी हैं.

"UNKNOWN_ERROR"
इससे पता चलता है कि गड़बड़ी को ऊपर दिए गए टाइप से नहीं दिखाया जा सकता.

PinRequestType

Chrome 57 या इसके बाद का वर्शन

यह उस कोड का टाइप होता है जिसके लिए एक्सटेंशन, requestPin फ़ंक्शन का इस्तेमाल करके अनुरोध कर रहा है.

Enum

"PIN"
इससे पता चलता है कि अनुरोध किया गया कोड, पिन है.

"PUK"
इससे पता चलता है कि अनुरोध किया गया कोड, PUK है.

PinResponseDetails

Chrome 57 या इसके बाद का वर्शन

प्रॉपर्टी

  • userInput

    string ज़रूरी नहीं है

    उपयोगकर्ता ने जो कोड दिया है. अगर उपयोगकर्ता ने डायलॉग बॉक्स बंद कर दिया है या कोई अन्य गड़बड़ी हुई है, तो यह फ़ील्ड खाली होता है.

ReportSignatureDetails

Chrome 86 या इसके बाद के वर्शन

प्रॉपर्टी

  • गड़बड़ी

    "GENERAL_ERROR"
     optional

    अगर हस्ताक्षर जनरेट करते समय कोई गड़बड़ी हुई है, तो उसकी जानकारी.

  • signRequestId

    संख्या

    यह onSignatureRequested इवेंट के ज़रिए मिला अनुरोध आइडेंटिफ़ायर होता है.

  • signature

    ArrayBuffer ज़रूरी नहीं है

    अगर हस्ताक्षर जनरेट हो गया है, तो वह हस्ताक्षर.

RequestPinDetails

Chrome 57 या इसके बाद का वर्शन

प्रॉपर्टी

  • attemptsLeft

    number optional

    बचे हुए अवसरों की संख्या. यह जानकारी इसलिए दी जाती है, ताकि कोई भी यूज़र इंटरफ़ेस (यूआई) इसे उपयोगकर्ता को दिखा सके. Chrome को इसे लागू नहीं करना चाहिए. इसके बजाय, जब पिन के अनुरोधों की संख्या ज़्यादा हो जाती है, तब एक्सटेंशन को stopPinRequest को errorType = MAX_ATTEMPTS_EXCEEDED के साथ कॉल करना चाहिए.

  • errorType

    PinRequestErrorType ज़रूरी नहीं है

    उपयोगकर्ता को दिखाया गया गड़बड़ी का टेंप्लेट. अगर पिछला अनुरोध पूरा नहीं हो सका है, तो इस पैरामीटर को सेट किया जाना चाहिए. इससे उपयोगकर्ता को अनुरोध पूरा न होने की वजह के बारे में सूचना दी जा सकेगी.

  • requestType

    PinRequestType ज़रूरी नहीं है

    अनुरोध किया गया कोड किस तरह का है. डिफ़ॉल्ट रूप से, पिन सेट होता है.

  • signRequestId

    संख्या

    SignRequest में Chrome का दिया गया आईडी.

SetCertificatesDetails

Chrome 86 या इसके बाद के वर्शन

प्रॉपर्टी

  • certificatesRequestId

    number optional

    onCertificatesUpdateRequested के जवाब में कॉल किए जाने पर, इसमें मिली certificatesRequestId वैल्यू शामिल होनी चाहिए. अगर वैल्यू 'कस्टम' पर सेट नहीं है, तो इसे 'अनसेट' के तौर पर सेट किया जाना चाहिए.

  • clientCertificates

    फ़िलहाल उपलब्ध क्लाइंट सर्टिफ़िकेट की सूची.

  • गड़बड़ी

    "GENERAL_ERROR"
     optional

    सर्टिफ़िकेट निकालते समय हुई गड़बड़ी. यह गड़बड़ी, उपयोगकर्ता को सही समय पर दिखेगी.

SignatureRequest

Chrome 86 या इसके बाद के वर्शन

प्रॉपर्टी

  • एल्‍गोरि‍दम

    इस्तेमाल किया जाने वाला सिग्नेचर एल्गोरिदम.

  • सर्टिफ़िकेट

    ArrayBuffer

    X.509 सर्टिफ़िकेट का DER एन्कोडिंग. एक्सटेंशन को, उससे जुड़े निजी पासकोड का इस्तेमाल करके input पर हस्ताक्षर करना होगा.

  • इनपुट

    ArrayBuffer

    जिस डेटा पर हस्ताक्षर करना है. ध्यान दें कि डेटा को हैश नहीं किया गया है.

  • signRequestId

    संख्या

    अनुरोध आइडेंटिफ़ायर को reportSignature को पास किया जाना चाहिए.

SignRequest

प्रॉपर्टी

  • सर्टिफ़िकेट

    ArrayBuffer

    X.509 सर्टिफ़िकेट का DER एन्कोडिंग. एक्सटेंशन को, उससे जुड़े निजी पासकोड का इस्तेमाल करके digest पर हस्ताक्षर करना होगा.

  • डाइजेस्ट

    ArrayBuffer

    वह डाइजेस्ट जिस पर हस्ताक्षर करना ज़रूरी है.

  • हैश

    यह उस हैश एल्गोरिदम को दिखाता है जिसका इस्तेमाल digest बनाने के लिए किया गया था.

  • signRequestId

    संख्या

    Chrome 57 या इसके बाद का वर्शन

    एक्सटेंशन को इस यूनीक आईडी का इस्तेमाल तब करना चाहिए, जब उसे किसी ऐसे तरीके को कॉल करने की ज़रूरत हो जिसके लिए इसकी ज़रूरत होती है. जैसे, requestPin.

StopPinRequestDetails

Chrome 57 या इसके बाद का वर्शन

प्रॉपर्टी

  • errorType

    PinRequestErrorType ज़रूरी नहीं है

    गड़बड़ी वाला टेंप्लेट. अगर यह मौजूद है, तो उपयोगकर्ता को दिखता है. इस फ़ील्ड में, फ़्लो को रोकने की वजह शामिल होती है.अगर फ़्लो को किसी गड़बड़ी की वजह से रोका गया है, तो इस फ़ील्ड में गड़बड़ी की जानकारी शामिल होती है. जैसे, MAX_ATTEMPTS_EXCEEDED.

  • signRequestId

    संख्या

    SignRequest में Chrome का दिया गया आईडी.

तरीके

reportSignature()

Promise Chrome 86 या इसके बाद के वर्शन
chrome.certificateProvider.reportSignature(
  details: ReportSignatureDetails,
  callback?: function,
)
: Promise<void>

इसे onSignatureRequested के जवाब के तौर पर कॉल किया जाना चाहिए.

एक्सटेंशन को हर onSignatureRequested इवेंट के लिए, इस फ़ंक्शन को कॉल करना होगा. एपीआई लागू करने की प्रोसेस, कुछ समय बाद इस कॉल का इंतज़ार करना बंद कर देगी. साथ ही, जब इस फ़ंक्शन को कॉल किया जाएगा, तब टाइम आउट की गड़बड़ी का जवाब देगी.

पैरामीटर

  • ब्यौरा
  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं है

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 96 और इसके बाद के वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

requestPin()

Promise Chrome 57+
chrome.certificateProvider.requestPin(
  details: RequestPinDetails,
  callback?: function,
)
: Promise<PinResponseDetails | undefined>

यह कुकी, उपयोगकर्ता से पिन का अनुरोध करती है. एक बार में सिर्फ़ एक अनुरोध किया जा सकता है. किसी दूसरे फ़्लो के चालू होने पर किए गए अनुरोधों को अस्वीकार कर दिया जाता है. अगर कोई दूसरा फ़्लो चल रहा है, तो एक्सटेंशन को बाद में फिर से कोशिश करनी होगी.

पैरामीटर

  • ब्यौरा

    इस कुकी में, अनुरोध किए गए डायलॉग बॉक्स के बारे में जानकारी होती है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं है

    callback पैरामीटर ऐसा दिखता है:

    (details?: PinResponseDetails) => void

रिटर्न

  • Promise<PinResponseDetails | undefined>

    Chrome 96 और इसके बाद के वर्शन

    यह एक प्रॉमिस दिखाता है. जब उपयोगकर्ता पिन डाल देता है, तब यह प्रॉमिस रिज़ॉल्व हो जाता है. अगर डायलॉग का अनुरोध पूरा नहीं होता है, तो गड़बड़ी के साथ अस्वीकार करता है. उदाहरण के लिए, अगर उपयोगकर्ता ने डायलॉग रद्द कर दिया है या उसे दिखाने की अनुमति नहीं दी गई है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

setCertificates()

Promise Chrome 86 या इसके बाद के वर्शन
chrome.certificateProvider.setCertificates(
  details: SetCertificatesDetails,
  callback?: function,
)
: Promise<void>

यह नीति, ब्राउज़र में इस्तेमाल किए जाने वाले सर्टिफ़िकेट की सूची सेट करती है.

एक्सटेंशन को इस फ़ंक्शन को, शुरू होने के बाद और फ़िलहाल उपलब्ध सर्टिफ़िकेट के सेट में हर बदलाव होने पर कॉल करना चाहिए. जब भी यह इवेंट मिलता है, तो एक्सटेंशन को onCertificatesUpdateRequested के जवाब में इस फ़ंक्शन को कॉल करना चाहिए.

पैरामीटर

  • ब्यौरा

    सेट किए जाने वाले सर्टिफ़िकेट. अमान्य सर्टिफ़िकेट को अनदेखा कर दिया जाएगा.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं है

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 96 और इसके बाद के वर्शन

    यह एक प्रॉमिस दिखाता है, जो प्रोसेस पूरी होने पर रिज़ॉल्व हो जाता है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

stopPinRequest()

Promise Chrome 57+
chrome.certificateProvider.stopPinRequest(
  details: StopPinRequestDetails,
  callback?: function,
)
: Promise<void>

यह requestPin फ़ंक्शन से शुरू किए गए पिन के अनुरोध को रोकता है.

पैरामीटर

  • ब्यौरा

    इस कुकी में, अनुरोध के फ़्लो को रोकने की वजह के बारे में जानकारी होती है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं है

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 96 और इसके बाद के वर्शन

    यह एक प्रॉमिस दिखाता है. यह प्रॉमिस तब पूरा होता है, जब पिन डायलॉग बॉक्स को बंद करने का अनुरोध पूरा हो जाता है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

इवेंट

onCertificatesRequested

Chrome 47 और इसके बाद के वर्शन &leq; MV2 Chrome 86 के बाद से काम नहीं करता
chrome.certificateProvider.onCertificatesRequested.addListener(
  callback: function,
)

इसके बजाय, onCertificatesUpdateRequested का इस्तेमाल करें.

यह इवेंट तब ट्रिगर होता है, जब ब्राउज़र इस एक्सटेंशन से मिले मौजूदा सर्टिफ़िकेट की सूची का अनुरोध करता है. एक्सटेंशन को, सर्टिफ़िकेट की मौजूदा सूची के साथ reportCallback को सिर्फ़ एक बार कॉल करना होगा.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (reportCallback: function) => void

    • reportCallback

      फ़ंक्शन

      reportCallback पैरामीटर ऐसा दिखता है:

      (certificates: CertificateInfo[], callback: function) => void

      • सर्टिफ़िकेट
      • कॉलबैक

        फ़ंक्शन

        callback पैरामीटर ऐसा दिखता है:

        (rejectedCertificates: ArrayBuffer[]) => void

        • rejectedCertificates

          ArrayBuffer[]

onCertificatesUpdateRequested

Chrome 86 या इसके बाद के वर्शन
chrome.certificateProvider.onCertificatesUpdateRequested.addListener(
  callback: function,
)

यह इवेंट तब ट्रिगर होता है, जब setCertificates के ज़रिए सेट किए गए सर्टिफ़िकेट काफ़ी नहीं होते या ब्राउज़र अपडेट की गई जानकारी का अनुरोध करता है. एक्सटेंशन को, सर्टिफ़िकेट की अपडेट की गई सूची और मिले हुए certificatesRequestId के साथ setCertificates को कॉल करना होगा.

पैरामीटर

onSignatureRequested

Chrome 86 या इसके बाद के वर्शन
chrome.certificateProvider.onSignatureRequested.addListener(
  callback: function,
)

यह इवेंट तब ट्रिगर होता है, जब ब्राउज़र को setCertificates के ज़रिए इस एक्सटेंशन से मिले सर्टिफ़िकेट का इस्तेमाल करके किसी मैसेज पर हस्ताक्षर करना होता है.

एक्सटेंशन को request से मिले इनपुट डेटा पर सही एल्गोरिदम और निजी कुंजी का इस्तेमाल करके हस्ताक्षर करना होगा. साथ ही, मिले हुए signRequestId के साथ reportSignature को कॉल करके, इसे वापस भेजना होगा.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (request: SignatureRequest) => void

onSignDigestRequested

&leq; MV2 Chrome 86 से बंद कर दिया गया है
chrome.certificateProvider.onSignDigestRequested.addListener(
  callback: function,
)

इसके बजाय, onSignatureRequested का इस्तेमाल करें.

यह इवेंट तब ट्रिगर होता है, जब ब्राउज़र को onCertificatesRequested इवेंट के जवाब में, इस एक्सटेंशन से मिले सर्टिफ़िकेट का इस्तेमाल करके किसी मैसेज पर हस्ताक्षर करना होता है. एक्सटेंशन को सही एल्गोरिदम और निजी कुंजी का इस्तेमाल करके, request में मौजूद डेटा पर हस्ताक्षर करना होगा. इसके बाद, reportCallback को कॉल करके इसे वापस भेजना होगा. reportCallback को सिर्फ़ एक बार कॉल किया जाना चाहिए.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (request: SignRequest, reportCallback: function) => void

    • CANNOT TRANSLATE
    • reportCallback

      फ़ंक्शन

      Chrome 47 या इसके बाद का वर्शन

      reportCallback पैरामीटर ऐसा दिखता है:

      (signature?: ArrayBuffer) => void

      • signature

        ArrayBuffer ज़रूरी नहीं है