|
ProtoCore v1.0.16
Deterministic, zero-heap network stack for embedded targets
|
One key exchange's derivation inputs, passed by reference. More...
#include <transport.h>
Public Attributes | |
| uint8_t * | work |
| PROTOCORE_SSH_KDF_BORROW bytes: the hash context, then the K1 || K2 chain. | |
| const uint8_t * | K_be |
| Shared secret K, big-endian, 256 bytes. | |
| const uint8_t * | H |
| Current exchange hash. | |
| const uint8_t * | session_id |
| H of the first KEX; equals H until the first re-key. | |
| size_t | h_len |
| Length of H. | |
| size_t | sid_len |
| Length of session_id. | |
| proto_bool | k_is_string |
| Encode K as a plain SSH string (hybrid KEX), not an mpint. | |
| proto_bool | is512 |
| Hash with SHA-512 instead of SHA-256. | |
One key exchange's derivation inputs, passed by reference.
Every value here is fixed for the whole of a KEX and read by each of the six derivations, so it travels as one pointer: an argument list this wide spills past the register window and pays for it on every call, at the deepest call depth in the library.
Definition at line 353 of file transport.h.
| uint8_t* SshKdfInputs::work |
PROTOCORE_SSH_KDF_BORROW bytes: the hash context, then the K1 || K2 chain.
Definition at line 355 of file transport.h.
| const uint8_t* SshKdfInputs::K_be |
Shared secret K, big-endian, 256 bytes.
Definition at line 356 of file transport.h.
| const uint8_t* SshKdfInputs::H |
Current exchange hash.
Definition at line 357 of file transport.h.
| const uint8_t* SshKdfInputs::session_id |
H of the first KEX; equals H until the first re-key.
Definition at line 358 of file transport.h.
| size_t SshKdfInputs::h_len |
Length of H.
Definition at line 359 of file transport.h.
| size_t SshKdfInputs::sid_len |
Length of session_id.
Definition at line 360 of file transport.h.
| proto_bool SshKdfInputs::k_is_string |
Encode K as a plain SSH string (hybrid KEX), not an mpint.
Definition at line 361 of file transport.h.
| proto_bool SshKdfInputs::is512 |
Hash with SHA-512 instead of SHA-256.
Definition at line 362 of file transport.h.