Condividi tramite


CryptographyClient class

Un client usato per eseguire operazioni di crittografia in una chiave dell'insieme di credenziali delle chiavi di Azure o in jsonWebKey locale.

Costruttori

CryptographyClient(JsonWebKey_2)

Costruisce una nuova istanza del client di crittografia per la chiave specificata in modalità locale.

Esempio di utilizzo:

import { CryptographyClient } from "@azure/keyvault-keys";

const jsonWebKey: JsonWebKey = {
  // ...
};
const client = new CryptographyClient(jsonWebKey);
CryptographyClient(string | KeyVaultKey, TokenCredential, CryptographyClientOptions)

Costruisce una nuova istanza del client di crittografia per la chiave specificata

Esempio di utilizzo:

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);

Proprietà

keyID

ID della chiave usata per eseguire operazioni di crittografia per il client.

vaultUrl

URL di base dell'insieme di credenziali. Se viene usato un oggetto JsonWebKey locale, vaultUrl sarà vuoto.

Metodi

decrypt(DecryptParameters, DecryptOptions)

Decrittografa il testo crittografato specificato con i parametri di decrittografia specificati. A seconda dell'algoritmo usato nei parametri di decrittografia, il set di possibili parametri di decrittografia cambierà.

Microsoft consiglia di non usare CBC senza prima garantire l'integrità del testo crittografato usando, ad esempio, un HMAC. Per altre informazioni, vedere https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode.

Esempio di utilizzo:

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 });
decrypt(string, Uint8Array, DecryptOptions)

Decrittografa il testo crittografato specificato con l'algoritmo di crittografia specificato

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.decrypt("RSA1_5", encryptedBuffer);

Microsoft consiglia di non usare CBC senza prima garantire l'integrità del testo crittografato usando, ad esempio, un HMAC. Per altre informazioni, vedere https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode.

encrypt(EncryptParameters, EncryptOptions)

Crittografa il testo non crittografato specificato con i parametri di crittografia specificati. A seconda dell'algoritmo impostato nei parametri di crittografia, il set di possibili parametri di crittografia cambierà.

Esempio di utilizzo:

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")});
encrypt(string, Uint8Array, EncryptOptions)

Crittografa il testo non crittografato specificato con l'algoritmo di crittografia specificato

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.encrypt("RSA1_5", Buffer.from("My Message"));
sign(string, Uint8Array, SignOptions)

Firmare in modo crittografico il digest di un messaggio

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.sign("RS256", digest);
signData(string, Uint8Array, SignOptions)

Firmare in modo crittografico un blocco di dati

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.signData("RS256", message);
unwrapKey(KeyWrapAlgorithm, Uint8Array, UnwrapKeyOptions)

Annulla il wrapping della chiave specificata usando l'algoritmo di crittografia specificato

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.unwrapKey("RSA1_5", keyToUnwrap);
verify(string, Uint8Array, Uint8Array, VerifyOptions)

Verificare il digest dei messaggi firmati

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.verify("RS256", signedDigest, signature);
verifyData(string, Uint8Array, Uint8Array, VerifyOptions)

Verificare il blocco firmato di dati

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.verifyData("RS256", signedMessage, signature);
wrapKey(KeyWrapAlgorithm, Uint8Array, WrapKeyOptions)

Esegue il wrapping della chiave specificata usando l'algoritmo di crittografia specificato

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.wrapKey("RSA1_5", keyToWrap);

Dettagli costruttore

CryptographyClient(JsonWebKey_2)

Costruisce una nuova istanza del client di crittografia per la chiave specificata in modalità locale.

Esempio di utilizzo:

import { CryptographyClient } from "@azure/keyvault-keys";

const jsonWebKey: JsonWebKey = {
  // ...
};
const client = new CryptographyClient(jsonWebKey);
new CryptographyClient(key: JsonWebKey_2)

Parametri

key
JsonWebKey

JsonWebKey da usare durante le operazioni di crittografia.

CryptographyClient(string | KeyVaultKey, TokenCredential, CryptographyClientOptions)

Costruisce una nuova istanza del client di crittografia per la chiave specificata

Esempio di utilizzo:

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)

Parametri

key

string | KeyVaultKey

Chiave da usare durante le attività di crittografia. È anche possibile passare l'identificatore della chiave, ad esempio l'URL qui.

credential
TokenCredential

Oggetto che implementa l'interfaccia TokenCredential utilizzata per autenticare le richieste al servizio. Usare il @azure/identity pacchetto per creare credenziali adatte alle proprie esigenze.

pipelineOptions
CryptographyClientOptions

Opzioni della pipeline usate per configurare Key Vault richieste API. Omettere questo parametro per usare la configurazione della pipeline predefinita.

Dettagli proprietà

keyID

ID della chiave usata per eseguire operazioni di crittografia per il client.

undefined | string keyID

Valore della proprietà

undefined | string

vaultUrl

URL di base dell'insieme di credenziali. Se viene usato un oggetto JsonWebKey locale, vaultUrl sarà vuoto.

string vaultUrl

Valore della proprietà

string

Dettagli metodo

decrypt(DecryptParameters, DecryptOptions)

Decrittografa il testo crittografato specificato con i parametri di decrittografia specificati. A seconda dell'algoritmo usato nei parametri di decrittografia, il set di possibili parametri di decrittografia cambierà.

Microsoft consiglia di non usare CBC senza prima garantire l'integrità del testo crittografato usando, ad esempio, un HMAC. Per altre informazioni, vedere https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode.

