wasSharpNET – Diff between revs 5 and 10

Subversion Repositories:
Rev:
Show entire fileIgnore whitespace
Rev 5 Rev 10
Line 3... Line 3...
3 // Please see: http://www.gnu.org/licenses/gpl.html for legal details, // 3 // Please see: http://www.gnu.org/licenses/gpl.html for legal details, //
4 // rights of fair usage, the disclaimer and warranty conditions. // 4 // rights of fair usage, the disclaimer and warranty conditions. //
5 /////////////////////////////////////////////////////////////////////////// 5 ///////////////////////////////////////////////////////////////////////////
Line 6... Line 6...
6   6  
-   7 using System;
7 using System; 8 using System.IO;
-   9 using System.Text;
Line 8... Line 10...
8 using System.Text; 10 using System.Threading.Tasks;
9   11  
10 namespace wasSharpNET.Cryptography 12 namespace wasSharpNET.Cryptography
11 { 13 {
Line 18... Line 20...
18 public static string ToHex(this System.Security.Cryptography.SHA1 sha1, byte[] data) 20 public static string ToHex(this System.Security.Cryptography.SHA1 sha1, byte[] data)
19 { 21 {
20 return BitConverter.ToString(sha1.ComputeHash(data)).Replace("-", ""); 22 return BitConverter.ToString(sha1.ComputeHash(data)).Replace("-", "");
21 } 23 }
Line -... Line 24...
-   24  
22   25  
23 public static string ToHex(this System.Security.Cryptography.SHA1 sha1, string data) 26 public static string ToHex(this System.Security.Cryptography.SHA1 sha1, string data)
24 { 27 {
25 return BitConverter.ToString(sha1.ComputeHash(Encoding.UTF8.GetBytes(data))).Replace("-", ""); 28 return BitConverter.ToString(sha1.ComputeHash(Encoding.UTF8.GetBytes(data))).Replace("-", "");
-   29 }
-   30  
-   31 ///////////////////////////////////////////////////////////////////////////
-   32 // Copyright (C) Wizardry and Steamworks 2014 - License: GNU GPLv3 //
-   33 ///////////////////////////////////////////////////////////////////////////
-   34 /// <summary>
-   35 /// Compute the SHA1 hash of an array of bytes and copy the result to the output stream as a hexadecimal string.
-   36 /// </summary>
-   37 /// <param name="sha1">the SHA1 object to use</param>
-   38 /// <param name="data">the data to hash</param>
-   39 /// <param name="outStream">the output stream</param>
-   40 public static async Task CopyToAsync(this System.Security.Cryptography.SHA1 sha1, byte[] data, Stream outStream)
-   41 {
-   42 var buffer = new char[1];
-   43 using (MemoryStream SHA1OutputStream = new MemoryStream())
-   44 {
-   45 using (StringReader SHA1InputStream = new StringReader(BitConverter.ToString(sha1.ComputeHash(data)).Replace("-", "")))
-   46 {
-   47 int count;
-   48 while ((count = await SHA1InputStream.ReadAsync(buffer, 0, 1)) != 0)
-   49 {
-   50 switch (buffer[0])
-   51 {
-   52 case '-':
-   53 continue;
-   54 default:
-   55 SHA1OutputStream.WriteByte((byte)buffer[0]);
-   56 break;
-   57 }
-   58 }
-   59 }
-   60 SHA1OutputStream.Position = 0L;
-   61 await SHA1OutputStream.CopyToAsync(outStream);
-   62 }
26 } 63 }
27 } 64 }
28 } 65 }