架构安全性

62 篇文章 1 订阅
62 篇文章 1 订阅

      本章主要围绕认证、授权、凭证、保密、传输、验证几个方面来讲述的,

      “公钥加密,私钥解密,这种就是加密,用于向私钥所有者发送信息,这个信息可能被他人篡改,但是无法被他人得知。如果甲想给乙发一个安全保密的数据,那么甲乙应该各有一个私钥,甲先用乙的公钥加密这段数据,再用自己的私钥加密这段加密后的数据,最后发给乙,这样确保了内容既不会被读取,也不能被篡改。

     ·私钥加密,公钥解密,这种就是签名,用于让所有公钥所有者验证私钥所有者的身份,并且防止私钥所有者发布的内容被篡改。但是它不用于保证内容不被他人获得。”

      “这两种用途在理论上肯定是成立的,在现实中却一般不成立。单靠非对称加密算法,既做不了加密也做不了签名。因为不论是加密还是解密,非对称加密算法的计算复杂度都相当高,其性能比对称加密要差上好几个数量级(不是好几倍)。加解密性能不仅影响速度,还导致现行的非对称加密算法都没有支持分组加密模式。这句话的含义是:由于明文长度与密钥长度在安全上具有相关性,通俗地说,多长的密钥决定了它能加密多长的明文,如果明文太短就需要进行填充,太长就需要进行分组。因非对称加密本身的效率所限,难以支持分组,所以主流的非对称加密算法都只能加密不超过密钥长度的数据,这也决定了非对称加密不能直接用于大量数据的加密。”

慢哈希函数是指 执行时间可以调节的哈希函数,通常是以控制调用次数来实现的。BCrypt 算法就是一种典型的慢哈希函数,它做哈希计算时接受盐值Salt和执行

成本Cost两个参数。如果我们将BCrypt的执行时间控制在0.1s完成一次哈希计算的话,按照1s生成10个哈希值的速度,算完所有的10位大小写字母和数字的弱密码大概

需要P(62,10)/(360024365)/0.1=1237204169 年时间。

client_hash = BCrypt(mdt(password) + salt)

       慢哈希,其实就是指执行这个哈希函数非常慢,这样暴力破解需要枚举遍历所有可能结果时,就需要花上非常非常长的时间,但是也只是针对攻击者而言,穷举密码的时候会

很慢,有目的的对比其实是很快的。最好对不同用户的密码随机生成不同的salt,salt库和密码库分离。

     存不存在某种绝对安全的保密方式?答案可能出乎多数人的意料,确实是有的。信息论之父香农严格证明了一次性密码(One Time Password)的绝对安全性。但是使用一次性密码必须有个前提,就是已经提前安全地把密码或密码列表传达给对方。譬如,给你的朋友送去一本存储了完全随机密码的密码本,然后每次使用其中一条密码来进行加密通信,用完一条丢弃一条,理论上这样可以做到绝对的安全,但显然这种绝对安全对于互联网没有任何的可行性。

***********************************************************************

【如果文字看累了,可b站搜索“沙皮狗2021”,用听的方式领略知识的魅力】

   传送门 :https://space.bilibili.com/407643589

***********************************************************************
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蜗牛慢慢向上爬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值