MD5是否保证在Android中与MessageDigest一起使用



在我直接忽略MessageDigest.getInstance("MD5")可能抛出的检查异常之前,我想知道MD5摘要算法是否保证在所有Android设备中可用。

我在一些设备上得到java.security.NoSuchAlgorithmException: MessageDigest MD5 implementation not found。以下是列表:

GT-I8190
GT-I9100
GT-P3100
GT-S7562
HTC EVO 3D X515m
HTC Sensation 4G
HTC Sensation XL配Beats Audio X315b
LGL86C
LT22i
LT25i
LT26i
LT26ii
LT29i
SAMSUNG-SGH-I727
SGH-T769
SHV-E160K
SM-T211
ST21i
ST23i
ST26i
T7

等。

这主要是印度尼西亚的统计数据。有趣的是,统计数据是由Crittercism提供的,异常也是由Crittercism抛出的(看起来它在最新版本中使用了MD5)。

Android JCE (Java Cryptography Extension)是基于bouncycastle实现的,但是被剥离了。bouncycastle提供了大量不同的messageddigest,可以在这里找到。

不能保证每个Android设备都支持MD5,但它非常普遍,并且很可能在每个设备上,因为它在bouncycastle中得到了支持。如果您想知道设备是否支持MD5,可以查看设备支持的算法。

最新更新