1

On page 2 of this article, there is example of FEAL-4.

At round 2, the input to F (Round Function) is 0x80800000. As F accepts only 4 bytes I divide the input by 2 so that (As I assume the result will be 8 bytes firstly) I compute 8080 and after 0000, concating two results will be 8 bytes:

0x8080|0000

x0x1x2x3|x0x1x2x3
1).8080            
y1=G1(8,8)
y2=G1(y1,8)
y0=G0(x0,y1)
y3=G1(y2,0)

Counting G0/G1

G0(a,b)=(a+bmod256<<<2)
G1(a,b)=(a+b+1mod256<<<2)

G1(8,8)=(11mod256<<<2)=44    y1
G0(8,44)=(4cmod256<<<2)=130  y0
G0(8,44)=(4cmod256<<<2)=130  y2
G1(130,0)=(131mod256<<<2)=4C4 y3

But even after this the result is not matching as on the slide (round2) it should be 0x02000000. Is it a mistake ? Thanks!

poncho
  • 154,064
  • 12
  • 239
  • 382
nmZ
  • 75
  • 5

0 Answers0