jdk1.4如何使用RSA算法

  不对称加密听起来是不是很吸引人?是不是想用流行的RSA算法加密?先看看你的jdk版本吧,如果是jdk1.4,很可惜,你的jdk并不支持这种算法,需要使用Bouncy Castle Crypto Package第三方包,这个包可以在http://www.bouncycastle.org下载,我下载的是bcprov-jdk14-137.jar。

  下载后,还需要安装,步骤如下:
  1.将java目录下的jre/lib/security子目录的java.security文件中增加security.provider.<n>=org.bouncycastle.jce.provider.BouncyCastleProvider,其中<n>根据前面几个提供者的序号递增,例如在j2sdk1.4.2_13中为6。
  2.将bcprov-jdk14-137.jar复制到java目录下jre/lib/ext目录。(如果不行,就复制到java目录下lib/ext目录,如果再不行,就将其再复制到ext的上级目录下。我是放在jre/lib/ext目录下就可以用了。)

  另外需要提醒的是,由于效率较低,这种算法可加密的明文长度很短,具体长度取取于你所生成的密钥长度。如果你的密钥长度为1024Bit(相当于1024/8=128Byte),那么可加密的明文长度就是128-11=117Byte,即以字节为单位,用密钥长度减去11所得的字节数,如果这个长度不够,你就要增加密钥长度,但那意味着更低的效率,而且密钥长度限制在512~2048之间。

  个人经验,仅供参考:)

点赞