使用C#代码在 Excel 中添加或删除数字签名
数字签名是一种电子签名形式,可用于验证数字文档的真实性和完整性。它可以帮助接收者确认文档的来源,并判断文档在签署之后是否被第三方篡改。本文将演示如何使用 Spire.XLS for .NET,在 C# 和 VB.NET 中为 Excel 添加或删除数字签名。 首先,您需要将 Spire.XLS for .NET 软件包中包含的 DLL 文件添加为 .NET 项目的引用。您可以通过此链接下载这些 DLL 文件,或通过 NuGet 进行安装。 您可以通过添加数字签名来保护 Excel 文件的完整性。添加数字签名后,文件将变为只读状态,以防止进一步编辑。如果有人对文件进行修改,数字签名将立即失效。 Spire.XLS for .NET 提供了 Workbook 类的 AddDigitalSignature 方法,用于为 Excel 文件添加数字签名。 具体步骤如下: 示例代码如下: Spire.XLS for .NET 提供了 Workbook 类的 RemoveAllDigitalSignatures 方法,供开发者用于从 Excel 文件中移除数字签名。 具体步骤如下: 示例代码如下: 如果您希望移除生成文档中的评估提示信息,或解除功能限制,请为自己申请一个 30 天的试用许可证。安装 Spire.XLS for .NET
PM> Install-Package Spire.XLS在 C# 和 VB.NET 中为 Excel 添加数字签名
using Spire.Xls;
using Spire.Xls.Core.MergeSpreadsheet.Interfaces;
using System;
using System.Security.Cryptography.X509Certificates;
namespace AddSignatureInExcel
{
class Program
{
static void Main(string[] args)
{
// 创建 Workbook 实例
Workbook workbook = new Workbook();
// 加载 Excel 文件
workbook.LoadFromFile("Sample.xlsx");
// 为文件添加数字签名
X509Certificate2 cert = new X509Certificate2("gary.pfx", "e-iceblue");
// 定义证书文件路径
string certificatePath = "gary.pfx";
DateTime certtime = new DateTime(2020, 7, 1, 7, 10, 36);
// 使用证书为工作簿添加数字签名
IDigitalSignatures signature = workbook.AddDigitalSignature(certificatePath, "e-iceblue", "Signed by Gary Zhang", certtime);
// 保存结果文件
workbook.SaveToFile("AddDigitalSignature.xlsx", FileFormat.Version2013);
}
}
}在 C# 和 VB.NET 中删除 Excel 中的所有数字签名
using Spire.Xls;
namespace DeleteSignatureInExcel
{
class Program
{
static void Main(string[] args)
{
// 创建 Workbook 实例
Workbook workbook = new Workbook();
// 加载 Excel 文件
workbook.LoadFromFile("AddDigitalSignature.xlsx");
// 移除文件中的所有数字签名
workbook.RemoveAllDigitalSignatures();
// 保存结果文件
workbook.SaveToFile("RemoveDigitalSignature.xlsx", FileFormat.Version2013);
}
}
}申请临时许可证