Disinformation: Starter Kit - Certify with Blockchain
by kandikits Updated: Jan 31, 2022
Solution Kit
A decentralized app (also known as a dApp or dapp) operates on a blockchain or peer-to-peer network of computers. In order to solve the problem of forged certificates, the digital certificate system based on blockchain technology would be proposed. It enables users to engage in transactions directly with one another as opposed to relying on a central authority. Certificates are stored on a distributed ledger, enabling anyone to access data at any time and from any location. Documents are securely stored on the blockchain. Blockchain technology saves data in an unchangeable format. In this challenge, we invite you to use blockchain to create a mechanism for validating a published source of information/article by certifying it. You may include additional steps like review etc. This kit provides a basic working application where you can store certificates in the blockchain network. You may use this to enhance or create a new application for solving this challenge Complexity : Medium
Development Environment
VSCode is used for development and debugging. Node.js is an open-source, cross-platform, JavaScript runtime environment. It executes JavaScript code outside of a browser, whereas VSCode is used to get a typical experience of IDE for developers. npm is the default package manager for the JavaScript runtime environment Node.js.
nodeby nodejs
Node.js JavaScript runtime :sparkles::turtle::rocket::sparkles:
nodeby nodejs
JavaScript 95980 Version:v20.3.0 License: Others (Non-SPDX)
Crypto Wallet
MetaMask-extension library is a software cryptocurrency wallet used to interact with the Ethereum blockchain. Rinkeby is an Ethereum test network that allows for blockchain development testing before deployment on Mainnet, the main Ethereum network.
metamask-extensionby MetaMask
:globe_with_meridians: :electric_plug: The MetaMask browser extension enables browsing Ethereum blockchain enabled websites
metamask-extensionby MetaMask
JavaScript 10096 Version:v10.31.1 License: Others (Non-SPDX)
lkd-faucetby lakediamond
Faucet to distribute rinkeby (testnet) LKD to public
lkd-faucetby lakediamond
Go 0 Version:Current License: Permissive (MIT License)
Kit Solution Source
Certficate-genertor-Dappby SuprajaChandrasekaran
Certficate-genertor-Dappby SuprajaChandrasekaran
HTML 1 Version:v1.0 License: Permissive (MIT)
Installation Guide
Download, extract and double-click Certify_kit_installer file to install the kit. Note: Do ensure to extract the zip file before running it.
Pre-Requisites
1. Download the metamask extension for chrome . 2. Remix IDE is used to generate the contract address ,click here to go Remix .
Deployment Information
Follow the below instructions to deploy and run the solution: 1. Click the Certify_kit_installer from the installation Guide, it Download the Certify_kit_installer it is a zip folder unzip the folder and double click it. 2. It downloads the repo automatically. Then it to enter any key after it asks you to Y/N. 3. If you give 'Y', install dependencies. 4. Open the remix IDE link is given in the Pre requirement there choose the Injected Web3 environment, find the contracts, and create the file as certi.sol then copy and paste the entire .sol from the repo. 5. Then click the solidity compiler, and change the solidity version to 8.7, in compiler configuration enable the auto compile and click the compile certi.sol. It Generates ABI copy and paste in app.js in 21 line number which is present inside the js. 6. Then click run and deploy in Remix IDE, there click Deploy, that will generate Contract address copy and paste it in line number 19 in app.js. 7. In Metamask select the Rinkeby Test Network. To connect the Metamask follow "Metamask Connection" given below. 8. From the unzip folder find the start batch file and double click the file to run. 9. Now the http://localhost:3000 will open. Make sure Rinkeby Network is connected to localhost, if not there will be connect option click that or in account, there will be three dots click that and select connected sites at the end there is Manually connect to the current site click that it connect to your localhost. For any support, you can direct message us at #help-with-kandi-kits
Metamask Connection
1. After adding Metamask extension to your browser, click get started there you will see 'IMPORT WALLET' and ' CREATE WALLET' there click the create wallet. 2. There you select I agree and it asks you to create the password. After creating the password it shows you the recovery phrase. 3. If you forget the password you can use the recovery phrase. 4. Then one Account will be created, and the default network will be there 'ETHEREUM MAINNET'. 5. At the top there is a Network tab there click show/hide network there find and select the "show test networks". 6. To collect ETH in your account click the link . 7. Copy the address which is present below the account, paste it into Testnet account address then click send the request.
Certificate Creation
1. In http://localhost:3000 it shows 'home' and 'create certificate' there select the create certificate. 2. Fill Certificate details, then click the 'collect certificate' there will be popup from the Metamask there you click the 'confirm'. 3. After 30 seconds you see the alert message "Certificate Issue with Number: Certificate ID" then click ok. 4. Return back to your home page Enter your certificate ID then you can see your certificate added to blockchain. 5. If You need to know about your transaction details click here . 6. paste your account address in search bar, there you can see the transaction details.
Support
For any support, you can direct message us at #help-with-kandi-kits