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用户指南,“密码算法(对称)"。