Skip to content

Instantly share code, notes, and snippets.

View skradel's full-sized avatar

Steve Kradel skradel

View GitHub Profile

Keybase proof

I hereby claim:

  • I am skradel on github.
  • I am skradel (https://keybase.io/skradel) on keybase.
  • I have a public key ASCUBP6pDvS8PdmzzDSQuyNO6hZZj1_Knzgw-L0XqTVJ-wo

To claim this, I am signing this object:

@skradel
skradel / HashSample.cs
Created February 17, 2014 19:56
Zetetic.Security 1.1.0.0 usage and timing example
void Main()
{
System.Runtime.InteropServices.RuntimeEnvironment.SystemConfigurationFile.Dump();
var rng = new System.Security.Cryptography.RNGCryptoServiceProvider();
byte[] key = new byte[16], data = new byte[120];
rng.GetBytes(key);
rng.GetBytes(data);
foreach (var name in new[]{"BCRYPT12", "PBKDF256"})
@skradel
skradel / machine_config_snippet.xml
Last active August 29, 2015 13:56
New Zetetic.Security 1.1.0.0 HashAlgorithms
<mscorlib>
<cryptographySettings>
<cryptoNameMapping>
<cryptoClasses>
<cryptoClass PBKDF2="Zetetic.Security.Pbkdf2Hash, Zetetic.Security, Version=1.1.0.0, Culture=neutral, PublicKeyToken=86474ebf447b9da7" />
<cryptoClass PBKDF256="Zetetic.Security.Pbkdf2Hash256K, Zetetic.Security, Version=1.1.0.0, Culture=neutral, PublicKeyToken=86474ebf447b9da7" />
<cryptoClass BCRYPT="Zetetic.Security.BCryptHash, Zetetic.Security, Version=1.1.0.0, Culture=neutral, PublicKeyToken=86474ebf447b9da7" />
<cryptoClass BCRYPT12="Zetetic.Security.BCryptHash12, Zetetic.Security, Version=1.1.0.0, Culture=neutral, PublicKeyToken=86474ebf447b9da7" />
<cryptoClass BCRYPT14="Zetetic.Security.BCryptHash14, Zetetic.Security, Version=1.1.0.0, Culture=neutral, PublicKeyToken=86474ebf447b9da7" />
<cryptoClass BCRYPT16="Zetetic.Security.BCryptHash16, Zetetic.Security, Version=1.1.0.0, Culture=neutral, PublicKeyToken=86474ebf447b9da7" />
@skradel
skradel / fim-hierarchy.sql
Created April 5, 2012 22:49
Fix FIM Rollup 2 provisioning hierarchy
update mms_management_agent
set component_mappings_xml = N'<component_mappings><mapping><dn_component>ou</dn_component><object_class>organizationalUnit</object_class></mapping></component_mappings>'
where ma_name = 'ad'
@skradel
skradel / hashtimings.txt
Created March 29, 2012 19:08
Simple hash alg timings
Timings apropos to article: http://zetetic.net/blog/2012/3/29/strong-password-hashing-for-aspnet.html
500 iterations on a 4-core i7 920;
PBKDF2 work factor 5000, bcrypt default logfactor 10
Update 30-Mar-2012: Added two cycles to shake out oddly slow MD5 performance.
0 System.Security.Cryptography.MD5CryptoServiceProvider -> 220272 ticks
0 System.Security.Cryptography.SHA1CryptoServiceProvider -> 10620 ticks
0 System.Security.Cryptography.SHA256CryptoServiceProvider -> 14470 ticks
@skradel
skradel / Web.config.xml
Created March 29, 2012 18:06
Web.config example with custom hashAlgorithmType
<membership defaultProvider="ssp"
userIsOnlineTimeWindow="20"
hashAlgorithmType="PBKDF2">
<providers>
<clear/>
<add name="ssp"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="ApplicationServices"
passwordFormat="Hashed"
enablePasswordRetrieval="false"
@skradel
skradel / machine.config.xml
Created March 29, 2012 18:04
Including Zetetic.Security hash algorithms in .NET machine.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!-- bunch of other stuff -->
<mscorlib>
<cryptographySettings>
<cryptoNameMapping>
<cryptoClasses>
<cryptoClass PBKDF2="Zetetic.Security.Pbkdf2Hash, Zetetic.Security, Version=1.0.0.0, Culture=neutral, PublicKeyToken=86474ebf447b9da7" />
<cryptoClass BCRYPT="Zetetic.Security.BCryptHash, Zetetic.Security, Version=1.0.0.0, Culture=neutral, PublicKeyToken=86474ebf447b9da7" />
</cryptoClasses>
@skradel
skradel / Timing.cs
Created March 16, 2012 17:17
Rfc2898 timings
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;
using System.Threading.Tasks;
namespace Pbkdf2Time
{
class Program