---
# System prepended metadata

title: Key Management System

---

### System description
We have dApp to which user's could connect via there wallets. Then inside this system for each user we want possibility to create new wallets. We want to make this process work just by calling a function (like: `call generate_wallet()`). After creating a wallet, we need to store seed phrase and private key inside some secure Vault, like Safety Vault. And then this wallets will interact with different DEXs. Also, we need possibility for user to receive private and seed phrases for their generated wallets upon request.
So, the system architecture looks like [this](https://i.imgur.com/K6RVYH2.jpg).


### Tasks
1. Create generator of wallets
2. Create Safety Wallet for storing keys and seed phrases
3. create API for requests of private keys and seed phrases

So, we need to develop this parts of the dApp:
* [This](https://i.imgur.com/U0zvbtr.png)
* [This](https://i.imgur.com/tMFY3hu.png)







