30.01.2013 Views

Logical Analysis and Verification of Cryptographic Protocols - Loria

Logical Analysis and Verification of Cryptographic Protocols - Loria

Logical Analysis and Verification of Cryptographic Protocols - Loria

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 1<br />

Introduction<br />

In our society, the use <strong>of</strong> electronic applications such as ecommunication,<br />

e-voting, e-banking, e-commerce, etc is increasing.<br />

Among several important requirements, security figures as one crucial<br />

aspect. To guarantee security, such applications use cryptographic<br />

protocols. These are small concurrent programs executed by<br />

several distant agents through a network. Messages, or part <strong>of</strong> the<br />

messages, are produced using cryptographic functions (encryption,<br />

signature, hashing, etc). Cryptography has been used for thous<strong>and</strong>s<br />

<strong>of</strong> years to safeguard military <strong>and</strong> diplomatic communications. For<br />

example, the famous Roman emperor Julius Caesar used encryption<br />

to securely communicate with his troops.<br />

Unfortunately, the usage <strong>of</strong> cryptographic primitives in a protocol<br />

is not sufficient to ensure its security <strong>and</strong> several attacks were<br />

found on established protocols [78]. The most stating example is the<br />

bug (a so-called man-in-the-middle attack) <strong>of</strong> the Needham-Schroeder<br />

protocol found by G. Lowe [144] 17 years after the publication <strong>of</strong> the<br />

protocol. This situation leads to, <strong>and</strong> shows the importance <strong>of</strong>, the<br />

development <strong>of</strong> tools <strong>and</strong> decision procedures for the formal verification<br />

<strong>of</strong> security protocols.<br />

1.1 <strong>Cryptographic</strong> protocols<br />

1.1.1 Communication via exchanges <strong>of</strong> messages<br />

A communication protocol, or simply protocol can be described by exchanges <strong>of</strong><br />

messages between many participants. These exchanges are usually described<br />

by a scenario, sequence <strong>of</strong> rules each one specifying the sender, the receiver, <strong>and</strong><br />

the exchanged message. The scenario describes a normal (also said correct) run <strong>of</strong><br />

the protocol, that is how the execution <strong>of</strong> the protocol should proceed in the<br />

1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!