使用分发密钥保护 excel-vba 应用程序

Posted

技术标签:

【中文标题】使用分发密钥保护 excel-vba 应用程序【英文标题】:Protecting excel-vba application with a key for distribution 【发布时间】:2011-06-11 23:18:43 【问题描述】:

我想分发受激活密钥保护的 excel 工作簿

这是我的保护思路的步骤。

    我想创建一个密钥生成器以使用此数据激活工作簿的使用

    a pass provided for myself
    
    activation date
    
    username
    
    当工作簿打开时,询问我的生成器创建的第一个密钥,因此他们需要与我联系以获取使用该产品的密钥。

    输入key时,excel工作簿必须

    a) 锁定工作簿保存到工作的位置,

    b) 使用此标准在内部更改激活密钥。

    activation key
    
    a pass emmbeded in code
    
    username
    

这样,当工作簿被复制到其他位置时,即使在同一台计算机上,也会因为位置的改变和密码的改变,在工作之前要求一个新的密钥。我必须防止被“另存为”以保护它。我将努力工作以超越 2007 年或更高版本。

你怎么看我的想法?

在做那件事之前我从来没有工作过,所以,我需要建议、示例代码以及你想要给我的所有东西,以实现目标。

【问题讨论】:

如果用户没有输入正确的密码,你希望行为是什么?如果他们在禁用 VBA 宏的情况下打开工作簿? 如果他们在禁用宏的情况下打开工作簿,它没有功能,因为有一个第一个按钮可以“进入”具有功能的工作表,没有宏就无法访问。如果密码不正确,msgbox“不正确的密钥”并关闭工作簿 【参考方案1】:

Excel 保护并非旨在以安全的方式处理这种情况:它仅用于处理偶然的​​用户错误。 处理此问题的唯一安全方法是将 Excel 应用程序转换为已编译的 DLL:尽管使用混淆的 .NET 非常接近。

【讨论】:

我不是一个经验丰富的程序员,只是我学会了看书。事实上,vba 是我尝试过的唯一语言。那么,查尔斯我该怎么办?我该怎么做?

以上是关于使用分发密钥保护 excel-vba 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Matlab 编译器:在安装过程中保护软件的重新分发

使用密钥保护 .NET 应用程序 [关闭]

如何保护 Android 应用程序中的 Azure 翻译 API 密钥

如何保护 iOS p12 分发证书?

在 Spring 应用程序中保护重要的密钥/配置

所以我的 Excel-VBA 项目密码很容易被破解……还有啥其他选择?