aix
2024-08-05 52d6a8ddb4a1f631edffa7c339a3ba848c0e7a1e
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
package com.dji.sample.droneairport.utils;
 
import com.dji.sample.territory.utils.jym.SM2SignVO;
import com.dji.sample.territory.utils.jym.SM2SignVerUtils;
import com.dji.sample.territory.utils.jym.Util;
import lombok.SneakyThrows;
 
import java.nio.charset.StandardCharsets;
import java.util.Base64;
 
public class AuthUtil {
 
    @SneakyThrows
    public static String getToken() {
        long timestamp = System.currentTimeMillis();
        String certificateB = "044D6061FC08A19D3F32CEAA8CF6679B40500008FD741FC26DE7E50AEBF3A9115D47274437730EADEDAEF0CCC4853C5F0B35B30C6AEA83A5F6FBCA4ABEAC9E3B98"; // 示例证书信息
        String C = certificateB + timestamp;
        byte[] D = C.getBytes(StandardCharsets.UTF_8);
        SM2SignVO sm2signv0 = SM2SignVerUtils.Sign2SM2(Util.hexStringToBytes("23E57DA1E4AB865CCBC325B668762207DEF74345B782237808AE0BABDF26734D"), D);
        byte[] E = sm2signv0.getSm2_signForHard().getBytes(StandardCharsets.UTF_8);
        String F = Base64.getEncoder().encodeToString(E);
        return certificateB + "." + timestamp + "." + F;
    }
 
    public static void main(String[] args) {
        System.out.println("token:" + getToken());
    }
 
}