Skip to main content

Inter-family Communication in Hyperledger Sawtooth and Its Application to a Crypto-Asset Framework

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNISA,volume 11319))

Abstract

Hyperledger Sawtooth is a general purpose blockchain project featuring pluggable consensus mechanisms and smart contracts that can be written in any general purpose programming language. We introduce a design pattern that enables communication between smart contracts for Hyperledger Sawtooth. The pattern is called Inter-Family Communication and we apply it to build a general crypto-asset framework where assets can be controlled by secondary smart contracts. The pattern is designed secure with formal models for Hyperledger Sawtooth and relevant concepts to the Inter-family Communication design pattern.

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   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

Learn about institutional subscriptions

Notes

  1. 1.

    e.g. trusted executed environments, consensus mechanisms, public key infrastructure, certificate authorities, private channels, etc.

  2. 2.

    Portions of this work is patent pending.

  3. 3.

    In Sawtooth 1.0, there is an onchain setting to list the namespaces for transaction families. The validator interprets these namespaces as write access control and does not limit the read access.

  4. 4.

    Proof-of-Elapsed-Time, batch, input-output prefixes and nonce in transactions, state-delta events, dependencies, etc.

  5. 5.

    All results presented extend trivially to families with multiple reserved namespaces; however, focusing on a single namespace simplifies our presentation.

  6. 6.

    For a definition of the Shuffle Product see any textbook on Automata Theory or Theory of Computation.

  7. 7.

    The functions \(applyt^{\prime }()\) and applyb() are straightforwardly updated according to different read and write namespaces.

  8. 8.

    The nonce is used here to prevent replay attacks and is intended to be negotiated offchain among users, ideally by having all parties contribute to its elaboration.

References

  1. Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system (2008). http://bitcoin.org/bitcoin.pdf

  2. Bitcoin Script. https://en.bitcoin.it/wiki/Script. Accessed Aug 2018

  3. Wood, G.: Ethereum: A Secure Decentralized Generalised Transaction Ledger - EIP-150 Revision (2017). http://yellowpaper.io/

  4. Hyperledger. Blockchain for Business. https://hyperledger.org/. Accessed Aug 2018

  5. Hyperledger Sawtooth, v1.0 (2018). https://github.com/hyperledger/sawtooth-core. Accessed Aug 2018

  6. Hyperledger Fabric, version 1.0. https://hyperledger.org/projects/fabric, https://github.com/hyperledger/fabric. Accessed Aug 2018

  7. Hyperledger Iroha. http://iroha.tech/, https://github.com/hyperledger/iroha. Accessed Aug 2018

  8. ERC20 Token Standard. https://theethereum.wiki/w/index.php/ERC20_Token_Standard. Accessed Nov 2017

  9. Poon, J., Dryja, T.: The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments, Version 0.5.9.2 (2016)

    Google Scholar 

  10. Ethereum. Security Considerations. https://solidity.readthedocs.io/en/develop/security-considerations.html. Accessed Aug 2018

  11. Hildenbrandt, F.N., et al.: KEVM: A Complete Semantics of the Ethereum Virtual Machine (2017). http://hdl.handle.net/2142/97207

  12. Hirai, Y.: Defining the Ethereum virtual machine for interactive theorem provers. In: 1st Workshop on Trusted Smart Contracts (2017)

    Google Scholar 

  13. Daian, P.: DAO attack (2016). http://hackingdistributed.com/2016/06/18/analysis-of-the-dao-exploit/. Accessed Aug 2018

  14. The Coq Development Team: The Coq Reference Manual, version 8.6 (2017). https://coq.inria.fr/

  15. Lamport, L.: Specifying Systems. Addison-Wesley (2002). http://www.lamport.org/. Accessed Nov 2017

  16. Swamy, N., et al.: Dependent types and multi-monadic effects in F*. In: 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, pp. 256–270. ACM (2016)

    Google Scholar 

  17. Intel: Intel Software Guard Extensions (Intel SGX) SDK (2018). https://software.intel.com/en-us/sgx-sdk

  18. Lind, J., Eyal, I., Kelbert, F., Naor, O., Pietzuch, P.R., Sirer, E.G.: Teechain: scalable blockchain payments using trusted execution environments. In: The 4th Workshop on Bitcoin and Blockchain Research, BITCOIN 2017 (2017)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Benoit Razet .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Owens, L., Razet, B., Smith, W.B., Tanner, T.C. (2019). Inter-family Communication in Hyperledger Sawtooth and Its Application to a Crypto-Asset Framework. In: Fahrnberger, G., Gopinathan, S., Parida, L. (eds) Distributed Computing and Internet Technology. ICDCIT 2019. Lecture Notes in Computer Science(), vol 11319. Springer, Cham. https://doi.org/10.1007/978-3-030-05366-6_32

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-05366-6_32

  • Published:

  • Publisher Name: Springer, Cham

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

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics