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