skip to main content
10.1145/3152141.3152392acmconferencesArticle/Chapter ViewAbstractPublication PagesmiddlewareConference Proceedingsconference-collections
research-article

PlaTIBART: a platform for transactive IoT blockchain applications with repeatable testing

Published:11 December 2017Publication History

ABSTRACT

With the advent of blockchain-enabled IoT applications, there is an increased need for related software patterns, middleware concepts, and testing practices to ensure adequate quality and productivity. IoT and blockchain each provide different design goals, concepts, and practices that must be integrated, including the distributed actor model and fault tolerance from IoT and transactive information integrity over untrustworthy sources from blockchain. Both IoT and blockchain are emerging technologies and both lack codified patterns and practices for development of applications when combined. This paper describes PlaTIBART, which is a platform for transactive IoT blockchain applications with repeatable testing that combines the Actor pattern (which is a commonly used model of computation in IoT) together with a custom Domain Specific Language (DSL) and test network management tools. We show how PlaTIBART has been applied to develop, test, and analyze fault-tolerant IoT blockchain applications.

References

  1. [n. d.]. Sometimes, transactions disappear from txpool rather than being mined into the next block - Issue #14893 - ethereum/go-ethereum. https://github.com/ethereum/go-ethereum/issues/14893. ([n. d.]). (Accessed on 09/06/2017).Google ScholarGoogle Scholar
  2. 2017. Bitcoin (BTC) price, charts, market cap, and other metrics | CoinMarket-Cap. https://coinmarketcap.com/currencies/bitcoin/. (08 2017). (Accessed on 08/30/2017).Google ScholarGoogle Scholar
  3. 2017. Brooklyn Microgrid. (2017). http://brooklynmicrogrid.com/Google ScholarGoogle Scholar
  4. 2017. Ethereum (ETH) $381.84 (3.83%) | CoinMarketCap. https://coinmarketcap.com/currencies/ethereum/. (08 2017). (Accessed on 08/30/2017).Google ScholarGoogle Scholar
  5. 2017. Interfaces | Ethereum Frontier Guide. https://ethereum.gitbooks.io/frontier-guide/content/interfaces.html. (2017). (Accessed on 08/30/2017).Google ScholarGoogle Scholar
  6. 2017. JSON RPC - ethereum/wiki Wiki - GitHub. https://github.com/ethereum/wiki/wiki/JSON-RPC. (2017). (Accessed on 08/28/2017).Google ScholarGoogle Scholar
  7. 2017. The Truth About Blockchain. https://hbr.org/2017/01/the-truth-about-blockchain. (01 2017). (Accessed on 08/30/2017).Google ScholarGoogle Scholar
  8. 2017. use RPC API personal_sendTransaction lost coin Ăů Issue #14901 Ăů ethereum/go-ethereum. https://github.com/ethereum/go-ethereum/issues/14901. (08 2017). (Accessed on 08/30/2017).Google ScholarGoogle Scholar
  9. Hiralal Agrawal, Joseph Robert Horgan, Edward W Krauser, and Saul A London. 1993. Incremental regression testing. In Software Maintenance, 1993. CSM-93, Proceedings., Conference on. IEEE, 348--357.Google ScholarGoogle ScholarCross RefCross Ref
  10. Ahmed Banafa. 2017. IoT and Blockchain Convergence: Benefits and Challenges - IEEE Internet of Things. https://iot.ieee.org/newsletter/january-2017/iot-and-blockchain-convergence-benefits-and-challenges.html. (2017). (Accessed on 08/31/2017).Google ScholarGoogle Scholar
  11. Roman Beck, Jacob Stenum Czepluch, Nikolaj Lollike, and Simon Malone. 2016. Blockchain-the Gateway to Trust-Free Cryptographic Transactions.. In ECIS. ResearchPaper153.Google ScholarGoogle Scholar
  12. Andreas Bogner, Mathieu Chanson, and Arne Meeuw. 2016. A Decentralised Sharing App Running a Smart Contract on the Ethereum Blockchain. In Proceedings of the 6th International Conference on the Internet of Things (IoT'16). ACM, New York, NY, USA, 177--178. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Francesco Buccafurri, Gianluca Lax, Serena Nicolazzo, and Antonino Nocera. 2017. Overcoming Limits of Blockchain for IoT Applications. In Proceedings of the 12th International Conference on Availability, Reliability and Security (ARES '17). ACM, New York, NY, USA, Article 26, 6 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. E. Cazalet, P. De Marini, J. Price, E. Woychik, and J. Caldwell. 2016. Transactive Energy Models. Technical Report. National Institute of Standards Technology.Google ScholarGoogle Scholar
  15. Konstantinos Christidis and Michael Devetsikiotis. 2016. Blockchains and smart contracts for the internet of things. IEEE Access 4 (2016), 2292--2303. Google ScholarGoogle ScholarCross RefCross Ref
  16. Sterling Ranch Development Company. 2017. The Nature of Sterling Ranch. (2017). http://sterlingranchcolorado.com/about/Google ScholarGoogle Scholar
  17. Kevin Delmolino, Mitchell Arnett, Ahmed Kosba, Andrew Miller, and Elaine Shi. 2016. Step by step towards creating a safe smart contract: Lessons and insights from a cryptocurrency lab. In International Conference on Financial Cryptography and Data Security. Springer, 79--94. Google ScholarGoogle ScholarCross RefCross Ref
  18. Ali Dorri, Salil S Kanhere, Raja Jurdak, and Praveen Gauravaram. 2017. Blockchain for IoT security and privacy: The case study of a smart home. In Pervasive Computing and Communications Workshops (PerCom Workshops), 2017 IEEE International Conference on. IEEE, 618--623.Google ScholarGoogle ScholarCross RefCross Ref
  19. Abhishek Dubey, Gabor Karsai, and Subhav Pradhan. 2017. Resilience at the edge in cyber-physical systems. In Fog and Mobile Edge Computing (FMEC), 2017 Second International Conference on. IEEE, 139--146. Google ScholarGoogle ScholarCross RefCross Ref
  20. S. Eisele, I. Mardari, A. Dubey, and G. Karsai. 2017. RIAPS: Resilient Information Architecture Platform for Decentralized Smart Systems. In 2017 IEEE 20th International Symposium on Real-Time Distributed Computing (ISORC). 125--132. Google ScholarGoogle ScholarCross RefCross Ref
  21. Jayavardhana Gubbi, Rajkumar Buyya, Slaven Marusic, and Marimuthu Palaniswami. 2013. Internet ofThings (IoT): A vision, architectural elements, and future directions. Future generation computer systems 29, 7 (2013), 1645--1660. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Pieter Hintjens. 2010. ZeroMQ: The Guide. URL http://zeromq.org (2010).Google ScholarGoogle Scholar
  23. Ranjit Kumaresan and Iddo Bentov. 2014. How to use bitcoin to incentivize correct computations. In Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security. ACM, 30--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Edward A Lee, Stephen Neuendorffer, and Michael J Wirthlin. 2003. Actor-oriented design of embedded hardware and software systems. Journal of circuits, systems, and computers 12, 03 (2003), 231--260. Google ScholarGoogle ScholarCross RefCross Ref
  25. H. Lee, S. Niddodi, A. Srivastava, and D. Bakken. 2016. Decentralized voltage stability monitoring and control in the smart grid using distributed computing architecture. In 2016 IEEE Industry Applications Society Annual Meeting. 1--9. Google ScholarGoogle ScholarCross RefCross Ref
  26. Hareton KN Leung and Lee White. 1990. A study of integration testing and software regression at the integration level. In Software Maintenance, 1990, Proceedings., Conference on. IEEE, 290--301.Google ScholarGoogle ScholarCross RefCross Ref
  27. R. B. Melton. 2013. Gridwise transactive energy framework. Technical Report. Pacific Northwest National Laboratory.Google ScholarGoogle Scholar
  28. Jelena Mirkovic and Terry Benzel. 2012. Teaching cybersecurity with DeterLab. IEEE Security & Privacy 10, 1 (2012), 73--76. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Aafaf Ouaddah, Anas Abou Elkalam, and Abdellah Ait Ouahman. 2017. Towards a novel privacy-preserving access control model based on blockchain technology in IoT. In Europe and MENA Cooperation Advances in Information and Communication Technologies. Springer, 523--533. Google ScholarGoogle ScholarCross RefCross Ref
  30. Gregg Rothermel, Roland H. Untch, Chengyun Chu, and Mary Jean Harrold. 2001. Prioritizing test cases for regression testing. IEEE Transactions on software engineering 27, 10 (2001), 929--948. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Christos Siaterlis, Andres Perez Garcia, and Béla Genge. 2013. On the use of Emulab testbeds for scientifically rigorous experiments. IEEE Communications Surveys & Tutorials 15, 2 (2013), 929--942. Google ScholarGoogle ScholarCross RefCross Ref
  32. Miloš Simić, Goran Sladić, and Branko Milosavljević. 2017. A Case Study IoT and Blockchain powered Healthcare. (06 2017).Google ScholarGoogle Scholar
  33. Kenton Varda. 2015. CapâĂŹn Proto. (2015).Google ScholarGoogle Scholar
  34. Fan Zhang, Ethan Cecchetti, Kyle Croman, Ari Juels, and Elaine Shi. 2016. Town Crier: An Authenticated Data Feed for Smart Contracts. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security (CCS '16). ACM, New York, NY, USA, 270--282. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. PlaTIBART: a platform for transactive IoT blockchain applications with repeatable testing

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            M4IoT '17: Proceedings of the 4th Workshop on Middleware and Applications for the Internet of Things
            December 2017
            27 pages
            ISBN:9781450351706
            DOI:10.1145/3152141

            Copyright © 2017 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 11 December 2017

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article

            Acceptance Rates

            Overall Acceptance Rate10of18submissions,56%

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader