动态加密即将上线,后端和管理面板均开源项目,动态加密仅适用于Web端,将代码在此处加密后将得到一个cdn形式的js引用地址,在您的网站上引用改地址后用户每次访问您的网站加载的js都将是不同的加密后的代码。从而大大增加破解难度!
温馨提示: 如果您是初次使用,请先了解每一项配置的应用场景,否则可能导致加密后的代码无法正常运行!

JavaScript代码动态加密

如对设置功能不了解,可将鼠标放在每项后面的蓝色感叹号图标上即可看到对应的解释
如您在使用过程中遇到问题,欢迎点击屏幕右侧的联系我们处“提交问题”,最好有对应的复现代码,以便我们能更好的排查和解决问题😊
代码运行环境
  • 会员特权
    加密配置描述中带有 的功能均为会员特权,开通会员后即可使用。(会员特权除了特定配置外还享有更多特权,具体可点击 查看并开通!)
  • 自定义版本号
    自定义版本号需开通会员,可在此处设置自定义版本号,自定义版本号为空时为移除版本号展示
  • 移除顶部注释
    移除顶部注释,该功能需开通会员后解锁使用
  • 锁定域名 格式应形如www.safekodo.com或safekodo.com。多个子域名支持统一配置、支持前端通配符,如*.safekodo.com
  • 非锁定域名运行
    当您配置了锁定域名时,配置在非指定域名运行该代码时对应的操作。
  • 名称保留字 当勾选了混淆变量函数名后,对于不想被混淆的变量名、函数名可在此处添加
  • 运行时间锁定
    注:默认锁定时间为一年,配置锁定后代码仅在该时间之前可以运行,您可根据需求自行修改限制时间
  • 加密版本设置
    注意:并非所有历史加密版本都为可选项,比如历史版本有bug时就不会为可选项,一般情况下此处仅有2个可选项:稳定版、Latest版本
严正声明

👉safekodo不会保存您的任何代码,无论是您加密前还是加密后的代码所有权均归您所有。

👉 safekodo不会往加密后的代码中插入任何一段恶意代码。

👉safekodo任何时候任何情况下都不会接受任何人的解密请求。无论您是免费用户还是赞助过我们的用户,均一视同仁。不会存在您付费了就类似交“保护费”了这种情况,所有用户一视同仁。

👉safekodo为免费工具。如对您有帮助欢迎点击加密编辑器右上方😄赞助我们

👉即便是safekodo付费用户也仅仅多了一些个性化配置项,加密强度与免费版并无太大差异!

👉safekodo为您提供专业的JavaScript代码保护。旨在为更多网站提供专业的保护,早一分保护,多十分安全!

多文件加密模式使用注意事项

在使用多文件加密时,需要将js代码压缩为一个zip格式的压缩包,且压缩包内需要所有.js文件在同级目录下(即就是压缩包解压后需要直接是多个js文件,而不能是解压后是一个或多个文件夹)

多文件加密并不会去递归取解压后的文件夹中的js文件。只会检索将默认路径的js进行加密

加密参数选择建议

强烈推荐您在加密时保留的参数:迷惑代码注入,剔除console函数,屏蔽键盘F12,控制流扁平化,禁用控制台调试,禁止代码格式化。当您加密的当前代码与其他js文件不存在相互引用时,推荐您勾选'混淆变量名,函数名',当您与其他js文件存在引用时,您可在“名称保留字”中新增相互间应用的变量名或函数名。当您为网站应用时,推荐您开启域名锁定。当您特别注重加密效果时,推荐您使用“最强加密”, 当您特别注重代码运行性能时推荐您使用“最佳性能”,当然您也可以选择折中方案即“均衡加密”。当您希望控制您的代码仅在指定时间期限内可运行推荐您使用“运行时间锁定”。

在使用本工具进行代码加密时不要重复多次加密,即就是不要对加密后的代码进行再次加密,会造成加密安全性降低,加密一次即可。

禁止站点在iframe下运行

如您不希望您的站点被其他站点或诸如electron等通过iframe标签展现,常见的解决方式是在添加HTTP响应头,但这样仍然是可以被绕过的,如在electron中可以轻松的拦截修改响应头, 所以此时您可以勾选该选项,需要注意的是当前版本下勾选后无论是否是同源下均无法通过iframe加载站点。

严格模式

勾选后代码将在严格模式下运行,如加密后的产物是在小程序下运行,请勾选此选项。(如不勾选,需要在小程序开发者工具上编译时取消严格模式,这里注意,各家小程序叫法可能不一样,所以如果是在小程序端运行建议勾选严格模式)

加密后运行报错/无法运行

当您使用safekodo加密后代码运行遇到无缘无故的运行无报错但也无效果时,首先要看的是是否允许在了指定的(即您配置的锁定域名)域名上运行。其次需要排查是否配置了运行时间锁定,如若配置了,请排查是否在配置的时间内运行。

当您使用safekodo加密后代码运行浏览器出现了卡死情况,请先排除是否配置了“禁用控制台调试”,在配置了该参数的情况下请排除是否开启了浏览器控制台,如若开启,请先关闭控制台,其次排除是否配置了“域名锁定”,并在该域名下运行代码。

当您排除了以上情况,代码仍然无法运行或报的错误为其他情况时,请查看是否配置了“禁止代码格式化”,如果排除了是该配置导致的无法运行时,解决方案有两个:1、您可根据情况选择不使用该配置。2、当您仍需使用该配置时,在加密完代码后,粘贴到您的文件时需要注意如果您的开发者工具(例如您使用的是VSCode)如果设置了保存格式化时,请使用记事本或选择不会自动格式化代码的IDE打开文件进行代码粘贴,因为您的开发者工具在您粘贴后可能会自动进行格式化,导致代码无法运行!这个是比较容易出现的状况!

寄语及代码编写建议

当您在编写代码时,可以在核心代码处进行“挖坑”操作,这样的代码在配合上safekodo的加密混淆可以达到最佳的加密效果。

尽管JavaScript代码高度自由的风格,在编写代码时,写不写分号和花括号是习惯问题,但是对于一些特定情况下(如代码中包含立即执行函数时)为书写分号会导致自己为自己挖下一个坑,对于JavaScript而言分号的意义就是代码语句的分割,在使用本工具加密时也会对代码进行压缩已达到体积最小化,为防止压缩后因为缺少分号导致的难以排查的错误,建议在书写时加上分号。