ब्यौरा
इन कुंजियों के लिए कुंजियां जनरेट करने और सर्टिफ़िकेट इंस्टॉल करने के लिए, chrome.enterprise.platformKeys
एपीआई का इस्तेमाल करें. सर्टिफ़िकेट को प्लैटफ़ॉर्म मैनेज करेगा. इनका इस्तेमाल, टीएलएस की पुष्टि करने, नेटवर्क ऐक्सेस करने या chrome.platformKeys के ज़रिए किसी दूसरे एक्सटेंशन के लिए किया जा सकता है.
अनुमतियां
enterprise.platformKeys
उपलब्धता
कॉन्सेप्ट और इस्तेमाल
क्लाइंट सर्टिफ़िकेट को रजिस्टर करने के लिए, इस एपीआई का इस्तेमाल करने का सामान्य तरीका यह है:
enterprise.platformKeys.getTokens()
का इस्तेमाल करके, सभी उपलब्ध टोकन पाएं."user"
के बराबरid
वाला टोकन खोजें. इसके बाद, इस टोकन का इस्तेमाल करें.generateKey()
टोकन के तरीके (SubtleCrypto में बताया गया है) का इस्तेमाल करके, कुंजी का जोड़ा जनरेट करें. इससे बटन का हैंडल वापस आ जाएगा.टोकन
exportKey()
वाले तरीके का इस्तेमाल करके सार्वजनिक पासकोड को एक्सपोर्ट करें. इसके बारे में Subtleक्रिप्ट में बताया गया है.sign()
टोकन तरीके का इस्तेमाल करके, सर्टिफ़िकेशन के अनुरोध के डेटा पर हस्ताक्षर बनाएं. इसकी जानकारी Subtleक्रिप्ट में दी गई है.सर्टिफ़िकेशन का अनुरोध पूरा करें और इसे सर्टिफ़िकेट देने वाली संस्था या निकाय को भेजें.
अगर आपको सर्टिफ़िकेट मिलता है, तो [
enterprise.platformKeys.importCertificate()
`[3] का इस्तेमाल करके उसे इंपोर्ट करें
यहां एक उदाहरण दिया गया है, जिसमें सर्टिफ़िकेशन का अनुरोध करने और उसे भेजने के अलावा, एपीआई के अहम इंटरैक्शन दिखाया गया है:
function getUserToken(callback) {
chrome.enterprise.platformKeys.getTokens(function(tokens) {
for (var i = 0; i < tokens.length; i++) {
if (tokens[i].id == "user") {
callback(tokens[i]);
return;
}
}
callback(undefined);
});
}
function generateAndSign(userToken) {
var data = new Uint8Array([0, 5, 1, 2, 3, 4, 5, 6]);
var algorithm = {
name: "RSASSA-PKCS1-v1_5",
// RsaHashedKeyGenParams
modulusLength: 2048,
publicExponent:
new Uint8Array([0x01, 0x00, 0x01]), // Equivalent to 65537
hash: {
name: "SHA-256",
}
};
var cachedKeyPair;
userToken.subtleCrypto.generateKey(algorithm, false, ["sign"])
.then(function(keyPair) {
cachedKeyPair = keyPair;
return userToken.subtleCrypto.exportKey("spki", keyPair.publicKey);
},
console.log.bind(console))
.then(function(publicKeySpki) {
// Build the Certification Request using the public key.
return userToken.subtleCrypto.sign(
{name : "RSASSA-PKCS1-v1_5"}, cachedKeyPair.privateKey, data);
},
console.log.bind(console))
.then(function(signature) {
// Complete the Certification Request with |signature|.
// Send out the request to the CA, calling back
// onClientCertificateReceived.
},
console.log.bind(console));
}
function onClientCertificateReceived(userToken, certificate) {
chrome.enterprise.platformKeys.importCertificate(userToken.id, certificate);
}
getUserToken(generateAndSign);
टाइप
Algorithm
जनरेट की जाने वाली कुंजी का टाइप.
Enum
"RSA"
ChallengeKeyOptions
प्रॉपर्टी
-
चैलेंज
ArrayBuffer
Verified Access Web API से मिलने वाला चैलेंज.
-
registerKey
RegisterKeyOptions ज़रूरी नहीं है
अगर मौजूद है, तो चुनौती वाली कुंजी को दिए गए
scope
के टोकन के साथ रजिस्टर करता है. इसके बाद, कुंजी को किसी सर्टिफ़िकेट के साथ जोड़ा जा सकता है और उसे किसी भी दूसरे साइनिंग पासकोड की तरह इस्तेमाल किया जा सकता है. इस फ़ंक्शन को बाद में किए जाने वाले कॉल, तय किए गएscope
में एक नई एंटरप्राइज़ कुंजी जनरेट करेंगे. -
दायरा
आपको किस एंटरप्राइज़ पासकोड पर चुनौती देनी है.
RegisterKeyOptions
प्रॉपर्टी
-
एल्गोरिदम
रजिस्टर की गई कुंजी को किस एल्गोरिदम का इस्तेमाल करना चाहिए.
Scope
एंटरप्राइज़ उपयोगकर्ता कुंजी या एंटरप्राइज़ मशीन कुंजी में से किसका इस्तेमाल करना है.
Enum
Token
प्रॉपर्टी
-
आईडी
स्ट्रिंग
इस
Token
की खास तौर पर पहचान करता है.स्टैटिक आईडी
"user"
और"system"
होते हैं. ये प्लैटफ़ॉर्म के खास उपयोगकर्ताओं के लिए होते हैं और पूरे सिस्टम के हार्डवेयर टोकन के बारे में बताते हैं.enterprise.platformKeys.getTokens
से, अन्य आइडेंटिफ़ायर वाले अन्य टोकन भी दिखाए जा सकते हैं. -
softwareBackedSubtleCrypto
SubtleCrypto
Chrome 97 और उसके बाद के वर्शनWebCrypto के SubtleCrypto इंटरफ़ेस को लागू करता है. क्रिप्टोग्राफ़िक ऑपरेशन, सॉफ़्टवेयर पर आधारित होते हैं. जैसे, पासकोड जनरेट करना. कुंजियों की सुरक्षा और निकाले न जा सकने वाली प्रॉपर्टी को लागू करने का काम, सॉफ़्टवेयर में किया जाता है. इसलिए, ये कुंजियां, हार्डवेयर पर सेव की जाने वाली कुंजियों के मुकाबले कम सुरक्षित होती हैं.
सिर्फ़ ऐसी RSASSA-PKCS1-V1_5 कुंजियां जनरेट की जा सकती हैं जिन्हें निकाला न जा सके. साथ ही, इन कुंजियों में
modulusLength
की वैल्यू 2048 तक होनी चाहिए. हर कुंजी का इस्तेमाल ज़्यादा से ज़्यादा एक बार डेटा पर हस्ताक्षर करने के लिए किया जा सकता है.किसी खास
Token
पर जनरेट की गई कुंजियों का इस्तेमाल, किसी दूसरे टोकन के साथ नहीं किया जा सकता. साथ ही, इनका इस्तेमालwindow.crypto.subtle
के साथ भी नहीं किया जा सकता. इसी तरह,window.crypto.subtle
का इस्तेमाल करके बनाए गएKey
ऑब्जेक्ट का इस्तेमाल, इस इंटरफ़ेस के साथ नहीं किया जा सकता. -
subtleCrypto
SubtleCrypto
WebCrypto के SubtleCrypto इंटरफ़ेस को लागू करता है. क्रिप्टोग्राफ़िक ऑपरेशन, हार्डवेयर पर किए जाते हैं. इसमें, पासकोड जनरेट करने की प्रोसेस भी शामिल है.
सिर्फ़ ऐसी RSASSA-PKCS1-V1_5 कुंजियां जनरेट की जा सकती हैं जिन्हें निकाला न जा सके. इन कुंजियों में
modulusLength
2048 तक और ECDSA मेंnamedCurve
P-256 तक हो सकता है. हर कुंजी का इस्तेमाल ज़्यादा से ज़्यादा एक बार डेटा पर हस्ताक्षर करने के लिए किया जा सकता है.किसी खास
Token
पर जनरेट की गई कुंजियों का इस्तेमाल, न तो किसी दूसरे टोकन के साथ किया जा सकता है और न हीwindow.crypto.subtle
के साथ किया जा सकता है. साथ ही,window.crypto.subtle
का इस्तेमाल करके बनाए गएKey
ऑब्जेक्ट, इस इंटरफ़ेस के साथ इस्तेमाल नहीं किए जा सकते.
तरीके
challengeKey()
chrome.enterprise.platformKeys.challengeKey(
options: ChallengeKeyOptions,
callback?: function,
)
challengeMachineKey
और challengeUserKey
की तरह ही है. हालांकि, इसमें रजिस्टर की गई कुंजी के एल्गोरिदम की जानकारी दी जा सकती है. यह हार्डवेयर की मदद से काम करने वाली एंटरप्राइज़ मशीन कुंजी को चुनौती देता है और रिमोट पुष्टि करने वाले प्रोटोकॉल के हिस्से के तौर पर जवाब देता है. यह सुविधा सिर्फ़ ChromeOS पर काम करती है. साथ ही, यह Verified Access Web API के साथ काम करती है, जो चैलेंज जनरेट करता है और रिस्पॉन्स की पुष्टि करता है.
वेरिफ़ाइड ऐक्सेस वेब एपीआई से पुष्टि होने का मतलब है कि मौजूदा डिवाइस एक मान्य ChromeOS डिवाइस है, मौजूदा डिवाइस को पुष्टि के दौरान तय किया गया डोमेन मैनेज करता है, साइन-इन किए हुए मौजूदा उपयोगकर्ता को पुष्टि के दौरान तय किया गया डोमेन मैनेज करता है, और डिवाइस की मौजूदा स्थिति एंटरप्राइज़ डिवाइस नीति का पालन करती है. उदाहरण के लिए, किसी नीति में यह बताया जा सकता है कि डिवाइस को डेवलपर मोड में नहीं होना चाहिए. पुष्टि करने पर मिली डिवाइस आइडेंटिटी, मौजूदा डिवाइस के हार्डवेयर से पूरी तरह जुड़ी होती है. अगर "user"
दायरा तय किया गया है, तो पहचान, साइन-इन किए हुए मौजूदा उपयोगकर्ता से भी पूरी तरह से जुड़ी होती है.
यह फ़ंक्शन पूरी तरह प्रतिबंधित है. अगर मौजूदा डिवाइस को मैनेज नहीं किया गया है, मौजूदा उपयोगकर्ता को मैनेज नहीं किया जा रहा है या इसे एंटरप्राइज़ डिवाइस नीति से कॉलर के लिए साफ़ तौर पर चालू नहीं किया गया है, तो यह फ़ंक्शन काम नहीं करेगा. जिस पासकोड पर चैलेंज किया गया है वह "system"
या "user"
टोकन में मौजूद नहीं होता. साथ ही, उसे किसी दूसरे एपीआई से ऐक्सेस नहीं किया जा सकता.
पैरामीटर
-
विकल्प
ऑब्जेक्ट में,
ChallengeKeyOptions
में तय किए गए फ़ील्ड शामिल हैं. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर इस तरह दिखता है:(response: ArrayBuffer) => void
-
जवाब
ArrayBuffer
चुनौती का जवाब.
-
रिटर्न
-
Promise<ArrayBuffer>
मंज़ूरी बाकी हैमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
challengeMachineKey()
chrome.enterprise.platformKeys.challengeMachineKey(
challenge: ArrayBuffer,
registerKey?: boolean,
callback?: function,
)
इसके बजाय, challengeKey
का इस्तेमाल करें.
यह हार्डवेयर की मदद से काम करने वाली एंटरप्राइज़ मशीन कुंजी को चुनौती देता है और रिमोट पुष्टि करने वाले प्रोटोकॉल के हिस्से के तौर पर जवाब देता है. यह सिर्फ़ ChromeOS पर और 'पुष्टि किया हुआ ऐक्सेस' वेब एपीआई के साथ काम आता है. यह एपीआई, चैलेंज जारी करता है और जवाबों की पुष्टि करता है. वेरिफ़ाइड ऐक्सेस वेब एपीआई की मदद से पुष्टि होने पर, इन सभी बातों का ध्यान रखा जा सकता है: * मौजूदा डिवाइस एक मान्य ChromeOS डिवाइस है. * मौजूदा डिवाइस को पुष्टि के दौरान बताए गए डोमेन से मैनेज किया जाता है. * साइन इन किए हुए मौजूदा उपयोगकर्ता को, पुष्टि के दौरान बताए गए डोमेन से मैनेज किया जाता है. * डिवाइस की मौजूदा स्थिति, एंटरप्राइज़ से जुड़ी डिवाइस नीति के मुताबिक है. उदाहरण के लिए, किसी नीति में यह बताया जा सकता है कि डिवाइस को डेवलपर मोड में नहीं होना चाहिए. * पुष्टि के दौरान मिलने वाली डिवाइस की पहचान, मौजूदा डिवाइस के हार्डवेयर से बहुत ज़्यादा जुड़ी होती है. इस फ़ंक्शन पर काफ़ी पाबंदियां हैं. अगर मौजूदा डिवाइस को मैनेज नहीं किया जा रहा है, मौजूदा उपयोगकर्ता को मैनेज नहीं किया जा रहा है या एंटरप्राइज़ डिवाइस की नीति के तहत, कॉल करने वाले के लिए यह कार्रवाई साफ़ तौर पर चालू नहीं की गई है, तो यह काम नहीं करेगा. एंटरप्राइज़ मशीन पासकोड, "system"
टोकन में मौजूद नहीं होता और किसी दूसरे एपीआई से ऐक्सेस नहीं किया जा सकता.
पैरामीटर
-
चैलेंज
ArrayBuffer
Verified Access Web API से मिलने वाला चैलेंज.
-
registerKey
बूलियन ज़रूरी नहीं
Chrome 59 और उसके बाद के वर्शनअगर यह सेट है, तो मौजूदा एंटरप्राइज़ मशीन पासकोड को
"system"
टोकन के साथ रजिस्टर किया जाता है और एंटरप्राइज़ मशीन पासकोड की भूमिका छोड़ दी जाती है. इसके बाद, पासकोड को किसी सर्टिफ़िकेट से जोड़ा जा सकता है और किसी भी अन्य साइनिंग पासकोड की तरह इस्तेमाल किया जा सकता है. यह पासकोड, 2048-बिट आरएसए है. इस फ़ंक्शन को बाद में किए जाने वाले कॉल, एक नई Enterprise Machine Key जनरेट करेंगे. -
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर इस तरह दिखता है:(response: ArrayBuffer) => void
-
जवाब
ArrayBuffer
चुनौती का जवाब.
-
रिटर्न
-
Promise<ArrayBuffer>
मंज़ूरी बाकी हैमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
challengeUserKey()
chrome.enterprise.platformKeys.challengeUserKey(
challenge: ArrayBuffer,
registerKey: boolean,
callback?: function,
)
इसके बजाय, challengeKey
का इस्तेमाल करें.
यह हार्डवेयर की मदद से काम करने वाली एंटरप्राइज़ उपयोगकर्ता कुंजी को चुनौती देता है और रिमोट पुष्टि करने वाले प्रोटोकॉल के हिस्से के तौर पर जवाब देता है. यह सुविधा सिर्फ़ ChromeOS पर काम करती है. साथ ही, यह Verified Access Web API के साथ काम करती है, जो चैलेंज जनरेट करता है और रिस्पॉन्स की पुष्टि करता है. वेरिफ़ाइड ऐक्सेस वेब एपीआई की मदद से पुष्टि होने पर, इन सभी बातों का ध्यान रखा जा सकता है: * मौजूदा डिवाइस एक मान्य ChromeOS डिवाइस है. * मौजूदा डिवाइस को, पुष्टि के दौरान बताए गए डोमेन से मैनेज किया जाता है. * साइन-इन किए हुए मौजूदा उपयोगकर्ता को पुष्टि के दौरान तय किए गए डोमेन से मैनेज किया जाता है. * डिवाइस की मौजूदा स्थिति, एंटरप्राइज़ की उपयोगकर्ता नीति के मुताबिक है. उदाहरण के लिए, किसी नीति में यह बताया जा सकता है कि डिवाइस को डेवलपर मोड में नहीं होना चाहिए. * पुष्टि करने की प्रोसेस के दौरान मिलने वाली सार्वजनिक कुंजी, मौजूदा डिवाइस के हार्डवेयर और साइन इन किए हुए मौजूदा उपयोगकर्ता से बहुत ज़्यादा जुड़ी होती है. इस फ़ंक्शन पर काफ़ी पाबंदियां हैं. अगर मौजूदा डिवाइस को मैनेज नहीं किया जा रहा है, मौजूदा उपयोगकर्ता को मैनेज नहीं किया जा रहा है या एंटरप्राइज़ उपयोगकर्ता नीति के तहत, कॉल करने वाले के लिए यह कार्रवाई साफ़ तौर पर चालू नहीं की गई है, तो यह काम नहीं करेगा. Enterprise उपयोगकर्ता कुंजी, "user"
टोकन में मौजूद नहीं होती है. साथ ही, इसे किसी दूसरे एपीआई से ऐक्सेस नहीं किया जा सकता.
पैरामीटर
-
चैलेंज
ArrayBuffer
Verified Access Web API से मिलने वाला चैलेंज.
-
registerKey
बूलियन
अगर नीति को सेट किया जाता है, तो मौजूदा 'एंटरप्राइज़ उपयोगकर्ता कुंजी',
"user"
टोकन के साथ रजिस्टर किया जाता है. साथ ही, एंटरप्राइज़ उपयोगकर्ता कुंजी की भूमिका को छोड़ देता है. इसके बाद, पासकोड को किसी सर्टिफ़िकेट से जोड़ा जा सकता है और किसी भी अन्य साइनिंग पासकोड की तरह इस्तेमाल किया जा सकता है. यह कुंजी 2048-बिट आरएसए है. इसके बाद, इस फ़ंक्शन को फिर से कॉल करने पर, एक नई Enterprise User Key जनरेट होगी. -
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(response: ArrayBuffer) => void
-
जवाब
ArrayBuffer
चुनौती का जवाब.
-
रिटर्न
-
Promise<ArrayBuffer>
मंज़ूरी बाकी हैमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
getCertificates()
chrome.enterprise.platformKeys.getCertificates(
tokenId: string,
callback?: function,
)
दिए गए टोकन से उपलब्ध सभी क्लाइंट सर्टिफ़िकेट की सूची दिखाता है. इसका इस्तेमाल ऐसे क्लाइंट सर्टिफ़िकेट के मौजूद होने और उनकी समयसीमा खत्म होने की जांच करने के लिए किया जा सकता है जिनका इस्तेमाल, पुष्टि करने के लिए किया जा सकता है.
पैरामीटर
-
tokenId
स्ट्रिंग
getTokens
से मिले टोकन का आईडी. -
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(certificates: ArrayBuffer[]) => void
-
सर्टिफ़िकेट
ArrayBuffer[]
सर्टिफ़िकेट की सूची, जिसमें हर सर्टिफ़िकेट का DER एन्कोडिंग पता होता है. यह कोड X.509 सर्टिफ़िकेट का होता है.
-
रिटर्न
-
Promise<ArrayBuffer[]>
मंज़ूरी बाकी हैमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
getTokens()
chrome.enterprise.platformKeys.getTokens(
callback?: function,
)
उपलब्ध टोकन दिखाता है. सामान्य उपयोगकर्ता के सेशन में, सूची में हमेशा id
"user"
वाले उपयोगकर्ता का टोकन होगा. अगर पूरे सिस्टम के लिए टीपीएम टोकन उपलब्ध है, तो दिखाई गई सूची में id
"system"
वाला पूरा सिस्टम टोकन भी शामिल होगा. इस डिवाइस (जैसे, Chromebook) पर सभी सेशन के लिए, सिस्टम-वाइड टोकन एक ही होगा.
पैरामीटर
रिटर्न
-
Promise<Token[]>
मंज़ूरी बाकी हैमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
importCertificate()
chrome.enterprise.platformKeys.importCertificate(
tokenId: string,
certificate: ArrayBuffer,
callback?: function,
)
अगर सर्टिफ़ाइड पासकोड पहले से ही इस टोकन में सेव है, तो दिए गए टोकन में certificate
को इंपोर्ट करता है. सर्टिफ़िकेशन का अनुरोध स्वीकार होने के बाद, इस फ़ंक्शन का इस्तेमाल, मिले सर्टिफ़िकेट को सेव करने के लिए किया जाना चाहिए. साथ ही, इसे ऑपरेटिंग सिस्टम और ब्राउज़र में उपलब्ध कराने के लिए भी किया जाना चाहिए, ताकि पुष्टि की जा सके.
पैरामीटर
-
tokenId
स्ट्रिंग
getTokens
से मिले टोकन का आईडी. -
सर्टिफ़िकेट
ArrayBuffer
X.509 सर्टिफ़िकेट की DER एन्कोडिंग.
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर इस तरह दिखता है:() => void
रिटर्न
-
Promise<void>
मंज़ूरी बाकी हैमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
removeCertificate()
chrome.enterprise.platformKeys.removeCertificate(
tokenId: string,
certificate: ArrayBuffer,
callback?: function,
)
अगर दिए गए टोकन में certificate
मौजूद है, तो उसे हटा देता है. इसका इस्तेमाल, पुराने सर्टिफ़िकेट हटाने के लिए किया जाना चाहिए. ऐसा इसलिए, ताकि पुष्टि करते समय इन पर विचार न किया जाए और सर्टिफ़िकेट के विकल्प पर कोई असर न पड़े. इसका इस्तेमाल सर्टिफ़िकेट स्टोर में स्टोरेज खाली करने के लिए किया जाना चाहिए.
पैरामीटर
-
tokenId
स्ट्रिंग
getTokens
से मिले टोकन का आईडी. -
सर्टिफ़िकेट
ArrayBuffer
X.509 सर्टिफ़िकेट की DER एन्कोडिंग.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
मंज़ूरी बाकी हैमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में, दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.