This project is a Password Manager built on the Aptos blockchain utilizing the Move programming language for smart contracts and TypeScript for the frontend. The password manager ensures secure storage and access to sensitive credentials by leveraging blockchain's transparency and immutability.
- Secure Credential Storage: Store encrypted passwords on the Aptos blockchain.
- Immutable History: Track password changes with blockchain transparency.
- Decentralized: No central authority controlling access.
- User Authentication: Frontend ensures only the authorized user can manage their passwords.
- Encryption: Passwords are encrypted before storage for extra security.
- Aptos Blockchain: Base layer for storing data in a decentralized way.
- Move Language: Used to write smart contracts on the Aptos platform.
- TypeScript: For building a user-friendly frontend and interacting with the blockchain.
- Aptos SDK: To connect the frontend to the Aptos network.
- Node.js: Ensure Node.js is installed. Download Node.js
- Aptos CLI: Install Aptos CLI for deploying Move contracts.
- Aptos Wallet: Set up an Aptos wallet for testing.
- Typescript: Install TypeScript globally if not already installed:
- Clone the repository
- Install dependencies:
npm install
3.Compile the Move contract:
aptos move compile --package-dir ./move_contract4.Deploy the Move contract: Replace <account_address> with your Aptos wallet address:
aptos move publish --package-dir ./move_contract --sender <account_address>5.Configure environment variables: Create a .env file with the following variables:
APTOS_NETWORK=https://fullnode.devnet.aptoslabs.com/v1
CONTRACT_ADDRESS=<deployed_contract_address>6.Run the frontend:
npm run startThe frontend, built in TypeScript, interacts with the Aptos blockchain to provide a user-friendly interface for password management.
- Password Encryption: Uses AES or another encryption algorithm before storing data.
- Blockchain Interaction: Uses Aptos SDK to interact with smart contracts.
- Account Management: Displays saved accounts and allows updates.
- Login with Aptos Wallet: Connect your Aptos wallet.
- Add Password: Enter account details and encrypted password.
- Update Password: Modify existing credentials.
- View Accounts: Display stored accounts from the blockchain.
To deploy the smart contract:
Install Aptos CLI.
Update the Move.toml file with your wallet address:
aptos init Add your Account addr here for Deployment todolist_addr='0x5448e45d5c73f4f44a91fe9bb11748e11e79153b4e4b658287c3f901d2ca4f78' Compile and publish the contract:
aptos move compile aptos move publish
This project is licensed under the MIT License.