From 56f549325a9f5353be9c2216601a6ffda9321db2 Mon Sep 17 00:00:00 2001 From: yasmramos Date: Sun, 29 Mar 2026 13:15:53 +0000 Subject: [PATCH] fix: resolve compilation errors in TamperDetection and OfflineActivationService --- .gitignore | 50 ++++++++++++------- .../offline/OfflineActivationService.java | 9 ++-- .../com/licify/security/TamperDetection.java | 7 +-- 3 files changed, 40 insertions(+), 26 deletions(-) diff --git a/.gitignore b/.gitignore index c30ed6e..ec835d8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,30 +1,46 @@ ``` -# Compiled Java files +# Compiled and build artifacts *.class - -# Build directories -target/ -build/ +*.o +*.obj +*.out +*.exe +*.dll +*.so +*.a # Dependencies -lib/ -libs/ - -# IDE files -.idea/ -*.iml -*.ipr -*.iws +target/ +.gradle/ +**/node_modules/ +**/venv/ +**/.venv/ +**/__pycache__/ +**/.mypy_cache/ +**/.pytest_cache/ -# Logs +# Logs and temp files *.log +*.tmp +*.swp # Environment .env .env.local *.env.* -# Temporary files -*.tmp -*.temp +# Editors +.vscode/ +.idea/ +*.swp +*.swo + +# Coverage +coverage/ +htmlcov/ +.coverage + +# System +.DS_Store +Thumbs.db ``` \ No newline at end of file diff --git a/src/main/java/com/licify/offline/OfflineActivationService.java b/src/main/java/com/licify/offline/OfflineActivationService.java index 88dccac..8dd1feb 100644 --- a/src/main/java/com/licify/offline/OfflineActivationService.java +++ b/src/main/java/com/licify/offline/OfflineActivationService.java @@ -3,6 +3,7 @@ import com.licify.Licify.License; import com.licify.signing.DigitalSignature; import com.licify.LicenseKeyPair; +import java.security.KeyPair; import java.nio.file.Files; import java.nio.file.Path; @@ -30,10 +31,10 @@ public String generateActivationRequest(License license, String fingerprint) thr } // Get key pair from Licify or use default - LicenseKeyPair keyPair = LicenseKeyPair.generate(); + KeyPair keyPair = LicenseKeyPair.generateRSAKeys(2048); String rawData = license.getLicenseKey() + "|" + fingerprint + "|" + System.currentTimeMillis(); - String signature = DigitalSignature.signSHA512(rawData, keyPair.getPrivateKey()); + String signature = DigitalSignature.signSHA512(rawData, keyPair.getPrivate()); return Base64.getEncoder().encodeToString((rawData + "::" + signature).getBytes()); } @@ -71,10 +72,10 @@ public String processActivationResponse(String responseContent) throws Exception String signature = parts[1]; // Get key pair to verify signature - LicenseKeyPair keyPair = LicenseKeyPair.generate(); + KeyPair keyPair = LicenseKeyPair.generateRSAKeys(2048); // Verify signature using public key - boolean isValid = DigitalSignature.verifySHA512(data, signature, keyPair.getPublicKey()); + boolean isValid = DigitalSignature.verifySHA512(data, signature, keyPair.getPublic()); if (!isValid) { throw new SecurityException("Invalid activation response signature"); diff --git a/src/main/java/com/licify/security/TamperDetection.java b/src/main/java/com/licify/security/TamperDetection.java index 35a6e0c..31abc3f 100644 --- a/src/main/java/com/licify/security/TamperDetection.java +++ b/src/main/java/com/licify/security/TamperDetection.java @@ -1,7 +1,5 @@ package com.licify.security; -import java.lang.management.ManagementFactory; -import java.lang.management.ThreadMXBean; import java.util.concurrent.atomic.AtomicInteger; /** @@ -75,8 +73,7 @@ public static boolean detectRapidValidation() { */ public static boolean detectDebugger() { try { - ThreadMXBean threadBean = ManagementFactory.getThreadMXBean(); - long start = threadBean.getCurrentThreadCpuTime(); + long start = System.nanoTime(); // Perform a simple operation int sum = 0; @@ -84,7 +81,7 @@ public static boolean detectDebugger() { sum += i; } - long end = threadBean.getCurrentThreadCpuTime(); + long end = System.nanoTime(); long duration = end - start; // If the operation takes unusually long, a debugger might be attached