后端_第七课_非对称加密

来源:互联网 发布:java long几个字节 编辑:程序博客网 时间:2024/05/16 16:12

TIPS

  • 非对称加密

    1. 能“撞”上的保险箱(非对称/公钥加密体制,Asymmetric / Public Key Encryption)
      数据加密解密和门锁很像。最开始的时候,人们只想到了那种只能用钥匙“锁”数据的锁。如果在自己的电脑上自己加密数据,当然可以用最开始这种门锁的形式啦,方便快捷,简单易用有木有。
      但是我们现在是通信时代啊,双方都想做安全的通信怎么办呢?如果也用这种方法,通信就好像互相发送密码保险箱一样… 而且双方必须都有钥匙才能进行加密和解密。也就是说,两个人都拿着保险箱的钥匙,你把数据放进去,用钥匙锁上发给我。我用同样的钥匙把保险箱打开,再把我的数据锁进保险箱,发送给你。大概就这么个样子:
      于是,人们想到了“撞门”的方法。我这有个可以“撞上”的保险箱,你那里自己也买一个这样的保险箱。通信最开始,我把保险箱打开,就这么开着把保险箱发给你。你把数据放进去以后,把保险箱“撞”上发给我。撞上以后,除了我以外,谁都打不开保险箱了。这样听起来好像很合理的样子,大概是这么个情况:
  • 公钥私钥

    首先,每个用户都有两把钥匙,一把公钥一把私钥。公钥是对外发布的,所有人都看的到所有人的公钥,私钥是自己保存,每个人都只知道自己的私钥而不知道别人的。
    用该用户的公钥加密后只能该用户的私钥才能解密。这种情况下,公钥是用来加密信息的,确保只有特定的人(用谁的公钥就是谁)才能解密该信息。
    下面我拿A银行和小明来举例子吧。假设这2者之间是用不对称的加密算法来保证信息传输的安全性(不被第三人知道信息的含义及篡改信息)。大致流程如下:首先小明发了一条信息给A银行“我要存500元”。这条信息小明会根据A银行的对外发布的公钥把这条信息加密了,加密之后,变成“XXXXXXX”发给A银行。中间被第三者截获,由于没有A银行的私钥无法解密,不能知道信息的含义,也无法按正确的方式篡改。所以拿这条加密信息是没办法的。最后被A银行接受,A银行用自己的私钥去解密这条信息,解密成功,读取内容,执行操作。然后得知消息是小明发来的,便去拿小明的公钥,把“操作成功(或失败)”这条信息用小明的公钥加密,发给小明。同理最后小明用自己的私钥解开,得知知乎发来的信息内容。其他人截获因为没有小明的私钥所以也没有用。 转自:https://www.zhihu.com/question/33645891/answer/57512229

  • WEIBO的首页.展示了微博账户发表过的评论,然后每条评论底下还有各自的追评。方法是在.HTML文件用JINJA 渲染时,先用FOR循环在WEIBO的DATA中选择该USER发过的评论,再嵌套一个FOR循环用每条微博评论的ID在COMMENT的DATA中寻找符合这个评论_ID的DATA,返回在这条评论底下的追评。

  • 字典

 m = {'wocao':33,'wori':22}for key in m:    print(key)  #打印的是字典的KEY
  • #追加文件
    with open('log.gua.txt', 'a', encoding='utf-8') as f:        print(dt, *args, **kwargs) #打印在命令行窗口        print(dt, *args, file=f, **kwargs)  #打印到文件里。
  • HTTPS原理:https://zhuanlan.zhihu.com/p/22142170 转自知乎
原创粉丝点击