从此刻开始,我已封闭!概不接客!

  像风一样的男人,像风一样的性格,无拘无束,不拘一格。那么问题来了,当风遇到沙,不一定你是风儿,我是沙儿缠缠绵绵,。也许是漫天黄沙,飞粒走石。如果我们期望擒住这漫天的尘埃,必须有强有力的手臂!那么晒网、撒网、收网!让他老实的封闭起来吧,永远相依偎,阿拉!

读在最前面:

  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:海豚湾-丰

C#Excel文件加密实现,支持xlsx、docx、pptx(C#\Net\Asp.Net)的更多相关文章

  1. 【转载】WPS通过设置密码的方式对Excel文件加密

    有时候Excel文件中可能包含一些敏感数据,此时希望对Excel文件进行加入密码的形式进行加密保护,在WPS软件和Office Excel软件中都支持对Excel文件进行密码保护,设置了密码保护的Ex ...

  2. 使用NPOI或EPPlus来导出Excel文件实例,可在Excel文件加密

    使用NPOI.dll组件来导出Excel文件,并设置样式,Nuget引用即可. packages\NPOI.2.1.3.1\lib\net20\NPOI.dll #region Excel prote ...

  3. C#仪器数据文件解析-Excel文件(xls、xlsx)

    不少仪器工作站可以将数据导出为Excel文件,包括97-2003版本的xls文件和2007+的xlsx文件. 采集Excel文件相比采集pdf文件更容易.程序更健壮,毕竟Excel中数据有明确的行.列 ...

  4. Python将excel文件从xls转换为xlsx

    本文使用场景:将一个xls格式Excel文件转换为xlsx文件格式.接下来将一步一步演示该操作.你也可以对代码进行修改使其适用于你所需的场景. 安装Python3 首先需要安装Python,我这里安装 ...

  5. Excel文件加密后忘记密码破解方法

    最好使用VBA 工程密码破解方法 新建一个excel文档,然后打开,同时按Alt和F11,进入VBA界面 点击菜单上的插入,模块 在新的窗口粘贴以下代码: Sub crack() Dim i As L ...

  6. java写入excel文件poi

    java写入excel文件 java写入excel文件poi,支持xlsx与xls,没有文件自动创建 package com.utils; import java.io.File; import ja ...

  7. NodeJs实现下载Excel文件

    nodejs作为一门新的语言,报表功能也不是十分完善. (1).js-xlsx : 目前 Github 上 star 数量最多的处理 Excel 的库,支持解析多种格式表格XLSX / XLSM / ...

  8. Java——jxl读取Excel文件

    1.创建文件流,打开EXCEL文件(jxi不支持.xlsx文件,支持.xls) FileInputStream excelFile = new FileInputStream(excelPath); ...

  9. 使用DocumentFormat.OpenXml操作Excel文件.xlsx

    1.开始 DocumentFormat.OpenXml是ms官方给一个操作office三大件新版文件格式(.xlsx,.docx,.pptx)的组件:特色是它定义了OpenXml所包含的所有对象(たぶ ...

随机推荐

  1. Java集合类--温习笔记

    最近面试发现自己的知识框架有好多问题.明明脑子里知道这个知识点,流程原理也都明白,可就是说不好,不知道是自己表达技能没点,还是确实是自己基础有问题.不管了,再巩固下基础知识总是没错的,反正最近空闲时间 ...

  2. Linux C语言解析并显示.bmp格式图片

    /************************* *bmp.h文件 *************************/ #ifndef __BMP_H__ #define __BMP_H__ # ...

  3. Ubuntu下利用Mono,Jexus搭建Asp.Net(MVC) Web服务器

    最近在Ubuntu上搭建了Asp.Net的Web服务器,其中遇到很多问题,整理一下思路,以备后用. 搭建环境以及配套软件 Ubuntu: 11.10 Mono:3.0.6 下载地址(http://do ...

  4. 凭吊一下ASP.NET 5,然后跨平台,越跨越开心

    ASP.NET 5 is dead ASP.NET 5在今年早些时候被宣判死刑了.但是这并不影响我们之前在ASP.NET 5乃至ASP.NET MVC平台上的经验累积--没错,微软改名部门又立功了!他 ...

  5. ENode 2.8 最新架构图简介

    ENode架构图 什么是ENode ENode是一个.NET平台下,纯C#开发的,基于DDD,CQRS,ES,EDA,In-Memory架构风格的,可以帮助开发者开发高并发.高吞吐.可伸缩.可扩展的应 ...

  6. Spring cookie 实战

    测试环境搭建 使用Springboot构建web server, 在测试方法中打印接收的cookie. @RestController @RequestMapping("/register/ ...

  7. 升讯威ADO.NET增强组件(源码):送给喜欢原生ADO.NET的你

    目前我们所接触到的许多项目开发,大多数都应用了 ORM 技术来实现与数据库的交互,ORM 虽然有诸多好处,但是在实际工作中,特别是在大型项目开发中,容易发现 ORM 存在一些缺点,在复杂场景下,反而容 ...

  8. 利用AOP写2PC框架(一)

    并不是很想写这个系列,因为这个2pc单独写一个小架构有点鸡肋.不过也不知道写什么了,先写了再说吧. 整个流程如下图: 关于AOP系列的文章很多,我这里也再重复造一下轮子. 首先,我们定义了一个IAop ...

  9. APUE fig 1.10示例代码的完善--对提示符及输入回车的优化

    APUE 第3版第15页的shell2.c示例程序,运行效果如下: gcc ol.shell.c -o origin_shell ./origin_shell % date 2015年12月13日 星 ...

  10. php下载文件

    $size=filesize($file);$file=fopen($file, "r");ob_start();header("Content-type: applic ...