Spec-Zone.ru › Web APIs

CryptoKey: свойство type

Базовая реализация Широко доступна

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS), в некоторых или во всех поддерживающих браузерах.

Примечание: Эта функция доступна в Web Workers.

Только для чтения type свойство интерфейса CryptoKey указывает, какой тип ключа представлен объектом. Оно может принимать следующие значения:

  • "secret": Этот ключ является секретным ключом для использования с симметричным алгоритмом.
  • "private": Этот ключ — приватная часть асимметричного алгоритма CryptoKeyPair.
  • "public": Этот ключ — публичная часть асимметричного алгоритма CryptoKeyPair.

Значение

Одно из следующих строк: "secret", "private", или "public".

Примеры

Эта функция проверяет сообщение с помощью SubtleCrypto.verify() и публичного ключа, переданного в качестве параметра. Если ключ не является публичным, она всегда возвращает "invalid", так как такая проверка фундаментально небезопасна.

async function verifyMessage(publicKey) {
  const signatureValue = document.querySelector(
    ".rsassa-pkcs1 .signature-value",
  );
  signatureValue.classList.remove("valid", "invalid");

  let result = false; // By default, it is invalid

  if (publicKey.type === "public") {
    const encoded = getMessageEncoding();
    result = await window.crypto.subtle.verify(
      "RSASSA-PKCS1-v1_5",
      publicKey,
      signature,
      encoded,
    );
  }

  signatureValue.classList.add(result ? "valid" : "invalid");
}

Спецификации

Спецификация
API криптографии веб
# dom-cryptokey-type

Совместимость браузеров

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на iOS Samsung Internet WebView Android
type 37 12 34 24 7 37 34 24 7 3.0 37

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CryptoKey/type

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API