ObjectIdProtocol
ObjectIdProtocol Objects
class ObjectIdProtocol(typing.Protocol)
An ObjectId is a 32-byte identifier used to uniquely identify an object on
the IOTA blockchain.
Relationship to Address
Addresses and ObjectIds share the same 32-byte addressable space but
are derived leveraging different domain-separator values to ensure,
cryptographically, that there won't be any overlap, e.g. there can't be a
valid Object whose ObjectId is equal to that of the Address of a user
account.
BCS
An ObjectId's BCS serialized form is defined by the following:
object-id = address
derive_dynamic_child_id
def derive_dynamic_child_id(key_type_tag: TypeTag,
key_bytes: bytes) -> ObjectId
Derive an ObjectId for a Dynamic Child Object.
hash(parent || len(key) || key || key_type_tag)
derive_object_id
def derive_object_id(key_type_tag: TypeTag, key_bytes: bytes) -> ObjectId
Derive the ObjectId of a derived object (0x2::derived_object).
hash(parent || len(key) || key || DerivedObjectKey(key_type_tag))
next_lexicographical
def next_lexicographical() -> ObjectId
Returns the next digest in byte-increasing order.
next_lexicographical_opt
def next_lexicographical_opt() -> typing.Optional[ObjectId]
Returns the next digest in byte-increasing order, or None if the
result would overflow.
to_canonical_string
def to_canonical_string(with_prefix: bool) -> str
Returns the string representation of this object ID using the
canonical display, with or without a 0x prefix.
to_hex
def to_hex() -> str
Returns the string representation of this object id in hex format with
0x prefix.
to_raw_hex
def to_raw_hex() -> str
Returns the string representation of this object id in hex format
without 0x prefix.
to_raw_short_hex
def to_raw_short_hex() -> str
Returns the shortest possible string representation of the object id
(i.e. with leading zeroes trimmed), without 0x prefix.
to_short_hex
def to_short_hex() -> str
Returns the shortest possible string representation of the object ID (i.e. with leading zeroes trimmed).