The framework of universal composability (UC)[1] is a general-purpose model for the analysis of cryptographic protocols. It guarantees very strong security properties. Protocols remain secure even if arbitrarily composed with other instances of the same or other protocols. Security is defined in the sense of protocol emulation. Intuitively, a protocol is said to emulate another one, if no environment (observer) can distinguish the executions. Literally, the protocol may simulate the other protocol (without having access to the code). The notion of security is derived by implication. Assume a protocol
P1
P2
P1
P2
P1
An ideal functionality is a protocol in which a trusted party that can communicate over perfectly secure channels with all protocol participants computes the desired protocol outcome. We say that a cryptographic protocol that cannot make use of such a trusted party fulfils an ideal functionality, if the protocol can emulate the behaviour of the trusted party for honest users, and if the view that an adversary learns by attacking the protocol is indistinguishable from what can be computed by a simulator that only interacts with the ideal functionality.
The computation model of universal composability is that of interactive Turing machines that can activate each other by writing on each other's communication tapes. An interactive Turing machine is a form of multi-tape Turing machine and is commonly used for modelling the computational aspects of communication networks in cryptography.
The communication model in the bare UC framework is very basic. The messages of a sending party are handed to the adversary who can replace these messages with messages of his own choice that are delivered to the receiving party. This is also the Dolev-Yao threat model. (Based on the computational model all parties are modeled as interactive turing machines)
All communication models that add additional properties such as confidentiality, authenticity, synchronization, or anonymity are modeled using their own ideal functionality. An ideal communication functionality takes a message as input and produces a message as output. The (more limited) powers for the adversary
l{A}
For an optimal ideal authenticated channel, the ideal functionality
l{F}Auth
m
P
P
l{F}Auth
l{A}
m,P
In an ideal secure channel, the ideal functionality
l{F}Sec
l{F}Sec
l{F}Auth
While the technical means, and the physical assumptions behind anonymous and pseudonymous communication are very different,[2] the modeling of such channels using ideal functionalities is analogous. See also onion routing and Anonymous P2P. Similar functionalities can be defined for broadcast communication, or synchronous communication.
In an ideal anonymous channel, the ideal functionality,
l{F}Anon
m
P
P
In an ideal pseudonymous channel, the participating parties first register unique pseudonyms with the ideal functionality
l{F}Pseu
l{F}Pseu
m
nym
m,nym
These formalisations abstract from the implementation details of the concrete systems that implement such channels. In their pure form an ideal functionality may be found to be unrealizable. It may be necessary to relax the functionality by leaking more information to the adversary (degree of anonymity). On the other hand communication channels can be physical,[3] [4] e.g. a mobile device can achieve an anonymous channel by constantly changing its location before transmitting messages that do not contain identifiers.
There exists no bit commitment protocol that is universally composable in the Standard Model.The intuition is that in the ideal model, the simulator has to extract the value to commit tofrom the input of the environment. This would allow the receiver in the real protocol to extractthe committed value and break the security of the protocol. This impossibility result can beapplied to other functionalities.
To circumvent the above impossibility result, additional assumptions are required. Additional setup and trust assumptions, such as the common reference string model and the assumption of a trusted certification authority are also modeled using ideal functionalities in UC.