Host and Application Security Lesson 3: What is Information?

Slides:



Advertisements
Similar presentations
The Turing Machine A definition of computability by Noah Richards.
Advertisements

Chapter 11: Models of Computation
Lecture 2: Basic Information Theory TSBK01 Image Coding and Data Compression Jörgen Ahlberg Div. of Sensor Technology Swedish Defence Research Agency (FOI)
Introduction to Computability Theory
CS 461 – Oct. 21 Begin chapter 3 We need a better (more encompassing) model of computation. Ex. { 1 n 2 n 3 n } couldn’t be accepted by PDA. –How could.
 Suppose for a moment that you were asked to perform a task and were given the following list of instructions to perform:
Turing Machines (At last!). Designing Universal Computational Devices Was Not The Only Contribution from Alan Turing… Enter the year 1940: The world is.
Summer 2011 Wednesday, 07/13. Formal Systems: The ELI System The ELI-system uses only three letters of the alphabet: E, L, I. It has a single axiom, EI,
Finite state machines.
1 Introduction to Computability Theory Lecture11: Variants of Turing Machines Prof. Amos Israeli.
CS5371 Theory of Computation Lecture 11: Computability Theory II (TM Variants, Church-Turing Thesis)
Based on Slides by Zeph Grunschlag from Columbia University www1.cs.columbia.edu/~zeph/3261/L14/L14.ppt Basic Computability Reading Material: J. Savage,
CS 310 – Fall 2006 Pacific University CS310 Turing Machines Section 3.1 November 6, 2006.
CS5371 Theory of Computation Lecture 10: Computability Theory I (Turing Machine)
Turing Machines CS 105: Introduction to Computer Science.
1 Introduction to Computability Theory Lecture11: The Halting Problem Prof. Amos Israeli.
Theory of Computation. Computation Computation is a general term for any type of information processing that can be represented as an algorithm precisely.
SIMS-201 Representing Information in Binary. 2  Overview Chapter 3: The search for an appropriate code Bits as building blocks of information Binary.
Design and Analysis of Algorithms
More Theory of Computing
Turing Machines A more powerful computation model than a PDA ?
1 September 14, 2006 Lecture 3 IS 2150 / TEL 2810 Introduction to Security.
The Turing machine Olena Lastivka. Definition Turing machine is a theoretical device that manipulates symbols on a strip of tape according to a table.
Theory of Computing Lecture 15 MAS 714 Hartmut Klauck.
CSCI 2670 Introduction to Theory of Computing September 28, 2005.
1 CO Games Development 2 Week 21 Turing Machines & Computability Gareth Bellaby.
1 Models of Computation o Turing Machines o Finite store + Tape o transition function: o If in state S1 and current cell is a 0 (1) then write 1 (0) and.
1 Turing Machines There are languages that are not context-free. What can we say about the most powerful automata and the limits of computation?. Alan.
Dale Roberts Department of Computer and Information Science, School of Science, IUPUI CSCI 230 Models of Computation - Turing Machines Dale Roberts, Lecturer.
Alan Turing WWII code-breaker mathematical proof of ‘Turing machines’ …in particular, “Universal Turing machine” laid foundations of computer science father.
Halting Problem Introduction to Computing Science and Programming I.
1 More About Turing Machines “Programming Tricks” Restrictions Extensions Closure Properties.
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Part 1 – Pages COMPUTABILITY THEORY.
Computer Science 101 Theory of Computing. Computer Science is... The study of algorithms, with respect to –their formal properties –their linguistic realizations.
Complexity & Computability. Limitations of computer science  Major reasons useful calculations cannot be done:  execution time of program is too long.
Fundamentals of Informatics Lecture 3 Turing Machines Bas Luttik.
Computation Motivating questions: What does “computation” mean? What are the similarities and differences between computation in computers and in natural.
Fundamentals of Informatics Lecture 4 From Turing Machines to Algorithms Bas Luttik.
Capabilities of computing systems Numeric and symbolic Computations A look at Computability theory Turing Machines.
Lecture 17 Undecidability Topics:  TM variations  Undecidability June 25, 2015 CSCE 355 Foundations of Computation.
CS 3240: Languages and Computation
Turing Machines Lecture 26 Naveen Z Quazilbash. Overview Introduction Turing Machine Notation Turing Machine Formal Notation Transition Function Instantaneous.
Fundamentals of Informatics Lecture 12 The Halting Problem Bas Luttik.
1 Section 13.1 Turing Machines A Turing machine (TM) is a simple computer that has an infinite amount of storage in the form of cells on an infinite tape.
1 Turing Machines and Equivalent Models Section 13.1 Turing Machines.
Overview of the theory of computation Episode 3 0 Turing machines The traditional concepts of computability, decidability and recursive enumerability.
1 Course Overview Why this course “formal languages and automata theory?” What do computers really do? What are the practical benefits/application of formal.
1 Turing Machines - Chap 8 Turing Machines Recursive and Recursively Enumerable Languages.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
December 3, 2009Theory of Computation Lecture 21: Turing Machines III 1 Simulation of T in L Now the MIDDLE section of Q can be generated by replacing.
1 Introduction to Turing Machines
Chapter 12 Theory of Computation Introduction to CS 1 st Semester, 2014 Sanghyun Park.
1 8.4 Extensions to the Basic TM Extended TM’s to be studied: Multitape Turing machine Nondeterministic Turing machine The above extensions make no increase.
Theory of Computation Automata Theory Dr. Ayman Srour.
Universal Turing Machine
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesTuring.
CSE202: Introduction to Formal Languages and Automata Theory
Introduction to Computing Science and Programming I
COMPUTER ARCHITECTURE AND THE CYNAIDE COATED APPLE.
Turing Machines Finite State Machines.
COSC 3340: Introduction to Theory of Computation
Turing Machines (At last!).
Chapter 9 TURING MACHINES.
Finite State Machines.
Theory of Computation Turing Machines.
Decidable Languages A language L is decidable if there is a Turing machine ML such that given any word w  0*, then: Input of ML: a  b  … w Output of.
Recall last lecture and Nondeterministic TMs
P.V.G’s College of Engineering, Nashik
CSE S. Tanimoto Turing Completeness
Theory of Computation Lecture 23: Turing Machines III
Presentation transcript:

