30 {
32 {
34 {
36 {
38 {
40 {
41 global::Interop.BCrypt.BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO bCRYPT_AUTHENTICATED_CIPHER_MODE_INFO = global::Interop.BCrypt.BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.Create();
42 bCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.pbNonce = pbNonce;
43 bCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.cbNonce = nonce.
Length;
44 bCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.pbTag = pbTag;
45 bCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.cbTag = tag.
Length;
46 bCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.pbAuthData = pbAuthData;
47 bCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.cbAuthData = associatedData.
Length;
48 int cbResult;
49 global::Interop.BCrypt.NTSTATUS nTSTATUS = global::Interop.BCrypt.BCryptEncrypt(keyHandle, pbInput, plaintext.
Length,
new IntPtr(&bCRYPT_AUTHENTICATED_CIPHER_MODE_INFO),
null, 0, pbOutput, ciphertext.
Length, out cbResult, 0);
50 if (nTSTATUS != 0)
51 {
52 throw global::Interop.BCrypt.CreateCryptographicException(nTSTATUS);
53 }
54 }
55 }
56 }
57 }
58 }
59 }
static unsafe ref readonly byte GetNonNullPinnableReference(ReadOnlySpan< byte > buffer)