美文网首页
FTP加密传输基本概念

FTP加密传输基本概念

作者: 奇奇乌布里 | 来源:发表于2020-04-21 13:11 被阅读0次

    FTP相关协议:ftp、ftps、sftp

    • ftp:文件传输协议,主要拿来传输文件数据的,大数据的
    • ftps:这个尾巴尾巴上加S,跟http/https很像,都是用ssl来加密传输文件的,所以s在最后面
      ftps需要 ftp服务器 + ssl协议
    • sftp:这个跟linux的复制命令cp/scp很像,都是用ssh来加密的,所以s在最前面
      sftp需要 sftp服务器
    类型 协议 服务器
    ftp ftp ∈ TCP/IP ftp服务器
    ftps ftp + ssl ftp服务器 + ssl协议
    sftp sftp ∈ ssh sftp服务器

    pyftpdlib只支持ftp、ftps方式

    加密协议:SSL、TLS

    类型 发展历史
    ssl 1.0 没发布
    ssl 2.0 有bug
    ssl 3.0 总算正常了
    TLS 1.0 (ssl 3.1) 1999年
    TLS 1.1 (ssl 3.2) 2006年
    TLS 1.2 (ssl 3.3) 2008年、2011年;主流浏览器都支持

    pyftpdlib对 ssl 3.0 以及 TLS 1.x 都支持

    对称加密 与 非对称加密

    • 对称加密非对称加密:关键看通信双方用的密钥是不是一样的,加密、解密的密钥都是一样的,那两边就是对称的,那就是对称加密;如果两边的密钥不一样,那就是非对称加密。

    居然还有加密、解密的密钥不一样吗?那怎么解密呢?——回答这个问题你需要看一部25分钟的数学科普,但是我建议不要看,因为通常莫法坚持看完:妈咪说MommyTalk-椭圆曲线加密与哈希函数是什么?非对称加密是什么?比特币中的数学原理

    • 安全与效率
    加密方式 安全性 效率
    对称加密 相对来说破解更快 运算速度快
    非对称加密 只要密钥够长+量子计算机还没制造出来,有生之年都等不到 时间复杂度非常大
    • 两全其美的好办法 :又要安全、又要效率

      • 服务器上做出来两个密钥:这两个密钥原本没区别,但是用法不同就产生区别了,一个是见不得人的私钥,一个是人尽可夫的公钥
      • 公钥发送给客户端随便看,私钥服务器自己留着
      • 要发送加密数据时,浏览器先生成一个密钥A,用它对数据加密,然后再用公钥密钥A加密,这样别人就不晓得私钥A是好多,也就破解不到密码了。然后把两个数据打包发给服务器
      • 服务器收到后,先用自己保留的私钥把加密的密钥A给解密出来,然后再用密钥A给数据解密
      • 那么服务器又怎么把数据加密发给客户端浏览器呢,当然是用解密出来的密钥A加密数据了,反正这个密钥A是浏览器生成的,他可定知道,所以服务器返回数据时只需要把密文发过去,密钥A就不用发送了,因为浏览器有,浏览器收到密文后解密轻轻松松无压力
      • 这样就实现了 这个我想要,那个美人儿我也喜欢 的大圆满结局了

    篡改公钥

    所谓道高一尺魔高一丈,万一公钥在发送给浏览器的路上被劫持然后偷换了呢?偷换公钥后,浏览器发送的数据服务器肯定是没法解密的,但是可以被偷换公钥的坏人解密,因为他有这个假公钥对应的私钥啊。这就会导致敏感信息——比如最常下手的就是银行账号的密码——被坏人掌握,然后造成不必要的损失。

    为了解决这个问题,就搞出来一个SSL证书的认证。就是浏览器收到公钥后先去这些收钱的认证机构确认一下,具体就是把公钥算一个hash值,然后跟收钱机构登记的hash值对比一下,一样那就没被篡改,如果不一样就说明你的电脑需要安杀毒软件或者换一个wifi了。

    相关文章

      网友评论

          本文标题:FTP加密传输基本概念

          本文链接:https://www.haomeiwen.com/subject/vaquihtx.html