KeyNote Presentation KeyNote. Vishwas Patil, TIFR.2/10 KeyNote: “?”  Aim:- A notation for specifying local security policies and security credentials.

Slides:



Advertisements
Similar presentations
BNF. What is BNF? BNF stands for “Backus-Naur Form,” after the people who invented it BNF is a metalanguage--a language used to describe another language.
Advertisements

Administrative Policies in XACML Erik Rissanen Swedish Institute of Computer Science.
1 Introduction to Computability Theory Lecture12: Decidable Languages Prof. Amos Israeli.
176 Formal Languages and Applications: We know that Pascal programming language is defined in terms of a CFG. All the other programming languages are context-free.
1 8. Safe Query Languages Safe program – its semantics can be at least partially computed on any valid database input. Safety is tied to program verification,
Chapter 4 Lexical and Syntax Analysis Sections 1-4.
Chapter 3 Describing Syntax and Semantics Sections 1-3.
1 Draft of a Matchmaking Service Chuang liu. 2 Matchmaking Service Matchmaking Service is a service to help service providers to advertising their service.
Context-Free Grammars Lecture 7
Implementing a Distributed Firewall
Chapter 3 Describing Syntax and Semantics Sections 1-3.
Slide 1 Chapter 3 Attribute Grammars. Slide 2 Attribute Grammars Certain language structures cannot be described using EBNF. Attribute grammars are extensions.
Chapter 3 Describing Syntax and Semantics Sections 1-3.
BİL744 Derleyici Gerçekleştirimi (Compiler Design)1.
Data Security in Local Networks using Distributed Firewalls
15-Jul-15 JSON. JSON example “JSON” stands for “JavaScript Object Notation” Despite the name, JSON is a (mostly) language-independent way of specifying.
Lexical and syntax analysis
(2.1) Grammars  Definitions  Grammars  Backus-Naur Form  Derivation – terminology – trees  Grammars and ambiguity  Simple example  Grammar hierarchies.
Fundamentals of Python: From First Programs Through Data Structures
Fundamentals of Python: First Programs
2.2 A Simple Syntax-Directed Translator Syntax-Directed Translation 2.4 Parsing 2.5 A Translator for Simple Expressions 2.6 Lexical Analysis.
Chpater 3. Outline The definition of Syntax The Definition of Semantic Most Common Methods of Describing Syntax.
TDDD43 XML and RDF Slides based on slides by Lena Strömbäck and Fang Wei-Kleiner 1.
Authorization Infrastructure, a Standards View Hal Lockhart OASIS.
Web Services Description Language CS409 Application Services Even Semester 2007.
Lecture 22 XML querying. 2 Example 31.5 – XQuery FLWOR Expressions ‘=’ operator is a general comparison operator. XQuery also defines value comparison.
Computer Science 725 – Software Security Presentation “Decentralized Trust Management” Decentralized Trust ManagementDecentralized Trust Management M.
Design Pattern Interpreter By Swathi Polusani. What is an Interpreter? The Interpreter pattern describes how to define a grammar for simple languages,
An Improved Algorithm to Accelerate Regular Expression Evaluation Author: Michela Becchi, Patrick Crowley Publisher: 3rd ACM/IEEE Symposium on Architecture.
XPath. Why XPath? Common syntax, semantics for [XSLT] [XPointer][XSLT] [XPointer] Used to address parts of an XML document Provides basic facilities for.
1 Relational Expressions Relational expressions: –Expressions that compare operands –Sometimes called conditions –Evaluated to yield a result –Typically.
Uml is made similar by the presence of four common mechanisms that apply consistently throughout the language. After constructing or developing the architecture.
EU Project proposal. Andrei S. Lopatenko 1 EU Project Proposal CERIF-SW Andrei S. Lopatenko Vienna University of Technology
CSE 425: Syntax II Context Free Grammars and BNF In context free grammars (CFGs), structures are independent of the other structures surrounding them Backus-Naur.
Data TypestMyn1 Data Types The type of a variable is not set by the programmer; rather, it is decided at runtime by PHP depending on the context in which.
3.2 Semantics. 2 Semantics Attribute Grammars The Meanings of Programs: Semantics Sebesta Chapter 3.
ISBN Chapter 3 Describing Semantics.
Chapter 3 Part II Describing Syntax and Semantics.
Programming Languages and Design Lecture 3 Semantic Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
D Goforth COSC Translating High Level Languages Note error in assignment 1: #4 - refer to Example grammar 3.4, p. 126.
Chapter 3 Describing Syntax and Semantics
1 A simple C++ program // ======================================================= // File:helloworld.cpp // Author:Vana Doufexi // Date:1/4/2006 // Description:Displays.
ISBN Chapter 3 Describing Syntax and Semantics.
1 / 48 Formal a Language Theory and Describing Semantics Principles of Programming Languages 4.
Sections © Copyright by Pearson Education, Inc. All Rights Reserved.
Programming Languages and Design Lecture 2 Syntax Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
Lecture 23 XQuery 1.0 and XPath 2.0 Data Model. 2 Example 31.7 – User-Defined Function Function to return staff at a given branch. DEFINE FUNCTION staffAtBranch($bNo)
LECTURE 4 Syntax. SPECIFYING SYNTAX Programming languages must be very well defined – there’s no room for ambiguity. Language designers must use formal.
OVERVIEW AND PARSING JSON. What is JSON JavaScript Object Notation Used to format data Commonly used in Web as a vehicle to describe data being sent between.
Language Translation Part 2: Finite State Machines.
ECC Design Team: Initial Report Brian Minard, Tolga Acar, Tim Polk November 8, 2006.
JSON. JSON as an XML Alternative JSON is a light-weight alternative to XML for data- interchange JSON = JavaScript Object Notation It’s really language.
CS416 Compiler Design1. 2 Course Information Instructor : Dr. Ilyas Cicekli –Office: EA504, –Phone: , – Course Web.
Operator precedence parser Lecturer: Noor Dhia
FG Group -Afrilia BP -Liana F.B.I -Maulidatun Nisa -Riza Amini F.
Chapter 3 – Describing Syntax CSCE 343. Syntax vs. Semantics Syntax: The form or structure of the expressions, statements, and program units. Semantics:
LECTURE 10 Semantic Analysis. REVIEW So far, we’ve covered the following: Compilation methods: compilation vs. interpretation. The overall compilation.
Describing Syntax and Semantics
A Simple Syntax-Directed Translator
Section 3.2c Strings and Method Signatures
Lexical and Syntax Analysis
ENERGY 211 / CME 211 Lecture 15 October 22, 2008.
CS 3304 Comparative Languages
CS 3304 Comparative Languages
Data Security in Local Networks using Distributed Firewalls
Compiler Construction
SYNTAX DIRECTED DEFINITION
Chapter 3 Describing Syntax and Semantics.
High-Level Programming Language
Lec00-outline May 18, 2019 Compiler Design CS416 Compiler Design.
Presentation transcript:

