Rc4
RFC6229 中 RC4 流密碼測試向量的明文是什麼?
https://www.rfc-editor.org/rfc/rfc6229有這樣的東西:
Key length: 40 bits. key: 0x0102030405 DEC 0 HEX 0: b2 39 63 05 f0 3d c0 27 cc c3 52 4a 0a 11 18 a8 DEC 16 HEX 10: 69 82 94 4f 18 fc 82 d5 89 c4 03 a4 7a 0d 09 19 DEC 240 HEX f0: 28 cb 11 32 c9 6c e2 86 42 1d ca ad b8 b6 9e ae DEC 256 HEX 100: 1c fc f6 2b 03 ed db 64 1d 77 df cf 7f 8d 8c 93 DEC 496 HEX 1f0: 42 b7 d0 cd d9 18 a8 a3 3d d5 17 81 c8 1f 40 41 DEC 512 HEX 200: 64 59 84 44 32 a7 da 92 3c fb 3e b4 98 06 61 f6 DEC 752 HEX 2f0: ec 10 32 7b de 2b ee fd 18 f9 27 76 80 45 7e 22 DEC 768 HEX 300: eb 62 63 8d 4f 0b a1 fe 9f ca 20 e0 5b f8 ff 2b DEC 1008 HEX 3f0: 45 12 90 48 e6 a0 ed 0b 56 b4 90 33 8f 07 8d a5 DEC 1024 HEX 400: 30 ab bc c7 c2 0b 01 60 9f 23 ee 2d 5f 6b b7 df DEC 1520 HEX 5f0: 32 94 f7 44 d8 f9 79 05 07 e7 0f 62 e5 bb ce ea DEC 1536 HEX 600: d8 72 9d b4 18 82 25 9b ee 4f 82 53 25 f5 a1 30 DEC 2032 HEX 7f0: 1e b1 4a 0c 13 b3 bf 47 fa 2a 0b a9 3a d4 5b 8b DEC 2048 HEX 800: cc 58 2f 8b a9 f2 65 e2 b1 be 91 12 e9 75 d2 d7 DEC 3056 HEX bf0: f2 e3 0f 9b d1 02 ec bf 75 aa ad e9 bc 35 c4 3c DEC 3072 HEX c00: ec 0e 11 c4 79 dc 32 9d c8 da 79 68 fe 96 56 81 DEC 4080 HEX ff0: 06 83 26 a2 11 84 16 d2 1f 9d 04 b2 cd 1c a0 50 DEC 4096 HEX 1000: ff 25 b5 89 95 99 67 07 e5 1f bd f0 8b 34 d8 75
所以很明顯關鍵是什麼,但明文應該是什麼?我假設每行的每個 DEC 部分都對應於偏移量?
RC4 是某種偽隨機數生成器。您輸入一個密鑰(種子),現在可以獲得一個偽隨機數流。這裡的值就是這個數字,一次總是一個字節。
與分組密碼不同,您沒有明文。您使用此密鑰流將其添加到明文中以獲取密文。“添加”可以通過 XOR 完成,因為這是非常簡單且最常見的方式。
是的,DEC 表示偏移量。前 16 個值是具有上述密鑰的 RC4 的 16 個輸出字節。接下來的 16 個值是前 16 個字節之後的輸出字節。第三行是前 240 個字節之後的輸出字節。
我們可以說明文都是零位。這將導緻密文成為密鑰流。
這個線上工具允許使用 RC4 加密/解密某些東西。將輸入和密鑰切換為十六進制數字,僅寫入零作為輸入文本,然後將密鑰複製到密鑰欄位中(開頭沒有 0x)。現在您可以準確地看到提到的數字作為函式的輸出。