pub struct KeyingMaterialMessage {
pub pt: PacketType,
pub key_flags: KeyFlags,
pub keki: u32,
pub cipher: CipherType,
pub auth: Auth,
pub salt: Vec<u8>,
pub wrapped_keys: Vec<u8>,
}
Expand description
from https://github.com/Haivision/srt/blob/2ef4ef003c2006df1458de6d47fbe3d2338edf69/haicrypt/hcrypt_msg.h#L76-L96 or https://datatracker.ietf.org/doc/html/draft-sharabayko-srt-00#section-3.2.2
HaiCrypt KMmsg (Keying Material Message):
ⓘ
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-+
+0x00 |0|Vers | PT | Sign | resv |KF |
+-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-+
+0x04 | KEKI |
+-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-+
+0x08 | Cipher | Auth | SE | Resv1 |
+-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-+
+0x0C | Resv2 | Slen/4 | Klen/4 |
+-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-+
+0x10 | Salt |
| ... |
+-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-+
| Wrap |
| ... |
+-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-+
Fields
pt: PacketType
key_flags: KeyFlags
keki: u32
cipher: CipherType
auth: Auth
salt: Vec<u8>
wrapped_keys: Vec<u8>
Implementations
Trait Implementations
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for KeyingMaterialMessage
impl Send for KeyingMaterialMessage
impl Sync for KeyingMaterialMessage
impl Unpin for KeyingMaterialMessage
impl UnwindSafe for KeyingMaterialMessage
Blanket Implementations
Mutably borrows from an owned value. Read more
Compare self to key
and return true
if they are equal.