【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

admin 2024年11月20日22:31:40评论46 views字数 1957阅读6分31秒阅读模式

【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

在上一篇文章当中[1],我们主要是针对于抗量子密码算法的相关库,进行了一些测试和编译,那么在本篇文章呢,我们来看一下,实际应用的一些场景。

背景知识

做过开发的读者,应该对于NGINX以及curl不会陌生,那么我们,简单的来看一下这两个工具的使用场景。

NGINX

Nginx(发音同“engine X”)是异步框架的网页服务器,也可以用作反向代理、负载平衡器和HTTP缓存。该软件由俄罗斯程序员伊戈尔·赛索耶夫开发,并于2004年首次公开发布[2]。

用途

  • 「Web 服务器」: 可以用来代替传统的 Apache 等服务器,处理静态内容请求。
  • 「反向代理」: 换一种说法,NGINX 可以作为中间件在客户端和后端服务器之间传递请求和响应。它在负载均衡和提高应用的可用性与性能方面很有优势。
  • 「负载均衡」: 能够将请求分配到多个后端服务器上,从而提高网站的响应效率和可靠性。
  • 「缓存」: 具备强大的缓存功能,可以缓存请求结果以减轻后端服务器的负担。

相信,做过开发的读者,应该不会模式,或多或少,应该都见过或者用过。

CURL

「cURL」是一个开源项目,主要的产品是curl(命令行工具)和libcurl(C语言的API库),两者功能均是:基于网络协议,对指定URL进行网络传输。[3]

用途

  • **数据传输: **curl 可以从命令行下载或上传数据,支持多种协议。
  • **调试: **开发人员常用它来调试和验证 API 接口、测试 URL 的访问性能或行为。
  • **自动化: **可编写脚本,用于监控服务或自动化数据提交。

而对于OQS团队呢,也提供了这两个工具对于抗量子算法的支持,这里我们来看一下,实际用起来,体验如何。

环境配置

这里,我仅在Ubuntu24.04上测试过,其他环境,请自行测试,但是,因为用的docker,所以说,其他环境,问题应该不大。

这里,首先,需要安装docker,这个,读者,自行搜索一下,如何安装吧,这里就不展开再来描述了[4]。

初体验

首先呢,我们需要先搞下来,这个demos的项目[5]。

git clone https://github.com/open-quantum-safe/oqs-demos.git

NGINX

对于NGINX,具体位置在nginx目录之下,我们,只需要根据文档描述的,运行命令即可。

docker build -t oqs-nginx .

注意,这里默认的算法是dilithium3, 对于其他算法,可以具体查看构建的参数。

【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

输出,如下,表明,构建成功了,然后接下里,我们需要启动一个服务。

【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

从这里,可以看出,这里内部服务的端口是4433,因此,我们如果想要测试,需要做一个端口映射,当然,如果想换成其他端口,需要改这里,就可以了。

docker run --detach --rm --name oqs-nginx -p 4433:4433 oqs-nginx

这里,运行之后,看到这个,就表示运行成功了。

【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

然后,我们访问一下对应的地址。

【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

这里,发现这个,是正常的,也就是说明,我们这里搞成功了。然后呢,我们采用curl,来看一下,注意,这里的curl是直接安装的,并没有支持PQC的算法。

【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

在这里,我们同样的会得到握手失败的信息。

cURL

因为,默认安装的cURL是不支持,最新的PQC算法的,因此,那么我们来看一下,支持的cURL如何使用。

docker build -t oqs-curl .
【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

还是,同样的构建方案,然后呢,我们如何来使用呢,也非常的简单,我们只需要运行。

docker run -it oqs-curl curl -v -k https://localhost:4433
【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

可以发现,这里,便可以成功的拿到了具体的内容了。

总结

本篇文章呢,我们测试了NGINX以及cURL在抗量子算法下的支持性,可以发现OQS团队,做的还是比较可以的,目前是都支持的,有关于具体的细节呢,大家还是阅读下原始文档当中的资料吧,如果有机会,再来带着大家看一下OQS团队具体的代码实现吧,快乐的时光过得特别快,又到了说再见的时候了,咱们下次再见。

参考资料

  1. https://mp.weixin.qq.com/s/hr7FOq5mWtMciBoymAxKZA
  2. https://en.wikipedia.org/wiki/Nginx
  3. https://en.wikipedia.org/wiki/CURL
  4. https://docs.docker.com/get-started/get-docker/
  5. https://github.com/open-quantum-safe/oqs-demos/tree/main

原文始发于微信公众号(Coder小Q):【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月20日22:31:40
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【密码学PQC】抗量子密码算法的尝试(NGINX, cURL)http://cn-sec.com/archives/3409646.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息