Automating Software Development with Explicit Model Checking

Total Page:16

File Type:pdf, Size:1020Kb

Automating Software Development with Explicit Model Checking Masaryk University, Faculty of Informatics PhD Thesis Automating Software Development with Explicit Model Checking Author: Supervisor: Petr Bauch Jiˇr´ı Barnat Signature: Signature: Brno, 2015 a i Acknowledgements The idea to combine explicit and symbolic approaches to model checking was bestowed upon me by my thesis supervisor, Jiˇr´ıBarnat, for which I will remain forever grateful to him. We have been discussing the topic at length on numerous occasions, always arriving at a new inspiration for further progress. Each of my earlier doubts was shattered and every found obstacle overcome by his help. My previous supervisor, LuboˇsBrim, introduced the idea of analysing requirements without models, which gave me my first experience with autonomous scientific work: an invaluable experience. Yet even greater influence on me had his course on the Dijkstra's method. There was the first spark, my falling for the formal methods. Equally grateful I am to all members of the ParaDiSe and Sybila laboratories, both present and past, for creating an atmosphere which was as friendly as it was inspiring. Finally, I would like to give credit to students that helped me implement some of the ideas I had { Vojtˇech Havel and Jan Tuˇsil{ since their coding skills surpass mine I was able to learn from them as much as they learnt from me. ii a iii Summary In the last decade it became a common practice to formalise software requirements to improve the clarity of users' expectations. This thesis builds on the fact that functional requirements can be expressed in temporal logic and we propose new means of verifying the requirements themselves and the compliance to those requirements throughout the development process. The goal is the automation of some of the verification processes currently employed in software development. The tool is the automata-based, explicit-state model checking. With respect to requirements, we propose new techniques that automatically detect flaws and suggest improvements of given requirements. Specifically, we describe and experimentally evaluate approaches to consistency and redundancy checking that identify all inconsistencies and pinpoint their exact source (the smallest inconsistent set). We further report on the experience obtained from employing the consistency and redundancy checking in an industrial environment. To complete the sanity checking we also describe a semi-automatic completeness evaluation that can assess the coverage of user requirements and suggest missing properties the user might have wanted to formulate. The usefulness of our completeness evaluation is demonstrated in a case study of an aeroplane control system. With respect to compliance to requirements, we propose extending the explicit model checking to scale to more realistic programs. Automatic verification of programs and computer systems with data non-determinism (e.g. reading from user input) represents a significant and well-motivated challenge. The case of Simulink diagrams is especially difficult, because there the inputs are read iteratively and the number of input variables is in theory unbounded. The case of parallel programs is difficult in a different way, because then also the control flow non- trivially complicates the verification process. We apply the techniques of explicit-state model checking to account for the control aspects of verified programs and use set-based reduction of the data flow, thus handling the two sources of non-determinism separately. We evaluate a number of representation of sets in scalability with respect to the range of input variables. Explicit (enumerating) sets are very fast for small ranges but fail to scale. Symbolic sets, represented as first-order formulae in the bit-vector theory and compared using satisfiability modulo theory solvers, scale well to arbitrary (though still bounded) range of input variables. Binary decision diagrams dominate in both space and time complexities, but only if we limit the scope to linear arithmetic and a relatively small number of variables. We build the theory of set-based reduction using first-order formulae in the bit-vector theory to encode the sets of variable evaluations representing program data. These repre- sentations are tested for emptiness and equality (state matching) during the verification and we harness modern satisfiability modulo theories solvers to implement these tests. We de- sign two methods of implementing the state matching, one using quantifiers and one which is quantifier-free, and we provide both analytical and experimental comparison. Further ex- periments evaluate the efficiency of the set-based reduction showing the classical, explicit approach to fail to scale with the size of data domains. Finally, we report on the development of a generic framework for automatic verification of linear temporal logic specifications for programs in LLVM bitcode. To evaluate the framework we compare our method with state-of-the-art tools on a set of unmodified C programs. iv Abstract This thesis builds on the fact that functional requirements can be expressed in temporal logic and we propose new means of verifying the requirements themselves and the compliance to those requirements throughout the development process. The goal is the automation of some of the verification processes currently employed in software development. The tool is the automata-based, explicit-state model checking. With respect to requirements, we propose new techniques that automatically detect flaws and suggest improvements of given require- ments. Specifically, we describe and experimentally evaluate approaches to consistency and redundancy checking that identify all inconsistencies and pinpoint their exact source (the smallest inconsistent set). With respect to compliance to requirements, we propose extending the explicit model checking to scale to more realistic programs. We apply the techniques of explicit-state model checking to account for the control aspects of verified programs and use set-based reduction of the data flow, thus handling the two sources of non-determinism separately. We build the theory of set-based reduction using first-order formulae in the bit- vector theory to encode the sets of variable evaluations representing program data. These representations are tested for emptiness and equality (state matching) during the verification and we harness modern satisfiability modulo theories solvers to implement these tests. Our experiments evaluate the efficiency of the set-based reduction showing the classical, explicit approach to fail to scale with the size of data domains. v Contents 1 Introduction1 1.1 Software Development Cycle............................1 1.2 Model Checking...................................4 1.3 Sanity Checking..................................7 1.4 Case Study: Simulink Diagrams..........................7 1.5 Contribution....................................9 1.5.1 Model-Free Sanity Checking........................ 10 1.5.2 Control Explicit|Data Symbolic Model Checking........... 10 1.5.3 Verification Platform............................ 11 1.5.4 Thesis Content............................... 12 1.5.5 Author's Other Publications....................... 14 2 Related Work 17 2.1 Control Explicit|Data Symbolic Model Checking............... 17 2.1.1 Symbolic Representations......................... 18 2.1.2 Bit-Precise LTL Model Checking of Parallel Programs with Inputs.. 19 2.1.3 State Space Reduction by Control-Flow Aggregation.......... 21 2.1.4 Combinations of Explicit and Symbolic Approaches.......... 22 2.2 Model-free Sanity Checking............................ 22 2.3 Verification of Simulink Diagrams......................... 24 2.4 LTL Verification of Parallel LLVM Programs.................. 26 3 Preliminaries 29 3.1 First-Order Theory of Bit-Vectors........................ 29 3.2 Control Flow Graphs................................ 31 3.3 LTL Model Checking................................ 34 3.3.1 Explicit-State Model Checking...................... 35 3.4 Sanity Checking.................................. 37 4 Checking Sanity of Software Requirements 39 4.1 Consistency and Redundancy........................... 39 4.1.1 Implementation of Consistency Checking................ 42 4.2 Completeness of Requirements.......................... 45 4.3 Sanity Checking Experiments........................... 48 4.3.1 Generated Requirements.......................... 48 4.3.2 Case Study: Aeroplane Control System................. 49 vi 4.3.3 Industrial Evaluation............................ 54 4.4 Closing Remarks.................................. 55 4.4.1 Alternative LTL to B¨uchi Translation.................. 57 5 Control Explicit|Data Symbolic Model Checking 59 5.1 Set-Based Reduction................................ 59 5.2 Symbolic Representation.............................. 65 5.3 Storing and Searching............................... 70 5.3.1 Linear Storage............................... 71 5.3.2 Explicating Variables............................ 71 5.3.3 Witness-Based Matching Resolution................... 72 5.4 Model Checking Algorithm............................ 73 5.4.1 Counterexamples.............................. 77 5.4.2 Deadlocks.................................. 78 5.4.3 Witnesses.................................. 78 6 Verification of Simulink Designs 81 6.1 Theory of Simulink Verification.......................... 81 6.1.1 Verification with Explicit Sets....................... 83 6.1.2 SAT-Based Verification.......................... 84 6.1.3 Hybrid Representation..........................
Recommended publications
  • SIGMOD Record, June 2018 (Vol
    SIGMOD Officers, Committees, and Awardees Chair Vice-Chair Secretary/Treasurer Juliana Freire Ihab Francis Ilyas Fatma Ozcan Computer Science & Engineering Cheriton School of Computer Science IBM Research New York University University of Waterloo Almaden Research Center Brooklyn, New York Waterloo, Ontario San Jose, California USA CANADA USA +1 646 997 4128 +1 519 888 4567 ext. 33145 +1 408 927 2737 juliana.freire <at> nyu.edu ilyas <at> uwaterloo.ca fozcan <at> us.ibm.com SIGMOD Executive Committee: Juliana Freire (Chair), Ihab Francis Ilyas (Vice-Chair), Fatma Ozcan (Treasurer), K. Selçuk Candan, Yanlei Diao, Curtis Dyreson, Christian S. Jensen, Donald Kossmann, and Dan Suciu. Advisory Board: Yannis Ioannidis (Chair), Phil Bernstein, Surajit Chaudhuri, Rakesh Agrawal, Joe Hellerstein, Mike Franklin, Laura Haas, Renee Miller, John Wilkes, Chris Olsten, AnHai Doan, Tamer Özsu, Gerhard Weikum, Stefano Ceri, Beng Chin Ooi, Timos Sellis, Sunita Sarawagi, Stratos Idreos, Tim Kraska SIGMOD Information Director: Curtis Dyreson, Utah State University Associate Information Directors: Huiping Cao, Manfred Jeusfeld, Asterios Katsifodimos, Georgia Koutrika, Wim Martens SIGMOD Record Editor-in-Chief: Yanlei Diao, University of Massachusetts Amherst SIGMOD Record Associate Editors: Vanessa Braganholo, Marco Brambilla, Chee Yong Chan, Rada Chirkova, Zachary Ives, Anastasios Kementsietsidis, Jeffrey Naughton, Frank Neven, Olga Papaemmanouil, Aditya Parameswaran, Alkis Simitsis, Wang-Chiew Tan, Pinar Tözün, Marianne Winslett, and Jun Yang SIGMOD Conference
    [Show full text]
  • Composition of Software Architectures Christos Kloukinas
    Composition of Software Architectures Christos Kloukinas To cite this version: Christos Kloukinas. Composition of Software Architectures. Computer Science [cs]. Université Rennes 1, 2002. English. tel-00469412 HAL Id: tel-00469412 https://tel.archives-ouvertes.fr/tel-00469412 Submitted on 1 Apr 2010 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Composition of Software Architectures - Ph.D. Thesis - - Presented in front of the University of Rennes I, France - - English Version - Christos Kloukinas Jury Members : Jean-Pierre Banâtre Jacky Estublier Cliff Jones Valérie Issarny Nicole Lévy Joseph Sifakis February 12, 2002 Résumé Les systèmes informatiques deviennent de plus en plus complexes et doivent offrir un nombre croissant de propriétés non fonctionnelles, comme la fiabi- lité, la disponibilité, la sécurité, etc.. De telles propriétés sont habituellement fournies au moyen d’un intergiciel qui se situe entre le matériel (et le sys- tème d’exploitation) et le niveau applicatif, masquant ainsi les spécificités du système sous-jacent et permettant à des applications d’être utilisées avec dif- férentes infrastructures. Cependant, à mesure que les exigences de propriétés non fonctionnelles augmentent, les architectes système se trouvent confron- tés au cas où aucun intergiciel disponible ne fournit toutes les propriétés non fonctionnelles visées.
    [Show full text]
  • Towards a Unified Proof Framework for Automated Fixpoint Reasoning
    Technical Report: Towards A Unified Proof Framework for Automated Fixpoint Reasoning Using Matching Logic∗ Xiaohong Chen, Thai Trinh, Nishant Rodrigues, Lucas Peña, and Grigore Roşu {xc3,trinhmt,nishant2,lpena7,grosu}@illinois.edu University of Illinois at Urbana-Champaign September 8, 2020 Abstract Automation of fixpoint reasoning has been extensively studied for various mathematical structures, logical formalisms, and computational domains, resulting in specialized fixpoint provers for heaps, for streams, for term algebras, for temporal properties, for program correctness, and for many other formal systems and inductive and coinductive properties. However, in spite of great theoretical and practical interest, there is no unified framework for automated fixpoint reasoning. Although several attempts have been made, there is no evidence that such a unified framework is possible, or practical. In this paper, we propose a candidate based on matching logic, a formalism recently shown to theoretically unify the above mentioned formal systems. Unfortunately, the (knaster-tarski) proof rule of matching logic, which enables inductive reasoning, is not syntax-driven. Worse, it can be applied at any step during a proof, making automation seem hopeless. Inspired by recent advances in automation of inductive proofs in separation logic, we propose an alternative proof system for matching logic, which is amenable for automation. We then discuss our implementation of it, which although not superior to specialized state-of-the-art automated provers for specific
    [Show full text]
  • COSMOS D2.2.3 State of the Art Analysis and Requirements Definition
    Ref. Ares(2016)1089931 - 03/03/2016 D2.2.3. SotA Analysis and Requirements Definition (Final) COSMOS Cultivate resilient smart Objects for Sustainable city applicatiOnS Grant Agreement Nº 609043 D2.2.3 State of the Art Analysis and Requirements Definition (Final) WP2: Requirements and Architecture Version: 2.0 Due Date: 30 November 2015 Delivery Date: 30 November 2015 Resubmission Date: 12 February 2016 Nature: Report Dissemination Level: Public Lead partner: UNIS Authors: All Partners Internal reviewers: NTUA, SIEMENS Date: 30/11/2015 Grant Agreement number: 609043 Page 1 of 134 D2.2.3. SotA Analysis and Requirements Definition (Final) www.iot-cosmos.eu The research leading to these results has received funding from the European Community's Seventh Framework Programme under grant agreement n° 609043 Version Control: Version Date Author Author’s Changes Organization 0.1 28/09/2015 Francois Carrez UNIS Initial version ready for contributions 0.2 5/11/2015 Adnan Akbar UNIS CEP and Predictive Analytics 0.3 13/11/2015 Juan Rico ATOS New section in CEP chapter about Fernandez CEP and edge computing 0.4 19/11/2015 Achilleas Marinakis NTUA Privacy by Design section 0.5 20/11/2015 George Kousiouris NTUA Social Network contribution 0.6 22/11/2015 Paula Ta-Shma IBM Updates regarding computations close to the data store and metadata search. 0.7 24/11/2015 Francois Carrez UNIS Update of Introduction and Requirement chapters 0.8 25/11/2015 Leonard Pitu SIEMENS Update of Security Section 0.9 27/11/2015 Achilleas Marinakis NTUA Internal Review 0.10
    [Show full text]
  • Modeling Narrative Discourse David K. Elson
    Modeling Narrative Discourse David K. Elson Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the Graduate School of Arts and Sciences COLUMBIA UNIVERSITY 2012 c 2012 David K. Elson All Rights Reserved ABSTRACT Modeling Narrative Discourse David K. Elson This thesis describes new approaches to the formal modeling of narrative discourse. Al- though narratives of all kinds are ubiquitous in daily life, contemporary text processing techniques typically do not leverage the aspects that separate narrative from expository discourse. We describe two approaches to the problem. The first approach considers the conversational networks to be found in literary fiction as a key aspect of discourse coher- ence; by isolating and analyzing these networks, we are able to comment on longstanding literary theories. The second approach proposes a new set of discourse relations that are specific to narrative. By focusing on certain key aspects, such as agentive characters, goals, plans, beliefs, and time, these relations represent a theory-of-mind interpretation of a text. We show that these discourse relations are expressive, formal, robust, and through the use of a software system, amenable to corpus collection projects through the use of trained annotators. We have procured and released a collection of over 100 encodings, covering a set of fables as well as longer texts including literary fiction and epic poetry. We are able to inferentially find similarities and analogies between encoded stories based on the proposed relations, and an evaluation of this technique shows that human raters prefer such a measure of similarity to a more traditional one based on the semantic distances between story propositions.
    [Show full text]
  • Pluginizing QUIC∗
    Pluginizing QUIC∗ Quentin De Coninck, François Michel, Maxime Piraux, Florentin Rochet, Thomas Given-Wilson, Axel Legay, Olivier Pereira, Olivier Bonaventure UCLouvain, Belgium [email protected] https://pquic.org ABSTRACT 1 INTRODUCTION Application requirements evolve over time and the underlying Transport protocols including TCP [79], RTP [34], SCTP [91] or protocols need to adapt. Most transport protocols evolve by negoti- QUIC [51, 58] play a key role in today’s Internet. They extend ating protocol extensions during the handshake. Experience with the packet forwarding service provided by the network layer and TCP shows that this leads to delays of several years or more to include a variety of end-to-end services. A transport protocol is usu- widely deploy standardized extensions. In this paper, we revisit the ally designed to support a set of requirements. Protocol designers extensibility paradigm of transport protocols. know that these requirements evolve over time and all these proto- We base our work on QUIC, a new transport protocol that en- cols allow clients to propose the utilization of extensions during crypts most of the header and all the payload of packets, which the handshake. makes it almost immune to middlebox interference. We propose These negotiation schemes have enabled TCP and other trans- Pluginized QUIC (PQUIC), a framework that enables QUIC clients port protocols to evolve over recent decades [24]. A modern TCP and servers to dynamically exchange protocol plugins that extend stack supports a long list of TCP extensions (Windows scale [52], the protocol on a per-connection basis. These plugins can be trans- timestamps [52], selective acknowledgments [65], Explicit Con- parently reviewed by external verifiers and hosts can refuse non- gestion Notification [81] or multipath extensions [32]).
    [Show full text]
  • Formal Methods Specification and Analysis Guidebook for the Verification of Software and Computer Systems
    OIIICI 01 Sill 1) l\l)\llsslo\ \%s( l{\\cl NASA-GB-O01-97 1{1 I I \\l 1 (1 Formal Methods Specification and Analysis Guidebook for the Verification of Software and Computer Systems Volume 11: A Practitioner’s Companion May 1997 L*L● National Aeronautics and Space Administration @ Washington, DC 20546 NASA-GB-001-97 Release 1.0 FORMAL METHODS SPECIFICATION AND ANALYSIS GUIDEBOOK FOR THE VERIFICATION OF SOFTWARE AND COMPUTER SYSTEMS VOLUME II: A PRACTITIONER’S COMPANION FOREWORD This volume presents technical issues involved in applying mathematical techniques known as Formal Methods to specify and analytically verify aerospace and avionics software systems. The first volume, NASA-GB-002-95 [NASA-95a], dealt with planning and technology insertion. This second volume discusses practical techniques and strategies for verifying requirements and high-level designs for software intensive systems. The discussion is illustrated with a realistic example based on NASA’s Simplified Aid for EVA (Extravehicular Activity) Rescue [SAFER94a, SAFER94b]. The vohu-ne is intended as a “companion” and guide for the novice formal methods and analytical verification practitioner. Together, the two volumes address the recognized need for new technologies and improved techniques to meet the demands inherent in developing increasingly complex and autonomous systems. The support of NASA’s Safety and Mission Quality Office for the investigation of formal methods and analytical verification techniques reflects the growing practicality of these approaches for enhancing the quality of aerospace and avionics applications. Major contributors to the guidebook include Judith Crow, lead author (SRI International); Ben Di Vito, SAFER example author (ViGYAN); Robyn Lutz (NASA - JPL); Larry Roberts (Lockheed Martin Space Mission Systems and Services); Martin Feather (NASA - JPL); and John Kelly (NASA - JPL), task lead.
    [Show full text]
  • Lattigo: a Multiparty Homomorphic Encryption Library in Go
    Lattigo: a Multiparty Homomorphic Encryption Library inGo Christian Mouchet Jean-Philippe Bossuat [email protected] [email protected] EPFL EPFL Juan Troncoso-Pastoriza Jean-Pierre Hubaux [email protected] [email protected] EPFL EPFL ABSTRACT Table 1: The github.com/ldsec/lattigo/v2 Go module We present and demo of Lattigo, a multiparty homomorphic en- lattigo/ring provides the RNS (Residue Number Sys- cryption library in Go. After a brief introduction of the origin and tem) modular arithmetic over the ring 3 history of the library, we dive into the most relevant technical as- Z& »-¼/¹- ¸ 1º with 3 a power of two. This pects that differentiate Lattigo from other existing libraries. From includes: RNS basis extension, RNS division, the cryptographic research perspective, we describe our realiza- number theoretic transform (NTT), and uni- tion of the keyswitch and CKKS bootstrapping operations. We form, Gaussian and ternary sampling. also present our approach to multiparty homomorphic encryption lattigo/bfv implements the Full-RNS, scale-invariant and its importance for Lattigo use-cases. From the software per- scheme of Brakerski, Fan and Vercauteren 3 spective, we elaborate on the choice of the Go language and the (BFV) [5, 12, 14]; it supports Z? arithmetic. benefits it brings to application developers who use the library. lattigo/ckks implements the Full-RNS scheme of Cheon et We then present performance benchmarks and the main use-case al. [10, 11] (CKKS, a.k.a. HEAAN), that sup- applications the library had so far. The last part of the presentation ports approximate arithmetic over C3/2.
    [Show full text]
  • Implementation Guidance for FIPS 140-2 and the Cryptographic Module Validation Program
    Implementation Guidance for FIPS 140-2 and the Cryptographic Module Validation Program National Institute of Standards and Technology Canadian Centre for Cyber Security Initial Release: March 28, 2003 Last Update: May 4, 2021 Implementation Guidance for FIPS PUB 140-2 and the Cryptographic Module Validation Program National Institute of Standards and Technology Table of Contents OVERVIEW ....................................................................................................................................................... 6 GENERAL ISSUES............................................................................................................................................ 7 G.1 REQUEST FOR GUIDANCE FROM THE CMVP AND CAVP ............................................................................ 7 G.2 COMPLETION OF A TEST REPORT: INFORMATION THAT MUST BE PROVIDED TO NIST AND CCCS ............... 9 G.3 PARTIAL VALIDATIONS AND NOT APPLICABLE AREAS OF FIPS 140-2 ..................................................... 11 G.4 DESIGN AND TESTING OF CRYPTOGRAPHIC MODULES ............................................................................... 12 G.5 MAINTAINING VALIDATION COMPLIANCE OF SOFTWARE OR FIRMWARE CRYPTOGRAPHIC MODULES ........ 13 G.6 MODULES WITH BOTH A FIPS MODE AND A NON-FIPS MODE ................................................................... 15 G.7 RELATIONSHIPS AMONG VENDORS, LABORATORIES, AND NIST/CCCS .................................................. 16 G.8 REVALIDATION REQUIREMENTS ..............................................................................................................
    [Show full text]
  • Efficient Multi-Key Homomorphic Encryption with Packed Ciphertexts
    Efficient Multi-Key Homomorphic Encryption with Packed Ciphertexts with Application to Oblivious Neural Network Inference Hao Chen1, Wei Dai1, Miran Kim2, and Yongsoo Song1 1 Microsoft Research, Redmond, USA 2 UTHealth, Houston, USA fhaoche, wei.dai, [email protected] [email protected] Abstract. Homomorphic Encryption (HE) is a cryptosystem which supports computation on en- crypted data. L´opez-Alt et al. (STOC 2012) proposed a generalized notion of HE, called Multi-Key Homomorphic Encryption (MKHE), which is capable of performing arithmetic operations on ci- phertexts encrypted under different keys. In this paper, we present multi-key variants of two HE schemes with packed ciphertexts. We present new relinearization algorithms which are simpler and faster than previous method by Chen et al. (TCC 2017). We then generalize the bootstrapping techniques for HE to obtain multi-key fully homomorphic encryption schemes. We provide a proof-of-concept implementation of both MKHE schemes using Microsoft SEAL. For example, when the dimension of base ring is 8192, homomor- phic multiplication between multi-key BFV (resp. CKKS) ciphertexts associated with four parties followed by a relinearization takes about 116 (resp. 67) milliseconds. Our MKHE schemes have a wide range of applications in secure computation between multiple data providers. As a benchmark, we homomorphically classify an image using a pre-trained neural network model, where input data and model are encrypted under different keys. Our implementation takes about 1.8 seconds to evaluate one convolutional layer followed by two fully connected layers on an encrypted image from the MNIST dataset. Keywords: Multi-key homomorphic encryption · Packed ciphertext · Ring learning with errors · Neural networks.
    [Show full text]
  • PCI DSS E-Commerce Guidelines Information Supplement • PCI DSS E-Commerce Guidelines • January 2013
    Standard: PCI Data Security Standard (PCI DSS) Version: 2.0 Date: January 2013 Author: E-commerce Special Interest Group PCI Security Standards Council Information Supplement: PCI DSS E-commerce Guidelines Information Supplement • PCI DSS E-commerce Guidelines • January 2013 Table of Contents 1 Executive Summary ........................................................................................................................................... 3 2 Introduction ........................................................................................................................................................ 4 2.1 Intended Use of this Information Supplement ............................................................................................... 4 3 E-commerce Overview ...................................................................................................................................... 6 3.1 Third-party Entities ........................................................................................................................................ 6 3.1.1 E-commerce Payment Gateway/Payment Processor .......................................................................... 6 3.1.2 Web-hosting Provider ........................................................................................................................... 6 3.1.3 General Infrastructure Hosting Provider ............................................................................................... 7 3.2 E-commerce Infrastructure...........................................................................................................................
    [Show full text]
  • The TPM: Technical Overview of Microsoft's Interim Measures
    The TPM: Technical Overview of Microsoft’s Interim Measures against CVE-2017-15361 Aleksandar Milenkoski To cite this version: Aleksandar Milenkoski. The TPM: Technical Overview of Microsoft’s Interim Measures against CVE- 2017-15361. [Technical Report] ERNW Enno Rey Netzwerke GmbH. 2020. hal-03088319 HAL Id: hal-03088319 https://hal.archives-ouvertes.fr/hal-03088319 Submitted on 26 Dec 2020 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Distributed under a Creative Commons Attribution - NonCommercial - NoDerivatives| 4.0 International License The TPM: Technical Overview of Microsoft’s Interim Measures against CVE-2017-15361 ) Aleksandar Milenkoski [email protected] This work is part of the Windows Insight series. This series aims to assist efforts on analysing inner working principles, functionalities, and properties of the Microsoft Windows operating system. For general inquiries contact Aleksandar Milenkoski ([email protected]) or Dominik Phillips ([email protected]). For inquiries on this work contact the corresponding author ()). The content of this work has been created in the course of the project named ’Studie zu Systemaufbau, Protokollierung, Härtung und Sicherheitsfunktionen in Windows 10 (SiSyPHuS Win10)’ (ger.) - ’Study of system design, logging, hard- ening, and security functions in Windows 10’ (eng.).
    [Show full text]