msv*_*cyc 1 security ssl openssl cryptography ssl-certificate
我正在构建一个应用程序,我计划使用OpenSSL来保护数据传输.
我打算只让客户验证服务器的证书.我对如何保护服务器的证书感到困惑.我想加密包含私钥的服务器证书,但我不想使用任何硬编码密钥进行此加密.
使用SSL的应用程序遵循哪些常见做法?
为了确保我们的术语直接,通用术语中的"SSL证书"实际上由两部分组成:
公共证书组件由您选择的CA(证书颁发机构)签名,之后可以自由分发.它不需要保护或加密,实际上它将作为SSL协商的一部分发送到连接到您的服务器的客户端.
应保护私钥组件.在大多数情况下,这只是作为加密文件存储在服务器上.高档解决方案使用专用的"防篡改"加密硬件(HSM - 硬件安全模块)来存储私钥.这些范围从基于智能卡的解决方案到具有m/n控制等的多键,网络设备等.与HSM相关的风险(更不用说成本)我不会在这里讨论.
许多应用程序只是将私钥保留在磁盘上.有几个选项可以保护密钥文件:
与往常一样,存在安全权衡.特别是,如果您在私钥文件上使用受密码保护的加密,并且遇到意外的应用程序重启(例如停电),则需要有人在重新启动时为应用程序提供密码.将密码存储在由系统初始化脚本读取的文件中(至少由两个Web服务器供应商鼓励)在真实安全性方面几乎没有增加.很难建议不加密私钥密钥文件,但如果你是小商店中唯一的管理员/技术人员,你一定要考虑如果服务器在你不可用时重新启动会发生什么,以及你的业务可能会有什么成本.
| 归档时间: |
|
| 查看次数: |
10889 次 |
| 最近记录: |