main
黄海 1 year ago
parent 806a484a30
commit 7dc81e6873

@ -0,0 +1,53 @@
package UnitTest;
import java.util.Base64;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.concurrent.TimeUnit;
public class KeyValidator {
public static boolean validateKey(String key, String sharedSecret) {
try {
String[] parts = key.split(":");
if (parts.length != 3) {
return false; // Invalid key format
}
String secret = parts[0];
String timestampStr = parts[1];
String expirationStr = parts[2];
long timestamp = Long.parseLong(timestampStr);
long expiration = Long.parseLong(expirationStr);
// Check if the key has expired
if (System.currentTimeMillis() > expiration * 1000) {
return false; // Key has expired
}
// Recreate the key for verification
String keyData = String.join(":", secret, timestampStr, expirationStr);
String generatedKey = generateKey(sharedSecret, keyData);
return key.equals(generatedKey); // Validate the key
} catch (Exception e) {
return false; // Error in processing, consider the key invalid
}
}
private static String generateKey(String secret, String keyData) throws NoSuchAlgorithmException {
MessageDigest md = MessageDigest.getInstance("SHA-256");
md.update((keyData + secret).getBytes());
byte[] digest = md.digest();
return Base64.getUrlEncoder().encodeToString(digest);
}
public static void main(String[] args) throws Exception {
String sharedSecret = "DsideaL4r5t6y7u@123"; // This should match the one used in Python
String key = "0ede740c2c81ea362dcdeee568716eb06706d96dda55be6109bb8cf2c83344c1"; // Example key to validate
boolean isValid = validateKey(key, sharedSecret);
System.out.println("Is the key valid? " + isValid);
}
}

@ -545,11 +545,6 @@ public class ZbdcController extends Controller {
// http://10.10.21.20:9000/QingLong/zbdc/getQueryXxhsb?area_id=2C0CE452-B43C-478E-8D51-F4470A36F739&school_type_id=211&dcb_id=1&year=0&keyword=&page=1&limit=10
public void getQueryXxhsb(String school_id, int type_id, String area_id, int school_type_id, String keyword, int year, int dcb_id, int page, int limit) {
if (year == 0) year = DateTime.now().year();//如果没有传入获取的年份,那么就是系统的默认当前年份
if (StrKit.isBlank(school_id) && type_id == 0) { //学校查询自己
school_id = SessionKit.get(getRequest(), getResponse(), "bureau_id");
}
if (StrKit.isBlank(school_id) && type_id == 1) {// 查询所有学校
}
Page<Record> list = zm.getQueryXxhsb(school_id, area_id, school_type_id, year, keyword, dcb_id, page, limit);
renderJson(CommonUtil.renderJsonForLayUI(list));
}

Loading…
Cancel
Save