مشاركة عبر


CryptographyClient class

عميل يستخدم لتنفيذ عمليات التشفير على مفتاح Azure Key vault أو JsonWebKey المحلي.

المنشئون

CryptographyClient(JsonWebKey)

إنشاء مثيل جديد لعميل التشفير للمفتاح المحدد في الوضع المحلي.

مثال على الاستخدام:

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

const jsonWebKey = {
  kty: "RSA",
  kid: "test-key-123",
  use: "sig",
  alg: "RS256",
  n: new Uint8Array([112, 34, 56, 98, 123, 244, 200, 99]),
  e: new Uint8Array([1, 0, 1]),
  d: new Uint8Array([45, 67, 89, 23, 144, 200, 76, 233]),
  p: new Uint8Array([34, 89, 100, 77, 204, 56, 29, 77]),
  q: new Uint8Array([78, 99, 201, 45, 188, 34, 67, 90]),
  dp: new Uint8Array([23, 45, 78, 56, 200, 144, 32, 67]),
  dq: new Uint8Array([12, 67, 89, 144, 99, 56, 23, 45]),
  qi: new Uint8Array([78, 90, 45, 201, 34, 67, 120, 55]),
};
const client = new CryptographyClient(jsonWebKey);
CryptographyClient(string | KeyVaultKey, TokenCredential, CryptographyClientOptions)

إنشاء مثيل جديد لعميل التشفير للمفتاح المحدد

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

// Create or retrieve a key from the keyvault
const myKey = await client.createKey("MyKey", "RSA");

// Lastly, create our cryptography client and connect to the service
const cryptographyClient = new CryptographyClient(myKey, credential);

الخصائص

keyID

معرف المفتاح المستخدم لتنفيذ عمليات التشفير للعميل.

vaultUrl

عنوان URL الأساسي للمخزن. إذا تم استخدام JsonWebKey محلية، فسيكون vaultUrl فارغا.

الأساليب

decrypt(DecryptParameters, DecryptOptions)

فك تشفير النص المشفر المحدد باستخدام معلمات فك التشفير المحددة. اعتمادا على الخوارزمية المستخدمة في معلمات فك التشفير، ستتغير مجموعة معلمات فك التشفير المحتملة.

توصي Microsoft بعدم استخدام CBC دون التأكد أولا من تكامل النص المشفر باستخدام، على سبيل المثال، HMAC. راجع https://learn.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode لمزيد من المعلومات.

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey.id, credential);

const encryptResult = await cryptographyClient.encrypt({
  algorithm: "RSA1_5",
  plaintext: Buffer.from("My Message"),
});
console.log("encrypt result: ", encryptResult.result);

const decryptResult = await cryptographyClient.decrypt({
  algorithm: "RSA1_5",
  ciphertext: encryptResult.result,
});
console.log("decrypt result: ", decryptResult.result.toString());
decrypt(string, Uint8Array, DecryptOptions)

فك تشفير النص المشفر المحدد باستخدام خوارزمية التشفير المحددة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey.id, credential);

const encryptResult = await cryptographyClient.encrypt({
  algorithm: "RSA1_5",
  plaintext: Buffer.from("My Message"),
});
console.log("encrypt result: ", encryptResult.result);

const decryptResult = await cryptographyClient.decrypt({
  algorithm: "RSA1_5",
  ciphertext: encryptResult.result,
});
console.log("decrypt result: ", decryptResult.result.toString());

توصي Microsoft بعدم استخدام CBC دون التأكد أولا من تكامل النص المشفر باستخدام، على سبيل المثال، HMAC. راجع https://learn.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode لمزيد من المعلومات.

encrypt(EncryptParameters, EncryptOptions)

تشفير النص العادي المحدد بمعلمات التشفير المحددة. اعتمادا على الخوارزمية التي تم تعيينها في معلمات التشفير، ستتغير مجموعة معلمات التشفير المحتملة.

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey.id, credential);

const encryptResult = await cryptographyClient.encrypt({
  algorithm: "RSA1_5",
  plaintext: Buffer.from("My Message"),
});
console.log("encrypt result: ", encryptResult.result);
encrypt(string, Uint8Array, EncryptOptions)

تشفير النص العادي المحدد باستخدام خوارزمية التشفير المحددة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey.id, credential);

const encryptResult = await cryptographyClient.encrypt({
  algorithm: "RSA1_5",
  plaintext: Buffer.from("My Message"),
});
console.log("encrypt result: ", encryptResult.result);
sign(string, Uint8Array, SignOptions)

