package defpackage;

import java.security.GeneralSecurityException;
import java.security.InvalidKeyException;
import java.security.Provider;
import java.util.Arrays;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;

/* renamed from: ᵲʡˋ, reason: contains not printable characters */
/* loaded from: classes3.dex */
public final class C4461 implements InterfaceC2556 {

    /* renamed from: ˏᵙ, reason: contains not printable characters */
    public final Provider f16648;

    /* renamed from: ᵥᵯˎ, reason: contains not printable characters */
    public final SecretKeySpec f16649;

    /* renamed from: ᵴᵳ, reason: contains not printable characters */
    public final byte[] f16650;

    /* renamed from: ᵻᵢﹳᵰ, reason: contains not printable characters */
    public static final byte[] f16647 = AbstractC0220.m1519("808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f");

    /* renamed from: ˇʼʤˎ, reason: contains not printable characters */
    public static final byte[] f16645 = AbstractC0220.m1519("070000004041424344454647");

    /* renamed from: ˏˋٴ, reason: contains not printable characters */
    public static final byte[] f16646 = AbstractC0220.m1519("a0784d7a4716f3feb4f64e7f4b39bf04");

    public C4461(byte[] bArr, byte[] bArr2, Provider provider) throws GeneralSecurityException {
        if (!AbstractC2990.m7330(1)) {
            C0910.m3048("Can not use ChaCha20Poly1305 in FIPS-mode.");
            throw null;
        }
        if (bArr.length != 32) {
            throw new InvalidKeyException("The key length in bytes must be 32.");
        }
        this.f16649 = new SecretKeySpec(bArr, "ChaCha20");
        this.f16650 = bArr2;
        this.f16648 = provider;
    }

    /* renamed from: ˏᵙ, reason: contains not printable characters */
    public static Cipher m9487() {
        Cipher cipher = (Cipher) C1249.f5218.f5219.mo4896("ChaCha20-Poly1305");
        try {
            IvParameterSpec ivParameterSpec = new IvParameterSpec(f16645);
            byte[] bArr = f16647;
            cipher.init(2, new SecretKeySpec(bArr, "ChaCha20"), ivParameterSpec);
            byte[] bArr2 = f16646;
            if (cipher.doFinal(bArr2).length == 0) {
                cipher.init(2, new SecretKeySpec(bArr, "ChaCha20"), ivParameterSpec);
                if (cipher.doFinal(bArr2).length == 0) {
                    return cipher;
                }
            }
        } catch (GeneralSecurityException unused) {
        }
        C0910.m3048("JCE does not support algorithm: ChaCha20-Poly1305");
        return null;
    }

    @Override // defpackage.InterfaceC2556
    /* renamed from: ᵥᵯˎ */
    public final byte[] mo2411(byte[] bArr, byte[] bArr2) throws GeneralSecurityException {
        if (bArr == null) {
            C1260.m3813("plaintext is null");
            return null;
        }
        byte[] bArrM11138 = AbstractC5513.m11138(12);
        IvParameterSpec ivParameterSpec = new IvParameterSpec(bArrM11138);
        Cipher cipher = Cipher.getInstance("ChaCha20-Poly1305", this.f16648);
        cipher.init(1, this.f16649, ivParameterSpec);
        if (bArr2 != null && bArr2.length != 0) {
            cipher.updateAAD(bArr2);
        }
        int outputSize = cipher.getOutputSize(bArr.length);
        byte[] bArr3 = this.f16650;
        if (outputSize > 2147483635 - bArr3.length) {
            C0910.m3048("plaintext too long");
            return null;
        }
        byte[] bArrCopyOf = Arrays.copyOf(bArr3, bArr3.length + 12 + outputSize);
        System.arraycopy(bArrM11138, 0, bArrCopyOf, bArr3.length, 12);
        if (cipher.doFinal(bArr, 0, bArr.length, bArrCopyOf, bArr3.length + 12) == outputSize) {
            return bArrCopyOf;
        }
        C0910.m3048("not enough data written");
        return null;
    }

    @Override // defpackage.InterfaceC2556
    /* renamed from: ᵴᵳ */
    public final byte[] mo2412(byte[] bArr, byte[] bArr2) throws GeneralSecurityException {
        if (bArr == null) {
            C1260.m3813("ciphertext is null");
            return null;
        }
        int length = bArr.length;
        byte[] bArr3 = this.f16650;
        if (length < bArr3.length + 28) {
            C0910.m3048("ciphertext too short");
            return null;
        }
        if (!AbstractC1067.m3457(bArr3, bArr)) {
            C0910.m3048("Decryption failed (OutputPrefix mismatch).");
            return null;
        }
        byte[] bArr4 = new byte[12];
        System.arraycopy(bArr, bArr3.length, bArr4, 0, 12);
        IvParameterSpec ivParameterSpec = new IvParameterSpec(bArr4);
        Cipher cipher = Cipher.getInstance("ChaCha20-Poly1305", this.f16648);
        cipher.init(2, this.f16649, ivParameterSpec);
        if (bArr2 != null && bArr2.length != 0) {
            cipher.updateAAD(bArr2);
        }
        return cipher.doFinal(bArr, bArr3.length + 12, (bArr.length - bArr3.length) - 12);
    }
}
