密钥是密码学中的秘密。密码学的安全是依据用来创建、使用、保护、删除时的密钥决定的。在计算机加密系统中,这个密钥就是最高级的数字,当然你也可以选择字母什么的。有三个主要的方式产生一个密钥:
1.原始密钥( raw keys)是从随机数生成器中生成的比特字符串,有很多我们使用的就是,事实上,它就是原始密钥。
2.推导关键词( Derived keys)是从其它的一些东西里面产生的,比如,当我们用字符密钥加密的时候,我们并不是直接使用字符密钥,而是从你的字符密码中导出一些实际关键字( Actual key)。
3.构造关键字( Structured keys)是从一些随机数字中产生出推导关键词的一种形式。比如RSA公钥需要一个数学构造,我们用原始随机数字比特流找出最符合数学构造的数字。
是不是有点晕了?无论它们怎么生成,密钥就是加密技术安全的关键。只要他们都被保密了,你就拥有了系统所提供的安全。如果你看不住你的密钥,你也就没有任何安全性可言了。密钥的大小和下面的算法,以及你所依赖安全性的要求有很大的关系。