SaProposal
abstract class SaProposal
| kotlin.Any | |
| ↳ | android.net.ipsec.ike.SaProposal |
SaProposal represents a proposed configuration to negotiate an IKE or Child SA.
SaProposal will contain cryptograhic algorithms and key generation materials for the negotiation of an IKE or Child SA.
User must provide at least one valid SaProposal when they are creating a new IKE or Child SA.
Summary
| Constants | |
|---|---|
| static Int |
1024-bit MODP Diffie-Hellman Group. |
| static Int |
1536-bit MODP Diffie-Hellman Group. |
| static Int |
2048-bit MODP Diffie-Hellman Group. |
| static Int |
3072-bit MODP Diffie-Hellman Group. |
| static Int |
4096-bit MODP Diffie-Hellman Group. |
| static Int |
Elliptic Curve Diffie-Hellman 25519. |
| static Int |
None Diffie-Hellman Group. |
| static Int |
3DES Encryption/Ciphering Algorithm. |
| static Int |
AES-CBC Encryption/Ciphering Algorithm. |
| static Int |
AES-CTR Encryption/Ciphering Algorithm. |
| static Int |
AES-GCM Authentication/Integrity + Encryption/Ciphering Algorithm with 12-octet ICV (truncation). |
| static Int |
AES-GCM Authentication/Integrity + Encryption/Ciphering Algorithm with 16-octet ICV (truncation). |
| static Int |
AES-GCM Authentication/Integrity + Encryption/Ciphering Algorithm with 8-octet ICV (truncation). |
| static Int |
ChaCha20-Poly1305 Authentication/Integrity + Encryption/Ciphering Algorithm with 16-octet ICV (truncation). |
| static Int |
AES-CMAC-96 Authentication/Integrity Algorithm. |
| static Int |
AES-XCBC-96 Authentication/Integrity Algorithm. |
| static Int |
HMAC-SHA1 Authentication/Integrity Algorithm. |
| static Int |
HMAC-SHA256 Authentication/Integrity Algorithm with 128-bit truncation. |
| static Int |
HMAC-SHA384 Authentication/Integrity Algorithm with 192-bit truncation. |
| static Int |
HMAC-SHA512 Authentication/Integrity Algorithm with 256-bit truncation. |
| static Int |
None Authentication/Integrity Algorithm. |
| static Int |
AES Encryption/Ciphering Algorithm key length 128 bits. |
| static Int |
AES Encryption/Ciphering Algorithm key length 192 bits. |
| static Int |
AES Encryption/Ciphering Algorithm key length 256 bits. |
| static Int |
Key length unused. |
| static Int |
AES128-CMAC Pseudorandom Function. |
| static Int |
AES128-XCBC Pseudorandom Function. |
| static Int |
HMAC-SHA1 Pseudorandom Function. |
| static Int |
HMAC-SHA2-256 Pseudorandom Function. |
| static Int |
HMAC-SHA2-384 Pseudorandom Function. |
| static Int |
HMAC-SHA2-384 Pseudorandom Function. |
| Public methods | |
|---|---|
| open Boolean | |
| open MutableList<Int!> |
Gets all proposed Diffie-Hellman groups |
| open MutableList<Pair<Int!, Int!>!> |
Gets all proposed encryption algorithms |
| open MutableList<Int!> |
Gets all proposed integrity algorithms |
| open static MutableSet<Int!> |
Returns supported DH groups for IKE and Child SA proposal negotiation. |
| open Int |
hashCode() |
Constants
DH_GROUP_1024_BIT_MODP
static val DH_GROUP_1024_BIT_MODP: Int
1024-bit MODP Diffie-Hellman Group.
Value: 2DH_GROUP_1536_BIT_MODP
static val DH_GROUP_1536_BIT_MODP: Int
1536-bit MODP Diffie-Hellman Group.
Value: 5DH_GROUP_2048_BIT_MODP
static val DH_GROUP_2048_BIT_MODP: Int
2048-bit MODP Diffie-Hellman Group.
Value: 14DH_GROUP_3072_BIT_MODP
static val DH_GROUP_3072_BIT_MODP: Int
3072-bit MODP Diffie-Hellman Group.
Value: 15DH_GROUP_4096_BIT_MODP
static val DH_GROUP_4096_BIT_MODP: Int
4096-bit MODP Diffie-Hellman Group.
Value: 16DH_GROUP_CURVE_25519
static val DH_GROUP_CURVE_25519: Int
Elliptic Curve Diffie-Hellman 25519.
Value: 31DH_GROUP_NONE
static val DH_GROUP_NONE: Int
None Diffie-Hellman Group.
Value: 0ENCRYPTION_ALGORITHM_3DES
static val ENCRYPTION_ALGORITHM_3DES: Int
3DES Encryption/Ciphering Algorithm.
Value: 3ENCRYPTION_ALGORITHM_AES_CBC
static val ENCRYPTION_ALGORITHM_AES_CBC: Int
AES-CBC Encryption/Ciphering Algorithm.
Value: 12ENCRYPTION_ALGORITHM_AES_CTR
static val ENCRYPTION_ALGORITHM_AES_CTR: Int
AES-CTR Encryption/Ciphering Algorithm.
Value: 13ENCRYPTION_ALGORITHM_AES_GCM_12
static val ENCRYPTION_ALGORITHM_AES_GCM_12: Int
AES-GCM Authentication/Integrity + Encryption/Ciphering Algorithm with 12-octet ICV (truncation).
Value: 19ENCRYPTION_ALGORITHM_AES_GCM_16
static val ENCRYPTION_ALGORITHM_AES_GCM_16: Int
AES-GCM Authentication/Integrity + Encryption/Ciphering Algorithm with 16-octet ICV (truncation).
Value: 20ENCRYPTION_ALGORITHM_AES_GCM_8
static val ENCRYPTION_ALGORITHM_AES_GCM_8: Int
AES-GCM Authentication/Integrity + Encryption/Ciphering Algorithm with 8-octet ICV (truncation).
Value: 18ENCRYPTION_ALGORITHM_CHACHA20_POLY1305
static val ENCRYPTION_ALGORITHM_CHACHA20_POLY1305: Int
ChaCha20-Poly1305 Authentication/Integrity + Encryption/Ciphering Algorithm with 16-octet ICV (truncation).
Value: 28INTEGRITY_ALGORITHM_AES_CMAC_96
static val INTEGRITY_ALGORITHM_AES_CMAC_96: Int
AES-CMAC-96 Authentication/Integrity Algorithm.
Value: 8INTEGRITY_ALGORITHM_AES_XCBC_96
static val INTEGRITY_ALGORITHM_AES_XCBC_96: Int
AES-XCBC-96 Authentication/Integrity Algorithm.
Value: 5INTEGRITY_ALGORITHM_HMAC_SHA1_96
static val INTEGRITY_ALGORITHM_HMAC_SHA1_96: Int
HMAC-SHA1 Authentication/Integrity Algorithm.
Value: 2INTEGRITY_ALGORITHM_HMAC_SHA2_256_128
static val INTEGRITY_ALGORITHM_HMAC_SHA2_256_128: Int
HMAC-SHA256 Authentication/Integrity Algorithm with 128-bit truncation.
Value: 12INTEGRITY_ALGORITHM_HMAC_SHA2_384_192
static val INTEGRITY_ALGORITHM_HMAC_SHA2_384_192: Int
HMAC-SHA384 Authentication/Integrity Algorithm with 192-bit truncation.
Value: 13INTEGRITY_ALGORITHM_HMAC_SHA2_512_256
static val INTEGRITY_ALGORITHM_HMAC_SHA2_512_256: Int
HMAC-SHA512 Authentication/Integrity Algorithm with 256-bit truncation.
Value: 14INTEGRITY_ALGORITHM_NONE
static val INTEGRITY_ALGORITHM_NONE: Int
None Authentication/Integrity Algorithm.
Value: 0KEY_LEN_AES_128
static val KEY_LEN_AES_128: Int
AES Encryption/Ciphering Algorithm key length 128 bits.
Value: 128KEY_LEN_AES_192
static val KEY_LEN_AES_192: Int
AES Encryption/Ciphering Algorithm key length 192 bits.
Value: 192KEY_LEN_AES_256
static val KEY_LEN_AES_256: Int
AES Encryption/Ciphering Algorithm key length 256 bits.
Value: 256KEY_LEN_UNUSED
static val KEY_LEN_UNUSED: Int
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.
Value: 0PSEUDORANDOM_FUNCTION_AES128_CMAC
static val PSEUDORANDOM_FUNCTION_AES128_CMAC: Int
AES128-CMAC Pseudorandom Function.
Value: 8PSEUDORANDOM_FUNCTION_AES128_XCBC
static val PSEUDORANDOM_FUNCTION_AES128_XCBC: Int
AES128-XCBC Pseudorandom Function.
Value: 4PSEUDORANDOM_FUNCTION_HMAC_SHA1
static val PSEUDORANDOM_FUNCTION_HMAC_SHA1: Int
HMAC-SHA1 Pseudorandom Function.
Value: 2PSEUDORANDOM_FUNCTION_SHA2_256
static val PSEUDORANDOM_FUNCTION_SHA2_256: Int
HMAC-SHA2-256 Pseudorandom Function.
Value: 5PSEUDORANDOM_FUNCTION_SHA2_384
static val PSEUDORANDOM_FUNCTION_SHA2_384: Int
HMAC-SHA2-384 Pseudorandom Function.
Value: 6PSEUDORANDOM_FUNCTION_SHA2_512
static val PSEUDORANDOM_FUNCTION_SHA2_512: Int
HMAC-SHA2-384 Pseudorandom Function.
Value: 7Public methods
equals
open 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. |
getDhGroups
open fun getDhGroups(): MutableList<Int!>
Gets all proposed Diffie-Hellman groups
| Return | |
|---|---|
MutableList<Int!> |
A list of the IANA-defined IDs for the proposed Diffie-Hellman groups This value cannot be null. |
getEncryptionAlgorithms
open fun getEncryptionAlgorithms(): MutableList<Pair<Int!, Int!>!>
Gets all proposed encryption algorithms
| Return | |
|---|---|
MutableList<Pair<Int!, Int!>!> |
A list of Pairs, with the IANA-defined ID for the proposed encryption algorithm as the first item, and the key length (in bits) as the second. This value cannot be null. |
getIntegrityAlgorithms
open fun getIntegrityAlgorithms(): MutableList<Int!>
Gets all proposed integrity algorithms
| Return | |
|---|---|
MutableList<Int!> |
A list of the IANA-defined IDs for the proposed integrity algorithms This value cannot be null. |
getSupportedDhGroups
open static fun getSupportedDhGroups(): MutableSet<Int!>
Returns supported DH groups for IKE and Child SA proposal negotiation.
| Return | |
|---|---|
MutableSet<Int!> |
This value cannot be null. |
hashCode
open fun hashCode(): Int
| Return | |
|---|---|
Int |
a hash code value for this object. |