2012-01-01 21 views
-3

我只想知道這些代碼的含義是什麼?我試圖把它放在C#編譯器中,但它不起作用。RijndaelManaged下的這個代碼是什麼意思?

private byte[] Method_05(string A_0, string A_1) 
{ 
    RijndaelManaged managed = new RijndaelManaged { 
     Key = Convert.FromBase64String(A_0), 
     IV = Convert.FromBase64String(A_1) 
    };strong text 
    Stream manifestResourceStream = base.GetType().Assembly.GetManifestResourceStream("s.Assembly"); 
    CryptoStream stream2 = new CryptoStream(manifestResourceStream, managed.CreateDecryptor(), CryptoStreamMode.Read); 
    byte[] buffer = new byte[manifestResourceStream.Length]; 
    stream2.Read(buffer, 0, buffer.Length); 
    stream2.Close(); 
    manifestResourceStream.Close(); 
    return buffer; 
} 

正是這裏:

Stream manifestResourceStream = base.GetType().Assembly.GetManifestResourceStream("s.Assembly"); 
CryptoStream stream2 = new CryptoStream(manifestResourceStream, managed.CreateDecryptor(), CryptoStreamMode.Read); 
byte[] buffer = new byte[manifestResourceStream.Length]; 
stream2.Read(buffer, 0, buffer.Length); 
stream2.Close(); 
manifestResourceStream.Close(); 
return buffer; 
+0

哪一位*正確*會讓你困惑?你的意思是「它不工作」到底是什麼?你想達到什麼目的? – 2012-01-01 21:14:04

回答

3

你的意思是Stream manifestResourceStream = base.GetType().Assembly.GetManifestResourceStream("s.Assembly");

它讀取此類父級的程序集資源(base引用父類,父類和子類不一定必須位於同一個程序集中)。讀完之後,它使用Rijndael算法進行解密。

考慮到方法的其他部分和命名,您正在查看混淆程序集中的代碼片段的動態加載(但這純粹是猜測)。

2

這一個從嵌入到組件中的資源中檢索流,其中包含該方法的基類的基類被定義。確定什麼樣的流是不可能的,它可以是任何東西,文本文件,圖像。

然後使用RinjdaelManaged壓縮算法解壓縮它。

+0

這條線呢? byte [] buffer = new byte [manifestResourceStream.Length]; – SihereWol 2012-01-01 21:48:11