Heim >Backend-Entwicklung >PHP-Tutorial >代码加密
用ThinkPHP3.2写的一个程序,在本地localhost运行,怎样设置保护措施让这个程序无法被复制、查看,但是能用浏览器访问运行?
zend 加密
可以配合读取硬件信息的程序,比如读硬盘序列号网卡物理地址,生成一个licence文件,每次打开页面验证一下是否存在与物理信息一致,不一致就提示需要更新licence结束程序。
或者可以使用safenet加密狗(php调用加密狗的com程序),防复制
再用杂凑和zend加密代码。
。。。还没遇到过代码会被下载复制的,除了前台页面。
zend 加密
可以配合读取硬件信息的程序,比如读硬盘序列号网卡物理地址,生成一个licence文件,每次打开页面验证一下是否存在与物理信息一致,不一致就提示需要更新licence结束程序。
或者可以使用safenet加密狗(php调用加密狗的com程序),防复制
再用杂凑和zend加密代码。
举个例子(这段代码可以仅可以在Windows下运行)获得硬盘的硬件信息并生成一个sha-1摘要,把这个信息写到文件里作为一个license,运行php程序的时候,定期检查一下,license文件是否存在,内容是否正确,以防止用户复制代码换机器使用。
<?phpfunction _getHardDiskInfo(){ $wmi=new COM("Winmgmts://./root/cimv2"); $wqd=$wmi->ExecQuery("Select * From Win32_DiskDrive"); foreach($wqd as $row){ $IDS[]=$row->PNPDeviceID; } return sha1(join('-',$IDS));}echo _getHardDiskInfo();
举个例子(这段代码可以仅可以在Windows下运行)获得硬盘的硬件信息并生成一个sha-1摘要,把这个信息写到文件里作为一个license,运行php程序的时候,定期检查一下,license文件是否存在,内容是否正确,以防止用户复制代码换机器使用。
<?phpfunction _getHardDiskInfo(){ $wmi=new COM("Winmgmts://./root/cimv2"); $wqd=$wmi->ExecQuery("Select * From Win32_DiskDrive"); foreach($wqd as $row){ $IDS[]=$row->PNPDeviceID; } return sha1(join('-',$IDS));}echo _getHardDiskInfo();