Module: models¶
- class doubleratchet.models.DiffieHellmanRatchetModel(**data)[source]¶
Bases:
BaseModel
The model representing the internal state of a
DiffieHellmanRatchet
.- Parameters
version (str) –
own_ratchet_priv (bytes) –
other_ratchet_pub (bytes) –
root_chain (KDFChainModel) –
symmetric_key_ratchet (SymmetricKeyRatchetModel) –
-
version:
str
¶
-
own_ratchet_priv:
bytes
¶
-
other_ratchet_pub:
bytes
¶
-
root_chain:
KDFChainModel
¶
-
symmetric_key_ratchet:
SymmetricKeyRatchetModel
¶
- class doubleratchet.models.DoubleRatchetModel(**data)[source]¶
Bases:
BaseModel
The model representing the internal state of a
DoubleRatchet
.- Parameters
version (str) –
diffie_hellman_ratchet (DiffieHellmanRatchetModel) –
skipped_message_keys (List[SkippedMessageKeyModel]) –
-
version:
str
¶
-
diffie_hellman_ratchet:
DiffieHellmanRatchetModel
¶
-
skipped_message_keys:
List
[SkippedMessageKeyModel
]¶
- class doubleratchet.models.KDFChainModel(**data)[source]¶
Bases:
BaseModel
The model representing the internal state of a
KDFChain
.- Parameters
version (str) –
length (int) –
key (bytes) –
-
version:
str
¶
-
length:
int
¶
-
key:
bytes
¶
- class doubleratchet.models.SkippedMessageKeyModel(**data)[source]¶
Bases:
BaseModel
The model used as part of the
DoubleRatchetModel
, representing a single skipped message key with meta data.- Parameters
ratchet_pub (bytes) –
index (int) –
message_key (bytes) –
-
ratchet_pub:
bytes
¶
-
index:
int
¶
-
message_key:
bytes
¶
- class doubleratchet.models.SymmetricKeyRatchetModel(**data)[source]¶
Bases:
BaseModel
The model representing the internal state of a
SymmetricKeyRatchet
.- Parameters
version (str) –
receiving_chain (Optional[KDFChainModel]) –
sending_chain (Optional[KDFChainModel]) –
previous_sending_chain_length (Optional[int]) –
-
version:
str
¶
-
receiving_chain:
Optional
[KDFChainModel
]¶
-
sending_chain:
Optional
[KDFChainModel
]¶
-
previous_sending_chain_length:
Optional
[int
]¶