2.13.ipv8.messaging.anonymization.payload

Module Contents

Classes

Attributes

class 2.13.ipv8.messaging.anonymization.payload.CellablePayload(*args: Any, **kwargs)

Bases: 2.13.ipv8.messaging.lazy_payload.VariablePayloadWID

Payloads need a msg_id and a circuit_id to be turned into a tunnel-able cell.

circuit_id: int
class 2.13.ipv8.messaging.anonymization.payload.ExtraIntroductionPayload(*args: Any, **kwargs)

Bases: 2.13.ipv8.messaging.lazy_payload.VariablePayload

Payload to piggyback onto introduction messages.

names = ['flags']
format_list = ['flags']
flags: list[int]
class 2.13.ipv8.messaging.anonymization.payload.DataPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to transfer raw data over a circuit.

msg_id = 1
names = ['circuit_id', 'dest_address', 'org_address', 'data']
format_list = ['I', 'address', 'address', 'raw']
circuit_id: int
dest_address: 2.13.ipv8.types.Address
org_address: 2.13.ipv8.types.Address
data: bytes
class 2.13.ipv8.messaging.anonymization.payload.CreatePayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to initiate circuit creation.

msg_id = 2
names = ['circuit_id', 'identifier', 'node_public_key', 'key']
format_list = ['I', 'H', 'varlenH', 'varlenH']
circuit_id: int
identifier: int
node_public_key: bytes
key: bytes
class 2.13.ipv8.messaging.anonymization.payload.CreatedPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to signal initial circuit first-hop completion.

msg_id = 3
names = ['circuit_id', 'identifier', 'key', 'auth', 'candidates_enc']
format_list = ['I', 'H', 'varlenH', '32s', 'raw']
circuit_id: int
identifier: int
key: bytes
auth: bytes
candidates_enc: bytes
class 2.13.ipv8.messaging.anonymization.payload.ExtendPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to initiate circuit extension.

msg_id = 4
names = ['circuit_id', 'identifier', 'node_public_key', 'key', 'node_addr']
format_list = ['I', 'H', 'varlenH', 'varlenH', 'ip_address']
circuit_id: int
identifier: int
node_public_key: bytes
key: bytes
node_addr: 2.13.ipv8.types.Address
class 2.13.ipv8.messaging.anonymization.payload.ExtendedPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to signal extension completion.

msg_id = 5
names = ['circuit_id', 'identifier', 'key', 'auth', 'candidates_enc']
format_list = ['I', 'H', 'varlenH', '32s', 'raw']
circuit_id: int
identifier: int
key: bytes
auth: bytes
candidates_enc: bytes
class 2.13.ipv8.messaging.anonymization.payload.PingPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to ping over a circuit.

msg_id = 6
names = ['circuit_id', 'identifier']
format_list = ['I', 'H']
circuit_id: int
identifier: int
class 2.13.ipv8.messaging.anonymization.payload.PongPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to pong over a circuit.

msg_id = 7
names = ['circuit_id', 'identifier']
format_list = ['I', 'H']
circuit_id: int
identifier: int
class 2.13.ipv8.messaging.anonymization.payload.DestroyPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to signal destruction of a circuit.

msg_id = 8
names = ['circuit_id', 'reason']
format_list = ['I', 'H']
circuit_id: int
reason: int
class 2.13.ipv8.messaging.anonymization.payload.EstablishIntroPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to initiate establishment of an introduction point.

msg_id = 9
names = ['circuit_id', 'identifier', 'info_hash', 'public_key']
format_list = ['I', 'H', '20s', 'varlenH']
circuit_id: int
identifier: int
info_hash: bytes
public_key: bytes
class 2.13.ipv8.messaging.anonymization.payload.IntroEstablishedPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to signal completion of introduction point establishment.

msg_id = 10
names = ['circuit_id', 'identifier']
format_list = ['I', 'H']
circuit_id: int
identifier: int
class 2.13.ipv8.messaging.anonymization.payload.EstablishRendezvousPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to initiate creation of a rendezvous point.

msg_id = 11
names = ['circuit_id', 'identifier', 'cookie']
format_list = ['I', 'H', '20s']
circuit_id: int
identifier: int
cookie: bytes
class 2.13.ipv8.messaging.anonymization.payload.RendezvousEstablishedPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to signal completion of a rendezvous point.

msg_id = 12
names = ['circuit_id', 'identifier', 'rendezvous_point_addr']
format_list = ['I', 'H', 'ip_address']
circuit_id: int
identifier: int
rendezvous_point_addr: 2.13.ipv8.types.Address
class 2.13.ipv8.messaging.anonymization.payload.CreateE2EPayload(*args: Any, **kwargs)

Bases: 2.13.ipv8.messaging.lazy_payload.VariablePayloadWID

