Easy Snaking Dipping Algorithm ESDA 4x4
简介
ESDA(简易蛇摆下沉算法)是一个受AES启发的简易对称加密算法,ESDA 4x4 的加密过程在一个4x4的数字矩阵上运作。
计算过程
1.原文(X矩阵)
| 0 | 1 | 2 | 3 |
|---|---|---|---|
| x1 | x5 | x9 | x13 |
| x2 | x6 | x10 | x14 |
| x3 | x7 | x11 | x15 |
| x4 | x8 | x12 | x16 |
2.密钥(Y矩阵)
| 0 | 1 | 2 | 3 |
|---|---|---|---|
| y1 | y5 | y9 | y13 |
| y2 | y6 | y10 | y14 |
| y3 | y7 | y11 | y15 |
| y4 | y8 | y12 | y16 |
3.第一次加密密文(Z矩阵)
Z(n)=X(n)+Y(n)
| 0 | 1 | 2 | 3 |
|---|---|---|---|
| z1 | z5 | z9 | z13 |
| z2 | z6 | z10 | z14 |
| z3 | y7 | z11 | z15 |
| z4 | z8 | z12 | z16 |
4.已有矩阵变形
a.蛇摆后密钥(ASK矩阵)
| 0 | 1 | 2 | 3 |
|---|---|---|---|
| y13 | y6 | y5 | y14 |
| y1 | y7 | y9 | y15 |
| y2 | y8 | y10 | y16 |
| y3 | y4 | y11 | y12 |
b.下沉后第一次加密密文(Dz矩阵)
| 0 | 1 | 2 | 3 |
|---|---|---|---|
| z4 | z8 | z12 | z16 |
| z1 | z5 | z9 | z13 |
| z2 | z6 | z10 | z14 |
| z3 | z7 | z11 | z15 |
第二次加密密文(P矩阵)
| 0 | 1 | 2 | 3 |
|---|---|---|---|
| z4+y13 | z8+y6 | z12+y5 | z16+y14 |
| z1+y1 | z5+y7 | z9+y9 | z13+y15 |
| z2+y2 | z6+y8 | z10+y10 | z14+y16 |
| z3+y3 | z7+y4 | z11+y11 | z15+y12 |