API Documentation
ArkEcosystem.Crypto.Configuration.Configuration
get_value()
1def get_value(key, bucket \\ :ark_config)Get the value of the given configuration key.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | key | Yes | Configuration key | 
| string | bucket | No | … | 
Return Value
?
set_value()
1def set_value(key, value, bucket \\ :ark_config)Set the value of the given configuration key.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | key | Yes | Configuration key | 
| string | value | Yes | New value | 
| string | bucket | No | … | 
Return Value
?
ArkEcosystem.Crypto.Configuration.Fee
get()
1def get(type) when is_integer(type)2def get(type) when is_atom(type)Get a fee for a given transaction type
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| Type.t() | type | Yes | Transaction type for which we wish to get a fee | 
Return Value
?
set()
1def set(type, fee)Set a fee
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| Type.t() | type | Yes | Transaction_type for which we wish to set a fee | 
| integer | fee | Yes | Fee for a given transaction type | 
Return Value
?
ArkEcosystem.Crypto.Configuration.Network
version()
1def version()Get the version of the network.
Return Value
?
set()
1def set(network)Set what network you want to use in the crypto library.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | network | Yes | Testnet, Devnet, Mainnet | 
Return Value
?
get()
1def get()Get settings for a selected network, default network is mainnet.
Return Value
?
ArkEcosystem.Crypto.Identities.Address
from_public_key()
1def from_public_key(public_key, network \\ nil)Derive the address from the given public key.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | public_key | Yes | Public key | 
| ? | network | No | Version of the network | 
Return Value
string
from_private_key()
1def from_private_key(private_key, network \\ nil)Derive the address from the given private key.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | private_key | Yes | Private key | 
| ? | network | No | Version of the network | 
Return Value
?
from_passphrase()
1def from_passphrase(passphrase, network \\ nil)Derive the address from the given passphrase.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | passphrase | Yes | Passphrase | 
| ? | network | No | Version of the network | 
Return Value
string
validate()
1def validate(address, network \\ nil)Validate the given address.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | address | Yes | Address | 
| ? | network | No | Version of the network | 
Return Value
bool
ArkEcosystem.Crypto.Identities.PrivateKey
from_passphrase()
1def from_passphrase(passphrase)Derive the private key for the given passphrase.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | passphrase | Yes | Passphrase | 
Return Value
?
from_hex()
1def from_hex(private_key)Create a private key instance from a hex string.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | private_key | Yes | Private key | 
Return Value
EcPrivateKey
sign()
1def sign(message, passphrase)Sign the private key.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | message | Yes | Message | 
| string | passphrase | No | Passphrase | 
Return Value
?
ArkEcosystem.Crypto.Identities.PublicKey
from_passphrase()
1def from_passphrase(passphrase)Derive the public from the given passphrase.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | passphrase | Yes | Passphrase | 
Return Value
?
from_hex()
1def from_hex(public_key)Create a public key instance from a hex string.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | public_key | Yes | Public key | 
Return Value
EcPublicKey
from_private_key()
1def from_private_key(private_key)Create a public key instance from a private key.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | private_key | Yes | Private key | 
Return Value
?
verify()
1def verify(message, signature, public_key)Verify the given public key.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | message | Yes | Message | 
| string | signature | Yes | Signature | 
| string | public key | Yes | Public key | 
Return Value
?
ArkEcosystem.Crypto.Identities.WIF
from_passphrase()
1def from_passphrase(passphrase, network \\ nil) doDerive the WIF from the given passphrase.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| str | passphrase | Yes | Passphrase | 
| ? | network | No | Network WIF | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Builder
build_transfer()
1def build_transfer(recipient_id, amount, vendor_field, passphrase, second_passphrase \\ nil)Builds a transaction for a transfer.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | recipient_id | Yes | Recipient identifier | 
| integer | amount | Yes | Transaction amount | 
| string | vendor_field | Yes | Transaction vendorfield | 
| string | passphrase | Yes | Passphrase | 
| string | second_passphrase | No | Second passphrase | 
Return Value
?
build_vote()
1def build_vote(votes, passphrase, second_passphrase \\ nil)Builds a transaction for a vote registration.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| Enum.List | votes | Yes | Votes | 
| string | passphrase | Yes | passphrase | 
| string | second_passphrase | No | second passphrase | 
Return Value
?
build_second_signature_registration()
1def build_second_signature_registration(passphrase, second_passphrase \\ nil)Builds a transaction for a second signature registration.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | passphrase | Yes | Passphrase | 
| string | second_passphrase | No | Second passphrase | 
Return Value
?
build_delegate_registration()
1def build_delegate_registration(username, passphrase, second_passphrase \\ nil)Builds a transaction for a delegate registration.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | username | Yes | Delegate username | 
| string | passphrase | Yes | Passphrase | 
| string | second_passphrase | No | Second passphrase | 
Return Value
?
build_multi_signature_registration()
1def build_multi_signature_registration(min, lifetime, keysgroup, passphrase, second_passphrase \\ nil)Builds a transaction for a multi signature registration.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| integer | min | Yes | Transaction minimum required signatures | 
| integer | lifetime | Yes | Transaction lifetime | 
| ? | keysgroup | Yes | Transaction keysgroup | 
| string | passphrase | Yes | Passphrase | 
| string | second_passphrase | No | Second passphrase | 
Return Value
?
build_ipfs()
1def build_ipfs()To Implement.
build_timelock_transfer()
1def build_timelock_transfer()To Implement.
build_multi_payment()
1def build_multi_payment()To Implement.
build_delegate_resignation()
1def build_delegate_resignation()To Implement.
ArkEcosystem.Crypto.Transactions.Deserializers.DelegateRegistration
deserialize()
1def deserialize(data)Handle the deserialization of “delegate registration” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | data | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Deserializers.DelegateResignation
deserialize()
1def deserialize(data)Handle the deserialization of “delegate resignation” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | data | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Deserializers.IPFS
deserialize()
1def deserialize(data)Handle the deserialization of “ipfs” data
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | data | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Deserializers.MultiPayment
deserialize()
1def deserialize(data)Handle the deserialization of “multi payment” data
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | data | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Deserializers.MultiSignatureRegistration
deserialize()
1def deserialize(data)Handle the deserialization of “multi signature registration” data
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | data | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Deserializers.SecondSignatureRegistration
deserialize()
1def deserialize(data)Handle the deserialization of “second signature” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | data | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Deserializers.TimelockTransfer
deserialize()
1def deserialize(data)Handle the deserialization of “timelock transfer” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | data | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Deserializers.Transfer
deserialize()
1def deserialize(data)Handle the deserialization of “transfer” data.
Parameters
v
Return Value
?
ArkEcosystem.Crypto.Transactions.Deserializers.Vote
deserialize()
1def deserialize(data)Handle the deserialization of “vote” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | data | Yes | … | 
Return Value
object
ArkEcosystem.Crypto.Transactions.Serializers.DelegateRegistration
serialize()
1def serialize(bytes, transaction)Handle the serialization of “delegate registration” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | bytes | Yes | … | 
| ? | transaction | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Serializers.DelegateResignation
serialize()
1def serialize(bytes, _transaction)Handle the serialization of “delegate resignation” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | bytes | Yes | … | 
| ? | _transaction | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Serializers.IPFS
serialize()
1def serialize(bytes, transaction)Handle the serialization of “IPFS” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | bytes | Yes | … | 
| ? | transaction | Yes | Transaction | 
Return Value
void
ArkEcosystem.Crypto.Transactions.Serializers.MultiPayment
serialize()
1def serialize(bytes, transaction)Handle the serialization of “multi payment” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | bytes | Yes | … | 
| ? | transaction | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Serializers.MultiSignatureRegistration
serialize()
1def serialize(bytes, transaction)Handle the serialization of “multi signature registration” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | bytes | Yes | … | 
| ? | transaction | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Serializers.SecondSignatureRegistration
serialize()
1def serialize(bytes, transaction)Handle the serialization of “second signature registration” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | bytes | Yes | … | 
| ? | transaction | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Serializers.TimelockTransfer
serialize()
1def serialize(bytes, transaction)Handle the serialization of “timelock transfer” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | bytes | Yes | … | 
| ? | transaction | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Serializers.Transfer
serialize()
1def serialize(bytes, transaction)Handle the serialization of “transfer” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | bytes | Yes | … | 
| ? | transaction | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Serializers.Vote
serialize()
1def serialize(bytes, transaction)Handle the serialization of “vote” data.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | bytes | Yes | … | 
| ? | transaction | Yes | Transaction | 
Return Value
void
ArkEcosystem.Crypto.Transactions.Deserializer
deserialize()
1def deserialize(%{serialized: serialized}) when is_bitstring(serialized)Perform AIP11 compliant deserialization.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| Map | serialized | Yes | Serialized | 
Return Value
?
parse_signatures()
1def parse_signatures(data)Perform AIP11 compliant deserialization.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | data | Yes | … | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Serializer
serialize() (transaction, object)
1def serialize(transaction, %{underscore: underscore}) when is_map(transaction)Perform AIP11 compliant serialization.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
| Map | underscore | Yes | … | 
Return Value
?
serialize() (transaction)
1def serialize(transaction) when is_map(transaction)Perform AIP11 compliant serialization.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
Return Value
?
ArkEcosystem.Crypto.Transactions.Transaction
get_id()
1def get_id(transaction)Convert the byte representation to a unique identifier.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
Return Value
string
sign_transaction()
1def sign_transaction(transaction, passphrase, second_passphrase \\ nil) when is_map(transaction)Sign the transaction using the given passphrase.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
| string | passphrase | Yes | Passphrase | 
| string | second_passphrase | No | Second passphrase | 
Return Value
?
sign()
1def sign(transaction, passphrase)Sign the transaction using the given passphrase.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
| string | passphrase | Yes | Passphrase | 
Return Value
?
second_sign() (transaction, nil)
1def second_sign(transaction, nil)Sign the transaction using the given second passphrase.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
| ? | nil | No | … | 
Return Value
?
second_sign() (transaction, second_passphrase)
1def second_sign(transaction, second_passphrase)Sign the transaction using the given second passphrase.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
| string | second_passphrase | Yes | Second passphrase | 
Return Value
?
verify()
1def verify(transaction)Verify the transaction.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
Return Value
?
second_verify()
1def second_verify(transaction, second_public_key)Verify the transaction with a second public key.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | transaction | Yes | Transaction | 
| string | second_public_key | Yes | Second public key | 
Return Value
?
to_bytes()
1def to_bytes(transaction, skip_signature \\ true, skip_second_signature \\ true)Convert the transaction to its byte representation.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| string | transaction | Yes | Transaction | 
| string | skip_signature | No | Skip first signature | 
| string | skip_second_signature | No | Skip second signature | 
Return Value
?
to_params()
1def to_params(transaction) when is_map(transaction)Convert the transaction to its params representation.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
Return Value
?
to_json()
1def to_json(transaction) when is_map(transaction)Convert the transaction to its JSON representation.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
Return Value
?
serialize()
1def serialize(transaction) when is_map(transaction)Perform AIP11 compliant serialization
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
Return Value
?
deserialize() (transaction)
1def serialize(transaction) when is_map(transaction)Perform AIP11 compliant deserialization.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | transaction | Yes | Transaction | 
Return Value
?
deserialize() (serialized)
1def deserialize(serialized) when is_bitstring(serialized)Perform AIP11 compliant deserialization.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | serialized | Yes | Serialized | 
Return Value
?
deserialize() (object)
1def deserialize(%{serialized: serialized}) when is_bitstring(serialized)Perform AIP11 compliant deserialization.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| ? | serialized | Yes | Serialized | 
Return Value
?
ArkEcosystem.Crypto.Utils.Message
sign()
1def sign(message, passphrase)Sign a message using the given passphrase.
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| String.t() | message | Yes | Message | 
| String.t() | passphrase | Yes | Passphrase | 
Return Value
Map.t()
verify()
1def verify(message, signature, public_key)Verify the message contents
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| String.t() | message | Yes | Message | 
| String.t() | signature | Yes | Signature | 
| String.t() | public_key | Yes | Public key | 
Return Value
Boolean.t()
to_params()
1def to_params(message, signature, public_key)Convert the message to its params representation
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| String.t() | message | Yes | Message | 
| String.t() | signature | Yes | Signature | 
| String.t() | public_key | Yes | Public key | 
Return Value
?
to_json()
1def to_json(message, signature, public_key)Convert the message to its JSON representation
Parameters
| Type | Name | Required | Description | 
|---|---|---|---|
| String.t() | message | Yes | Message | 
| String.t() | signature | Yes | Signature | 
| String.t() | public_key | Yes | Public key | 
Return Value
?
ArkEcosystem.Crypto.Utils.Slot
get_time()
1def get_timeGet the time diff between now and network start.
Return Value
?
get_epoch()
1def get_epochGet the network start epoch.
Return Value
?s