一个绿色免安装软件,领导临时要求加个注册机制,不能让现场工程师随意复制.事出突然,只能在现场开发(离开现场软件就不受我们控了).花了不到两个小时实现了简单的注册机制,稍作整理. 基本原理:1.软件一运行就把计算机的CPU.主板.BIOS.MAC地址记录下来,然后加密(key=key1)生成文件:2.注册机将该文件内容MD5加密后再进行一次加密(key=key2)保存成注册文件:3.注册验证的逻辑,计算机信息加密后(key=key1)加密md5==注册文件解密(key=key2): 另外,采用Co…
最近做了一个绿色免安装软件,领导临时要求加个注册机制,不能让现场工程师随意复制.事出突然,只能在现场开发(离开现场软件就不受我们控了).花了不到两个小时实现了简单的注册机制,稍作整理.        基本原理:1.软件一运行就把计算机的CPU.主板.BIOS.MAC地址记录下来,然后加密(key=key1)生成文件:2.注册机将该文件内容MD5加密后再进行一次加密(key=key2)保存成注册文件:3.注册验证的逻辑,计算机信息加密后(key=key1)加密md5==注册文件解密(key=key…
◆需求:公司一直以来对开发的产品都没有进行使用时间的控制,要么就是将日期限制写死在程序里面,每次都要编译新程序再发给客户,很不方便.于是公司让我写个模块,要求如下:1.无论哪个新开发的程序只要调用这个模块就可以控制有效期 2.软件到期后需要我们提供有效的注册码软件才能继续使用(输入验证码,对机器和时间进行对比)3.客户修改了电脑的时间或者将软件移动到其他电脑依然可以控制 (可以用你何必要用客户端时间啊,用服务器时间不就解决问题了)4.如果用注册表的方式,不允许当客户知道注册表后,修改注册表还能继…
如何保护软件版权,最常用的办法就是设计一套license验证框架. 1.我们的常规需求如下: .可以限制软件只能在一台机器上使用: 目前很多软件都是一机一码的销售,软件换一台机器则不能使用,想要几台机器使用就得购买几个license: .可以设置一个使用期限: 试用版软件一般有几十天的免费使用期,销售时也可以分为一年版.终生版等: .可以设置能使用的权限: 试用版软件对处理能力有限制,比如短信发送软件设置发送条数限制,抽奖软件设置总人数限制,打印软件试用版插一个软件广告等等: 进一步分析如下:…
1.软件包管理简介 1.软件包分类 源码包 脚本安装包 二进制包(RPM包.系统默认包) 2.源码包 源码包的优点是: 开源,如果有足够的能力,可以修改源代码 可以自由选择所需要的功能 软件设计编译安装,所以更加适合自己的系统,更加稳定有效 卸载方便 源码包的缺点: 安装过程步骤较多,尤其是安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误 编译过程时间较长,安装比二进制安装时间长 因为是编译安装,安装过程中一旦报错新手很难解决 3.RPM包 二进制包的优点: 包管理系统简单,只通过几…
销售license是商业软件的贯用商业模式.用户向商家购买软件安装盘搭载license许可,才可以使用该软件.我们作为软件开发者,为了保护自身的权益,在软件开发过程中也不可避免的会设计license管控机制.下面就讲一下设计一个基础的license控制机制需要考虑的方方面面. license管控方式 license大体有两种管控方式,可概括为认证和鉴权.认证是指用户身份认证,鉴权是检验用户是否具备使用软件某些功能的权限. 1. 认证:通过软件的认证机制可以判断用户的身份是否合法,只有身份合法的用…
Linux软件安装管理 学习笔记 软件包简介 软件包分类: 源码包 :脚本安装包 二进制包(RPM 包.系统默认包) 源码包的优点: 开源,如果有足够的能力,可以修改源代码 可以自由选择所需的功能 软件是编译安装,所以更适合自己的系统,更加稳定,也效率更高 卸载方便 源码包的缺点: 安装过程步骤较多,尤其安装较大的软件集合时(如 LAMP),容易出现拼写错误 便宜过程时间较长,安装比二进制安装时间长 因为是编译安装,安装过程中一旦报错新手很难解决 二进制包的优点: 包管理系统简单,只通过几个命令…
mysql介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一. mysql是什么? mysql就是一个基于socket编写的C/S架构的软件客户端软件 mysql自带:如mysql命令,mysqldump命令等 python模块:如…
摘要:软件厂商先在他们的系统上面编译好了我们用户所需要的软件,然后将这个编译好并可执行的软件直接发布给用户安装.不同的 Linux 发行版使用不同的打包系统,一般而言,大多数发行版分别属于两大包管理技术阵营: Debian 的”.deb”,和 Red Hat的”.rpm”.也有一些重要的例外,比方说 Gentoo, Slackware,和 Foresight,但大多数会使用这两个基本系统中的一个.这里将要介绍的是Debian系列发行版的dpkg与apt-*的详细使用方法. 注:本人系统版本[Ub…
[MySQL数据库之数据库相关概念.MySQL下载安装.MySQL软件基本管理.SQL语句] 数据库相关概念 数据库管理软件的由来 数据库管理软件:本质就是个C/S架构的套接字程序. 我们在编写任何程序之前,都需要事先写好基于网络操作一台主机上文件的程序(socket服务端与客户端程序),于是有人将此类程序写成一个专门的处理软件,这就是mysql等数据库管理软件的由来,但mysql解决的不仅仅是数据共享的问题,还有查询效率,安全性等一系列问题,总之,把程序员从数据管理中解脱出来,专注于自己的程序…