Notations and operations in Boolean logic
In order to understand the mechanism of symmetric algorithms, it is necessary to go over some notations in Boolean logic and these operations on a binary system.
As we have already seen in Chapter 1, Deep Diving into Cryptography, the binary system works with a set of bits of {0,1}
. So, dealing with Boolean functions means performing logic calculations on a sequence of bits to generate an answer that could be either TRUE
or FALSE
.
The most frequently used functions are XOR
(exclusive OR
), OR
(disjunction), and AND
(conjunction). But there are a few other notations as well that will be explained soon.
A Boolean circuit aims to determine whether a variable, (x)
, combined with another variable, (y)
, satisfies the condition TRUE
or FALSE
. This problem is called the Boolean Satisfiability Problem (SAT) and it is of particular importance in computer science. SAT was the first problem to be shown as NP-complete. The question is as follows...