html网页加密最终版,【原】记一次加密网页html的研究

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

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

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

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

json编码 运行如下:

0818b9ca8b590ca3270a3433284dd417.png

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

接着试试base64

base64编码 运行如下:

0818b9ca8b590ca3270a3433284dd417.png

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

下面 改成链式调用

0818b9ca8b590ca3270a3433284dd417.png

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

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

0818b9ca8b590ca3270a3433284dd417.png

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

0818b9ca8b590ca3270a3433284dd417.png

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

0818b9ca8b590ca3270a3433284dd417.png

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

0818b9ca8b590ca3270a3433284dd417.png

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

0818b9ca8b590ca3270a3433284dd417.png

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

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

完。

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/268480.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

修改hosts 流畅使用coursera

以管理员权限打开 C盘 -> Windows-> System32 -> drives -> etc -> hosts文件 在hosts文件最后写入  52.84.246.72 d3c33hcgiwev3.cloudfront.net 转载于:https://www.cnblogs.com/yezhaodan/p/7479251.html

用PHP忙了一晚上写的图片缩略和图片等比缩放函数

/* ---------------------------------------------------------------------- 函数:调整图片尺寸或生成缩略图 修改:2009-8-8 返回:True/False 参数: $Image 需要调整的图片(含路径) $Dw450 调整时最大宽度;缩略图时的绝对宽度 $Dh450 调整时最大高度;缩略图时…

简述css样式的三种引入html的方式,css-1,css的三种引入方式 基本选择器

css三种引入方式 和四种基本选择器/*内接样式*//*1 选择器 选中的是 ‘共性’*/span{color:green;font-size:30px;}/*组合选择器*/ul,ol{list-style:none;}/*2 类选择器 .类名 选中的也是共性 可以有多个*/.active{color:bluefont-size: 30px;}/*3.id选择器 选中的是‘特性’ #…

程序媛计划——python初级class5~13

列表和元组都是可迭代对象(可以用于for in) 列表 [] #添加列表元素: list.append(argu) #修改列表: list[2] 2017 #删除列表元素 Del list[2] #获取列表长度 len(list) #组合列表 >>>[1,2,3][4,6] [1,2,3,4,6] #定义有周…

html转excel有问题,html转excel

在工作中时常会遇到转换的问题,比如在浏览网站的时候看到一个不错的表格,但这个表格是网页上面的,该网站又不提供下载,这个时候该如何将这个表格下载下来,并且完整的将其转换到Excel中呢?下面8844就为你介绍如何将Htm…

[跟我学UML] UML中的对象图

缩略语UIS UML Infrastructure Specification UML基础结构规范UML Unifed Modeling Language 统一建模语言USS UML Superstructure Specification UML上层结构规范参考资料《UML Infrastructure Specification, v2.2》《UML Superstructure Specifica…

解决移动端 手机号input 属性为 number,maxlength无效情况

<input type"number" oninput"if(value.length>11)valuevalue.slice(0,11)" /> 转载于:https://www.cnblogs.com/qq735675958/p/7483538.html

计算机无法安装hp网络打印机,安装HP网络打印机步骤

打印机在连接上网线以后会通过路由器的DHCP服务自动设置一个IP&#xff0c;但是此IP不一定与你的计算机的IP处在同一个IP段(同段IP为192.168.0.***&#xff0c;即前三位相同(不一定为192.168.0)&#xff0c;只有最后一位不同)&#xff0c;IP不在同一段是无法连接的。此时应手动…

VTP (vlan trunking protocol)

VTP&#xff08;vlan trunking protocol&#xff09;vlan中继协议&#xff0c;是一个二层协议&#xff0c;主要用于在一个vtp域内同步vlan信息&#xff08;vlan的添加、删除、重命名&#xff09;。所谓vtp域&#xff0c;就是配置了相同vtp域名的所有连接在一起的交换机组成的网…

隐藏GridControl的“Drag a column header here to group by that column”

打开设计器&#xff0c;找到OptionsView&#xff0c;往下拉设置showGroupPanel为false 转载于:https://www.cnblogs.com/Cruise-Yang/p/7490052.html

英语面试计算机岗位,计算机专业英语面试自我介绍.docx

计算机专业英语面试自我介绍Hello, my name is XX, born in XX, which is the main reason I choose XXXXX University to have my graduate study.Communication is a fresh field to me, since my major in undergraduate is accounting. I have little professional trainin…

数字电视,方便了谁

对话一&#xff1a;“你好&#xff0c;有线电视服务中心吗&#xff1f;”“你好&#xff0c;是的&#xff0c;什么可以帮到你&#xff1f;”“我的电视现在看不了&#xff0c;图像全是马赛克&#xff0c;请问是什么问题&#xff1f;”“我们派师傅上门检查一下吧&#xff0c;可…

实例分享--告诉你如何使用语音和自然语言控制智能家居

ZigBee作为一种短距离、低功耗的无线通信局域网协议&#xff0c;其优点是超低功耗、安全性高和自组网&#xff0c;并且可容纳多个设备&#xff0c;因此在智能家居控制中占有很大的优势。 但是&#xff0c;仅仅使用ZigBee技术来控制家居设备显得比较单薄&#xff0c;或者不够“智…

感恩

父亲病了我必须回家看看&#xff01; 转载于:https://blog.51cto.com/lml666666/193516

html中input两个圆括号,如何使用Jquery将光标聚焦在两个括号(括号)之间?

我有一个与按钮一起工作的计算器来分配值。主要想法是生成公式。这些值被无缝添加到“输入”中。所有支架输入您相应的按钮时&#xff0c;我需要发生的是继续在括号如何使用Jquery将光标聚焦在两个括号(括号)之间&#xff1f;输入值的Jquery$(document).ready(function() {$(&q…

Spring框架中的Bean是线程安全的吗

答: 不是安全的。 Spring中的Bean默认是单例模式的&#xff0c;框架并没有对bean进行多线程的封装处理。 注&#xff1a;单例bean是指IOC容器中就只有这么一个bean&#xff0c;是全局共享的&#xff0c;有多少个线程来访问用的都是这个bean。 如果Bean是有状态的&#xff0c;…