密码学之基础-非对称加密
所谓非对称加密算法,就是加密的密钥和解密的密钥是成对的,你只能用一个加密,用另一个解密,而单纯加密的密钥是无法解开它加密的内容的。这样就可以把密钥分为公钥和私钥,公钥发给大家,私钥仅自己保留,这样大家想发一个保密的信息您,都可以用公钥来加密,而只有拥有私钥的你可以解密读到信息。最常用的非对称加密算法是RSA。
因此可以看到,公钥一般用于加密,私钥一般用于解密。但反过来也能用,如果用私钥来加密,这又有什么用呢。你用私钥加密信息后,发给大家,那些拥有公钥的人都可以解密并看到你发的信息。但他们的公钥都只能解你私钥加密过的内容,也就是说,能用公钥解开的信息,证明是你发给大家的。相当于您署名过的信息,所以私钥加密一般叫数字签名。通常我们只是为了证明谁是发件人,而不是为了加密信息,所以没必要用私钥加密整个文档,更一般的做法是,只用私钥加密信件摘要形成数字签名,并将签名附在信件后面,再发给大家。
上面用于形成摘要信息的过程用到密码学的另一种算法,做哈希算法。它可以把任意长度的输入变成固定长度的输出,并且是不可逆和无冲突的。一般常用的harsh有MD5和SHA算法。收到您的信件后,大家会先用公钥解密信件摘要,再把您发的内容也harsh一下,和解密出来的摘要做对比,如果两者一样,说明没有改动过,确实是你发的原始信件。
CA证书相关
我们看到,有了公钥,私钥和数字签名,信息的传递和认证已经变得很安全了。但在安全领域,用非对称加密是很难破解的。但存在一种可能,就是你的公钥被人调包了,这样黑客就可以用自己的私钥加密自己的信息,然后冒充别人给您发消息,为了避免这种情况,还可以用认证中心来进一步保障。找一个双方都认可的可信的认证机构给公钥做认证,认证中心用自己的私钥给待认证的公钥和一些相关信息签名,生成数字证书。对于发件方,在每次签名的同时,附上数字证书,而收件方用CA的公钥解开数字证书,拿到发件方的公钥,验证发件方的数字签名,从而确认是发件方发送的信息。 认证中心由于是第三方提供的服务,所以是收费的,因此有些场景发件人就自己当CA认证中心,发送自签名的CA证书。
在通信领域,数字证书一般用于在某一会话中发送公钥,让对方可以在后续接收到加密信息后,还原出加密的内容。
Trustfence之安全启动
Digi Trustfence所支持的安全启动包括:镜像校验和镜像加密。任一种方式均能提供非常高的安全级别,确保设备上的固件是产品制造商提供的才能正常启动。
镜像认证校验: 和通信领域类似,产品的原始制造商在生成公钥和私钥后,私钥将得到妥善保管,而将公钥的哈希值烧入到Efuse中。固件镜像的哈希值用私钥签名后生成数字证书。整个固件包括固件镜像,公钥,证书。在启动过程中,公钥同efuse中的哈希进行比对,镜像的harsh和证书经公钥解出来的harsh进行比对,任何一种不符都不能启动系统,因此确保是原始制造商生成的固件才能正常启动。
镜像加密:如果上述方式不够的话,您甚至还可以将签名后的镜像进行加密来进一步提升安全级别,加密后的镜像不可读,也不能被其它用户所使用,更有效地保证知识产权的安全。请参考官方文档