implements IBlockCipher
0x00x0038
Members 20
| Offset | Size | Name | Type | Flags | Default |
|---|---|---|---|---|---|
| 0x08 | internalState | ulong[] | Private | — | |
| 0x08 | workingKey | ulong[] | Private | — | |
| 0x08 | roundKeys | UInt64[][] | Private | — | |
| 0x04 | wordsInBlock | int | Private | — | |
| 0x04 | wordsInKey | int | Private | — | |
| — | 0x04 | ROUNDS_128 | int | PrivateStatic+1 flags | -1046614912 |
| — | 0x04 | ROUNDS_256 | int | PrivateStatic+1 flags | -1046614912 |
| — | 0x04 | ROUNDS_512 | int | PrivateStatic+1 flags | -1046614912 |
| 0x04 | roundsAmount | int | Private | — | |
| 0x01 | forEncryption | bool | Private | — | |
| — | 0x08 | mdsMatrix | ulong | PrivateStatic+1 flags | 2004703112320 |
| — | 0x08 | mdsInvMatrix | ulong | PrivateStatic+1 flags | 2004703112320 |
| 0x08 | S0 | byte[] | PrivateStatic+1 flags | — | |
| 0x08 | S1 | byte[] | PrivateStatic+1 flags | — | |
| 0x08 | S2 | byte[] | PrivateStatic+1 flags | — | |
| 0x08 | S3 | byte[] | PrivateStatic+1 flags | — | |
| 0x08 | T0 | byte[] | PrivateStatic+1 flags | — | |
| 0x08 | T1 | byte[] | PrivateStatic+1 flags | — | |
| 0x08 | T2 | byte[] | PrivateStatic+1 flags | — | |
| 0x08 | T3 | byte[] | PrivateStatic+1 flags | — |
Functions 29
| Signature | Flags | Native | Params |
|---|---|---|---|
| void .ctor(int blockSizeBits) | Public+1 flags | 0x04 | |
| void Init(bool forEncryption, ICipherParameters parameters) | Public+2 flags | 0x08 | |
| void WorkingKeyExpandKT(const ulong[]& workingKey, const ulong[]& tempKeys) | Private | 0x08 | |
| void WorkingKeyExpandEven(const ulong[]& workingKey, const ulong[]& tempKey) | Private | 0x08 | |
| void WorkingKeyExpandOdd() | Private | 0x00 | |
| int ProcessBlock(const byte[]& input, int inOff, const byte[]& output, int outOff) | Public+2 flags | 0x08 | |
| int ProcessBlock(const ReadOnlySpan<System.Byte>& input, const Span<System.Byte>& output) | Public+2 flags | 0x10 | |
| void EncryptionRound() | Private | 0x00 | |
| void DecryptionRound() | Private | 0x00 | |
| void DecryptBlock_128(const ReadOnlySpan<System.Byte>& input, const Span<System.Byte>& output) | Private | 0x10 | |
| void EncryptBlock_128(const ReadOnlySpan<System.Byte>& input, const Span<System.Byte>& output) | Private | 0x10 | |
| void SubBytes() | Private | 0x00 | |
| void InvSubBytes() | Private | 0x00 | |
| void ShiftRows() | Private | 0x00 | |
| void InvShiftRows() | Private | 0x00 | |
| void AddRoundKey(int round) | Private | 0x04 | |
| void SubRoundKey(int round) | Private | 0x04 | |
| void XorRoundKey(int round) | Private | 0x04 | |
| ulong MixColumn(ulong c) | PrivateStatic | 0x08 | |
| void MixColumns() | Private | 0x00 | |
| ulong MixColumnInv(ulong c) | PrivateStatic | 0x08 | |
| void MixColumnsInv() | Private | 0x00 | |
| ulong MulX(ulong n) | PrivateStatic | 0x08 | |
| ulong MulX2(ulong n) | PrivateStatic | 0x08 | |
| ulong Rotate(int n, ulong x) | PrivateStatic | 0x08 | |
| void RotateLeft(const ulong[]& x, const ulong[]& z) | Private | 0x08 | |
| string get_AlgorithmName() | Public+3 flags | 0x08 | |
| int GetBlockSize() | Public+2 flags | 0x04 | |
| void .cctor() | PrivateStatic+1 flags | 0x00 |