Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- source: http://moodle.kat440.vsb.cz/pluginfile.php/12111/mod_resource/content/4/PD_03_bezpecnostni_kodovani_v3.0.pdf
- B(x) = M(x) * G
- G
- M(x) (1) |1111 1111|
- [1100] (1) |0000 1111|
- (0) |0011 0011|
- (0) |0101 0101|
- poslední dvě hodnoty jsou nulové,
- proto nás poslední dva řádky nezajímají
- první dva řádky:
- |1111 1111|
- |0000 1111|
- vyxorujeme hodnoty v sloupci
- 1 xor 0 = 1
- 1 xor 0 = 1
- 1 xor 0 = 1
- 1 xor 0 = 1
- 1 xor 1 = 0
- 1 xor 1 = 0
- 1 xor 1 = 0
- 1 xor 1 = 0
- výsledek
- B(x)
- |1111 0000|
- raw:
- matice * vektor
- |a b|*|x| = |a*x+b*y|
- |c d| |y| |c*x+d*y|
- |e f| |e*x+f*y|
- vektor * matice
- |x, y|*|a b c| = |a*x+d*y, b*x+e*y, c*x+f*y|
- |d e f|
- vektor * matice
- B(x) = M(x) * G
- G
- M(x) (M1) | G11 G12 G13 G14 G15 G16 G17 G18 |
- [M1, M2, M3, M4] (M2) | G21 G22 G23 G24 G25 G26 G27 G28 |
- (M3) | G31 G32 G33 G34 G35 G36 G37 G38 |
- (M4) | G41 G42 G43 G44 G45 G46 G47 G48 |
- B(x)
- [B1, B2, B3, B4, B5, B6, B7, B8]
- M3 a M4 byly nulové, proto nás poslední dva řádky (G3x a G4x) nezajímaly => celé se vynásobily 0
- B1 = M1*G11 xor M2*G21 xor M3*G31 xor M4*G41
- B2 = M1*G12 xor M2*G22 xor M3*G32 xor M4*G42
- B3 = M1*G13 xor M2*G23 xor M3*G33 xor M4*G43
- B4 = M1*G14 xor M2*G24 xor M3*G34 xor M4*G44
- B5 = M1*G15 xor M2*G25 xor M3*G35 xor M4*G45
- B6 = M1*G16 xor M2*G26 xor M3*G36 xor M4*G46
- B7 = M1*G17 xor M2*G27 xor M3*G37 xor M4*G47
- B8 = M1*G18 xor M2*G28 xor M3*G38 xor M4*G48
Advertisement
Add Comment
Please, Sign In to add comment