A Distributed Calculus for Role-Based Access Control

Size: px
Start display at page:

Download "A Distributed Calculus for Role-Based Access Control"

Transcription

1 A Distributed Calculus for Role-Based Access Control Chiara Braghin joint work with D. Gorla and V. Sassone MyThS Meeting, Venice, June, 14th, 2004 A Distributed Calculus for Role-Based Access Control p.1/18

2 RBAC Why: Role-Based Access Control is attracting increasing attention because: it reduces complexity and cost of security administration; permission s management is less error-prone; it is flexible (rôle s hierarchy, separation of duty, etc.); it is least privilege-oriented. A Distributed Calculus for Role-Based Access Control p.2/18

3 RBAC Why: Role-Based Access Control is attracting increasing attention because: it reduces complexity and cost of security administration; permission s management is less error-prone; it is flexible (rôle s hierarchy, separation of duty, etc.); it is least privilege-oriented. Our work: Formalize the behaviour of concurrent and distributed systems under security policies defined in a RBAC fashion, similar to the types developed in Dπ and Klaim to implement discretionary access control the types developed for Boxed Ambients to implement mandatory access control A Distributed Calculus for Role-Based Access Control p.2/18

4 Contents the RBAC96 model a formal framework for concurrent systems running under a RBAC policy: an extension of the π-calculus a type system ensuring that the specified policy is respected during computations a bisimulation to reason on systems behaviours some useful applications of the theory: finding the minimal schema to run a given system refining a system to be run under a given schema minimize the number of users in a given system. A Distributed Calculus for Role-Based Access Control p.3/18

5 The Basic RBAC model USER ASSIGNMENT PERM. ASSIGNMENT USERS ROLES PERMISSIONS SESSIONS A Distributed Calculus for Role-Based Access Control p.4/18

6 The starting point: π-calculus Concurrent processes communicating on channels. Processes: P, Q ::= a(x).p u v.p [u = v]p (νa:r)p nil P Q!P A Distributed Calculus for Role-Based Access Control p.5/18

7 The Syntax of our Calculus Concurrent processes communicating on channels. Processes: P, Q ::= a(x).p u v.p [u = v]p (νa:r)p nil P Q!P role R.P yield R.P A Distributed Calculus for Role-Based Access Control p.5/18

8 The Syntax of our Calculus Concurrent processes communicating on channels. Processes: P, Q ::= a(x).p u v.p [u = v]p (νa:r)p nil P Q!P role R.P yield R.P User Sessions: r{ P } ρ A Distributed Calculus for Role-Based Access Control p.5/18

9 The Syntax of our Calculus Concurrent processes communicating on channels. Processes: P, Q ::= a(x).p u v.p [u = v]p (νa:r)p nil P Q!P role R.P yield R.P Systems: A, B ::= 0 r{ P }ρ A B (νa r :R)A A Distributed Calculus for Role-Based Access Control p.5/18

10 The Syntax of our Calculus Concurrent processes communicating on channels. Processes: P, Q ::= a(x).p u v.p [u = v]p (νa:r)p nil P Q!P role R.P yield R.P Systems: A, B ::= 0 r{ P }ρ A B (νa r :R)A Channels are allocated to users to enable a distibuted implementation A Distributed Calculus for Role-Based Access Control p.5/18

11 Dynamic Semantics It is given in the form of a reduction relation Communication: s{ a r n.p } ρ r{ a(x).q } ρ A Distributed Calculus for Role-Based Access Control p.6/18

12 Dynamic Semantics It is given in the form of a reduction relation Communication: s{ a r n.p } ρ r{ a(x).q } ρ s{ P } ρ r{ Q[n/x] } ρ A Distributed Calculus for Role-Based Access Control p.6/18

13 Dynamic Semantics It is given in the form of a reduction relation Communication: s{ a r n.p } ρ r{ a(x).q } ρ s{ P } ρ r{ Q[n/x] } ρ Rôle activation: r{ role R.P } ρ A Distributed Calculus for Role-Based Access Control p.6/18

14 Dynamic Semantics It is given in the form of a reduction relation Communication: s{ a r n.p } ρ r{ a(x).q } ρ s{ P } ρ r{ Q[n/x] } ρ Rôle activation: r{ role R.P } ρ r{ P } ρ {R} A Distributed Calculus for Role-Based Access Control p.6/18

15 Dynamic Semantics It is given in the form of a reduction relation Communication: s{ a r n.p } ρ r{ a(x).q } ρ s{ P } ρ r{ Q[n/x] } ρ Rôle activation: r{ role R.P } ρ r{ P } ρ {R} Rôle deactivation: r{ yield R.P } ρ A Distributed Calculus for Role-Based Access Control p.6/18

16 Dynamic Semantics It is given in the form of a reduction relation Communication: s{ a r n.p } ρ r{ a(x).q } ρ s{ P } ρ r{ Q[n/x] } ρ Rôle activation: r{ role R.P } ρ r{ P } ρ {R} Rôle deactivation: r{ yield R.P } ρ r{ P } ρ {R} A Distributed Calculus for Role-Based Access Control p.6/18

17 RBAC schema Permissions are capabilities that enable process actions. Thus, A = {R, R?, R! } R R is the set of permissions. A Distributed Calculus for Role-Based Access Control p.7/18

18 RBAC schema Permissions are capabilities that enable process actions. Thus, A = {R, R?, R! } R R is the set of permissions. In our framework, the RBAC schema is a pair of finite relations (U ; P), such that U fin (N u C) R P fin R A A Distributed Calculus for Role-Based Access Control p.7/18

