导航菜单

页面标题

页面副标题

OVO v3.139.0 - SecureSSLSocketFactory.java 源代码

正在查看: OVO v3.139.0 应用的 SecureSSLSocketFactory.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.vkey.android.secure.net;

import com.vkey.android.cz;
import java.io.IOException;
import java.net.InetAddress;
import java.net.Socket;
import java.security.KeyManagementException;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.UnrecoverableKeyException;
import java.util.Arrays;
import java.util.Objects;
import javax.net.ssl.KeyManager;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSocket;
import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.TrustManager;

public class SecureSSLSocketFactory extends SSLSocketFactory {
    private final SSLContext a;
    private final SSLSocketFactory b;

    private static final byte[] f687d = {100, 55, -6, 61, 0, 7, -15, 13, 4, -19, 15, 18, -28, 12, -8, 6, -15, 76, -43, -33, 2, 9, -5, 7, 71, -72, -7, -4, -1, 72, 12, -73, -5, -6, 84, -80, 1, -3, -2, 72, 12, -41, -37, 9, -15, 51, -35, 0, -14, 13, -14, 0, 83, -76, -3, 12, 2, -11, 36, -39, -4, -1, 72, 12, -73, -5, -6, 84, -76, -3, 12, 2, -11, 28, -31, -3, -2, 75, 9, -72, -7, -4, -1, 58, 26, -12, 2, 63, -72, 11, 6, -20, 75, -51, -13, 10, -14, 3, 6, 5, 54, -69, 14, 2, -18, 3, 13, 55, -64, 9, -15, 70, -37, -33, 2, 9, 6, -17, 33, 0, 7, -7, -28, 12, -8, 6, -15, 46, -27, -2, -17, 5, -3, -7, -15, 13, 4, -19, 15, 18, -28, 12, -8, 6, -15, 76, -43, -28, 12, -8, 6, -15, 84, -83, 4, 12, -8, 6, -15, 72, 12, -51, -33, 2, 9, -5, 7, 71, -72, -7, -4, -1, 72, 12, -73, -5, -6, 84, -80, 1, -3, -2, 72, 12, -66, -13, 0, 3, 7, 4, -13, 78, -65, -20, 1, 5, 44, -41, -3, -4, 14, 60, 9, -72, -7, -4, -1, 58, 26, 0, 13, -69, -9, 13, -1, -10, 7, 17, 8, -7, 4, -31, 27, -28, 12, -8, 6, -15, -15, 13, 4, -19, 15, 18, -28, 12, -8, 6, -15, 76, -33, -37, 9, -15, 51, -35, 0, -14, 13, -14, 0, 83, -72, -7, -4, -1, 72, 12, -73, -5, -6, 84, -80, 1, -3, -2, 75, 9, -72, -7, -4, -1, 58, 26, -44, -6, 9, 8, 68, -78, -1, -5, 84, -69, -9, 13, -1, -10, 7, 69, -80, -2, 3, -5, 5, 12, -12, 3, 61, -68, 71, 12, -51, 0, 7, -42, 67, 7, 12, -52, 8, -7, -35, 69, 5, 12, -52, 8, -7, -35, 69, 3, -3, 5, 12, -52, 8, -7, -35, 69, 3, -4, -9, 13, -1, -10, 7, 17, 8, -7, 4, -31, 27, -28, 12, -8, 6, -15, 15, 8, -4, -15, 13, 4, -19, 15, 18, -28, 12, -8, 6, -15, 84, -72, -7, -4, -1, -15, 13, 4, -19, 15, 18, -28, 12, -8, 6, -15, 76, -33, -37, 9, -15, 51, -35, 0, -14, 13, -14, 0, 83, -65, -3, 0, -14, 13, -14, 0, 71, 12, -73, -5, -6, 84, -80, 1, -3, -2, 72, 12, -41, -37, 9, -15, 51, -35, 0, -14, 13, -14, 0, 83, -76, -3, 12, 2, -11, 43, -35, 0, -14, 13, -14, 0, 71, 12, -73, -5, -6, 84, -76, -3, 12, 2, -11, 28, -31, -3, -2, 75, 9, -72, -7, -4, -1, 58, 26, 8, -7, -35, 69, 3, -4, -15, 13, 4, -19, 15, 18, -28, 12, -8, 6, -15, 76, -43, -33, 2, 9, -5, 7, 71, -72, -7, -4, -1, 72, 12, -73, -5, -6, 84, -80, 1, -3, -2, 75, 9, -72, -7, -4, -1, 58, 26};