Payload to initiate e2e hookup.

msg_id = 13
names = ['identifier', 'info_hash', 'node_public_key', 'key']
format_list = ['H', '20s', 'varlenH', 'varlenH']
identifier: int
info_hash: bytes
node_public_key: bytes
key: bytes
class 2.13.ipv8.messaging.anonymization.payload.CreatedE2EPayload(*args: Any, **kwargs)

Bases: 2.13.ipv8.messaging.lazy_payload.VariablePayloadWID

Payload to signal completion of e2e hookup.

msg_id = 14
names = ['identifier', 'key', 'auth', 'rp_info_enc']
format_list = ['H', 'varlenH', '32s', 'raw']
identifier: int
key: bytes
auth: bytes
rp_info_enc: bytes
class 2.13.ipv8.messaging.anonymization.payload.LinkE2EPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to initiate completion linking of an e2e hookup.

msg_id = 15
names = ['circuit_id', 'identifier', 'cookie']
format_list = ['I', 'H', '20s']
circuit_id: int
identifier: int
cookie: bytes
class 2.13.ipv8.messaging.anonymization.payload.LinkedE2EPayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to signal completion of the final linking of the e2e circuit.

msg_id = 16
names = ['circuit_id', 'identifier']
format_list = ['I', 'H']
circuit_id: int
identifier: int
class 2.13.ipv8.messaging.anonymization.payload.PeersRequestPayload(*args: Any, **kwargs)

Bases: CellablePayload

Request for peer lookup for the given info hash.

msg_id = 17
names = ['circuit_id', 'identifier', 'info_hash']
format_list = ['I', 'H', '20s']
circuit_id: int
identifier: int
info_hash: bytes
class 2.13.ipv8.messaging.anonymization.payload.IntroductionInfo(*args: Any, **kwargs)

Bases: 2.13.ipv8.messaging.lazy_payload.VariablePayload

Payload for introduction info.

names = ['address', 'key', 'seeder_pk', 'source']
format_list = ['ip_address', 'varlenH', 'varlenH', 'B']
address: 2.13.ipv8.types.Address
key: bytes
seeder_pk: bytes
source: int
class 2.13.ipv8.messaging.anonymization.payload.PeersResponsePayload(*args: Any, **kwargs)

Bases: CellablePayload

Payload to respond with introduction info of peers for a given info hash.

msg_id = 18
names = ['circuit_id', 'identifier', 'info_hash', 'peers']
format_list = ['I', 'H', '20s', None]
circuit_id: int
identifier: int
info_hash: bytes
peers: list[IntroductionInfo]
class 2.13.ipv8.messaging.anonymization.payload.RendezvousInfo(*args: Any, **kwargs)

Bases: 2.13.ipv8.messaging.lazy_payload.VariablePayload

Payload for rendezvous info.

names = ['address', 'key', 'cookie']
format_list = ['ip_address', 'varlenH', '20s']
address: 2.13.ipv8.types.Address
key: bytes
cookie: bytes
class 2.13.ipv8.messaging.anonymization.payload.TestRequestPayload(*args: Any, **kwargs)

Bases: CellablePayload

Speedtest initiation.

msg_id = 19
names = ['circuit_id', 'identifier', 'response_size', 'data']
format_list = ['I', 'H', 'H', 'raw']
circuit_id: int
identifier: int
response_size: int
data: bytes
class 2.13.ipv8.messaging.anonymization.payload.TestResponsePayload(*args: Any, **kwargs)

Bases: CellablePayload

Speedtest response.

msg_id = 20
names = ['circuit_id', 'identifier', 'data']
format_list = ['I', 'H', 'raw']
circuit_id: int
identifier: int
data: bytes
class 2.13.ipv8.messaging.anonymization.payload.Flags(fmt: str = '>H')

Bases: 2.13.ipv8.messaging.serialization.Packer

Packer for flags (default: as a short).

pack(data: list[int]) bytes

Pack the individual flag integer values into a single integer and serialize them.

unpack(data: bytes, offset: int, unpack_list: list, *args: object) int

Uncompress the flags from their serialized form.

class 2.13.ipv8.messaging.anonymization.payload.CellPayload(circuit_id: int, message: bytes, plaintext: bool = False, relay_early: bool = False)

Raw circuit data.

msg_id = 0
unwrap(prefix: bytes) bytes

Reorder the binary format of this cell, injecting its prefix and circuit id.

to_bin(prefix: bytes) bytes

Reorder the binary format of this cell, injecting its message id, circuit id and flags.

classmethod from_bin(packet: bytes) CellPayload

Reconstruct a CellPayload from the given binary format, ordered using to_bin().

2.13.ipv8.messaging.anonymization.payload.NO_CRYPTO_PACKETS