美文网首页
note_18.1_openSSL

note_18.1_openSSL

作者: 人間失格_430b | 来源:发表于2019-03-26 15:01 被阅读0次

传输层协议:TCP,UDP,SCTP

port:进程地址,进程向内核注册使用某端口(独占)

  • 同一主机上的进程间通信
    IPC, message queue, shm, semerphor

  • 不同主上的进程间通信
    socket
    cip:port <-- --> sip:port
    cip:55673 <-- --> sip:80

    监听模式:LISTEN (ip:port)

SSL: Secure Sockets Layer

http --> ssl --> https

  • 安全的目标:
    保密性:confidentiality
    完整性:integrity
    可用性:availability

  • 攻击类型:
    威胁保密性的攻击:窃听、通信量分析;
    威胁完整性的攻击:更改、伪装、重放、否认
    威胁可用性的攻击:拒绝服务(DoS)

  • 解决方案:
    技术(加密和解密)、服务(用于抵御攻击的服务,也即是为了上述安全目标而特地设计的安全服务)

    • 加密和解密:
      传统加密方法:替代加密方法、置换加密方法
      现代加密方法:现代块加密方法

    • 服务:
      认证机制
      访问控制机制

密钥算法和协议

对称加密
公钥加密
单向加密
认证协议

Linux系统:OpenSSL(ssl), GPG(pgp)

OpenSSL由三部分组成:
libencrypto库
libssl库
openssl多用途命令行工具

加密算法和协议:

  • 对称加密:加密和解密使用同一个密钥;
    DES:Data Encryption Standard;
    3DES:Triple DES;
    AES:Advanced Encryption Standard; (128bits, 192bits, 256bits, 384bits)
    Blowfish
    Twofish
    IDEA
    RC6
    CAST5

    特性:
    1、加密、解密使用同一个密钥;
    2、将原始数据分割成为固定大小的块,逐个进行加密;

    缺陷:
    1、密钥过多;
    2、密钥分发困难;

  • 公钥加密:密钥分为公钥与私钥
    公钥:从私钥中提取产生;可公开给所有人;pubkey
    私钥:通过工具创建,使用者自己留存,必须保证其私密性;secret key;
    特点:用公钥加密的数据,只能使用与之配对儿的私钥解密;反之亦然;

    用途:
    数字签名:主要在于让接收方确认发送方的身份;
    密钥交换:发送方用对方公钥加密一个对称密钥,并发送给对方;
    数据加密

    算法:RSA, DSA, ELGamal
    DSS: Digital Signature Standard
    DSA:Digital Signature Algorithm

  • 单向加密:即提出数据指纹;只能加密,不能解密;
    特性:定长输出、雪崩效应;
    功能:完整性;
    算法:
    md5:Message Digest 5, 128bits
    sha1:Secure Hash Algorithm 1, 160bits
    sha224, sha256, sha384, sha512

  • 密钥交换: IKE(Internet Key Exchange)
    公钥加密
    DH(Deffie-Hellman)

A:p, g
B:p, g

  • A: x
    --> p^x%g ==> B
    A: (py%g)x=p^yx%g
  • B: y
    --> p^y%g ==> A
    B: (px%g)y=p^xy%g

PKI:Public Key Infrastructure

  • 公钥基础设施:
    签证机构:CA
    注册机构:RA
    证书吊销列表:CRL
    证书存取库:

  • X.509v3:定义了证书的结构以及认证协议标准
    版本号
    序列号
    签名算法ID
    发行者名称
    有效期限
    主体名称
    主体公钥
    发行者的惟一标识
    主体的惟一标识
    扩展
    发行者的签名

SSL:Secure sockets Layer

Netscape: 1994
V1.0, V2.0, V3.0

TLS: Transport Layer Security

IETF: 1999
V1.0, V1.1, V1.2, V1.3

  • 分层设计:
    1、最底层:基础算法原语的实现,aes, rsa, md5
    2、向上一层:各种算法的实现;
    3、再向上一层:组合算法实现的半成品;
    4、用各种组件拼装而成的各种成品密码学协议软件;

相关文章

  • note_18.1_openSSL

    传输层协议:TCP,UDP,SCTP port:进程地址,进程向内核注册使用某端口(独占) 同一主机上的进程间通信...

网友评论

      本文标题:note_18.1_openSSL

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