Skip to main content

Foundational Oracle Patterns: Connecting Blockchain to the Off-Chain World

  • Conference paper
  • First Online:
Business Process Management: Blockchain and Robotic Process Automation Forum (BPM 2020)

Abstract

Blockchain has evolved into a platform for decentralized applications, with beneficial properties like high integrity, transparency, and resilience against censorship and tampering. However, blockchains are closed-world systems which do not have access to external state. To overcome this limitation, oracles have been introduced in various forms and for different purposes. However so far common oracle best practices have not been dissected, classified, and studied in their fundamental aspects. In this paper, we address this gap by studying foundational blockchain oracle patterns in two foundational dimensions characterising the oracles: (i) the data flow direction, i.e., inbound and outbound data flow, from the viewpoint of the blockchain; and (ii) the initiator of the data flow, i.e., whether it is push or pull-based communication. We provide a structured description of the four patterns in detail, and discuss an implementation of these patterns based on use cases. On this basis we conduct a quantitative analysis, which results in the insight that the four different patterns are characterized by distinct performance and costs profiles.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    The source code can be found at https://github.com/MacOS/blockchain-oracles-data-collection.

  2. 2.

    Orisi: https://orisi.org/. Provable Things: https://provable.xyz. TinyOracle: https://github.com/axic/tinyoracle. ChainLink: https://chain.link/. All links accessed on June 7, 2020.

  3. 3.

    Web3: https://github.com/ethereum/web3.py. Python: https://www.python.org/. QR-Code-Scanner: https://github.com/code-kotis/qr-code-scanner. All links accessed on June 7, 2020.

