[英]How to check that CNG Windows API returns algorithm implementation which is FIPS compliant
我在啟用了FIPS模式的主機上調用Windows CNG API(bcrypt.dll)。 通過功能BCryptGetFipsAlgorithmMode可以確認啟用了FIPS的事實。
如何確保API返回的算法實現符合FIPS?
看起來,僅在主機上啟用FIPS模式並不能保證API能夠防止非FIPS兼容算法實例化,因為我可以成功獲取MD5哈希算法(已知不兼容FIPS)。
此策略僅對應用程序提供建議。 因此,如果啟用該策略,則不能確保所有應用程序都符合要求。 此設置將影響操作系統中的以下區域:
然后繼續列出受政策影響的事物。 這包括SChannel和.NET,但不包括CNG API本身。 這篇博客文章確認了.NET的行為,但是可以在應用程序配置文件中用enforceFIPSPolicy
覆蓋它。
調用BCryptOpenAlgorithmProvider
,可以通過指定MS_PRIMITIVE_PROVIDER
來強制提供程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.