chrome.certificateProvider

বিবরণ

এই API ব্যবহার করে সার্টিফিকেটগুলিকে প্ল্যাটফর্মে প্রকাশ করুন যা TLS প্রমাণীকরণের জন্য এই সার্টিফিকেটগুলি ব্যবহার করতে পারে।

অনুমতিসমূহ

certificateProvider

উপস্থিতি

শুধুমাত্র Chrome 46+ ChromeOS

ব্যবহার

ChromeOS-এ ক্লায়েন্ট সার্টিফিকেট প্রকাশ করার জন্য এই API-এর সাধারণ ব্যবহার এই পদক্ষেপগুলি অনুসরণ করে:

  • এক্সটেনশনটি onCertificatesUpdateRequested এবং onSignatureRequested ইভেন্টগুলির জন্য নিবন্ধন করে।
  • এক্সটেনশনটি setCertificates কে ইনিশিয়ালাইজেশনের পরে সার্টিফিকেটের প্রাথমিক তালিকা প্রদানের জন্য কল করে।
  • এক্সটেনশনটি উপলব্ধ সার্টিফিকেটের তালিকার পরিবর্তনগুলি পর্যবেক্ষণ করে এবং প্রতিটি পরিবর্তন সম্পর্কে ব্রাউজারকে অবহিত করার জন্য setCertificates কল করে।
  • TLS হ্যান্ডশেকের সময়, ব্রাউজারটি একটি ক্লায়েন্ট সার্টিফিকেট অনুরোধ পায়। একটি onCertificatesUpdateRequested ইভেন্টের মাধ্যমে, ব্রাউজারটি এক্সটেনশনকে বর্তমানে প্রদত্ত সমস্ত সার্টিফিকেট রিপোর্ট করতে বলে।
  • এক্সটেনশনটি setCertificates পদ্ধতি ব্যবহার করে বর্তমানে উপলব্ধ সার্টিফিকেটগুলির সাথে রিপোর্ট করে।
  • ব্রাউজারটি রিমোট হোস্টের ক্লায়েন্ট সার্টিফিকেট অনুরোধের সাথে সমস্ত উপলব্ধ সার্টিফিকেটের সাথে মিলিত হয়। মিলগুলি ব্যবহারকারীর কাছে একটি নির্বাচন ডায়ালগে উপস্থাপন করা হয়।
  • ব্যবহারকারী একটি শংসাপত্র নির্বাচন করতে পারেন এবং এর মাধ্যমে প্রমাণীকরণ অনুমোদন করতে পারেন অথবা প্রমাণীকরণ বাতিল করতে পারেন।

সার্টিফিকেট নির্বাচনের ডায়ালগ

  • যদি ব্যবহারকারী প্রমাণীকরণ বাতিল করে দেয় অথবা অনুরোধের সাথে কোনও শংসাপত্র মেলে না, তাহলে TLS ক্লায়েন্ট প্রমাণীকরণ বাতিল করা হয়।
  • অন্যথায়, যদি ব্যবহারকারী এই এক্সটেনশন দ্বারা প্রদত্ত একটি শংসাপত্রের মাধ্যমে প্রমাণীকরণ অনুমোদন করে, তাহলে ব্রাউজারটি TLS হ্যান্ডশেক চালিয়ে যাওয়ার জন্য এক্সটেনশনকে ডেটা স্বাক্ষর করার অনুরোধ করবে। অনুরোধটি একটি onSignatureRequested ইভেন্ট হিসাবে পাঠানো হবে।
  • এই ইভেন্টে ইনপুট ডেটা থাকে, স্বাক্ষর তৈরি করতে কোন অ্যালগরিদম ব্যবহার করতে হবে তা ঘোষণা করে এবং এই এক্সটেনশন দ্বারা রিপোর্ট করা সার্টিফিকেটগুলির একটিকে উল্লেখ করে। এক্সটেনশনকে অবশ্যই রেফারেন্স করা সার্টিফিকেটের সাথে সম্পর্কিত ব্যক্তিগত কী ব্যবহার করে প্রদত্ত ডেটার জন্য একটি স্বাক্ষর তৈরি করতে হবে। স্বাক্ষর তৈরি করার জন্য একটি DigestInfo যোগ করতে হবে এবং প্রকৃত স্বাক্ষরের আগে ফলাফল প্যাড করতে হবে।
  • এক্সটেনশনটি reportSignature পদ্ধতি ব্যবহার করে ব্রাউজারে স্বাক্ষরটি ফেরত পাঠায়। যদি স্বাক্ষর গণনা করা না যায়, তাহলে স্বাক্ষর ছাড়াই পদ্ধতিটি কল করতে হবে।
  • যদি স্বাক্ষরটি প্রদান করা হয়ে থাকে, তাহলে ব্রাউজারটি TLS হ্যান্ডশেক সম্পন্ন করে।