19 An Example A banking scenario: two users, the client r and the bank s cashiers are modelled as channels c 1,..., c n of user s the rôles available are client and cashier. r{ role client.enqueue s r.dequeue(z).z req 1..z req k.z stop.yield client } ρ s{ (ν free)(!enqueue(x).free(y).dequeue x y Π n i=1 frees c s i Π n i=1!c i(x).( [x = withdrw_req] < > [x = dep_req] < >... [x = stop]free s c s i ) ) } ρ A Distributed Calculus for Role-Based Access Control p.8/18

20 Static Semantics - Types The syntax of types: Types T ::= UT C User Types UT ::= ρ[a 1 : R 1 (T 1 ),..., a n : R n (T n )] Channel Types C ::= R(T ) A Distributed Calculus for Role-Based Access Control p.9/18

21 Static Semantics - Types The syntax of types: Types T ::= UT C User Types UT ::= ρ[a 1 : R 1 (T 1 ),..., a n : R n (T n )] Channel Types C ::= R(T ) Γ; ρ P r P states that P respects Γ and P when it is run in a session of r with rôles ρ activated A Distributed Calculus for Role-Based Access Control p.9/18

22 Static Semantics - Types The syntax of types: Types T ::= UT C User Types UT ::= ρ[a 1 : R 1 (T 1 ),..., a n : R n (T n )] Channel Types C ::= R(T ) Γ; ρ P r P states that P respects Γ and P when it is run in a session of r with rôles ρ activated A typing environment is a mapping from user names and variables to user types that respects the assignments in U A Distributed Calculus for Role-Based Access Control p.9/18

23 Static Semantics - The Type System An example: performing input actions. (T-Input) Γ a: R(T ) R? P(ρ) Γ, x T ; ρ P r P Γ; ρ P r a(x).p A Distributed Calculus for Role-Based Access Control p.10/18

24 Static Semantics - The Type System An example: performing input actions. (T-Input) Γ a: R(T ) R? P(ρ) Γ, x T ; ρ P r P Γ; ρ P r a(x).p Type Safety: Let A be a well-typed system for (U; P). Then, whenever A (ν a r :R)(A r{ b(x).p } ρ ), it holds that either b r :S a r :R and S? P(ρ), or b r ã r and S? P(ρ), where {S} = U(b r ) A Distributed Calculus for Role-Based Access Control p.10/18

25 The Example Again The banking scenario again: now each available operation is modelled as a different channel (wdrw = withdraw, opn = open account, cc = credit card request) the communication among different channels requires different rôles P is such that {(rich_client, cc! ), (rich, rich_client )} P. A Distributed Calculus for Role-Based Access Control p.11/18

26 The Example Again The banking scenario again: now each available operation is modelled as a different channel (wdrw = withdraw, opn = open account, cc = credit card request) the communication among different channels requires different rôles P is such that {(rich_client, cc! ), (rich, rich_client )} P. r{ role client.enqueue s r.dequeue(z).z creditcard_req.cc s signature.z stop } {user} A Distributed Calculus for Role-Based Access Control p.11/18

27 The Example Again The banking scenario again: now each available operation is modelled as a different channel (wdrw = withdraw, opn = open account, cc = credit card request) the communication among different channels requires different rôles P is such that {(rich_client, cc! ), (rich, rich_client )} P. r{ role client.enqueue s r.dequeue(z).z creditcard_req.cc s signature.z stop } {user} r{ role rich_client.enqueue s r.dequeue(z).z creditcard_req.cc s signature.z stop } {rich} A Distributed Calculus for Role-Based Access Control p.11/18

28 LTS Semantics The labels of the LTS are derived from those of the π-calculus: µ ::= τ a r n a r n : R a r n a r n : R the LTS relates configurations, i.e. pairs (U; P) A made up of a RBAC schema (U; P) and a system A. Example: (LTS-F-Input) U(a r ) = {R} R? P(ρ) n dom(u) (U; P) r{ a(x).p } ρ a r n:s (U {n : S}; P) r{ P [n/x] } ρ A Distributed Calculus for Role-Based Access Control p.12/18

29 Bisimulation Equivalence We can define a standard bisimulation over the LTS (Bisimulation) It is a binary symmetric relation S between configurations such that, if (D, E) S and D µ D, there exists a configuration E such that E ˆµ = E and (D, E ) S. Bisimilarity,, is the largest bisimulation. the bisimulation is adequate with respect to a standardly defined (typed) barbed congruence. A Distributed Calculus for Role-Based Access Control p.13/18

30 Some Algebraic Laws if an action is not enabled, then the process cannot evolve: r{ α.p } ρ 0 if P(ρ) does not enable α A Distributed Calculus for Role-Based Access Control p.14/18

31 Some Algebraic Laws if an action is not enabled, then the process cannot evolve: r{ α.p } ρ 0 if P(ρ) does not enable α Differently from some distributed calculi, a terminated session does not affect the evolution of the system: r{ nil } ρ 0 A Distributed Calculus for Role-Based Access Control p.14/18

32 Some Algebraic Laws if an action is not enabled, then the process cannot evolve: r{ α.p } ρ 0 if P(ρ) does not enable α Differently from some distributed calculi, a terminated session does not affect the evolution of the system: r{ nil } ρ 0 the user performing an output action is irrelevant; the only relevant aspect is the set of permissions activated when performing the action: r{ b s n.nil } ρ t{ b s n.nil } ρ A Distributed Calculus for Role-Based Access Control p.14/18

