Enum EncryptionKeyType
- Namespace
- VisioForge.Core.Types.Output
- Assembly
- VisioForge.Core.dll
Specifies the type of encryption key source for secure media operations. This enumeration defines how the encryption key is provided to the system, allowing for different key management strategies based on security requirements.
public enum EncryptionKeyTypeFields
String = 0-
Encryption key provided as a plain text string. The key is passed directly as a string parameter to the encryption system.
This option is convenient for:
- Development and testing environments
- Simple applications with basic security needs
- Quick prototyping and demonstrations
Security considerations:
- Key is stored in memory as plain text
- May be visible in debug output or memory dumps
- Not recommended for production environments with high security requirements
Usage: Pass the encryption key directly as a string parameter.
File = 1-
Encryption key loaded from a file on the filesystem. The key is read from a specified file location during encryption setup.
This option provides:
- Better security through file system permissions
- Centralized key management
- Ability to update keys without code changes
- Integration with enterprise key management systems
Security benefits:
- Key can be protected by file system permissions
- Supports secure file locations (encrypted drives, network shares)
- Key rotation without application redeployment
- Audit trail through file system logging
Usage: Specify the full path to the key file. The file should contain the encryption key in the expected format.
Binary = 2-
Encryption key provided as raw binary data. The key is supplied as a byte array containing the raw encryption key material.
This option offers:
- Maximum flexibility in key format and source
- Integration with hardware security modules (HSMs)
- Custom key derivation and management systems
- Support for complex key formats and encoding
Advanced use cases:
- Integration with PKI systems
- Hardware-based key generation
- Custom key derivation functions
- Multi-part or composite keys
Usage: Provide the encryption key as a byte array. The binary data should be in the format expected by the encryption algorithm being used.
Remarks
The key type determines how the encryption system retrieves and processes the encryption key:
- String: Key provided directly as a text string (convenient but less secure)
- File: Key loaded from a secure file location (better security, centralized management)
- Binary: Key provided as raw binary data (maximum flexibility, custom key management)
Choose the appropriate key type based on your security requirements:
- Use String for development and testing scenarios
- Use File for production deployments with centralized key management
- Use Binary for custom key management systems or hardware security modules