京东到家.apk(点击下载) / CryptoUtils.java


package com.wangyin.platform;

import android.content.Context;
import android.text.TextUtils;
import android.util.Base64;
import com.jdjr.wsm4.Wsm4Manager;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import kotlin.text.Typography;

public class CryptoUtils {
    static final int SO_LOAD_FAILED = 22222;
    static final String SO_LOAD_FAILED_STR = "22222";
    private static final String TAG = "CryptoUtils";
    private static CryptoUtils instance = null;
    static boolean isLoadLibrary = true;
    private static final Object lock = new Object();
    private final Context context;
    private final NativeCryptoUtils nativeCryptoUtils;

    static {
        try {
            System.loadLibrary("WangyinCryptoLib");
        } catch (Throwable unused) {
            isLoadLibrary = false;
        }
        try {
            System.loadLibrary("AntiCheat");
        } catch (Throwable unused2) {
            isLoadLibrary = false;
        }
    }

    public static FidoSecCheckResult fidoSecCheck(Context context2, String str, byte[] bArr) throws NativeLibNotLoadException, FidoSecCheckException, FidoSecEnvException {
        if (isLoadLibrary) {
            Wsm4Manager.newInstance(context2);
            return NativeCryptoUtils.NativeFidoSecCheck(context2, null, null, str, Base64.decode(FidoSecCheckCert.getEncKey(), 0), null, bArr);
        }
        throw new NativeLibNotLoadException();
    }

