【原】记一次加密网页html的研究

2023-05-16

某次web编程,思考着辛辛苦苦编写的web别人 右键查看源码不就一目了然了?当然有些人会把script写入外部js引入,但也只是增加了查看源码的步骤。我就想把整个页面html都加密下,只是右键查看时,看不出代码。那么是否可行?用哪种方法?

首先html代码的动态生成,而不是直接输出。就需要js的document.write,动态插入html神器啊!

那么接下来就是考虑编码问题了,如果直接 document.write("<html>....</html>"); 也是可以的但是这跟不加密没啥区别。但是我还是先用这种方法测试了下,遇到了点麻烦,web编程经常遇到的多个双引号导致的字符串错误问题。为了避免这种双引号问题,就必须用编码来绕过。

 

现在流行的已知编码就几种,比如json,base64.那就先用json来试试。

json编码 运行如下:

右键查看源码,可以看见代码至少按我的思路运行正常了,而且遇到双引号问题也不出错了。中文被json 编码了,html代码还是被看到了大部分。加密的效果起到了1%吧。

 

接着试试base64

base64编码 运行如下:

 

右键查看代码,可以看出html全部加密了,但是根据数据长短分段换行还是可以看出html结构。 这个还是单行调用。

下面 改成链式调用

 

代码已经完全看不出原来的结构了。哈哈

 

接下来尝试用2进制编码:

 

接下来尝试用8进制编码:

 

 

接下来尝试用10进制编码(顺便增加了点无用符号增强混淆):

 

 

 

接下来尝试用16进制编码(无分隔符):

 

 

 

接下来尝试用16进制编码(有分隔符):

 

接着想弄个密码输入框,输入正确密码才显示。

思路是 php端把真实网页des加密,http传输,网路传输的只是一个大变量字符串
必须des 用密码解密才能知道,这个des加密好处是可以网络加密传输数据,虽然http是透明的,但内容可以加密码锁数据,别人看到的就是一堆乱码html,不知道实际数据, des虽然比较弱,但破解不是那么简单的

浏览器访问网页,先输入密码,解密,成功则显示真实网页

 

 

其实还有其他编码还有什么压缩编码,我也不怎么清楚,而且要动态输出html,我用的php要和js配套才行,一方加密一方解密,不匹配或没有适合的编码,就无法完成。

 

结语:这种加密纯属本人无聊研究,只是web服务器输出html加了一层密,客户端接收后js动态解码输出,虽然右键查看不到代码,但浏览器开发者工具会显示运行后的html代码,一览无余了。适合那些不想让爬虫看到的网站。爬虫爬到的数据是加密后的乱码,除非有爬虫仿浏览器能运行js。这种加密后的网站爬虫估计会非常不友好。因为爬虫无法识别,不知道你网站标题内容,连接图片,但是一番研究变异编码对网页也有了更深的理解和认识了。

 

完。

欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【原】记一次加密网页html的研究 的相关文章