Host and Application Security Lesson 3: What is Information?

Two questions that merit discussion  What do we mean when we talk about information?  What do we _really_ mean when we talk about something being a computer?

First, what is information?  Claude Shannon helped us out with this in his excellent paper “The Mathematical Theory of Communication”  Weaver: Level A: How accurately can the symbols of communication be transmitted? (The technical problem) Level B: How precisely do the transmitted symbols convey the desired meaning? (The semantic problem) Level C: How effectively does the received meaning affect the conduct in the desired way? (The effectiveness problem)

However…  Most of the theoretical and practical work from this deals with the Level A problem: essentially, bits flowing on a wire  This is important from a security perspective, but it’s not the whole story

More xkcd

Level A: Transmitting Symbols  Imagine we have a simple noiseless system that transmits only English words as defined in a particular dictionary  This higher-level meaning reduces the actual channel capacity

How this fits with Security  Implications are interesting; we can keep our “secret” but still leak information  Examples?  Whenever we think about application security and host security we need to think hard about what information is…

Now… what is a computer?  At the abstract level, we’re talking about Turing Machines  Note that this is anything but the universal model of computation

The Turing Machine  More precisely, a Turing machine consists of: A tape which is divided into cells, one next to the other. Each cell contains a symbol from some finite alphabet. The alphabet contains a special blank symbol (here written as 'B') and one or more other symbols. The tape is assumed to be arbitrarily extendable to the left and to the right, i.e., the Turing machine is always supplied with as much tape as it needs for its computation. Cells that have not been written to before are assumed to be filled with the blank symbol. In some models the tape has a left end marked with a special symbol; the tape extends or is indefinitely extensible to the right. A head that can read and write symbols on the tape and move the tape left and right one (and only one) cell at a time. In some models the head moves and the tape is stationary. A finite table (occasionally called an action table or transition function) of instructions (usually quintuples [5-tuples] : q i a j →q i1 a j1 d k, but sometimes 4-tuples) that, given the state(q i ) the machine is currently in and the symbol(a j ) it is reading on the tape (symbol currently under the head) tells the machine to do the following in sequence (for the 5-tuple models):  Either erase or write a symbol (instead of a j, write a j1 ), and then  Move the head (which is described by d k and can have values: 'L' for one step left or 'R' for one step right or 'N' for staying in the same place), and then  Assume the same or a new state as prescribed (go to state q i1 ). In the 4-tuple models, erase or write a symbol (aj1) and move the head left or right (dk) are specified as separate instructions. Specifically, the table tells the machine to (ia) erase or write a symbol or (ib) move the head left or right, and then (ii) assume the same or a new state as prescribed, but not both actions (ia) and (ib) in the same instruction. In some models, if there is no entry in the table for the current combination of symbol and state then the machine will halt; other models require all entries to be filled. A state register that stores the state of the Turing machine, one of finitely many. There is one special start state with which the state register is initialized.  Source: Wikipedia Also, let’s look at:

Observation  When we think about computing like this, some of the “magic” disappears  How does this help us think about security?

Now, let’s have some fun…  Define computation? Broad definition or narrow? Digital (abacus) versus analog (nomograph) Is this calculation?

Does this compute?  “For example, it now appears that primary visual cortex (area V1) does a Gaborwavelet transform (Daugman 1984, 1985a, 1985b, 1988). That is, it implements a particular mathematical operation, and that seems to be its purpose in the visual system. It is natural and informative to say that it computes a Gabor-wavelet transform. However, to apply the narrower definition of computation, we would have to understand the actual mechanism in the brain before we could say this. If we found a discrete process fitting the assumptions of the Church-Turing thesis, we could call it a computation, otherwise we would have to call it something else (a “pseudo-computation”?). But this seems to be perverse. Surely it is more informative and accurate to say that V1 is computing a Gaborwavelet transform, regardless of whether the underlying technology is “digital” or “analog.” Natural Computation and non-Turing models of Computation – Bruce MacLennan

With that out of the way…  What does this tell us about host protection?  Can we reflect this to the larger system?

Intel Privilege Levels Source: Intel® 64 and IA-32 Architectures Software Developer’s Manual

Questions?