KeyNote Presentation KeyNote

Vishwas Patil, TIFR.2/10 KeyNote: “?”  Aim:- A notation for specifying local security policies and security credentials that can be sent over an untrusted network.

KeyNote Presentation Vishwas Patil, TIFR.3/10 KeyNote: versus PolicyMaker  KeyNote predicate notations are based on C-like expressions and regular expressions.  KeyNote assertions always return a boolean.  It has built-in credential signature verification.  Human-readable assertion syntax (RFC 822).  Trusted actions are described by simple attribute/value pair. But it is similar in spirit to that of PolicyMaker!

KeyNote Presentation Vishwas Patil, TIFR.4/10 KeyNote: Approach  KeyNote accepts as input a set of local policy assertions, a collection of credential assertions, and a collection of attributes ( action environment ) that describes a proposed trusted action associated with a set of public-keys.  By applying assertion predicates to the environment it decides consistency of actions with local policy.

KeyNote Presentation Vishwas Patil, TIFR.5/10 KeyNote: Architecture  KeyNote is monotonic; adding an assertion to a query can never result in a query's having a lower compliance value that it would have had without the assertion.  Removing an assertion never results in increasing the compliance value returned by KeyNote for a given query.  The monotonicity property can simplify the design and analysis of complex network- based security protocols.

KeyNote Presentation Vishwas Patil, TIFR.6/10 KeyNote: Architecture Continued  KeyNote does not itself provide credential revocation services.  KeyNote compliance checker helps in verifying (signature) the credentials received from untrusted requestor.

KeyNote Presentation Vishwas Patil, TIFR.7/10

KeyNote Presentation Vishwas Patil, TIFR.8/10 Keynote: Basic Syntax structure  A KeyNote assertion contains a sequence of sections, called fields, each of which specifies one aspect of the assertion's semantics.  Fields start with an identifier at the beginning of a line and continue until the next field is encountered. :: ? ? ? ? ? ? ; [X]* means zero or more repetitions of character string X. [X]+ means one or more repetitions of X. * means zero or more repetitions of non-terminal. + means one or more repetitions of X. ? means zero or one repetitions of X.  Nonterminal grammar symbols are enclosed in angle brackets.  Quoted strings in grammar productions represent terminals.  All KeyNote assertions are encoded in ASCII.

KeyNote Presentation Vishwas Patil, TIFR.9/10 KeyNote: Semantics  Informally, the semantics of KeyNote evaluation can be thought of as involving the construction of a directed graph of KeyNote assertions rooted at a POLICY assertion that connects with at least one of the principals that requested the action.  Semantics are almost similar to PolicyMaker.  RFC 2704 gives detailed description of the semantics.

KeyNote Presentation Vishwas Patil, TIFR.10/10 KeyNote: Discussion  Advantages / Disadvantages  Evaluation: simplicity, expressiveness, generality, extensibility  Open-Source implementations available.  OpenBSD uses it in IPSEC implementation.  $ man keynote