FIPS模式

Aspose.Words在处理文档时使用了几种加密和哈希算法,本文描述了它与FIPS标准的关系。

联邦信息处理标准(FIPS)是由美国联邦政府制定的一组公开发布的标准,旨在建立各种目的的要求,例如确保计算机安全性和互操作性。

BouncyCastle救援

Aspose.Words用于Java和Aspose.Words用于Android使用充气城堡FIPSJAR进行加密,解密和签名文档。 JAR的设计和实施是为了满足FIPS140-2,1级要求。

FIPS140-2是用于批准加密模块的美国政府计算机安全标准。 该标准规定了加密模块将满足的安全要求,并提供了高水平的安全性,旨在复盖广泛的潜在应用和环境。 有关FIPS140-2的更多详细信息,请参阅 NIST出版物.

Aspose.Wordsfor.NET使用一般的充气城堡版本,不支持FIPS。

FIPS模式激活

从版本开始18.10Aspose.Words允许在两种模式下工作:常规和FIPS。

默认情况下Aspose.Words在常规模式下工作,因此在这种情况下对算法和密钥的使用没有限制。

您可以使用以下方法将Aspose.Words从常规模式切换到FIPS模式:

Java

SecuritySettings.startFipsMode();

出于安全原因,您不能在运行时将模式更改回常规模式。

另请注意,Aspose.Words无法自动识别您的操作系统是否处于FIPS模式,因此您必须显式地将Aspose.Words切换到FIPS模式。

使用以下方法确保Java的Aspose.Words处于FIPS模式:

Java

SecuritySettings.isInFipsMode();

当FIPS模式开启时,Aspose Words将阻止您使用某些加密算法和具有非批准长度的密钥。

例如,当尝试在FIPS模式处于活动状态时打开ODT加密文档时,您可能会看到以下异常:

发生这种情况是因为Blowfish算法不在FIPS批准的算法列表中。

如果使用不适当长度的键,可能会出现类似的异常:

UnapprovedSecurityOperationException:您不能在FIPS模式下为RSA使用大小为1024的密钥。

有关批准算法列表的更多详细信息,请参阅 BouncyCastle用户指南,“密码算法(对称)"。