请提供一段SM3加密的java代码示例
时间: 2023-08-28 13:05:25 浏览: 149
当然,下面是一段使用Java实现SM3加密的示例代码:
```java
import org.bouncycastle.crypto.digests.SM3Digest;
import org.bouncycastle.util.encoders.Hex;
public class SM3Util {
/**
* SM3加密
*
* @param data
* 待加密数据
* @return 加密结果
*/
public static String encrypt(byte[] data) {
SM3Digest digest = new SM3Digest();
digest.update(data, 0, data.length);
byte[] result = new byte[digest.getDigestSize()];
digest.doFinal(result, 0);
return Hex.toHexString(result);
}
public static void main(String[] args) {
String str = "hello, world!";
String encryptedStr = encrypt(str.getBytes());
System.out.println(encryptedStr);
}
}
```
在这个示例中,我们使用了Bouncy Castle库来实现SM3加密,通过调用`SM3Digest`类的`update()`方法来更新加密数据,再通过调用`doFinal()`方法获取加密结果,并将加密结果转换为16进制字符串返回。
阅读全文