82 lines
1.9 KiB
C#
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();
|
|
}
|
|
}
|
|
}
|