@arc76/algorand
v1.8.2026101919
Published
Deterministic ARC76 account derivation for Algorand. https://github.com/algorandfoundation/ARCs/blob/main/ARCs/arc-0076.md
Maintainers
Readme
@arc76/algorand
Deterministic ARC76 account derivation for Algorand.
Renamed from the
arc76package (v1.x). See the migration guide if you're upgrading.
Usage
npm i @arc76/algorand --saveimport { getAccount, getEmailAccount } from "@arc76/algorand";
const account = await getAccount(password); // slot 0
const account1 = await getAccount(password, 1); // slot 1
const emailAccount = await getEmailAccount(email, password); // slot 0Both functions return an algosdk.Account ({ addr, sk }).
Post-quantum (Falcon-1024) account
import { getFalconAccount, getEmailFalconAccount } from "@arc76/algorand";
const falcon = await getFalconAccount(password); // { address, publicKey, privateKey, salt }
const emailFalcon = await getEmailFalconAccount(email, password, 1);The same 32-byte ARC76 seed is used as for the Ed25519 account, so leaking the password
compromises both - use a different slot to isolate them. Addresses match the .NET and Python
packages. Keys work with falcon-1024.
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/algorandand@arc76/solanaderive 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 (orslot) per chain if you need isolation.
