-
Notifications
You must be signed in to change notification settings - Fork 33
Expand file tree
/
Copy pathSm3HmacExample.java
More file actions
32 lines (25 loc) · 744 Bytes
/
Copy pathSm3HmacExample.java
File metadata and controls
32 lines (25 loc) · 744 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/*
* Copyright 2014-2023 The GmSSL Project. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the License); you may
* not use this file except in compliance with the License.
*
* http://www.apache.org/licenses/LICENSE-2.0
*/
import org.gmssl.Sm3Hmac;
import org.gmssl.Random;
public class Sm3HmacExample {
public static void main(String[] args) {
Random rng = new Random();
byte[] key = rng.randBytes(Sm3Hmac.MAC_SIZE);
Sm3Hmac sm3hmac = new Sm3Hmac(key);
sm3hmac.update("abc".getBytes(), 0, 3);
byte[] mac = sm3hmac.generateMac();
int i;
System.out.printf("sm3hmac('abc'): ");
for (i = 0; i < mac.length; i++) {
System.out.printf("%02x", mac[i]);
}
System.out.print("\n");
}
}