Neverbleed OpenSSL / LibreSS 特权分离引擎开源项目

我要开发同款
匿名用户2015年09月24日
45阅读
开发技术C/C++
所属分类程序开发、加密/解密软件包
授权协议MIT

作品详情

Neverbleed是OpenSSL引擎,它可以在一个独立的进程中运行RSA私钥操作,从而最大程度上减少类似心脏出血这种漏洞所带来的泄密风险。

此引擎可同时在OpenSSL和LibreSSL现有版本下工作,并且不怎么需要修改源代码。

示例代码:

  neverbleed_t nb;  char errbuf[NEVERBLEED_ERRBUF_SIZE];  /* initialize the OpenSSL library and the neverbleed engine */  SSL_load_error_strings();  SSL_library_init();  OpenSSL_add_all_algorithms();  if (neverbleed_init(&nb, errbuf) != 0) {    fprintf(stderr, "neverbleed_init failed: %s\n", errbuf);    ...  }  ...  /* load certificate chain and private key */  if (SSL_CTX_use_certificate_chain_file(ssl_ctx, certchain_fn) != 1) {    fprintf(stderr, "failed to load certificate chain file:%s\n", certchain_fn);    ...  }  if (neverbleed_load_private_key_file(&nb, ctx, privkey_fn, errbuf) != 1) {    fprintf(stderr, "failed to load private key from file:%s:%s\n", privkey_fn, errbuf);    ...  }
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论