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/
转发:http://www.cnblogs.com/teamblog/p/6158140.html
谢谢!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构