CryptographyClient class
Клиент, используемый для выполнения криптографических операций с ключом Azure Key Vault или локальным ключом JsonWebKey.
Конструкторы
Cryptography |
Создает новый экземпляр клиента шифрования для заданного ключа в локальном режиме. Пример использования:
|
Cryptography |
Создает новый экземпляр клиента шифрования для заданного ключа. Пример использования:
|
Свойства
keyID | Идентификатор ключа, используемого для выполнения криптографических операций для клиента. |
vault |
Базовый URL-адрес хранилища. Если используется локальный JsonWebKey , vaultUrl будет пустым. |
Методы
decrypt(Decrypt |
Расшифровывает указанный зашифрованный текст с указанными параметрами расшифровки. В зависимости от алгоритма, используемого в параметрах расшифровки, набор возможных параметров расшифровки изменится. Корпорация Майкрософт рекомендует не использовать CBC без предварительного обеспечения целостности зашифрованного текста с помощью, например, HMAC. Подробнее см. в разделе https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode. Пример использования:
|
decrypt(string, Uint8Array, Decrypt |
Расшифровывает указанный зашифрованный текст с помощью указанного алгоритма шифрования. Пример использования:
Корпорация Майкрософт рекомендует не использовать CBC без предварительного обеспечения целостности зашифрованного текста с помощью, например, HMAC. Подробнее см. в разделе https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode. |
encrypt(Encrypt |
Шифрует заданный открытый текст с указанными параметрами шифрования. В зависимости от алгоритма, заданного в параметрах шифрования, набор возможных параметров шифрования будет меняться. Пример использования:
|
encrypt(string, Uint8Array, Encrypt |
Шифрует заданный открытый текст с помощью указанного алгоритма шифрования. Пример использования:
|
sign(string, Uint8Array, Sign |
Криптографическое подписывание дайджеста сообщения Пример использования:
|
sign |
Криптографическая подпись блока данных Пример использования:
|
unwrap |
Распаковывает заданный ключ в оболочке с помощью указанного алгоритма шифрования. Пример использования:
|
verify(string, Uint8Array, Uint8Array, Verify |
Проверка дайджеста подписанного сообщения Пример использования:
|
verify |
Проверка подписанного блока данных Пример использования:
|
wrap |
Заключает заданный ключ в оболочку с помощью указанного алгоритма шифрования. Пример использования:
|
Сведения о конструкторе
CryptographyClient(JsonWebKey_2)
Создает новый экземпляр клиента шифрования для заданного ключа в локальном режиме.
Пример использования:
import { CryptographyClient } from "@azure/keyvault-keys";
const jsonWebKey: JsonWebKey = {
// ...
};
const client = new CryptographyClient(jsonWebKey);
new CryptographyClient(key: JsonWebKey_2)
Параметры
- key
- JsonWebKey
JsonWebKey, используемый во время операций шифрования.
CryptographyClient(string | KeyVaultKey, TokenCredential, CryptographyClientOptions)
Создает новый экземпляр клиента шифрования для заданного ключа.
Пример использования:
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";
import { DefaultAzureCredential } from "@azure/identity";
let vaultUrl = `https://<MY KEYVAULT HERE>.vault.azure.net`;
let credentials = new DefaultAzureCredential();
let keyClient = new KeyClient(vaultUrl, credentials);
let keyVaultKey = await keyClient.getKey("MyKey");
let client = new CryptographyClient(keyVaultKey.id, credentials);
// or
let client = new CryptographyClient(keyVaultKey, credentials);
new CryptographyClient(key: string | KeyVaultKey, credential: TokenCredential, pipelineOptions?: CryptographyClientOptions)
Параметры
- key
-
string | KeyVaultKey
Ключ, используемый во время выполнения задач шифрования. Здесь также можно передать идентификатор ключа, т. е. его URL-адрес.
- credential
- TokenCredential
Объект , реализующий интерфейс, используемый TokenCredential
для проверки подлинности запросов к службе.
@azure/identity Используйте пакет для создания учетных данных, которые соответствуют вашим потребностям.
- pipelineOptions
- CryptographyClientOptions
Параметры конвейера, используемые для настройки Key Vault запросов API. Пропустите этот параметр, чтобы использовать конфигурацию конвейера по умолчанию.
Сведения о свойстве
keyID
Идентификатор ключа, используемого для выполнения криптографических операций для клиента.
undefined | string keyID
Значение свойства
undefined | string
vaultUrl
Базовый URL-адрес хранилища. Если используется локальный JsonWebKey , vaultUrl будет пустым.
string vaultUrl
Значение свойства
string
Сведения о методе
decrypt(DecryptParameters, DecryptOptions)
Расшифровывает указанный зашифрованный текст с указанными параметрами расшифровки. В зависимости от алгоритма, используемого в параметрах расшифровки, набор возможных параметров расшифровки изменится.
Корпорация Майкрософт рекомендует не использовать CBC без предварительного обеспечения целостности зашифрованного текста с помощью, например, HMAC. Подробнее см. в разделе https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode.
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.decrypt({ algorithm: "RSA1_5", ciphertext: encryptedBuffer });
let result = await client.decrypt({ algorithm: "A256GCM", iv: ivFromEncryptResult, authenticationTag: tagFromEncryptResult });
function decrypt(decryptParameters: DecryptParameters, options?: DecryptOptions): Promise<DecryptResult>
Параметры
- decryptParameters
- DecryptParameters
Параметры расшифровки.
- options
- DecryptOptions
Дополнительные параметры.
Возвращаемое значение
Promise<DecryptResult>
decrypt(string, Uint8Array, DecryptOptions)
Предупреждение
Теперь этот API является нерекомендуемым.
Use decrypt({ algorithm, ciphertext }, options)
instead.
Расшифровывает указанный зашифрованный текст с помощью указанного алгоритма шифрования.
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.decrypt("RSA1_5", encryptedBuffer);
Корпорация Майкрософт рекомендует не использовать CBC без предварительного обеспечения целостности зашифрованного текста с помощью, например, HMAC. Подробнее см. в разделе https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode.
function decrypt(algorithm: string, ciphertext: Uint8Array, options?: DecryptOptions): Promise<DecryptResult>
Параметры
- algorithm
-
string
Используемый алгоритм.
- ciphertext
-
Uint8Array
Текст для расшифровки.
- options
- DecryptOptions
Дополнительные параметры.
Возвращаемое значение
Promise<DecryptResult>
encrypt(EncryptParameters, EncryptOptions)
Шифрует заданный открытый текст с указанными параметрами шифрования. В зависимости от алгоритма, заданного в параметрах шифрования, набор возможных параметров шифрования будет меняться.
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.encrypt({ algorithm: "RSA1_5", plaintext: Buffer.from("My Message")});
let result = await client.encrypt({ algorithm: "A256GCM", plaintext: Buffer.from("My Message"), additionalAuthenticatedData: Buffer.from("My authenticated data")});
function encrypt(encryptParameters: EncryptParameters, options?: EncryptOptions): Promise<EncryptResult>
Параметры
- encryptParameters
- EncryptParameters
Параметры шифрования, ключом для выбранного алгоритма шифрования.
- options
- EncryptOptions
Дополнительные параметры.
Возвращаемое значение
Promise<EncryptResult>
encrypt(string, Uint8Array, EncryptOptions)
Предупреждение
Теперь этот API является нерекомендуемым.
Use encrypt({ algorithm, plaintext }, options)
instead.
Шифрует заданный открытый текст с помощью указанного алгоритма шифрования.
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.encrypt("RSA1_5", Buffer.from("My Message"));
function encrypt(algorithm: string, plaintext: Uint8Array, options?: EncryptOptions): Promise<EncryptResult>
Параметры
- algorithm
-
string
Используемый алгоритм.
- plaintext
-
Uint8Array
Текст для шифрования.
- options
- EncryptOptions
Дополнительные параметры.
Возвращаемое значение
Promise<EncryptResult>
sign(string, Uint8Array, SignOptions)
Криптографическое подписывание дайджеста сообщения
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.sign("RS256", digest);
function sign(algorithm: string, digest: Uint8Array, options?: SignOptions): Promise<SignResult>
Параметры
- algorithm
-
string
Используемый алгоритм подписывания.
- digest
-
Uint8Array
Дайджест подписываемых данных.
- options
- SignOptions
Дополнительные параметры.
Возвращаемое значение
Promise<SignResult>
signData(string, Uint8Array, SignOptions)
Криптографическая подпись блока данных
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.signData("RS256", message);
function signData(algorithm: string, data: Uint8Array, options?: SignOptions): Promise<SignResult>
Параметры
- algorithm
-
string
Используемый алгоритм подписывания.
- data
-
Uint8Array
Подписываемые данные.
- options
- SignOptions
Дополнительные параметры.
Возвращаемое значение
Promise<SignResult>
unwrapKey(KeyWrapAlgorithm, Uint8Array, UnwrapKeyOptions)
Распаковывает заданный ключ в оболочке с помощью указанного алгоритма шифрования.
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.unwrapKey("RSA1_5", keyToUnwrap);
function unwrapKey(algorithm: KeyWrapAlgorithm, encryptedKey: Uint8Array, options?: UnwrapKeyOptions): Promise<UnwrapResult>
Параметры
- algorithm
- KeyWrapAlgorithm
Алгоритм расшифровки, используемый для распаковки ключа.
- encryptedKey
-
Uint8Array
Зашифрованный ключ для распаковки.
- options
- UnwrapKeyOptions
Дополнительные параметры.
Возвращаемое значение
Promise<UnwrapResult>
verify(string, Uint8Array, Uint8Array, VerifyOptions)
Проверка дайджеста подписанного сообщения
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.verify("RS256", signedDigest, signature);
function verify(algorithm: string, digest: Uint8Array, signature: Uint8Array, options?: VerifyOptions): Promise<VerifyResult>
Параметры
- algorithm
-
string
Алгоритм подписывания, используемый для проверки.
- digest
-
Uint8Array
Проверяемая сводка.
- signature
-
Uint8Array
Сигнатура для проверки хэша.
- options
- VerifyOptions
Дополнительные параметры.
Возвращаемое значение
Promise<VerifyResult>
verifyData(string, Uint8Array, Uint8Array, VerifyOptions)
Проверка подписанного блока данных
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.verifyData("RS256", signedMessage, signature);
function verifyData(algorithm: string, data: Uint8Array, signature: Uint8Array, options?: VerifyOptions): Promise<VerifyResult>
Параметры
- algorithm
-
string
Алгоритм, используемый для проверки.
- data
-
Uint8Array
Подписанный блок данных для проверки.
- signature
-
Uint8Array
Сигнатура для проверки блока.
- options
- VerifyOptions
Дополнительные параметры.
Возвращаемое значение
Promise<VerifyResult>
wrapKey(KeyWrapAlgorithm, Uint8Array, WrapKeyOptions)
Заключает заданный ключ в оболочку с помощью указанного алгоритма шифрования.
Пример использования:
let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.wrapKey("RSA1_5", keyToWrap);
function wrapKey(algorithm: KeyWrapAlgorithm, key: Uint8Array, options?: WrapKeyOptions): Promise<WrapResult>
Параметры
- algorithm
- KeyWrapAlgorithm
Алгоритм шифрования, используемый для упаковки заданного ключа.
- key
-
Uint8Array
Ключ для упаковки.
- options
- WrapKeyOptions
Дополнительные параметры.
Возвращаемое значение
Promise<WrapResult>