RHEL8:FIPS 对象模块 (fipscanister) 是不是存在?
Posted
技术标签:
【中文标题】RHEL8:FIPS 对象模块 (fipscanister) 是不是存在?【英文标题】:RHEL8: FIPS Object Module (fipscanister) existing?RHEL8:FIPS 对象模块 (fipscanister) 是否存在? 【发布时间】:2021-11-15 01:36:19 【问题描述】:我对 RHEL8 感到困惑。它报告:
# openssl
OpenSSL> version
OpenSSL 1.1.1g FIPS 21 Apr 2020
OpenSSL> exit
# find / -name fipscanister*.*
我的系统报告正在运行符合 FIPS 的 OpenSSL,但我没有在系统上找到 FIPS 容器...我检查了 ISO (rhel-8.4-x86_64-dvd.iso),在 BaseOS/Packages 中有:openssl-devel-1.1.1g-15.el8_3.x86_64.rpm,但也不包含 FIPS 容器...
需要做什么才能在系统上安装 fipscanister 库?
BR,雷内
【问题讨论】:
【参考方案1】:我假设您的意思是 fipscanister.o(编译 FIPS 算法的目标文件)。你不会找到它,因为它是在 libcrypto.so* 中链接的。
根据[OpenSSL]: UserGuide-2.0.pdf - User Guide for the OpenSSL FIPS Object Module v2.0(重点是我的):
请注意,除了在最不寻常的情况下,FIPS 对象模块本身 (fipscanister.o) 不直接与应用程序代码链接。 取而代之的是 FIPS 对象模块 嵌入在 OpenSSL libcrypto 库 (libcrypto.a/libcrypto.so) 中,然后应用程序代码以通常的方式引用该库。这种组合被称为“支持 FIPS”的 OpenSSL 库,并在第 2.5 节中更详细地讨论。
查看[SO]: OpenSSL FIPS_mode_set not working in Python cryptography library (@CristiFati's answer) 了解(一些有趣的)详细信息。
这是一些示例输出([SO]: How to compile python3 on RHEL with SSL? SSL cannot be imported (@CristiFati's answer) 留下的环境):
[root@cfati-5510-0:/work/q069539286]> python Python 2.7.5 (default, Nov 16 2020, 22:23:17) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import ctypes as ct >>> >>> lcr = ct.CDLL("openssl-1.1.1g/lib/libcrypto.so") # Load a library >>> lcr.FIPS_mode() # Call a function exported by it (for demo purposes only, not use (like this) in production) 0
【讨论】:
如何知道 OpenSSL libcrypto.so 中嵌入的 FIPS 对象模块的版本? 嗯,不幸的是我不知道该信息。但根据您获得支持 *FIPS 的 OpenSSL* 版本的位置,他们应该将其记录在案。很可能是 2.0。以上是关于RHEL8:FIPS 对象模块 (fipscanister) 是不是存在?的主要内容,如果未能解决你的问题,请参考以下文章