Skip to content

libsodium.SKI.KeyContainer

Andrew Lambert edited this page Nov 26, 2022 · 11 revisions

libsodium.SKI.KeyContainer

Class Declaration

 Protected Class KeyContainer

Remarks

This class provides secure containment for sensitive data held in memory, typically a cryptographic key.

To protect the key data from overflow and underflow attacks the data is stored in a SecureMemoryBlock. This means the data resides on its own page of heap-allocated memory and is surrounded by "guard" pages. The memory is further protected by system features for marking pages as non-swappable and non-readable.

In addition, the key data is encrypted using a randomly-generated ephemeral key.

The KeyContainer is used internally to store SecretKeys, SharedSecrets, the private halves of Encryption and Signing keys, and Password data.

Methods

Clone this wiki locally