Universal composability

The framework of universal composability (UC) 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 formula_1 is secure per definition. If another protocol formula_2 emulates protocol formula_1 such that no environment tells apart the emulation from the execution of the protocol, then the emulated protocol formula_2 is as secure as protocol formula_1.
Ideal functionality.
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.
Computation model.
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.
Communication model.
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 formula_6 are modeled through the (limited) capacity of the adversary to interact with this ideal functionality.
Ideal authenticated channel.
For an optimal ideal authenticated channel, the ideal functionality formula_7 takes a message formula_8 from a party with identity formula_9 as input, and outputs the same message together with the identity formula_9 to the recipient and the adversary. To model the power of the adversary to delay asynchronous communication the functionality formula_7 may first send a message to the adversary formula_6 and would only deliver the message formula_13 once it receives the command to do so as a reply.
Ideal secure channel.
In an ideal secure channel, the ideal functionality formula_14 only outputs the identity of the sender to both the recipient and the adversary, while the message is only revealed to the recipient. This models the requirement that a secure channel is both authenticated and private. To model some leakage about the information that is being transferred, formula_14 may reveal information about the message to the adversary, e.g. the length of the message. Asynchronous communication is modeled through the same delay mechanism as for formula_7.
More advanced channels.
While the technical means, and the physical assumptions behind anonymous and pseudonymous communication are very different, 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.
Ideal anonymous channel.
In an ideal anonymous channel, the ideal functionality, formula_17 takes a message formula_8 from a party with identity formula_9 as input, and outputs the same message but without disclosing the identity formula_9 to the recipient and the adversary.
Ideal pseudonymous channel.
In an ideal pseudonymous channel, the participating parties first register unique pseudonyms with the ideal functionality formula_21. To do a transfer formula_21 takes a message formula_8 and the pseudonym formula_24 of the recipient as input. The ideal functionality looks up the owner of the pseudonym and transfers the message formula_25 without revealing the identity of the sender.
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, e.g. a mobile device can achieve an anonymous channel by constantly changing its location before transmitting messages that do not contain identifiers.
Impossibility results.
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 to
from the input of the environment. This would allow the receiver in the real protocol to extract
the committed value and break the security of the protocol. This impossibility result can be
applied to other functionalities.
Setup and trust assumptions.
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.