程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> C#Excel文件加密實現,支持xlsx、docx、pptx(C#\Net\Asp.Net),

C#Excel文件加密實現,支持xlsx、docx、pptx(C#\Net\Asp.Net),

編輯:關於.NET

C#Excel文件加密實現,支持xlsx、docx、pptx(C#\Net\Asp.Net),


從此刻開始,我已封閉!概不接客!

  像風一樣的男人,像風一樣的性格,無拘無束,不拘一格。那麼問題來了,當風遇到沙,不一定你是風兒,我是沙兒纏纏綿綿,。也許是漫天黃沙,飛粒走石。如果我們期望擒住這漫天的塵埃,必須有強有力的手臂!那麼曬網、撒網、收網!讓他老實的封閉起來吧,永遠相依偎,阿拉!

讀在最前面:

  1、Excel文件加密實現,本文以 Microsoft Office 2007 為案例進行說明。

  2、Microsoft Office 2007  Office 基於 Open XML file(又稱 OOXML or OpenXML or MOX ,是一種以XML為基礎並以ZIP格式壓縮的電子文件規范,支持文件、表格、備忘錄、幻燈片等文件格式)

  3、本文可實現C端Excel加密、S端Excel加密(不需要安裝任何服務器組件,告別一切煩惱)。

  4、本文加密方式可實現對.docx, .xlsx, .pptx等文件類型的加密。

 

那麼,讓我們上酸菜!

1、下載我們的依賴組件

加密組件下載 

2、加密!開工!Over!

 項目中引入NPOI.POIFS.dll,NPOI.Util.dll,OfficeOpenXmlCrypto.dll ,細節實現代碼如下:

using (OfficeCryptoStream stream = OfficeCryptoStream.Open(@"location"))
{
     stream.Password = "password";
     stream.Save();
}

   備注:

   1、代碼說明:location:加密文件路徑,password:加密密碼

      2、加密原理:基於AES128 ,加密秘鑰生成方式:SHA1,具體加密技術細節參見MS-OFFCRYPTO

   3、其他加密技術棧: EPPlus class library,OpenXml 2.0 SDK 參見爆炸網類似加密qa

   4、如果在iis上部署,需要啟用網站對應應用程序池的32位模式。

   5、參考鏈接(全是牆,自備VPN):

     (1)、http://www.lyquidity.com/devblog/?p=35

     (2)、https://msdn.microsoft.com/en-us/library/cc313071.aspx

     (3)、https://en.wikipedia.org/wiki/Office_Open_XML

     (4)、https://code.google.com/archive/p/ooxmlcrypto/

 

 by:海豚灣-豐

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved