package Y3;

import java.security.GeneralSecurityException;
import java.security.InvalidKeyException;
import java.security.MessageDigest;
import java.util.Arrays;
import java.util.List;
import javax.crypto.AEADBadTagException;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;

/* JADX INFO: loaded from: classes3.dex */
public final class d implements L3.c {

    /* JADX INFO: renamed from: c, reason: collision with root package name */
    public static final List f8804c = Arrays.asList(64);

    /* JADX INFO: renamed from: d, reason: collision with root package name */
    public static final byte[] f8805d = new byte[16];

    /* JADX INFO: renamed from: e, reason: collision with root package name */
    public static final byte[] f8806e = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1};

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    public final C4.f f8807a;

    /* JADX INFO: renamed from: b, reason: collision with root package name */
    public final byte[] f8808b;

    public d(byte[] bArr) throws GeneralSecurityException {
        if (!A0.a.a(1)) {
            throw new GeneralSecurityException("Can not use AES-SIV in FIPS-mode.");
        }
        if (!f8804c.contains(Integer.valueOf(bArr.length))) {
            throw new InvalidKeyException(Z0.o.q(new StringBuilder("invalid key size: "), bArr.length, " bytes; key must have 64 bytes"));
        }
        byte[] bArrCopyOfRange = Arrays.copyOfRange(bArr, 0, bArr.length / 2);
        this.f8808b = Arrays.copyOfRange(bArr, bArr.length / 2, bArr.length);
        this.f8807a = new C4.f(bArrCopyOfRange);
    }

    @Override // L3.c
    public final byte[] a(byte[] bArr, byte[] bArr2) throws GeneralSecurityException {
        if (bArr.length > 2147483631) {
            throw new GeneralSecurityException("plaintext too long");
        }
        Cipher cipher = (Cipher) o.f8838b.f8841a.a("AES/CTR/NoPadding");
        byte[] bArrC = c(bArr2, bArr);
        byte[] bArr3 = (byte[]) bArrC.clone();
        bArr3[8] = (byte) (bArr3[8] & 127);
        bArr3[12] = (byte) (bArr3[12] & 127);
        cipher.init(1, new SecretKeySpec(this.f8808b, "AES"), new IvParameterSpec(bArr3));
        return j.c(bArrC, cipher.doFinal(bArr));
    }

    @Override // L3.c
    public final byte[] b(byte[] bArr, byte[] bArr2) throws GeneralSecurityException {
        if (bArr.length < 16) {
            throw new GeneralSecurityException("Ciphertext too short.");
        }
        Cipher cipher = (Cipher) o.f8838b.f8841a.a("AES/CTR/NoPadding");
        byte[] bArrCopyOfRange = Arrays.copyOfRange(bArr, 0, 16);
        byte[] bArr3 = (byte[]) bArrCopyOfRange.clone();
        bArr3[8] = (byte) (bArr3[8] & 127);
        bArr3[12] = (byte) (bArr3[12] & 127);
        cipher.init(2, new SecretKeySpec(this.f8808b, "AES"), new IvParameterSpec(bArr3));
        byte[] bArrCopyOfRange2 = Arrays.copyOfRange(bArr, 16, bArr.length);
        byte[] bArrDoFinal = cipher.doFinal(bArrCopyOfRange2);
        if (bArrCopyOfRange2.length == 0 && bArrDoFinal == null && "The Android Project".equals(System.getProperty("java.vendor"))) {
            bArrDoFinal = new byte[0];
        }
        if (MessageDigest.isEqual(bArrCopyOfRange, c(bArr2, bArrDoFinal))) {
            return bArrDoFinal;
        }
        throw new AEADBadTagException("Integrity check failed.");
    }

    public final byte[] c(byte[]... bArr) throws GeneralSecurityException {
        byte[] bArrT;
        int length = bArr.length;
        C4.f fVar = this.f8807a;
        if (length == 0) {
            return fVar.c(f8806e, 16);
        }
        byte[] bArrC = fVar.c(f8805d, 16);
        for (int i6 = 0; i6 < bArr.length - 1; i6++) {
            byte[] bArr2 = bArr[i6];
            if (bArr2 == null) {
                bArr2 = new byte[0];
            }
            bArrC = j.t(A4.g.B(bArrC), fVar.c(bArr2, 16));
        }
        byte[] bArr3 = bArr[bArr.length - 1];
        if (bArr3.length >= 16) {
            if (bArr3.length < bArrC.length) {
                throw new IllegalArgumentException("xorEnd requires a.length >= b.length");
            }
            int length2 = bArr3.length - bArrC.length;
            bArrT = Arrays.copyOf(bArr3, bArr3.length);
            for (int i7 = 0; i7 < bArrC.length; i7++) {
                int i8 = length2 + i7;
                bArrT[i8] = (byte) (bArrT[i8] ^ bArrC[i7]);
            }
        } else {
            if (bArr3.length >= 16) {
                throw new IllegalArgumentException("x must be smaller than a block.");
            }
            byte[] bArrCopyOf = Arrays.copyOf(bArr3, 16);
            bArrCopyOf[bArr3.length] = -128;
            bArrT = j.t(bArrCopyOf, A4.g.B(bArrC));
        }
        return fVar.c(bArrT, 16);
    }
}
