【发布时间】:2015-04-18 00:13:41
【问题描述】:
请查看此链接:
http://forums.asp.net - Obfuscate aspx pages
我有同样的问题,我的问题是如何用 c# 代码 inside 混淆 aspx 页面?
我知道我们可以使用 .net dll :
Dotfuscator
或者
其他第三方程序...
但是带有 c# 代码的 aspx 文件呢,我的目的是混淆该文件中的 c# 方法名称和字符串!
编辑:
我的 aspx 文件是这样的:
<%@ Page Language="C#" Debug="true" trace="false" validateRequest="false" EnableViewStateMac="false" EnableViewState="true"%>
<%@ import Namespace="System.IO"%>
....
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
C# Codes...
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<title></title>
<style type="text/css">
...
</style>
<script type="text/javascript">
...
</script>
</head>
<body>
<form id="" runat="server">
...
</form>
</body>
</html>
aspx(html) 部分的混淆对我来说并不重要,只想混淆 C# 代码...
编辑 2:
你的目的是什么?
你疯了吗?
不,我不是。
有时我无法访问 Visual Studio,并且想用 c# 代码在单个文件中非常快速地编写一个小项目并将其提供给我的客户。
【问题讨论】:
-
你为什么要这样做?
-
正如您提供的链接所提到的,您可以预编译您的 aspx 页面并混淆您获得的二进制文件。为什么要混淆 aspx 页面?
-
我认为问题在于他们在 .aspx 文件中使用内联 C#,因此他们也希望对其进行混淆处理。我的建议是不要那样做。将代码移至 aspx.cs 文件并预编译和混淆 .dll。
-
看来您已经决定采用一种方法并正在寻求确认。您想通过选择的路径完成什么?
-
好的,这就是混淆 ASPX 文件的方法。首先,使用以下方案
<name of animal><name of planet><quote from famous president translated to Farsi>命名所有变量。例如,rhinocerousSaturnSdaqtAvlynFslDrKtabHkmtAst。此外,请确保您不使用循环或中继器,而是将块内的所有内容复制粘贴适当的次数。这将充分混淆您的代码。
标签: c# asp.net obfuscation