Added in API level 31

ChildSaProposal


class ChildSaProposal : SaProposal

ChildSaProposal represents a proposed configuration to negotiate a Child SA.

ChildSaProposal will contain cryptograhic algorithms and key generation materials for the negotiation of a Child SA.

User must provide at least one valid ChildSaProposal when they are creating a new Child SA.

Summary

Nested classes

This class is used to incrementally construct a ChildSaProposal.

Inherited constants
Int DH_GROUP_1024_BIT_MODP

1024-bit MODP Diffie-Hellman Group.

Int DH_GROUP_1536_BIT_MODP

1536-bit MODP Diffie-Hellman Group.

Int DH_GROUP_2048_BIT_MODP

2048-bit MODP Diffie-Hellman Group.

Int DH_GROUP_3072_BIT_MODP

3072-bit MODP Diffie-Hellman Group.

Int DH_GROUP_4096_BIT_MODP

4096-bit MODP Diffie-Hellman Group.

Int DH_GROUP_CURVE_25519

Elliptic Curve Diffie-Hellman 25519.

Int DH_GROUP_NONE

None Diffie-Hellman Group.

Int ENCRYPTION_ALGORITHM_3DES

3DES Encryption/Ciphering Algorithm.

Int ENCRYPTION_ALGORITHM_AES_CBC

AES-CBC Encryption/Ciphering Algorithm.

Int ENCRYPTION_ALGORITHM_AES_CTR

AES-CTR Encryption/Ciphering Algorithm.

Int ENCRYPTION_ALGORITHM_AES_GCM_12

AES-GCM Authentication/Integrity + Encryption/Ciphering Algorithm with 12-octet ICV (truncation).

Int ENCRYPTION_ALGORITHM_AES_GCM_16

AES-GCM Authentication/Integrity + Encryption/Ciphering Algorithm with 16-octet ICV (truncation).

Int ENCRYPTION_ALGORITHM_AES_GCM_8

AES-GCM Authentication/Integrity + Encryption/Ciphering Algorithm with 8-octet ICV (truncation).

Int ENCRYPTION_ALGORITHM_CHACHA20_POLY1305

ChaCha20-Poly1305 Authentication/Integrity + Encryption/Ciphering Algorithm with 16-octet ICV (truncation).

Int INTEGRITY_ALGORITHM_AES_CMAC_96

AES-CMAC-96 Authentication/Integrity Algorithm.

Int INTEGRITY_ALGORITHM_AES_XCBC_96

AES-XCBC-96 Authentication/Integrity Algorithm.

Int INTEGRITY_ALGORITHM_HMAC_SHA1_96

HMAC-SHA1 Authentication/Integrity Algorithm.

Int INTEGRITY_ALGORITHM_HMAC_SHA2_256_128

HMAC-SHA256 Authentication/Integrity Algorithm with 128-bit truncation.

Int INTEGRITY_ALGORITHM_HMAC_SHA2_384_192

HMAC-SHA384 Authentication/Integrity Algorithm with 192-bit truncation.

Int INTEGRITY_ALGORITHM_HMAC_SHA2_512_256

HMAC-SHA512 Authentication/Integrity Algorithm with 256-bit truncation.

Int INTEGRITY_ALGORITHM_NONE

None Authentication/Integrity Algorithm.

Int KEY_LEN_AES_128

AES Encryption/Ciphering Algorithm key length 128 bits.

Int KEY_LEN_AES_192

AES Encryption/Ciphering Algorithm key length 192 bits.

Int KEY_LEN_AES_256

AES Encryption/Ciphering Algorithm key length 256 bits.

Int KEY_LEN_UNUSED

Key length unused.

This value should only be used with the Encryption/Ciphering Algorithm that accepts a fixed key size such as ENCRYPTION_ALGORITHM_3DES.

Int PSEUDORANDOM_FUNCTION_AES128_CMAC

AES128-CMAC Pseudorandom Function.

Int PSEUDORANDOM_FUNCTION_AES128_XCBC

AES128-XCBC Pseudorandom Function.

Int PSEUDORANDOM_FUNCTION_HMAC_SHA1

HMAC-SHA1 Pseudorandom Function.

Int PSEUDORANDOM_FUNCTION_SHA2_256

HMAC-SHA2-256 Pseudorandom Function.

Int PSEUDORANDOM_FUNCTION_SHA2_384

HMAC-SHA2-384 Pseudorandom Function.

Int PSEUDORANDOM_FUNCTION_SHA2_512

HMAC-SHA2-384 Pseudorandom Function.

Public methods
Boolean
equals(other: Any?)

static MutableSet<Int!>

Returns supported encryption algorithms for Child SA proposal negotiation.

static MutableSet<Int!>

Returns supported integrity algorithms for Child SA proposal negotiation.

Int

Inherited functions
MutableList<Int!> getDhGroups()

Gets all proposed Diffie-Hellman groups

MutableList<Pair<Int!, Int!>!> getEncryptionAlgorithms()

Gets all proposed encryption algorithms

MutableList<Int!> getIntegrityAlgorithms()

Gets all proposed integrity algorithms

MutableSet<Int!> getSupportedDhGroups()

Returns supported DH groups for IKE and Child SA proposal negotiation.

Public methods

equals

Added in API level 31
fun equals(other: Any?): Boolean
Parameters
obj the reference object with which to compare.
Return
Boolean true if this object is the same as the obj argument; false otherwise.

getSupportedEncryptionAlgorithms

Added in API level 31
static fun getSupportedEncryptionAlgorithms(): MutableSet<Int!>

Returns supported encryption algorithms for Child SA proposal negotiation.

Some algorithms may not be supported on old devices.

Return
MutableSet<Int!> This value cannot be null.

getSupportedIntegrityAlgorithms

Added in API level 31
static fun getSupportedIntegrityAlgorithms(): MutableSet<Int!>

Returns supported integrity algorithms for Child SA proposal negotiation.

Some algorithms may not be supported on old devices.

Return
MutableSet<Int!> This value cannot be null.

hashCode

Added in API level 31
fun hashCode(): Int
Return
Int a hash code value for this object.