澳门皇冠金沙网站-澳门皇冠844网站

热门关键词: 澳门皇冠金沙网站,澳门皇冠844网站

构建CA的过程并实现web服务基于https访问的网络架

01:网络安全涉及的问题:
①. 网络安全问题-数据机密性问题
传输的数据可能会被第三方随时都能看到

本文环境 RedHat 5.8

SSL(Secure Socket Layer,安全套接字层)是为网络通信提供安全保障和数据完整性的一种安全协议,由Netscape公司研发。SSL协议位于网络的应用层和传输层之间,它接受来自上层网络应用层协议(如http、ftp)的数据报文,并将其再一次进行封装、加密,再传递给下层网络传输层协议(如tcp、udp)。该协议提供的服务主要有:

②. 网络安全问题-数据完整性问题
传输的数据不能随意让任何人进行修改

本文主要内容:加密算法、CA介绍和配置等、web利用CA认证构建https安全传输

a、数据来源可靠性:一次网络连接中的客户端和服务器都会被验证是否是对方所期望连接的主机。确保数据将被正确地发送至客户端和服务器。

③. 网络安全问题-身份验证问题
第一次通讯时,需要确认通讯双方的身份正确

1、在互联网上数据额传输有两种:明文传输和加密传输。明文传输的协议有:ftp、http、smtp、telnet。但是为了数据的完整性和安全性,所以后来引用了加密等相关手段来保证数据的安全和完整性。

b、数据机密性:数据在发送之前被加密,保证其在网络传输过程中,不会被窃取。

02:网络安全涉及的问题:
①. 网络安全问题-数据机密性问题解决
皇冠官网手机版网址,a) 利用普通加密算法解决机密性
利用相应算法,对传输数据(明文数据)进行加密(密文数据);再利用对应算法,将加密数据解密变为真实数据
优点:实现了数据机密传输,避免了明文传输数据的危险性。
缺点:利用加密算法,将明文改密文,如果第三方获得加密算法,即可将传输密文再次变为明文

2、数据的机密性:

c、数据完整性:数据在接收之后,接收端主机会根据数据的特征码以验证数据的完整性,保证其在网络传输过程中,不会被篡改。

    b) 利用对称加密算法解决机密性(重要的一种加密方式)
        对称加密算法就好比将普通算法的规则手册放入到了保险柜里,只有获取保险柜和保险柜钥匙才能获取《算法手册》
        优点:密钥加密算法计算速度非常快;解决了普通加密算法的安全问题
        缺点:加解密过程的安全性完全依赖于密钥,并且对称加密密钥是公开的,当通讯加密对象过多时,无法解决密钥管理问题。

为了保证我们传输的数据不让第三方看到,所以我们采用加密来保证数据的机密性,让数据加密以后传输出去~然后让接收方利用相关的解密工具来对其收到的加密密文解密成明文,然后查看,这样就保证了数据的机密性。

就SSL提供的以上服务中,以数据来源可靠性最为重要。SSL采用非对称加密算法(如RSA)来保证网络中互联双方的真实性。互联双方各拥有一对密钥,公私钥。其中公钥是公开的,网络中的任何人都可以得到任何主机或用户的公钥,而唯独私钥是保密的。且公钥是从其对应私钥中提取出来的。对于公钥加密的文件,仅能通过其对应的私钥解密,由此便保证了数据的机密性。对于私钥加密的文件,仅能通过其对应的公钥解密,由此便保证了数据来源的可靠性。

②. 网络安全问题-数据完整性问题解决
    a) 利用单项加密算法(全网备份数据完整性)
        根据数据生成特征码(数据指纹信息);接收数据方获取数据信息算出特征码,验证是否与发送过来的特征码一致
        若特征码一致,表示数据完整性没被破坏;若特征码不一致,表示数据已被破坏,直接丢弃
        ****************************************************************************
        扩展说明:
        01:不同数据的特征码(数据指纹信息)是不可能一致的
            单项加密算法特征
            · 数据输入一样,特征码信息输出必然相同
            · 雪崩效应,输入的微小改变,将造成输出的巨大改变
            · 定长输出,无论源数据多大,但结果都是一样的
            · 不可逆的,无法根据数据指纹,还原出原来的数据信息。
        ****************************************************************************

常用的加密算法:

openssl便是SSL的一个开源实现。本文后续内容将简要介绍如何用openssl进行加解密、提取数据特征码、生成密钥,以及生成数字证书请求、创建私有CA和签发数字证书。

        优点:有效的解决了数据完整性问题
        缺点:没有考虑中间人×××对数据信息的影响

