2017-05-25 72 views
-2

所以我有這樣的想法,但我不知道是否有可能...您可以將文件中的字節流式傳輸到任何程序嗎?

這裏的理念是:

作爲一個例子,我將使用一個.doc文件和Word。我想將此 .doc文件加密到.encrypt文件。然後在我的程序中解密文件並強制文件加載文件對象。

或者我需要解密文件,寫入硬盤,然後打開/編輯文件保存它,然後再次加密?

或者還有沒有想過的另一種方法?

希望你們中的一些人能幫忙:)

+1

將路徑指向該文件的解密,存儲到光盤,可執行文件。 – Antoniossss

+0

因此,我無法繞過讓文件變得脆弱的步驟嗎? – Lagoni

+1

當它加載到應用程序中時,它仍然很脆弱,特別是如果程序創建自動備份/更改控制或數據被換出到磁盤。 –

回答

1

你可以,但是有一些工作要做到。 Microsoft對象鏈接和嵌入(OLE)和通用對象模型(COM)提供您需要的一切。 AFAIK,它不能移植到任何其他架構,但是你可以在Windows上構建它。代碼示例的詳細解釋對於SO答案來說太大了,所以我只會給出指針。

這裏你需要的是構建一個COM客戶端,它將能夠支持作爲COM服務器的Word對象。您的客戶應該能夠通過自定義名稱提供加密存儲。它應該可以工作,因爲它或多或少地可以將Word對象包含在Excell工作表中。

如果您對COM編程沒有多少經驗,請不要直接嘗試。如果您不知道Microsoft高級模板庫,請不要嘗試。恕我直言的要求是:

  • 一個MSCV環境的完整文檔COM客戶端和服務器的
  • 例子 - 遵循教程MSVC文檔,如果你還沒有他們嵌入的對象持久化的已建成
  • 例子 - 同樣按照教程

一旦你有了這些,你應該能夠指定和建立一個專用的OLE客戶端,它包含一個Word對象併爲它提供加密存儲。在你的追求好運...


但是,不要期望這是比unencrypting通過Word中的文件,處理它,完成後再次encryting它更安全。好的,對於尋找.doc或.docx文件的腳本小子來說是免疫的,但是一旦在Word中加載文檔以便編輯文檔,Word程序就可以被操作(通過自動化或通過直接發送鍵盤消息)邪惡的一段代碼。從安全角度或觀點來看,如果有些東西是您的機器不能信任的,則不再是(僅)您的機器。

+0

感謝那些細節,我會研究它!一個問題,對我來說,這聽起來像只適用於微軟程序?我正在尋找的唯一解決方案是確保文件在解密時儘可能安全。這種方式的一步可能不是將它們存儲在硬盤上。 – Lagoni

相關問題