# Smart Contract Registry ## DESIGN Addreses will be intially taken from the verified contract lists of the respective block explorers to extract the abi and other necessary information Each address will be associated with UUID to help distinguish it better Later on users/admin can add unverified contracts ABI using the provided fucntionality A central application can be used for forwarding all app notifications to enable the users and admins to be kept up todate with stae of the system. --- ### Main page Will include field to enter contract address/uuid. - **View page** - **Add contract abi** - **Delete entry** - **Update Entry** --- ### Contract display page This requires a simple database to store the necessary data for each contract addresss registerd into the db. Following are the data metrics for each address: - Contract ABI - Contract Owner - Interval Duration (to Check for updates) - Downvote count - Upgrade check count - verify check The application will have these following metrics displayed for each address The contract owner specifying the owner of the contract The conttract ABI corresponding to that contract address A dropdown menu to select the interval in which to check if the contract owner / code was updated. A default value woulkd be assigned on adding new entry to the DB. A downvote counter which users can use to convey if a certain contract address and its abi dont match. More down votes indicating the probability that it is a false entry is high and needs to be looked into An upgrade button which allows user to upgrade contract which they know are to be upgraded or have already been upgraded but the same has not been reflected in the DB. A verify button which enables anyone to verify the abi by uploading the source code, after which it shows verified. --- ### Periodic checking multiple instances will be present, each new entry will have its seperate instance created which will be managed by a dedicated script. These instances which will check for any updates/upgrades continuosly according to the specifed duration. Default duration would be 1 week. --- ### Upgrades upgrades to smart contract code or owner address can be monitored via web3js api and or ethrscan api and corresponding api for the block explorers. --- ## ARCHITECTURE ![](https://i.imgur.com/nTwCPAO.png) --- ## PRODUCT DEMO [DEMO](https://www.figma.com/proto/a215LCFnLbIOau18e4lO41/Crypto-Currency-Website-design-(Community)?node-id=106%3A1035&scaling=scale-down&page-id=0%3A1&starting-point-node-id=106%3A1035)