Esempio di utilizzo:

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>

Parametri

decryptParameters
DecryptParameters

Parametri di decrittografia.

options
DecryptOptions

Opzioni aggiuntive.

Restituisce

Promise<DecryptResult>

decrypt(string, Uint8Array, DecryptOptions)

Avviso

Questa API è ora deprecata.

Use decrypt({ algorithm, ciphertext }, options) instead.

Decrittografa il testo crittografato specificato con l'algoritmo di crittografia specificato

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.decrypt("RSA1_5", encryptedBuffer);

Microsoft consiglia di non usare CBC senza prima garantire l'integrità del testo crittografato usando, ad esempio, un HMAC. Per altre informazioni, vedere https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode.

function decrypt(algorithm: string, ciphertext: Uint8Array, options?: DecryptOptions): Promise<DecryptResult>

Parametri

algorithm

string

Algoritmo da usare.

ciphertext

Uint8Array

Testo da decrittografare.

options
DecryptOptions

Opzioni aggiuntive.

Restituisce

Promise<DecryptResult>

encrypt(EncryptParameters, EncryptOptions)

Crittografa il testo non crittografato specificato con i parametri di crittografia specificati. A seconda dell'algoritmo impostato nei parametri di crittografia, il set di possibili parametri di crittografia cambierà.

Esempio di utilizzo:

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>

Parametri

encryptParameters
EncryptParameters

Parametri di crittografia, con chiave nell'algoritmo di crittografia scelto.

options
EncryptOptions

Opzioni aggiuntive.

Restituisce

Promise<EncryptResult>

encrypt(string, Uint8Array, EncryptOptions)

Avviso

Questa API è ora deprecata.

Use encrypt({ algorithm, plaintext }, options) instead.

Crittografa il testo non crittografato specificato con l'algoritmo di crittografia specificato

Esempio di utilizzo:

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>

Parametri

algorithm

string

Algoritmo da usare.

plaintext

Uint8Array

Testo da crittografare.

options
EncryptOptions

Opzioni aggiuntive.

Restituisce

Promise<EncryptResult>

sign(string, Uint8Array, SignOptions)

Firmare in modo crittografico il digest di un messaggio

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.sign("RS256", digest);
function sign(algorithm: string, digest: Uint8Array, options?: SignOptions): Promise<SignResult>

Parametri

algorithm

string

Algoritmo di firma da usare.

digest

Uint8Array

Digest dei dati da firmare.

options
SignOptions

Opzioni aggiuntive.

Restituisce

Promise<SignResult>

signData(string, Uint8Array, SignOptions)

Firmare in modo crittografico un blocco di dati

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.signData("RS256", message);
function signData(algorithm: string, data: Uint8Array, options?: SignOptions): Promise<SignResult>

Parametri

algorithm

string

Algoritmo di firma da usare.

data

Uint8Array

Dati da firmare.

options
SignOptions

Opzioni aggiuntive.

Restituisce

Promise<SignResult>

unwrapKey(KeyWrapAlgorithm, Uint8Array, UnwrapKeyOptions)

Annulla il wrapping della chiave specificata usando l'algoritmo di crittografia specificato

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.unwrapKey("RSA1_5", keyToUnwrap);
function unwrapKey(algorithm: KeyWrapAlgorithm, encryptedKey: Uint8Array, options?: UnwrapKeyOptions): Promise<UnwrapResult>

Parametri

algorithm
KeyWrapAlgorithm

Algoritmo di decrittografia da usare per annullare ilrap della chiave.

encryptedKey

Uint8Array

Chiave crittografata da annullare.

options
UnwrapKeyOptions

Opzioni aggiuntive.

Restituisce

Promise<UnwrapResult>

verify(string, Uint8Array, Uint8Array, VerifyOptions)

Verificare il digest dei messaggi firmati

Esempio di utilizzo:

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>

Parametri

algorithm

string

Algoritmo di firma da usare per verificare con.

digest

Uint8Array

Digest da verificare.

signature

Uint8Array

Firma da cui verificare il digest.

options
VerifyOptions

Opzioni aggiuntive.

Restituisce

Promise<VerifyResult>

verifyData(string, Uint8Array, Uint8Array, VerifyOptions)

Verificare il blocco firmato di dati

Esempio di utilizzo:

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>

Parametri

algorithm

string

Algoritmo da usare per verificare con.

data

Uint8Array

Blocco firmato di dati da verificare.

signature

Uint8Array

Firma da cui verificare il blocco.

options
VerifyOptions

Opzioni aggiuntive.

Restituisce

Promise<VerifyResult>

wrapKey(KeyWrapAlgorithm, Uint8Array, WrapKeyOptions)

Esegue il wrapping della chiave specificata usando l'algoritmo di crittografia specificato

Esempio di utilizzo:

let client = new CryptographyClient(keyVaultKey, credentials);
let result = await client.wrapKey("RSA1_5", keyToWrap);
function wrapKey(algorithm: KeyWrapAlgorithm, key: Uint8Array, options?: WrapKeyOptions): Promise<WrapResult>

Parametri

algorithm
KeyWrapAlgorithm

Algoritmo di crittografia da usare per eseguire il wrapping della chiave specificata.

key

Uint8Array

Chiave da eseguire a capo.

options
WrapKeyOptions

Opzioni aggiuntive.

Restituisce

Promise<WrapResult>