    public byte[] GenerateOTP(byte[] bArr, byte[] bArr2, long j, int i) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGenerateOTP(bArr, bArr2, j, i);
    }

    public byte[] GenPayCode(byte[] bArr, byte[] bArr2, byte[] bArr3, byte[] bArr4, long j) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGenPayCode(bArr, bArr2, bArr3, bArr4, j);
    }

    public byte[] GetUserIDByPayCode(byte[] bArr, byte[] bArr2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetUserIDByPayCode(bArr, bArr2);
    }

    public byte[] GetUserIDByPayCodeJDJR(byte[] bArr, byte[] bArr2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetUserIDByPayCodeJDJR(bArr, bArr2);
    }

    public byte[] GetUserIDByPayCode_ChinaUnionPay_15(byte[] bArr, byte[] bArr2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetUserIDByPayCode_ChinaUnionPay_15(bArr, bArr2);
    }

    public byte[] GenPayCode_16(byte[] bArr, byte[] bArr2, byte[] bArr3, byte[] bArr4, long j) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGenPayCode_16(bArr, bArr2, bArr3, bArr4, j);
    }

    public byte[] GenPayCode_JDJR_16(byte[] bArr, byte[] bArr2, byte[] bArr3, byte[] bArr4, long j) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGenPayCodeJDJR(bArr, bArr2, bArr3, bArr4, j);
    }

    public byte[] GenPayCode_ChinaUnionPay_15(byte[] bArr, byte[] bArr2, byte[] bArr3, byte[] bArr4, long j) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGenPayCode_ChinaUnionPay_15(bArr, bArr2, bArr3, bArr4, j);
    }

    public byte[] ECDHHandshakeToServer(byte[] bArr) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeECDHHandshakeToServer(bArr);
    }

    public byte[] ECDHSendDataToServer(byte[] bArr, int i, int i2, byte[] bArr2, byte[] bArr3, byte[] bArr4) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeECDHSendDataToServer(bArr, i, i2, bArr2, bArr3, bArr4);
    }

    public byte[] ECDHDecodeServerHandshake(byte[] bArr, int i, byte[] bArr2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeECDHDecodeServerHandshake(bArr, i, bArr2);
    }

    public byte[] ECDHDecodeServerMessage(byte[] bArr, int i, byte[] bArr2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeECDHDecodeServerMessage(bArr, i, bArr2);
    }

    public byte[] ECDHSEssionTimeOut() {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeECDHSEssionTimeOut();
    }

    public int ECDHEncryptionInitSelfTest() {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeECDHEncryptionInitSelfTest();
    }

    public String GetLibVersion() {
        if (!isLoadLibrary) {
            return String.valueOf((int) SO_LOAD_FAILED);
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetLibVersion();
    }

    public byte[] mobileCertInit(Context context2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeMobileCertInit(context2);
    }

    public byte[] createP10Request(String str, String str2, String str3, int i) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeCreateP10Request(str, str2, str3, i);
    }

    public byte[] importCert(byte[] bArr, byte[] bArr2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeImportCert(bArr, bArr2);
    }

    public byte[] signP7AndEnvelopMsg(String str, String str2, String str3, byte[] bArr) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeSignP7AndEnvelopMsg(str, str2, str3, bArr);
    }

    public byte[] deleteAllCertificate() {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeDeleteAllCertificate();
    }

    public byte[] isCertExists(String str, int i) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeIsCertExists(str, i);
    }

    public byte[] deleteCertificate(String str) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeDeleteCertificate(str);
    }

    public byte[] symmetricCrypto(Context context2, String str, String str2, byte[] bArr, int i, int i2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeSymmetricCrypto(context2, str, str2, bArr, i, i2);
    }

    public byte[] fileCrypto(Context context2, String str, String str2, int i, int i2, String str3, String str4) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeFileCrypto(context2, str, str2, i, i2, str3, str4);
    }

    /* JADX WARNING: Removed duplicated region for block: B:46:0x0096 A[SYNTHETIC, Splitter:B:46:0x0096] */
    /* JADX WARNING: Removed duplicated region for block: B:49:0x009b A[Catch:{ Exception -> 0x00a3 }] */
    /* JADX WARNING: Removed duplicated region for block: B:51:0x00a0 A[Catch:{ Exception -> 0x00a3 }] */
    /* JADX WARNING: Removed duplicated region for block: B:57:0x00a8 A[SYNTHETIC, Splitter:B:57:0x00a8] */
    /* JADX WARNING: Removed duplicated region for block: B:60:0x00ad A[Catch:{ Exception -> 0x00b5 }] */
    /* JADX WARNING: Removed duplicated region for block: B:62:0x00b2 A[Catch:{ Exception -> 0x00b5 }] */
    public byte[] fileDecrypt(Context context2, String str, String str2, int i, String str3, OutputStream outputStream) {
        FileInputStream fileInputStream;
        BufferedInputStream bufferedInputStream;
        Throwable th;
        byte[] bArr;
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        byte[] bArr2 = new byte[16400];
        byte[] bArr3 = new byte[5];
        FileInputStream fileInputStream2 = null;
        try {
            fileInputStream = new FileInputStream(new File(str3));
            try {
                bufferedInputStream = new BufferedInputStream(fileInputStream);
                while (true) {
                    try {
                        int read = bufferedInputStream.read(bArr2);
                        if (read != -1) {
                            if (read == 16400) {
                                bArr = bArr2;
                            } else if (read < 16400) {
                                byte[] bArr4 = new byte[read];
                                System.arraycopy(bArr2, 0, bArr4, 0, read);
                                bArr = bArr4;
                            } else {
                                byte[] bytes = "33333".getBytes();
                                try {
                                    fileInputStream.close();
                                    bufferedInputStream.close();
                                    if (outputStream != null) {
                                        outputStream.close();
                                    }
                                } catch (Exception unused) {
                                }
                                return bytes;
                            }
                            byte[] symmetricCrypto = symmetricCrypto(context2, str, str2, bArr, 0, i);
                            System.arraycopy(symmetricCrypto, 0, bArr3, 0, 5);
                            if (new String(bArr3).equals("00000")) {
                                byte[] bArr5 = new byte[(symmetricCrypto.length - 5)];
                                System.arraycopy(symmetricCrypto, 5, bArr5, 0, symmetricCrypto.length - 5);
                                outputStream.write(bArr5);
                                outputStream.flush();
                            }
                        }
                        try {
                            fileInputStream.close();
                            bufferedInputStream.close();
                            if (outputStream != null) {
                                outputStream.close();
                            }
                        } catch (Exception unused2) {
                        }
                        return bArr3;
                    } catch (Exception unused3) {
                        fileInputStream2 = fileInputStream;
                        try {
                            byte[] bytes2 = "33333".getBytes();
                            if (fileInputStream2 != null) {
                                try {
                                    fileInputStream2.close();
                                } catch (Exception unused4) {
                                    return bytes2;
                                }
                            }
                            if (bufferedInputStream != null) {
                                bufferedInputStream.close();
                            }
                            if (outputStream != null) {
                                outputStream.close();
                            }
                            return bytes2;
                        } catch (Throwable th2) {
                            th = th2;
                            fileInputStream = fileInputStream2;
                            if (fileInputStream != null) {
                                try {
                                    fileInputStream.close();
                                } catch (Exception unused5) {
                                    throw th;
                                }
                            }
                            if (bufferedInputStream != null) {
                                bufferedInputStream.close();
                            }
                            if (outputStream != null) {
                                outputStream.close();
                            }
                            throw th;
                        }
                    } catch (Throwable th3) {
                        th = th3;
                        if (fileInputStream != null) {
                        }
                        if (bufferedInputStream != null) {
                        }
                        if (outputStream != null) {
                        }
                        throw th;
                    }
                }
            } catch (Exception unused6) {
                bufferedInputStream = null;
                fileInputStream2 = fileInputStream;
                byte[] bytes22 = "33333".getBytes();
                if (fileInputStream2 != null) {
                }
                if (bufferedInputStream != null) {
                }
                if (outputStream != null) {
                }
                return bytes22;
            } catch (Throwable th4) {
                th = th4;
                bufferedInputStream = null;
                if (fileInputStream != null) {
                }
                if (bufferedInputStream != null) {
                }
                if (outputStream != null) {
                }
                throw th;
            }
        } catch (Exception unused7) {
            bufferedInputStream = null;
            byte[] bytes222 = "33333".getBytes();
            if (fileInputStream2 != null) {
            }
            if (bufferedInputStream != null) {
            }
            if (outputStream != null) {
            }
            return bytes222;
        } catch (Throwable th5) {
            th = th5;
            bufferedInputStream = null;
            fileInputStream = null;
            if (fileInputStream != null) {
            }
            if (bufferedInputStream != null) {
            }
            if (outputStream != null) {
            }
            throw th;
        }
    }

    public int Wsm4_init(byte[] bArr, byte[] bArr2) {
        return isLoadLibrary ? NativeCryptoUtils.NativeWsm4_init(bArr, bArr2) : SO_LOAD_FAILED;
    }

    public byte[] wsm4_crypt_cbc_padding(int i, int i2, int i3, byte[] bArr) {
        if (isLoadLibrary) {
            return NativeCryptoUtils.Nativesm4_crypt_cbc_padding(i, i2, i3, bArr, 0);
        }
        return getCurrentBytes(SO_LOAD_FAILED_STR);
    }

    public byte[] wsm4_crypt_ecb_padding(int i, int i2, int i3, byte[] bArr) {
        if (isLoadLibrary) {
            return NativeCryptoUtils.Nativesm4_crypt_ecb_padding(i, i2, i3, bArr, 0);
        }
        return getCurrentBytes(SO_LOAD_FAILED_STR);
    }

    public byte[] wsm4_crypt_cbc_nopadding(int i, int i2, byte[] bArr) {
        if (isLoadLibrary) {
            return NativeCryptoUtils.Nativesm4_crypt_cbc_nopadding(i, i2, bArr, 0);
        }
        return getCurrentBytes(SO_LOAD_FAILED_STR);
    }

    public byte[] wsm4_crypt_ecb_nopadding(int i, int i2, byte[] bArr) {
        if (isLoadLibrary) {
            return NativeCryptoUtils.Nativesm4_crypt_ecb_nopadding(i, i2, bArr, 0);
        }
        return getCurrentBytes(SO_LOAD_FAILED_STR);
    }

    public byte[] verifySignMsg(byte[] bArr) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.verifySignMsg(bArr);
    }

    public byte[] p7Envelope(String str, byte[] bArr) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeP7Envelope(str, bArr);
    }

    public byte[] wyP7Envelope(String str, byte[] bArr) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeWYP7Envelope(str, bArr);
    }

    public String initHttpDNS(String str) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return String.valueOf(NativeCryptoUtils.NativeInitializeHttpDNS(str));
    }

    public String saveCachedIp(String str, String str2, String str3, int i, double d, double d2, String[] strArr, int[] iArr, String str4) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return String.valueOf(NativeCryptoUtils.NativeCacheIPsByHosts(str3, str, str2, i, (long) d, (long) d2, strArr, iArr, str4));
    }

    public String updateServerIp(String[] strArr, int[] iArr, String str, long j, long j2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return String.valueOf(NativeCryptoUtils.NativeUpdateServerIPList(strArr, iArr, str, j, j2));
    }

    public String getDnsServerIp(int i) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetCurrentServerIP(i);
    }

    public byte[] getCachedIPByHost(String str, String str2, long j, long j2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetCachedIPByHost(str, str2, j, j2);
    }

    public String setCachedURLServerFlag(int i) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return String.valueOf(NativeCryptoUtils.NativeSetCachedURLServerFlag(i));
    }

    public String cachehitUpdate(String str, int i) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return String.valueOf(NativeCryptoUtils.NativeCachehitUpdate(str, i));
    }

    public byte[] upGenPayCode(long j, int i, byte[] bArr, byte[] bArr2, byte[] bArr3, byte[] bArr4, long j2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeUPGenPayCode(j, i, bArr, bArr2, bArr3, bArr4, j2);
    }

    public byte[] uPChkPayCode(String str, int i, byte[] bArr, byte[] bArr2, byte[] bArr3, byte[] bArr4, long j) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeUPChkPayCode(str, i, bArr, bArr2, bArr3, bArr4, j);
    }

    public byte[] textToImage(byte[] bArr, int i, String str) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeTextToImage(bArr, i, str);
    }

    public byte[] getPDFHash(String str, int i) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetPDFHash(str, i);
    }

    public byte[] getCertificate(String str, String str2, String str3) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetCertificate(str, str2, str3);
    }

    public byte[] getPDFP1Sign(byte[] bArr, int i, String str, String str2, String str3) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetPDFP1Sign(bArr, i, str, str2, str3);
    }

    public byte[] verifyP1SignMsg(byte[] bArr, int i, byte[] bArr2, byte[] bArr3) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeVerifyP1SignMsg(bArr, i, bArr2, bArr3);
    }

    public void startAutoHandshake(String str, int i, String str2) {
        if (isLoadLibrary) {
            if (str == null || str.equals("")) {
                str = "http://aks.jdpay.com/";
                i = 0;
                str2 = "MIIEhzCCA2+gAwIBAgIUb9PENTGiiBPWjL8R43mOe8tiG1swDQYJKoZIhvcNAQEFBQAwXjEYMBYGA1UEAwwPV2FuZ1lpbiBVc2VyIENBMR8wHQYDVQQLDBZXYW5nWWluIFNlY3VyaXR5Q2VudGVyMRQwEgYDVQQKDAtXYW5nWWluLmNvbTELMAkGA1UEBhMCQ04wHhcNMTcwNzI2MDIzODA0WhcNMTgwNzI2MDIzODA0WjBjMQswCQYDVQQLDAJqcjELMAkGA1UECgwCamQxJDAiBgkqhkiG9w0BCQEWFXd5d2FuZ3RpZWNoZW5nQGpkLmNvbTEhMB8GA1UEAwwYQUtTKFBVQkxJQykoQUtTMDAwMDBBS1MpMIIBIDANBgkqhkiG9w0BAQEFAAOCAQ0AMIIBCAKCAQEA4YeUWdrlIHTum9Pi/NdRcg981sfYWLeRwfpB5pIpqjc5UXvYn4i2RdeeYX965xmifxxtK8rqCrhg8fgrJfuykMxiBWlPg4fdjndAC1LuDmdQUGnQiytBpqGLfRNCbUobz61BDNB1m6mzr/QzpdmGz/zf28ml/cKhHVHOsSyzWA4Rfpxrt5lQ7uX5ixZ9gtc7bnJzEZm1EMHgP++Svfg9mXvDU/sDaoaaDBVD78BPeLT7wdX3GGFz8tO1okFz3uykd1prEYIzABG2Kw9VSFeqjcFxTne4fP7yvNO5zwmjzGD4vvHKUUOudzTFOA/xWaWNgpzzWXx+Ly1T6zdq/RCu3QIBA6OCATgwggE0MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgTwMGwGA1UdLgRlMGMwYaBfoF2GW2h0dHA6Ly90b3BjYS5kLmNoaW5hYmFuay5jb20uY24vcHVibGljL2l0cnVzY3JsP0NBPTFFRTQ1QjcxNkQwOUE0OTI4MkIxMzQ2QTJDQzNDNjI3MzExMzgwRUIwbAYDVR0fBGUwYzBhoF+gXYZbaHR0cDovL3RvcGNhLmQuY2hpbmFiYW5rLmNvbS5jbi9wdWJsaWMvaXRydXNjcmw/Q0E9MUVFNDVCNzE2RDA5QTQ5MjgyQjEzNDZBMkNDM0M2MjczMTEzODBFQjAfBgNVHSMEGDAWgBQIrG8B7ru+w5RXOmnV3H+vfhy04DAdBgNVHQ4EFgQU2ANXt2VNVFykKkkP7qOzEzs+AVIwDQYJKoZIhvcNAQEFBQADggEBABT6RpA8S1dbwRreohU8q8yRCARjAKAlZYqQBPV3vdSu7YXxuIKV2adhOyasVadpeMNNsMQmtQxN93n+uo7OJH/HB/1PYGM8bGv0qHuNGX5B90UZeJSQxYjYuGrQJQd24bVRRZuaeEIC7Gkq6zI52APt/TiLtvga7UC+iSmtN8Q/OkN+fQBpexDX4iInyG/lUXrXZ69SiJw2u1WnrPMDHbjOaoocEWwZdhqjOSVDz0t40IrtHc/TQERNHTAlBsm5EqQMEiThIgEkJjFUc+Y0AMrHr9KbODgDGAcH1EcdMMM4FbF6yd0TiGIxFnqngcKFet52lxo+5L/VsSQrFhxUohM=";
            }
            NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
            NativeCryptoUtils.NativeStartAutoHandshake(str, i, str2);
        }
    }

    public byte[] encodeDataToServer(String str, long j, String str2, String str3, String str4, String str5, String str6, int i) {
        int i2;
        String str7;
        String str8;
        CryptoUtils cryptoUtils;
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        if (str6 == null || str6.equals("")) {
            str7 = "http://aks.jdpay.com/";
            str8 = "MIIEhzCCA2+gAwIBAgIUb9PENTGiiBPWjL8R43mOe8tiG1swDQYJKoZIhvcNAQEFBQAwXjEYMBYGA1UEAwwPV2FuZ1lpbiBVc2VyIENBMR8wHQYDVQQLDBZXYW5nWWluIFNlY3VyaXR5Q2VudGVyMRQwEgYDVQQKDAtXYW5nWWluLmNvbTELMAkGA1UEBhMCQ04wHhcNMTcwNzI2MDIzODA0WhcNMTgwNzI2MDIzODA0WjBjMQswCQYDVQQLDAJqcjELMAkGA1UECgwCamQxJDAiBgkqhkiG9w0BCQEWFXd5d2FuZ3RpZWNoZW5nQGpkLmNvbTEhMB8GA1UEAwwYQUtTKFBVQkxJQykoQUtTMDAwMDBBS1MpMIIBIDANBgkqhkiG9w0BAQEFAAOCAQ0AMIIBCAKCAQEA4YeUWdrlIHTum9Pi/NdRcg981sfYWLeRwfpB5pIpqjc5UXvYn4i2RdeeYX965xmifxxtK8rqCrhg8fgrJfuykMxiBWlPg4fdjndAC1LuDmdQUGnQiytBpqGLfRNCbUobz61BDNB1m6mzr/QzpdmGz/zf28ml/cKhHVHOsSyzWA4Rfpxrt5lQ7uX5ixZ9gtc7bnJzEZm1EMHgP++Svfg9mXvDU/sDaoaaDBVD78BPeLT7wdX3GGFz8tO1okFz3uykd1prEYIzABG2Kw9VSFeqjcFxTne4fP7yvNO5zwmjzGD4vvHKUUOudzTFOA/xWaWNgpzzWXx+Ly1T6zdq/RCu3QIBA6OCATgwggE0MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgTwMGwGA1UdLgRlMGMwYaBfoF2GW2h0dHA6Ly90b3BjYS5kLmNoaW5hYmFuay5jb20uY24vcHVibGljL2l0cnVzY3JsP0NBPTFFRTQ1QjcxNkQwOUE0OTI4MkIxMzQ2QTJDQzNDNjI3MzExMzgwRUIwbAYDVR0fBGUwYzBhoF+gXYZbaHR0cDovL3RvcGNhLmQuY2hpbmFiYW5rLmNvbS5jbi9wdWJsaWMvaXRydXNjcmw/Q0E9MUVFNDVCNzE2RDA5QTQ5MjgyQjEzNDZBMkNDM0M2MjczMTEzODBFQjAfBgNVHSMEGDAWgBQIrG8B7ru+w5RXOmnV3H+vfhy04DAdBgNVHQ4EFgQU2ANXt2VNVFykKkkP7qOzEzs+AVIwDQYJKoZIhvcNAQEFBQADggEBABT6RpA8S1dbwRreohU8q8yRCARjAKAlZYqQBPV3vdSu7YXxuIKV2adhOyasVadpeMNNsMQmtQxN93n+uo7OJH/HB/1PYGM8bGv0qHuNGX5B90UZeJSQxYjYuGrQJQd24bVRRZuaeEIC7Gkq6zI52APt/TiLtvga7UC+iSmtN8Q/OkN+fQBpexDX4iInyG/lUXrXZ69SiJw2u1WnrPMDHbjOaoocEWwZdhqjOSVDz0t40IrtHc/TQERNHTAlBsm5EqQMEiThIgEkJjFUc+Y0AMrHr9KbODgDGAcH1EcdMMM4FbF6yd0TiGIxFnqngcKFet52lxo+5L/VsSQrFhxUohM=";
            i2 = 0;
            cryptoUtils = this;
        } else {
            str8 = str5;
            i2 = i;
            str7 = str6;
            cryptoUtils = this;
        }
        NativeCryptoUtils nativeCryptoUtils2 = cryptoUtils.nativeCryptoUtils;
        return NativeCryptoUtils.NativeEncodeDataToServer(str, j, str2, str3, str4, str8, str7, i2);
    }

    public void startAutoHandshake() {
        startAutoHandshake(null, 0, null);
    }

    public byte[] encodeDataToServer(String str, long j) {
        return encodeDataToServer(str, j, null, null, null, null, null, 0);
    }

    public byte[] decodeDataFromServer(String str) {
        return decodeDataFromServer(str, null, null, 0, null);
    }

    public byte[] decodeDataFromServer(String str, String str2, String str3, int i, String str4) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        if (str3 == null || str3.equals("")) {
            str3 = "http://aks.jdpay.com/";
            i = 0;
            str4 = "MIIEhzCCA2+gAwIBAgIUb9PENTGiiBPWjL8R43mOe8tiG1swDQYJKoZIhvcNAQEFBQAwXjEYMBYGA1UEAwwPV2FuZ1lpbiBVc2VyIENBMR8wHQYDVQQLDBZXYW5nWWluIFNlY3VyaXR5Q2VudGVyMRQwEgYDVQQKDAtXYW5nWWluLmNvbTELMAkGA1UEBhMCQ04wHhcNMTcwNzI2MDIzODA0WhcNMTgwNzI2MDIzODA0WjBjMQswCQYDVQQLDAJqcjELMAkGA1UECgwCamQxJDAiBgkqhkiG9w0BCQEWFXd5d2FuZ3RpZWNoZW5nQGpkLmNvbTEhMB8GA1UEAwwYQUtTKFBVQkxJQykoQUtTMDAwMDBBS1MpMIIBIDANBgkqhkiG9w0BAQEFAAOCAQ0AMIIBCAKCAQEA4YeUWdrlIHTum9Pi/NdRcg981sfYWLeRwfpB5pIpqjc5UXvYn4i2RdeeYX965xmifxxtK8rqCrhg8fgrJfuykMxiBWlPg4fdjndAC1LuDmdQUGnQiytBpqGLfRNCbUobz61BDNB1m6mzr/QzpdmGz/zf28ml/cKhHVHOsSyzWA4Rfpxrt5lQ7uX5ixZ9gtc7bnJzEZm1EMHgP++Svfg9mXvDU/sDaoaaDBVD78BPeLT7wdX3GGFz8tO1okFz3uykd1prEYIzABG2Kw9VSFeqjcFxTne4fP7yvNO5zwmjzGD4vvHKUUOudzTFOA/xWaWNgpzzWXx+Ly1T6zdq/RCu3QIBA6OCATgwggE0MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgTwMGwGA1UdLgRlMGMwYaBfoF2GW2h0dHA6Ly90b3BjYS5kLmNoaW5hYmFuay5jb20uY24vcHVibGljL2l0cnVzY3JsP0NBPTFFRTQ1QjcxNkQwOUE0OTI4MkIxMzQ2QTJDQzNDNjI3MzExMzgwRUIwbAYDVR0fBGUwYzBhoF+gXYZbaHR0cDovL3RvcGNhLmQuY2hpbmFiYW5rLmNvbS5jbi9wdWJsaWMvaXRydXNjcmw/Q0E9MUVFNDVCNzE2RDA5QTQ5MjgyQjEzNDZBMkNDM0M2MjczMTEzODBFQjAfBgNVHSMEGDAWgBQIrG8B7ru+w5RXOmnV3H+vfhy04DAdBgNVHQ4EFgQU2ANXt2VNVFykKkkP7qOzEzs+AVIwDQYJKoZIhvcNAQEFBQADggEBABT6RpA8S1dbwRreohU8q8yRCARjAKAlZYqQBPV3vdSu7YXxuIKV2adhOyasVadpeMNNsMQmtQxN93n+uo7OJH/HB/1PYGM8bGv0qHuNGX5B90UZeJSQxYjYuGrQJQd24bVRRZuaeEIC7Gkq6zI52APt/TiLtvga7UC+iSmtN8Q/OkN+fQBpexDX4iInyG/lUXrXZ69SiJw2u1WnrPMDHbjOaoocEWwZdhqjOSVDz0t40IrtHc/TQERNHTAlBsm5EqQMEiThIgEkJjFUc+Y0AMrHr9KbODgDGAcH1EcdMMM4FbF6yd0TiGIxFnqngcKFet52lxo+5L/VsSQrFhxUohM=";
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeDecodeDataFromServer(str, str2, str3, i, str4);
    }

    public char getHandshakeStatus() {
        if (!isLoadLibrary) {
            return Typography.quote;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetHandshakeStatus();
    }

    public void setHandshakeStatus(char c2) {
        if (isLoadLibrary) {
            NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
            NativeCryptoUtils.NativeSetHandshakeStatus(c2);
        }
    }

    public long initializeKeyBoardCrypto() {
        if (!isLoadLibrary) {
            return 22222;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeInitializeKeyBoardCrypto();
    }

    public byte[] uninitializeKeyBoardcrypto(long j) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeUninitializeKeyBoardcrypto(j);
    }

    public byte[] appenChar(long j, int i, String str, int i2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeAppendChar(j, i, str, i2);
    }

    public byte[] deleteChar(long j, int i, int i2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeDeleteChar(j, i, i2);
    }

    public byte[] deleteAllChar(long j) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeDeleteAllChar(j);
    }

    public int getInputDataLen(long j) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetInputDataLen(j);
    }

    public byte[] getCryptoInputData(long j, byte[] bArr) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetCryptoInputData(j, bArr);
    }

    public byte[] getCryptoInputDataDegrade(long j, byte[] bArr) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetCryptoInputDataDegrade(j, bArr);
    }

    public byte[] getTempInputData(long j) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetTempInputData(j);
    }

    public int setServerTime(long j, long j2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeSetServerTime(j, j2);
    }

    public byte[] getSourceData(long j, byte[] bArr, byte[] bArr2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetSourceData(j, bArr, bArr2);
    }

    public int setMD5Attach(long j, int i) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeSetMD5Attach(j, i);
    }

    public int setCryptoAlgorithm(long j, int i) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeSetCryptoAlgorithm(j, i);
    }

    public int CheckRegexMatch(long j, String str, String str2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED;
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeCheckRegexMatch(j, str, str2);
    }

    public byte[] GetCertSerialNumber(byte[] bArr) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetCertSerialNumber(bArr);
    }

    public byte[] NativeGenerateSmOtpByFactor(int i, long j, int i2, int i3, byte[] bArr, byte[] bArr2, int i4) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGenerateSmOtpByFactor(i, j, i2, i3, bArr, bArr2, i4);
    }

    public byte[] CheckPwdEqual(long j, long j2) {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeCheckPwdEqual(j, j2);
    }

    public byte[] getDeviceGUID() {
        if (!isLoadLibrary) {
            return SO_LOAD_FAILED_STR.getBytes();
        }
        NativeCryptoUtils nativeCryptoUtils2 = this.nativeCryptoUtils;
        return NativeCryptoUtils.NativeGetDeviceGUID();
    }

    public static CryptoUtils newInstance(Context context2) {
        if (instance == null) {
            synchronized (lock) {
                if (instance == null) {
                    instance = new CryptoUtils(context2);
                }
            }
        }
        return instance;
    }

    private CryptoUtils(Context context2) {
        this.context = context2;
        this.nativeCryptoUtils = new NativeCryptoUtils(context2);
        mobileCertInit(context2);
    }

    /* access modifiers changed from: package-private */
    public Context getContext() {
        return this.context;
    }

    private byte[] getCurrentBytes(String str) {
        if (!TextUtils.isEmpty(str)) {
            try {
                return str.getBytes("UTF-8");
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
        }
        return null;
    }
}