You would have to step through in a debugger and look at the actual byte[] values that result when converting from the base64 string. And then compare that to an attemped SHA1 encoding using the same cleartext password that was used to generate the hashed passwords in the first place. Just looking at the base 64 strings above won't help since base64 encoding adds in its own pad characters - so its not clear from above if either the password or hash have been clipped.
For reference, this is the code the Sql membership provider reliese on for hashing passwords. This code is also available for download as part of the overall ASP.NET provider tooklit up on MSDN.
internal string EncodePassword(string pass, int passwordFormat, string salt)
{
if (passwordFormat == 0) // MembershipPasswordFormat.Clear
return pass;
byte[] bIn = Encoding.Unicode.GetBytes(pass);
byte[] bSalt = Convert.FromBase64String(salt);
byte[] bAll = new byte[bSalt.Length + bIn.Length];
byte[] bRet = null;
Buffer.BlockCopy(bSalt, 0, bAll, 0, bSalt.Length);
Buffer.BlockCopy(bIn, 0, bAll, bSalt.Length, bIn.Length);
if (passwordFormat == 1)
{ // MembershipPasswordFormat.Hashed
HashAlgorithm s = HashAlgorithm.Create( Membership.HashAlgorithmType );
bRet = s.ComputeHash(bAll);
} else
{
bRet = EncryptPassword( bAll );
}
return Convert.ToBase64String(bRet);
}