start modelization
This commit is contained in:
@@ -24,3 +24,27 @@ TEA3_LUT_A = [
|
||||
TEA3_LUT_B = [
|
||||
0x9D58, 0xA46D, 0x176C, 0x79C4, 0xC62B, 0xB2C9, 0x4D93, 0x2E93
|
||||
]
|
||||
|
||||
# ETSI TS 104 053-1 Figure 17
|
||||
T_F1 = [
|
||||
[1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0], # S1
|
||||
[1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 0], # S2
|
||||
[1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1], # S3
|
||||
[1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1], # S4
|
||||
[0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0], # S5
|
||||
[0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0], # S6
|
||||
[1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1], # S7
|
||||
[0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1], # S8
|
||||
]
|
||||
|
||||
# ETSI TS 104 053-1 Figure 18
|
||||
T_F2 = [
|
||||
[1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0], # S1
|
||||
[0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0], # S2
|
||||
[0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0], # S3
|
||||
[0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0], # S4
|
||||
[0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0], # S5
|
||||
[0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1], # S6
|
||||
[1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1], # S7
|
||||
[1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1], # S8
|
||||
]
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
from sage.all import *
|
||||
|
||||
F = GF(2)
|
||||
|
||||
names = (
|
||||
[f"x{i}{j}" for i in range(5) for j in range(8)] +
|
||||
[f"r{i}{j}" for i in range(5) for j in range(8)] +
|
||||
[f"R{i}{j}" for i in range(8) for j in range(8)]
|
||||
)
|
||||
|
||||
S = PolynomialRing(F, names)
|
||||
v = S.gens()
|
||||
|
||||
x_bits = [list(v[i*8:(i+1)*8]) for i in range(5)]
|
||||
r_bits = [list(v[40 + i*8 : 40 + (i+1)*8]) for i in range(5)]
|
||||
R_bits = [list(v[80 + i*8 : 80 + (i+1)*8]) for i in range(8)]
|
||||
|
||||
Reference in New Issue
Block a user