Tonomy-Foundation / Tonomy-ID

Tonomy ID is the cross-platform mobile wallet (Android and iOS) for public and private Antelope blockchains. This application allows you to sign transactions on the block chain, share your DID and Verifiable Credentials containing your identity with others in a consensual way and log into web2 and web3 applications.
Apache License 2.0
13 stars 1 forks source link

Feature/990 chain abstraction #1008

Closed theblockstalk closed 1 month ago

theblockstalk commented 1 month ago

software API

Polymorphic classes implement chain, account and transaction features needed

storage

The only thing that needs to be stored to be able to restore an account is the private key.

When the user creates an account or login

  1. Generate the deterministic seed with generateSeedFromPassword()
  2. for each chain a. generates the private key from the seed using generatePrivateKeyFromSeed() b. For each chain, check if the account exists (if needed - Ethereum is not needed) c. Store the private key in the persistent storage d. create an IAccount for each chain

when the application opens and the App initializes, it should check for stored private keys and create a new IAccount for each chain with an account

sadiabbasi commented 1 month ago

software API

Polymorphic classes implement chain, account and transaction features needed

storage

The only thing that needs to be stored to be able to restore an account is the private key.

When the user creates an account or login

  1. Generate the deterministic seed with generateSeedFromPassword()
  2. for each chain a. generates the private key from the seed using generatePrivateKeyFromSeed() b. For each chain, check if the account exists (if needed - Ethereum is not needed) c. Store the private key in the persistent storage d. create an IAccount for each chain

when the application opens and the App initializes, it should check for stored private keys and create a new IAccount for each chain with an account

is it okay to store private key in the storage?

theblockstalk commented 1 month ago

software API

Polymorphic classes implement chain, account and transaction features needed

storage

The only thing that needs to be stored to be able to restore an account is the private key. When the user creates an account or login

  1. Generate the deterministic seed with generateSeedFromPassword()
  2. for each chain a. generates the private key from the seed using generatePrivateKeyFromSeed() b. For each chain, check if the account exists (if needed - Ethereum is not needed) c. Store the private key in the persistent storage d. create an IAccount for each chain

when the application opens and the App initializes, it should check for stored private keys and create a new IAccount for each chain with an account

is it okay to store private key in the storage?

depends how the are stored of course. If they are on the users device they are pretty good.

theblockstalk commented 1 month ago

https://github.com/Tonomy-Foundation/Tonomy-ID-SDK/issues/336 this issue is blocking the Veramo library from compiling. So I reverted to not use these libraries