Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Sancus 2.0: A Low-Cost Security Architecture for IoT Devices

Published: 31 July 2017 Publication History

Abstract

The Sancus security architecture for networked embedded devices was proposed in 2013 at the USENIX Security conference. It supports remote (even third-party) software installation on devices while maintaining strong security guarantees. More specifically, Sancus can remotely attest to a software provider that a specific software module is running uncompromised and can provide a secure communication channel between software modules and software providers. Software modules can securely maintain local state and can securely interact with other software modules that they choose to trust.
Over the past three years, significant experience has been gained with applications of Sancus, and several extensions of the architecture have been investigated—both by the original designers as well as by independent researchers. Informed by these additional research results, this journal version of the Sancus paper describes an improved design and implementation, supporting additional security guarantees (such as confidential deployment) and a more efficient cryptographic core.
We describe the design of Sancus 2.0 (without relying on any prior knowledge of Sancus) and develop and evaluate a prototype FPGA implementation. The prototype extends an MSP430 processor with hardware support for the memory access control and cryptographic functionality required to run Sancus. We report on our experience using Sancus in a variety of application scenarios and discuss some important avenues of ongoing and future work.

References

[1]
Pieter Agten, Raoul Strackx, Bart Jacobs, and Frank Piessens. 2012. Secure compilation to modern processors. In Proceedings of the 2012 IEEE 25th Computer Security Foundations Symposium (CSF’12). 171--185
[2]
Tiago Alves and Don Felton. 2004. TrustZone: Integrated hardware and software security. ARM White Paper 3, 4 (2004) 18--24.
[3]
Ittai Anati, Shay Gueron, Simon P. Johnson, and Vincent R. Scarlata. 2013. Innovative Technology for CPU Based Attestation and Sealing (2013).
[4]
Ross J. Anderson and Markus G. Kuhn. 1998. Low cost attacks on tamper resistant devices. In Proceedings of the 5th International Workshop on Security Protocols. Springer-Verlag, London, 125--136.
[5]
Elena Andreeva, Begül Bilgin, Andrey Bogdanov, Atul Luykx, Bart Mennink, Nicky Mouha, and Kan Yasuda. 2015. APE: Authenticated Permutation-Based Encryption for Lightweight Cryptography. Springer, 168--186.
[6]
Elena Andreeva, Joan Daemen, Bart Mennink, and Gilles Van Assche. 2015. Security of Keyed Sponge Constructions Using a Modular Proof Approach. Springer, Berlin, 364--384.
[7]
ARM. 2016. TrustZone technology for ARMv8-M Architecture Version 1.1. Retrieved from https://static.docs.arm.com/100690_0101/00/armv8_m_architecture_trustzone_technology_100690_0101_00_en.pdf (2016).
[8]
AUTOSAR. 2015. AUTOSAR Specification 4.2 2015 Retrieved from http://www.autosar.org/specifications/release-42/.
[9]
A. M. Azab, P. Ning, and X. Zhang. 2011. SICE: A hardware-level strongly isolated computing environment for x86 multi-core platforms. In Proceedings of the 18th ACM Conference on Computer and Communications Security. ACM, 375--388.
[10]
Andrew Baumann, Marcus Peinado, and Galen Hunt. 2014. Shielding applications from an untrusted cloud with haven. In Proceedings of the 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI’14). USENIX Association, Broomfield, CO, 267--283.
[11]
Guido Bertoni, Joan Daemen, Michaël Peeters, and Gilles Van Assche. 2011. Duplexing the sponge: Single-pass authenticated encryption and other applications. In Selected Areas in Cryptography. Springer, 320--337.
[12]
Andrey Bogdanov, Miroslav Knezevic, Gregor Leander, Deniz Toz, Kerem Varici, and Ingrid Verbauwhede. 2012. SPONGENT: The design space of lightweight cryptographic hashing. IEEE Trans. Comput. 99 PrePrints (2012), 1.
[13]
Dan Boneh, Richard A. DeMillo, and Richard J. Lipton. 2001. On the importance of eliminating errors in cryptographic computations. J. Cryptol. 14 (2001), 101--119.
[14]
Ferdinand Brasser, Brahim El Mahjoub, Ahmad-Reza Sadeghi, Christian Wachsmann, and Patrick Koeberl. 2015. TyTAN: Tiny trust anchor for tiny devices. In Proceedings of the 52nd Annual Design Automation Conference (DAC’15). ACM, New York Article 34, 6 pages.
[15]
Claude Castelluccia, Aurélien Francillon, Daniele Perito, and Claudio Soriente. 2009. On the difficulty of software-based attestation of embedded devices. In Proceedings of the 16th ACM conference on Computer and Communications Security (CCS’09). ACM, New York, 400--409.
[16]
Xiaoxin Chen, Tal Garfinkel, E. Christopher Lewis, Pratap Subrahmanyam, Carl A. Waldspurger, Dan Boneh, Jeffrey Dwoskin, and Dan R. K. Ports. 2008. Overshadow: A virtualization-based approach to retrofitting protection in commodity operating systems. In ACM SIGARCH Comput. Architect. News, Vol. 36. ACM, 2--13.
[17]
Sara Cleemput, Mustafa A. Mustafa, and Bart Preneel. 2016. High assurance smart metering. In Proceedings of the 17th International Symposium on High Assurance Systems Engineering (HASE’16). IEEE, 294--297.
[18]
Nathan Cooprider, Will Archer, Eric Eide, David Gay, and John Regehr. 2007. Efficient memory safety for TinyOS. In Proceedings of the 5th International Conference on Embedded Networked Sensor Systems (SenSys’07). ACM, New York, 205--218.
[19]
F. J. Corbato and V. A. Vyssotsky. 1965. Introduction and overview of the multics system. In Proceedings of the November 30--December 1, 1965, Fall Joint Computer Conference, Part I. ACM, 185--196.
[20]
Department of Energy and Climate Change. 2014. Smart Metering Implementation Programme—Smart Metering Equipment Technical Specifications; Version 1.58. (2014). Retrieved from https://www.gov.uk/government/uploads/system/uploads/attachment_data/file/381535/SMIP_E2E_SMETS2.pdf.
[21]
Dominique Devriese and Frank Piessens. 2010. Noninterference through secure multi-execution. In Proceedings of the IEEE Symposium on Security and Privacy. 109--124.
[22]
Danny Dolev and Andrew C. Yao. 1983. On the security of public key protocols. IEEE Trans. Info. Theory 29, 2 (1983), 198--208.
[23]
Adam Dunkels, Niclas Finne, Joakim Eriksson, and Thiemo Voigt. 2006. Run-time dynamic linking for reprogramming wireless sensor networks. In Proceedings of the 4th International Conference on Embedded Networked Sensor Systems (SenSys’06). ACM. New York, 15--28.
[24]
A. Dunkels, B. Gronvall, and T. Voigt. 2004. Contiki—A lightweight and flexible operating system for tiny networked sensors. In Proceedings of the 29th Annual IEEE International Conference on Local Computer Networks. 455--462. Retrieved from http://www.contiki-os.org/.
[25]
Karim Eldefrawy, Aurélien Francillon, Daniele Perito, and Gene Tsudik. 2012. SMART: Secure and minimal architecture for (establishing a dynamic) root of trust. In Proceedings of the 19th Annual Network and Distributed System Security Symposium (NDSS’12), San Diego.
[26]
Úlfar Erlingsson, Yves Younan, and Frank Piessens. 2010. Low-level software security by example. In Handbook of Information and Communication Security. Springer.
[27]
Scott Erven and Shawn Merdinger. 2014. Just what the doctor ordered? Proceedings of DEV CON 22 (2014).
[28]
Muhammad Omer Farooq and Thomas Kunz. 2011. Operating systems for wireless sensor networks: A survey. Sensors 11, 6 (2011), 5900--5930.
[29]
M. C. Fernandez-Gago, R. Roman, and J. Lopez. 2007. A survey on the applicability of trust management systems for wireless sensor networks. In Proceedings of the 3rd International Workshop on Security, Privacy and Trust in Pervasive and Ubiquitous Computing (SECPerU’07). 25--30.
[30]
Aurélien Francillon and Claude Castelluccia. 2008. Code injection attacks on harvard-architecture devices. In Proceedings of the 15th ACM Conference on Computer and Communications Security (CCS’08). ACM, New York, 15--26.
[31]
Gartner. 2013. Gartner Says the Internet of Things Installed Base Will Grow to 26 Billion Units By 2020. Retrieved from http://www.gartner.com/newsroom/id/2636073 (2013).
[32]
Thanassis Giannetsos, Tassos Dimitriou, and Neeli R. Prasad. 2009. Self-propagating worms in wireless sensor networks. In Proceedings of the 5th International Student Workshop on Emerging Networking Experiments and Technologies (Co-Next Student Workshop’09). ACM, New York, 31--32.
[33]
Olivier Girard. 2016. openMSP430. Retrieved from http://opencores.org/project,openmsp430 (2016).
[34]
GlobalPlatform. 2015. GlobalPlatform Card Specification v2.3. Retrieved from http://www.globalplatform.org/ (2015)
[35]
Johannes Götzfried, Tilo Müller, Ruan de Clercq, Pieter Maene, Felix Freiling, and Ingrid Verbauwhede. 2015. Soteria: Offline software protection within low-cost embedded devices. In Proceedings of the 31st Annual Computer Security Applications Conference.
[36]
Jorge Granjal, Edmundo Monteiro, and Jorge Sá Silva. 2015. Security in the integration of low-power wireless sensor networks with the internet: A survey. Ad Hoc Netw. 24, Part A, 0 (2015), 264--287.
[37]
Lin Gu and John A. Stankovic. 2006. t-kernel: Providing reliable OS support to wireless sensor networks. In Proceedings of the 4th International Conference on Embedded Networked Sensor Systems. ACM, Boulder, Colorado, 1--14.
[38]
D. Halperin, T. S. Heydt-Benjamin, B. Ransford, S. S. Clark, B. Defend, W. Morgan, K. Fu, T. Kohno, and W. H. Maisel. 2008. Pacemakers and implantable cardiac defibrillators: Software radio attacks and zero-power defenses. In Proceedings of the 2008 IEEE Symposium on Security and Privacy (SP’08). 129--142.
[39]
Chih-Chieh Han, Ram Kumar, Roy Shea, Eddie Kohler, and Mani Srivastava. 2005. A dynamic operating system for sensor nodes. In Proceedings of the 3rd International Conference on Mobile Systems, Applications, and Services (MobiSys’05). ACM, New York, 163--176.
[40]
Owen S. Hofmann, Sangman Kim, Alan M. Dunn, Michael Z. Lee, and Emmett Witchel. 2013. InkTag: Secure applications on an untrusted operating system. In Proceedings of the 18th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’13). ACM, 265--278.
[41]
Paul C. Kocher. 1996. Timing attacks on implementations of diffie-hellman, RSA, DSS, and other systems. In Proceedings of the 16th Annual International Cryptology Conference on Advances in Cryptology (CRYPTO’96). Springer-Verlag, London, 104--113.
[42]
Paul C. Kocher, Joshua Jaffe, and Benjamin Jun. 1999. Differential power analysis. In Proceedings of the 19th Annual International Cryptology Conference on Advances in Cryptology (CRYPTO’99). Springer-Verlag, London, 388--397.
[43]
Patrick Koeberl, Steffen Schulz, Ahmad-Reza Sadeghi, and Vijay Varadharajan. 2014. TrustLite: A security architecture for tiny embedded devices. In Proceedings of the Ninth European Conference on Computer Systems (EuroSys’14). ACM, New York, Article 10, 14 pages.
[44]
Kari Kostiainen, Jan-Erik Ekberg, N. Asokan, and Aarne Rantala. 2009. On-board credentials with open provisioning. In Proceedings of the 4th International Symposium on Information, Computer, and Communications Security (ASIACCS’09). ACM, New York, 104--115.
[45]
Ram Kumar, Eddie Kohler, and Mani Srivastava. 2007. Harbor: Software-based memory protection for sensor nodes. In Proceedings of the 6th International Conference on Information Processing in Sensor Networks (IPSN’07). ACM, New York, 340--349.
[46]
Yong Ki Lee, K. Sakiyama, L. Batina, and I. Verbauwhede. 2008. Elliptic-curve-based security processor for rfid. IEEE Trans. Comput. 57, 11 (Nov. 2008), 1514--1527.
[47]
Frank Thomson Leighton and Silvio Micali. 1994. Secret-key agreement without public-key cryptography. In Proceedings of the 13th Annual International Cryptology Conference on Advances in Cryptology (CRYPTO’93). Springer-Verlag, London, 456--479.
[48]
Ilias Leontiadis, Christos Efstratiou, Cecilia Mascolo, and Jon Crowcroft. 2012. SenShare: Transforming sensor networks into multi-application sensing infrastructures. In Proceedings of the 9th European Conference on Wireless Sensor Networks (EWSN’12). Springer-Verlag, Berlin, 65--81.
[49]
Philip Levis. 2012. Experiences from a decade of TinyOS development. In Proceedings of the 10th USENIX Conference on Operating Systems Design and Implementation (OSDI’12). USENIX Association, Berkeley, 207--220.
[50]
Jay Ligatti, Lujo Bauer, and David Walker. 2005. Edit automata: Enforcement mechanisms for run-time security policies. Int. J. Info. Secur. 4, 1--2 (2005), 2--16.
[51]
LLVM Developer Group. 2016. Clang. Retrieved from http://clang.llvm.org/ (2016).
[52]
LLVM Developer Group. 2016. LLVM. Retrieved from http://llvm.org/ (2016).
[53]
Javier Lopez, Rodrigo Roman, Isaac Agudo, and Carmen Fernandez-Gago. 2010. Trust management systems for wireless sensor networks: Best practices. Comput. Commun. 33, 9 (2010), 1086--1093.
[54]
P. Maene, J. Gotzfried, R. de Clercq, T. Müller, F. Freiling, and I. Verbauwhede. 2017. Hardware-based trusted computing architectures for isolation and attestation. IEEE Trans. Comput. PP, 99 (2017).
[55]
Jonathan M. McCune, Yanlin Li, Ning Qu, Zongwei Zhou, Anupam Datta, Virgil Gligor, and Adrian Perrig. 2010. TrustVisor: Efficient TCB reduction and attestation. In Proceedings of the IEEE Symposium on Security and Privacy.
[56]
Jonathan M. McCune, Bryan Parno, Adrian Perrig, Michael K. Reiter, and Hiroshi Isozaki. 2008. Flicker: An execution infrastructure for TCB minimization. In Proceedings of the ACM European Conference in Computer Systems (EuroSys’08) ACM, 315--328.
[57]
Frank McKeen, Ilya Alexandrovich, Alex Berenzon, Carlos V. Rozas, Hisham Shafi, Vedvyas Shanbhogue, and Uday R. Savagaonkar. 2013. Innovative instructions and software model for isolated execution. In Proceedings of the 2nd International Workshop on Hardware and Architectural Support for Security and Privacy (HASP’13). ACM, New York, Article 10, 1 pages.
[58]
Charlie Miller and Chris Valasek. 2015. Remote exploitation of an unaltered passenger vehicle. Black Hat USA (2015).
[59]
Jan Tobias Mühlberg, Sara Cleemput, Mustafa A. Mustafa, Jo Van Bulck, Bart Preneel, and Frank Piessens. 2016. An implementation of a high assurance smart meter using protected module architectures. In Proceedings of WISTP’16 (LNCS). Springer, Heidelberg, To appear.
[60]
Jan Tobias Mühlberg, Job Noorman, and Frank Piessens. 2015. Lightweight and flexible trust assessment modules for the internet of things. In Proceedings of ESORICS’15 (LNCS), Vol. 9326. Springer, Heidelberg, 503--520.
[61]
Job Noorman, Pieter Agten, Wilfried Daniels, Raoul Strackx, Anthony Van Herrewege, Christophe Huygens, Bart Preneel, Ingrid Verbauwhede, and Frank Piessens. 2013. Sancus: Low-cost trustworthy extensible networked devices with a zero-software trusted computing base. In Proceedings of the 22nd USENIX Security Symposium. USENIX Association. 479--494.
[62]
Stefan Nürnberger and Christian Rossow. 2016. vatiCAN: Vetted, Authenticated CAN Bus. Springer, Berlin, 106--124.
[63]
Oracle. 2015. Java Card Technology 3.0.5. Retrieved from http://www.oracle.com/technetwork/java/javacard/overview/ (2015).
[64]
Marco Patrignani, Pieter Agten, Raoul Strackx, Bart Jacobs, Dave Clarke, and Frank Piessens. 2015. Secure compilation to protected module architectures. ACM Trans. Program. Lang. Syst. 37, 2, Article 6 (April 2015), 50 pages.
[65]
Jerome Radcliffe. 2011. Hackng medical devices for fun and insulin: Breaking the human SCADA system. Black Hat USA (2011).
[66]
Rodrigo Roman, Pablo Najera, and Javier Lopez. 2011. Securing the internet of things. Computer 44, 9 (2011), 51--58.
[67]
Dewan P. Sahita R, Warrier U. 2009. Protecting critical applications on mobile platforms. Intel. Technol. J. 13 (2009), 16--35. Issue 2.
[68]
Hocheol Shin, Yunmok Son, Youngseok Park, Yujin Kwon, and Yongdae Kim. 2016. Sampling Race: Bypassing timing-based analog active sensor spoofing detection on analog-digital systems. In Proceedings of WOOT 2016. USENIX Association, Berkeley, CA, 200--210.
[69]
Yasser Shoukry, Paul Martin, Paulo Tabuada, and Mani Srivastava. 2013. Non-invasive spoofing attacks for anti-lock braking systems. In Proceedings of CHES 2013 (LNCS). Springer, Berlin, 55--72.
[70]
Doug Simon, Cristina Cifuentes, Dave Cleal, John Daniels, and Derek White. 2006. Java™ on the bare metal of wireless sensor devices: The squawk java virtual machine. In VEE Hans-Juergen Boehm and David Grove (Eds.). ACM, 78--88.
[71]
Raoul Strackx and Frank Piessens. 2012. Fides: Selectively hardening software application components against kernel-level or process-level malware. In Proceedings of the 19th ACM Conference on Computer and Communications Security (CCS’12). ACM Press. 2--13.
[72]
Raoul Strackx, Frank Piessens, and Bart Preneel. 2010. Efficient isolation of trusted subsystems in embedded systems. In Lecture Notes of the Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering: Security and Privacy in Communication Networks, Vol. 50. Springer, 1--18.
[73]
Nicolas Tsiftes, Adam Dunkels, Zhitao He, and Thiemo Voigt. 2009. Enabling large-scale storage in sensor networks with the coffee file system. In Proceedings of the 2009 International Conference on Information Processing in Sensor Networks. IEEE Computer Society, 349--360.
[74]
Jo Van Bulck, Job Noorman, Jan Tobias Mühlberg, and Frank Piessens. 2015. Secure resource sharing for embedded protected module architectures. In Proceedings of WISTP’15 (LNCS), Vol. 9311, Springer, Heidelberg, 71--87.
[75]
Jo Van Bulck, Job Noorman, Jan Tobias Mühlberg, and Frank Piessens. 2016. Towards availability and real-time guarantees for protected module architectures. In Proceedings of MASS’16, MODULARITY Companion. ACM, New York, 146--151.
[76]
J. Viega and H. Thompson. 2012. The state of embedded-device security (spoiler alert: It’s bad). IEEE Secur. Priv. 10, 5 (Sept.--Oct. 2012), 68--70.
[77]
Yuanzhong Xu, Weidong Cui, and Marcus Peinado. 2015. Controlled-channel attacks: Deterministic side channels for untrusted operating systems. In Proceedings of the 2015 IEEE Symposium on Security and Privacy. IEEE, 640--656.
[78]
Yves Younan, Wouter Joosen, and Frank Piessens. 2012. Runtime countermeasures for code injection attacks against C and C++ programs. ACM Comput. Surv. 44, 3, Article 17 (June 2012), 28 pages.

