Abstract
In comparison with conventional content delivery networks, peer-to-peer (p2p) content delivery is promising to save cost and handle high peak-demand, and can also complement the decentralized storage networks such as Filecoin. However, reliable p2p delivery requires proper enforcement of delivery fairness, i.e., the deliverers should be rewarded according to their in-time delivery. Unfortunately, most existing studies on delivery fairness are based on non-cooperative game-theoretic assumptions that are arguably unrealistic in the ad-hoc p2p setting.
We for the first time put forth an expressive yet still minimalist security notion for desired fair p2p content delivery, and give two efficient solutions \(\mathsf {FairDownload}\) and \(\mathsf {FairStream}\) via the blockchain for p2p downloading and p2p streaming scenarios, respectively. Our designs not only guarantee delivery fairness to ensure deliverers be paid (nearly) proportional to their in-time delivery but also ensure the content consumers and content providers are fairly treated. The fairness of each party can be guaranteed when the other two parties collude to arbitrarily misbehave. Moreover, the systems are efficient in the sense of attaining nearly asymptotically optimal on-chain costs and deliverer communication.
We implement the protocols and build the prototype systems atop the Ethereum Ropsten network. Extensive experiments done in LAN and WAN settings showcase their high practicality.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
More thorough discussions about the insufficiencies of some pertinent studies (including gradual-release based fair exchange [7, 10], blockchain-based fair exchange/MPC [6, 9, 12, 25, 31], fair off-chain payment channels [11, 33], and some known decentralized content delivery schemes [2, 19]) are provided in the online full version [21].
- 2.
Code availability: https://github.com/Blockchain-World/FairThunder.git.
- 3.
To defend against replay attack in concurrent sessions, it is trivial to let the authenticated messages include a session id sid field, which, for example, can be instantiated by the hash of the transferred data identifier \(\mathsf {root}_m\), the involved parties’ addresses and an increasing-only nonce, namely \(sid := \mathcal {H}(\mathsf {root}_m||\mathcal {V}\_address||pk_{\mathcal {S}}||pk_{\mathcal {R}}||nonce)\).
- 4.
Remark that the content m is dividable in the sense that each chunk is independent to other chunks, e.g., the chunk is a small 10-s video fragment.
- 5.
Throughout this paper, we consider \(\phi \) is in the form of \(\phi (m) = [\mathsf {root}(\mathsf {BuildMT}(m)) \equiv \mathsf {root}_m]\), where \(\mathsf {root}\) is the Merkle tree root of m. In practice, it can be acquired from a semi-trusted third party, e.g., VirusTotal [23] or BitTorrent forum sites [28].
- 6.
\(\mathcal {P}\) can retrieve the deposits of and back if no deliverers respond timely.
- 7.
W.l.o.g., we assume \(n = 2 ^ k\) for \(k \in \mathbb {Z}\) for presentation simplicity.
- 8.
can be required proportional to in case \(\mathcal {P}\) deliberately lowers it.
- 9.
- 10.
- 11.
- 12.
The experimental configuration details are described in the full version [21].
References
Akamai: Akamai (2021). https://www.akamai.com/
Almashaqbeh, G.: CacheCash: a cryptocurrency-based decentralized content delivery network. Ph.D. thesis, Columbia University (2019)
Anjum, N., Karamshuk, D., Shikh-Bahaei, M., Sastry, N.: Survey on peer-assisted content delivery networks. Comput. Netw. 116, 79–95 (2017)
Asokan, N., Shoup, V., Waidner, M.: Optimistic fair exchange of digital signatures. IEEE J. Sel. Areas Commun. 18, 593–610 (2000)
Benet, J.: IPFS-content addressed, versioned, p2p file system. arXiv preprint arXiv:1407.3561 (2014)
Bentov, I., Kumaresan, R.: How to use bitcoin to design fair protocols. In: Garay, J.A., Gennaro, R. (eds.) CRYPTO 2014. LNCS, vol. 8617, pp. 421–439. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-44381-1_24
Blum, M.: How to exchange (secret) keys. In: Proceedings of the ACM STOC 1983, pp. 440–447 (1983)
Camenisch, J., Shoup, V.: Practical verifiable encryption and decryption of discrete logarithms. In: Boneh, D. (ed.) CRYPTO 2003. LNCS, vol. 2729, pp. 126–144. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45146-4_8
Choudhuri, A.R., Green, M., Jain, A., Kaptchuk, G., Miers, I.: Fairness in an unfair world: fair multiparty computation from public bulletin boards. In: Proceedings of the ACM CCS, pp. 719–728 (2017)
Damgård, I.B.: Practical and provably secure release of a secret and exchange of signatures. J. Cryptol. 8, 201–222 (1995). https://doi.org/10.1007/BF00191356
Dziembowski, S., Eckey, L., Faust, S., Malinowski, D.: Perun: virtual payment hubs over cryptocurrencies. In: Proceedings of the IEEE S&P 2019, pp. 106–123 (2019)
Dziembowski, S., Eckey, L., Faust, S.: FairSwap: how to fairly exchange digital goods. In: Proceedings of the ACM CCS, pp. 967–984 (2018)
ENISA: ENISA threat landscape 2020 -botnet (2020). https://www.enisa.europa.eu/publications/enisa-threat-landscape-2020-botnet
Fan, B., Lui, J.C., Chiu, D.M.: The design trade-offs of BitTorrent-like file sharing protocols. IEEE/ACM Trans. Network. 17, 365–376 (2008)
Feldman, M., Lai, K., Stoica, I., Chuang, J.: Robust incentive techniques for peer-to-peer networks. In: Proceedings of the ACM EC (2004)
Fiat, A., Shamir, A.: How to prove yourself: practical solutions to identification and signature problems. In: Odlyzko, A.M. (ed.) CRYPTO 1986. LNCS, vol. 263, pp. 186–194. Springer, Heidelberg (1987). https://doi.org/10.1007/3-540-47721-7_12
Filecoin: Filecoin: a decentralized storage network. https://filecoin.io/filecoin.pdf
Filecoin: Filecoin spec. (2020). https://spec.filecoin.io/
Goyal, P., Netravali, R., Alizadeh, M., Balakrishnan, H.: Secure incentivization for decentralized content delivery. In: 2nd USENIX Workshop on Hot Topics in Edge Computing (2019)
Hardin, G.: The tragedy of the commons. J. Nat. Resour. Policy Res. 1, 243–253 (2009)
He, S., Lu, Y., Tang, Q., Wang, G., Wu, C.Q.: Fair peer-to-peer content delivery via blockchain. arXiv preprint arXiv:2102.04685 (2021)
IBM: Internet connection and recommended encoding settings. https://support.video.ibm.com/hc/en-us/articles/207852117-Internet-connection-and-recommended-encoding-settings
Janin, S., Qin, K., Mamageishvili, A., Gervais, A.: FileBounty: fair data exchange. In: IEEE (EuroS&PW), pp. 357–366 (2020)
Katz, J., Lindell, Y.: Introduction to Modern Cryptography. CRC Press (2014)
Kiayias, A., Zhou, H.-S., Zikas, V.: Fair and robust multi-party computation using a global transaction ledger. In: Fischlin, M., Coron, J.-S. (eds.) EUROCRYPT 2016. LNCS, vol. 9666, pp. 705–734. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49896-5_25
Koblitz, N.: Elliptic Curve Cryptosystems. Mathematics of Computation, pp. 203–209 (1987)
Kosba, A., Miller, A., Shi, E., Wen, Z., Papamanthou, C.: Hawk: the blockchain model of cryptography and privacy-preserving smart contracts. In: Proceedings of the IEEE (S&P), pp. 839–858 (2016)
Küpçü, A., Lysyanskaya, A.: Usable optimistic fair exchange. In: Pieprzyk, J. (ed.) CT-RSA 2010. LNCS, vol. 5985, pp. 252–267. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-11925-5_18
Levin, D., LaCurts, K., Spring, N., Bhattacharjee, B.: Bittorrent is an auction: analyzing and improving bittorrent’s incentives. ACM SIGCOMM Comput. Commun. Rev. 38, 243–254 (2008)
Locher, T., Moore, P., Schmid, S., Wattenhofer, R.: Free riding in bittorrent is cheap. In: HotNets (2006)
Maxwell, G.: The first successful zero-knowledge contingent payment (2016). https://bitcoincore.org/en/2016/02/26/zero-knowledge-contingent-payments-announcement/
Mehar, M.I., et al.: Understanding a revolutionary and flawed grand experiment in blockchain: the DAO attack. J. Cases Inf. Technol. 21, 19–32 (2019)
Miller, A., Bentov, I., Bakshi, S., Kumaresan, R., McCorry, P.: Sprites and state channels: payment networks that go faster than lightning. In: Goldberg, I., Moore, T. (eds.) FC 2019. LNCS, vol. 11598, pp. 508–526. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-32101-7_30
Miller, A., Juels, A., Shi, E., Parno, B., Katz, J.: Permacoin: repurposing bitcoin work for data preservation. In: Proceedings of the IEEE S&P, pp. 475–490 (2014)
Piatek, M., Isdal, T., Anderson, T., Krishnamurthy, A., Venkataramani, A.: Do incentives build robustness in bittorrent. In: Proceedings of the NSDI (2007)
Reitwiessner, C.: EIP-196: precompiled contracts for addition and scalar multiplication on the elliptic curve alt\(\_\)bn128. Ethereum Improvement Proposals, No. 196 (2017). https://eips.ethereum.org/EIPS/eip-196
Schnorr, C.P.: Efficient identification and signatures for smart cards. In: Quisquater, J.-J., Vandewalle, J. (eds.) EUROCRYPT 1989. LNCS, vol. 434, pp. 688–689. Springer, Heidelberg (1990). https://doi.org/10.1007/3-540-46885-4_68
Sherman, A., Nieh, J., Stein, C.: FairTorrent: a deficit-based distributed algorithm to ensure fairness in peer-to-peer systems. IEEE/ACM TON 20, 1361–1374 (2012)
Shin, K., Joe-Wong, C., Ha, S., Yi, Y., Rhee, I., Reeves, D.S.: T-chain: a general incentive scheme for cooperative computing. IEEE/ACM TON 25, 2122–2137 (2017)
Sirivianos, M., Park, J.H., Yang, X., Jarecki, S.: Dandelion: cooperative content distribution with robust incentives. In: Proceedings of the USENIX ATC (2007)
StorJ: Storj (2018). https://storj.io/storj.pdf
Swarm (2020). https://swarm.ethereum.org/
Wood, G., et al.: Ethereum: a secure decentralised generalised transaction ledger. Ethereum project yellow paper, pp. 1–32 (2014)
Acknowledgements
Yuan Lu is supported in part by the National Natural Science Foundation of China (No. 62102404). This work was also supported in part by NSF #1801492 and FHWA 693JJ320C000021. The authors would like to thank the anonymous reviewer for their valuable comments and suggestions.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
He, S., Lu, Y., Tang, Q., Wang, G., Wu, C.Q. (2021). Fair Peer-to-Peer Content Delivery via Blockchain. In: Bertino, E., Shulman, H., Waidner, M. (eds) Computer Security – ESORICS 2021. ESORICS 2021. Lecture Notes in Computer Science(), vol 12972. Springer, Cham. https://doi.org/10.1007/978-3-030-88418-5_17
Download citation
DOI: https://doi.org/10.1007/978-3-030-88418-5_17
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-88417-8
Online ISBN: 978-3-030-88418-5
eBook Packages: Computer ScienceComputer Science (R0)