reckfellENGINE

HashingContext

Предоставляет функциональность для вычисления криптографических хешей по частям.

На этой странице
class HashingContextReckfellSharpНаследует RefCounted

Предоставляет функциональность для вычисления криптографических хешей по частям.

Класс HashingContext предоставляет интерфейс для вычисления криптографических хэшей в течение нескольких итераций. Полезно для вычисления хэшей больших файлов (чтобы вам не приходилось загружать их все в память), сетевых потоков и потоков данных в целом (чтобы вам не приходилось хранить буферы). Перечисление HashingContext.HashType показывает поддерживаемые алгоритмы хэширования.

C#
public const int ChunkSize = 1024;

public void HashFile(string path)
{
    // Check that file exists.
    if (!FileAccess.FileExists(path))
    {
        return;
    }
    // Start an SHA-256 context.
    var ctx = new HashingContext();
    ctx.Start(HashingContext.HashType.Sha256);
    // Open the file to hash.
    using var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);
    // Update the context after reading each chunk.
    while (file.GetPosition() < file.GetLength())
    {
        int remaining = (int)(file.GetLength() - file.GetPosition());
        ctx.Update(file.GetBuffer(Mathf.Min(remaining, ChunkSize)));
    }
    // Get the computed hash.
    byte[] res = ctx.Finish();
    // Print the result as hex string and array.
    ReckfellApi.PrintT(res.HexEncode(), (Variant)res);
}

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

HashingContextКонструктор
# HashingContext
C#
public HashingContext();

Методы4

Finishbyte[]
# Finish
C#
public byte[] Finish();

Закрывает текущий контекст и возвращает вычисленный хэш.

Возвращает byte[]
StartError
# Start
C#
public Error Start(HashingContext.HashType type);

Запускает новое вычисление хэша указанного type (например, HashingContext.HashType.Sha256 для запуска вычисления SHA-256).

Параметры
ИмяТипПо умолчанию
typeHashingContext.HashType—
Возвращает Error
Update2 перегрузки
# Update · 1/2
C#
public Error Update(byte[] chunk);

Обновляет вычисление с использованием указанного chunk данных.

Параметры
ИмяТипПо умолчанию
chunkbyte[]—
Возвращает Error
# Update · 2/2
C#
public Error Update(ReadOnlySpan<byte> chunk);

Обновляет вычисление с использованием указанного chunk данных.

Параметры
ИмяТипПо умолчанию
chunkReadOnlySpan<byte>—
Возвращает Error

HashingContext.HashType

ЗначениеОписание
Md5 = 0

Алгоритм хэширования: MD5.

Sha1 = 1

Алгоритм хэширования: SHA-1.

Sha256 = 2

Алгоритм хэширования: SHA-256.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.