相关疑难解决方法(0)

使用C#中的Bouncy Castle加密/解密

我使用"BouncyCastle.Crypto.dll"来加密/解密我的应用程序中的字符串.我正在使用此博客中的以下代码:

  1. 我有一个BCEngine类,与上面提到的链接完全相同.

    public class BCEngine
    {
       private readonly Encoding _encoding;
       private readonly IBlockCipher _blockCipher;
       private PaddedBufferedBlockCipher _cipher;
       private IBlockCipherPadding _padding;
    
       public BCEngine(IBlockCipher blockCipher, Encoding encoding)
       {
          _blockCipher = blockCipher;
          _encoding = encoding;
       }
    
       public void SetPadding(IBlockCipherPadding padding)
       {
           if (padding != null)
             _padding = padding;
       }
    
       public string Encrypt(string plain, string key)
       {
           byte[] result = BouncyCastleCrypto(true, _encoding.GetBytes(plain), key);
           return Convert.ToBase64String(result);
       }
    
       public string Decrypt(string cipher, string key)
       {
          byte[] result = BouncyCastleCrypto(false, Convert.FromBase64String(cipher), key);
          return …
    Run Code Online (Sandbox Code Playgroud)

c# bouncycastle

17
推荐指数
2
解决办法
4万
查看次数

使用 Salt/IV 创建/解密密码

我被要求在一个涉及 Windows 8 加密的项目中执行一项任务。

场景是这样的:

byte[]从服务器得到一个,前 16 个字节是IV,接下来的 128 个是Salt,其余的是文件本身。

然后用户提供一个密码,并使用该密码和盐,我应该创建一个 PKCS5 密钥,迭代 40 次,密钥长度应为 32 字节。

现在我已经拆分了byte[]我需要的 3 个,但我不知道其余的在 Windows C# 中是如何完成的。

c# encryption cryptography windows-runtime windows-store-apps

1
推荐指数
1
解决办法
9953
查看次数