package org.bouncycastle.crypto.engines; import io.flutter.embedding.android.KeyboardMap; import org.bouncycastle.util.Pack; /* loaded from: classes6.dex */ public class ChaCha7539Engine extends Salsa20Engine { @Override // org.bouncycastle.crypto.engines.Salsa20Engine protected int getNonceSize() { return 12; } /* JADX INFO: Access modifiers changed from: protected */ @Override // org.bouncycastle.crypto.engines.Salsa20Engine public void setKey(byte[] bArr, byte[] bArr2) { if (bArr != null) { if (bArr.length != 32) { StringBuilder sb = new StringBuilder(); sb.append(getAlgorithmName()); sb.append(" requires 256 bit key"); throw new IllegalArgumentException(sb.toString()); } packTauOrSigma(bArr.length, this.engineState, 0); Pack.littleEndianToInt(bArr, 0, this.engineState, 4, 8); } Pack.littleEndianToInt(bArr2, 0, this.engineState, 13, 3); } @Override // org.bouncycastle.crypto.engines.Salsa20Engine protected void retreatCounter(long j) { int i = (int) (j >>> 32); int i2 = (int) j; if (i != 0) { throw new IllegalStateException("attempt to reduce counter past zero."); } if ((this.engineState[12] & KeyboardMap.kValueMask) < (KeyboardMap.kValueMask & i2)) { throw new IllegalStateException("attempt to reduce counter past zero."); } int[] iArr = this.engineState; iArr[12] = iArr[12] - i2; } @Override // org.bouncycastle.crypto.engines.Salsa20Engine protected void retreatCounter() { if (this.engineState[12] == 0) { throw new IllegalStateException("attempt to reduce counter past zero."); } this.engineState[12] = r0[12] - 1; } @Override // org.bouncycastle.crypto.engines.Salsa20Engine protected void resetCounter() { this.engineState[12] = 0; } @Override // org.bouncycastle.crypto.engines.Salsa20Engine protected long getCounter() { return this.engineState[12] & KeyboardMap.kValueMask; } @Override // org.bouncycastle.crypto.engines.Salsa20Engine, org.bouncycastle.crypto.StreamCipher public String getAlgorithmName() { StringBuilder sb = new StringBuilder("ChaCha"); sb.append(this.rounds); return sb.toString(); } @Override // org.bouncycastle.crypto.engines.Salsa20Engine protected void generateKeyStream(byte[] bArr) { ChaChaEngine.chachaCore(this.rounds, this.engineState, this.x); Pack.intToLittleEndian(this.x, bArr, 0); } @Override // org.bouncycastle.crypto.engines.Salsa20Engine protected void advanceCounter(long j) { int i = (int) (j >>> 32); int i2 = (int) j; if (i > 0) { throw new IllegalStateException("attempt to increase counter past 2^32."); } int i3 = this.engineState[12]; int[] iArr = this.engineState; iArr[12] = iArr[12] + i2; if (i3 != 0 && this.engineState[12] < i3) { throw new IllegalStateException("attempt to increase counter past 2^32."); } } @Override // org.bouncycastle.crypto.engines.Salsa20Engine protected void advanceCounter() { int[] iArr = this.engineState; int i = iArr[12] + 1; iArr[12] = i; if (i == 0) { throw new IllegalStateException("attempt to increase counter past 2^32."); } } }