33 Finding the Minimal Schema Goal: to look for a minimal schema to execute a given system A while mantaining its behaviour w.r.t. (U; P) Algorithm: fix a metrics (number of rôles in the schema, permissions associated to each rôle, etc.) define the set CONF A = {(U ; P ) A : (U ; P ) is a RBAC schema} of configurations for A partition CONF A w.r.t. and consider the equivalence class containing (U; P) A choose the minimal schema according to the chosen metrics A Distributed Calculus for Role-Based Access Control p.15/18

34 Refining Systems Goal: to add rôle activations/deactivations within a system in such a way that the resulting system can be executed under a given schema (U; P) we want a rôle to be active only when needed the refining procedure replaces any input/output prefix α occurring in session r{ } ρ with the sequence of prefixes role R.α.yield R where R is formed by rôles assigned to r, activable when having activated ρ and enabling the execution of α the refining procedure adapts the type system Improvement: we can give an algorithm to minimize the number of these actions added A Distributed Calculus for Role-Based Access Control p.16/18

35 Relocating Activities Goal: to transfer a process from one user to another without changing the overall system behaviour, in order to minimize the number of users in a system it is possible to infer axiomatically judgments of the form: (U; P) r{ P } ρ (U; P) s{ P } ρ This judgment says that the process P can be executed by r and s without affecting the overall system behaviour. Thus, the session r{ P } ρ can be removed. If no other session of r is left in the system, then r is a useless user and is erased. A Distributed Calculus for Role-Based Access Control p.17/18

36 Conclusion We have defined a formal framework for reasoning about concurrent systems running under an RBAC schema; a number of papers deal with the specification and verification of RBAC schema; Future Works: extend the framework to deal with more complex RBAC models; prove that bisimilarity is complete for barbed congruence; study information flow in terms of RBAC? A Distributed Calculus for Role-Based Access Control p.18/18

Roma and Conjugation of a RBAC System

Roma and Conjugation of a RBAC System In Proc. of 17th Computer Security Foundations Workshop (CSFW 04), pagg. 48 60. c IEEE. A Distributed Calculus for Rôle-Based Access Control Chiara Braghin Dip. di Informatica niv. Ca Foscari di Venezia

More information

Semantics and Verification of Software

Semantics and Verification of Software Semantics and Verification of Software Lecture 21: Nondeterminism and Parallelism IV (Equivalence of CCS Processes & Wrap-Up) Thomas Noll Lehrstuhl für Informatik 2 (Software Modeling and Verification)

More information

A Propositional Dynamic Logic for CCS Programs

A Propositional Dynamic Logic for CCS Programs A Propositional Dynamic Logic for CCS Programs Mario R. F. Benevides and L. Menasché Schechter {mario,luis}@cos.ufrj.br Abstract This work presents a Propositional Dynamic Logic in which the programs are

More information

Automatic Composition of Web Services

Automatic Composition of Web Services Automatic Composition of Web Services N. Guermouche, O. Perrin, C. Ringeissen LORIA Réunion COPS 3. Guermouche, O. Perrin, C. Ringeissen (LORIA) Automatic Composition of Web Services Réunion COPS 3 1 /

More information

Software Model Checking. Equivalence Hierarchy

Software Model Checking. Equivalence Hierarchy Software Equivalence Hierarchy Moonzoo Kim CS Dept. KAIST CS750B Software Korea Advanced Institute of Science and Technology Equivalence semantics and SW design Preliminary Hierarchy Diagram Trace-based

More information

Software Verification and Testing. Lecture Notes: Temporal Logics

Software Verification and Testing. Lecture Notes: Temporal Logics Software Verification and Testing Lecture Notes: Temporal Logics Motivation traditional programs (whether terminating or non-terminating) can be modelled as relations are analysed wrt their input/output

More information

How To Write A Program Verification And Programming Book

How To Write A Program Verification And Programming Book Jose Bacelar Almeida Maria Joao Frade Jorge Sousa Pinto Simao Melo de Sousa Rigorous Software Development An Introduction to Program Verification & Springer Contents 1 Introduction 1 1.1 A Formal Approach

More information

A Semantic Analysis of Wireless Network Security Protocols

A Semantic Analysis of Wireless Network Security Protocols A Semantic Analysis of Wireless Network Security Protocols Massimo Merro (joint work with Damiano Macedonio) Dipartimento di Informatica Università degli Studi di Verona - Italy NFM 2012 - Norfolk, April

More information

Bindings, mobility of bindings, and the -quantifier

Bindings, mobility of bindings, and the -quantifier ICMS, 26 May 2007 1/17 Bindings, mobility of bindings, and the -quantifier Dale Miller, INRIA-Saclay and LIX, École Polytechnique This talk is based on papers with Tiu in LICS2003 & ACM ToCL, and experience

More information

Monitoring Networks through Multiparty Session Types

Monitoring Networks through Multiparty Session Types Monitoring Networks through Multiparty Session Types Laura Bocchi 1, Tzu-Chun Chen 2, Romain Demangeon 1, Kohei Honda 2, Nobuko Yoshida 1 2 Queen Mary, University of London, 1 Imperial College, London

More information

Types for Role-based Access Control of Dynamic Web Data

Types for Role-based Access Control of Dynamic Web Data Types for Role-based Access Control of Dynamic Web Data Mariangiola Dezani-Ciancaglini 1 Silvia Ghilezan 2 Svetlana Jakšić 2 Jovanka Pantović 2 1 Università di Torino 2 University of Novi Sad SVARM 2010,

More information

Software Modeling and Verification

Software Modeling and Verification Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system

More information

