読者です 読者をやめる 読者になる 読者になる

kagasu’s blog

備忘録

.NET Core AESで暗号化、複合する

Ⅰ. はじめに

.NET CoreではRijndaelManagedAesCryptoServiceProviderクラスが使えません。※2017 Q1の終わりごろに追加されるようです。詳しくは※1
代わりにAesクラスを利用します。

Aesクラスではブロック長が可変ですが、
ブロック長 256bit はサポートされていません。
詳しくは※1

※1
http://kagasu.hatenablog.com/entry/2017/01/04/213533

Ⅱ. Aesを利用した複合の例

public byte[] DecryptRijndael(byte[] bytes)
{
  Aes aes = Aes.Create();
  aes.Padding = PaddingMode.None;
  aes.Mode = CipherMode.CBC;
  aes.KeySize = 128;
  aes.BlockSize = 128;

  using (var decryptor = aes.CreateDecryptor(key, iv))
  {
    return decryptor.TransformFinalBlock(bytes, 0, bytes.Length);
  }
}