In .NET PKCS#5v2 (which defines PBKDF2) support is available using Rfc2898DeriveBytes
. However it does not let you select the hash algorithm.
var salt = new byte [32]; // do not use it empty :)
var key = new Rfc2898DeriveBytes ("passphrase", salt, 1000).GetBytes (length);