随机推荐

  • js事件循环机制

    一 同步任务与异步任务 JavaScript是一门单线程 语言 xff0c 但是单线程并不意味着阻塞 实现单线程非阻塞的方式就是事件循环机制 在JavaScript中 xff0c 所有的事件都可以分为同步任务和异步任务 同步任务 xff1a
  • 简易MIMO-OFDM系统的设计

    0 完整源码获得方式 订阅MATLAB FPGA教程 xff0c 免得获得教程案例以及任意2份完整源码 MIMO OFDM系统的接收信号是多个发射天线发送信号的衰落与加性噪声的线性叠加 xff0c 若采用通常SISO OFDM系统或MIMO
  • 栈的定义和操作

    一 栈的定义 栈是一种操作受限制的线性表 xff0c 将允许进行插入 删除的一端称为栈顶 xff0c 另一端称为栈底 二 栈的分类 栈主要分为静态栈和动态栈 xff0c 静态栈类似于数组 xff0c 而动态栈类似于链表 xff0c 但只能对
  • 用C语言和前序遍历创建一棵二叉树

    一 二叉树的介绍 二叉树的特点是二叉树的每个结点的度都不大于2 xff0c 可以视为每个结点都有左孩子和右孩子 故二叉树结点的数据结构为 typedef int BDataType typedef struct BTNode BDataTy
  • 超市购物程序设计

    一 任务介绍 1 任务描述 去超市购物说人们日常生活的重要事情之一 在超市中有很多日常生活的用法 xff0c 如水果 蔬菜 洗衣机 电冰箱等 人们只能买到超市中的已有商品 xff0c 如果所需要的商品在超市中没有或已经卖完了 xff0c 那
  • 如何在IDEA中配置XML、添加XML文件样板以及设置项目编码方式

    一 如何在IDEA中配置XML 1 首先保证本地电脑上有apache maven包 xff0c 打开IDEA 2 点击File下拉菜单中的Settings xff0c 弹出Settings菜单框 3 在弹出的菜单框中选择Build Exec
  • Java之String类与StringBuffer类

    一 String类 1 实例化方式 1 xff09 直接赋值法 String str 61 34 abc 34 String类的设计采用了共享设计模式 在JVM底层实际上会自动维护一个对象池 xff08 字符串对象池 xff09 xff0c
  • 人脸识别项目的测试用例

  • 球机和枪机的区别

    球机 和 枪机 的区别最明显的应该就是外形的区别 xff0c 那么 xff0c 球机和枪机还有什么深层次的区别呢 xff1f 枪机即 枪式摄像机 xff0c 其监控位置固定 xff0c 只能正对某监控位置 xff0c 所以监控方位有限 枪机
  • STM32的USART注意

    在USART的发送端有2个寄存器 xff0c 一个是程序可以看到的USART DR寄存器 另一个是程序看不到的移位寄存器 对应USART数据发送有两个标志 xff0c 一个是TXE 61 发送数据寄存器空 xff0c 另一个是TC 61 发
  • 数据传输中断和查询的区别

    中断方式就是在接受数据时 xff0c 微控制器转入中断服务程序对接受到的数据进行处理 xff0c 而查询方式就是通过查询状态寄存器中接受状态位对接收到的数据进行处理 xff0c 两者在工作上的区别主要在于 xff0c 中断方式微控制器可以执
  • C语言 HTTP发送post和get请求

    安装curl环境 xff1a apt install curl apt get install libcurl4 openssl dev 使用C语言来做HTTP协议 xff0c 然后发送post和get请求 xff0c 这里为post请求的
  • Verilog中输入数据范围的判断

    0 完整源码获得方式 订阅MATLAB FPGA教程 xff0c 免得获得教程案例以及任意2份完整源码 在系统设计的过程中 xff0c 经常需要根据输入数据的值 xff0c 对相关信号的值进行改变 如果输入数据的边界值数量比较少 xff0c
  • xp无法识别u盘exFAT。插入提示格式化

    xp无法识别u盘exFAT 插入提示格式化 肯定不能格式化 xff0c u盘装的都是数据 xff0c 一搜 xff0c 原来是xp太老了 不识别exFAT格式 下了个补丁 WindowsXP KB955704 x86 CHS exfat补丁
  • 迅雷x导入未完成任务失败的解决办法。

    最近用x雷下东西 xff0c 卸载时不小心点了删除下载任务 再打开时任务已经没了 怎么办 文件还没下完呢 重装x雷 导入未完成任务 结果失败 我dnnm 十几年的软件 xff0c 这么重要的功能都没做好 xff1f xff1f 故意的吧 经
  • LSP编程之64位实现的一些经验。

    以前32位时 xff0c lsp代码正常运行 xff0c 但安装在win7后也能运行 xff0c 但逐渐发现32位的lsp dll只能过滤32位的进程 64位的进程似乎没有影响 查看dll模块也没有我的lsp dll身影 百度了下资料 发现
  • 判断字符串是否有中文

    hasch cpp 定义控制台应用程序的入口点 include 34 stdafx h 34 include lt windows h gt bool hasChinese const std wstring amp src for int
  • 修复机械硬盘那些事

    关于降速 就是硬盘出现许多错误后 xff0c 比如坏道 xff0c 硬盘传输模式会不断降级 xff0c 慢到只有1 5M s 读取速度 解决办法是格式化 xff0c 删除 xff0c 重启 重新分区 然后速度测试恢复了90M s 正常了 关
  • 关于避免qq迅雷流氓驱动的问题

    qq作为聊天软件 xff0c 装机必备 迅雷当年也是必备 但是 随着企业膨胀 43 流氓 都开发出驱动 43 服务来常驻系统底层了 作为一个关注隐私的人 非常不喜欢第三方载入驱动 xff0c 而且还是聊天软件和下载软件 你要那么大权限作甚
  • 【原】记一次加密网页html的研究

    某次web编程 思考着辛辛苦苦编写的web别人 右键查看源码不就一目了然了 xff1f 当然有些人会把script写入外部js引入 xff0c 但也只是增加了查看源码的步骤 我就想把整个页面html都加密下 xff0c 只是右键查看时 xf