Org.BouncyCastle.Crypto.Engines.BlowfishEngine.EncryptBlock C# (CSharp) Method

EncryptBlock() private method

private EncryptBlock ( byte src, int srcIndex, byte dst, int dstIndex ) : void
src byte
srcIndex int
dst byte
dstIndex int
return void
        private void EncryptBlock(
            byte[] src,
            int srcIndex,
            byte[] dst,
            int dstIndex)
        {
            uint xl = Pack.BE_To_UInt32(src, srcIndex);
            uint xr = Pack.BE_To_UInt32(src, srcIndex + 4);

            xl ^= P[0];

            for (int i = 1; i < ROUNDS; i += 2)
            {
                xr ^= F(xl) ^ P[i];
                xl ^= F(xr) ^ P[i + 1];
            }

            xr ^= P[ROUNDS + 1];

            Pack.UInt32_To_BE(xr, dst, dstIndex);
            Pack.UInt32_To_BE(xl, dst, dstIndex + 4);
        }