zoukankan      html  css  js  c++  java
  • Linux:Day17(下) openssl

    Linux Services and Security

      OpenSSL

      OpenSSH

      dns:bind

      web:http,httpd(apache),php,mariadb(mysql)

        lamp

        nginx(tengine),lnmp;

      file server:ftp,nfs,samba

      dhcp,pxe

      iptables

    OpenSSL:

      NIST:

        保密性:

          数据保密性

          隐私性

        完整性:

          数据完整性

          系统完整性

        可用性

      安全攻击:

        被动攻击:窃听

        主动攻击:伪装,重放,消息篡改,拒绝服务

      安全机制:

        加密、数字签名、访问控制、数据完整性、认证交换、流量填充、路由控制、公证

      安全服务:

        认证

        访问控制

        数据保密性

          连接保密性

          无连接保密性

          选择域保密性

          流量保密性

        数据完整性

        不可否认性

      密码算法和协议:

        对称加密

        公钥加密

        单向加密

        认证协议

      Linux系统:OpenSSL,gpg(pgp)

      加密算法和协议:

        对称加密:加密和解密使用同一个密钥;

          DES:Data Encryption Standard

          3DES:

          AES:Advanced (128bits,192bits,258,384,512bits)

          Blowfish

          Twofish

          IDEA

          RC6

          CASTS

          特性:

            1、加密、解密使用同一密钥;

            2、将原始数据分割成固定大小的块,逐个进行加密;

          缺陷:

            1、密钥过多;

            2、密钥分发;

        公钥加密:密钥是成对出现

          公钥:公开给所有人;pubkey

          私钥:自己留在,必须保证其私密性;secret key

          特点:用公钥加密的数据,只能使用与之配对的私钥解密;反之亦然;

          数字签名:主要在于让接收方确认发送方身份;

          密钥交换:发送方用对方的公钥加密一个对称密码,并发送给对方;

          数据加密:

          算法:RSA,DSA,ELGamal

        单向加密:只能加密,不能解密;提取数据指纹;

          特性:定长输出、雪崩效应;

          算法:

            md5:128bits

            sha1:160bits

            sha224

            sha256

            sha384

            sha512

          功能:

            完整性;

        密钥交换:IKE

          公钥加密:

          DH(deffie-Hellman)

      PKI:Public Key Infrastructure

        签证机构:CA

        注册机构:RA

        证书吊销列表:CRL

        证书存取库

        X.599:定义了证书的结构以及认证协议标准

          版本号

          序列号

          签名算法IID

          发行者名称

          有效期限

          主体公钥

          发行者唯一标识

          主体的唯一标识

          扩展

          发行者签名

      SSL:Secure Socket Layer

      TLS:Transport Layer Security

        1995:SSL 2.0,Netscape

        1996:SSL 3.0

        1999:TLS 1.0

        2006:TLS 1.1 RFC 4346

        2008:TLS 1.2

        2015:TLS 1.3

        分层设计:

          1、最低层:基础算法原语的实现,aes,rsa,md5

          2、向上一层:各种算法的实现

          3、再向上一层:组合算法实现的半成品

          4、用各种组件拼装而成的种种成品密码学协议/软件;

            tls,ssh

      OpenSSL:开源项目

        三个组件:

          openssl:多用途的命令行工具;

          libcrypto:公共加密库;

          libssl:库,实现了ssl及tls;

        openssl命令:

          openssl version:程序版本号

          标准命令、消息摘要命令、加密命令

          标准命令:

            enc,ca,req,...

          对称加密:

            工具:openssl enc,gpg

            算法:3des,aes,blowfish,twofish

            enc命令:

              加密:

              解决:

                -des3

                openssl?

          单向加密:

            工具:md5sum,sha1sum,sha224sum,sha256sum,...,openssl dgst

            dgst命令:

              openssl dgst -md5 /PATH/TO/SOMEFILE

            MAC:Message Authentication Code,单向加密的一种延伸应用,用于实现在网络通信中保证所传输的数据的完整性;

              机制:

                CBC-MAC

                HMAC:使用md5或sha1算法

          生成用户密码:

            passwd命令

              openssl passwd -l -salt SALT

          生成随机数:

            openssl rand -base64 | -hex NUM

              NUM:表示字节数;-hex时,每个字符4位,出现的字符数为NUM*2;

          公钥加密:

            加密:

              算法:RSA,ELGamal

              工具:gpg,openssl rsautl

            数字签名:

              算法:RSA,DSA,ELGamal

            密钥交换:

              算法:dh

            DSA:Digital Signatrue Algorithm

            DSS:Digital Signatrue Standard

            RSA:

            生成密钥对:

            随机数生成器:

              /dev/random:仅从熵池返回随机数;随机数用尽,阻塞;

              /dev/urandom:从熵池返回随机数;随机数用尽,会利用软件生成伪随机数;非阻塞;

  • 相关阅读:
    jQuery index()方法使用
    杂记
    Tp框架代码杂记
    tp U方法的{:U('Index/index',array('id'=>$vo[id]))}
    mb_substr=0,5,'utf-8'
    Thinkphp 超长sql语句编写
    http_build_query()生成url字符串
    html_entity_decode 将数据库里的 | 互联网金融 “野蛮生长” 的休止符| &rdquo转义成”“
    ThinkPHP 左右定界符
    python中unicode和str的组合
  • 原文地址:https://www.cnblogs.com/sq5288/p/10628821.html
Copyright © 2011-2022 走看看