توقيع ملخص رسالة بشكل مشفر

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";
import { createHash } from "node:crypto";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

let myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const signatureValue = "MySignature";
const hash = createHash("sha256");

const digest = hash.update(signatureValue).digest();
console.log("digest: ", digest);

const signResult = await cryptographyClient.sign("RS256", digest);
console.log("sign result: ", signResult.result);
signData(string, Uint8Array, SignOptions)

توقيع كتلة من البيانات بشكل مشفر

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const signResult = await cryptographyClient.signData("RS256", Buffer.from("My Message"));
console.log("sign result: ", signResult.result);
unwrapKey(KeyWrapAlgorithm, Uint8Array, UnwrapKeyOptions)

فك تشفير المفتاح الملتف المحدد باستخدام خوارزمية التشفير المحددة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const wrapResult = await cryptographyClient.wrapKey("RSA-OAEP", Buffer.from("My Key"));
console.log("wrap result:", wrapResult.result);

const unwrapResult = await cryptographyClient.unwrapKey("RSA-OAEP", wrapResult.result);
console.log("unwrap result: ", unwrapResult.result);
verify(string, Uint8Array, Uint8Array, VerifyOptions)

التحقق من ملخص الرسالة الموقعة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";
import { createHash } from "node:crypto";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const hash = createHash("sha256");
hash.update("My Message");
const digest = hash.digest();

const signResult = await cryptographyClient.sign("RS256", digest);
console.log("sign result: ", signResult.result);

const verifyResult = await cryptographyClient.verify("RS256", digest, signResult.result);
console.log("verify result: ", verifyResult.result);
verifyData(string, Uint8Array, Uint8Array, VerifyOptions)

التحقق من كتلة البيانات الموقعة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const buffer = Buffer.from("My Message");

const signResult = await cryptographyClient.signData("RS256", buffer);
console.log("sign result: ", signResult.result);

const verifyResult = await cryptographyClient.verifyData("RS256", buffer, signResult.result);
console.log("verify result: ", verifyResult.result);
wrapKey(KeyWrapAlgorithm, Uint8Array, WrapKeyOptions)

التفاف المفتاح المحدد باستخدام خوارزمية التشفير المحددة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const wrapResult = await cryptographyClient.wrapKey("RSA-OAEP", Buffer.from("My Key"));
console.log("wrap result:", wrapResult.result);

تفاصيل المنشئ

CryptographyClient(JsonWebKey)

إنشاء مثيل جديد لعميل التشفير للمفتاح المحدد في الوضع المحلي.

مثال على الاستخدام:

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

const jsonWebKey = {
  kty: "RSA",
  kid: "test-key-123",
  use: "sig",
  alg: "RS256",
  n: new Uint8Array([112, 34, 56, 98, 123, 244, 200, 99]),
  e: new Uint8Array([1, 0, 1]),
  d: new Uint8Array([45, 67, 89, 23, 144, 200, 76, 233]),
  p: new Uint8Array([34, 89, 100, 77, 204, 56, 29, 77]),
  q: new Uint8Array([78, 99, 201, 45, 188, 34, 67, 90]),
  dp: new Uint8Array([23, 45, 78, 56, 200, 144, 32, 67]),
  dq: new Uint8Array([12, 67, 89, 144, 99, 56, 23, 45]),
  qi: new Uint8Array([78, 90, 45, 201, 34, 67, 120, 55]),
};
const client = new CryptographyClient(jsonWebKey);
new CryptographyClient(key: JsonWebKey)

المعلمات

key
JsonWebKey

JsonWebKey لاستخدامه أثناء عمليات التشفير.

CryptographyClient(string | KeyVaultKey, TokenCredential, CryptographyClientOptions)

إنشاء مثيل جديد لعميل التشفير للمفتاح المحدد

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

// Create or retrieve a key from the keyvault
const myKey = await client.createKey("MyKey", "RSA");

// Lastly, create our cryptography client and connect to the service
const cryptographyClient = new CryptographyClient(myKey, credential);
new CryptographyClient(key: string | KeyVaultKey, credential: TokenCredential, pipelineOptions?: CryptographyClientOptions)

المعلمات

key

string | KeyVaultKey

المفتاح الذي يجب استخدامه أثناء مهام التشفير. يمكنك أيضا تمرير معرف المفتاح، أي عنوان url الخاص به هنا.

credential
TokenCredential