Preventing Denial of Service Attacks in a Calculus of Mobile Resources

Preventing Denial of Service Attacks in a Calculus of Mobile Resources Preventing Denial of Service Attacks in a Calculus of Mobile Resources Bilge Hösükoǧlu, David Sánchez Hernández, Julian Driver June 1, 2006 Abstract In this paper we introduce membranes for the calculus

More information

History-based access control for distributed processes

History-based access control for distributed processes History-based access control for distributed processes Francisco Martins 1 and Vasco Vasconcelos 2 1 Department of Mathematics, University of Azores, Portugal. 2 Department of Informatics, Faculty of Sciences,

More information

Introducing Formal Methods. Software Engineering and Formal Methods

Introducing Formal Methods. Software Engineering and Formal Methods Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended

More information

Dynamic Process/Service Composition/Combination

Dynamic Process/Service Composition/Combination INFINT 2009 - Bertinoro Workshop on Data and Service Integration Bertinoro, March 15-20, 2009 Dynamic Process/Service Composition/Combination Ugo Montanari Dipartimento di Informatica Università di Pisa

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION 1 CHAPTER 1 INTRODUCTION Exploration is a process of discovery. In the database exploration process, an analyst executes a sequence of transformations over a collection of data structures to discover useful

More information

An Observational Theory for Mobile Ad Hoc Networks

An Observational Theory for Mobile Ad Hoc Networks An Observational Theory for Mobile Ad Hoc Networks Massimo Merro Dipartimento di Informatica, Università di Verona, Italy Abstract We propose a process calculus to study the behavioural theory of Mobile

More information

The CVS-Server Case Study: A Formalized Security Architecture

The CVS-Server Case Study: A Formalized Security Architecture The CVS-Server Case Study: A Formalized Security Architecture Extended Abstract Achim D. Brucker, Frank Rittinger, and Burkhart Wolff {brucker,rittinge,wolff}@informatik.uni-freiburg.de 1 Introduction

More information

A role-based access control type system for boxed ambients.

A role-based access control type system for boxed ambients. A role-based access control type system for boxed ambients. Adriana Compagnoni, Stevens Institute of Technology, Elsa L. Gunter, University of Illinois, Urbana - Champaign, Philippe Bidinger, Stevens Institute

More information

Best Place to Find the Best Jobs Out There

Best Place to Find the Best Jobs Out There Safer in the Clouds (Extended Abstract) Chiara Bodei, Viet Dung Dinh and Gian Luigi Ferrari Dipartimento di Informatica, Università di Pisa, Italy {chiara,dinh,giangi}@diunipiit We outline the design of

More information

A logical approach to dynamic role-based access control

A logical approach to dynamic role-based access control A logical approach to dynamic role-based access control Philippe Balbiani Yannick Chevalier Marwa El Houri Abstract Since its formalization RBAC has become the yardstick for the evaluation of access control

More information

Chapter 23. Database Security. Security Issues. Database Security

Chapter 23. Database Security. Security Issues. Database Security Chapter 23 Database Security Security Issues Legal and ethical issues Policy issues System-related issues The need to identify multiple security levels 2 Database Security A DBMS typically includes a database

More information

Coverability for Parallel Programs

Coverability for Parallel Programs 2015 http://excel.fit.vutbr.cz Coverability for Parallel Programs Lenka Turoňová* Abstract We improve existing method for the automatic verification of systems with parallel running processes. The technique

More information

CS377: Database Systems Data Security and Privacy. Li Xiong Department of Mathematics and Computer Science Emory University

CS377: Database Systems Data Security and Privacy. Li Xiong Department of Mathematics and Computer Science Emory University CS377: Database Systems Data Security and Privacy Li Xiong Department of Mathematics and Computer Science Emory University 1 Principles of Data Security CIA Confidentiality Triad Prevent the disclosure

More information

Datavetenskapligt Program (kandidat) Computer Science Programme (master)

Datavetenskapligt Program (kandidat) Computer Science Programme (master) Datavetenskapligt Program (kandidat) Computer Science Programme (master) Wolfgang Ahrendt Director Datavetenskap (BSc), Computer Science (MSc) D&IT Göteborg University, 30/01/2009 Part I D&IT: Computer

More information

Formal Verification and Linear-time Model Checking

Formal Verification and Linear-time Model Checking Formal Verification and Linear-time Model Checking Paul Jackson University of Edinburgh Automated Reasoning 21st and 24th October 2013 Why Automated Reasoning? Intellectually stimulating and challenging

More information

CryptographicallyEnforced

CryptographicallyEnforced Cryptographically CryptographicallyEnforced Enforced RBAC RBAC Georg Fuchsbauer (IST Austria) 27 June 2013, CSF joint work with Anna Lisa Ferrara and Bogdan Warinschi (University of Bristol) Overview Cryptographically

More information

Observational Program Calculi and the Correctness of Translations

Observational Program Calculi and the Correctness of Translations Observational Program Calculi and the Correctness of Translations Manfred Schmidt-Schauss 1, David Sabel 1, Joachim Niehren 2, and Jan Schwinghammer 1 Goethe-University, Frankfurt, Germany 2 INRIA Lille,

More information

SOFTWARE ENGINEERING PROGRAM

SOFTWARE ENGINEERING PROGRAM SOFTWARE ENGINEERING PROGRAM PROGRAM TITLE DEGREE TITLE Master of Science Program in Software Engineering Master of Science (Software Engineering) M.Sc. (Software Engineering) PROGRAM STRUCTURE Total program

More information

InvGen: An Efficient Invariant Generator

