チェンジセット 1598 (default)
- 日時:
- 2023/08/21 14:42:03 (14ヵ月前)
- 場所:
- framework/trunk
- ファイル:
-
- 2個の更新
凡例:
- 未変更
- 追加
- 削除
-
framework/trunk/CoreTest/Sources/Security/SecurityUtilityTest.cs
r1520 r1598 43 43 } 44 44 45 /// <summary> 46 /// <see cref="SecurityUtility.HashPassword(string,string)"/> を使用して、 47 /// ハッシュ化が正しいかどうかをテストします。 48 /// </summary> 49 /// <param name="password"> 50 /// ハッシュ化するパスワード。 51 /// </param> 52 /// <param name="hashAlgorithmType"> 53 /// ハッシュアルゴリズムの種類。 54 /// </param> 55 /// <param name="salt"> 56 /// ソルト値。 57 /// </param> 58 /// <param name="expected"> 59 /// ハッシュ化したパスワード。 60 /// </param> 61 [CLSCompliant(false)] 62 [Test] 63 [TestCase("foobar", "SHA1", @"xfq6UUywCxsa83JhC7+y0wiR", @"SHA1$xfq6UUywCxsa83JhC7+y0wiR$aWkY6CPP1Fzeboc/gg04l3kTDvE=")] 64 [TestCase("foobar", "SHA256", @"BTEMg+Yceal44UVGUbQCakBs", @"SHA256$BTEMg+Yceal44UVGUbQCakBs$TnMUd8a14LWTVarucZ90kjo9lYPPFb9tVmBF+MXMT9g=")] 65 [TestCase("foobar", "SHA384", @"y4OV5JL23naieVVO9l7Jao+a", @"SHA384$y4OV5JL23naieVVO9l7Jao+a$2pyXINJOUxn0oFRBcaIPzU9/2VYKQTAB7SUlfpKjck2DwMzbySUHsuH5DxSDpTmp")] 66 [TestCase("foobar", "SHA512", @"aLTRuG3ZHF+lKco7lkNgkSBF", @"SHA512$aLTRuG3ZHF+lKco7lkNgkSBF$E+ZuCNKdY6YAsPr6qBzXr0dELVkp7pJVlawkINoTy1niD1o5sL4O+6ZrTtVixstXWl1KUqzUqp7EsuelLxRcjA==")] 67 [TestCase("foobar", "MD5", @"GP+BgF0lKZViqcFuDXDlqg7n", @"MD5$GP+BgF0lKZViqcFuDXDlqg7n$lP9+xCEJGd4GAq+/cpnYvg==")] 68 [TestCase("foobar", "RIPEMD160", @"Io0mcYhIl7gD5Prm12yjAhUL", @"RIPEMD160$Io0mcYhIl7gD5Prm12yjAhUL$dg/A5/JnTfVGBl7ydRnM/o62LSI=")] 69 public static void TestHashPassword(string password, string hashAlgorithmType, string salt, string expected) 70 { 71 Assert.That( 72 SecurityUtility.HashPassword( 73 password, 74 hashAlgorithmType, 75 Convert.FromBase64String(salt)), 76 Is.EqualTo(expected)); 77 } 45 78 46 79 /// <summary> -
framework/trunk/WebTest/Sources/Security/WebSecurityUtilityTest.cs
r990 r1598 34 34 public class WebSecurityUtilityTest 35 35 { 36 /// <summary>37 /// <see cref="SecurityUtility.HashPassword(string,string)"/> を使用して、38 /// ハッシュ化が正しいかどうかをテストします。39 /// </summary>40 /// <param name="password">41 /// ハッシュ化するパスワード。42 /// </param>43 /// <param name="hashAlgorithmType">44 /// ハッシュアルゴリズムの種類。45 /// </param>46 /// <param name="salt">47 /// ソルト値。48 /// </param>49 /// <param name="expected">50 /// ハッシュ化したパスワード。51 /// </param>52 [CLSCompliant(false)]53 [Test]54 [TestCase("foobar", "SHA1", @"xfq6UUywCxsa83JhC7+y0wiR", @"SHA1$xfq6UUywCxsa83JhC7+y0wiR$aWkY6CPP1Fzeboc/gg04l3kTDvE=")]55 [TestCase("foobar", "SHA256", @"BTEMg+Yceal44UVGUbQCakBs", @"SHA256$BTEMg+Yceal44UVGUbQCakBs$TnMUd8a14LWTVarucZ90kjo9lYPPFb9tVmBF+MXMT9g=")]56 [TestCase("foobar", "SHA384", @"y4OV5JL23naieVVO9l7Jao+a", @"SHA384$y4OV5JL23naieVVO9l7Jao+a$2pyXINJOUxn0oFRBcaIPzU9/2VYKQTAB7SUlfpKjck2DwMzbySUHsuH5DxSDpTmp")]57 [TestCase("foobar", "SHA512", @"aLTRuG3ZHF+lKco7lkNgkSBF", @"SHA512$aLTRuG3ZHF+lKco7lkNgkSBF$E+ZuCNKdY6YAsPr6qBzXr0dELVkp7pJVlawkINoTy1niD1o5sL4O+6ZrTtVixstXWl1KUqzUqp7EsuelLxRcjA==")]58 [TestCase("foobar", "MD5", @"GP+BgF0lKZViqcFuDXDlqg7n", @"MD5$GP+BgF0lKZViqcFuDXDlqg7n$lP9+xCEJGd4GAq+/cpnYvg==")]59 [TestCase("foobar", "RIPEMD160", @"Io0mcYhIl7gD5Prm12yjAhUL", @"RIPEMD160$Io0mcYhIl7gD5Prm12yjAhUL$dg/A5/JnTfVGBl7ydRnM/o62LSI=")]60 public static void TestHashPassword(string password, string hashAlgorithmType, string salt, string expected)61 {62 Assert.That(63 SecurityUtility.HashPassword(64 password,65 hashAlgorithmType,66 Convert.FromBase64String(salt)),67 Is.EqualTo(expected));68 }69 36 } 70 37 }
※ 詳しい使い方は
TracChangeset を参照してください。