Expand description
§ssh-packet
Representations of SSH packets interoperable with their binary wire representation, using binrw.
This includes a partial implementation of:
- RFC4250: SSH Protocol Assigned Numbers.
- RFC4251: SSH Protocol Architecture.
- RFC4252: SSH Authentication Protocol.
- RFC4253: SSH Transport Layer Protocol.
- RFC4254: SSH Connection Protocol.
- RFC4256: Generic Message Exchange Authentication for SSH.
- RFC5656: Elliptic Curve Algorithm Integration in the SSH Transport Layer.
Re-exports§
pub use ::binrw;
Modules§
- arch
- Types defined in the SSH’s architecture (
SSH-ARCH
) part of the protocol, as defined in the RFC 4251. - connect
- Messages involved in the SSH’s connect (
SSH-CONNECT
) part of the protocol, as defined in the RFC 4254. - crypto
- Collection of exchange hashes and signatures present in the protocol.
- trans
- Messages involved in the SSH’s transport (
SSH-TRANS
) part of the protocol, as defined in the RFC 4253 and RFC 5656. - userauth
- Messages involved in the SSH’s authentication (
SSH-USERAUTH
) part of the protocol, as defined in the RFC 4252 and RFC 4256.
Structs§
- Id
- The SSH identification string as defined in the SSH protocol.
- Packet
- A SSH 2.0 binary packet representation.
Enums§
- Error
- The error types that can occur when manipulating this crate.
Constants§
- PACKET_
MAX_ SIZE - Maximum size for a SSH packet, coincidentally this is the maximum size for a TCP packet.
- PACKET_
MIN_ SIZE - Minimum size for a SSH packet, coincidentally this is the largest block cipher’s block-size.
Traits§
- Cipher
Core - A trait with common methods and associated types involved
in the manipulation of
OpeningCipher
andSealingCipher
. - Into
Packet - Allow types implementing
BinWrite
to be easily converted to aPacket
. - Mac
- The algorithm parameters for the Message Authentication Code.
- Opening
Cipher - A cipher able to
open
aPacket
and retrieve it’s payload. - Sealing
Cipher - A cipher able to
seal
a payload to create aPacket
.