InvGen: An Efficient Invariant Generator InvGen: An Efficient Invariant Generator Ashutosh Gupta and Andrey Rybalchenko Max Planck Institute for Software Systems (MPI-SWS) Abstract. In this paper we present InvGen, an automatic linear arithmetic

More information

Authenticity by Typing for Security Protocols

Authenticity by Typing for Security Protocols Authenticity by Typing for Security Protocols Andrew D. Gordon Microsoft Research Alan Jeffrey DePaul University June 2002 Technical Report To appear in the Journal of Computer Security Microsoft Research

More information

Curriculum Vitae. Jens Chr. Godskesen. IT University of Copenhagen Rued Langgaards Vej 7, DK-2300 Copenhagen S, Denmark www.itu.

Curriculum Vitae. Jens Chr. Godskesen. IT University of Copenhagen Rued Langgaards Vej 7, DK-2300 Copenhagen S, Denmark www.itu. Curriculum Vitae Jens Chr. Godskesen Date of Birth May 25, 1963 Position Address www Positions Head of Department IT University of Copenhagen Rued Langgaards Vej 7, DK-2300 Copenhagen S, Denmark www.itu.dk/~jcg

More information

Institut für Parallele und Verteilte Systeme. Abteilung Anwendersoftware. Universität Stuttgart Universitätsstraße 38 D-70569 Stuttgart

Institut für Parallele und Verteilte Systeme. Abteilung Anwendersoftware. Universität Stuttgart Universitätsstraße 38 D-70569 Stuttgart Institut für Parallele und Verteilte Systeme Abteilung Anwendersoftware Universität Stuttgart Universitätsstraße 38 D-70569 Stuttgart Diplomarbeit Nr. 3243 Development and Evaluation of a Framework for

More information

The Halting Problem is Undecidable

