Expand description
ยงcore-packet
This crate contains the main packet processing functionality for the HOPR protocol. It implements the following important protocol building blocks:
- HOPR specific instantiation of the SPHINX packet format
- Proof of Relay
Finally, it also implements a utility function which is used to validate tickets (module validation).
The currently used implementation is selected using the HoprSphinxSuite type in the packet module.
The implementation can be easily extended for different elliptic curves (or even arithmetic multiplicative groups).
In particular, as soon as there is a way to represent Ed448 PeerIDs, it would be straightforward to create e.g.
X448Suite.
This crate implements RFC-0003.
Modulesยง
- errors
- Lists all errors in this crate.
- packet ๐
- Implements the overlay packet intermediary object.
- por ๐
- Implements the Proof of Relay.
- types ๐
- Contains various helper types.
- validation ๐
- Implements ticket validation logic.
Structsยง
- Hopr
Sphinx Header Spec - Current Sphinx header specification for the HOPR protocol.
- Reply
Opener - Entry stored locally by the
SURBcreator to allow decryption of received responses.
Constantsยง
- PAYLOAD_
SIZE_ ๐INT - Size of the maximum packet payload.
Traitsยง
- Protocol
KeyId Mapper - Protocol instantiation specific implementation of the [
KeyIdMapping]
Type Aliasesยง
- Hopr
KeyIdent - Type alias for 32-bit HOPR Offchain Public Key Identifier.
- Hopr
Reply Opener - Type alias for identifiable
ReplyOpener. - Hopr
Sphinx Suite - Currently used public key cipher suite for Sphinx.
- Hopr
Surb - Single Use Reply Block representation for HOPR protocol.