前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JShaman的域名锁定功能,支持泛域名

JShaman的域名锁定功能,支持泛域名

原创
作者头像
用户8703799
发布2023-08-21 21:35:10
2090
发布2023-08-21 21:35:10
举报
文章被收录于专栏:javascript技术javascript技术

JShaman的域名锁定功能,支持泛域名

JShaman的JS代码混淆加密中,有一项“域名锁定”功能。使用此功能后,代码运行时会检测浏览器地址中的域名信息,如是非指定域名,则不运行,以此防止自己网站的JS代码被复制他人的网站中使用的盗用行为。

此功能,使用非常灵活,支持多域名,且支持泛域名。

本文演示泛域名的设置方法及保护后的效果。

1、首先在本地搭建一个web服务器,以方便测试。

服务器用nodejs实现,监听80端口,收到请求时读取文件并返回,服务器代码:

2、使用本地host文件,解析两个子域名到本地,如下:

3、编写一个简单的html文件,包含两行js代码:

4、使用在hosts文件中设定的域名进行访问:

此时测试环境已准备好。接下来,进行正式测试。

5、将上面两行js代码复制到JShaman准备进行混淆加密:

在配置中,进行正确设置:

然后进行js代码的混淆加密:

加密后,将加密的代码复制回原来位置:

此时,再访问,混淆加密时设定了一级域名,用二级域名访问:

可见,两个子域名访问时,加密后的js代码都可以正确执行。

6、此时,再在hosts中新增一个本地域名解析:

再用此域名访问:

由图可见,web服务器后端已经收到请求,但浏览器无法打开页面,并会跳转到about:blank空白页面。

7、结论:域名锁定已生效。效果:在设定域名的子域名下,代码正常执行,页面正常打开。在非设定的域名下,js代码无法执行、页面无法打开。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com