System::Security::Cryptography::HashAlgorithm class

HashAlgorithm class

Базовый класс для алгоритмов хеширования. Объекты этого класса должны создаваться только с помощью функции System::MakeObject(). Никогда не создавайте экземпляр этого типа в стеке или с помощью оператора new, так как это приведёт к ошибкам времени выполнения и/или сбоям утверждений. Всегда оборачивайте этот класс в указатель System::SmartPtr и используйте этот указатель для передачи его в функции в качестве аргумента.

class HashAlgorithm : public System::Security::Cryptography::ICryptoTransform

Методы

МетодОписание
ComputeHash(const ArrayPtr<uint8_t>&)Хеширует буфер.
ComputeHash(const ArrayPtr<uint8_t>&, int, int)Хеширует часть буфера.
ComputeHash(SharedPtr<IO::Stream> const&)Читает поток до конца и вычисляет хеш прочитанных данных.
static Create(const String&)Создаёт алгоритм хеширования по имени.
virtual get_Hash()Получает значение вычисленного хэш‑кода.
virtual get_HashSize()Получает размер вычисленного хэш‑значения в байтах.
get_InputBlockSize() overrideРазмер входного блока.
get_OutputBlockSize() overrideРазмер выходного блока.
virtual Initialize()Сбрасывает хешер в исходное состояние.
TransformBlock(ArrayPtr<uint8_t>, int, int, ArrayPtr<uint8_t>, int) overrideОбрабатывает блок данных и копирует данные в выходной массив.
TransformFinalBlock(ArrayPtr<uint8_t>, int, int) overrideОбрабатывает последний блок данных и вычисляет хэш.
virtual ~HashAlgorithm()Деструктор.

См. также