①、提取数据的特征码:利用数据的所有特性提取出一段特征码,然后利用这个特征码是否改变来保证数据的完整性,这种算法有以下几个特征:

    b) 利用单项加密算法(加密特征码)
        利用对称加密算法对数据加密的同时,也对特征码进行加密;
        接收方拥有和发送方一样的密钥,才可以解密加密后的数据和特征码
        而中间人加密的特征码是没有办法让接收方进行解密的,所以接收方获取不了特征码,直接丢弃数据
        ****************************************************************************
皇冠国际平台,        扩展说明:
        01:那么对称密钥如何有效的让通讯双方获取呢
            需要进行对称密钥协商过程,即通过密钥交换机制(Internet key exchange IKE)
            实现密钥交换机制的协议称为diffie-hellman协议
        ****************************************************************************           

输入一样,输出必须相同。

1、利用openssl进行加解密

openssl enc -ciphername [-in filename] [-out filename] [-e] [-d] ...

-ciphername指定加密算法,例如:-base64

-in filename指定要加密的文件,filename为该文件的文件名

-out filename指定将加密后的数据保存到filename指定的文件中

-e指定为加密过程,此为默认过程

-d指定为解密过程

示例:

# openssl enc -base64 -in plaintext.txt -out ciphertext.txt

采用base64加密算法将plaintext.txt文件中的数据加密,并保存到ciphertext.txt文件中。

# openssl enc -base64 -in ciphertext.txt -d

采用base64算法解密ciphertext.txt文件中的数据,并打印到显示屏幕。

皇冠官网手机版网址 1

③. 网络安全问题-身份验证问题解决
a)利用非对称密钥加密算法(公钥加密算法)
发送方建立私钥和公钥,将公钥发送给接收方,从而实现发送数据方的身份验证

雪崩效应:输入的微小改变,将会引起结果的巨大改变

      让你的母亲验证你的爸爸身份信息,你的母亲就称为证书颁发机构
      公钥信息在网站访问过程中,被称为证书(×××) 

定长输出:无论原始数据是多大,结果大小都相同的。

2、利用openssl提取数据特征码

openssl dgst [-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1] [-c] [file...] ...

-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1指定提取数据特征码的单向加密算法

-c指定特征码输出格式,每两位跟上一个冒号

file指定要提取数据特征码的文件

示例:

# openssl dgst -md5 -c plaintext.txt

采用md5单项加密算法提取plaintext.txt文件的数据特征码。即使是当文件中的数据遭到微小的篡改,再次计算得出的数据特征码都会和原先的特征码大相径庭。

皇冠官网手机版网址 2

网络安全问题结论:实现网络安全性,需要解决问题的顺序为

加密过程不可逆,无法根据特征码还原原来的数据。

  1. 解决身份验证问题
  2. 解决数据完整性问题
  3. 解决数据机密性问题   

②、协商生成密码:密钥交换

3、利用openssl生成密钥

openssl genrsa [-out filename] [numbits] ...

-out filename指定将生成的私钥保存到filename文件中

numbits指定私钥的长度(位数)

openssl rsa [-in filename] [-out filename] [-pubout] ...

-in filename指定私钥文件

-out filename指定将从私钥中提取出的公钥保存到filename文件中

-pubout指定从私钥中提取公钥

示例:

# (umask 077; openssl genrsa -out private.key 512)

括号中的命令将在子shell中运行。第一条命令改变子shell中的umask值,令生成的文件除属主外,其他人对他无任何权限,保证了私钥的机密性。采用RSA非对称加密算法生成512位的私钥,并将其保存到private.key文件中。

# openssl rsa -in private.key -pubout

从private.key中的私钥中提取出公钥,并打印到显示屏幕。

皇冠官网手机版网址 3

03:网络安全证书由来:
根据上述结论可知,网络安全性最首先要解决的就是身份验证问题;
而解决身份验证问题,最主要的方式就是借助私钥和公钥
而最主要的公钥信息获取就变得尤为重要;利用第三方公正者,公正公钥信息

密钥交换的算法:

目前标准的证书存储格式是x509,还有其他的证书格式,需要包含的内容为:
证书==×××
?  公钥信息,以及证书过期时间 
?  证书的合法拥有人信息 
?  证书该如何被使用(不用关注) 
?  CA颁发机构信息
?  CA签名的校验码   

