package U3;

import A1.y;
import com.google.android.gms.internal.measurement.AbstractC0707u1;
import d5.AbstractC0844a;
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;
import n4.u0;

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

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

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

    /* JADX INFO: renamed from: e, reason: collision with root package name */
    public static final byte[] f6702e = {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 y f6703a;

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

    public d(byte[] bArr) throws GeneralSecurityException {
        if (!I1.a.b(1)) {
            throw new GeneralSecurityException("Can not use AES-SIV in FIPS-mode.");
        }
        if (!f6700c.contains(Integer.valueOf(bArr.length))) {
            throw new InvalidKeyException(AbstractC0844a.n(new StringBuilder("invalid key size: "), bArr.length, " bytes; key must have 64 bytes"));
        }
        byte[] bArrCopyOfRange = Arrays.copyOfRange(bArr, 0, bArr.length / 2);
        this.f6704b = Arrays.copyOfRange(bArr, bArr.length / 2, bArr.length);
        this.f6703a = new y(bArrCopyOfRange);
    }

    @Override // H3.c
    public final byte[] a(byte[] bArr, byte[] bArr2) throws GeneralSecurityException {
        if (bArr.length > 2147483631) {
            throw new GeneralSecurityException("plaintext too long");
        }
        Cipher cipher = (Cipher) i.f6713b.f6715a.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.f6704b, "AES"), new IvParameterSpec(bArr3));
        return AbstractC0707u1.c(bArrC, cipher.doFinal(bArr));
    }

    @Override // H3.c
    public final byte[] b(byte[] bArr, byte[] bArr2) throws GeneralSecurityException {
        if (bArr.length < 16) {
            throw new GeneralSecurityException("Ciphertext too short.");
        }
        Cipher cipher = (Cipher) i.f6713b.f6715a.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.f6704b, "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[] bArrQ;
        int length = bArr.length;
        y yVar = this.f6703a;
        if (length == 0) {
            return yVar.d(16, f6702e);
        }
        byte[] bArrD = yVar.d(16, f6701d);
        for (int i = 0; i < bArr.length - 1; i++) {
            byte[] bArr2 = bArr[i];
            if (bArr2 == null) {
                bArr2 = new byte[0];
            }
            bArrD = AbstractC0707u1.q(u0.l(bArrD), yVar.d(16, bArr2));
        }
        byte[] bArr3 = bArr[bArr.length - 1];
        if (bArr3.length >= 16) {
            if (bArr3.length < bArrD.length) {
                throw new IllegalArgumentException("xorEnd requires a.length >= b.length");
            }
            int length2 = bArr3.length - bArrD.length;
            bArrQ = Arrays.copyOf(bArr3, bArr3.length);
            for (int i5 = 0; i5 < bArrD.length; i5++) {
                int i8 = length2 + i5;
                bArrQ[i8] = (byte) (bArrQ[i8] ^ bArrD[i5]);
            }
        } 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;
            bArrQ = AbstractC0707u1.q(bArrCopyOf, u0.l(bArrD));
        }
        return yVar.d(16, bArrQ);
    }
}
