次の C# コードがあります。
// incoming data - MemoryStream memoryStream
RSACryptoServiceProvider cryptoServiceProvider1 = new RSACryptoServiceProvider();
cryptoServiceProvider1.FromXmlString("<RSAKeyValue><Modulus>...</Modulus><Exponent>AQAB</Exponent><P>...</P><Q>...</Q><DP>...</DP><DQ>...</DQ><InverseQ>...</InverseQ><D>...</D></RSAKeyValue>");
cryptoServiceProvider1.PersistKeyInCsp = true;
RijndaelManaged rijndaelManaged = new RijndaelManaged();
rijndaelManaged.KeySize = 256;
rijndaelManaged.BlockSize = 128;
rijndaelManaged.Mode = CipherMode.CBC;
byte[] numArray3 = new byte[128];
byte[] numArray4 = new byte[16];
// numArray3 & numArray4 - filled with come data;
byte[] rgbKey = cryptoServiceProvider1.Decrypt(numArray3, false);
ICryptoTransform decryptor = rijndaelManaged.CreateDecryptor(rgbKey, numArray4);
CryptoStream cryptoStream = new CryptoStream((Stream) memoryStream, decryptor, CryptoStreamMode.Write);
質問: この機能を node.js (javascript) に移行することは可能ですか?