    private static int f688e = 15;
    private static KeyManager[] c = null;

    public SecureSSLSocketFactory() throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException {
        byte[] bArr = f687d;
        SSLContext sSLContext = SSLContext.getInstance(a(-bArr[59], bArr[8], bArr[15]));
        this.a = sSLContext;
        sSLContext.init(null, new TrustManager[]{cz.a()}, null);
        this.b = sSLContext.getSocketFactory();
    }

    private static String a(int i, int i2, int i3) {
        int i4 = i2 + 3;
        byte[] bArr = f687d;
        int i5 = i + 45;
        int i6 = 463 - i3;
        byte[] bArr2 = new byte[i4];
        int i7 = i4 - 1;
        int i8 = 0;
        while (true) {
            bArr2[i8] = (byte) i5;
            if (i8 == i7) {
                return new String(bArr2, 0).intern();
            }
            i8++;
            i5 -= bArr[i6];
            i6++;
        }
    }

    private static Socket vg_createSocket(Socket socket, String str, int i, boolean z) throws IOException, NoSuchAlgorithmException, KeyManagementException {
        byte[] bArr = f687d;
        byte b = bArr[111];
        byte b2 = bArr[4];
        a(b, b2, b2 | 459);
        int i2 = -bArr[31];
        byte b3 = bArr[217];
        a(i2, b3, b3 | 98);
        SSLContext sSLContext = SSLContext.getInstance(a(-bArr[59], bArr[8], bArr[15]));
        sSLContext.init(c, new TrustManager[]{cz.a(str)}, null);
        return sSLContext.getSocketFactory().createSocket(socket, str, i, z);
    }

    @Override
    public Socket createSocket(Socket socket, String str, int i, boolean z) throws IOException {
        byte[] bArr = f687d;
        a(bArr[100], f688e | 32, 378);
        byte b = bArr[100];
        int i2 = -bArr[31];
        a(b, i2, i2 | 256);
        try {
            return a(vg_createSocket(socket, str, i, z));
        } catch (KeyManagementException | NoSuchAlgorithmException unused) {
            byte[] bArr2 = f687d;
            a(bArr2[100], f688e | 32, 378);
            a(bArr2[100], f688e | 32, 378);
            return a(this.a.getSocketFactory().createSocket(socket, str, i, z));
        }
    }

    @Override
    public String[] getDefaultCipherSuites() {
        return this.b.getDefaultCipherSuites();
    }

    @Override
    public String[] getSupportedCipherSuites() {
        return this.b.getSupportedCipherSuites();
    }

    private static Socket a(Socket socket) {
        if (socket instanceof SSLSocket) {
            try {
                String[] enabledProtocols = ((SSLSocket) socket).getEnabledProtocols();
                byte[] bArr = f687d;
                a(bArr[1] + 1, bArr[102], 131);
                a(bArr[4], bArr[217], 254);
                Arrays.toString(enabledProtocols);
            } catch (IllegalArgumentException e4) {
                byte[] bArr2 = f687d;
                a(bArr2[100], f688e | 32, 378);
                int i = bArr2[1] + 1;
                a(22, i, i | 133);
                e4.getMessage();
            }
        }
        return socket;
    }

    public SecureSSLSocketFactory(KeyManager[] keyManagerArr, TrustManager[] trustManagerArr) throws NoSuchAlgorithmException, KeyManagementException {
        c = keyManagerArr;
        byte[] bArr = f687d;
        SSLContext sSLContext = SSLContext.getInstance(a(-bArr[59], bArr[8], bArr[15]));
        this.a = sSLContext;
        sSLContext.init(keyManagerArr, trustManagerArr, null);
        this.b = sSLContext.getSocketFactory();
    }

    private static Socket vg_createSocket(String str, int i) throws IOException, NoSuchAlgorithmException, KeyManagementException {
        byte[] bArr = f687d;
        byte b = bArr[111];
        byte b2 = bArr[4];
        a(b, b2, b2 | 459);
        int i2 = -bArr[31];
        byte b3 = bArr[217];
        a(i2, b3, b3 | 98);
        SSLContext sSLContext = SSLContext.getInstance(a(-bArr[59], bArr[8], bArr[15]));
        sSLContext.init(c, new TrustManager[]{cz.a(str)}, null);
        return sSLContext.getSocketFactory().createSocket(str, i);
    }