ধাপগুলির প্রকৃত ক্রম ভিন্ন হতে পারে। উদাহরণস্বরূপ, যদি স্বয়ংক্রিয়ভাবে একটি সার্টিফিকেট নির্বাচন করার জন্য এন্টারপ্রাইজ নীতি ব্যবহার করা হয় তবে ব্যবহারকারীকে একটি সার্টিফিকেট নির্বাচন করতে বলা হবে না ( 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 no 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

ক্রোম ৮৬+

সমর্থিত ক্রিপ্টোগ্রাফিক স্বাক্ষর অ্যালগরিদমের প্রকারভেদ।

এনাম

"আরএসএএসএ_পিকেসিএস১_ভি১_৫_এমডি৫_এসএইচএ১"
MD5-SHA-1 হ্যাশিং সহ RSASSA PKCS#1 v1.5 স্বাক্ষর অ্যালগরিদম নির্দিষ্ট করে। এক্সটেনশনটিতে DigestInfo প্রিফিক্স যুক্ত করা উচিত নয় বরং শুধুমাত্র PKCS#1 প্যাডিং যোগ করা উচিত। এই অ্যালগরিদমটি বন্ধ করা হয়েছে এবং 109 সংস্করণ থেকে Chrome কখনই এটির জন্য অনুরোধ করবে না।

"আরএসএএসএ_পিকেসিএস১_ভি১_৫_এসএইচএ১"
SHA-1 হ্যাশ ফাংশন সহ RSASSA PKCS#1 v1.5 স্বাক্ষর অ্যালগরিদম নির্দিষ্ট করে।

"আরএসএএসএ_পিকেসিএস১_ভি১_৫_এসএইচএ২৫৬"
SHA-256 হ্যাশিং ফাংশন সহ RSASSA PKCS#1 v1.5 স্বাক্ষর অ্যালগরিদম নির্দিষ্ট করে।

"আরএসএএসএ_পিকেসিএস১_ভি১_৫_এসএইচএ৩৮৪"
SHA-384 হ্যাশিং ফাংশন সহ RSASSA PKCS#1 v1.5 স্বাক্ষর অ্যালগরিদম নির্দিষ্ট করে।

"আরএসএএসএ_পিকেসিএস১_ভি১_৫_এসএইচএ৫১২"
SHA-512 হ্যাশিং ফাংশন সহ RSASSA PKCS#1 v1.5 স্বাক্ষর অ্যালগরিদম নির্দিষ্ট করে।

"আরএসএএসএ_পিএসএস_এসএইচএ২৫৬"
SHA-256 হ্যাশিং ফাংশন, MGF1 মাস্ক জেনারেশন ফাংশন এবং হ্যাশের সমান আকারের লবণ সহ RSASSA PSS স্বাক্ষর অ্যালগরিদম নির্দিষ্ট করে।

"আরএসএএসএ_পিএসএস_এসএইচএ৩৮৪"
SHA-384 হ্যাশিং ফাংশন, MGF1 মাস্ক জেনারেশন ফাংশন এবং হ্যাশের সমান আকারের লবণ সহ RSASSA PSS স্বাক্ষর অ্যালগরিদম নির্দিষ্ট করে।

"আরএসএএসএ_পিএসএস_এসএইচএ৫১২"
SHA-512 হ্যাশিং ফাংশন, MGF1 মাস্ক জেনারেশন ফাংশন এবং হ্যাশের সমান আকারের লবণ সহ RSASSA PSS স্বাক্ষর অ্যালগরিদম নির্দিষ্ট করে।

CertificateInfo

বৈশিষ্ট্য

  • সার্টিফিকেট

    অ্যারেবাফার

    অবশ্যই X.509 সার্টিফিকেটের DER এনকোডিং হতে হবে। বর্তমানে, শুধুমাত্র RSA কীগুলির সার্টিফিকেট সমর্থিত।

  • সমর্থিত হ্যাশ

    এই সার্টিফিকেটের জন্য সমর্থিত সমস্ত হ্যাশে সেট করা আবশ্যক। এই এক্সটেনশনটি শুধুমাত্র এই হ্যাশ অ্যালগরিদমগুলির একটি দিয়ে গণনা করা ডাইজেস্টের স্বাক্ষরের জন্য জিজ্ঞাসা করা হবে। এটি হ্রাসকারী হ্যাশ পছন্দের ক্রম অনুসারে হওয়া উচিত।

CertificatesUpdateRequest

ক্রোম ৮৬+

বৈশিষ্ট্য

  • সার্টিফিকেট অনুরোধ আইডি

    সংখ্যা

    setCertificates এ পাস করার জন্য শনাক্তকারীর অনুরোধ করুন।

ClientCertificateInfo

ক্রোম ৮৬+

বৈশিষ্ট্য

  • সার্টিফিকেট চেইন

    অ্যারেবাফার[]

    অ্যারেতে অবশ্যই X.509 ক্লায়েন্ট সার্টিফিকেটের DER এনকোডিংটি তার প্রথম উপাদান হিসেবে থাকতে হবে।

    এর মধ্যে অবশ্যই একটি মাত্র সার্টিফিকেট অন্তর্ভুক্ত থাকতে হবে।

  • সমর্থিত অ্যালগরিদম

    এই শংসাপত্রের জন্য সমস্ত অ্যালগরিদম সমর্থিত। এক্সটেনশনটি কেবলমাত্র এই অ্যালগরিদমগুলির মধ্যে একটি ব্যবহার করে স্বাক্ষরের জন্য জিজ্ঞাসা করা হবে।

Error

ক্রোম ৮৬+

এক্সটেনশনটি যে ধরণের ত্রুটি রিপোর্ট করতে পারে।

মূল্য

"সাধারণ_ভুল"

Hash

বন্ধ করা হয়েছে। Algorithm দ্বারা প্রতিস্থাপিত হয়েছে।

এনাম

"MD5_SHA1"
MD5 এবং SHA1 হ্যাশিং অ্যালগরিদম নির্দিষ্ট করে।

"SHA1"
SHA1 হ্যাশিং অ্যালগরিদম নির্দিষ্ট করে।

"SHA256"
SHA256 হ্যাশিং অ্যালগরিদম নির্দিষ্ট করে।

"SHA384"
SHA384 হ্যাশিং অ্যালগরিদম নির্দিষ্ট করে।

"SHA512"
SHA512 হ্যাশিং অ্যালগরিদম নির্দিষ্ট করে।

PinRequestErrorType

ক্রোম ৫৭+

requestPin ফাংশনের মাধ্যমে ব্যবহারকারীর কাছে যে ধরণের ত্রুটি উপস্থাপন করা যেতে পারে।

এনাম

"ইনভ্যালিড_পিন"
পিনটি অবৈধ তা নির্দিষ্ট করে।

"অযোগ্য_পুক"
PUK অবৈধ তা নির্দিষ্ট করে।

"সর্বোচ্চ_ATTEMPTS_অতিরিক্ত"
সর্বোচ্চ প্রচেষ্টার সংখ্যা অতিক্রম করা হয়েছে তা নির্দিষ্ট করে।

"অজানা_ত্রুটি"
উল্লেখ করে যে উপরের প্রকারগুলি দ্বারা ত্রুটিটি উপস্থাপন করা যাবে না।

PinRequestType

ক্রোম ৫৭+

requestPin ফাংশন সহ এক্সটেনশন দ্বারা অনুরোধ করা কোডের ধরণ।

এনাম

"পিন"
অনুরোধ করা কোডটি একটি পিন হিসেবে উল্লেখ করে।

"পুক"
অনুরোধ করা কোডটি একটি PUK উল্লেখ করে।

PinResponseDetails

ক্রোম ৫৭+

বৈশিষ্ট্য

  • ব্যবহারকারীর ইনপুট

    স্ট্রিং ঐচ্ছিক

    ব্যবহারকারীর দেওয়া কোড। ব্যবহারকারী যদি ডায়ালগ বন্ধ করে দেন অথবা অন্য কোনও ত্রুটি ঘটে থাকে, তাহলে কোডটি খালি থাকবে।

ReportSignatureDetails

ক্রোম ৮৬+

বৈশিষ্ট্য

  • ত্রুটি

    "সাধারণ_ভুল"
    ঐচ্ছিক

    স্বাক্ষর তৈরি করার সময় কোন ত্রুটি ঘটেছে, যদি থাকে।

  • সাইনরিকোয়েস্টআইডি

    সংখ্যা

    onSignatureRequested ইভেন্টের মাধ্যমে প্রাপ্ত অনুরোধ শনাক্তকারী।

  • স্বাক্ষর

    অ্যারেবাফার ঐচ্ছিক

    স্বাক্ষর, যদি সফলভাবে তৈরি করা হয়।

RequestPinDetails

ক্রোম ৫৭+

বৈশিষ্ট্য

  • প্রচেষ্টাবাম

    সংখ্যা ঐচ্ছিক

    বাকি প্রচেষ্টার সংখ্যা। এটি এমনভাবে প্রদান করা হয়েছে যাতে যেকোনো UI ব্যবহারকারীর কাছে এই তথ্য উপস্থাপন করতে পারে। Chrome এটি প্রয়োগ করবে বলে আশা করা হয় না, পরিবর্তে পিন অনুরোধের সংখ্যা অতিক্রম করলে stopPinRequest কে errorType = MAX_ATTEMPTS_EXCEEDED দিয়ে এক্সটেনশন দ্বারা কল করা উচিত।

  • ত্রুটির ধরণ

    PinRequestErrorType ঐচ্ছিক

    ব্যবহারকারীকে ত্রুটির টেমপ্লেটটি দেখানো হয়েছে। পূর্ববর্তী অনুরোধটি ব্যর্থ হলে এটি সেট করা উচিত, যাতে ব্যবহারকারীকে ব্যর্থতার কারণ সম্পর্কে অবহিত করা যায়।

  • অনুরোধের ধরণ

    অনুরোধ করা কোডের ধরণ। ডিফল্ট হল PIN।

  • সাইনরিকোয়েস্টআইডি

    সংখ্যা

    SignRequest-এ Chrome দ্বারা প্রদত্ত আইডি।

SetCertificatesDetails

ক্রোম ৮৬+

বৈশিষ্ট্য

  • সার্টিফিকেট অনুরোধ আইডি

    সংখ্যা ঐচ্ছিক

    onCertificatesUpdateRequested এর উত্তরে কল করা হলে, প্রাপ্ত certificatesRequestId মান থাকা উচিত। অন্যথায়, আনসেট করা উচিত।

  • ক্লায়েন্ট সার্টিফিকেট

    বর্তমানে উপলব্ধ ক্লায়েন্ট সার্টিফিকেটের তালিকা।

  • ত্রুটি

    "সাধারণ_ভুল"
    ঐচ্ছিক

    সার্টিফিকেটগুলি বের করার সময় কোন ত্রুটি ঘটেছে, যদি থাকে। উপযুক্ত হলে ব্যবহারকারীর কাছে এই ত্রুটিটি জানানো হবে।

SignatureRequest

ক্রোম ৮৬+

বৈশিষ্ট্য

  • অ্যালগরিদম

    স্বাক্ষর অ্যালগরিদম ব্যবহার করতে হবে।

  • সার্টিফিকেট

    অ্যারেবাফার

    একটি X.509 সার্টিফিকেটের DER এনকোডিং। এক্সটেনশনটিকে সংশ্লিষ্ট ব্যক্তিগত কী ব্যবহার করে input সাইন করতে হবে।

  • ইনপুট

    অ্যারেবাফার

    স্বাক্ষরিত তথ্য। মনে রাখবেন যে তথ্যটি হ্যাশ করা হয়নি।

  • সাইনরিকোয়েস্টআইডি

    সংখ্যা

    reportSignature এ শনাক্তকারী পাস করার অনুরোধ করুন।

SignRequest

বৈশিষ্ট্য

  • সার্টিফিকেট

    অ্যারেবাফার

    একটি X.509 সার্টিফিকেটের DER এনকোডিং। এক্সটেনশনটিকে সংশ্লিষ্ট প্রাইভেট কী ব্যবহার করে digest সাইন করতে হবে।

  • ডাইজেস্ট করা

    অ্যারেবাফার

    যে ডাইজেস্টটিতে স্বাক্ষর করতে হবে।

  • হ্যাশ

    digest তৈরি করতে ব্যবহৃত হ্যাশ অ্যালগরিদমকে বোঝায়।

  • সাইনরিকোয়েস্টআইডি

    সংখ্যা

    ক্রোম ৫৭+

    এক্সটেনশনটি যে অনন্য আইডিটি ব্যবহার করবে, যদি এটি এমন কোনও পদ্ধতিতে কল করার প্রয়োজন হয় যার জন্য এটি প্রয়োজন, যেমন requestPin।

StopPinRequestDetails

ক্রোম ৫৭+

বৈশিষ্ট্য

  • ত্রুটির ধরণ

    PinRequestErrorType ঐচ্ছিক

    ত্রুটি টেমপ্লেট। যদি উপস্থিত থাকে তবে এটি ব্যবহারকারীর কাছে প্রদর্শিত হবে। যদি কোনও ত্রুটির কারণে প্রবাহ বন্ধ হয়ে থাকে, যেমন MAX_ATTEMPTS_EXCEEDED, তাহলে এর কারণ অন্তর্ভুক্ত করার উদ্দেশ্যে।

  • সাইনরিকোয়েস্টআইডি

    সংখ্যা

    SignRequest-এ Chrome দ্বারা প্রদত্ত আইডি।

পদ্ধতি

reportSignature()

প্রমিজ ক্রোম ৮৬+
chrome.certificateProvider.reportSignature(
  details: ReportSignatureDetails,
  callback?: function,
)
: Promise<void>

onSignatureRequested এর প্রতিক্রিয়া হিসেবে ডাকা উচিত।

এক্সটেনশনটিকে প্রতিটি onSignatureRequested ইভেন্টের জন্য অবশেষে এই ফাংশনটি কল করতে হবে; API বাস্তবায়ন কিছু সময় পরে এই কলের জন্য অপেক্ষা করা বন্ধ করবে এবং এই ফাংশনটি কল করা হলে একটি টাইমআউট ত্রুটি দেখাবে।

পরামিতি

রিটার্নস

  • প্রতিশ্রুতি<অকার্যকর>

    ক্রোম ৯৬+

    প্রতিশ্রুতিগুলি কেবল ম্যানিফেস্ট V3 এবং পরবর্তী সংস্করণগুলির জন্য সমর্থিত, অন্যান্য প্ল্যাটফর্মগুলিকে কলব্যাক ব্যবহার করতে হবে।

requestPin()

প্রমিজ ক্রোম ৫৭+
chrome.certificateProvider.requestPin(
  details: RequestPinDetails,
  callback?: function,
)
: Promise<PinResponseDetails | undefined>

ব্যবহারকারীর কাছ থেকে পিন অনুরোধ করে। একবারে কেবল একটি চলমান অনুরোধ অনুমোদিত। অন্য প্রবাহ চলমান থাকাকালীন জারি করা অনুরোধগুলি প্রত্যাখ্যান করা হয়। অন্য প্রবাহ চলমান থাকলে পরে আবার চেষ্টা করার দায়িত্ব এক্সটেনশনের।

পরামিতি

রিটার্নস

  • প্রতিশ্রুতি< পিনের জবাববিস্তারিত | অনির্ধারিত>

    ক্রোম ৯৬+

    ব্যবহারকারীর দ্বারা পিন প্রদান করা হলে সমাধান হয় এমন একটি প্রতিশ্রুতি প্রদান করে। ডায়ালগ অনুরোধটি ব্যর্থ হলে (যেমন ব্যবহারকারীর দ্বারা ডায়ালগটি বাতিল করা হয়েছিল বা দেখানোর অনুমতি দেওয়া হয়নি) ত্রুটি সহ প্রত্যাখ্যান করে।

    প্রতিশ্রুতিগুলি কেবল ম্যানিফেস্ট V3 এবং পরবর্তী সংস্করণগুলির জন্য সমর্থিত, অন্যান্য প্ল্যাটফর্মগুলিকে কলব্যাক ব্যবহার করতে হবে।

setCertificates()

প্রমিজ ক্রোম ৮৬+
chrome.certificateProvider.setCertificates(
  details: SetCertificatesDetails,
  callback?: function,
)
: Promise<void>

ব্রাউজারে ব্যবহারের জন্য সার্টিফিকেটের একটি তালিকা সেট করে।

এক্সটেনশনটি ইনিশিয়ালাইজেশনের পরে এবং বর্তমানে উপলব্ধ সার্টিফিকেটের সেটের প্রতিটি পরিবর্তনের পরে এই ফাংশনটি কল করবে। এই ইভেন্টটি প্রতিবার প্রাপ্ত হওয়ার সময় onCertificatesUpdateRequested এর প্রতিক্রিয়ায় এক্সটেনশনটি এই ফাংশনটি কল করবে।

পরামিতি

  • সেট করার জন্য সার্টিফিকেট। অবৈধ সার্টিফিকেট উপেক্ষা করা হবে।

  • কলব্যাক

    ঐচ্ছিক ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

    () => void

রিটার্নস

  • প্রতিশ্রুতি<অকার্যকর>

    ক্রোম ৯৬+

    একটি প্রতিশ্রুতি প্রদান করে যা সম্পূর্ণ হওয়ার পরে সমাধান হয়ে যায়।

    প্রতিশ্রুতিগুলি কেবল ম্যানিফেস্ট V3 এবং পরবর্তী সংস্করণগুলির জন্য সমর্থিত, অন্যান্য প্ল্যাটফর্মগুলিকে কলব্যাক ব্যবহার করতে হবে।

stopPinRequest()

প্রমিজ ক্রোম ৫৭+
chrome.certificateProvider.stopPinRequest(
  details: StopPinRequestDetails,
  callback?: function,
)
: Promise<void>

requestPin ফাংশন দ্বারা শুরু হওয়া পিন অনুরোধ বন্ধ করে।

পরামিতি

  • অনুরোধ প্রবাহ বন্ধ করার কারণ সম্পর্কে বিশদ বিবরণ রয়েছে।

  • কলব্যাক

    ঐচ্ছিক ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

    () => void

রিটার্নস

  • প্রতিশ্রুতি<অকার্যকর>

    ক্রোম ৯৬+

    একটি প্রতিশ্রুতি প্রদান করে যা পিন ডায়ালগ বন্ধ করার অনুরোধ সম্পূর্ণ হলে সমাধান হয়ে যায়।

    প্রতিশ্রুতিগুলি কেবল ম্যানিফেস্ট V3 এবং পরবর্তী সংস্করণগুলির জন্য সমর্থিত, অন্যান্য প্ল্যাটফর্মগুলিকে কলব্যাক ব্যবহার করতে হবে।

ইভেন্টগুলি

onCertificatesRequested

Chrome 47+ ≤ MV2 Chrome 86 থেকে বন্ধ করা হয়েছে
chrome.certificateProvider.onCertificatesRequested.addListener(
  callback: function,
)

পরিবর্তে onCertificatesUpdateRequested ব্যবহার করুন।

এই এক্সটেনশন দ্বারা প্রদত্ত বর্তমান সার্টিফিকেটের তালিকার জন্য ব্রাউজার যখনই অনুরোধ করে তখনই এই ইভেন্টটি চালু হয়। এক্সটেনশনটিকে বর্তমান সার্টিফিকেটের তালিকার সাথে ঠিক একবার reportCallback কল করতে হবে।

পরামিতি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

    (reportCallback: function) => void

    • রিপোর্ট কলব্যাক

      ফাংশন

      reportCallback প্যারামিটারটি দেখতে এরকম:

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

      • সার্টিফিকেট
      • কলব্যাক

        ফাংশন

        callback প্যারামিটারটি দেখতে এরকম:

        (rejectedCertificates: ArrayBuffer[]) => void

        • প্রত্যাখ্যাত সার্টিফিকেট

          অ্যারেবাফার[]

onCertificatesUpdateRequested

ক্রোম ৮৬+
chrome.certificateProvider.onCertificatesUpdateRequested.addListener(
  callback: function,
)

setCertificates এর মাধ্যমে সেট করা সার্টিফিকেটগুলি অপর্যাপ্ত হলে অথবা ব্রাউজার আপডেট করা তথ্যের জন্য অনুরোধ করলে এই ইভেন্টটি কার্যকর হয়। এক্সটেনশনটিকে অবশ্যই setCertificates কল করতে হবে যাতে সার্টিফিকেটের আপডেট তালিকা এবং প্রাপ্ত certificatesRequestId থাকে।

পরামিতি

onSignatureRequested

ক্রোম ৮৬+
chrome.certificateProvider.onSignatureRequested.addListener(
  callback: function,
)

এই এক্সটেনশনের setCertificates এর মাধ্যমে প্রদত্ত একটি সার্টিফিকেট ব্যবহার করে ব্রাউজারকে যখনই কোনও বার্তায় স্বাক্ষর করতে হয় তখনই এই ইভেন্টটি সক্রিয় হয়।

এক্সটেনশনটিকে যথাযথ অ্যালগরিদম এবং প্রাইভেট কী ব্যবহার করে request থেকে ইনপুট ডেটা স্বাক্ষর করতে হবে এবং প্রাপ্ত signRequestId সহ reportSignature কল করে এটি ফেরত দিতে হবে।

পরামিতি

onSignDigestRequested

≤ MV2 Chrome 86 থেকে বন্ধ করা হয়েছে
chrome.certificateProvider.onSignDigestRequested.addListener(
  callback: function,
)

পরিবর্তে onSignatureRequested ব্যবহার করুন।

onCertificatesRequested ইভেন্টের উত্তরে এই এক্সটেনশন দ্বারা প্রদত্ত একটি সার্টিফিকেট ব্যবহার করে ব্রাউজারকে যখনই কোনও বার্তায় স্বাক্ষর করতে হয় তখনই এই ইভেন্টটি সক্রিয় হয়। এক্সটেনশনটিকে যথাযথ অ্যালগরিদম এবং প্রাইভেট কী ব্যবহার করে request ডেটাতে স্বাক্ষর করতে হবে এবং reportCallback কল করে এটি ফেরত পাঠাতে হবে। reportCallback ঠিক একবার কল করতে হবে।

পরামিতি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

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

    • রিপোর্ট কলব্যাক

      ফাংশন

      ক্রোম ৪৭+

      reportCallback প্যারামিটারটি দেখতে এরকম:

      (signature?: ArrayBuffer) => void

      • স্বাক্ষর

        অ্যারেবাফার ঐচ্ছিক