Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where David Nowak is active.

Publication


Featured researches published by David Nowak.


international symposium on temporal representation and reasoning | 2005

On the freeze quantifier in constraint LTL: decidability and complexity

Stéphane Demri; Ranko Lazić; David Nowak

Constraint LTL, a generalization of LTL over Presburger constraints, is often used as a formal language to specify the behavior of operational models with constraints. The freeze quantifier can be part of the language, as in some real-time logics, but this variable-binding mechanism is quite general and ubiquitous in many logical languages (first-order temporal logics, hybrid logics, logics for sequence diagrams, navigation logics, etc.). We show that Constraint LTL over the simple domain augmented with the freeze operator is undecidable which is a surprising result regarding the poor language for constraints (only equality tests). Many versions of freeze-free constraint LTL are decidable over domains with qualitative predicates and our undecidability result actually establishes /spl Sigma//sub 1//sup 1/ -completeness. On the positive side, we provide complexity results when the domain is finite (EXPSPACE-completeness) or when the formulae are flat in a sense introduced in the paper.


international conference on concurrency theory | 2000

A Unifying Approach to Data-Independence

Ranko Lazić; David Nowak

A concurrent system is data-independent with respect to a data type when the only operation it can perform on values of that type is equality testing. The system can also assign, input, nondeterministically choose, and output such values. Based on this intuitive definition, syntactic restrictions which ensure data-independence have been formulated for a variety of different formalisms. However, it is difficult to see how these are related. We present the first semantic definition of data-independence which allows equality testing, and its extension which allows constant symbols and predicate symbols. Both are special cases of a definition of when a family of labelled transition systems is parametric. This provides a unified approach to data-independence and its extensions. The paper also contains two theorems which, given a system and a specification which are data-independent, enable the verification for all instantiations of the data types (and of the constant symbols and the predicate symbols, in the case of the extension) to be reduced to the verification for a finite number of finite instantiations. We illustrate the applicability of the approach to particular formalisms by a programming language similar to UNITY.


international conference on information and communication security | 2007

A framework for game-based security proofs

David Nowak

To be accepted, a cryptographic scheme must come with a proof that it satisfies some standard security properties. However, because cryptographic schemes are based on non-trivial mathematics, proofs are error-prone and difficult to check. The main contributions of this paper are a refinement of the game-based approach to security proofs, and its implementation on top of the proof assistant Coq. The proof assistant checks that the proof is correct and deals with the mundane part of the proof. An interesting feature of our framework is that our proofs are formal enough to be mechanically checked, but still readable enough to be humanly checked. We illustrate the use of our framework by proving in a systematic way the so-called semantic security of the encryption scheme Elgamal and its hashed version.


Mathematical Structures in Computer Science | 2008

Logical relations for monadic types

Jean Goubault-Larrecq; Sławomir Lasota; David Nowak

Logical relations and their generalisations are a fundamental tool in proving properties of lambda calculi, for example, for yielding sound principles for observational equivalence. We propose a natural notion of logical relations that is able to deal with the monadic types of Moggis computational lambda calculus. The treatment is categorical, and is based on notions of subsconing, mono factorisation systems and monad morphisms. Our approach has a number of interesting applications, including cases for lambda calculi with non-determinism (where being in a logical relation means being bisimilar), dynamic name creation and probabilistic systems.


computer science logic | 2002

Logical Relations for Monadic Types

Jean Goubault-Larrecq; Sławomir Lasota; David Nowak

Logical relations andt heir generalizations are a fundamental tool in proving properties of lambda-calculi, e.g., yielding sound principles for observational equivalence. We propose a natural notion of logical relations able to deal with the monadic types of Moggis computational lambda-calculus. The treatment is categorical, and is based on notions of subsconing and distributivity laws for monads. Our approach has a number of interesting applications, including cases for lambda-calculi with non-determinism (where being in logical relation means being bisimilar), dynamic name creation, and probabilistic systems.


Science of Computer Programming | 2012

Certifying assembly with formal security proofs: The case of BBS

Reynald Affeldt; David Nowak; Kiyoshi Yamada

