diff --git a/implement/read-memory-64-bit/CommonConversion.cs b/implement/read-memory-64-bit/CommonConversion.cs deleted file mode 100644 index 198a5c3..0000000 --- a/implement/read-memory-64-bit/CommonConversion.cs +++ /dev/null @@ -1,68 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Security.Cryptography; - -namespace Pine; - -public class CommonConversion -{ - static public byte[] ByteArrayFromStringBase16(string base16) => - Enumerable.Range(0, base16.Length / 2) - .Select(octetIndex => Convert.ToByte(base16.Substring(octetIndex * 2, 2), 16)) - .ToArray(); - - static public string StringBase16FromByteArray(IReadOnlyList bytes) => - BitConverter.ToString(bytes as byte[] ?? [.. bytes]).Replace("-", "").ToLowerInvariant(); - - static public byte[] HashSHA256(byte[] input) => SHA256.HashData(input); - - static public byte[] CompressGzip(byte[] original) - { - using var compressedStream = new System.IO.MemoryStream(); - - using var compressStream = new System.IO.Compression.GZipStream( - compressedStream, System.IO.Compression.CompressionMode.Compress); - - compressStream.Write(original); - compressStream.Flush(); - return compressedStream.ToArray(); - } - - static public byte[] DecompressGzip(byte[] compressed) - { - using var decompressStream = new System.IO.Compression.GZipStream( - new System.IO.MemoryStream(compressed), System.IO.Compression.CompressionMode.Decompress); - - var decompressedStream = new System.IO.MemoryStream(); - decompressStream.CopyTo(decompressedStream); - return decompressedStream.ToArray(); - } - - static public byte[] Deflate(byte[] input) - { - using var deflatedStream = new System.IO.MemoryStream(); - - using var compressor = new System.IO.Compression.DeflateStream( - deflatedStream, System.IO.Compression.CompressionMode.Compress); - - compressor.Write(input, 0, input.Length); - compressor.Close(); - return deflatedStream.ToArray(); - } - - static public byte[] Inflate(IReadOnlyList input) - { - using var inflatedStream = new System.IO.MemoryStream(); - - using var deflateStream = new System.IO.Compression.DeflateStream( - new System.IO.MemoryStream(input as byte[] ?? [.. input]), System.IO.Compression.CompressionMode.Decompress); - - deflateStream.CopyTo(inflatedStream); - - return inflatedStream.ToArray(); - } - - static public string TimeStringViewForReport(DateTimeOffset time) => - time.ToString("yyyy-MM-ddTHH-mm-ss"); -} diff --git a/implement/read-memory-64-bit/Program.cs b/implement/read-memory-64-bit/Program.cs index c2c68fc..34b89af 100644 --- a/implement/read-memory-64-bit/Program.cs +++ b/implement/read-memory-64-bit/Program.cs @@ -57,7 +57,7 @@ static int Main(string[] args) Console.WriteLine("Completed collecting the sample."); - var processSampleId = Pine.CommonConversion.StringBase16FromByteArray( + var processSampleId = Pine.CommonConversion.StringBase16( Pine.CommonConversion.HashSHA256(processSampleFile)); var fileName = "process-sample-" + processSampleId[..10] + ".zip"; @@ -97,7 +97,7 @@ static int Main(string[] args) (IMemoryReader, IImmutableList) GetMemoryReaderAndRootAddressesFromProcessSampleFile(byte[] processSampleFile) { - var processSampleId = Pine.CommonConversion.StringBase16FromByteArray( + var processSampleId = Pine.CommonConversion.StringBase16( Pine.CommonConversion.HashSHA256(processSampleFile)); Console.WriteLine($"Reading from process sample {processSampleId}."); @@ -126,7 +126,7 @@ static int Main(string[] args) (IMemoryReader, IImmutableList) GetMemoryReaderAndWithSpecifiedRootFromProcessSampleFile(byte[] processSampleFile, ulong rootAddress) { - var processSampleId = Pine.CommonConversion.StringBase16FromByteArray( + var processSampleId = Pine.CommonConversion.StringBase16( Pine.CommonConversion.HashSHA256(processSampleFile)); Console.WriteLine($"Reading from process sample {processSampleId}."); @@ -233,8 +233,7 @@ IImmutableList ReadUITrees() => var fileContent = System.Text.Encoding.UTF8.GetBytes(uiTreeAsJson); - var sampleId = Pine.CommonConversion.StringBase16FromByteArray( - Pine.CommonConversion.HashSHA256(fileContent)); + var sampleId = Pine.CommonConversion.StringBase16(Pine.CommonConversion.HashSHA256(fileContent)); var outputFilePath = outputFileArgument; diff --git a/implement/read-memory-64-bit/read-memory-64-bit.csproj b/implement/read-memory-64-bit/read-memory-64-bit.csproj index 0b8d689..21cacd3 100644 --- a/implement/read-memory-64-bit/read-memory-64-bit.csproj +++ b/implement/read-memory-64-bit/read-memory-64-bit.csproj @@ -8,6 +8,7 @@ +