Skip to main content

Aplos: Smart Contracts Made Smart

  • Conference paper
  • First Online:

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 1156))

Abstract

Smart contract is a programming interface to interact with the underlying blockchain storage models. It is a database abstraction layer for blockchain. Existing smart contract platforms follow the imperative style programming model since states are shared. As a result, there is no concurrency control mechanism when executing transactions, resulting in considerable latency and hindering scalability. To address performance and scalability issues of existing smart contract platforms, we design a new smart contract platform called “Aplos” based on the Scala functional programming language and Akka actors. In Aplos, all blockchain-related smart contract functions are implemented with Akka actors. The Aplos platform is built over Mystiko—a highly scalable blockchain storage for big data. Mystiko supports concurrent transactions, high transaction throughput, data analytics and machine learning. With Aplos smart contracts over Mystiko, we have developed a blockchain for highly scalable storage that aligns with big data requirements.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.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

Learn about institutional subscriptions

References

  1. Adrian, O.R.: The blockchain, today and tomorrow. In: 2018 20th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC), pp. 458–462. IEEE (2018)

    Google Scholar 

  2. Akka: Akka documentation. https://doc.akka.io/docs/akka/2.5/actors.html

  3. Akka: Akka streams documentation. https://doc.akka.io/docs/akka/2.5/stream/

  4. Androulaki, E., et al.: Hyperledger fabric: a distributed operating system for permissioned blockchains. In: Proceedings of the Thirteenth EuroSys Conference, p. 30. ACM (2018)

    Google Scholar 

  5. Armknecht, F., et al.: A guide to fully homomorphic encryption. IACR Cryptol. ePrint Arch. 2015, 1192 (2015)

    Google Scholar 

  6. Bandara, E., et al.: Mystiko - blockchain meets big data. In: IEEE International Conference on Big Data, Big Data 2018, Seattle, WA, USA, 10–13 December 2018, pp. 3024–3032 (2018)

    Google Scholar 

  7. Buterin, V., et al.: A next-generation smart contract and decentralized application platform. White paper (2014)

    Google Scholar 

  8. Cassandra: Cassandra LWT. https://docs.datastax.com/en/cassandra/3.0/cassandra/dml/dmlLtwtTransactions.html

  9. Coreos: coreos/etcd, August 2018. https://github.com/coreos/etcd

  10. Docker: Docker documentation, August 2018. https://docs.docker.com/

  11. Elasticsearch: Elasticsearch documentation. https://www.elastic.co/guide/index.html

  12. Eykholt, E., Meredith, G., Denman, J.: RChain architecture documentation (2017)

    Google Scholar 

  13. Harz, D., Knottenbelt, W.: Towards safer smart contracts: a survey of languages and verification methods, September 2018

    Google Scholar 

  14. Hewitt, C.: Actor model of computation: scalable robust information systems. arXiv preprint arXiv:1008.1459 (2010)

  15. Hoare, C.A.R.: Communicating sequential processes. Commun. ACM 21(8), 666–677 (1978)

    Article  Google Scholar 

  16. Karunanayake, A., De Zoysa, K., Muftic, S.: Mobile ATM for developing countries, January 2008. https://doi.org/10.1145/1403007.1403014

  17. Kreps, J., Narkhede, N., Rao, J., et al.: Kafka: a distributed messaging system for log processing. In: Proceedings of the NetDB, pp. 1–7 (2011)

    Google Scholar 

  18. Kubernetes: Kubernetes documentation. https://kubernetes.io/docs/home/?path=users&persona=app-developer&level=foundational

  19. Kurath, A.: Analyzing serializability of cassandra applications. Ph.D. thesis, Master’s thesis, ETH Zürich (2017)

    Google Scholar 

  20. Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. ACM SIGOPS Oper. Syst. Rev. 44(2), 35–40 (2010)

    Article  Google Scholar 

  21. Lamport, L.: The part-time parliament. ACM Trans. Comput. Syst. (TOCS) 16(2), 133–169 (1998)

    Article  Google Scholar 

  22. Lucene: Apache lucene documentation. http://lucene.apache.org/

  23. MBSL: MBSL bank. https://www.mbslbank.com

  24. McConaghy, T., et al.: BigchainDB: a scalable blockchain database. White paper, BigChainDB (2016)

    Google Scholar 

  25. Meng, X., et al.: MLlib: machine learning in apache spark. J. Mach. Learn. Res. 17(1), 1235–1241 (2016)

    MathSciNet  MATH  Google Scholar 

  26. Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system (2008)

    Google Scholar 

  27. O’Connor, R.: Simplicity: a new language for blockchains, pp. 107–120, October 2017. https://doi.org/10.1145/3139337.3139340

  28. Odersky, M., et al.: An overview of the scala programming language. Technical report (2004)

    Google Scholar 

  29. Popejoy, S.: The pact smart contract language, June 2017 (2016). http://kadena.io/docs/Kadena-PactWhitepaper.pdf

  30. Redis: Redis documentation. https://redis.io/documentation

  31. Richardson, C.: Microservices pattern. http://microservices.io/patterns/microservices.html

  32. Scala: Scala documentation. https://docs.scala-lang.org/

  33. Sergey, I., Kumar, A., Hobor, A.: Scilla: a smart contract intermediate-level language, January 2018

    Google Scholar 

  34. Solidity: Solidity documentation. https://solidity.readthedocs.io/en/develop/

  35. Zamani, M., Movahedi, M., Raykova, M.: RapidChain: a fast blockchain protocol via full sharding. IACR Cryptol. ePrint Arch. 2018, 460 (2018)

    Google Scholar 

  36. Zyskind, G., Nathan, O., Pentland, A.: Enigma: decentralized computation platform with guaranteed privacy. arXiv preprint arXiv:1506.03471 (2015)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Wee Keong Ng .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Bandara, E., Ng, W.K., Ranasinghe, N., De Zoysa, K. (2020). Aplos: Smart Contracts Made Smart. In: Zheng, Z., Dai, HN., Tang, M., Chen, X. (eds) Blockchain and Trustworthy Systems. BlockSys 2019. Communications in Computer and Information Science, vol 1156. Springer, Singapore. https://doi.org/10.1007/978-981-15-2777-7_35

Download citation

  • DOI: https://doi.org/10.1007/978-981-15-2777-7_35

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-15-2776-0

  • Online ISBN: 978-981-15-2777-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics