利用java自身的rsa算法效率低下,测试生成公私钥对大概需要3s左右,这对于移动端来说是不可接受的,因此考虑到利用jni调用openssl生成的so,测试发现可以在300ms左右生成公私钥对,但这里面临一个问题,是可能存在调用jni失败的情况,如依赖的so文件不存在等,这里的对策可以是:
1,判断jni服务的可用性,若可用,则直接用jni接口;
2,否则,柔性改用java自带的算法,确保可以提供服务,虽然要慢很多,但总比异常不能服务好;
3,做好类似这些监控,了解多少用户存在这些问题并上报,便于彻底解决问题,形成新的方法论。