/// <summary> /// Add the two 512-bit states together. /// </summary> private void AdditionStep(ref uint[] state, uint[] originalState) { for (int i = 0; i < 16; ++i) { state[i] += originalState[i]; } uint[] additionResultState = (uint[])(state.Clone()); AdditionResultState.Add(additionResultState); }
private void ClearIntermediateResults() { // matrices OriginalState.Clear(); OriginalStateDiffusion.Clear(); AdditionResultState.Clear(); AdditionResultStateDiffusion.Clear(); LittleEndianState.Clear(); LittleEndianStateDiffusion.Clear(); // qr QRInput.Clear(); QRInputDiffusion.Clear(); QRStep.Clear(); QRStepDiffusion.Clear(); QROutput.Clear(); QROutputDiffusion.Clear(); InputMessage.Clear(); Keystream.Clear(); KeystreamDiffusion.Clear(); Output.Clear(); OutputDiffusion.Clear(); }