zoukankan      html  css  js  c++  java
  • [SSH]基础知识——SSH、对称加密、非对称加密、公钥、私钥、中间人攻击

    SSH是一种用于安全访问远程服务器的网络协议;

    SSH(Secure Shell)安全外壳协议,是一种加密的网络传输协议,可在不安全的网络中网络服务提供安全的传输环境。它通过在网络中创建安全隧道来实现 SSH 客户端和服务器之间的连接;

    最早的时候,互联网通信都是明文通信,一旦被截获,内容就会被暴露;

    1995年,芬兰学者 Tatu Ylonen 设计了 SSH 协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为所有操作系统的标准配置;

    SSH 是一种协议, 存在多种实现,既有商业实现,也有开源实现(OSSH,OpenSSH)。本文使用的自有软件 OpenSSH, 毕竟它是目前最流行的 SSH 实现,而且是所有操作系统的默认组件;

    明文plaintext 指传送方(一般指客户端)想要接受方(一般指服务端)获得的可读信息

    密文ciphertext 指明文进过加密后所产生的信息

    秘钥key 指用来完成加密、解密、完整性验证等密码学应用的密码信息,是明文转换为密文或密文转换为明文的算法需要的参数

    私钥 指私有的秘钥

    公钥 指公开的秘钥

    对称加密

    对称加密就是加密或解密使用的是同一个秘钥。比较常用的对称加密算法有 AES,DES等;

    对称加密的优点是加解密效率高,速度快。

    对于服务端而言,它和每个客户端都要有一个秘钥,庞大的客户端数目导致秘钥数目多,而且一旦机器被登录,所有的秘钥都泄露,所以缺点是秘钥的管理和分发比较困难,不安全。

    非对称加密

    非对称加密需要一对秘钥来进行加密和解密,公开的秘钥叫公钥,私有的秘钥叫私钥。

    注意公钥加密的信息只有私钥才能解开(加密过程),私钥加密的信息只有公钥才能解开(验签过程)。

    非对称加密的优点是安全性更高,秘钥管理比较方便,每个服务器只要维护一对公私钥即可。缺点是加解密耗时长,速度慢。不过对于现在的计算机而言,这点成本可以忽略不计。

    中间人攻击

    中间人攻击的英文全称是 Man-in-the-middle attack,缩写为 MITM。在密码学和计算机安全领域中是指攻击者与通讯的两端分别创建独立的联系,并交换其所收到的数据,使通讯的两端认为他们正在通过一个私密的连接与对方直接对话,但事实上整个会话都被攻击者完全控制。在中间人攻击中,攻击者可以拦截通讯双方的通话并插入新的内容。在许多情况下这是很简单的(例如,在一个未加密的 Wi-Fi 无线接入点的接受范围内的中间人攻击者,可以将自己作为一个中间人插入这个网络)。其具体的时序图如下:

    受到中间人攻击的关键原因是客户端不知道服务端的公钥真假,服务端也不知道客户端的公钥真假。所以破解这个问题的关键是如何相互认证;

  • 相关阅读:
    Java实现 蓝桥杯VIP 算法训练 黑色星期五
    Java实现 蓝桥杯VIP 算法训练 比赛安排
    Java实现 蓝桥杯VIP 算法训练 比赛安排
    Java实现 蓝桥杯VIP 算法训练 斜率计算
    Java实现 蓝桥杯VIP 算法训练 斜率计算
    Java实现 蓝桥杯VIP 算法训练 整数平均值
    Java实现 蓝桥杯VIP 算法训练 整数平均值
    控件动态产生器(使用RegisterClasses提前进行注册)
    Delphi编写自定义控件以及接口的使用(做了一个TpgDbEdit)
    Log4delphi使用心得
  • 原文地址:https://www.cnblogs.com/LeeCookies/p/15134276.html
Copyright © 2011-2022 走看看