//单纯使用公私钥举行加解密,会存在公钥被替换伪造的风险,无法判断公钥是否属于服务提供商。
//以是,公钥需要通过CA机构的认证。
//CA机构用自己的私钥,对服务提供商的相关信息及公钥举行加密天生数字证书。
//在举行平安毗邻的时刻,服务提供商将证书一同发给用户。
//用户收到证书后,从他的CA认证机构下载证书/公钥,验证服务提供商证书的合法性。
//最后,从证书中提取服务商提供的公钥,加、解密信息举行通讯。
名词解释:
CA: Certificate Authority,证书中央/证书授权中央/电子认证服务机构,卖力治理和签发证书的,受民众信托足够权威的第三方机构,检查证书持有者身份的合法性,并签发证书,以防证书被伪造或窜改。
CA证书: CA发表的证书, 或数字证书,包罗证书拥有者的身份信息,CA机构署名,公钥等。
证书编码:
DER编码,二进制DER编码。
PEM编码,用于ASCII(BASE64)编码,文件由 "-----BEGIN"最先,"-----END"竣事。
证书文件后缀:
.pem(openssl默认,PEM编码的文件) .crt(Unix/Linux,DER或PEM编码都可以) .cer(windows,二进制) .der(二进制)
秘钥文件:
.key
服务器证书申请文件/证书署名请求文件:
.req .csr
使用openssl模拟秘钥证书的天生历程:
openssl x509工具主要用于输出证书信息, 签署证书请求文件、自签署、转换证书花样等。它就像是一个完整的小型的CA工具箱。
1.天生服务器私钥:
1.1.需要经常输入密码:
openssl genrsa -des3 -out server_private.key 2048 会有输入密码的要求
1.2.去除密码:
openssl rsa -in server_private.key -out server_private.key
1.3.无密码证书秘钥:
openssl genrsa -out server_private.key 2048
//1.4.天生公钥:
//openssl rsa -in server_private.key -pubout -out server_public.key
2.天生 服务器证书申请文件/证书署名请求文件 .req:
2.1.openssl req -new -key server_private.key -out server.req
会让输入Country Name 填 CN; Common Name 填 ip 也可以不填。
#查看server.req
2.2.openssl req -in server.req -text
3.天生CA私钥:
3.1.openssl genrsa -out ca_private.key 2048
4.天生 CA证书申请文件/证书署名请求文件 .req:
4.1.openssl req -new -key ca_private.key -out ca_request.req
#查看ca_request.req
4.2.openssl req -in ca_request.req -text
5.建立CA证书,用来给服务器的证书署名:(这个证书请求原本应由更高级的CA用它的private key对这个证书请求举行签发,由于此时模拟的CA是 root CA,没有更高级的CA了,以是要举行自签发,用 自己的private key 对 自己的证书请求 举行签发。)
5.1.openssl x509 -req -in ca_request.req -signkey ca_private.key -days 365 -out ca.pem
#查看证书
5.2.openssl x509 -in ca.pem -noout -text
使用Spring管理数据库事务
6.CA用自己的CA证书ca.pem 和 私钥ca_private.key 为 server.req 文件署名,天生服务器证书,:
6.1.openssl x509 -req -in server.req -CA ca.pem -CAkey ca_private.key -days 365 -CAcreateserial -out server.pem
#查看证书
6.2.openssl x509 -in server.pem -noout -text
#查看公钥
6.3.openssl x509 -in server.pem -noout -pubkey
7.查看服务器证书的modulus和服务器私钥的modulus,应该一样:
7.1.openssl x509 -in server.pem -noout -modulus
7.2.openssl rsa -in server_private.key -noout -modulus
8.用户接见https网站,服务器会用private key加密数据传输,同时会把证书传给用户,内里有public key信息,用于解密数据。
用户使用公钥秘密的时刻,要确认此公钥是否是服务商的,是否是受信托的。
用户从服务商证书中发现,其证书是由某CA签发的,从CA官网下载他的证书,发现它由 更高级CA签发 或者 是root证书,自签发的。
这时就可以一级一级的验证证书的合法性,最终确认服务商的证书是否被信托。
验证后就可以使用公钥解密信息,举行通讯。
openssl verify -CAfile ca.pem server.pem
9. ls 泛起以下文件:
ca.pem ca_private.key ca_request.req ca.srl server.pem server_private.key server.req
10.从证书导出公钥:
openssl x509 -in server.pem -noout -pubkey -out server_public.key
11.使用公钥加密,私钥解密:
openssl rsautl -encrypt -in test.txt -inkey server_public.key -pubin -out test_encrypt.txt
openssl rsautl -decrypt -in test_encrypt.txt -inkey server_private.key -out test_decrypt.txt
12.不想浏览器发出忠告,就导入ca.pem文件:
13.查看证书内容:
13.1.打印出证书的内容:openssl x509 -in server.pem -noout -text
13.2.打印出证书的系列号:openssl x509 -in server.pem -noout -serial
13.3.打印出证书的拥有者名字:openssl x509 -in server.pem -noout -subject
13.4.以RFC2253划定的花样打印出证书的拥有者名字:openssl x509 -in server.pem -noout -subject -nameopt RFC2253
13.5.打印出证书的MD5特征参数:openssl x509 -in server.pem -noout -fingerprint
13.6.打印出证书有效期:openssl x509 -in server.pem -noout -dates
13.7.打印出证书公钥:openssl x509 -in server.pem -noout -pubkey
14.证书秘钥要使用相同的编码花样
15.证书花样转换:
PEM转DER花样:openssl x509 -inform pem -in server.pem -outform der -out server.der
DER转PEM花样:openssl x509 -inform der -in server.der -outform pem -out server.pem0
,
Allbet Gaming声明:该文看法仅代表作者自己,与阳光在线无关。转载请注明:热点问题:一文读懂什么是CA证书诚信在线www.9cx.net用诚信赢得信任、用服务赢得口碑、用技术赢得赞赏。新的一年到来,诚信在线将一如既往地服务好每位客户。
欧博亚洲官网开户网址欢迎进入欧博亚洲官网开户网址(Allbet Game):www.aLLbetgame.us,欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。夸你就行
逍客
这个小站也挺好的
apple developer enterprise account for rent我看很好
原本以为苹果会揭晓名为M2的新款Apple Silicon处理器,没想到是公布先前有传闻将两组处理器串接而成的M1 Ultra处理器。不错,太实在了
回味无穷