我想为java和android开发创建一个通用的安全API库,并且想确认它是可能的。我打算使用BC安全提供程序,并想知道它是否适用于两者,因为我发现帖子说明Android操作系统中有BC。
这里的主要目标是为桌面应用程序开发和Android开发提供相同的库。有可能吗?
答案 0 :(得分:3)
我打算使用BC安全提供程序,并想知道它是否适用于两者,因为我发现帖子说明Android操作系统中有BC。
正确。 Android,至少通过Android 4.2,作为BC库的缩减版本。
你可以:
将自己限制在Android SDK支持的javax.crypto
部分,而不是直接使用BC,或
使用spongycastle(不同Java软件包中的BC版本,因此可以独立于Android的有限BC副本使用),或
使用某种“插件”或“驱动程序”方法,您的库将加密工作委托给特定于平台的工作,因此您可以使用不同的加密实现(例如,一个用于Android,一个用于JVM)