网页抓取 加密html(先理下需求,加密的目的是什么?加密到什么级别?)

优采云 发布时间: 2022-03-16 10:02

  网页抓取 加密html(先理下需求,加密的目的是什么?加密到什么级别?)

  人们一直在问如何进行 HTML 加密和混淆。其实这是很多业内人士研究过的话题。

  闲暇之余,整理了一篇文章文章与大家分享。

  我们先来看看需求。加密的目的是什么?什么级别的加密?我们可以为此牺牲什么?

  我们知道,这个世界上没有绝对的安全,加密会被破解,混淆会被反混淆。

  技术新手、开发者、黑客是完全不同的层次,不同层次的人防范的策略也不同。

  预防越大,投资成本就越大,比如聘请专业的保安公司。

  除了投资,我们还需要考虑程序执行性能和用户体验。

  加密的代码必须在运行时解密。混淆后,尤其是HTML混淆后,程序的执行性能会下降。

  是否真的需要做这种源代码保护,需要慎重选择。

  一般来说,前端代码负责用户体验,后端代码负责更安全的数据处理。

  前端不应该涉及泄露太多机密信息,所以加密的意义不是特别大。

  我很少在前端代码中看到值得保护的内容,比如高级算法,不需要牺牲用户体验来保护大量代码。

  但是,一些前端代码涉及到最终用户的数据安全,此时应该努力保护数据。

  

  接下来详细分析几种方法。

  不要把敏感数据放在前端

  这可能听起来像废话,但它真的很重要。

  一些开发者将用户的密码明文存储在手机上,这是非常危险的。

  一旦手机root,即使是原生开发也可能导致数据泄露。更不用说 HTML5 开发了。

  更好的方法是在手机上存储令牌而不是密码。这里有一篇文章 文章 来介绍这一点。建议涉及登录的开发者仔细了解基于HTML5的APP登录功能的设计以及安全调用接口的方式(原理)

  js、css压缩

  压缩不是加密,也不是混淆。但是压缩后的js文件往往也有混淆的功能。

  JS 和 CSS 压缩是很常见的技术。我们经常看到各种框架的文件名是 xxx.min.js 和 xxx.min.css。

  使用合适的js和css压缩方案可以减小文件大小,提高加载速度,最重要的是还可以加快程序的执行性能。它只是有益的和无害的。

  比较常用的混淆js的工具是yahoo的YUI混淆。在HBuilder中,点击菜单工具-插件安装,里面有YUI compress,可以压缩js和css。

  如果 js 和 css 比较大,建议先压缩再发布。

  HTML、js、css混淆

  虽然压缩也可以混淆,但不是为了让别人看不懂。混淆真的是为了让人无法理解。

  但这种混淆不如压缩有益无害,它会降低程序的执行性能。

  有些开发者不想在解压分发包后直接看到源代码,所以此时可以使用混淆方案。

  网上搜索HTML混淆,有很多资料和工具。

  原理类似。js代码变成乱七八糟的字符串,然后用eval执行。HTML 代码变成了乱七八糟的字符串,并使用 document.write 或 innerHTML 执行它。CSS 也可以在 document.write 中动态编写。

  这些工具是免费的和商业的,它们越商业化,就越难被去混淆。

  这是一个免费的在线混淆工具

  这是一个比较知名的商业工具。

  其实你也可以根据原理编写自己的混淆算法。

  混淆也是多年的成熟技术。例如,谷歌在保护gmail的前端代码时,也受到了混淆的保护。

  无论是压缩还是混淆,使用 grunt 进行发布都是一种不错的方式。开发后一键调用grunt非常方便。

  防止webkit远程调试,即防止浏览器控制台调试

  Android4.4 及以上和iOS 支持webkit 远程调试。在HBuilder教程中,也有关于如何使用chrome调试Android应用和safari调试iOS应用的教程。

  在HBuilder开发的app中,manifest.json的plus-distribute下有一个debug标签,标记为false,然后打包。当这样的包在手机上运行时,webview会阻塞浏览器的远程调试请求。

  如果要调试,则在打包之前将 debug 更改为 true。

  当然,有些安卓的rom不是很规范,也不能妨碍调试。这是一个ROM错误。

  专业的加密加固打包服务

  由于Android的特殊性,存在针对apk的加固脱壳行业,这也是业内常见的apk保护方案。

  很多应用市场都提供加固服务,比如360手机助手的加固,

  还有像爱加密这样的专业公司,有免费的基础安全服务和收费的高级安全服务。

  后记,一些非专业安全公司提供的所谓源代码加密服务,其实漏洞百出。

  安全无小事,使用专业的安全服务产品更可靠。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线