Android反域名(Anti-Domain)通常指的是在Android应用中实施的一种安全措施,用于防止应用被恶意攻击者通过域名劫持、DNS欺骗等手段进行攻击。反域名机制通过验证域名是否合法,确保应用只与预期的服务器进行通信。
public boolean isValidDomain(String domain) {
String[] validDomains = {"example.com", "api.example.com"};
for (String validDomain : validDomains) {
if (domain.equals(validDomain)) {
return true;
}
}
return false;
}
OkHttpClient client = new OkHttpClient.Builder()
.certificatePinner(new CertificatePinner.Builder()
.add("example.com", "sha256/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=")
.build())
.build();
try {
URL url = new URL("https://example.com");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
if (!isValidDomain(connection.getURL().getHost())) {
throw new SecurityException("Invalid domain");
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
}
通过以上方法,可以有效提升Android应用的安全性,防止域名相关的攻击。
领取专属 10元无门槛券
手把手带您无忧上云