Java开发中对称加密、非对称加密、公钥、私钥、签名、证书

本文深入探讨了网络安全中的加密技术,包括对称加密(如DES、AES)与非对称加密(如RSA)的概念及其优缺点。对称加密依赖于密钥的保密性,而非对称加密通过公钥和私钥解决了密钥传递的安全问题。非对称加密中的RSA算法利用大整数因子分解的困难性,保证了安全性。签名功能通过私钥加密实现身份验证,而证书由CA(证书授权中心)颁发,确保公钥的合法性。HTTPS和Android的SecureBoot都是加密技术在实际应用中的例子,前者结合对称加密和非对称加密确保安全通信,后者利用安全启动保证系统完整性。
摘要由CSDN通过智能技术生成

楔子

现在网络的安全性已经变得越来越重要,各位程序员在开发过程中或多或少都会遇到公钥、私钥、加密、签名等一些相关名词。这些概念比较杂乱,容易混淆,下面就来梳理一下这部分的内容。

对称加密

在重要的信息的传递过程中,人们总是希望信息不会被偷看、不会被篡改,伪造等。为了达到这个要求人们一直在不断努力着。

电报加密使用的密码本,就是初代网络安全所使用的加密方式,用法为:发信时将内容翻译为密文发出,收到电报的一方,使用相同的密码本才能解密出正确的信息,否则看到的就是一堆乱码。

这种传统的加密方式就叫做对称加密。

而对称加密所使用的算法包括:DES、3DES、AES、DESX、Blowfish、RC4、RC5、RC6,这些算法就可以看成密钥、或者理解为上面的密码本。这些算法也可以称为: "对称加密算法"或者"传统加密算法",一方使用算法进行加密,然后另一方使用相同的算法进行解密。

我们以《福尔摩斯探案集之跳舞的小人》一案中出现的小人为例

我们看到每一个小人都代表一个英文字符,至于小人手中的旗子则是用来分隔单词的、也就是表示一个单词的边界。传递信息的时候,将信息用小人来代替,然后另一方看到小人的时候,再将出现的小人解析成信息。顺便一提,剧中的女主是黑帮首领的女儿,犯人就是使用这些小人来向女主传递信息,威胁她回去。

这些小人和英文字符之间的对应关系就相当于密钥,此时就相当于一个对称加密。因为无论是发信人还是收信人,使用的是相同的密钥、即:小人代表的含义都是一样的。

但是对称算法的安全性非常依赖于密钥,泄漏密钥就意味着任何人都可以对他们发送或接收的消息解密,所以密钥的保密性对通信安全至关重要。所以福尔摩斯在解析出这些小人代表的含义之后,用这些小人发送信息将犯人引诱了出来。因此对于这种对称加密来说,密钥的安全是极其重要的。

那么对称加密有哪些优缺点呢?

优点:计算量小、加密速度快、加密效率高

缺点:1.密钥需要传递,难以确保密钥安全性。2.缺乏签名功能,即不能核对发信人身份

非对称加密

在对称加密中,密钥(也就是使用的加密算法,如上文中发电报时的密码本、小人和英文字符的对应关系)的保密性至关重要。战争时期,电报密码本需要通过人工渠道传递,这样发报双方才能放心的使用。

但如今的网络通信中,显然不可能再使用人工渠道传递密钥,只有通过网络来传递才高效快捷。这样就有了一个矛盾:密钥是用来保证网络传输安全的,这个对于网络安全至关重要的密钥又需要网络来传递给对方。

保存密钥最安全的方式就是不告诉任何人,不进行传递,但对称加密中,解密方必须要得到对应的密钥,这就又要求密钥必须进行传递,可一

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值