Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 46

TOPIC: BLOCKCHAIN BASED DATA TRANSFER FRAMEWORK

TO SECURELY TRANSFER DATA BETWEEN SERVERLESS

PRESENTED BY: Mr. MD ARBAB SAHID

REGD NO. : 1901106189

GUIDED BY: Mrs. Meenakshi Pant


BLOCKCHAIN TECHNOLOGY
BITCOIN ≠ BLOCKCHAIN
Is an application of Is the underlying data structure,
blockchain technology which can be used for many
things, including cryptocurrencies
WHAT IS A BLOCKCHAIN?
A blockchain is a growing list of data blocks that are linked together.

Data Data Data

Reference Reference Reference


WHAT IS A BLOCKCHAIN?
 Blockchain technology is the concept or protocol behind the running of the blockchain.

 Blockchain technology makes crypto currencies (digital currencies secured by


cryptography) .

 Example : Bitcoin work just like the internet makes email possible.

 Immutable and distributed are two fundamental blockchain properties.

 The immutability of the ledger means you can always trust it to be accurate.

Being distributed protects the blockchain from network attacks.


 Each transaction or record on the ledger is stored in a “block.”

 The information contained in a block is dependent on and linked to the information in a


previous block , so if the data or information changes then the hash corresponding to that
block also changes.

 This blocks over time, forms a chain of transactions. Hence the word blockchain.
TYPES OF BLOCKCHAIN
Public Blockchain
 In a public blockchain, a user can become a member of the blockchain network. This means they
can store, send and receive data after downloading the required software on their device. Allowing
anyone to read and write the data stored on the blockchain as it is accessible to everyone in the world.

 A public blockchain is completely decentralized. The permissions to read and write data onto the
blockchain are shared equally by all connected users, who come to a consensus before any data is
stored on the database.

 The most popular example of a public blockchain is Bitcoin. The digital currency allows users to
use a platform for making transactions directly between them.
TYPES OF BLOCKCHAIN
Private Blockchain
 In a private blockchain, permission to write, send and receive data is controlled by one organization.
Private blockchains are typically used within an organization with only a few specific users allowed
to access it and carry out transactions.

 The organization in control has the power to change the rules of a private blockchain and may also
decline transactions based on their established rules and regulations.

 An example of this is a blockchain deployed by a corporation to collaborate with other divisions or


a few permissioned participants.
TYPES OF BLOCKCHAIN
Consortium Blockchain
 A consortium blockchain, also called permissioned blockchain can be considered as a hybrid model
between the low-trust offered by public blockchains and the single highly-trusted entity model of
private blockchains.

 Instead of allowing any user to participate in the verification of the transaction process or on the
other side just allowing one single company to have full control, in a consortium blockchain a few
selected parties are predetermined. It only allows a limited number of users the permission to
participate in the consensus process.

 For example, imagine a group or network of ten banks, each of which is connected to the
blockchain network. In this example, we could imagine that for a block to be valid, seven of the ten
banks have to agree.
KEY TERMS IN BLOCKCHAIN
Mining
 Mining means adding transaction records to the blockchain ledger after confirming the validity of
the transactions. It involves using complex hardware to perform mathematical calculations in order to
verify transactions.

 Computer Miners verify the validity of transactions and only then, put them into a secure block.
These blocks are combined to form a blockchain that represent in-sync information among all blocks.

 After creating a new hash for every secure block, miners are rewarded with incentives like bitcoins
and collecting transaction fees for every transaction that they confirm. 
KEY TERMS IN BLOCKCHAIN
Proof of Work (POW)
 A Proof of Work is a requirement that expensive computations be performed in order to facilitate
transactions. POW exists to enable trustless consensus. A hashed block is considered as a POW.

Nodes
Nodes are distributed computers in the network that all have a copy of the entire blockchain.

 As new users enter the blockchain network, copies of the blockchain and the access to it is
distributed.

 The data is replicable, synchronized and shared across all the nodes in the across multiple networks.
The data is not controlled by a singular node or network.
KEY TERMS IN BLOCKCHAIN
Smart Contract
 A smart contract is a digital agreement stored on the blockchain that is unalterable, once signed. It
defines certain logic operations that have to be fulfilled in order to perform tasks such as deposit
money or data.

 As an example: Conditions of releasing money to a third party delivery team- Suppose a sender
wants to send goods to the receiver using a third party, but wants to pay money for delivery only after
the delivery is successful.

 Then, a smart contract could be as follows: The sender pays the shipment money on the day of
loading of goods. The smart contract will hold payment to the delivery team until the recipient
confirms to the sender, the receipt of goods. Only then will the smart contract release the payment and
automatically transfer the money to the delivery team.
BUILDING CONSENSUS
A consensus mechanism is a fault-tolerant
mechanism that is used in computer and blockchain
systems to achieve the necessary agreement on a
single data value or a single state of the network
among distributed processes or multi-agent systems,
such as with crypto currencies.

After a finite time, all participants agree on a single


state.

E.g. on who owns how many Bitcoin.


CREATING WITNESSES

If something is published on a
public blockchain, all
participants become witnesses.

This is used, for example, by


OriginStamp to create a secure
timestamp for documents.
KEY FEATURES

Write-only, immutable, Resistant against malicious


transparent data storage participants

Decentralized, no need for Open to everyone


intermediaries

Consistent state across all


participants
CHALLENGES
Energy consumption Scalability

Money laundering Slow Transactions and data


Transfer
SERVERLESS FRAMEWORK
EVOLUTION OF SERVERS

BARE METAL SERVERS


 In the past, systems administrators would prepare physical servers for software to be deployed. This
would involve installing the operating system, associated device drivers, making sure there was enough
memory/disk/processor available, installing any prerequisites, etc.

 They would also take care of hardware upgrades and so forth. This is known as a “bare metal”
environment. There is strong coupling between the physical hardware and the deployed software, since
one strongly depends on the other. Here, the unit of deployment was an actual server.
EVOLUTION OF SERVERS
VIRTUAL MACHINES
 The next type of deployment to later emerge was a virtual machine. Now, instead of deploying
right to a given piece of hardware, developers were able to target a simulated server. This led to a
lot of flexibility with upgrades and migrations, as well as not having to worry about small
hardware variations. This made deployments a lot more repeatable and flexible.

 It also enabled system administrators to begin decoupling software from hardware. Now, if


there was a hardware failure, a system administrator could migrate the virtual machine to
different hardware and avoid issues. System administrators could also host more than one virtual
machine on a given physical server.

 However, virtual machines still had some limitations and overhead. For better or for worse,
they pretended to be actual servers and this wasn’t always needed. Here, the unit of deployment is
the virtual machine.
EVOLUTION OF SERVERS
CONTAINERS
 The follow-up to virtual machines was containerized deployment. This is when various
containerization technologies like Docker, OpenVZ, LXC, FreeBSD zones, and Solaris jails were
born.

 These technologies enabled a system administrator to “section off” an operating system and
have different applications running on the same system without them interfering with each
other. It also let developers have a lightweight environment that closely matched the production
environment, leading to more consistent operations between environments.

 Here, the unit of deployment is a container.


SERVERLESS FRAMEWORK
 Serverless framework is a cloud computing execution model where the cloud provider
dynamically manages the allocation and provisioning of servers.

 A serverless application operates in stateless compute containers that are fully managed
by the cloud provider, event-triggered, and ephemeral.

 Pricing is based on the number of executions rather than pre-purchased compute


capacity.
ADVANTAGES OF SERVERLESS
FRAMEWORK
 Stateless
With Serverless, everything is stateless, you can’t save a file to disk on one execution of your function and
expect it to be there at the next. Any two invocations of the same function could run on completely different
containers under the hood.

 Ephemeral
Serverless are designed to spin up quickly, do their work and then shut down again. They do not linger
unused. As long as the task is performed the underlying containers are scrapped.

 Scalable by default
With stateless functions multiple containers can be initialized, allowing as many functions to be run (in
parallel, if necessary) as needed to continually service all incoming requests.

 Fully managed by a Cloud vendor


AWS Lambda, Azure Functions, IBM OpenWhisk and Google Cloud Functions are most well-known FaaS
solutions available. Each offering typically supports a range of languages and runtimes e.g. Node.js,
Python, .NET Core, Java.
SOME POPULAR CLOUD PROVIDERS
SECURITY ISSUES WHILE STORING AND
TRANSFERRING DATA
 The traditional way of storing data is by using cloud storage. It has a great demand and, thus, is
prone to misuse.

