Files
Dec2017-Script-Dump/ICSharpCode.SharpZipLib/Encryption/PkzipClassicEncryptCryptoTransform.cs
T
2026-06-04 11:42:34 +02:00

82 lines
1.9 KiB
C#

using System;
using System.Security.Cryptography;
namespace ICSharpCode.SharpZipLib.Encryption
{
// Token: 0x02000022 RID: 34
internal class PkzipClassicEncryptCryptoTransform : PkzipClassicCryptoBase, ICryptoTransform, IDisposable
{
// Token: 0x060000E7 RID: 231 RVA: 0x00007D3F File Offset: 0x00006D3F
internal PkzipClassicEncryptCryptoTransform(byte[] keyBlock)
{
base.SetKeys(keyBlock);
}
// Token: 0x060000E8 RID: 232 RVA: 0x00007D50 File Offset: 0x00006D50
public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount)
{
byte[] array = new byte[inputCount];
this.TransformBlock(inputBuffer, inputOffset, inputCount, array, 0);
return array;
}
// Token: 0x060000E9 RID: 233 RVA: 0x00007D74 File Offset: 0x00006D74
public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset)
{
for (int i = inputOffset; i < inputOffset + inputCount; i++)
{
byte b = inputBuffer[i];
outputBuffer[outputOffset++] = inputBuffer[i] ^ base.TransformByte();
base.UpdateKeys(b);
}
return inputCount;
}
// Token: 0x17000023 RID: 35
// (get) Token: 0x060000EA RID: 234 RVA: 0x00007DB0 File Offset: 0x00006DB0
public bool CanReuseTransform
{
get
{
return true;
}
}
// Token: 0x17000024 RID: 36
// (get) Token: 0x060000EB RID: 235 RVA: 0x00007DB3 File Offset: 0x00006DB3
public int InputBlockSize
{
get
{
return 1;
}
}
// Token: 0x17000025 RID: 37
// (get) Token: 0x060000EC RID: 236 RVA: 0x00007DB6 File Offset: 0x00006DB6
public int OutputBlockSize
{
get
{
return 1;
}
}
// Token: 0x17000026 RID: 38
// (get) Token: 0x060000ED RID: 237 RVA: 0x00007DB9 File Offset: 0x00006DB9
public bool CanTransformMultipleBlocks
{
get
{
return true;
}
}
// Token: 0x060000EE RID: 238 RVA: 0x00007DBC File Offset: 0x00006DBC
public void Dispose()
{
base.Reset();
}
}
}