- Added realracing3-community.apk (71.57 MB) - Removed 32-bit support (armeabi-v7a) - Only includes arm64-v8a libraries - Decompiled source code included - Added README-community.md with analysis
51 lines
1.8 KiB
Java
51 lines
1.8 KiB
Java
package com.google.android.gms.internal.ads;
|
|
|
|
import java.security.GeneralSecurityException;
|
|
import javax.crypto.Cipher;
|
|
import javax.crypto.spec.IvParameterSpec;
|
|
import javax.crypto.spec.SecretKeySpec;
|
|
|
|
/* loaded from: classes3.dex */
|
|
public final class zzguj implements zzgvg {
|
|
private static final ThreadLocal zza = new zzgui();
|
|
private final SecretKeySpec zzb;
|
|
private final int zzc;
|
|
private final int zzd;
|
|
|
|
public zzguj(byte[] bArr, int i) throws GeneralSecurityException {
|
|
if (!zzgks.zza(2)) {
|
|
throw new GeneralSecurityException("Can not use AES-CTR in FIPS-mode, as BoringCrypto module is not available.");
|
|
}
|
|
zzgvm.zza(bArr.length);
|
|
this.zzb = new SecretKeySpec(bArr, "AES");
|
|
int blockSize = ((Cipher) zza.get()).getBlockSize();
|
|
this.zzd = blockSize;
|
|
if (i > blockSize) {
|
|
throw new GeneralSecurityException("invalid IV size");
|
|
}
|
|
this.zzc = i;
|
|
}
|
|
|
|
@Override // com.google.android.gms.internal.ads.zzgvg
|
|
public final byte[] zza(byte[] bArr) throws GeneralSecurityException {
|
|
int length = bArr.length;
|
|
int i = this.zzc;
|
|
if (length < i) {
|
|
throw new GeneralSecurityException("ciphertext too short");
|
|
}
|
|
byte[] bArr2 = new byte[i];
|
|
System.arraycopy(bArr, 0, bArr2, 0, i);
|
|
int i2 = this.zzc;
|
|
int i3 = length - i2;
|
|
byte[] bArr3 = new byte[i3];
|
|
Cipher cipher = (Cipher) zza.get();
|
|
byte[] bArr4 = new byte[this.zzd];
|
|
System.arraycopy(bArr2, 0, bArr4, 0, this.zzc);
|
|
cipher.init(2, this.zzb, new IvParameterSpec(bArr4));
|
|
if (cipher.doFinal(bArr, i2, i3, bArr3, 0) == i3) {
|
|
return bArr3;
|
|
}
|
|
throw new GeneralSecurityException("stored output's length does not match input's length");
|
|
}
|
|
}
|