2011-12-02 166 views
0

我正在爲一家公司開發一個項目,該公司已有幾年前由另一家公司開發的軟件。麻煩的是,他們用VB6構建了應用程序,並且方便地將數據存儲在加密的XML文件中。 「加密的XML?!」,你可能會問?是的,它顯然是用嵌入式密鑰加密完成的。我不是密碼專家,所以我打電話尋求幫助。任何想法,我應該用什麼密碼來解密這個?我該如何破解這個加密的XML?

格式:(注意,該文件被分成2個部分...關鍵&數據)

<CryptoXML> 

    <EncryptedKey> 
     <CipherData> 
      <CipherValue><![CDATA[.........]]></CipherValue> 
     </CipherData> 
    </EncryptedKey> 

    <EncryptedData Type="LanguageDefs"> 
     <CipherData> 
      <CipherValue><![CDATA[..........]]></CipherValue> 
     </CipherData> 
    </EncryptedData> 

    </CryptoXML> 

而這裏的全XML file如果你想嘗試。

+0

我可以對使用的密碼有一些幫助嗎?所有人都在說,我在這裏的鑰匙是無用的。有人可以推薦一些方法,這樣我至少可以試試嗎? –

+0

我覺得你很難聽取一般人的意見。 –

回答

1

你想讓我們猜測鑰匙還是你有鑰匙?我99.9%確定密鑰是在應用程序中編碼的,並且有足夠的耐心可以從那裏獲得。 XML塊本身看起來就像遵循XMLEnc標準,所以你可以使用你選擇的庫來處理數據(如果你有一個密鑰)。

+0

嘿,關鍵似乎在上面的「EncryptedKey」部分.... XML文件被分成2個部分....一個用於密鑰,另一個用於數據。我認爲它是完全獨立的。你能告訴我如何解密數據嗎?哪個密碼? AES? –

+2

@Jenko不,EncryptedKey是另一回事。 EncryptedKey是一個密鑰,用於加密數據,正確。但是,這個EncryptedKey本身是加密的形式,你需要有密鑰(不同的)來解密EncryptedKey。 –

+0

我認爲EncryptedKey沒有加密,但它只是以文本格式存儲的二進制數據。如果我想要一些快速的n-dirty加密,我會做什麼。將密鑰和數據放在附近,使用密鑰解密數據。所以我打算以二進制形式讀取數據,但是我仍然需要密碼。是什麼讓你認爲密鑰是加密的? –