Skip to content

Instantly share code, notes, and snippets.

View KamilLelonek's full-sized avatar
🏋️‍♂️
Do you even lift?

Kamil Lelonek KamilLelonek

🏋️‍♂️
Do you even lift?
View GitHub Profile
<<checksum::bytes-size(4), _::bits>> = hash
:crypto.hash(:sha256, data)
versioned_hash
|> sha256()
|> sha256()
|> checksum()
|> append(versioned_hash)
:crypto.hash(algorithm, data)
@version_bytes
|> Map.get(network)
|> Kernel.<>(public_hash)
@version_bytes %{
main: <<0x00>>,
test: <<0x6F>>
}
public_key
|> hash(:sha256)
|> hash(:ripemd160)
with file_path = ".keys/key",
:ok <- File.write(file_path, private_key) do
file_path
else
{:error, error} -> :file.format_error(error)
end
{public_key, _} = :crypto.generate_key(:ecdh, :secp256k1, private_key)
private_key
|> KeyPair.to_public_key()
|> hash_160()
|> prepend_version_byte(network)
|> Check.call()
|> Encode.call()