AleoCoin Wallet: How to download, install and use?

Aleo is the first platform to offer completely private apps. Aleo achieves this by using decentralized systems and zero-knowledge cryptography to secure user data online. At its core, Aleo offers users and application developers unlimited computing resources with absolute privacy. By designing Aleo as a blockchain that is private, open source, and built for the web by default, the developers believe that Aleo is uniquely positioned to address the shortcomings of blockchain adoption. With Aleo, users have access to a world of truly personalized web services without relinquishing control over their personal data.

Creating an Aleo address (account)

An Aleo  account  consists of  an account private key , an  account  view key ,  and an account  address  .

The account’s private key is used to authorize a transaction that updates the global state of the account’s records. The account view key is used to decrypt account entries that are encrypted under the user’s account address. Finally, the account address allows users to interact with each other by sending and receiving records that encode application values ​​and data.

To protect user  assets  and  record data  ,  you should never disclose your account’s private key to  third parties. For real applications on Aleo, users must obtain a compute key from their account’s private key to allow third parties to  insecurely  run applications and generate transactions on behalf of the user.

Create a new Aleo account  here  .

private key

The account’s private key is generated from randomly selected  initial values ​​for the account  . This account seed is used to create:

  • secret key  for account signing scheme,
  • the initial value of the  pseudo-random function  for the transaction serial numbers and
  • commit randomness   for the account commit scheme.

Private key format

APrivateKey1b47dMA8f9GfXPsW9s16qWfiYYmWGAAcorK9RkaVpBeFA

The account’s private key is formatted as a Base58 string of 58 characters. The account’s private key is encoded  with a private key prefix  , which reads  APrivateKey1, indicating that it is a private key and should not be shared with other users.

Account View Key

The Aleo account view key is derived from the account’s private key and allows users to decrypt their  entries  from the global ledger. Because account view keys can access every entry in a user’s account, this key can be used by third-party auditors to verify the account’s full history.

The account view key consists of:

  • secret key  for the account encryption scheme.

View Key Format

AViewKey1cVP45x3E1TxJFgiJqawy7w5WQDsUXWTbpWAXSXB1sDw8

The account view key is formatted as a Base58 string of 56 characters. The account’s view key is encoded  with a view key prefix  , which reads  AViewKey1, indicating that this is a view key and should only be provided to authorized parties.

Account address

The Aleo account address is a unique identifier that allows users to transfer value and record data to each other in transactions.

The account address consists of:

  • the public key  for the account’s encryption scheme.

Address format

aleo1y90yg3yzs4g7q25f9nn8khuu00m8ysynxmcw8aca2d0phdx8dgpq4vw348

The account address is formatted as a Bech32 string of 63 characters. The account address is encoded  with an address prefix  that reads  aleo1.

Account prefixes

TypeHuman readable prefixprefix bytes
Account private keybyteAPrivateKey1[ 127, 134, 189, 116, 210, 221, 210, 137, 144 ]
Account View KeybyteAViewKey1[ 14, 138, 223, 204, 247, 224, 122 ]
Account addressa threadaleo1aleo1

Offline accounts

In many cases, such as corporate settings, it is recommended that sensitive keys and data be handled on isolated standalone computers. An Aleo account can be created on an offline computer and is available for immediate use. Combined with account verification keys, the user can ensure that their private key remains offline even to create transactions.

While there is no perfect solution, it is recommended that you create a new Aleo account on a disconnected device to minimize the risk of the account’s private key being leaked to unintentional parties.

Account data withdrawals

The account commit output is used to generate an account view key, which consists of a secret encryption key. This secret encryption key is a scalar element of the field obtained from the account commit output. To ensure that the account representation key is valid, the account commit output must be represented in a scalar field.

Create an account

Global instances of Aleo parameters and routines are given.

Generate private  key

  1. Sample 32 bytes  seedfrom random
  2. Creating Private Key Components
    • sk_sig= blake2s(  seed, 0)
    • sk_prf= blake2s(  seed, 1)
    • r_pk= Blake2s(  seed,  counter)

3.  private_key= (  seed,  sk_sig,  sk_prf,  r_pk)

counteris a  u16value that is repeated until a valid value  view_keycan be obtained fromprivate_key

Generate  key

  1. Construct pk_sig= AccountSignature.GeneratePublicKey( , )ppaccount_sigsk_sig
  2. view_key= AccountCommitment.Commit( , ( , ), )ppaccount_cmpk_sigsk_prfr_pk

Create an Aleo address

  1. address= AccountEncryption.GeneratePublicKey( , )ppaccount_encview_key

Score Chart

graph TD
A["Seed (32 Bytes)"]
A --> |"Blake2s(Seed, 0)"| B(sk_sig)
A --> |"Blake2s(Seed, 1)"| C(sk_prf)
A --> |"Blake2s(Seed, counter)"| D(r_pk)

B --> E(Account Private Key)
C --> E(Account Private Key)
D --> E(Account Private Key)

E --> F(Account View Key)
F --> G(Account Address)

Records

A record is the main  data structure  for encoding custom assets and application state.

Each account entry contains information indicating the owner of the entry, its stored value, and the state of the application. An Aleo account can create a  transaction  to use an entry and create a new entry in its place. Entries on Aleo are encrypted at the address of the owner of the entry, which guarantees complete confidentiality of all entries on Aleo.

Recording Components

Aleo entries are written in the following format:

ParameterTypeDescription
ownerthe addressProgram entry owner
gatesu64Balance Aleo (at the gate) recording program
dataMap<Identifier, Entry>Program Data
noncegroupNonce recording program

Owner

aleo1r0dry2tlhjt0yplctz85692kjpqsadn7xgxsmrehkasykjxynypqza3fpl

The owner  of the record  is the  address of the account  , which specifies the party authorized to spend the record.

gates

4130

The entry gate   determines the number of Aleo credits stored in the entry.

Data

[ RECORD BYTE MAP ]

These  records  encode arbitrary information about the application.

disposable

3024738992072387217402876176731225730589877991873828351104009809002984426287group

Record Encryption

When a record is created in a transaction, it is securely encrypted in the transaction and stored in the ledger. This allows users to securely and privately transfer recorded data and valuables to each other over a public network. Only the sender and recipient with the appropriate account view keys can decrypt these records.

Read more articles about cryptocurrencies and mining at CRYPTO-WALLETS.ORG.

The Telegram channel about cryptocurrency and mining Bitcoin, Ethereum, Monero and other altcoins:

CRYPTO WIKIES | Bitcoin & Altcoins Mining