本文整理汇总了C#中System.Security.Cryptography.SymmetricAlgorithm.ShouldNotBeNull方法的典型用法代码示例。如果您正苦于以下问题:C# SymmetricAlgorithm.ShouldNotBeNull方法的具体用法?C# SymmetricAlgorithm.ShouldNotBeNull怎么用?C# SymmetricAlgorithm.ShouldNotBeNull使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Security.Cryptography.SymmetricAlgorithm
的用法示例。
在下文中一共展示了SymmetricAlgorithm.ShouldNotBeNull方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SymmetricEncryptor
/// <summary>
/// Constructor
/// </summary>
/// <param name="algorithm"></param>
/// <param name="key"></param>
public SymmetricEncryptor(SymmetricAlgorithm algorithm, string key) {
algorithm.ShouldNotBeNull("algorithm");
key.ShouldNotBeEmpty("key");
//if(algorithm.GetType().Equals(typeof(RijndaelManaged)))
// throw new NotSupportedException("RijndaelManaged 알고리즘은 지원하지 않습니다. TripleDESCryptoServiceProvider를 사용하시기 바랍니다.");
Algorithm = algorithm;
Key = key;
var newLength = Algorithm.KeySize / 8;
Algorithm.Key = CryptoTool.DerivePassword(Key, newLength);
if(algorithm is Rijndael)
Algorithm.BlockSize = Algorithm.KeySize;
if(IsDebugEnabled)
log.Debug("대칭형 암호화를 수행하는 SymmectricEncryptor를 생성했습니다. Algorithm=[{0}], KeySize=[{1}], BlockSize=[{2}]",
Algorithm, Algorithm.KeySize, Algorithm.BlockSize);
}