1.7 A FIRST EXAMPLE
Common examples of application fields resorting to embedded solutions are cryptography, access control, smart cards, automotive, avionics, space, entertainment, and electronic sales outlets. In order to illustrate the main steps of the design process, a small digital signature system will now be developed (complete assembly language and VHDL code available).
The system under development (Figure 1.1) has three inputs,
- character is an 8-bit vector.
- new_character is a signal used for synchronizing the input of successive characters.
- sign is a control signal ordering the computation of a digital signature.
and two outputs,
- done is a status variable indicating that the signature computation has been completed,
- signature is a 32-bit vector, namely, the signature of the message.
The working of the system is shown in Figure 1.2: a sequence c1, c2, … , cn of any number n of characters (the message), synchronized by the signal new_character, is inputted. When the sign control signal goes high, the done flag is lowered and the signature of the message is computed. The done flag will be raised as soon as the signature s is available.
In order to sign the message two functions must be defined:
- a hash function associating a 32-bit vector (the summary) to every message, whatever its length;
- an encode function computing ...