EncryptionConfig
Built-in encryption configurations.
struct EncryptionConfig { ENCRYPTION_MODE encryptionMode; const char* encryptionKey; uint8_t encryptionKdfSalt[32]; bool datastreamEncryptionEnabled; EncryptionConfig() : encryptionMode(AES_128_GCM2), encryptionKey(OPTIONAL_NULLPTR), datastreamEncryptionEnabled(false) { memset(encryptionKdfSalt, 0, sizeof(encryptionKdfSalt)); } };
Attributes
- encryptionMode
-
The built-in encryption mode. See ENCRYPTION_MODE. Agora recommends using
AES_128_GCM2
orAES_256_GCM2
encrypted mode. These two modes support the use of salt for higher security. - encryptionKey
-
Encryption key in string type with unlimited length. Agora recommends using a 32-byte key.
Attention: If you do not set an encryption key or set it asNULL
, you cannot use the built-in encryption, and the SDK returns-2
. - encryptionKdfSalt
-
Salt, 32 bytes in length. Agora recommends that you use OpenSSL to generate salt on the server side. See Media Stream Encryption for details.
Attention: This parameter takes effect only inAES_128_GCM2
orAES_256_GCM2
encrypted mode. In this case, ensure that this parameter is not0
. - datastreamEncryptionEnabled
- Whether to enable data stream encryption:
true
: Enable data stream encryption.false
: (Default) Disable data stream encryption.