Cited By

View all
  • (2024)The SA4P Framework: Sensing and Actuation as a PrivilegeProceedings of the 19th ACM Asia Conference on Computer and Communications Security10.1145/3634737.3657006(873-885)Online publication date: 1-Jul-2024
  • (2024)Toward Remotely Verifiable Software Integrity in Resource-Constrained IoT DevicesIEEE Communications Magazine10.1109/MCOM.001.230051462:7(58-64)Online publication date: Jul-2024
  • (2024)Secure Intermittent Computing with ARM TrustZone on the Cortex-M2024 IEEE European Symposium on Security and Privacy Workshops (EuroS&PW)10.1109/EuroSPW61312.2024.00022(160-168)Online publication date: 8-Jul-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Privacy and Security
ACM Transactions on Privacy and Security  Volume 20, Issue 3
August 2017
153 pages
ISSN:2471-2566
EISSN:2471-2574
DOI:10.1145/3129335
Issue’s Table of Contents
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 the author(s) 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: 31 July 2017
Accepted: 01 April 2017
Revised: 01 February 2017
Received: 01 August 2016
Published in TOPS Volume 20, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Embedded systems security
  2. Protected Module Architectures
  3. Software security engineering
  4. Trusted computing

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • Transregional Collaborative Research Centre “Invasive Computing”
  • Intel Lab's University Research Office
  • Research Fund KU Leuven
  • Research Foundation - Flanders (FWO)
  • German Research Foundation (DFG)

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)108
  • Downloads (Last 6 weeks)10