With todays dissemination of embedded systems manipulating sensitive data, it has become important to equip low-level programs with strong security guarantees. Unfortunately, security proofs as done by cryptographers are about algorithms, not about concrete implementations running on hardware. In this article, we show how to perform security proofs to guarantee the security of assembly language implementations of cryptographic primitives. Our approach is based on a framework in the Coq proof assistant that integrates correctness proofs of assembly programs with game-playing proofs of provable security. We demonstrate the usability of our approach using the Blum-Blum-Shub pseudorandom number generator, for which an MIPS implementation for smartcards is shown cryptographically secure.


international conference on information security and cryptology | 2009

On Formal Verification of Arithmetic-Based Cryptographic Primitives

David Nowak

Cryptographic primitives are fundamental for information security: they are used as basic components for cryptographic protocols or public-key cryptosystems. In many cases, their security proofs consist in showing that they are reducible to computationally hard problems. Those reductions can be subtle and tedious, and thus not easily checkable. On top of the proof assistant Coq, we had implemented in previous work a toolbox for writing and checking game-based security proofs of cryptographic primitives. In this paper we describe its extension with number-theoretic capabilities so that it is now possible to write and check arithmetic-based cryptographic primitives in our toolbox. We illustrate our work by machine checking the game-based proofs of unpredictability of the pseudo-random bit generator of Blum, Blum and Shub, and semantic security of the public-key cryptographic scheme of Goldwasser and Micali.


Information & Computation | 2006

Synchronous structures

David Nowak

Synchronous languages have been designed to ease the development of reactive systems, by providing a methodological framework for assisting system designers from the early stages of requirement specifications to the final stages of code generation or circuit production. Synchronous languages enable a very high-level specification and an extremely modular design of complex reactive systems. We define an order-theoretical model that gives a unified mathematical formalization of all the above aspects of the synchronous methodology (from relations to circuits). The model has been specified and validated using a theorem prover as part of the certified, reference compiler of a synchronous programming language.


provable security | 2010

A calculus for game-based security proofs

David Nowak; Yu Zhang

The game-based approach to security proofs in cryptography is a widely-used methodology for writing proofs rigorously. However a unifying language for writing games is still missing. In this paper we show how CSLR, a probabilistic lambda-calculus with a type system that guarantees that computations are probabilistic polynomial time, can be equipped with a notion of game indistinguishability. This allows us to define cryptographic constructions, effective adversaries, security notions, computational assumptions, game transformations, and game-based security proofs in the unified framework provided by CSLR. Our code for cryptographic constructions is close to implementation in the sense that we do not assume arbitrary uniform distributions but use a realistic algorithm to approximate them. We illustrate our calculus on cryptographic constructions for public-key encryption and pseudorandom bit generation.


european conference on parallel processing | 1997

An ML-Like Module System for the Synchronous Language SIGNAL

David Nowak; Jean-Pierre Talpin; T. Gautier; Paul Le Guernic

Synchronous languages, such as Signal, are best suited for the design of dependable real-time systems. Synchronous languages enable a very high-level specification and an extremely modular implementation of complex systems by structurally decomposing them into elementary synchronous processes. Separate compilation in reactive languages is however made a difficult issue by global safety requirements. To enable separate compilation of the functional components of reactive systems while preserving their global integrity, we introduce a module system for Signal. Just as data-types describe the invariants of program modules in functional languages, temporal and data-flow invariants interface Signal processes to their environment. In conventional languages, typing is the medium allowing the separate compilation of functions in a program. In Signal, the notion of conditional data-flow graph can similarly be used for separately compiling reactive processes and for assembling them in complex systems. Following this principle, we present the first design and implementation of a polymorphic type system and of a module system for the synchronous language Signal.

Collaboration


Dive into the David Nowak's collaboration.

Top Co-Authors

Avatar

Yu Zhang

Chinese Academy of Sciences

View shared research outputs
Top Co-Authors

Avatar

Reynald Affeldt

National Institute of Advanced Industrial Science and Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jean Goubault-Larrecq

École normale supérieure de Cachan

View shared research outputs
Top Co-Authors

Avatar

Mickaël Kerboeuf

Centre national de la recherche scientifique

View shared research outputs
Top Co-Authors

Avatar

Kiyoshi Yamada

National Institute of Advanced Industrial Science and Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Gilles Grimaud

Centre national de la recherche scientifique

View shared research outputs
Top Co-Authors

Avatar

Yutaka Oiwa

National Institute of Advanced Industrial Science and Technology

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge