Books

Short works

Books : reviews

A. W. Roscoe.
The Theory and Practice of Concurrency.
Prentice-Hall. 1998

The Theory and Practice of Concurrency is a comprehensive text on Communicating Sequential Processes, allowing readers to advance from complete beginners to the state of the art both in the theory of CSP and in its practical application. It assumes only a basic mathematical knowledge of sets, sequences and functions.

The first part provides a foundation course on CSP suitable for an undergraduate or introductory graduate course. The second part covers the theory of CSP, demonstrating a variety of semantic approaches. The third part shows how issues such as security, real-time, fault tolerance, protocols, and distributed databases can be modelled and verified using CSP and its automated tools.

Jim Davies, A. W. Roscoe, Jim Woodcock, eds.
Millennial Perspectives in Computer Science: proceedings of the 1999 Oxford-Microsoft symposium in honour of Sir Tony Hoare.
Prentice-Hall. 2000

Contents

• Samson Abramsky. Concurrent interaction games. 2000
• Richard S. Bird, Jeremy Gibbons, Geraint Jones. Program optimisation, naturally. 2000
• Dines Bjorner. Domain modelling. 2000
• Richard P. Brent. The binary Euclidean algorithm. 2000
• Stephen Brookes. Communicating Parallel Processes. 2000
• Stephen Cameron. Computing with shapes. 2000
• K. Mani Chandy, Michel Charpentier. Predicate transformers for composition. 2000
• Ole-Johan Dahl. A note on monitor versions. 2000
• Edsger W. Dijkstra. A formula is worth a thousand pictures. 2000
• Mike J. C. Gordon. Linking higher order logic to binary decision diagrams. 2000
• David Gries, Fred B. Schneider. Substitution of equals for equals. 2000
• He Jifeng, Xu Qiwen. Advanced features of the duration calculus. 2000
• Eric C. R. Hehner. Formalism and the variable. 2000
• Michael Jackson. The real world. 2000
• Cliff B. Jones. Compositionality, interference and concurrency. 2000
• Donald E. Knuth. Dancing links. 2000
• David May. The transputer revisited. 2000
• Bertrand Meyer. Principles of language design and evolution. 2000
• Robin Milner. Computing and communication-what's the difference?. 2000
• Jayadev Misra. Generating-functions of interconnection networks. 2000
• Carroll Morgan, Annabelle McIver, J. W. Sanders. Probably Hoare? Hoare probably!. 2000
• Roger M. Needham. Distributed computing: opportunity, challenge, or misfortune?. 2000
• C.-H. L. Ong, A. S. Murawski. A linear-time algorithm for verifying MLL proof nets. 2000
• John C. Reynolds. Intuitionistic reasoning about shared mutable data structure. 2000
• A. W. Roscoe, G. M. Reed, R. Forster. The successes and failures of behavioural models. 2000
• J. Michael Spivey, Silvija Seres. The algebra of searching. 2000
• Bernard Sufrin, Oege de Moor. Modeless structure editing. 2000
• Antti Valmari. A chaos-free failures-divergences semantics. 2000
• Niklaus Wirth. Records, modules, objects, classes, components. 2000
• Jim Woodcock, Jim Davies, Christie Bolton. Abstract data types and processes. 2000
• Zhou Chaochen, Dimitar P. Guelev, Zhan Naijun. A higher-order duration calculus. 2000

Peter Y. A. Ryan, Steve Schneider, Michael Goldsmith, Gavin Lowe, A. W. Roscoe.
The Modelling and Analysis of Security Protocols: the CSP approach.
Addison Wesley. 2001

Security protocols are one of the most critical elements in enabling the secure communication and processing of information, ensuring its confidentiality, integrity, authenticity and availability. These protocols are vulnerable to a host of subtle attacks, so designing protocols to be impervious to such attacks has proved to be extremely challenging and error prone.

This book provides a thorough and detailed understanding of one of the most effective approaches to the design and evaluation of security critical systems, describing the role of security protocols in distributed secure systems and the vulnerabilities to which they are prey.

The authors introduce security protocols, the role they play and the cryptographic mechanisms they employ, and progress to detail their role in security architectures, e-commerce, e-cash and so on. Precise characterizations of key concepts in information security, such as confidentiality, authentication and integrity are discussed and a range of tools and techniques are described which will ensure that a protocol guarantees certain security services under appropriate assumptions.