Arcturus Docs
  • Note!
  • Bitcoin and Decentralized Structure
  • Introducing to Arcturus Chain
  • For End User
    • How to add Arcturus to Metamask
    • Obtaining tARC from the Faucet
    • Faucet API
    • How to Use Arcscan
  • For Nerds
    • Proof Of Stake
    • Arcturus Chain
      • Accounts
      • Messages and Transactions
      • Messages
      • Arcturus State Transition Function
      • Code Execution
      • Blockchain and Mining
      • Applications
        • Token Systems
        • Financial Derivatives and Stable-Value Currencies
        • Identity and Reputation Systems
        • Decentralized File Storage
        • Decentralized Autonomous Organizations
        • Further Applications
      • Fees
      • Computation And Turing-Completeness
      • Currency And Issuance
      • Mining Centralization
      • Scalability
      • Conclusion
    • Arcturus Pay
      • About
      • Technolog & Use Cases
      • Developer Instructions
        • arcpay_dev-1
        • arcpay_dev-2
        • arcpay_dev-3
  • Updates & News
Powered by GitBook
On this page
  1. For Nerds
  2. Arcturus Chain

Accounts

PreviousArcturus ChainNextMessages and Transactions

Last updated 10 months ago

In Arcturus, the state is made up of objects called "accounts," with each account having a 20-byte address and state transitions being direct transfers of value and information between accounts. An Arcturus account contains four fields:

  1. The nonce, a counter used to make sure each transaction can only be processed once.

  2. The account's current ARC balance.

  3. The account's contract code, if present.

  4. The account's storage (empty by default).

"ARC" is the main internal crypto-fuel of Arcturus, used to pay transaction fees. In general, there are two types of accounts: externally owned accounts, controlled by private keys, and contract accounts, controlled by their contract code. An externally owned account has no code, and one can send messages from an externally owned account by creating and signing a transaction; in a contract account, every time the contract account receives a message, its code activates, allowing it to read and write to internal storage and send other messages or create contracts in turn.

Note that "contracts" in Arcturus should not be seen as something that should be "fulfilled" or "complied with"; rather, they are more like "autonomous agents" that live inside the Arcturus execution environment, always executing a specific piece of code when "poked" by a message or transaction, and having direct control over their own ARC balance and their own key/value store to keep track of persistent variables.