如何隐藏HTML页面的源代码

时间:2014-08-10 12:11:13

标签: html encryption hide right-click

我创建了一个HTML页面,现在想要隐藏源代码并加密它。

我该怎么做?

6 个答案:

答案 0 :(得分:9)

您可以禁用右键单击,但这不是一个好主意,因为专业人士可以从您的页面中读取任何内容。 您不能完全隐藏页面源 - 这是不可能的。互联网上没有什么是安全的。

在任何情况下,您都可以对其进行加密并设置密码。 您可以使用此链接 - 它将使用密码加密您的HTML页面。


首先,通过在标记之后写出此脚本来禁用右键单击。

<SCRIPT language=JavaScript>

<!-- http://www.spacegun.co.uk -->

var message = "function disabled";

function rtclickcheck(keyp){ if (navigator.appName == "Netscape" && keyp.which == 3){ alert(message); return false; }

if (navigator.appVersion.indexOf("MSIE") != -1 && event.button == 2) { alert(message); return false; } }

document.onmousedown = rtclickcheck;

</SCRIPT>

然后,在本网站中对所有内容进行加密,称为“AES加密”。

链接 - http://aesencryption.net/

您需要设置密码才能解密....您选择密码。

加密后,您只需编写一个基本的HTML页面,只需再次将<head>标记放入禁用右键单击的脚本,进入您编码的<body>标记并隐藏所有内容在页面顶部<html hidden>

实施例

<!DOCTYPE html>
<html hidden>
<head>
<SCRIPT language=JavaScript>

<!-- http://www.spacegun.co.uk -->

var message = "function disabled";

function rtclickcheck(keyp){ if (navigator.appName == "Netscape" && keyp.which == 3){ alert(message); return false; }

if (navigator.appVersion.indexOf("MSIE") != -1 && event.button == 2) { alert(message); return false; } }

document.onmousedown = rtclickcheck;

</SCRIPT>
</head>
<body>
--here, you put the encrypted code from the link above--

</body>
</html>

在写var message = "function disabled";的地方,您可以编写类似“此页面无法查看”的内容,或者会使大多数用户烦恼并将离开的内容。 ['此页面不可用'等等....]。

最后,当您右键单击页面时,您将看到一个空白页面,其中会显示一条消息。该消息将类似于“此页面不再有效”。

示例

  <SCRIPT language=JavaScript>

    <!-- http://www.spacegun.co.uk -->

    var message = "**This page is no longer active**";

    function rtclickcheck(keyp){ if (navigator.appName == "Netscape" && keyp.which == 3){ alert(message); return false; }

    if (navigator.appVersion.indexOf("MSIE") != -1 && event.button == 2) { alert(message); return false; } }

    document.onmousedown = rtclickcheck;

    </SCRIPT>

我知道可以使用Firebug之类的附加组件删除<html hidden> Javascript脚本,但无论如何您需要使用密码解密代码才能看到真实的页面。 我认为,专家用户可能会使用暴力攻击来查看源代码。 没有什么是安全的。


我发现了一个需要安装在计算机上的应用程序。 企业版中有一项功能,但您必须付费才能获得它。此功能是一个加密HTML页面的工具,使用多达384位密钥进行加密,为HTML文件创建超强密码加密[我上面写的链接最多使用256位密钥进行加密]。 但是,我从未尝试过,因为它不是免费的。

无论如何,软件'HTML Guardian'的链接 - http://www.protware.com/default.htm 有关加密的功能,只需点击页面中的“超强HTML密码保护”。

答案 1 :(得分:2)

实际上并没有这样做会阻止一个复杂的人。

答案 2 :(得分:2)

您无法隐藏源代码,但是您可以通过以下方式添加一些查看源代码的难度

1.禁用右键单击:

<body oncontextmenu="return false">

2.Disable ctrl,u,F12键:

<script type="text/javascript">
    function mousehandler(e) {
        var myevent = (isNS) ? e : event;
        var eventbutton = (isNS) ? myevent.which : myevent.button;
        if ((eventbutton == 2) || (eventbutton == 3)) return false;
    }
    document.oncontextmenu = mischandler;
    document.onmousedown = mousehandler;
    document.onmouseup = mousehandler;
    function disableCtrlKeyCombination(e) {
        var forbiddenKeys = new Array("a", "s", "c", "x","u");
        var key;
        var isCtrl;
        if (window.event) {
            key = window.event.keyCode;
            //IE
            if (window.event.ctrlKey)
                isCtrl = true;
            else
                isCtrl = false;
        }
        else {
            key = e.which;
            //firefox
            if (e.ctrlKey)
                isCtrl = true;
            else
                isCtrl = false;
        }
        if (isCtrl) {
            for (i = 0; i < forbiddenKeys.length; i++) {
                //case-insensitive comparation
                if (forbiddenKeys[i].toLowerCase() == String.fromCharCode(key).toLowerCase()) {
                    return false;
                }
            }
        }
        return true;
    }
</script>

第3。在您开始编码之前添加许多空格

它可能会欺骗某些人

答案 3 :(得分:1)

真的没有办法做到这一点。也许您唯一能做的就是通过JavaScript禁用右键单击功能,但仍然不会阻止有足够经验的用户复制它。但是,请检查this

答案 4 :(得分:1)

对于 php,将您不想看到的代码与其余代码分开:

<?php 
    for($i=0;$i<1000000;$i++){
        echo "\n";
    } 
?>
<some html="what you want to hide">
<?php 
    for($i=0;$i<1000000;$i++){
        echo "\n";
    } 
?>

这将有效地杀死视图源方面(至少几分钟) 如果是查看源,他不会等待结果。 此外,这似乎不会减慢页面加载速度

答案 5 :(得分:0)

我知道,现在有点晚了,但我猜您正在寻找一种叫做混淆的东西。例如,对于 Javascript 文件,有许多混淆工具可用于您的网页构建过程。代码以不可读的格式传输。一些 VPS 提供商提供在构建过程中运行并为您完成这项工作的插件。

相关问题