标题:[求助]当打开一个ASP网页时,可以不显示(隐藏)网页地址吗!
只看楼主
hwj112
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-9
 问题点数:0 回复次数:8 
[求助]当打开一个ASP网页时,可以不显示(隐藏)网页地址吗!
我是想用一个ASP网页,作为一个接收学生成绩的界面!
学生成绩是由我做的“测试系统”后台传送的!成绩会显示网页地址里,如果能不显示网页地址,那将增强成绩的保密性!!!
搜索更多相关主题的帖子: ASP网页 网页地址 隐藏 后台 
2006-04-11 22:11
haslove
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-1-22
得分:0 

你是指地址栏隐藏吗?


2006-04-11 22:56
hwj112
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-9
得分:0 
指地址栏隐藏呀!(目的是让他人看不到地址栏中的变量 !)
2006-04-11 23:22
haslove
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-1-22
得分:0 

那用框架 就算用框架,别人懂一点基础也一样可以看到


2006-04-11 23:25
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
得分:0 
回复:(hwj112)[求助]当打开一个ASP网页时,可以不显...
以下是引用hwj112在2006-4-11 22:11:00的发言:
我是想用一个ASP网页,作为一个接收学生成绩的界面!
学生成绩是由我做的“测试系统”后台传送的!成绩会显示网页地址里,如果能不显示网页地址,那将增强成绩的保密性!!!

一种办法就是传递的标单重要信息用method="post"属性传输就不会在URL里看见了。
另一种办法是对显示在网页地址中的成绩进行加密传送,这样即使显示在URL里也无法得到成绩,因为不解密是得不到成绩信息的。

2006-04-11 23:32
hwj112
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-9
得分:0 
yms123我很感激您!
作为一个接收学生成绩的界面的ASP网页,我做的“测试系统”后台传送时,我的软件只会用 http://xnjyw.w53.2d.net.cn/hwj/register.asp?name="^ximin^"&chengji=82"向接收学生成绩的ASP网页传送变量neme 和chengji 而且问题是neme 和chengji会显示在网页地址里!
请问:如何对显示在网页地址中的成绩进行加密传送?接收学生成绩的界面的ASP网页又该用怎样的代码才能解密并将解密后的成绩写入到http://xnjyw.w53.2d.net.cn/hwj/reg.mdb数据库文件中(表名:chengji
字段名:neme 和 chengji)
请教!!!
2006-04-12 18:01
hwj112
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-9
得分:0 

向各位大哥请教!
2006-04-12 18:46
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
得分:0 

加密方法太多了有简单的也有复杂的。

RC4算法
<%
key="sdfjal;dfjaoiejojfafnsanf;aufweijoanfanfaieufowejrwnf;aupagyuweranfsajfagfuoag" '私钥

Sub RC4Initialize(strPwd,ByRef sbox,ByRef key)

dim tempSwap
dim a
dim b

intLength = len(strPwd)
For a = 0 To 255
key(a) = asc(mid(strpwd, (a mod intLength)+1, 1))
sbox(a) = a
next

b = 0
For a = 0 To 255
b = (b + sbox(a) + key(a)) Mod 256
tempSwap = sbox(a)
sbox(a) = sbox(b)
sbox(b) = tempSwap
Next

End Sub

Function EnCrypt(plaintxt, psw)
Dim sbox(255)
Dim key(255)

dim temp
dim a
dim i
dim j
dim k
dim cipherby
dim cipher

i = 0
j = 0

RC4Initialize psw,sbox,key

For a = 1 To Len(plaintxt)

i = (i + 1) Mod 256
j = (j + sbox(i)) Mod 256
temp = sbox(i)
sbox(i) = sbox(j)
sbox(j) = temp

k = sbox((sbox(i) + (sbox(j) Mod 256)) Mod 256)

cipherby = asc(Mid(plaintxt, a, 1)) Xor k

cipher = cipher & "&#"&cipherby&";" 'eg: &#128;

Next
EnCrypt = cipher
End Function

Function DeCrypt(cryptxt, psw)
Dim sbox(255)
Dim key(255)

dim temp
dim a
dim i
dim j
dim k
dim cipherby
dim cipher

i = 0
j = 0

RC4Initialize psw,sbox,key

crypchar=split(cryptxt,";",-1,1) '将密文拆分成每个密文字符放入数组crypchar,但是每个数组元素少一个分号“;”
crypttxtlen=Ubound(crypchar) '返回数组的个数,即加密字符的个数+1(数组中最后一个元素为空)

For a = 1 To crypttxtlen
i = (i + 1) Mod 256
j = (j + sbox(i)) Mod 256
temp = sbox(i)
sbox(i) = sbox(j)
sbox(j) = temp

k = sbox((sbox(i) + (sbox(j) Mod 256)) Mod 256)

tmpcryptxt=mid(crypchar(i-1),3)
cipherby = tmpcryptxt Xor k

cipher = cipher & "&#"&cipherby&";" 'eg: &#128;
Next

DeCrypt = cipher
End Function

If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
plaintext=request.form("plaintext")
response.write "<br>输入的明文字符串是:"&plaintext
cryptext=EnCrypt(plaintext,key)
response.write "<br>加密后的密文字符串:" &cryptext
decryptext=DeCrypt(cryptext,key)
response.write "<br>解密输出的字符串是:" &decryptext
end if
%>
这是一种加密方法。
最简单的加密方法就是提取每个字符进行Ascii码加减。
<%
Function EnDeStr(Str,Model)
Dim i
Dim ReStr
ReStr=""
For i=1 To Len(Str)
Select Case Model
Case "EnStr"
ReStr=ReStr&Chr(Asc(Mid(Str,i,1))+100)
Case "DeStr"
ReStr=ReStr&Chr(Asc(Mid(Str,i,1))-100)
End Select
Next
End Function
Response.Write "原字符串为abc"
Response.Write "加密后的字符串"&EnDeStr(Str,"EnStr")
Response.Write "节密后的字符串"&EnDeStr(Str,"DeStr")
%>
这是最简单的加密解密算法。总之字符串加密的算法太多了。

2006-04-12 22:21
hwj112
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-9
得分:0 
yms123您真了不起!
我要慢慢研究您的方法,才能实现我的功能呀!
2006-04-14 18:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-56889-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.132858 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved