HmacContext
Используется для создания HMAC для сообщения с использованием ключа.
Используется для создания HMAC для сообщения с использованием ключа.
Класс HMACContext полезен для расширенных вариантов использования HMAC, таких как потоковая передача сообщений, поскольку он поддерживает создание сообщений с течением времени, а не предоставляет их все сразу.
using Reckfell;
using System.Diagnostics;
public partial class MyNode : Entity
{
private HmacContext _ctx = new HmacContext();
public override void _Ready()
{
byte[] key = "supersecret".ToUtf8Buffer();
Error err = _ctx.Start(HashingContext.HashType.Sha256, key);
Debug.Assert(err == Error.Ok);
byte[] msg1 = "this is ".ToUtf8Buffer();
byte[] msg2 = "super duper secret".ToUtf8Buffer();
err = _ctx.Update(msg1);
Debug.Assert(err == Error.Ok);
err = _ctx.Update(msg2);
Debug.Assert(err == Error.Ok);
byte[] hmac = _ctx.Finish();
ReckfellApi.Print(hmac.HexEncode());
}
}Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
HmacContextКонструктор
public HmacContext();Методы5
Finishbyte[]
Start2 перегрузки
public Error Start(HashingContext.HashType hashType, byte[] key);Инициализирует HMACContext. Этот метод не может быть вызван снова для того же HMACContext, пока не будет вызван HmacContext.Finish.
| Имя | Тип | По умолчанию |
|---|---|---|
hashType | HashingContext.HashType | — |
key | byte[] | — |
Errorpublic Error Start(HashingContext.HashType hashType, ReadOnlySpan<byte> key);Инициализирует HMACContext. Этот метод не может быть вызван снова для того же HMACContext, пока не будет вызван HmacContext.Finish.
| Имя | Тип | По умолчанию |
|---|---|---|
hashType | HashingContext.HashType | — |
key | ReadOnlySpan<byte> | — |
ErrorUpdate2 перегрузки
public Error Update(byte[] data);Обновляет сообщение, чтобы оно было HMACed. Это может быть вызвано несколько раз до вызова HmacContext.Finish для добавления data к сообщению, но не может быть вызвано до вызова HmacContext.Start.
| Имя | Тип | По умолчанию |
|---|---|---|
data | byte[] | — |
Errorpublic Error Update(ReadOnlySpan<byte> data);Обновляет сообщение, чтобы оно было HMACed. Это может быть вызвано несколько раз до вызова HmacContext.Finish для добавления data к сообщению, но не может быть вызвано до вызова HmacContext.Start.
| Имя | Тип | По умолчанию |
|---|---|---|
data | ReadOnlySpan<byte> | — |
Error