كائن ينفذ واجهة TokenCredential المستخدمة لمصادقة الطلبات إلى الخدمة. استخدم حزمة @azure/identity لإنشاء بيانات اعتماد تناسب احتياجاتك.

pipelineOptions
CryptographyClientOptions

خيارات البنية الأساسية لبرنامج ربط العمليات التجارية المستخدمة لتكوين طلبات واجهة برمجة تطبيقات Key Vault. احذف هذه المعلمة لاستخدام تكوين المسار الافتراضي.

تفاصيل الخاصية

keyID

معرف المفتاح المستخدم لتنفيذ عمليات التشفير للعميل.

undefined | string keyID

قيمة الخاصية

undefined | string

vaultUrl

عنوان URL الأساسي للمخزن. إذا تم استخدام JsonWebKey محلية، فسيكون vaultUrl فارغا.

string vaultUrl

قيمة الخاصية

string

تفاصيل الأسلوب

decrypt(DecryptParameters, DecryptOptions)

فك تشفير النص المشفر المحدد باستخدام معلمات فك التشفير المحددة. اعتمادا على الخوارزمية المستخدمة في معلمات فك التشفير، ستتغير مجموعة معلمات فك التشفير المحتملة.

توصي Microsoft بعدم استخدام CBC دون التأكد أولا من تكامل النص المشفر باستخدام، على سبيل المثال، HMAC. راجع https://learn.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode لمزيد من المعلومات.

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey.id, credential);

const encryptResult = await cryptographyClient.encrypt({
  algorithm: "RSA1_5",
  plaintext: Buffer.from("My Message"),
});
console.log("encrypt result: ", encryptResult.result);

const decryptResult = await cryptographyClient.decrypt({
  algorithm: "RSA1_5",
  ciphertext: encryptResult.result,
});
console.log("decrypt result: ", decryptResult.result.toString());
function decrypt(decryptParameters: DecryptParameters, options?: DecryptOptions): Promise<DecryptResult>

المعلمات

decryptParameters
DecryptParameters

معلمات فك التشفير.

options
DecryptOptions

خيارات إضافية.

المرتجعات

Promise<DecryptResult>

decrypt(string, Uint8Array, DecryptOptions)

تحذير

واجهة برمجة التطبيقات هذه مهملة الآن.

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

فك تشفير النص المشفر المحدد باستخدام خوارزمية التشفير المحددة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey.id, credential);

const encryptResult = await cryptographyClient.encrypt({
  algorithm: "RSA1_5",
  plaintext: Buffer.from("My Message"),
});
console.log("encrypt result: ", encryptResult.result);

const decryptResult = await cryptographyClient.decrypt({
  algorithm: "RSA1_5",
  ciphertext: encryptResult.result,
});
console.log("decrypt result: ", decryptResult.result.toString());

توصي Microsoft بعدم استخدام CBC دون التأكد أولا من تكامل النص المشفر باستخدام، على سبيل المثال، HMAC. راجع https://learn.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)

تشفير النص العادي المحدد بمعلمات التشفير المحددة. اعتمادا على الخوارزمية التي تم تعيينها في معلمات التشفير، ستتغير مجموعة معلمات التشفير المحتملة.

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey.id, credential);

const encryptResult = await cryptographyClient.encrypt({
  algorithm: "RSA1_5",
  plaintext: Buffer.from("My Message"),
});
console.log("encrypt result: ", encryptResult.result);
function encrypt(encryptParameters: EncryptParameters, options?: EncryptOptions): Promise<EncryptResult>

المعلمات

encryptParameters
EncryptParameters

معلمات التشفير، التي تم مفتاحها على خوارزمية التشفير المختارة.

options
EncryptOptions

خيارات إضافية.

المرتجعات

Promise<EncryptResult>

encrypt(string, Uint8Array, EncryptOptions)

تحذير

واجهة برمجة التطبيقات هذه مهملة الآن.

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

تشفير النص العادي المحدد باستخدام خوارزمية التشفير المحددة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey.id, credential);

const encryptResult = await cryptographyClient.encrypt({
  algorithm: "RSA1_5",
  plaintext: Buffer.from("My Message"),
});
console.log("encrypt result: ", encryptResult.result);
function encrypt(algorithm: string, plaintext: Uint8Array, options?: EncryptOptions): Promise<EncryptResult>

المعلمات

algorithm

string

الخوارزمية المراد استخدامها.

plaintext

Uint8Array

النص المراد تشفيره.

