从代码:system/webservd/webservd/server.cc@brillo-m8-dev上看webservd所需要的证书是这么来的:
- 读取/data/misc/webservd/certificate文件,得到证书
- 读取/data/misc/webservd/key文件,得到private key
如果读取证书或者private key有问题,那么就会去重新创建证书和private key:
- 创建X509证书:有效期365.2425天, CN为”Brillo device”
- 创建RSA key pair
- 创建EVP key并transfer ownership of RSA key pair to EVP key
- 使用EVP key给证书签名
- 将创建好的证书和key保存到文件(key会使用之前创建的证书作加密再保存)
通过openssl命令可以获取网站的证书:
$ openssl s_client -showcerts -connect localhost:8001