AB:p-大素数,g-生成数

4、利用openssl生成数字证书请求

openssl req [-in filename] [-out filename] [-text] [-pubkey] [-new] [-newkey rss:bits] [-nodes] [-key filename] [-keyout filename] [-config filename] [-x509] [-days n] [-batch] ...

-in filename从指定文件中读取数字证书请求

-out filename将生成的数字证书请求、公钥等信息保存到指定文件中

-text以文本格式输出数字证书请求的内容

-pubkey输出公钥

-new新建数字证书请求

-newkey rsa:bits新建指定位数的RSA密钥,和-key选项互斥

-nodes配合-newkey选项,指定生成的密钥文件不加密

-key filename指定已有密钥的文件,和-newkey选项互斥

-keyout filename将生成的私钥保存到指定的文件中

-config filename指定参数文件,默认为/etc/pki/tls/openssl.cnf

-x509指定生成自签署证书

-days n配合-x509选项,指定数字证书有效期限

-batch非交互式模式

a、使用已有私钥生成证书请求

# openssl req -new -key private.key -out client.csr

使用已有RSA私钥、输入主体相关信息,生成证书请求文件,并将其保存至client.csr文件。

皇冠官网手机版网址 4

皇冠官网手机版网址 5

# openssl req -new -key private.key -out client.csr -batch -pubkey

使用已有RSA私钥生成证书请求文件,指定-batch选项,主体相关信息从配置文件中读取。并将证书请求和公钥数据保存至client.csr文件。

皇冠官网手机版网址 6

b、自动生成密钥和证书请求

# openssl req -new -newkey rsa:512 -out client.csr -keyout private.key -batch -pubkey

从配置文件中读取主体相关信息,自动生成512位RSA密钥和证书请求。将私钥保存至private.key文件中;将公钥和证书请求保存至client.csr文件中。

皇冠官网手机版网址 7

皇冠官网手机版网址 8

# openssl rsa -in private.key

输入保存密钥时设置的密码,解密private.key中的密钥。

皇冠官网手机版网址 9

# openssl req -new -newkey rsa:512 -out client.csr -keyout private.key -batch -pubkey -nodes

从配置文件中读取主体相关信息,自动生成512位RSA密钥和证书请求。将私钥保存至private.key文件中;将公钥和证书请求保存至client.csr文件中。指定-nodes选项,密钥文件不加密。

皇冠官网手机版网址 10

c、生成自签证书

# openssl req -new -x509 -newkey rsa:512 -out client2.crt -keyout private2.key -batch -pubkey -nodes

在自动生成证书请求命令中添加-x509选项即可。

皇冠官网手机版网址 11

d、查看证书请求和证书内容

# openssl req -in client.csr -text | less

查看证书请求文件的内容。

皇冠官网手机版网址 12

# openssl x509 -in client2.crt -text | less

查看自签证书文件的内容。

皇冠官网手机版网址 13

04: OpenSSL软件详细说明
获取OpenSSL软件的版本信息:
rpm -qa openssl
openssl version <- 查看openssl版本信息

A:x  、B:y

获取OpenSSL配置文件信息:
/etc/pki/tls/openssl.cnf            <- openssl配置文件,主要用于配置成私有ca时进行使用
说明:基本上openssl配置文件不需要运维过多修改配置

A:g^x%p—>B

5、利用openssl创建私有CA并签发数字证书

a、根据/etc/pki/tls/openssl.cnf文件的参数配置,在/etc/pki/CA/private/目录下生成私钥,并保存为cakey.pem。

# openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048

b、根据/etc/pki/tls/openssl.cnf文件的参数配置,在/etc/pki/CA/目录下生成自签证书,并保存为cacert.pem。

# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem

c、根据/etc/pki/tls/openssl.cnf文件的参数配置,在/etc/pki/CA/目录下生成index.txt(此文件保存已签署的证书信息),serial,并向serial文件中覆盖重定向01数字(此为签署证书的编号)。

# touch /etc/pki/CA/index.txt && touch /etc/pki/CA/serial && echo 01 > /etc/pki/CA/serial

d、签署证书请求。

# openssl ca -in client.csr -out client.crt

皇冠官网手机版网址 14

皇冠官网手机版网址 15

通过查看/etc/pki/CA/index.txt文件,可发现自建的私有CA已成功签署了一份证书。

本文由澳门皇冠金沙网站发布于网络操作,转载请注明出处:构建CA的过程并实现web服务基于https访问的网络架