38 lines
1.2 KiB
XML
38 lines
1.2 KiB
XML
<?xml version='1.0' encoding='utf-8' ?>
|
|
<!DOCTYPE programlisting PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
]>
|
|
<!-- Automatically generated file. Do not edit. -->
|
|
<programlisting language="Java">
|
|
public class MyTrustManager implements X509TrustManager {
|
|
private final byte[] certHash;
|
|
|
|
public MyTrustManager(byte[] certHash) throws Exception {
|
|
this.certHash = certHash;
|
|
}
|
|
|
|
@Override
|
|
public void checkClientTrusted(X509Certificate[] chain, String authType)
|
|
throws CertificateException {
|
|
throw new UnsupportedOperationException();
|
|
}
|
|
|
|
@Override
|
|
public void checkServerTrusted(X509Certificate[] chain,
|
|
String authType) throws CertificateException {
|
|
byte[] digest = getCertificateDigest(chain[0]);
|
|
String digestHex = formatHex(digest);
|
|
|
|
if (Arrays.equals(digest, certHash)) {
|
|
System.err.println("info: accepting certificate: " + digestHex);
|
|
} else {
|
|
throw new CertificateException("certificate rejected: " +
|
|
digestHex);
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public X509Certificate[] getAcceptedIssuers() {
|
|
return new X509Certificate[0];
|
|
}
|
|
}
|
|
</programlisting>
|