Churning (chiffer)

Churning är en krypteringsfunktion som används för att förvränga nedströms användardata för ATM: s passiva optiska nätverkssystem som definieras av ITU G.983 .1 -standarden.

Standarden säger att churning "erbjuder en låg nivå av skydd för datakonfidentialitet". Krypteringsanalys hade visat att "churningchifferet är robust svagt".

Algoritm

Churning använder 24 bitar av nyckeln, betecknade X1..X8 och P1..P16.

Tio statiska K-bitar genereras från nyckeln:

K1 = (X1×P13×P14) + (X2×P13×inte P14) + (X7×inte P13×P14) + (X8×inte P13×inte P14) K2 = (X3×P15×P16) + (X4× P15×inte P16) + (X5×inte P15×P16) + (X6×inte P15×inte P16) K3 = (K1×P9) + (K2×inte P9) K4 = (K1×inte P9) + (K2× P9) K5 = (K1×P10) + (K2×ej P10) K6 = (K1×inte P10) + (K2×P10) K7 = (K1×P11) + (K2×ej P11) K8 = (K1×ej P11) + (K2×P11) K9 = (K1×P12) + (K2×inte P12) K10 = (K1×inte P12) + (K2×P12)

Kärnningen omvandlar åtta Y -bitar till åtta Z -bitar:

(Z1..Z4) = TransformNibble(Y1..Y4, K1, P1, K3, K2, P2, K4, K1, K3, K5, K2, P4, K6) (Z5..Z8) = TransformNibble(Y5.. Y8, K1, P5, K7, K2, P6, K8, K1, P7, K9, K2, P8, K10)

Kryptanalys

Kryptanalysen hade visat att chifferet effektivt bröts på mer än ett sätt:

  • chiffern låtsas använda en 24-bitars nyckel, men den effektiva nyckellängden är 8 bitar, vilket gör en fullständig sökattack trivial
  • eftersom churning är ett substitutionschiffer , attackeras enkelt med standardattacker mot denna klass av chiffer
  • churning-funktionen är helt linjär, så den kan brytas med linjär algebra.

Trippelkärning

På grund av extrem svaghet i kärnningschifferet, använder PON-system ofta "trippelkärning"-tekniken, där de tre kärnningsoperationerna kombineras med två XOR med intilliggande data i strömmen.

Patent

PMC Sierra har patent på trippelkärning ( US-patent 7 646 870) .

Källor

  • ITU-T-rekommendation G.983.1. Optiska bredbandssystem baserade på passiva optiska nätverk (PON). 13 oktober 1998.