In feistel cipher network how does this function F(K,R) work? How can I use it in all each rounds? | Sololearn: Learn to code for FREE!
New course! Every coder should learn Generative AI!
Try a free lesson
+ 2

In feistel cipher network how does this function F(K,R) work? How can I use it in all each rounds?

Can someone help me with this function?

18th Jan 2021, 6:15 PM
Akmenli
Akmenli - avatar
4 Answers
+ 1
The XOR is a bitwise operation. The output of XOR for each pair of bits will be calculated based on these laws: 0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0 For example: 101011 XOR 111011 ----------------------- 010100 Now Suppose F as following: F(K, R) = K + R (mod 2^32) Note: mod 2^32 is necessary because we want to have 32-bit output. 1. First the 32-bit R_i and K_i goes into F, the output is calculated based on the definition of F. Let's say R'_i. 2. Then the value of (R'_i XOR L_i) must be calculated. 3. Finally the XORed value and R_i will be swaped.
20th Jan 2021, 1:49 PM
Mohammad Reza Sharifi Khorasani
Mohammad Reza Sharifi Khorasani - avatar
+ 1
The F in feistel cipher could be "any" function. From simple XOR to very complex function. More important, F function doesn't need to be one-to-one (or reversible). DES cipher is just one implementation for F.
20th Jan 2021, 1:21 PM
Mohammad Reza Sharifi Khorasani
Mohammad Reza Sharifi Khorasani - avatar
+ 1
Thank you a lot Mohammad Reza Sharif Khoras.
20th Jan 2021, 1:57 PM
Akmenli
Akmenli - avatar
0
So then could you tell me one of the simple functions to be used for instance. Right side goes to function then the output of function XORs with left side. I don't have any understanding with function and XOR. I don't know what is happening in function and also in XOR?!
20th Jan 2021, 1:28 PM
Akmenli
Akmenli - avatar