最近做一个基于android的客户端,客户端与Java服务器 的通信需要实施安全方案。使用SM4进行加密,而在最开始的时候,在android平台上与服务端初始化Cipher的时候都是使用一下这种方式:
使用这种方式,服务器端可以正常加密,但是在Android端就会报错:java.security.NoSuchAlgorithmException: No provider found for SM4/ECB/NoPadding,解决办法如下:Cipher cipher = Cipher.getInstance(algorithm,new BouncyCastleProvider());