Reflects downloads up to 25 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)The SA4P Framework: Sensing and Actuation as a PrivilegeProceedings of the 19th ACM Asia Conference on Computer and Communications Security10.1145/3634737.3657006(873-885)Online publication date: 1-Jul-2024
  • (2024)Toward Remotely Verifiable Software Integrity in Resource-Constrained IoT DevicesIEEE Communications Magazine10.1109/MCOM.001.230051462:7(58-64)Online publication date: Jul-2024
  • (2024)Secure Intermittent Computing with ARM TrustZone on the Cortex-M2024 IEEE European Symposium on Security and Privacy Workshops (EuroS&PW)10.1109/EuroSPW61312.2024.00022(160-168)Online publication date: 8-Jul-2024
  • (2024)Bridging the Gap: Automated Analysis of Sancus2024 IEEE 37th Computer Security Foundations Symposium (CSF)10.1109/CSF61375.2024.00023(233-248)Online publication date: 8-Jul-2024
  • (2024)L-IDS: A Multi-Layered Approach to Ransomware Detection in IoT2024 IEEE 14th Annual Computing and Communication Workshop and Conference (CCWC)10.1109/CCWC60891.2024.10427870(0387-0396)Online publication date: 8-Jan-2024
  • (2024)A Hardware-Based Correct Execution Environment Supporting Virtual MemoryIEEE Access10.1109/ACCESS.2024.344350912(114008-114022)Online publication date: 2024
  • (2024)Securing Sensing in Supply Chains: Opportunities, Building Blocks, and DesignsIEEE Access10.1109/ACCESS.2024.335077812(9350-9368)Online publication date: 2024
  • (2024)LICAPA: Lightweight collective attestation for physical attacks detection in highly dynamic networksPervasive and Mobile Computing10.1016/j.pmcj.2024.10190399(101903)Online publication date: Apr-2024
  • (2023)ARIProceedings of the 32nd USENIX Conference on Security Symposium10.5555/3620237.3620392(2761-2778)Online publication date: 9-Aug-2023
  • (2023)Mr-TEEProceedings of the 24th International Middleware Conference: Industrial Track10.1145/3626562.3626831(22-28)Online publication date: 11-Dec-2023
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media