The major disadvantage being all the information is centralized.

 Data becomes vulnerable and is not usually encrypted during transactions.

 Data are the most critical unit in the world. Storing, processing, analyzing data is a significant
task, and new technologies are growing to make the task as easy as possible.
SOLUTION
Blockchain based data transfer
framework to securely transfer data
between the serverless
SOLUTION

Fig: Secure data storage and transfer using ECCST


algorithm and Blockchain
SOLUTION
 Here, it has used blockchain to solve the problem of secure storage of data within the cloud.

 The data of various forms which needs high security are grouped in a data block.

 The data are further divided into small chunks called shards.

 Each shards will be sent to different serverless framework to maintain the decentralization of
data.

 Furthermore, the shards are individually encrypted using ECCST algorithm so that they can be
securely transmitted to the serverless framework .
SOLUTION
 After the encrypted shared data securely reaches the serverless framework, then it is decrypted
using ECCST algorithm to extract the actual data.

 Now the extracted data will be saved in the blockchain technology of the serverless framework
which will be further maintained and scaled by the cloud provider.
SYMMETRIC KEY VS ASYMMETRIC KEY ENCRYPTION
Symmetric Key Encryption Asymmetric Key Encryption

It only requires a single key for both It requires two keys, a public key and a private
encryption and decryption. key, one to encrypt and the other one to
decrypt.
The size of cipher text is the same or smaller The size of cipher text is the same or larger
than the original plain text. than the original plain text.
The encryption process is very fast. The encryption process is slow.
It is used when a large amount of data is It is used to transfer small amounts of data.
required to transfer.
It only provides confidentiality. It provides confidentiality, authenticity, and
non-repudiation.
The length of key used is 128 or 256 bits
The  length of key used is 2048 or higher
Security is less as only one key is used for It is more secure as two keys are used here- one
both encryption and decryption purpose. for encryption and the other for decryption.
Examples: 3DES, AES, DES and RC4 Examples: Diffie-Hellman, ECC, El Gamal,
DSA and RSA
ECCST
 ECC and CST algorithm rule combine to form ECCST .

 In ECCST based primarily secure data sharing state the key is mainly produced and the data is
encrypted utilizing ECCST algorithm rule.

 Keys are produced or created using Elliptic curve cryptography from elliptic curves over finite
field .

 Encryption and decryption process are carry out through Cyclic Shift transposition algorithmic
rule.
KEY GENERATION IN ECCST
 In ECC algorithm keys are produced for encryption and decryption process . ECC is a quick
process for key production and still supports extreme level security or safety.

 Keys generated in ECC is exchanged by the system with the CSTA encryption method.

 This algorithm provides high security in encryption and does not allows unauthorized users to
decrypt it .

 Then for encryption the key generated is shared at the destination end.

 CST performs encryption and decryption process . It is a cryptography technique with a


symmetric key that holds changeable key sizes and block sizes.

 In this algorithm the plain text(ordinary readable form) is converted into cipher text or vice
versa by performing shifting and partitioning operations .
KEY GENERATION IN ECCST
 Equation of elliptical curve = y2 = x3 + ax +b
 Let G be a point whose is order is large.
 Let A is the sender and B is the receiver.
 Sender (A)
 Secret code(Private) generated by A = nA
 Calculated Public Key PA = nA * G
 Receiver (B)
 Secret Code (Private) generated by B = nB
 Calculated Public Key PB = nB * G
 Final Key Generated By Sender (A) kA = nA * PB
 Final Key Generated By Receiver (B) kB = nB * PA
 Hence kA = kB
ECCST FLOW
ECCST ENCRYPTION ALGORITHM
 Input : The file is in form of matrix format

 Output: It is converted into cipher text.

 Start:

 1.The cubic equation for real numbers in an elliptic curve is determined in the following
equation:

C2 = Y3 + aX +b where 4a3 + 27b2 ≠ 0 AND a, b belongs to Integers.

 2.Then the finite prime field(key) is generated using the following equation:

C2 = Y3 + aX +b(modP) where 4a3 + 27b2 ≠ 0 AND a , b belongs to Integers AND P is any Prime
Number.
ECCST ENCRYPTION ALGORITHM
 3.For Encryption process:

Shifting and Partition operations:


