Crypto1010 is a CLI focused cryptocurrency, blockchain, and digital wallet simulator, aimed to educate and familiarise students on the fundamentals of cryptocurrency. The program teaches students how to create wallets, key generation, crypto transactions, RSA encryption, blockchain validation, and more.
My main contribution was in the creation and integration of the public and private keys system (keygen), integral for wallet creation, addressing, and transaction.
keygen functionalityKeyPair class for use by Wallet that cryptographically derives private and public keys for wallet identityKeyPair cryptographically derives valid Ethereum or Bitcoin addresses depending on currency type of wallet.send command behaviour to wallet address and key usage#169 (Users are able to overwrite the address of their wallets silently)#171 (send silently swallows fee/ into note text when fee/ is placed after note/)#176 (Insufficient wallet balance)#156 (Creating wallet network results in a permanent negative balance and unusable wallet)#147 (Undocumented limitation: Wallet keys can be overwritten by running multiple keygen commands)