K8s组件概念梳理001--证书、信任链

加密

非对称加密:公钥私钥分离,仅传播公钥,安全性高,开销大;
对称加密:加密后要用密码进行解密,需要保证密码被安全传输;相对安全,开销小;
安全的web服务要先用非对称加密的方式传送对称加密的秘钥,后续用对称加密通信;

Linux或者Windows任意目录均可实验

#生成私钥
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
#生成公钥
openssl rsa -pubout -in private_key.pem -out public_key.pem
#生成数据
echo "Hello, OpenSSL!" > data.txt
#公钥加密数据
openssl pkeyutl  -encrypt -pubin -inkey public_key.pem -in data.txt -out data_encrypted.dat
#私钥解密数据
openssl pkeyutl -decrypt -inkey private_key.pem -in data_encrypted.dat -out data_decrypted.txt

对称加密测试

# 生成一个 256 位(32 字节)的随机密钥
openssl rand -base64 32 > aes_key.bin  
#生成数据并加密
echo "Hello, AES!" > data.txt
openssl enc -aes-256-cbc -in data.txt -out data_encrypted_aes.dat -pass file:aes_key.bin
#解密
openssl enc -aes-256-cbc -d -in data_encrypted_aes.dat -out data_decrypted_aes.txt -pass file:aes_key.bin

签名

签名原理,借鉴一下
在这里插入图片描述

证书

所谓web服务证书就是certificate authority(CA)用自己的私钥给的申请证书的web服务的公钥进行签名生成的;
我们的操作系统中一般默认安装有各个根CA的证书(自签名公钥),所以可以完成对这些CA发布的证书进行验签;

当我们自己需要简一个网站时,需要生成一对密钥对,并需要向CA申请给公钥签名生成证书;这样,将申请到的证书发明文发送到客户端时,客户端用本地的根CA证书对服务器证书进行验签;后续就可以用这个证书里带的公钥与服务器端进行加密通信了;

所谓CA证书就是一个通信双方都信任的自签名的公钥,当用于测试、学习、或者内部通信时,完全可以自己生成ca证书和与之配对的私钥;需要给服务器颁发证书时就用ca证书对应的私钥进行签名颁发证书;只要保护好ca证书和对应的私钥就可以保证安全通信;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值