-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Кароче держите легкую защиту для пасты, не обсирайте меня писал минут 30
HWIDChecker:
package auth;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class HWIDChecker {
private static final char[] hexArray = "0123456789ABCDEF".toCharArray();
public static String getHWID() {
try {
MessageDigest hash = MessageDigest.getInstance("MD5");
String data = System.getProperty("os.name") +
System.getProperty("os.arch") +
System.getProperty("os.version") +
Runtime.getRuntime().availableProcessors() +
System.getenv("PROCESSOR_IDENTIFIER") +
System.getenv("PROCESSOR_ARCHITECTURE") +
System.getenv("PROCESSOR_ARCHITEW6432") +
System.getenv("NUMBER_OF_PROCESSORS");
byte[] hashedData = hash.digest(data.getBytes());
return bytesToHex(hashedData);
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException("Алгоритм хэширования не найден.", e);
}
}
private static String bytesToHex(byte[] bytes) {
char[] hexChars = new char[bytes.length * 2];
for (int j = 0; j < bytes.length; j++) {
int v = bytes[j] & 0xFF;
hexChars[j * 2] = hexArray[v >>> 4];
hexChars[j * 2 + 1] = hexArray[v & 0x0F];
}
return new String(hexChars);
}
public static boolean checkHWID(String hwid) {
try {
URL url = new URL("Ссылка на базу хвида.");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String inputLine;
StringBuilder content = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
content.append(inputLine).append("\n");
}
in.close();
String[] hwidList = content.toString().replace("[", "").replace("]", "").split(",");
for (String allowedHwid : hwidList) {
if (allowedHwid.trim().equals(hwid)) {
return true;
}
}
return false;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
public static void copyTocp (String hwid) {
try {
String command = "cmd /c echo " + hwid + " | clip";
Process p = Runtime.getRuntime().exec(command);
p.waitFor();
} catch (InterruptedException | IOException e) {
throw new RuntimeException(e);
}
}
public static void main(String[] args) {
String hwid = args[0];
System.out.println("Полученный HWID: " + hwid);
if (checkHWID(hwid)) {
} else copyTocp(hwid);
System.exit(0);
}
}
В главный класс:
String hwid = HWIDChecker.getHWID();
System.out.println("Hwid: " + hwid);
if (!HWIDChecker.checkHWID(hwid)) {
HWIDChecker.copyTocp(hwid);
System.out.println("Пока.");
Minecraft.getInstance().close();
System.exit(0);
}