Cryptography Reference
In-Depth Information
We now make the substitutions:
0011 2 =
3 16 ,
1001 2 =
9 16 ,
1111 2 =
F 16
from Table A.1 to get:
1110011111 2 =
39 F 16 .
A.1.5 ASCII
Although computers process binary numbers, the majority of data that we
exchange does not consist of binary numbers themselves, but rather consists of
alphanumeric symbols, punctuation and other keyboard characters. Thus there
needs to be a standard convention for converting these items into binary, before
they can be processed by digital devices.
The American Standard Code for Information Interchange (ASCII) is the
convention that most computers use to conduct this conversion. ASCII specifies
an 8-bit binary number for each keyboard character. These are numbered 000 up
to 127 in decimal (hence, strictly, only 7 binary digits are needed). Each of these
can thus also be represented as two hex digits. Some sources give ASCII values
between 128 and 255 but these have not been agreed as a standard and are strictly
ASCII extensions.
As an example, the 'greater than' symbol > appears in position 62 of the full
ASCII table. To find out the ASCII binary representation we just convert 62 10 into
binary and then pad out to 8 bits using leading zeros, if necessary. In other words:
62 10 = 111110 2 = 00111110 2 = 3 E 16 .
A.2 Modular arithmetic
This section introduces modular arithmetic. Modular arithmetic is used in
many different cryptographic primitives, particularly public-key algorithms
such as RSA.
A.2.1 Motivation
Modular arithmetic is a familiar idea, dressed in mathematical terminology. This
is best illustrated by several examples from everyday use.
DAYS OF THE WEEK
When we work out what day of the week something will happen on, we often
(unconsciously) make mental calculations such as 'two days after Tuesday is
 
Search WWH ::




Custom Search