【发布时间】:2014-10-05 08:52:29
【问题描述】:
我想了解一下BouncyCastle提供的Base64编码机制和Apache Commons Codec提供的等效机制是否完全兼容,或者是否存在兼容性问题。
我正在开发一个 Java 库,它在一些输入和输出上使用 Base64 编码(它必须对一些输入进行编码,并且对它的一些输出进行编码)。该库使用 Bouncy Castle 的 Base64 编码器。
将使用此库的应用程序之一将使用来自 Apache commons 的 Base64 编码器来执行编码和解码。
我相信 Apache 的实现遵循 RTC 标准,但是 Bouncy Castle 的实现并不遵循这个标准,尽管它在很大程度上遵循相同的标准。这些组件之间会不会存在兼容性问题?
仅在需要相互通信的组件中使用相同的 Base64 编码器是否明智?
【问题讨论】:
-
您的测试不会缓解这些担忧吗?
-
您好,感谢您的评论。测试会很有用,但我认为我们不能测试所有可能的输入和输出。我们可以编写很多测试,并获得高度确信这些 base64 编码器是兼容的,但我认为我们仍然会有一些顾虑。
-
this 是您在 BouncyCastle 中使用的类吗?
-
是的,我们正在使用 org.bouncycastle.util.encoders.Base64
标签: java base64 bouncycastle apache-commons-codec