Professional Documents
Culture Documents
Vashistha 2020
Vashistha 2020
Vashistha 2020
212
BSCI Poster Session BSCI '20, October 6, 2020, Taipei, Taiwan
uploaded the document. Blockchain will store the data in the form Algorithm 1: Process Flow
of hashes. Result: originalFile is same as inputFile
Steps involved in double encryption cycle are :
1 File inputFile, PrivateKey P, PublicKey p;;
1) Actual file will be encrypted by the up-loader of the document
2 key K = GenerateSymmetricKeyforAES(RandomData,
using an advanced encryption standard (AES) algorithm using a
symmetric key.[1] The sender will sign the file after symmetric InitialVector);
encryption using their private key. 3 encryptedFileSender = Encrypt(K)(inputFile);
2) Sender will send this file to the Interplanetary file system(IPFS) 4 signedFile = Sign(P)(encryptedFileSender);
using the ipfs-api in node package manager(npm) with the host as 5 bufferedFile = convertToArrayBuffer(signedFile);
ipfs.infura.io. IPFS system will send/return back a unique hash to 6 ipfsHash = sendFileToIPFS(bufferedFile);
the sender of the file. 7 if ((ipfsHash) & (key)& (receiverAddress) are not NULL ) then
3) Sender will use the web3 library of ethereum blockchain[6] to 8 storeHash(ipfsHash, K);
push this ipfs hash into the ethereum blockchain. Smart Contracts 9 publishToBlockChainRequest(receiverAddress, ipfsHash,
are used to write/publish data into the blockchain.[5] K) =>txnHash, timestamp;
10 mining(txnHash, timestamp)
if (mined properly) then
11 publish the data to the blockchain;
12 return blockNumber;
13 else
14 return "Error message - Could not mine";
15 end
16 else
17 return IPFSHASH OR KEY IS NULL;;
18 end
19 K, ipfsHash = getHashAndKey();
20 File signedFile = getFile(ipfsHash);
21 encryptedFileReceiver = Verify(p)(signedFile);
22 originalFile = Decrypt(encryptedFileReceiver);;
4 CONCLUSION
Figure 2: Process Flow
The underlying platform is built on the Ethereum platform with
the smart contracts for various events written in Solidity. We also
Deployment gives the smart contract a unique ethereum address
used various encryption techniques to provides more security to
of 160 bit. A function call will be made in which data payload will be
the document in transition. The IPFS storage provide distributed
the IPFS document hash of the file/document and the symmetric key
storage with content-based hashing which makes them more secure,
used while AES encryption and receiver’s address as the address
resilient and immutable. [4]
where the metadata of the deployed contract is present. It will
provide a unique transaction hash.
REFERENCES
4) The receiver will have the latest copy of the blockchain and
[1] [n.d.]. Advanced Encryption Standard. https://en.wikipedia.org/wiki/Advanced_
the receiver can verify the transaction and get the document’s IPFS Encryption_Standard.
hash and symmetric key from the received transaction. [2] [n.d.]. Inter Planetary File System. https://en.wikipedia.org/wiki/InterPlanetary_
File_System.
5) Recipient of the IPFS document hash will use the ipfs.infura.io [3] [n.d.]. Platform Inter Planetary File System. https://ipfs.io/.
with the available IPFS document hash to retrieve the encrypted [4] [n.d.]. Privacy of Transactions. https://en.wikipedia.org/wiki/Privacy_and_
document from the interplanetary file system. blockchain.
[5] [n.d.]. Solidity Documentation. https://solidity.readthedocs.io.
6) Decryption will take place on the side of the receiver. The re- [6] 2018. Cryptographic Hash Chain. https://en.wikipedia.org/wiki/Hash_chain.
ceiver will be very known for the policy and steps of the encryption [7] Aravind Ramachandran, Dr Kantarcioglu, et al. 2017. Using blockchain and smart
of the document to decrypt the document. contracts for secure data provenance management. arXiv preprint arXiv:1709.10000
(2017). https://arxiv.org/abs/1709.10000.
7) The receiver will first use the public key of the sender to
verify, authenticate the sender and then the receiver will use the
received symmetric key to decrypt the received document from the
interplanetary file system.
8) The receiver will have the original copy of the document
which traveled through the whole network in a safe, secure and
immutable environment by providing the high amount of security
to the document.
213