init web
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
package com.sunyard.chsm.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* @author liulu
|
||||
* @since 2024/10/16
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum ApiFunEnum {
|
||||
|
||||
sym_enc(ApiGroupEnum.SYM_API,"sym_enc", "对称加密"),
|
||||
sym_dec(ApiGroupEnum.ASYM_API,"sym_dec", "对称解密"),
|
||||
cal_hmac(ApiGroupEnum.SYM_API,"cal_hmac", "计算Hmac"),
|
||||
check_hmac(ApiGroupEnum.ASYM_API,"check_hmac", "验证Hmac"),
|
||||
cal_mac(ApiGroupEnum.SYM_API,"cal_mac", "计算mac"),
|
||||
check_mac(ApiGroupEnum.ASYM_API,"check_mac", "验证mac"),
|
||||
gen_random(ApiGroupEnum.SYM_API,"gen_random", "生成随机数"),
|
||||
|
||||
asym_enc(ApiGroupEnum.ASYM_API,"asym_enc", "非对称加密"),
|
||||
asym_dec(ApiGroupEnum.ASYM_API,"asym_dec", "非对称解密"),
|
||||
sign_raw(ApiGroupEnum.ASYM_API,"sign_raw", "RAW签名"),
|
||||
verify_raw(ApiGroupEnum.ASYM_API,"verify_raw", "RAW验签"),
|
||||
sign_p1(ApiGroupEnum.ASYM_API,"sign_p1", "P1签名"),
|
||||
verify_p1(ApiGroupEnum.ASYM_API,"verify_p1", "P1验签"),
|
||||
sign_P7Attach(ApiGroupEnum.ASYM_API,"sign_P7Attach", "P7 Attach签名"),
|
||||
verify_P7Attach(ApiGroupEnum.ASYM_API,"verify_P7Attach", "P7 Attach验签"),
|
||||
sign_P7Detach(ApiGroupEnum.ASYM_API,"sign_P7Detach", "P7 Detach签名"),
|
||||
verify_P7Detach(ApiGroupEnum.ASYM_API,"verify_P7Detach", "P7 Detach验签"),
|
||||
;
|
||||
|
||||
private final ApiGroupEnum group;
|
||||
private final String code;
|
||||
private final String name;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.sunyard.chsm.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author liulu
|
||||
* @since 2024/10/16
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum ApiGroupEnum {
|
||||
|
||||
SYM_API("sym_api", "对称密钥计算接口"),
|
||||
ASYM_API("asym_api", "非对称密钥计算接口"),
|
||||
;
|
||||
|
||||
private final String code;
|
||||
private final String name;
|
||||
|
||||
public static ApiGroupEnum of(String code) {
|
||||
if (code == null || code.trim().isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return Arrays.stream(ApiGroupEnum.values())
|
||||
.filter(it -> Objects.equals(it.code, code))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.sunyard.chsm.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author liulu
|
||||
* @since 2024/10/16
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum EnableStatus {
|
||||
|
||||
ENABLED("enabled", "启用"),
|
||||
DISABLED("disabled", "停用"),
|
||||
;
|
||||
|
||||
private final String code;
|
||||
private final String desc;
|
||||
|
||||
public static EnableStatus of(String code) {
|
||||
if (code == null || code.trim().isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return Arrays.stream(EnableStatus.values())
|
||||
.filter(it -> Objects.equals(it.code, code))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package com.sunyard.chsm.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author liulu
|
||||
* @since 2024/10/22
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum KeyAlg {
|
||||
|
||||
SM4(KeyCategory.SYM_KEY, "SM4", "国密SM4"),
|
||||
SM2(KeyCategory.ASYM_KEY, "SM2", "国密SM2"),
|
||||
;
|
||||
private final KeyCategory category;
|
||||
private final String code;
|
||||
private final String desc;
|
||||
|
||||
|
||||
public static KeyAlg of(String code) {
|
||||
if (code == null || code.trim().isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return Arrays.stream(KeyAlg.values())
|
||||
.filter(it -> Objects.equals(it.code, code))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.sunyard.chsm.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author liulu
|
||||
* @since 2024/10/22
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum KeyCategory {
|
||||
|
||||
// 对称密钥
|
||||
SYM_KEY("sym_key", "对称密钥"),
|
||||
// 非对称密钥
|
||||
ASYM_KEY("asym_key", "非对称密钥"),
|
||||
;
|
||||
|
||||
private final String code;
|
||||
private final String desc;
|
||||
|
||||
public static KeyCategory of(String code) {
|
||||
if (code == null || code.trim().isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return Arrays.stream(KeyCategory.values())
|
||||
.filter(it -> Objects.equals(it.code, code))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.sunyard.chsm.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author liulu
|
||||
* @since 2024/10/23
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum KeyStatus {
|
||||
|
||||
ENABLED("enabled", "启用中"),
|
||||
DISABLED("disabled", "已禁用"),
|
||||
ARCHIVED("archived", "已归档"),
|
||||
DELETED("deleted", "已销毁"),
|
||||
;
|
||||
private final String code;
|
||||
private final String desc;
|
||||
|
||||
public static KeyStatus of(String code) {
|
||||
if (code == null || code.trim().isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return Arrays.stream(KeyStatus.values())
|
||||
.filter(it -> Objects.equals(it.code, code))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
package com.sunyard.chsm.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author liulu
|
||||
* @since 2024/10/22
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum KeyUsage {
|
||||
|
||||
// 加密解密
|
||||
ENCRYPT_DECRYPT("encrypt_decrypt", "加密解密", 1),
|
||||
// 签名验签
|
||||
SIGN_VERIFY("sign_verify", "签名验签", 2),
|
||||
// 计算HMac
|
||||
HMAC("hmac", "计算HMac", 4),
|
||||
// 计算Mac
|
||||
MAC("mac", "计算Mac", 8),
|
||||
|
||||
;
|
||||
private final String code;
|
||||
private final String desc;
|
||||
private final int value;
|
||||
|
||||
|
||||
public static int getStatus(List<String> codes) {
|
||||
if (CollectionUtils.isEmpty(codes)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return codes.stream()
|
||||
.map(String::toUpperCase)
|
||||
.map(KeyUsage::valueOf)
|
||||
.mapToInt(KeyUsage::getValue)
|
||||
.reduce(0, (l, r) -> l | r);
|
||||
}
|
||||
|
||||
public static List<KeyUsage> getUsage(int status) {
|
||||
if (status == 0) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
return Arrays.stream(KeyUsage.values())
|
||||
.filter(it -> hasUsage(status, it))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
|
||||
public static boolean hasUsage(int nowUsage, KeyUsage usage) {
|
||||
return (nowUsage & usage.value) == 1;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.sunyard.chsm.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author liulu
|
||||
* @since 2024/10/17
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum ManufacturerEnum {
|
||||
|
||||
SUNYARD("sunyard", "信雅达"),
|
||||
;
|
||||
|
||||
private final String code;
|
||||
private final String name;
|
||||
|
||||
public static ManufacturerEnum of(String code) {
|
||||
if (code == null || code.trim().isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return Arrays.stream(ManufacturerEnum.values())
|
||||
.filter(it -> Objects.equals(it.code, code))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package com.sunyard.chsm.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author liulu
|
||||
* @since 2024/10/17
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum ManufacturerModelEnum {
|
||||
|
||||
enc001(ManufacturerEnum.SUNYARD, "enc001", "服务器密码机enc001"),
|
||||
;
|
||||
|
||||
private final ManufacturerEnum manufacturer;
|
||||
private final String model;
|
||||
private final String name;
|
||||
|
||||
public static ManufacturerModelEnum of(String code) {
|
||||
if (code == null || code.trim().isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return Arrays.stream(ManufacturerModelEnum.values())
|
||||
.filter(it -> Objects.equals(it.model, code))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user