scispace - formally typeset
Search or ask a question
Author

Patrick Lincoln

Bio: Patrick Lincoln is an academic researcher from SRI International. The author has contributed to research in topics: Rewriting & Linear logic. The author has an hindex of 45, co-authored 168 publications receiving 11026 citations. Previous affiliations of Patrick Lincoln include Cisco Systems, Inc. & Stanford University.


Papers
More filters
Journal ArticleDOI
TL;DR: This column presents an intuitive overview of linear logic, some recent theoretical results, and summarizes several applications oflinear logic to computer science.
Abstract: Linear logic was introduced by Girard in 1987 [11] . Since then many results have supported Girard' s statement, \"Linear logic is a resource conscious logic,\" and related slogans . Increasingly, computer scientists have come to recognize linear logic as an expressive and powerful logic with connection s to a variety of topics in computer science . This column presents a.n intuitive overview of linear logic, some recent theoretical results, an d summarizes several applications of linear logic to computer science . Other introductions to linear logic may be found in [12, 361 .

2,304 citations

Book
20 Jul 2007
TL;DR: This chapter discusses core Maude, a Hierarchy of Data Types: From Trees to Sets to Sets, and Object-Based Programming, which specifies Parameterized Data Structures in Maude.
Abstract: I: Core Maude.- Using Maude.- Syntax and Basic Parsing.- Functional Modules.- A Hierarchy of Data Types: From Trees to Sets.- System Modules.- Playing with Maude.- Module Operations.- Predefined Data Modules.- Specifying Parameterized Data Structures in Maude.- Object-Based Programming.- Model Checking Invariants Through Search.- LTL Model Checking.- Reflection, Metalevel Computation, and Strategies.- Metaprogramming Applications.- Mobile Maude.- User Interfaces and Metalanguage Applications.- II: Full Maude.- Full Maude: Extending Core Maude.- Object-Oriented Modules.- III: Applications and Tools.- A Sampler of Application Areas.- Some Tools.- IV: Reference.- Debugging and Troubleshooting.- Complete List of Maude Commands.- Core Maude Grammar.

900 citations

Journal ArticleDOI
TL;DR: The paper outlines the principles underlying the Maude system implementation, including its semicompilation techniques, and explains and illustrates with examples the main concepts of Maude's language design including its underlying logic, functional, system and object-oriented modules, as well as parameterized modules, theories, and views.

831 citations

Book
01 Jan 2003
TL;DR: The hardware implementation of a form of execute-only memory (XOM) that allows instructions stored in memory to be executed but not otherwise manipulated is studied, indicating that it is possible to create a normal multi-tasking machine where nearly all applications can be run in XOM mode.
Abstract: Although there have been attempts to develop code transformations that yield tamper-resistant software, no reliable software-only methods are know. This paper studies the hardware implementation of a form of execute-only memory (XOM) that allows instructions stored in memory to be executed but not otherwise manipulated. To support XOM code we use a machine that supports internal compartments---a process in one compartment cannot read data from another compartment. All data that leaves the machine is encrypted, since we assume external memory is not secure. The design of this machine poses some interesting trade-offs between security, efficiency, and flexibility. We explore some of the potential security issues as one pushes the machine to become more efficient and flexible. Although security carries a performance penalty, our analysis indicates that it is possible to create a normal multi-tasking machine where nearly all applications can be run in XOM mode. While a virtual XOM machine is possible, the underlying hardware needs to support a unique private key, private memory, and traps on cache misses. For efficient operation, hardware assist to provide fast symmetric ciphers is also required.

751 citations

Proceedings ArticleDOI
28 Jun 1999
TL;DR: This paper uses a multiset rewriting formalism, based on linear logic, to state the basic assumptions of this model, and defines a class of theories that correspond to finite-length protocols, with a bounded initialization phase but allowing unboundedly many instances of each protocol role.
Abstract: Most formal approaches to security protocol analysis are based on a set of assumptions commonly referred to as the "Dolev-Yao model". In this paper, we use a multiset rewriting formalism, based on linear logic, to state the basic assumptions of this model. A characteristic of our formalism is the way that existential quantification provides a succinct way of choosing new values, such as new keys or nonces. We define a class of theories in this formalism that correspond to finite-length protocols, with a bounded initialization phase but allowing unboundedly many instances of each protocol role (e.g., client, sewer; initiator or responder). Undecidability is proved for a restricted class of these protocols, and PSPACE-completeness is claimed for a class further restricted to have no new data (nonces). Since it is a fragment of linear logic, we can use our notation directly as input to linear logic tools, allowing us to do proof search for attacks with relatively little programming effort, and to formally verify protocol transformations and optimizations.

287 citations


Cited by
More filters
Proceedings ArticleDOI
Ran Canetti1
14 Oct 2001
TL;DR: The notion of universally composable security was introduced in this paper for defining security of cryptographic protocols, which guarantees security even when a secure protocol is composed of an arbitrary set of protocols, or more generally when the protocol is used as a component of a system.
Abstract: We propose a novel paradigm for defining security of cryptographic protocols, called universally composable security. The salient property of universally composable definitions of security is that they guarantee security even when a secure protocol is composed of an arbitrary set of protocols, or more generally when the protocol is used as a component of an arbitrary system. This is an essential property for maintaining security of cryptographic protocols in complex and unpredictable environments such as the Internet. In particular, universally composable definitions guarantee security even when an unbounded number of protocol instances are executed concurrently in an adversarially controlled manner, they guarantee non-malleability with respect to arbitrary protocols, and more. We show how to formulate universally composable definitions of security for practically any cryptographic task. Furthermore, we demonstrate that practically any such definition can be realized using known techniques, as long as only a minority of the participants are corrupted. We then proceed to formulate universally composable definitions of a wide array of cryptographic tasks, including authenticated and secure communication, key-exchange, public-key encryption, signature, commitment, oblivious transfer, zero knowledge and more. We also make initial steps towards studying the realizability of the proposed definitions in various settings.

3,439 citations

Journal ArticleDOI
TL;DR: This column presents an intuitive overview of linear logic, some recent theoretical results, and summarizes several applications oflinear logic to computer science.
Abstract: Linear logic was introduced by Girard in 1987 [11] . Since then many results have supported Girard' s statement, \"Linear logic is a resource conscious logic,\" and related slogans . Increasingly, computer scientists have come to recognize linear logic as an expressive and powerful logic with connection s to a variety of topics in computer science . This column presents a.n intuitive overview of linear logic, some recent theoretical results, an d summarizes several applications of linear logic to computer science . Other introductions to linear logic may be found in [12, 361 .

2,304 citations

01 Apr 1997
TL;DR: The objective of this paper is to give a comprehensive introduction to applied cryptography with an engineer or computer scientist in mind on the knowledge needed to create practical systems which supports integrity, confidentiality, or authenticity.
Abstract: The objective of this paper is to give a comprehensive introduction to applied cryptography with an engineer or computer scientist in mind. The emphasis is on the knowledge needed to create practical systems which supports integrity, confidentiality, or authenticity. Topics covered includes an introduction to the concepts in cryptography, attacks against cryptographic systems, key use and handling, random bit generation, encryption modes, and message authentication codes. Recommendations on algorithms and further reading is given in the end of the paper. This paper should make the reader able to build, understand and evaluate system descriptions and designs based on the cryptographic components described in the paper.

2,188 citations