    @Override
    public Socket createSocket(String str, int i) throws IOException {
        byte[] bArr = f687d;
        a(bArr[100], f688e | 32, 378);
        a(bArr[100], -bArr[59], bArr[4]);
        try {
            return a(vg_createSocket(str, i));
        } catch (KeyManagementException | NoSuchAlgorithmException unused) {
            byte[] bArr2 = f687d;
            a(bArr2[100], f688e | 32, 378);
            a(bArr2[100], f688e | 32, 378);
            return a(this.a.getSocketFactory().createSocket(str, i));
        }
    }

    private static Socket vg_createSocket(String str, int i, InetAddress inetAddress, int i2) throws IOException, NoSuchAlgorithmException, KeyManagementException {
        byte[] bArr = f687d;
        byte b = bArr[111];
        byte b2 = bArr[4];
        a(b, b2, b2 | 459);
        int i3 = -bArr[31];
        byte b3 = bArr[217];
        a(i3, b3, b3 | 98);
        SSLContext sSLContext = SSLContext.getInstance(a(-bArr[59], bArr[8], bArr[15]));
        sSLContext.init(c, new TrustManager[]{cz.a(str)}, null);
        return sSLContext.getSocketFactory().createSocket(str, i, inetAddress, i2);
    }

    @Override
    public Socket createSocket(String str, int i, InetAddress inetAddress, int i2) throws IOException {
        byte[] bArr = f687d;
        a(bArr[100], f688e | 32, 378);
        a(bArr[100], bArr[191] - 1, 457);
        try {
            return a(vg_createSocket(str, i, inetAddress, i2));
        } catch (KeyManagementException | NoSuchAlgorithmException unused) {
            byte[] bArr2 = f687d;
            a(bArr2[100], f688e | 32, 378);
            a(bArr2[100], f688e | 32, 378);
            return a(this.a.getSocketFactory().createSocket(str, i, inetAddress, i2));
        }
    }

    private static Socket vg_createSocket(InetAddress inetAddress, int i) throws IOException, NoSuchAlgorithmException, KeyManagementException {
        byte[] bArr = f687d;
        byte b = bArr[111];
        byte b2 = bArr[4];
        a(b, b2, b2 | 459);
        int i2 = -bArr[31];
        byte b3 = bArr[217];
        a(i2, b3, b3 | 98);
        SSLContext sSLContext = SSLContext.getInstance(a(-bArr[59], bArr[8], bArr[15]));
        sSLContext.init(c, new TrustManager[]{cz.a(inetAddress.getHostName())}, null);
        return sSLContext.getSocketFactory().createSocket(inetAddress, i);
    }

    @Override
    public Socket createSocket(InetAddress inetAddress, int i) throws IOException {
        byte[] bArr = f687d;
        a(bArr[100], f688e | 32, 378);
        a(bArr[100], bArr[196], 235);
        Objects.toString(inetAddress);
        try {
            return a(vg_createSocket(inetAddress, i));
        } catch (KeyManagementException | NoSuchAlgorithmException unused) {
            byte[] bArr2 = f687d;
            a(bArr2[100], f688e | 32, 378);
            a(bArr2[100], f688e | 32, 378);
            return a(this.a.getSocketFactory().createSocket(inetAddress, i));
        }
    }

    @Override
    public Socket createSocket(InetAddress inetAddress, int i, InetAddress inetAddress2, int i2) throws IOException {
        byte[] bArr = f687d;
        a(bArr[100], f688e | 32, 378);
        a(bArr[100], 88, 96);
        inetAddress.getHostName();
        try {
            return a(vg_createSocket(inetAddress, i, inetAddress2, i2));
        } catch (KeyManagementException | NoSuchAlgorithmException unused) {
            byte[] bArr2 = f687d;
            a(bArr2[100], f688e | 32, 378);
            a(bArr2[100], f688e | 32, 378);
            return a(this.a.getSocketFactory().createSocket(inetAddress, i, inetAddress2, i2));
        }
    }

    private static Socket vg_createSocket(InetAddress inetAddress, int i, InetAddress inetAddress2, int i2) throws IOException, NoSuchAlgorithmException, KeyManagementException {
        byte[] bArr = f687d;
        byte b = bArr[111];
        byte b2 = bArr[4];
        a(b, b2, b2 | 459);
        int i3 = -bArr[31];
        byte b3 = bArr[217];
        a(i3, b3, b3 | 98);
        SSLContext sSLContext = SSLContext.getInstance(a(-bArr[59], bArr[8], bArr[15]));
        sSLContext.init(c, new TrustManager[]{cz.a(inetAddress.getHostName())}, null);
        return sSLContext.getSocketFactory().createSocket(inetAddress, i, inetAddress2, i2);
    }
}