Development of a method for hiding private data for~a~blockchain-based tender system
Prikladnaâ diskretnaâ matematika, no. 2 (2020), pp. 63-81.

Voir la notice de l'article provenant de la source Math-Net.Ru

A tender system has been developed based on the Ethereum open blockchain platform that allows to hide the information about applications at the request for proposals stage. A new method has been created to solve the problem of information privacy in open blockchain systems using the zk-SNARK, cryptographic zero-knowledge proof protocol. The proposed method has been implemented as a cryptographic scheme based on the libsnark library. To integrate the cryptographic scheme into the system, the Ethereum C++ client has been modified — a new tenderzkp module has been added. It implements functions for creating and verifying zk-SNARK proofs. Interaction with the implemented cryptographic scheme from the smart contract codes is carried out through the new added precompiled contracts. A Solidity library has been created to work with these contracts. The JSON-RPC API of the Ethereum C++ client has been expanded to enable to call methods of the cryptographic scheme from third-party applications.
Keywords: tenders, distributed systems, blockchain, zero-knowledge proof, zk-SNARK, Ethereum platform.
@article{PDM_2020_2_a5,
     author = {D. O. Kondyrev},
     title = {Development of a method for hiding private data for~a~blockchain-based tender system},
     journal = {Prikladna\^a diskretna\^a matematika},
     pages = {63--81},
     publisher = {mathdoc},
     number = {2},
     year = {2020},
     language = {ru},
     url = {http://geodesic.mathdoc.fr/item/PDM_2020_2_a5/}
}
TY  - JOUR
AU  - D. O. Kondyrev
TI  - Development of a method for hiding private data for~a~blockchain-based tender system
JO  - Prikladnaâ diskretnaâ matematika
PY  - 2020
SP  - 63
EP  - 81
IS  - 2
PB  - mathdoc
UR  - http://geodesic.mathdoc.fr/item/PDM_2020_2_a5/
LA  - ru
ID  - PDM_2020_2_a5
ER  - 
%0 Journal Article
%A D. O. Kondyrev
%T Development of a method for hiding private data for~a~blockchain-based tender system
%J Prikladnaâ diskretnaâ matematika
%D 2020
%P 63-81
%N 2
%I mathdoc
%U http://geodesic.mathdoc.fr/item/PDM_2020_2_a5/
%G ru
%F PDM_2020_2_a5
D. O. Kondyrev. Development of a method for hiding private data for~a~blockchain-based tender system. Prikladnaâ diskretnaâ matematika, no. 2 (2020), pp. 63-81. http://geodesic.mathdoc.fr/item/PDM_2020_2_a5/

[1] Wattenhofer R., The Science of the Blockchain, 1st ed., Inverted Forest Publishing, 2016, 115 pp.

[2] Nakamoto S., Bitcoin: A Peer-to-Peer Electronic Cash System https://bitcoin.org/bitcoin.pdf

[3] Raval S., Decentralized Applications. Harnessing Bitcoin's Blockchain Technology, O'Reilly, 2016, 118 pp.

[4] Kuznetsov K. V., Competitive Procurement: Bidding, Tendering, Contests, Piter Publ., St. Petersburg, 2005, 368 pp. (in Russian)

[5] Kondyrev D. O., Bobrov V. S., Efremov I. E., Vlasov V. N., “Ethereum-Based Tender System”, Vestnik NSU, Ser. Information Technologies, 15:3 (2017), 31–39 (in Russian)

[6] Hardwick F. S., Akram R. N., Markantonakis K., “Fair and transparent blockchain based tendering framework — A step towards open governance”, IEEE Intern. Conf. TrustCom/BigDataSE (New York, USA, 2018), 1342–1347

[7] Heilman E., Baldimtsi F., Goldberg S., “Blindly signed contracts: Anonymous on-blockchain and off-blockchain bitcoin transactions”, Intern. Conf. Financial Cryptography and Data Security, Springer, 2016, 43–60 | DOI

[8] Ruffing T., Moreno-Sanchez P., Kate A., “Coinshuffle: practical decentralized coin mixing for bitcoin”, ESORICS 2014, LNCS, 8713, 2014, 345–364

[9] Bissias G., Ozisik A. P., Levine B. N., Liberatore M., “Sybil-resistant mixingfor bitcoin”, Proc. WPES'14 (Scottsdale, Arizona, USA, November 2014), 149–158

[10] Bonneau J., Narayanan A., Miller A., et al., “Mixcoin: anonymity for bitcoin with accountable mixes”, Intern. Conf. Financial Cryptography and Data Security, Springer, 2014, 486–504

[11] Schneier B., Applied Cryptography. Protocols, Algorithms, and Source Code in C, John Wiley Sons, 1996, 784 pp. | MR

[12] Goldwasser S., Micali S., Rackof C., “The knowledge complexity of interactive proof systems”, STOC'85. Proc. 17th Ann. ACM Symp. Theory of Computing (Providence, Rhode Island, USA, 1985), 291–304 | Zbl

[13] Blum M., Feldman P., Micali S., “Non-interactive zero-knowledge proof systems and applications”, STOC'88. Proc. 20th Ann. ACM Symp. Theory of Computing (Chicago, USA, 1988), 103–112

[14] Ben-Sasson E., Chiesa A., Genkin D., et al., “SNARKs for C: Verifying program executions succinctly and in zero knowledge”, CRYPTO'2013, LNCS, 8043, 2013, 90–108 | MR | Zbl

[15] Ben-Sasson E., Chiesa A., Garman C., et al., “Zerocash: Decentralized anonymous payments from bitcoin”, IEEE Symp. Security and Privacy (San Jose, USA, 2014), 459–474

[16] Virza M., On Deploying Succinct Zero-Knowledge Proofs, PhD Thesis, Massachusetts Institute of Technology, 2017, 131 pp.

[17] Ethereum White Paper, http://blockchainlab.com/pdf/Ethereum_white_paper-a_next_generation_smart_contract_and_decentralized_application_platform-vitalik-buterin.pdf

[18] Galal H. S., Youssef A. M., “Verifable sealed-bid auction on the Ethereum blockchain”, Intern. Conf. Financial Cryptography and Data Security, Springer, 2018, 265–278

[19] Eberhardt J., Tai S., “ZoKrates — scalable privacy-preserving off-chain computations”, IEEE Intern. Conf. Blockchain (Halifax, Canada, 2018), 1084–1091

[20] libsnark: a C++ library for zkSNARK proofs, https://github.com/scipr-lab/libsnark

[21] Ethereum Homestead Documentation, http://ethdocs.org/en/latest

[22] JSON-RPC 2.0 Specification, https://www.jsonrpc.org/specification

[23] Svensson C., “Blockchain: Using cryptocurrency with Java”, Java Magazine, 2017, January/February, 36–46

[24] Web3j documentation, https://docs.web3j.io/index.html

[25] Solidity documentation, https://solidity.readthedocs.io/en/v0.4.24

[26] Wood G., Ethereum: A Secure Decentralised Generalised Transaction Ledger http://gavwood.com/Paper.pdf

[27] Kondyrev D. O., “Development of a tender system based on the Ethereum platform”, Proc. MNSK-2017, Information Technology, NSU Publ., Novosibirsk, 2017, 53 pp. (in Russian)