Documentation
¶
Overview ¶
Package mikey contains functions to decode and encode MIKEY messages.
Index ¶
- type CSIDMapType
- type DataType
- type Header
- type Message
- type Payload
- type PayloadKEMAC
- type PayloadKEMACEncrAlg
- type PayloadKEMACMacAlg
- type PayloadRAND
- type PayloadSP
- type PayloadSPPolicyParam
- type PayloadSPPolicyParamType
- type PayloadSPProtType
- type PayloadT
- type SRTPIDEntry
- type SubPayloadKeyData
- type SubPayloadKeyDataKeyType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CSIDMapType ¶
type CSIDMapType uint8
CSIDMapType is a CS ID map type.
const (
CSIDMapTypeSRTPID CSIDMapType = 0
)
RFC3830, Table 6.1.d
type DataType ¶
type DataType uint8
DataType is a message data type.
const (
DataTypeInitiatorPSK DataType = 0
)
RFC3830, Table 6.1.a
type Header ¶
type Header struct {
Version uint8
DataType DataType
V bool
PRFFunc uint8
CSBID uint32
CSIDMapType CSIDMapType
CSIDMapInfo []SRTPIDEntry
}
Header is a MIKEY header.
type Payload ¶
type Payload interface {
// contains filtered or unexported methods
}
Payload is a MIKEY payload.
type PayloadKEMAC ¶
type PayloadKEMAC struct {
EncrAlg PayloadKEMACEncrAlg
SubPayloads []*SubPayloadKeyData
MacAlg PayloadKEMACMacAlg
}
PayloadKEMAC is a Key data transport payload.
type PayloadKEMACEncrAlg ¶
type PayloadKEMACEncrAlg uint8
PayloadKEMACEncrAlg is a encryption algorithm.
const (
PayloadKEMACEncrAlgNULL PayloadKEMACEncrAlg = 0
)
RFC3830, Table 6.2.a
type PayloadKEMACMacAlg ¶
type PayloadKEMACMacAlg uint8
PayloadKEMACMacAlg is a authentication algorithm.
const (
PayloadKEMACMacAlgNULL PayloadKEMACMacAlg = 0
)
RFC3830, Table 6.2.b
type PayloadRAND ¶
type PayloadRAND struct {
Data []byte
}
PayloadRAND is a payload with random data.
type PayloadSP ¶
type PayloadSP struct {
PolicyNo uint8
ProtType PayloadSPProtType
PolicyParams []PayloadSPPolicyParam
}
PayloadSP is a security policy payload.
type PayloadSPPolicyParam ¶
type PayloadSPPolicyParam struct {
Type PayloadSPPolicyParamType
Value []byte
}
PayloadSPPolicyParam is a policy param.
type PayloadSPPolicyParamType ¶
type PayloadSPPolicyParamType uint8
PayloadSPPolicyParamType is a policy param type.
const ( PayloadSPPolicyParamTypeEncrAlg PayloadSPPolicyParamType = 0 PayloadSPPolicyParamTypeSessionEncrKeyLen PayloadSPPolicyParamType = 1 PayloadSPPolicyParamTypeAuthAlg PayloadSPPolicyParamType = 2 PayloadSPPolicyParamTypeSessionAuthKeyLen PayloadSPPolicyParamType = 3 PayloadSPPolicyParamTypeSessionSaltKeyLen PayloadSPPolicyParamType = 4 PayloadSPPolicyParamTypeSRTPPseudoRandFun PayloadSPPolicyParamType = 5 PayloadSPPolicyParamTypeKeyDerRate PayloadSPPolicyParamType = 6 PayloadSPPolicyParamTypeSRTPEncrOffOn PayloadSPPolicyParamType = 7 PayloadSPPolicyParamTypeSRTCPEncrOffOn PayloadSPPolicyParamType = 8 PayloadSPPolicyParamTypeSenderFECOrder PayloadSPPolicyParamType = 9 PayloadSPPolicyParamTypeSRTPAuthOffOn PayloadSPPolicyParamType = 10 PayloadSPPolicyParamTypeAuthTagLen PayloadSPPolicyParamType = 11 PayloadSPPolicyParamTypeSRTPPrefixLen PayloadSPPolicyParamType = 12 )
RFC3830, Table 6.10.1.a
type PayloadSPProtType ¶
type PayloadSPProtType uint8
PayloadSPProtType is a security protocol.
const (
PayloadSPProtTypeSRTP PayloadSPProtType = 0
)
RFC3830, Table 6.2.a
type SRTPIDEntry ¶
SRTPIDEntry is an entry of a SRTP-ID map.
type SubPayloadKeyData ¶
type SubPayloadKeyData struct {
Type SubPayloadKeyDataKeyType
KV uint8
KeyData []byte
}
SubPayloadKeyData is a key data sub-payload.
type SubPayloadKeyDataKeyType ¶
type SubPayloadKeyDataKeyType uint8
SubPayloadKeyDataKeyType is a data key type.
const (
SubPayloadKeyDataKeyTypeTEK SubPayloadKeyDataKeyType = 2
)
RFC3830, table 6.13.a