Skip to content

Commit

Permalink
changed from MD5 to SHA256 (#12)
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelschwarz committed Dec 22, 2021
1 parent c89e39b commit 08ca42e
Show file tree
Hide file tree
Showing 5 changed files with 71 additions and 71 deletions.
2 changes: 1 addition & 1 deletion AjaxPro/AjaxPro.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -259,7 +259,7 @@
<Compile Include="Utilities\Constant.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Utilities\MD5Helper.cs">
<Compile Include="Utilities\HashHelper.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Utilities\Utility.cs">
Expand Down
2 changes: 1 addition & 1 deletion AjaxPro/Handler/ConverterJavaScriptHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ public void ProcessRequest(HttpContext context)
}
}

etag = MD5Helper.GetHash(System.Text.Encoding.Default.GetBytes("converter"));
etag = Hash5Helper.GetHash(System.Text.Encoding.Default.GetBytes("converter"));

DateTime now = DateTime.Now;
DateTime lastMod = new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second); //.ToUniversalTime();
Expand Down
2 changes: 1 addition & 1 deletion AjaxPro/Handler/EmbeddedJavaScriptHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ public void ProcessRequest(HttpContext context)
}
}

etag = MD5Helper.GetHash(System.Text.Encoding.Default.GetBytes(fileName));
etag = Hash5Helper.GetHash(System.Text.Encoding.Default.GetBytes(fileName));

DateTime now = DateTime.Now;
DateTime lastMod = new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second); //.ToUniversalTime();
Expand Down
2 changes: 1 addition & 1 deletion AjaxPro/Handler/TypeJavaScriptHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ public void ProcessRequest(HttpContext context)
}

etag = type.AssemblyQualifiedName;
etag = MD5Helper.GetHash(System.Text.Encoding.Default.GetBytes(etag));
etag = Hash5Helper.GetHash(System.Text.Encoding.Default.GetBytes(etag));

DateTime now = DateTime.Now;
DateTime lastMod = new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second); // .ToUniversalTime();
Expand Down
134 changes: 67 additions & 67 deletions AjaxPro/Utilities/MD5Helper.cs → AjaxPro/Utilities/HashHelper.cs
Original file line number Diff line number Diff line change
@@ -1,67 +1,67 @@
/*
* MD5Helper.cs
*
* Copyright © 2007 Michael Schwarz (http://www.ajaxpro.info).
* All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
* ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/*
* MS 07-04-12 changed MD5 compute hash (using BitConverter, now)
*
*
*/
using System;
using System.Text;
using System.Security.Cryptography;

namespace AjaxPro
{
/// <summary>
/// Provides methods to get a MD5 hash from a string or byte array.
/// </summary>
public class MD5Helper
{
/// <summary>
/// Gets the hash.
/// </summary>
/// <param name="data">The data.</param>
/// <returns></returns>
public static string GetHash(string data)
{
byte[] b = System.Text.Encoding.Default.GetBytes(data);

return GetHash(b);
}

/// <summary>
/// Gets the hash.
/// </summary>
/// <param name="data">The data.</param>
/// <returns></returns>
public static string GetHash(byte[] data)
{
// This is one implementation of the abstract class MD5.
MD5 md5 = new MD5CryptoServiceProvider();

return BitConverter.ToString(md5.ComputeHash(data)).Replace("-", String.Empty);
}
}
}
/*
* MD5Helper.cs
*
* Copyright © 2007 Michael Schwarz (http://www.ajaxpro.info).
* All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
* ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/*
* MS 07-04-12 changed MD5 compute hash (using BitConverter, now)
* MS 21-12-22 changed hash algorithm from MD5 to SHA256
*
*/
using System;
using System.Text;
using System.Security.Cryptography;

namespace AjaxPro
{
/// <summary>
/// Provides methods to get a MD5 hash from a string or byte array.
/// </summary>
public class Hash5Helper
{
/// <summary>
/// Gets the hash.
/// </summary>
/// <param name="data">The data.</param>
/// <returns></returns>
public static string GetHash(string data)
{
byte[] b = System.Text.Encoding.Default.GetBytes(data);

return GetHash(b);
}

/// <summary>
/// Gets the hash.
/// </summary>
/// <param name="data">The data.</param>
/// <returns></returns>
public static string GetHash(byte[] data)
{
// This is one implementation of the abstract class MD5.
MD5 md5 = new MD5CryptoServiceProvider();

return BitConverter.ToString(new SHA256Managed().ComputeHash(data)).Replace("-", String.Empty);
}
}
}

0 comments on commit 08ca42e

Please # to comment.