The Halting Problem is Undecidable 185 Corollary G = { M, w w L(M) } is not Turing-recognizable. Proof. = ERR, where ERR is the easy to decide language: ERR = { x { 0, 1 }* x does not have a prefix that is a valid code for a Turing machine

More information

ICECCS 08/Workshop «UML&AADL 2008», April, 2, 2008

ICECCS 08/Workshop «UML&AADL 2008», April, 2, 2008 Contract-based approach to analyze software components Abdelhafid Zitouni Lionel SEINTURIER Mahmoud BOUFAIDA Laboratory LIRE LIFL-INRIA ADAM Laboratory LIRE University of Constantine University of Lille

More information

The SPES Methodology Modeling- and Analysis Techniques

The SPES Methodology Modeling- and Analysis Techniques The SPES Methodology Modeling- and Analysis Techniques Dr. Wolfgang Böhm Technische Universität München boehmw@in.tum.de Agenda SPES_XT Project Overview Some Basic Notions The SPES Methodology SPES_XT

More information

Channel Abstractions for Network Security

Channel Abstractions for Network Security Math. Struct. in Comp. Science 20(1), 2010 Channel Abstractions for Network Security M I C H E L E B U G L I E S I, R I C C A R D O F O C A R D I Dipartimento di Informatica, Università Ca Foscari, Venice.

More information

A STRUCTURED APPROACH TO NETWORK SECURITY PROTOCOL IMPLEMENTATION

A STRUCTURED APPROACH TO NETWORK SECURITY PROTOCOL IMPLEMENTATION A STRUCTURED APPROACH TO NETWORK SECURITY PROTOCOL IMPLEMENTATION a dissertation submitted to the department of computer science, faculty of science at the university of cape town in fulfillment of the

More information

Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection

Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Martin Leucker Technische Universität München (joint work with Andreas Bauer, Christian Schallhart et. al) FLACOS

More information

Towards Automated Conformance Checking of ebbp-st Choreographies and Corresponding WS-BPEL Based Orchestrations

Towards Automated Conformance Checking of ebbp-st Choreographies and Corresponding WS-BPEL Based Orchestrations Towards Automated Conformance Checking of ebbp-st Choreographies and Corresponding WS-BPEL Based Orchestrations Matthias Geiger, Andreas Schönberger and Guido Wirtz Distributed and Mobile Systems Group,

More information

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions Announcements SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 Send your group

More information

Inference of Probability Distributions for Trust and Security applications

Inference of Probability Distributions for Trust and Security applications Inference of Probability Distributions for Trust and Security applications Vladimiro Sassone Based on joint work with Mogens Nielsen & Catuscia Palamidessi Outline 2 Outline Motivations 2 Outline Motivations

More information

BPCMont: Business Process Change Management Ontology

BPCMont: Business Process Change Management Ontology BPCMont: Business Process Change Management Ontology Muhammad Fahad DISP Lab (http://www.disp-lab.fr/), Université Lumiere Lyon 2, France muhammad.fahad@univ-lyon2.fr Abstract Change management for evolving

More information

A Probabilistic Energy-Aware Model for Mobile Ad-Hoc Networks

A Probabilistic Energy-Aware Model for Mobile Ad-Hoc Networks A Probabilistic Energy-Aware Model for Mobile Ad-Hoc Networks Lucia Gallina, Sardaouna Hamadou, Andrea Marin, and Sabina Rossi Università Ca Foscari, Venezia (Italy) {lgallina,sh,marin,srossi}@dais.unive.it

More information

Role Based Access Control

Role Based Access Control Role Based Access Control Role-Based Access Control Models. By R.S. Sandhu, E.J. Coyne, H.L. Feinstein, and C.E. Youman, IEEE Computer, vol 29(2):38--47, February 1996. The most cited paper in access control!

More information

Formal Specification Methods for the Improvement of Process and Product Quality

Formal Specification Methods for the Improvement of Process and Product Quality Formal Specification Methods for the Improvement of Process and Product Quality Satish Mishra 1 and Prof Holger Schlingloff 12 1 Institut für Informatik, HU Berlin, 2 Fraunhofer FIRST, Berlin Rudower Chaussee

More information

Andrew Pitts chapter for D. Sangorgi and J. Rutten (eds), Advanced Topics in Bisimulation and Coinduction, Cambridge Tracts in Theoretical Computer

Andrew Pitts chapter for D. Sangorgi and J. Rutten (eds), Advanced Topics in Bisimulation and Coinduction, Cambridge Tracts in Theoretical Computer Andrew Pitts chapter for D. Sangorgi and J. Rutten (eds), Advanced Topics in Bisimulation and Coinduction, Cambridge Tracts in Theoretical Computer Science No. 52, chapter 5, pages 197 232 ( c 2011 CUP)

More information

Table of Contents. CHAPTER 1 Web-Based Systems 1. CHAPTER 2 Web Engineering 12. CHAPTER 3 A Web Engineering Process 24

Table of Contents. CHAPTER 1 Web-Based Systems 1. CHAPTER 2 Web Engineering 12. CHAPTER 3 A Web Engineering Process 24 Table of Contents CHAPTER 1 Web-Based Systems 1 The Web 1 Web Applications 2 Let s Introduce a Case Study 3 Are WebApps Really Computer Software? 4 Are the Attributes of WebApps Different from the Attributes

More information

ACVisualizer: A Visualization Tool for Api-Calculus

ACVisualizer: A Visualization Tool for Api-Calculus ACVisualizer: A Visualization Tool for Api-Calculus Shahram Rahimi* and Raheel Ahmad Department of Computer Science, Southern Illinois University, Carbondale, Illinois 6290 rahimi@cs.siu.edu* and rahmad@cs.siu.edu

More information

Database Security. Soon M. Chung Department of Computer Science and Engineering Wright State University schung@cs.wright.

Database Security. Soon M. Chung Department of Computer Science and Engineering Wright State University schung@cs.wright. Database Security Soon M. Chung Department of Computer Science and Engineering Wright State University schung@cs.wright.edu 937-775-5119 Goals of DB Security Integrity: Only authorized users should be

More information

Chapter II. Controlling Cars on a Bridge

Chapter II. Controlling Cars on a Bridge Chapter II. Controlling Cars on a Bridge 1 Introduction The intent of this chapter is to introduce a complete example of a small system development. During this development, you will be made aware of the

More information

How To Write A First Order Test For A Language With A Non-Commutative Type System

How To Write A First Order Test For A Language With A Non-Commutative Type System A Testing Theory for a Higher-Order Cryptographic Language (Extended Abstract) Vasileios Koutavas and Matthew Hennessy Trinity College Dublin {Vasileios.Koutavas, Matthew.Hennessy}@scss.tcd.ie Abstract.

More information

On the Use of Behavioural Equivalences for Web Services Development

On the Use of Behavioural Equivalences for Web Services Development Fundamenta Informaticae 89 (2008) 479 510 479 IOS Press On the Use of Behavioural Equivalences for Web Services Development Filippo Bonchi, Antonio Brogi, Sara Corfini, Fabio Gadducci Department of Computer

More information

CONFIGURATION MANAGEMENT PLAN GUIDELINES

CONFIGURATION MANAGEMENT PLAN GUIDELINES I-680 SMART CARPOOL LANE PROJECT SYSTEM ENGINEERING MANAGEMENT PLAN CONFIGURATION MANAGEMENT PLAN GUIDELINE SECTIONS: PLAN GUIDELINES 1. GENERAL 2. ROLES AND RESPONSIBILITIES 3. CONFIGURATION MANAGEMENT

More information

Algorithmic Software Verification

Algorithmic Software Verification Algorithmic Software Verification (LTL Model Checking) Azadeh Farzan What is Verification Anyway? Proving (in a formal way) that program satisfies a specification written in a logical language. Formal

More information

Analyzing First-order Role Based Access Control

Analyzing First-order Role Based Access Control Analyzing First-order Role Based Access Control Carlos Cotrini, Thilo Weghorn, David Basin, and Manuel Clavel Department of Computer Science ETH Zurich, Switzerland {basin, ccarlos, thiloweghorn}@infethzch

More information

Which Semantics for Neighbourhood Semantics?

Which Semantics for Neighbourhood Semantics? Which Semantics for Neighbourhood Semantics? Carlos Areces INRIA Nancy, Grand Est, France Diego Figueira INRIA, LSV, ENS Cachan, France Abstract In this article we discuss two alternative proposals for

More information

Offline sorting buffers on Line

Offline sorting buffers on Line Offline sorting buffers on Line Rohit Khandekar 1 and Vinayaka Pandit 2 1 University of Waterloo, ON, Canada. email: rkhandekar@gmail.com 2 IBM India Research Lab, New Delhi. email: pvinayak@in.ibm.com

More information

Semantic Description of Distributed Business Processes

Semantic Description of Distributed Business Processes Semantic Description of Distributed Business Processes Authors: S. Agarwal, S. Rudolph, A. Abecker Presenter: Veli Bicer FZI Forschungszentrum Informatik, Karlsruhe Outline Motivation Formalism for Modeling

More information

Towards the Correctness of Security Protocols

Towards the Correctness of Security Protocols Electronic Notes in Theoretical Computer Science 83 (2004) URL: http://www.elsevier.nl/locate/entcs/volume83.html 46 pages Towards the Correctness of Security Protocols Mourad Debbabi 1 Panasonic Information

More information

Static Analysis of the Insider Problem

Static Analysis of the Insider Problem Static Analysis of the Insider Problem Dagur Gunnarsson Kongens Lyngby 2007 IMM-MSC-2007-14 Technical University of Denmark Informatics and Mathematical Modelling Building 321, DK-2800 Kongens Lyngby,

More information

Simulation-Based Security with Inexhaustible Interactive Turing Machines

Simulation-Based Security with Inexhaustible Interactive Turing Machines Simulation-Based Security with Inexhaustible Interactive Turing Machines Ralf Küsters Institut für Informatik Christian-Albrechts-Universität zu Kiel 24098 Kiel, Germany kuesters@ti.informatik.uni-kiel.de

More information

SCADE Suite in Space Applications

SCADE Suite in Space Applications SCADE Suite in Space Applications at EADS David Lesens 09/10/2008 Overview Introduction Historical use of SCADE at EADS Astrium ST Why using SCADE? The Automatic Transfer Vehicle (ATV) M51 and Vega R&T

More information

Requirements Management John Hrastar

Requirements Management John Hrastar Requirements Management John Hrastar NASA Project Management Conference March 30-31, 2004 University of Maryland Conference Center Introduction Three aspects of requirements management Requirements in

More information

A Generic Process Calculus Approach to Relaxed-Memory Consistency

A Generic Process Calculus Approach to Relaxed-Memory Consistency A Generic Process Calculus Approach to Relaxed-Memory Consistency Palle Raabjerg Tjark Weber Nadine Rohde Lars-Henrik Eriksson Joachim Parrow UPMARC Workshop on Memory Models (MM 15) 23 24 February 2015,

More information

BM482E Introduction to Computer Security

BM482E Introduction to Computer Security BM482E Introduction to Computer Security Lecture 7 Database and Operating System Security Mehmet Demirci 1 Summary of Lecture 6 User Authentication Passwords Password storage Password selection Token-based

More information

Engineering Process Software Qualities Software Architectural Design

Engineering Process Software Qualities Software Architectural Design Engineering Process We need to understand the steps that take us from an idea to a product. What do we do? In what order do we do it? How do we know when we re finished each step? Production process Typical

More information

Reducing Clocks in Timed Automata while Preserving Bisimulation

Reducing Clocks in Timed Automata while Preserving Bisimulation Reducing Clocks in Timed Automata while Preserving Bisimulation Shibashis Guha Chinmay Narayan S. Arun-Kumar Indian Institute of Technology Delhi {shibashis, chinmay, sak}@cse.iitd.ac.in arxiv:1404.6613v2

More information

Requirements for Software Deployment Languages and Schema

Requirements for Software Deployment Languages and Schema Requirements for Software Deployment Languages and Schema Richard S. Hall, Dennis Heimbigner, Alexander L. Wolf Software Engineering Research Laboratory Department of Computer Science University of Colorado

More information

Multi-Objective Genetic Test Generation for Systems-on-Chip Hardware Verification

Multi-Objective Genetic Test Generation for Systems-on-Chip Hardware Verification Multi-Objective Genetic Test Generation for Systems-on-Chip Hardware Verification Adriel Cheng Cheng-Chew Lim The University of Adelaide, Australia 5005 Abstract We propose a test generation method employing

More information

Formal Methods in Security Protocols Analysis

Formal Methods in Security Protocols Analysis Formal Methods in Security Protocols Analysis Li Zhiwei Aidong Lu Weichao Wang Department of Computer Science Department of Software and Information Systems University of North Carolina at Charlotte Big

More information

Integrating basic Access Control Models for efficient security along with encryption for the ERP System

Integrating basic Access Control Models for efficient security along with encryption for the ERP System Integrating basic Access Control Models for efficient security along with encryption for the ERP System Prof. Swapnaja A. Ubale Research Scholar (Computer Science & Engineering Department) Research Center

More information

Access Control Models Part I. Murat Kantarcioglu UT Dallas

Access Control Models Part I. Murat Kantarcioglu UT Dallas UT DALLAS Erik Jonsson School of Engineering & Computer Science Access Control Models Part I Murat Kantarcioglu UT Dallas Introduction Two main categories: Discretionary Access Control Models (DAC) Definition:

More information

A Flexible Approach for Assessing Service Compatibility at Element Level

A Flexible Approach for Assessing Service Compatibility at Element Level 153-1 A Flexible Approach for Assessing Service Compatibility at Element Level Marcelo Yamashita, Karin Becker, Renata Galante Instituto de Informática - Universidade Federal do Rio Grande do Sul Porto

More information

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science Program Schedule CTech Computer Science Credits CS101 Computer Science I 3 MATH100 Foundations of Mathematics and

More information

Bisimulation and Logical Preservation for Continuous-Time Markov Decision Processes

Bisimulation and Logical Preservation for Continuous-Time Markov Decision Processes Bisimulation and Logical Preservation for Continuous-Time Markov Decision Processes Martin R. Neuhäußer 1,2 Joost-Pieter Katoen 1,2 1 RWTH Aachen University, Germany 2 University of Twente, The Netherlands

More information

[2] L. Bækgaard and J.C. Godskesen. Real-time events control in active databases. Journal of Systems and Software, 42(3):263 271, August 1998.

[2] L. Bækgaard and J.C. Godskesen. Real-time events control in active databases. Journal of Systems and Software, 42(3):263 271, August 1998. References [1] L. Bækgaard and J.C. Godskesen. Transition based specification and verification of real-time dynamic database constraints. Technical Report R 95 2018, Aalborg University, Aalborg, Denmark,

More information

Specification and Analysis of Contracts Lecture 1 Introduction

Specification and Analysis of Contracts Lecture 1 Introduction Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.

More information

A logical approach to role-based access control in a distributed environment

A logical approach to role-based access control in a distributed environment A logical approach to role-based access control in a distributed environment Université Paul Sabatier, IRIT COPS - February 2008 Motivation Express access control policies in distributed systems. Take

More information

[Refer Slide Time: 05:10]

[Refer Slide Time: 05:10] Principles of Programming Languages Prof: S. Arun Kumar Department of Computer Science and Engineering Indian Institute of Technology Delhi Lecture no 7 Lecture Title: Syntactic Classes Welcome to lecture

More information

CS510 Software Engineering

CS510 Software Engineering CS510 Software Engineering Propositional Logic Asst. Prof. Mathias Payer Department of Computer Science Purdue University TA: Scott A. Carr Slides inspired by Xiangyu Zhang http://nebelwelt.net/teaching/15-cs510-se

More information

Formalizing Properties of Agents

Formalizing Properties of Agents Formalizing Properties of Agents Richard Goodwin May 1993 CMU-CS-93-159 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 Abstract There is a wide gulf between the formal logics

More information

Fixed-Point Logics and Computation

Fixed-Point Logics and Computation 1 Fixed-Point Logics and Computation Symposium on the Unusual Effectiveness of Logic in Computer Science University of Cambridge 2 Mathematical Logic Mathematical logic seeks to formalise the process of

More information

CHAPTER 22 Database Security Integration Using Role-Based Access Control

CHAPTER 22 Database Security Integration Using Role-Based Access Control CHAPTER 22 Database Security Integration Using Role-Based Access Control Sylvia Osborn Department of Computer Science, The University of Western Ontario London, Ontario, Canada, N6A-5B7 svlvia@csd.uwo.ca

More information

Interconnection Networks. Interconnection Networks. Interconnection networks are used everywhere!

Interconnection Networks. Interconnection Networks. Interconnection networks are used everywhere! Interconnection Networks Interconnection Networks Interconnection networks are used everywhere! Supercomputers connecting the processors Routers connecting the ports can consider a router as a parallel

More information

Open Access to Call and Session Control in Mobile Networks

Open Access to Call and Session Control in Mobile Networks BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 10, No 1 Sofia 2010 Open Access to Call and Session Control in Mobile Networks Evelina Pencheva, Ivaylo Atanasov Technical

More information

COMPUTER SCIENCE. Department of Mathematics & Computer Science

COMPUTER SCIENCE. Department of Mathematics & Computer Science Department of Mathematics & Computer Science COMPUTER SCIENCE This document is meant as a planning guide only. Students are advised to consult with the Chair of the Department if they have specific questions

More information

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53 Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software

More information

Identity Management and Access Control

Identity Management and Access Control and Access Control Marek Rychly mrychly@strathmore.edu Strathmore University, @ilabafrica & Brno University of Technology, Faculty of Information Technology Enterprise Security 7 December 2015 Marek Rychly

More information

Lecture 9: Requirements Modelling

Lecture 9: Requirements Modelling A little refresher: What are we modelling? Lecture 9: Requirements Modelling Requirements; Systems; Systems Thinking Role of Modelling in RE Why modelling is important Limitations of modelling Brief overview

More information

Chapter 4 Software Lifecycle and Performance Analysis

Chapter 4 Software Lifecycle and Performance Analysis Chapter 4 Software Lifecycle and Performance Analysis This chapter is aimed at illustrating performance modeling and analysis issues within the software lifecycle. After having introduced software and

More information

The Classes P and NP

The Classes P and NP The Classes P and NP We now shift gears slightly and restrict our attention to the examination of two families of problems which are very important to computer scientists. These families constitute the

More information

Dynamically Authorized Role-Based Access Control for Secure Distributed Computation

Dynamically Authorized Role-Based Access Control for Secure Distributed Computation Dynamically Authorized Role-Based Access Control for Secure Distributed Computation CORBA CSIv2 in Action C. Joncheng Kuo & Polar Humenn Center for Systems Assurance Syracuse University March 20, 2002

More information

Fabio Patrizi DIS Sapienza - University of Rome

Fabio Patrizi DIS Sapienza - University of Rome Fabio Patrizi DIS Sapienza - University of Rome Overview Introduction to Services The Composition Problem Two frameworks for composition: Non data-aware services Data-aware services Conclusion & Research

More information

Third Party Data Session Control in the Evolved Packet System

Third Party Data Session Control in the Evolved Packet System Third Party Data Session Control in the Evolved Packet System EVELINA PENCHEVA Faculty of Telecommunications Technical University of Sofia 8 Kliment Ohridski blvd., 1000 Sofia BULGARIA enp@tu-sofia.bg

More information

Access Control Intro, DAC and MAC. System Security

Access Control Intro, DAC and MAC. System Security Access Control Intro, DAC and MAC System Security System Security It is concerned with regulating how entities use resources in a system It consists of two main phases: Authentication: uniquely identifying

More information

Arithmetic Coding: Introduction

Arithmetic Coding: Introduction Data Compression Arithmetic coding Arithmetic Coding: Introduction Allows using fractional parts of bits!! Used in PPM, JPEG/MPEG (as option), Bzip More time costly than Huffman, but integer implementation

More information