options
EncryptOptions

خيارات إضافية.

المرتجعات

Promise<EncryptResult>

sign(string, Uint8Array, SignOptions)

توقيع ملخص رسالة بشكل مشفر

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";
import { createHash } from "node:crypto";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

let myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const signatureValue = "MySignature";
const hash = createHash("sha256");

const digest = hash.update(signatureValue).digest();
console.log("digest: ", digest);

const signResult = await cryptographyClient.sign("RS256", digest);
console.log("sign result: ", signResult.result);
function sign(algorithm: string, digest: Uint8Array, options?: SignOptions): Promise<SignResult>

المعلمات

algorithm

string

خوارزمية التوقيع المراد استخدامها.

digest

Uint8Array

ملخص البيانات المراد توقيعها.

options
SignOptions

خيارات إضافية.

المرتجعات

Promise<SignResult>

signData(string, Uint8Array, SignOptions)

توقيع كتلة من البيانات بشكل مشفر

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const signResult = await cryptographyClient.signData("RS256", Buffer.from("My Message"));
console.log("sign result: ", signResult.result);
function signData(algorithm: string, data: Uint8Array, options?: SignOptions): Promise<SignResult>

المعلمات

algorithm

string

خوارزمية التوقيع المراد استخدامها.

data

Uint8Array

البيانات المراد توقيعها.

options
SignOptions

خيارات إضافية.

المرتجعات

Promise<SignResult>

unwrapKey(KeyWrapAlgorithm, Uint8Array, UnwrapKeyOptions)

فك تشفير المفتاح الملتف المحدد باستخدام خوارزمية التشفير المحددة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const wrapResult = await cryptographyClient.wrapKey("RSA-OAEP", Buffer.from("My Key"));
console.log("wrap result:", wrapResult.result);

const unwrapResult = await cryptographyClient.unwrapKey("RSA-OAEP", wrapResult.result);
console.log("unwrap result: ", unwrapResult.result);
function unwrapKey(algorithm: KeyWrapAlgorithm, encryptedKey: Uint8Array, options?: UnwrapKeyOptions): Promise<UnwrapResult>

المعلمات

algorithm
KeyWrapAlgorithm

خوارزمية فك التشفير لاستخدامها في فك تشفير المفتاح.

encryptedKey

Uint8Array

المفتاح المشفر لإلغاء التكبير.

options
UnwrapKeyOptions

خيارات إضافية.

المرتجعات

Promise<UnwrapResult>

verify(string, Uint8Array, Uint8Array, VerifyOptions)

التحقق من ملخص الرسالة الموقعة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";
import { createHash } from "node:crypto";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const hash = createHash("sha256");
hash.update("My Message");
const digest = hash.digest();

const signResult = await cryptographyClient.sign("RS256", digest);
console.log("sign result: ", signResult.result);

const verifyResult = await cryptographyClient.verify("RS256", digest, signResult.result);
console.log("verify result: ", verifyResult.result);
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)

التحقق من كتلة البيانات الموقعة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const buffer = Buffer.from("My Message");

const signResult = await cryptographyClient.signData("RS256", buffer);
console.log("sign result: ", signResult.result);

const verifyResult = await cryptographyClient.verifyData("RS256", buffer, signResult.result);
console.log("verify result: ", verifyResult.result);
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)

التفاف المفتاح المحدد باستخدام خوارزمية التشفير المحددة

مثال على الاستخدام:

import { DefaultAzureCredential } from "@azure/identity";
import { KeyClient, CryptographyClient } from "@azure/keyvault-keys";

const credential = new DefaultAzureCredential();

const vaultName = "<YOUR KEYVAULT NAME>";
const url = `https://${vaultName}.vault.azure.net`;

const client = new KeyClient(url, credential);

const myKey = await client.createKey("MyKey", "RSA");
const cryptographyClient = new CryptographyClient(myKey, credential);

const wrapResult = await cryptographyClient.wrapKey("RSA-OAEP", Buffer.from("My Key"));
console.log("wrap result:", wrapResult.result);
function wrapKey(algorithm: KeyWrapAlgorithm, key: Uint8Array, options?: WrapKeyOptions): Promise<WrapResult>

المعلمات

algorithm
KeyWrapAlgorithm

خوارزمية التشفير المراد استخدامها لتضمين المفتاح المحدد.

key

Uint8Array

المفتاح المراد التفافه.

options
WrapKeyOptions

خيارات إضافية.

المرتجعات

Promise<WrapResult>