SecurityConfig.java
net.minecraft.server.jsonrpc.security.SecurityConfig
信息
- 全限定名:net.minecraft.server.jsonrpc.security.SecurityConfig
- 类型:public record
- 包:net.minecraft.server.jsonrpc.security
- 源码路径:src/main/java/net/minecraft/server/jsonrpc/security/SecurityConfig.java
- 起始行号:L5
- 职责:
TODO
字段/常量
SECRET_KEY_CHARS- 类型:
String - 修饰符:
private static final - 源码定位:
L6 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
- 无
方法
下面的方法块按源码顺序生成。
public static boolean isValid(String secretKey) @ L8
- 方法名:isValid
- 源码定位:L8
- 返回类型:boolean
- 修饰符:public static
参数:
- secretKey: String
说明:
TODO
public static String generateSecretKey() @ L12
- 方法名:generateSecretKey
- 源码定位:L12
- 返回类型:String
- 修饰符:public static
参数:
- 无
说明:
TODO
代码
public record SecurityConfig(String secretKey) {
private static final String SECRET_KEY_CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
public static boolean isValid(String secretKey) {
return secretKey.isEmpty() ? false : secretKey.matches("^[a-zA-Z0-9]{40}$");
}
public static String generateSecretKey() {
SecureRandom random = new SecureRandom();
StringBuilder key = new StringBuilder(40);
for (int i = 0; i < 40; i++) {
key.append(
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
.charAt(random.nextInt("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".length()))
);
}
return key.toString();
}
}引用的其他类
- 无