Прочитать на английском

Поделиться через


Другие API-интерфейсы защиты данных ASP.NET Core

Предупреждение

Типы, реализующие любой из следующих интерфейсов, должны быть потокобезопасны для нескольких вызывающих объектов.

ISecret

Интерфейс ISecret представляет значение секрета, например материал криптографического ключа. Он содержит следующую поверхность API:

  • Length: int

  • Dispose(): void

  • WriteSecretIntoBuffer(ArraySegment<byte> buffer): void

Метод WriteSecretIntoBuffer заполняет предоставленный буфер необработанным значением секрета. Причина, по которой этот API принимает буфер в качестве параметра, а не возвращает byte[] непосредственно то, что это дает вызывающей возможности закрепить объект буфера, ограничивающий воздействие секрета на управляемый сборщик мусора.

Тип Secret представляет собой конкретную реализацию, в ISecret которой значение секрета хранится в памяти в процессе. На платформах Windows значение секрета шифруется с помощью CryptProtectMemory.