一个关于TripleDES的demo。
图1 TripleDES demo
为什么TripleDES的公钥只能是16或24字节?
1
TripleDESCryptoServiceProvider tdes
=
new
TripleDESCryptoServiceProvider();
2
3
for
(
int
i
=
0
; i
<
tdes.LegalKeySizes.Length; i
++
)
4
{
5
MessageBox.Show(
6
"密钥的最大长度:\t" + tdes.LegalKeySizes[i].MaxSize.ToString() + "\r\n" +
7
"密钥的最小长度:\t" + tdes.LegalKeySizes[i].MinSize.ToString() + "\r\n" +
8
"有效密钥之间的间隔:\t" + tdes.LegalKeySizes[i].SkipSize.ToString() + "\r\n" +
9
"[单位为位(bit)]\r\n\r\n\r\n" +
10
"∵ 192 - 64 = 128\r\n" +
11
"∴ TripleDES算法的密钥长度只可能是:24(192 ÷ 8 = 24)和16(128 ÷ 8 = 16)[单位为字节(byte)]"
12
, "关于TripleDES算法密钥的说明"
13
);
14
}
15
16
tdes
=
null
;

2

3

4



5

6

7

8

9

10

11

12

13

14

15

16

图2 关于TripleDES算法密钥的说明