This library provides functions for encoding and decoding keyless addresses, used by the TRAIT blockchain: application agent addresses, transactional addresses, and named addresses.
Project description
TRAIT Keyless Addresses
This library provides functions for encoding and decoding keyless addresses, used by the TRAIT blockchain: application agent addresses, transactional addresses, and named addresses.
Installation
You can install the library using pip:
pip install traitkeyless
Usage
Encode and Decode AppAgent Addresses
import traitkeyless
app_agent_id = 123
# Encode an AppAgent address
encoded_address = traitkeyless.encode_app_agent_address(app_agent_id)
assert encoded_address == "ttowKp8AmQuGfbBGikG2pbdYNnErhHRaLrdktJeZEfJVeVnTp"
# Decode the AppAgent address
decoded_app_agent_id = traitkeyless.decode_app_agent_address(encoded_address)
assert decoded_app_agent_id == 123
Encode and Decode Transactional Addresses
import traitkeyless
app_agent_id = 123
transactional_address_id = 456
# Encode a Transactional address
encoded_address = traitkeyless.encode_transactional_address(app_agent_id, transactional_address_id)
assert encoded_address == "ttowKp8AmjjQh4GoN7xMiQWwVyyrU1Pu7GRf5HxFmV5t43TXG"
# Decode the Transactional address
decoded_data = traitkeyless.decode_transactional_address(encoded_address)
assert decoded_data == (123, 456)
Encode and Decode Named Addresses
import traitkeyless
app_agent_id = 123
address_name = "hot-wallet"
# Encode a Named address
encoded_address = traitkeyless.encode_named_address(app_agent_id, address_name)
assert encoded_address == "ttowKp8Ams1q53N3APEt8PQi8hJ57WjQ92KQTtJrY574nomqv"
# Decode the Named address
decoded_data = traitkeyless.decode_named_address(encoded_address)
assert decoded_data == (123, "hot-wallet")
Decode any address
import traitkeyless
app_agent_id = 123
# Encode a Named address
encoded_address = traitkeyless.encode_app_agent_address(app_agent_id)
assert encoded_address == "ttowKp8AmQuGfbBGikG2pbdYNnErhHRaLrdktJeZEfJVeVnTp"
# Decode the Named address
decoded_data = traitkeyless.decode_address(encoded_address)
expected_data = traitkeyless.BlockchainAddressInfo(
address=encoded_address,
account_id="0x7b00000001293833058fc7db52fc03f6ce344bca98bd7825ff747743f1ff63e2",
address_type=traitkeyless.AddressType.AppAgent,
app_agent_id=123,
ta_id=None,
address_name=None,
)
assert decoded_data == expected_data
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file traitkeyless-0.1.3.tar.gz.
File metadata
- Download URL: traitkeyless-0.1.3.tar.gz
- Upload date:
- Size: 9.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bd7cf440874d7d4d3964f43c08d08353abcebf0c2e093dac8a829d4ae085726f
|
|
| MD5 |
4d2321c47c9676ddadbe38a8fde6a316
|
|
| BLAKE2b-256 |
ce335d33ea23c570eb2bd72e9bc743bfb78a719673ed994521815fee20d28c66
|
File details
Details for the file traitkeyless-0.1.3-py3-none-any.whl.
File metadata
- Download URL: traitkeyless-0.1.3-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f56ad197de5eafbb0a26485d290ce1a2cf63c27e00f6f29bfa89a0d7b3ffc2b7
|
|
| MD5 |
4b3b8e4db8508158e9a615fc49a9108f
|
|
| BLAKE2b-256 |
3d29f7fb7a9af2b97c593313f367ca8da02fa31e9b9e8e67433ee6c563e2ec44
|