Professional Documents
Culture Documents
Minor Project Report Aanchal
Minor Project Report Aanchal
Submitted by:
1|Page
Project-I entitled
2|Page
CERTIFICATE
This is to certify that Project -I entitled
Principal
3|Page
Acknowledgement
I would like to express my heartfelt thanks to my Supervisor Mr. Arvind Upadhyay, CSE, for his guidance,
support, and encouragement during the course of my study for B.Tech.(CSE) at IPS Academy, Institute of
Engineering & Science, Indore. Without his endless effort, knowledge, patience, and answers to my numerous
questions, this Project would have never been possible. It has been great honor and pleasure for me to do Project
under his supervision.
My gratitude will not be complete without the mention of Dr. Archana Keerti Chowdhary, Principal, IPS
Academy, Institute of Engineering & Science, and Dr. Neeraj Shrivastava, HOD CSE, IPS Academy,
Institute of Engineering & Science for the encouragement and for giving me the opportunity for this project
work.
I also thank my friends who have spread their valuable time on discussion/suggestions on the critical aspects of
this report. I want to acknowledge the contribution of my parents and my family members, for their constant
motivation and inspiration.
Finally, I thank the almighty God who has been my guardian and a source of strength and hope in this period.
4|Page
CONTENTS
List of figures 7
List of Tables 8
Abstract 9
CHAPTER 1: INTRODUCTION 10
1.1 Overview 11
1.2 Literature Survey 14
3.1.1 Description 25
3.1.2 Reason for use 25
CHAPTER 4: DESIGNS 28
4.1 Use Case Diagram 29
CHAPTER 7: CONCLUSIONS 39
REFERENCES 43
6|Page
LIST OF FIGURES
7|Page
LIST OF TABLES
8|Page
ABSTRACT
Blockchain is a shared, immutable ledger that facilitates the process of recording transactions and tracking assets
in a business network. An asset can be tangible (a house, car, cash, land) or intangible (intellectual property,
patents, copyrights, branding). Virtually anything of value can be tracked and traded on a blockchain network,
reducing risk and cutting costs for all involved.
MetaMask is a software cryptocurrency wallet used to interact with the Ethereum blockchain. It allows users to
access their Ethereum wallet through a browser extension or mobile app, which can then be used to interact with
decentralized applications.
9|Page
CHAPTER 1 INTRODUCTION
10 | P a g e
Figure 1
The main purpose of this project is to build a Twitter blockchain web 3.0 with Solidity, Next.js, Sanity.io. What
is special about this is we are following the twitters functionality where we can put our own nft and mint it and
set it as our profile images since Twitter decided we can officially add nft as our profile images and link them to
our profile. We will build the frontend with next.js and style it with Tailwind CSS. We will also create our own
smart contract with solidity.
In simple words, Blockchain is a cloud-based system to store information. Blockchain is the underlying network
of cryptocurrency. There are many cryptocurrencies in the market. The most important ones are
Bitcoin, Ethereum, Tether, and XRP.
This technology enhances flexibility, security issues, and even data transfer processing due to its advantages.
11 | P a g e
1.1 OVERVIEW
Definition:
Scientists first proposed the Blockchain technology in 1991. The original motto of this technology was to store
digital data so that not to get it modified. Blockchain acts as an open-source database.Later a group of Computer
Scientists adopted Blockchain technology to form a digital cryptocurrency named Bitcoin. Once a blockchain
contains written data, it is hard to change it. This property enhances the security of cryptocurrency.In this
technology, each block represents a structural and functional unit. A block holds data, the hashed value of that
block, and the hashed value of the last block. These blocks link each other similar to a chain.
Benefits of Blockchain
Blockchain shows the history of data. In other databases, we get the updated data only, but we get the history of
updating in Blockchain’s case.
2. Decentralized System
Blockchain is a decentralized system. It means there is no single unique database to store information. Rather
there are many copies of it. So, no one can target a single structure.
3. Controls
In Blockchain, there is no single control order. The copies of Blockchain are available in every node and updated
everywhere too. So, the information is secured.
Starting from Crypto-enthusiasts to ending with Business minds, Blockchain is a solution to many problems these
days. The concern may be about security or smart transfer of data. Blockchain promises to provide ways. With
the advent of Quantum computer security in classical systems is of great question. The future may ask to secure
every system even more. Also, it reduces the risk of hacking and data tamper.
A Blockchain is a primarily decentralized structure. So, the usage of this system also rests upon decentralized
technologies. Before this, we need to know about Smart Contracts.
12 | P a g e
1. Smart Contracts
A smart contract is a digital form of contract which has programmable architecture. So, the details of the contracts
are stored in the Blockchain block. This enhances communication. It is also useful to keep track of assets for the
long term. Also, relations with consumers are dependent upon smart contracts.
2. Web Servers
In a web server, data security is very crucial. Typically, a web server has two parts. API and Data. Each block
here serves as a node and joins the request-response cycle.
3. Banking
It typically takes multiple hours to encash a cheque and update the statement. While using Blockchain technology,
it will be done in merely ten minutes. The time needed is the same as the time necessary to add a block in the
Blockchain.
4. Cryptocurrency
5. Healthcare
Healthcare professionals can use Blockchain to store patient’s records safely there. It will enhance the safety of
the information.
6. Records
Property records should use Blockchain with Smart Contracts. This will uphold the statements to all the parties.
7. Voting
Using Blockchain in Voting will indulge in the safety of counting and misinterpretation.
8. Digital Marketing
With easy Consumer-market relations and secured way of data transfer, Blockchain has a great opportunity in
Digital markets too.
13 | P a g e
Blockchain may well be viewed as a public ledger and each submitted dealings is place during a list of blocks.
This chain develops as new blocks are mounted to that incessantly. With an awfully designed data storage
structure, transactions in Bitcoin system might occur with no any third party and therefore the core innovation to
construct Bitcoin is blockchain, that was initial planned in 2008 and dead in 2009 [1]. These days digital cash
has become a stylish expression in each trade and profound world. In concert of the foremost eminent digital
cash, Bitcoin has delighted an enormous success with its capital market achieving ten billion greenbacks in 2016
[2]. Asymmetric cryptography and distributed accord calculation are dead for consumer security and record
consistency. The blockchain technology has key qualities of decentralization, persistence, anonymity and
auditability. With these attributes, blockchain will considerably spare the price and enhance the productivity. As
a matter of 1st importance blockchain is permanent. Dealings cannot be altered once it's stuffed into the
blockchain. Organizations that need high responsibility and honesty will utilize blockchain to draw in
purchasers. Moreover, blockchain is distributed and may avoid the only purpose of disappointment
circumstance. Blockchain are often utilised in several money services as an example, advanced resources,
settlement and on-line payment [3], [4]. Additionally, it may be applied into alternative fields as well as sensible
contracts [5], public services [6], web of Things (IoT) [7], name systems [8] and security services [9]. Those
fields favour blockchain in multiple ways in which. It’s been proved that miners might come through larger
revenue than their justifiable share through inconsiderate mining strategy [10]. Moreover, it's been shown that
privacy escape might additionally happen in blockchain even users solely create transactions with their public
key and personal key [11] Tschorsch et al. [12] created a technical survey regarding suburbanized digital
currencies as well as Bitcoin. Nomura analysis Institute created a technical report regarding blockchain [13]. The
rest of this paper is organized as follows.
1. BLOCKCHAIN ARCHITECTURE
Figure – 2
14 | P a g e
Blockchain could be a sequence of blocks, that holds an entire list of dealing records like standard public
ledger [14]. Figure one illustrates associate degree example of a blockchain. With a previous block hash
contained within the block header, a block has just one parent block. Its price noting that uncle blocks
(children of the block’s ancestors) hashes would even be hold on in ethereum blockchain [15]. The primary
block of a blockchain is named genesis block that has no parent block. We tend to then justify the internals of
blockchain in details.
a. Blocks Figure 3 3 A block consists of the block header and the block body as shown in Figure 2.
Figure 3 3
In particular, the block header includes: (i) Block version: indicates that set of block validation rules to
follow. (ii) Merkle tree root hash: the hash worth of all the transactions within the block. (iii) Timestamp:
current time as seconds in Greenwich Mean Time since Jan one, 1970. (iv) nBits: target threshold of a
legitimate block hash. (v) Nonce: associate degree 4-byte field, that sometimes starts with zero and will
increase for each hash calculation (will be explained in detail in Section III). (vi) Parent block hash: A
256-bit hash worth that points to the previous block.
15 | P a g e
16 | P a g e
Blockchain technology was developed as a way to solve problems associated with digital currencies. A
blockchain is an immutable ledger of transactions linked through digital cryptography and usually shared
publicly across multiple computers around the world.
Blockchain technology holds a lot of promise for improving the security and accessibility of many products and
services across various industries. But for all its potential benefits, there are still several problems with
blockchain that many developers are working to solve.
Problem Domain
1. Scalability
A long blockchain can produce challenges for an organization as it runs into trouble with scalability. There are
several factors at play here.
First, each computer on the network working to confirm transactions and keep accurate records of the blockchain
must store data starting from the genesis block to the most recent block. These computers -- called nodes -- must
have the capacity to store that data. The redundancy creates a more secure system, but it also becomes
increasingly inefficient as the network and blockchain grow.
Next, when creating a new block on the blockchain, the node that confirms the transactions must broadcast the
new block to every other node on the network. They can then verify the transactions and add the block to the
blockchain. This can use substantial network resources as the network grows in size.
2. Energy consumption
Blockchains that use a proof-of-work system to determine which node wins the right to confirm the next block in
the chain can become extremely energy-intensive. Both Bitcoin and Ethereum use the proof-of-work model
where nodes compete to solve a complex equation fastest. As the network grows, the number of competitors
increases, and there's a fight for more computer power, which consumes energy. The energy consumption is
extremely inefficient because ultimately just one node will win the right to confirm the next block.
3. Speed
Blockchain transactions are relatively fast for account-to-account transfers, but the decentralized nature of
blockchain can make it a poor tool for everyday transactions.
When you swipe your debit or credit card at a store, you can confirm the transaction in a matter of seconds.
Behind the scenes, a network of payment processors works to move money from your account to the merchant's
account, but the whole process can actually take a day or two. In the meantime, the merchant can trust that the
issuing bank of the payment card will make good on the payment. This trust allows payment card networks to
process thousands of transactions per second.
4. No universal standards
Almost every implementation of blockchain technology is unique. That creates a couple of challenges for
businesses and developers working on various applications.
17 | P a g e
First, it makes interoperability between blockchains difficult. If one company wants to share data with another
company's blockchain, they'll likely need to develop additional tools to allow data to flow between the two
blockchains. There are dozens of blockchain interoperability solutions already in use, but the fact that no one
solution fits all highlights the fragmented standards of blockchain implementations.
The second challenge comes about when developers create something on a blockchain (for example, a smart
contract or a decentralized finance app). Since there are no universal standards, a developer will have to rework
everything to offer the same product on another blockchain. The lack of standards may also open up
vulnerabilities in code as developers work with less familiar platforms.
5. Privacy
Blockchain was designed to be publicly distributed. That means anyone can see the data written to the
blockchain. Although the information is anonymized using blockchain wallet addresses as identifiers, the other
details of a transaction are plain to see. Nobody's going to care about the $20 worth of Bitcoin you send to a
friend, but some data and transactions require a greater level of privacy.
1. Cross-Border Payments
The Problem: The current state of international payments through banking channels is a hotch-potch, to say the
least. It is a multistep process that involves a lot of intermediaries. Furthermore, each step of the process takes a
lot of time and also requires a hefty amount of money.
In fact, according to the World Bank, the average transaction fee for worldwide payments is around 7%. That’s a
lot!
And when you include the benefits of added security and transparency into the mix, blockchain is surely a better
solution for global monetary transactions.
18 | P a g e
The Problem: Supply Chain Management refers to the planning and execution of all related processes leading to
a finished product deployment. Generally, it constitutes a network of entities 3 individuals or businesses that start
from raw material suppliers, straight to the product manufacturers, and then down to the distributors.
A well-optimized supply chain ensures maximum productivity with reduced fraudulent activity and overhead
costs. As you can imagine, implementing this in the real world is a real hectic job. Automation efforts have been
made using AI and Machine Learning, but blockchain promises to be a game-changer in this area. So, this is one
of the real world problems solved by blockchain.
Furthermore, since all the products can be tracked in real-time, it reduces the risks of misplacement or goods
getting stuck in the supply chain.
And if that’s not all, blockchain offers scalability at unimaginable levels, with large databases being available from
multiple locations throughout the world. This means no matter how big your business is or how spread across the
globe it is, using blockchain, you will be able to manage your supply chain effortlessly.
The Problem: At its core, we create contracts and agreements because there is a lack of trust amongst the
transacting parties. As a result, we go through this legal procedure of creating contracts, a multistep process
involving even more parties and tons and tons of paperwork.
As a result, a lot of time and money are spent on the intermediaries. Just imagine the last time you created a
contract and how much money you had to pay your lawyer for creating all those regulatory paperwork, or how
much time you spent driving up and downtown to gather all the signatures.
Even though we take this as the norm and a part of creating contracts and agreements, all these inconveniences
can be avoided by leveraging blockchain technology, specifically smart contracts.
So, this is one of the real world problems solved by blockchain.
Now, since the smart contracts are stored on the blockchain, the terms and conditions can’t be altered or
manipulated. Furthermore, everything is open and publicly available, allowing for greater transparency.
Tradelanse: It helps digitize the supply chain by easing agreements and traditional contracts.
Tradeix: Tradeix is rewriting working capital finance and trade using blockchain. They provide value for
alternative funders, banks, value-added providers, and so on!
4. Identity Theft
The Problem: At its core, your identity is nothing more than a collection of claims regarding you as a person.
This includes data on where you live, your passport number, driving license, social security number, and so on.
All these are data points that are used by governments and stored in centralized databases.
A bad actor can potentially get hold of one of these documents, and exploiting certain security flaws, steals your
identity. They can now use your identity to gain some financial advantage or obtain credit in your name. This is a
serious problem! In fact, many criminals also steal a dead person’s identity to commit crimes and get away with
it. So, this is one of the real world problems solved by blockchain.
Now in case, you want to access your personal data or provide authorization, you can use your private key to verify
your identity. It is a simple method but provides a lot of security over restricted identity theft as it is carried out
today.
NewBanking: NewBanking allows users to share their identities over the web without worrying about losing or
sacrificing their sensitive data.
Sovrin: Sovrin is offering the world’s first self-sovereign identity(SSI) network.
Uport: Uport lets the business build a trusted ecosystem and offer the customers and partners a way to transact
securely.
20 | P a g e
The Problem: The current healthcare systems use centralized systems to record and manage patient data. These
can be less secure and subject to misinformation.
There have been numerous cases of data breaches in hospitals where patient data like credit card information and
genomic testing records were stolen. In fact, between the span of 2009 to 2017, over 176 million patient records
were compromised because of data breaches.
Furthermore, the current state of interhospital communication of patient data is a complete mess. Many times
patients choose to switch hospitals. Sometimes, because of emergencies, they are admitted to hospitals in a
different network.
Now, since the current system doesn’t facilitate quick and easy exchange of patient records from their primary
care provider, they are now forced to create a new medical record, which is a loss of time as well as money.
Next comes security. Despite being transparent and public, blockchain can also help keep your data private by
concealing your identity with secure codes that will protect all your sensitive data. If and even necessary, you need
to provide a private key, and only then will the information be accessible.
21 | P a g e
2. Blockchain in Cyber Security: Though the blockchain is a public ledger, the data is verified and encrypted
using innovative cryptography technology. In this manner, the information or data is less likely to be attacked or
altered without authorization.
3. Blockchain will remove the requirement of the third party: With the help of Blockchain technology,
basically, it is possible to impact a varied range of processes and techniques. It eliminates the need of trusted
third party in the transactions. Well most prominent organizations in the world exist today to function as a
trusted third party, for instance, SWIFT, and the Depository Trust Cleaning Company.Corporate chances
flourish for companies that can build applied Blockchain technologies aiming for particular transactions, like the
mortgage industry. The existing mortgages needed a complicated web of title searches, title insurance, and
uncountable minor transaction fees which are required to keep the system running. These systems occur because
traditionally, the transfer of land has been a process which requires a significant amount of belief in the old
records.
The Blockchain in Forecasting: The blockchain technology is set to alter the complete methodology for
research, consulting, analysis and forecasting. The global distributed prediction markets are created with the help
of online platforms.
4. Use of Blockchain in the Internet of Things and Networking: Different companies like Samsung and IBM
are utilizing the blockchain technology for a new concept called ADEPT, this will help to create a distributed
network of IoT devices. The blockchain technology will remove the requirement for a central location to manage
the communication between them; this will function as a public ledger for a massive number of devices. The
devices may communicate with each other to upgrade the software, handle the errors and observe energy
practice.
5. Blockchain in cloud storage: The data on a centralized server is exposed to hacking, loss of data, or human
error. With the help of blockchain technology, it is possible to make the cloud storage more protected and robust
against hacking.
1. Popular - it is commonly used, so users only need one plugin to access a wide range of dapps.
2. Simple - Instead of managing private keys, users just need to remember a list of words, and transactions
are signed on their behalf.
3. Saves space - Users don’t have to download the Ethereum blockchain as it sends requests to nodes
outside of the user’s computer.
4. Integrated - Dapps are designed to work with MetaMask, so it becomes much easier to send Ether in and
out.
22 | P a g e
23 | P a g e
Process-driven software development is based on rigorously defined activities and tasks that are also repeatable
and measurable. Formal processes facilitate planning, analysis of requirements from multiple angles, design of
high-quality software models by following standards and using team-based tools, and incorporation of quality
through walkthroughs, inspections, and testing. As a result, such formal processes enhance quality and maximize
user benefits.
The process of discipline is complex. This is because a process considers myriad different hard and soft factors
that impact development. Many software developers argue that processes restrict their creativity. Far from that,
processes enable creativity with value. This is because processes ensure the effort made by architects, designers,
developers, and testers will be well directed toward the commonly agreed goals (business objectives) of a project.
Processes also facilitate measures and metrics that indicate individual and team productivity and quality. Metrics
and measurements in software projects also enable the assignment of responsibilities and accountabilities. To
develop a good product we need a good development method. One very popular agile framework for this is
iterations and increments.
The iterations and increments as shown in Figure 2 are the basis of most modern-day approaches to developing
good software. In this iterative and incremental approach, no deliverable is produced in a single attempt. Instead,
at least three iterations (repetitions) are undertaken before producing a deliverable. This is followed by
incrementally adding another package, which would have its own three or more iterations. The three terms
iteration, incremental, and parallel are further discussed next.
24 | P a g e
Iterative
The iterative aspect of a process enables the repetition of tasks. As a result, the deliverables are produced gradually.
For example, when a use case is iterated, additional material is added to the description of the use case4such as
alternative flows within the use case. The iterative approach encourages a slow and steady philosophy rather than
hurrying and finishing up a deliverable in the first attempt. Deliverables are gradually matured by undertaking at
least three iterations across multiple other deliverables. For example, while following an iterative process one
might move from an initial use case to another use case in another diagram, then identify classes and draw a
sequence diagram before coming back to the original use case and completing it.
Incremental
The incremental aspect of a process enables adding new elements and diagrams to an existing deliverable. An
example is to add new packages to existing or developing packages. New requirements are thus discovered and
modeled incrementally. This incremental aspect of the process enables the creation of parts of a system in as
complete a manner as possible before proceeding with the development of additional parts of the system. The
incremental aspect of a process often goes hand in hand with the iterative aspect. For example, while a new
deliverable is incrementally added (a new use case), an existing deliverable is iteratively augmented during a later
iteration (e.g., additional steps added to a use case).
3.1.1 Description
1. Requirement gathering & analysis: In this phase, requirements are gathered from customers and checked
by an analyst whether requirements will be fulfilled or not. Analyst checks that need will achieve within
budget or not. After all of this, the software team skips to the next phase.
2. Design: In the design phase, the team designed the software the different diagrams like the Data Flow
diagram, activity diagram, class diagram, state transition diagram, etc.
3. Implementation: In the implementation, requirements are written in the coding language and transformed
into computer programs which are called Software.
25 | P a g e
4. Testing: After completing the coding phase, software testing starts using different test methods. There are
many test methods, but the most common are white box, black box, and grey box test methods.
5. Deployment: After completing all the phases, the software is deployed to its work environment.
6. Review: In this phase, after the product deployment, the review phase is performed to check the behavior
and validity of the developed product. And if there is any errors found then the process starts again from
the requirement gathering.
7. Maintenance: In the maintenance phase, after deployment of the software in the working environment
there may be some bugs, errors or new updates are required. Maintenance involves debugging and new
additional options.
26 | P a g e
OS Windows 10 64 bit
Table 1: Specification of hardware
IDE VS Code
Deployment Vercel
Table 2: Specification of software
27 | P a g e
CHAPTER 4 DESIGNS
28 | P a g e
29 | P a g e
30 | P a g e
5.1.1 Frontend -
● Next.js - Next.js is an open-source web development framework built on top of Node.js enabling React
based web applications functionalities such as server-side rendering and generating static websites.
● React.js - React is a free and open-source front-end JavaScript library for building user interfaces based
on UI components. It is maintained by Meta and a community of individual developers and companies.
● Tailwind CSS – Rapidly build modern websites without ever leaving your HTML.
A utility-first CSS framework packed with classes like flex, pt-4, text-center and rotate-90 that can be
composed to build any design, directly in your markup.
5.1.2 Backend -
● Sanity.io - Sanity.io is the unified content platform that powers better digital experiences.
Sanity is a perfect mix of ease-to-use paired with the ability to customize almost anything you want.
● Solidity – Solidity is an object-oriented, high-level language for implementing smart contracts. Smart
contracts are programs which govern the behaviour of accounts within the Ethereum state.
5.1.3 Hosting –
● Vercel – Vercel is a platform for static sites and frontend frameworks, built to integrate with your
headless content, commerce, or database.
We provide a frictionless developer experience to take care of the hard things: deploy instantly, scale
automatically, and serve personalized content around the globe.
We make it easy for frontend teams to develop, preview, and ship delightful user experiences, where
performance is the default.
31 | P a g e
5.1.4 Authentication –
● Metamask – MetaMask is a software cryptocurrency wallet used to interact with the Ethereum
blockchain. It allows users to access their Ethereum wallet through a browser extension or mobile app,
which can then be used to interact with decentralized applications.
32 | P a g e
33 | P a g e
34 | P a g e
35 | P a g e
36 | P a g e
37 | P a g e
38 | P a g e
CHAPTER 7 CONCLUSION
39 | P a g e
CONCLUSION
This twitter blockchain app will protect user’s account from being compromised or hacked. Through this
platform, our main vision is to provide security to the user’s personal data in all possible ways. Using metamask
authentication which is a cryptocurrency wallet used to interact with the Ethereum blockchain ensures security.
As this is totally based on blockchain undoubtfully it is more secure and safe.
Although it have some procs and cons and have a long way to go but still a new step towards a more safe and
secure advancing technology which is improving. Although it is difficult to understand and implement both for
user and the developer but with time it will be more user friendly.
40 | P a g e
41 | P a g e
Limitations
Browser access: MetaMask doesn’t have access to any of your information, but the browser it’s installed
on will. Your browser won’t have access to your private codes, but it may collect information about
when and how you use the app. Mozilla and Google aren’t very popular in the crypto community. Many
crypto users will feel uncomfortable allowing these companies to collect information about them. This
may stop some potential users from trying the MetaMask wallet, and turning to some of the more-secure
alternatives.
Online: Online wallets have advantages and disadvantages. One of the main disadvantages is security.
Any information that’s stored online is more at risk from hackers than information that’s stored offline.
MetaMask doesn’t provide enough security by itself. Remember, always use more than one kind of
wallet, with one of them being a hardware device!
Only for Ethereum and ETH-based tokens: One of the biggest cons that are apparent when using
MetaMask is the fact that the wallet in question only stores Ethereum, and Ethereum-based tokens (ERC-
20, ERC-721, ERC-1150). Meaning, you aren't able to store any other cryptocurrencies on the wallet -
not ideal! This is especially notable when you take into account that there are multiple high-end wallets
out there that support a wide list of cryptocurrencies and token. This is true both in regards to cold
wallets, as well as hot ones, too.
Future Enhanacements
There is no sector moving more rapidly than cryptocurrency. It changes meaningfully on a daily basis with
new companies, technologies, and financiers constantly emerging. We are in the first minute of the first
inning, and there are many more wild days ahead than behind us. That means that crypto wallets are, by
definition, incipient. They are not-even-half-formed things, made to serve use-cases that will change,
powered by technologies that may be usurped. Such volatility presents risk as well as opportunity.
We can expect four evolutions in the web3 space that directly impact wallets:
42 | P a g e
REFERENCES
43 | P a g e