References

  1. Abou El Houda, Z., Hafid, A., Khoukhi, L.: Co-IoT: a collaborative DDoS mitigation scheme in IoT environment based on blockchain using SDN. In: IEEE GLOBECOM, pp. 1–6 (2019)

    Google Scholar 

  2. Adler, J., Berryhill, R., Veneris, A.G., Poulos, Z., Veira, N., Kastania, A.: Astraea: a decentralized blockchain oracle. In: iThings/GreenCom/CPSCom/SmartData, pp. 1145–1152. IEEE (2018)

    Google Scholar 

  3. Ahmed, S., ten Broek, N.: Blockchain could boost food security. Nature 550(7674), 43 (2017)

    Article  Google Scholar 

  4. Beniiche, A.: A study of blockchain oracles. arXiv preprint arXiv:2004.07140 (2020)

  5. Chen, J., Micali, S.: Algorand: a secure and efficient distributed ledger. Theor. Comput. Sci. 777, 155–183 (2019)

    Article  MathSciNet  Google Scholar 

  6. Delgado-Mohatar, O., Sierra-Cámara, J.M., Anguiano, E.: Blockchain-based semi-autonomous ransomware. Futur. Gener. Comput. Syst. 112, 589–603 (2020)

    Article  Google Scholar 

  7. Dhillon, V., Metcalf, D., Hooper, M.: The hyperledger project. In: Dhillon, V., Metcalf, D., Hooper, M. (eds.) Blockchain Enabled Applications, pp. 139–149. Apress, Berkeley (2017). https://doi.org/10.1007/978-1-4842-3081-7_10

    Chapter  Google Scholar 

  8. Di Ciccio, C., Cecconi, A., Dumas, M., García-Bañuelos, L., et al.: Blockchain support for collaborative business processes. Informatik Spektrum 42, 182–190 (2019)

    Article  Google Scholar 

  9. Di Ciccio, C., Meroni, G., Plebani, P.: Business process monitoring on blockchains: potentials and challenges. In: Nurcan, S., Reinhartz-Berger, I., Soffer, P., Zdravkovic, J. (eds.) BPMDS/EMMSAD -2020. LNBIP, vol. 387, pp. 36–51. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-49418-6_3

    Chapter  Google Scholar 

  10. Eberhardt, J., Tai, S.: On or off the blockchain? Insights on off-chaining computation and data. In: De Paoli, F., Schulte, S., Broch Johnsen, E. (eds.) ESOCC 2017. LNCS, vol. 10465, pp. 3–15. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-67262-5_1

    Chapter  Google Scholar 

  11. García-Bañuelos, L., Ponomarev, A., Dumas, M., Weber, I.: Optimized execution of business processes on blockchain. In: Carmona, J., Engels, G., Kumar, A. (eds.) BPM 2017. LNCS, vol. 10445, pp. 130–146. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-65000-5_8

    Chapter  Google Scholar 

  12. Glicksberg, B.S., et al.: Blockchain-authenticated sharing of genomic and clinical outcomes data of patients with cancer: a prospective cohort study. J. Med. Internet Res. 22(3), e16810 (2020)

    Article  Google Scholar 

  13. Heiss, J., Eberhardt, J., Tai, S.: From oracles to trustworthy data on-chaining systems. In: 2019 IEEE International Conference on Blockchain (2019)

    Google Scholar 

  14. ISO/TC 307: ISO/TR 2345 blockchain and distributed ledger technologies - overview of and interactions between smart contracts in blockchain and distributed ledger technology systems. Technical report, ISO (2019)

    Google Scholar 

  15. Krejci, S., Sigwart, M., Schulte, S.: Blockchain- and IPFS-based data distribution for the Internet of Things. In: Brogi, A., Zimmermann, W., Kritikos, K. (eds.) ESOCC 2020. LNCS, vol. 12054, pp. 177–191. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-44769-4_14

    Chapter  Google Scholar 

  16. Mendling, J., Weber, I., van der Aalst, W.M.P., et al.: Blockchains for business process management - challenges and opportunities. ACM Trans. Manag. Inf. Syst. 9(1), 4:1–4:16 (2018)

    Article  Google Scholar 

  17. Neidhardt, N., Köhler, C., Nüttgens, M.: Cloud service billing and service level agreement monitoring based on blockchain. In: EMISA. CEUR Workshop Proceedings, vol. 2097, pp. 65–69 (2018)

    Google Scholar 

  18. de Pedro Crespo, A.S., Levi, D., García, L.I.C.: Witnet: a decentralized oracle network protocol. CoRR abs/1711.09756 (2017)

    Google Scholar 

  19. Strobel, V., Castelló Ferrer, E., Dorigo, M.: Blockchain technology secures robot swarms: a comparison of consensus protocols and their resilience to byzantine robots. Front. Robot. AI 7, 54 (2020)

    Article  Google Scholar 

  20. Weber, I., Gramoli, V., Staples, M., Ponomarev, A., Holz, R., Tran, A., Rimba, P.: On availability for blockchain-based systems. In: IEEE International Symposium on Reliable Distributed Systems (SRDS) (2017)

    Google Scholar 

  21. Weber, I., Xu, X., Riveret, R., Governatori, G., Ponomarev, A., Mendling, J.: Untrusted business process monitoring and execution using blockchain. In: La Rosa, M., Loos, P., Pastor, O. (eds.) BPM 2016. LNCS, vol. 9850, pp. 329–347. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-45348-4_19

    Chapter  Google Scholar 

  22. Wong, D.R., Bhattacharya, S., Butte, A.J.: Prototype of running clinical trials in an untrustworthy environment using blockchain. Nat. Commun. 10(1), 1–8 (2019)

    Article  Google Scholar 

  23. Wood, G.: Ethereum: a secure decentralised generalised transaction ledger (2014)

    Google Scholar 

  24. Xu, X., et al.: The blockchain as a software connector. In: WICSA, pp. 182–191. IEEE Computer Society (2016)

    Google Scholar 

  25. Xu, X., Pautasso, C., Zhu, L., Lu, Q., Weber, I.: A pattern collection for blockchain-based applications. In: EuroPLoP, pp. 3:1–3:20. ACM (2018)

    Google Scholar 

  26. Xu, X., Weber, I., Staples, M.: Architecture for Blockchain Applications. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-03035-3

    Book  Google Scholar 

  27. Zhang, F., Cecchetti, E., Croman, K., Juels, A., Shi, E.: Town crier: an authenticated data feed for smart contracts. In: ACM Conference on Computer and Communications Security, pp. 270–282 (2016)

    Google Scholar 

Download references

Acknowledgements

The authors want to thank the Research Institute for Computational Methods at WU Vienna for supplying computational resources. E. Castelló Ferrer acknowledges support from the Marie Skłodowska-Curie actions (EU project BROS–DLV-751615). The work of C. Di Ciccio was partly supported by MIUR under grant “Dipartimenti di eccellenza 2018-2022” of the Department of Computer Science at Sapienza University of Rome.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Roman Mühlberger or Claudio Di Ciccio .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Mühlberger, R. et al. (2020). Foundational Oracle Patterns: Connecting Blockchain to the Off-Chain World. In: Asatiani, A., et al. Business Process Management: Blockchain and Robotic Process Automation Forum. BPM 2020. Lecture Notes in Business Information Processing, vol 393. Springer, Cham. https://doi.org/10.1007/978-3-030-58779-6_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-58779-6_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-58778-9

  • Online ISBN: 978-3-030-58779-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics