Skip to main content

Deterministic ARC76 account derivation for Solana. https://github.com/algorandfoundation/ARCs/blob/main/ARCs/arc-0076.md

Project description

arc76-solana

ARC76 Account

Deterministic ARC76 account derivation for Solana.

Usage

pip install arc76-solana
import base58
from arc76.solana import get_account, get_email_account

account = get_account(password)  # slot 0
print(base58.b58encode(account.public_key).decode())  # address
print(base58.b58encode(account.secret_key).decode())  # private key (Phantom export format)

email_account = get_email_account(email, password)

Both functions return a SolanaAccount(public_key, secret_key). The 32-byte ARC76 seed is expanded directly into an Ed25519 keypair (no BIP32/BIP44 hierarchical derivation, no mnemonic):

  • public_key — 32-byte Ed25519 public key; base58-encode it for the Solana address.
  • secret_key — 64-byte expanded Ed25519 secret key (seed || public_key); base58-encode it for the private key, the same format wallets like Phantom use for private-key export.

The Ed25519 keypair is expanded via PyNaCl (the Python binding for libsodium), matching what tweetnacl (TypeScript) and Chaos.NaCl (.NET) do. Deliberately does not depend on solana-py/solders — only Keypair-equivalent functionality (no RPC) is needed here.

Please use a password of at least 50 characters for real accounts — the account's security is entirely the password's security.

⚠️ Same-curve chains share the literal same keypair. arc76-algorand and arc76-solana derive the identical Ed25519 keypair from the same password/email/slot — leaking the key on one of those chains leaks it on the other. Use a different password (or slot) per chain if you need isolation.

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

arc76_solana-1.2.2026080407.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arc76_solana-1.2.2026080407-py3-none-any.whl (3.1 kB view details)

Uploaded Python 3

File details

Details for the file arc76_solana-1.2.2026080407.tar.gz.

File metadata

  • Download URL: arc76_solana-1.2.2026080407.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for arc76_solana-1.2.2026080407.tar.gz
Algorithm Hash digest
SHA256 8a622aa12cab58fa5e82e54498d35fb76bc774a12c5298928ca342e1e5bdfbaa
MD5 c049586df6259c9541effa3b6d16d6b0
BLAKE2b-256 7b837f5c2605a2aafcd19558c925320c9b729c696d3a6077d35317fe60ab50c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for arc76_solana-1.2.2026080407.tar.gz:

Publisher: publish-pypi.yml on scholtz/ARC76Account

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file arc76_solana-1.2.2026080407-py3-none-any.whl.

File metadata

File hashes

Hashes for arc76_solana-1.2.2026080407-py3-none-any.whl
Algorithm Hash digest
SHA256 68abbcc6c7b1bbbc69178a60c680bde72ec1a6704fd1edcec9d3d63a7322dcaa
MD5 65086a845ce764de2d40d45dfde8c62e
BLAKE2b-256 49c8c9da5e04e72a79a6604ac392c0e50d826f10b179430943e14583dd7ddb2b

See more details on using hashes here.

Provenance

The following attestation bundles were made for arc76_solana-1.2.2026080407-py3-none-any.whl:

Publisher: publish-pypi.yml on scholtz/ARC76Account

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page