最近工作在做 交接他人写的 license 注册码 生成 以及 验证 跟产品相关的模块
-----------------
license 设计思想:
首先由客户生成注册码 跟客户主机ip相关 就是 hostname 加密后的码
然后 在根据 时间等随机产生序列号
客户将注册码发给公司,然后 用注册码 ,序列号 以及产品的其它相关信息
生成 .lic二进制文件或者.txt文本文件 ,
然后客户在那这个文件 通过命令的方式 将其导入到产品中。
数据结构:
product.title
product.version
product.type
product.interval
product.date
serial.number
public.key
customer.name
register.code
register.description
ak md5码 防止篡改
====================================
public static String generateSerialNum(){
StringBuffer str = new StringBuffer();
String[] randArr = {"0","1","2","...9","A","..","Z"};
for(int i=0;i<13;i++){
int index = (int)(randArr.length * Math.random());
str.append(randArr[index]);
}
Timestamp ts = new Timestamp(System.currentTimeMillis());
String timeStr = ts.toString();
timeStr = timeStr.replace("-", "");
timeStr = timeStr.replace(" ", "");
timeStr = timeStr.replace(":", "");
timeStr = timeStr.substring(0,14);
for(int i=0;i<7;i++){
int index = Integer.parseInt(timeStr.substring(i*2,i*2 + 2))% randArr.length;
str.append(randArr[index]);
}
String result = str.toString();
result = result.substring(0,4) + "-" + result.substring(4,10) + "-" + result.substring(10,16)
+ result.substring(16,20);
return result;
}
----------------
接下来 就是 加密 解密方法 以及 通过 bat 调用java程序 命令设计
分享到:
相关推荐
4. **集成RESTful API**:为了方便管理和更新License,可以设计一个RESTful API接口,允许用户上传或更新License。这样,开发者或管理员可以通过HTTP请求与后端服务交互。 5. **错误处理与日志**:在验证过程中,...
根据上述的设计思路,选择注册码方式更适合本项目。许可证管理系统使用RSA非对称加密算法,用私钥对用户信息进行加密,生成注册码,发放给用户。软件系统取得用户输入的注册码内容,通过公钥进行解密,得到用户信息...
而“ORCAD_10.3_Licence生成程序”正是为了解决这一问题而设计的工具。通过这个生成器,用户可以自动生成适用于ORCAD 10.3的新LICENSE.DAT文件,以替代原有的过期文件。 使用Licence生成程序的过程一般包括以下几个...
总的来说,"vivado_2016.4_licence.lic" 文件是Vivado 2016.4版本的核心组件,它确保了用户可以充分利用该工具进行FPGA设计。理解和管理好这个许可证文件对于任何使用Vivado进行开发的工程师来说都是至关重要的。
总的来说,Vivado 2018.2_licence涉及到的是Xilinx Vivado设计套件的许可证管理,这个特定的许可证文件可能兼容多个版本,大大简化了用户的授权流程。对于FPGA和SoC开发者来说,理解和管理好许可证是确保项目顺利...
描述中的"vivado16.4的licence,亲测可用"表明该许可证文件已经经过验证,可以在Vivado 16.4版本上成功激活,确保用户可以正常使用这个特定版本的软件,进行FPGA设计工作。 "licence vivado16.4"标签进一步强调了这...
总的来说,"licence-reco.zip"项目展示了Pyqt5在GUI设计中的应用,OpenCV在车牌识别中的强大功能,以及TCP通信在数据交换中的关键作用。通过实际操作,学生不仅加深了对这些技术的理解,还锻炼了综合运用和解决问题...
Sublime Text 3在设计上注重用户体验,提供了以下关键特性: 1. **多列编辑**:在单个文档中可以同时编辑多个位置,提高代码修改效率。 2. **分屏显示**:支持多个文件并排查看和编辑,方便比较和协同工作。 3. *...
总结来说,这个示例展示了如何在Java中设计一个简单的许可证生成器,并通过JUnit测试确保其正确工作。实际应用中,许可证控制可能更为复杂,需要考虑安全性和防破解措施,以及与其他系统(如服务器验证)的集成。
Xilinx ISE(Integrated Software Environment)是Xilinx公司推出的一款综合设计环境,专门用于开发基于Xilinx FPGA(Field-Programmable Gate Array)和 CPLD(Complex Programmable Logic Device)的数字逻辑系统...
在这个场景中,"pango vivado licence" 提及的可能是用户在寻找或者讨论关于Vivado软件的授权问题。 首先,让我们深入了解一下Vivado的许可证管理。Xilinx的Vivado使用一种称为“Xilinx License Manager”的机制来...
3. 专业形象:精心设计的徽章使项目看起来更专业,吸引潜在用户和贡献者。 4. 维护者效率:自动化测试和CI/CD状态的实时反馈可以帮助开发者快速发现并解决问题。 总的来说,开源和许可证徽章图标是软件开发中不可或...
EDU LICENCE注册生成软件是针对使用JFLASH烧录程序的教育版(EDU版)用户设计的一个解决方案。在IT领域,"EDU"通常代表教育版,这种版本的软件通常提供给学术机构或学生使用,价格相对较低,但可能在功能上受到一定...
首先,许可证(licence)是使用Vivado进行设计工作的重要组成部分。Xilinx的软件通常需要有效的许可证才能运行,这包括对特定工具的功能限制、时间限制以及支持的硬件平台等。在描述中提到的"Vivado_lic2016.4.lic...
在 FPGA 设计中,许可证(Licence)是至关重要的,因为它们决定了你能使用软件的哪些功能以及可以支持多大规模的 FPGA 芯片。"Quartus 7.2 SP2超强Licence" 提供了更广泛的功能权限,可能包括对高级特性如高速接口...
标题“protues8.3 sp1 licence”涉及的是Proteus软件的一个特定版本——Proteus 8.3 Service Pack 1(SP1)的许可证信息。Proteus是一款广泛应用于电子设计自动化(EDA)领域的仿真软件,由英国Labcenter ...
本文将详细解析“HP Quality Center 10 licence.rar”这一压缩包中的核心知识点,帮助用户理解和使用该工具。 首先,我们关注的重点是“qc10.0_license.txt”文件,这个文件包含了关于HP Quality Center 10的授权...
《CTBS 5.0.3 Licence 与 Access 对照参考代码详解》 在IT行业中,软件授权和数据库管理是两个至关重要的...同时,这也反映了软件设计中关于授权和权限控制的复杂性,需要兼顾灵活性和安全性,以满足各种业务需求。
Trados 2006 Freelance版是一款专为自由翻译工作者设计的专业翻译工具,它以其强大的翻译记忆库功能和术语管理工具,极大地提升了翻译效率和质量。在这款软件中,Licence文件是至关重要的组成部分,它验证用户对软件...
Vivado 2017 是Xilinx公司推出的一款强大的硬件描述语言综合工具,主要用于设计、仿真、验证以及实现FPGA(Field-Programmable Gate Array)芯片的逻辑功能。这款软件是FPGA开发人员的核心工具,它集成了设计、布局...