(i)Input file is represented as 2D Matrix I[P][P].
(ii)CS operation is performed by calling the ColumnShift function:
ColumnShift () {
I’i, j = Ii + shift (i, pb) mod Pb, j
// i, j are the rows and column of PXP matrix.
}
(iii)RS operation is performed by calling the RowShift function:
RowShift () {
I’ i, j = I i + shift (i, pb) mod Pb
}
ECCST ENCRYPTION ALGORITHM
(iv)DS operation is performed by calling the DiagonalShift function:
DiagonalShift( ) {
//Diagonals element shifted from upper to right lower //
I’ i , j = I i + shift(i , pb) mod Pb , j + shift(i , pb)mod Pb
}
(v)SDS operation is performed by calling the SecondaryDiagonalShift function:
SecondaryDiagonalShift( ) {
I’i , j = I (i - 1)mod Pb , j
}
4.End for
Output is generated using equation:

OUTPUT: I’i , j = I (i + (Pb-1)),j

OUTPUT = ENCRYPTED TEXT


ENCRYPTION FLOW
ECCST DECRYPTION ALGORITHM
 Input : The file is in form of cipher text.

 Output: It is converted into plain text.

 Start:

 1.For Decryption Process:


(i) Convert output into ASCII format for getting encrypted file For round
(ii) RS operation is performed by calling the RowShift function:
RowShift ( ) {
I’ i , j = I i + shift(i , pb) mod Pb
}
(iii) CS operation is performed by calling the ColumnShift function:
ColumnShift ( ) {
I’i , j = I i + shift(i , pb) mod Pb , j
}
ECCST DECRYPTION ALGORITHM
(iv) DS operation is performed by calling DaigonalShift Function:
DiagonalShift( ) {
//Diagonals element shifted from upper to right lower //
I’ i , j = I i + shift(i , pb) mod Pb , j + shift(i , pb)mod Pb
}
 
(v) SDS operation is performed by calling the SecondaryDiagonalShift function:
SecondaryDiagonalShift( ) {
I’i , j = I (i - 1)mod Pb , j
}
5.End for
OUTPUT : DECRYPTED TEXT
DECRYPTION FLOW
CONCLUSIONS
 ECCST algorithm is used for encryption and descryption process , because it
provides same level of security as compared to other algorithms such as
RSA,DSA but with a shorter key .

 ECCST provides small key size and high security .

 The smaller the key will be , the less time it will take for encryption and
decryption process .
CONCLUSIONS

ECC-Based Scheme (size of n RSA/DSA


bits)
112 512
160 1024
224 2048
256 3072
384 7680
REFERENCES
1. A blockchain and smart contract-based data provenance and storing in cloud environment by
Amrita Jyoti and R.K Chauhan.

2. Article on “Advantages and Disadvantages of Blockchain.” by Geeks For Geeks.


https://www.geeksforgeeks.org/advantages-and-disadvantages-of-blockchain/
 
3. Blog on “What is Serverless Architecture? What are its Pros and Cons?” by Faizan Bashir.
https://hackernoon.com/what-is-serverless-architecture-what-are-its-pros-and-cons-cc4b804022e9/
 
4. Blockchain – Wikipedia
https://en.wikipedia.org/wiki/Blockchain/
 
5. Blog on “The origins of serverless” by Mariliis Retter.
https://dashbird.io/blog/origin-of-serverless/
REFERENCES
6. Blog on “Blockchain Key Terms” by Reena Shaw
https://www.kdnuggets.com/author/reena-shaw/
 
7. Ekblaw A, Azaria A, Halamka JD, Lippman A. A Case Study for Blockchain in
Healthcare:“MedRec” prototype for electronic health records and medical research data. In
Proceedings of IEEE open & big data conference 2016 Aug 13 (Vol. 13, p. 13).

8. Li R, Song T, Mei B, Li H, Cheng X, Sun L. Blockchain for large-scale internet of things data
storage and protection. IEEE Transactions on Services Computing. 2018 Jul 5;12(5):762-71.

9. Banerjee M, Lee J, Choo KK. A blockchain future for internet of things security: a position
paper. Digital Communications and Networks. 2018 Aug 1;4(3):149-60.

10. Dorri A, Kanhere SS, Jurdak R. Towards an optimized blockchain for IoT. In2017 IEEE/ACM
Second International Conference on Internet-of-Things Design and Implementation (IoTDI) 2017
Apr 18 (pp. 173-178). IEEE.
THANK YOU

You might also like