public static string SimpleDecrypt(string enc) { byte[] t = Base64.Decode(Encoding.ASCII.GetBytes(enc)); byte[] key = Encoding.ASCII.GetBytes("- BOBO VIERI 32-"); Rijndael rijndael = new Rijndael(); rijndael.InitializeKey(key); byte[] d = new byte[t.Length]; rijndael.decryptCBC(t, 0, t.Length, d, 0); return(Encoding.ASCII.GetString(d)); //パディングがあってもNULL文字になるので除去されるはず }
public RijindaelCipher2(byte[] key, byte[] iv, CipherAlgorithm algorithm) { _rijindael = new Rijndael(); _rijindael.SetIV(iv); _rijindael.InitializeKey(key); if (algorithm == CipherAlgorithm.AES256CTR || algorithm == CipherAlgorithm.AES192CTR || algorithm == CipherAlgorithm.AES128CTR) { isCTR = true; } else { isCTR = false; } }
public static string SimpleEncrypt(string plain) { byte[] t = Encoding.ASCII.GetBytes(plain); if ((t.Length % 16) != 0) { byte[] t2 = new byte[t.Length + (16 - (t.Length % 16))]; Array.Copy(t, 0, t2, 0, t.Length); for (int i = t.Length + 1; i < t2.Length; i++) //残りはダミー { t2[i] = t[i % t.Length]; } t = t2; } byte[] key = Encoding.ASCII.GetBytes("- BOBO VIERI 32-"); Rijndael rijndael = new Rijndael(); rijndael.InitializeKey(key); byte[] e = new byte[t.Length]; rijndael.encryptCBC(t, 0, t.Length, e, 0); return(Encoding.ASCII.GetString(Base64.Encode(e))); }
public RijindaelCipher2(byte[] key, byte[] iv) { _rijindael = new Rijndael(); _rijindael.SetIV(iv); _rijindael.InitializeKey(key); }
public RijindaelCipher2(byte[] key, byte[] iv, CipherAlgorithm algorithm) { _rijindael = new Rijndael(); _rijindael.SetIV(iv); _rijindael.InitializeKey(key); if (algorithm == CipherAlgorithm.AES256CTR || algorithm == CipherAlgorithm.AES192CTR || algorithm == CipherAlgorithm.AES128CTR) isCTR = true; else isCTR = false; }