asp密碼加密解密
㈠ ASP中的簡單加密解密。。
不用解密的,你把輸入的秘密也MD5,然後跟資料庫的MD5作對比就行了
㈡ asp加密的加密方式
它的基本原理是,需要有一個需要加密的明文和一個隨機生成的解密鑰匙文件。然後使用這兩個文件組合起來生成密文。
我們首先從密鑰文件中得到密鑰值,然後從這段密鑰中截取和我們需要加密的明文同樣長度的密鑰。然後使用一個簡單的異或操作將明文和密鑰進行運算,那麼得到的結果就是加密後的密文了。過程很簡單的。由於是使用了異或操作,所以解密將非常簡單,只要使用同樣的密鑰對密文再次進行異或操作就能夠解密了。在上面介紹的基礎上,你可以少加改動,就可以使用同樣的方法加密一個文件。唯一需要注意的是,對於一個二進制文件,你需要做一些完整性檢查以保證轉換回來的字元不要越界。現在你需要做的就是把密鑰保存在伺服器上的一個安全的地方。
Vernam密碼是由Gilbert Vernam (他是AT&T的工程師)在1918年發明的。這是一種使用異或方法進行加密解密的方法。 主要功能
徹底加密源代碼,可達到徹底保護知識產權的目的,加密效果優於非編譯型的腳本加密工具。非編譯型的加密工具要在運行時在內存中還原腳本執行,編譯型代碼不可還原,直接二進制的執行方式。
產品特點
1.支持各種ASP伺服器腳本默認語言。
2.能夠完全正確識別後綴名為ASP的偽ASP文件。
3.不論多麼復雜的語法結構,都能正確加密並解析。
4.完美處理多種特殊ASP語法在DLL中異常情況...
系統要求
WindowsNT4.0 + IIS
WindowsXP + IIS
Windows 7 + IIS
Windows2000 + IIS
Windows2003 + IIS
Windows2008 + IIS Script Encoder的特點是:
它只加密頁面中嵌入的腳本代碼,其他部分,如HTML的TAG仍然保持原樣不變。處理後的文件中被加密過的部分為只讀內容,對加密部分的任何修改都將導致整個加密後的文件不能使用。Script Encoder加密過的ASP文件還將使Script Debugger之類的腳本調試工具失效。
Script Encoder是可以對Client Side Script加密,也可以對Server Side Script加密。
二、使用簡介
Script Encoder是個命令行工具,執行文件為SCRENC.EXE。它的操作非常簡單:
SCRENC [/s] [/f] [/xl] [/l defLanguage ] [/e defExtension] inputfile outputfile
/s 可選。讓Script Encoder「安靜」的工作,即執行過程沒有屏幕輸出。
/f 可選。指定輸出文件是否覆蓋同名輸入文件。忽略,將不執行覆蓋。
/e defExtension 可選。指定待加密文件的文件擴展名。 ASP加密解密軟體(Asp EnCoder):國人自己編寫的軟體,持MicroSoft Script Encoder加密解密,移位、逆位加密解密演算法,可保護我們辛辛苦苦編寫的ASP代碼,也可以躲避殺毒軟體的查殺。
AspToDll風火輪:能夠將ASP代碼封裝成DLL,利用DLL無法還原的特性確保ASP代碼加密之後不可解,保護ASP開發者的知識產權不受侵害。
ASP加密鎖(AspApp):將IIS + ASP(Active Server Page)實現的網站進行打包、加密、壓縮,打包後的應用仍然可以在IIS下使用,但是他人已經無法直接閱讀ASP腳本內容,徹底保護您的辛苦勞動成果和知識產權,您可以用來製作WEB系統的試用版本、功能限製版本和發行版本等。
㈢ asp 中如何對密碼進行加密MD5 是什麼如何實現
MD5是一個加密方法,如下還有一個加密方法,可以參考
asp測試通過
rsa.asp
<%
rem 在ASP中實現加密與解密,加密方法:根據RSA
rem 聯系:[email protected]
Class clsRSA
Public PrivateKey
Public PublicKey
Public Molus
Public Function Crypt(pLngMessage, pLngKey)
On Error Resume Next
Dim lLngMod
Dim lLngResult
Dim lLngIndex
If pLngKey Mod 2 = 0 Then
lLngResult = 1
For lLngIndex = 1 To pLngKey / 2
lLngMod = (pLngMessage ^ 2) Mod Molus
' Mod may error on key generation
lLngResult = (lLngMod * lLngResult) Mod Molus
If Err Then Exit Function
Next
Else
lLngResult = pLngMessage
For lLngIndex = 1 To pLngKey / 2
lLngMod = (pLngMessage ^ 2) Mod Molus
On Error Resume Next
' Mod may error on key generation
lLngResult = (lLngMod * lLngResult) Mod Molus
If Err Then Exit Function
Next
End If
Crypt = lLngResult
End Function
Public Function Encode(ByVal pStrMessage)
Dim lLngIndex
Dim lLngMaxIndex
Dim lBytAscii
Dim lLngEncrypted
lLngMaxIndex = Len(pStrMessage)
If lLngMaxIndex = 0 Then Exit Function
For lLngIndex = 1 To lLngMaxIndex
lBytAscii = Asc(Mid(pStrMessage, lLngIndex, 1))
lLngEncrypted = Crypt(lBytAscii, PublicKey)
Encode = Encode & NumberToHex(lLngEncrypted, 4)
Next
End Function
Public Function Decode(ByVal pStrMessage)
Dim lBytAscii
Dim lLngIndex
Dim lLngMaxIndex
Dim lLngEncryptedData
Decode = ""
lLngMaxIndex = Len(pStrMessage)
For lLngIndex = 1 To lLngMaxIndex Step 4
lLngEncryptedData = HexToNumber(Mid(pStrMessage, lLngIndex, 4))
lBytAscii = Crypt(lLngEncryptedData, PrivateKey)
Decode = Decode & Chr(lBytAscii)
Next
End Function
Private Function NumberToHex(ByRef pLngNumber, ByRef pLngLength)
NumberToHex = Right(String(pLngLength, "0") & Hex(pLngNumber), pLngLength)
End Function
Private Function HexToNumber(ByRef pStrHex)
HexToNumber = CLng("&h" & pStrHex)
End Function
End Class
%>
test.asp
<!--#INCLUDE FILE="RSA.asp"-->
<%
function Encryptstr(Message)
Dim LngKeyE
Dim LngKeyD
Dim LngKeyN
Dim StrMessage
Dim ObjRSA
LngKeyE = "32823"
LngKeyD = "20643"
LngKeyN = "29893"
StrMessage = Message
Set ObjRSA = New clsRSA
ObjRSA.PublicKey = LngKeyE
ObjRSA.Molus = LngKeyN
Encryptstr = ObjRSA.Encode(StrMessage)
Set ObjRSA = Nothing
end function
function decryptstr(Message)
Dim LngKeyE
Dim LngKeyD
Dim LngKeyN
Dim StrMessage
Dim ObjRSA
LngKeyE = "32823"
LngKeyD = "20643"
LngKeyN = "29893"
StrMessage = Message
Set ObjRSA = New clsRSA
ObjRSA.PrivateKey =LngKeyD
ObjRSA.Molus=LngKeyN
decryptstr=ObjRSA.Decode(StrMessage)
Set ObjRSA = Nothing
end function
dim last,first
first="sohu"
Response.Write "加密前為:"&first
last=Encryptstr(first)
Response.Write "加密後為"&last
Response.Write "解密後為" &decryptstr(last)
%>
㈣ 用ASP分別編寫一個實現加密和解密功能的頁面
是不是MD5加密?如果是MD5加密,加密後是不可能解密的。而用ASP加密的話,一旦別人知道了演算法的話,基本上就沒有加密型可言了
下面是ASP加密
Function.asp
<%
Rem =================================================================
Rem = 函數文件:Function.asp
Rem = 測試文件:TestEncrypt.asp,Encryptpass.asp
Rem = 說明:Encrypt_PRO加密函數,Decrypt_PRO解密函數
Rem = 代碼演算法需要重寫,可能知道的人多了就不太安全了。
=================================================================
Public Const sDefaultWHEEL1 = "ABCDEFGHIJKLMNOPQRSTVUWXYZ_1234567890qwertyuiopasd!@#$%^&*(),. ~`-=\?/』""fghjklzxcvbnm<>;"
Public Const sDefaultWHEEL2 = "IWEHJKTLZVOPFG_ ~`-=\?/』""!@#$%^&*(),.vbnm<>;tyuiopasd"
Function Encrypt_PRO(sINPUT , sPASSWORD )
Dim sWHEEL1, sWHEEL2
Dim k, c, i
Dim sRESULT
sWHEEL1 = sDefaultWHEEL1: sWHEEL2 = sDefaultWHEEL2
ScrambleWheels sWHEEL1, sWHEEL2, sPASSWORD
sRESULT = ""
For i = 1 To Len(sINPUT)
c = Mid(sINPUT, i, 1)
k = InStr(1, sWHEEL1, c)
If k > 0 Then
sRESULT = sRESULT & Mid(sWHEEL2, k, 1)
Else
sRESULT = sRESULT & Addpass(c,sPASSWORD)
End If
sWHEEL1 = LeftShift(sWHEEL1): sWHEEL2 = RightShift(sWHEEL2)
Next
Encrypt_PRO = sRESULT
End Function
Function Decrypt_PRO(sINPUT , sPASSWORD )
Dim sWHEEL1, sWHEEL2
Dim k, i, c
Dim sRESULT
sWHEEL1 = sDefaultWHEEL1: sWHEEL2 = sDefaultWHEEL2
ScrambleWheels sWHEEL1, sWHEEL2, sPASSWORD
sRESULT = ""
For i = 1 To Len(sINPUT)
c = Mid(sINPUT, i, 1)
k = InStr(1, sWHEEL2, c, vbBinaryCompare)
If k > 0 Then
sRESULT = sRESULT & Mid(sWHEEL1, k, 1)
Else
sRESULT = sRESULT & Addpass(c,sPASSWORD)
End If
sWHEEL1 = LeftShift(sWHEEL1): sWHEEL2 = RightShift(sWHEEL2)
Next
Decrypt_PRO = sRESULT
End Function
Function LeftShift(s )
If Len(s) > 0 Then LeftShift = Mid(s, 2, Len(s) - 1) & Mid(s, 1, 1)
End Function
Function RightShift(s )
If Len(s) > 0 Then RightShift = Mid(s, Len(s), 1) & Mid(s, 1, Len(s) - 1)
End Function
Sub ScrambleWheels(ByRef sW1 , ByRef sW2 , sPASSWORD )
Dim i ,k
For i = 1 To Len(sPASSWORD)
For k = 1 To Asc(Mid(sPASSWORD, i, 1)) * i
sW1 = LeftShift(sW1): sW2 = RightShift(sW2)
Next
Next
End Sub
Function Addpass(tStr,tPass)
Select Case tStr
Case Chr(13)
Addpass = tStr
Case Chr(10)
Addpass = tStr
Case Chr(13)+Chr(10)
Addpass = tStr
Case Chr(9)
Addpass = tStr
Case Else
Addpass = Chr((Asc(tPass) Xor Len(tPass)) Xor Asc(tStr))
End Select
End Function
Function ReadFile(FileName)
Dim fso, f
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(Server.MapPath(FileName), ForReading, True)
ReadFile = f.ReadAll
f.Close
End Function
Sub WriteFile(FileName,Str)
Dim fso, f
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(Server.MapPath(FileName), ForWriting, True)
f.Write Str
f.Close
End Sub
%>
--------------------------加密代碼的使用方法-----------------------
從文件index_buk.Htm中讀加密後寫到index.htm文件中然後解密並顯示
也是所謂的Asp代碼與HTML代碼分離。
Index_buk.htm代碼為:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Test</title>
<link href="css/css.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.style1 {
color: #990000;
font-weight: bold;
}
-->
</style>
<body>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<table width="500" border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="cccccc">
<tr align="center" bgcolor="#efefef">
<td colspan="2"><span class="style1">系統發生錯誤!</span></td>
</tr>
<tr bgcolor="ffffff">
<td colspan="2">{$MsgCon$}</td>
</tr>
<tr bgcolor="ffffff">
<td colspan="2" align="center"><< <a href="javascript:history.go(-1);">返回重新操作</a> >></td>
</tr>
</table>
<p align="center"> </p>
</body>
</html>
——————————————ASP代碼調用----------------------
<!--#include file="Function.asp" -->
<%
Rem =================================================================
Rem = 函數文件:Function.asp
Rem = 測試文件:TestEncrypt.asp,Encryptpass.asp
Rem = 說明:Encrypt_PRO加密函數,Decrypt_PRO解密函數
Rem = 代碼演算法需要重寫,可能知道的人多了就不太安全了。
Rem =================================================================
Str = ReadFile("index_buk.Htm")
Pass = "cexo"
Encrypt_Str = Encrypt_PRO(Str,Pass)
Decrypt_Str = Decrypt_PRO(Encrypt_Str,Pass)
Response.Write Encrypt_Str
WriteFile "Index.htm",Encrypt_Str
Response.Write Decrypt_Str
Str2 = ReadFile("index.Htm")
Decrypt_Str = Decrypt_PRO(Str2,Pass)
Str3 = "<li>1111111111111111111111111111</li><br>
<li>1111111111111111111111111111</li><br>
<li>22222222222222222222222222222</li><br>
<li>33333333333333333333333333</li><br>"
Msg = Replace(Decrypt_Str,"{$MsgCon$}",Str3)
Response.Write Msg
%>
--------------------------加密數據的使用方法-----------------------
<%
Rem =================================================================
Rem = 函數文件:Function.asp
Rem = 測試文件:TestEncrypt.asp,Encryptpass.asp
Rem = 說明:Encrypt_PRO加密函數,Decrypt_PRO解密函數
Rem = 適用:對數據的加密,或對代碼的加密,可加密中文/英文等。
Rem =================================================================
%>
<!--#include file="Function.asp" -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>加密解密實例</title>
</head>
<body>
<%
Pass = Request("txtpass")
If Pass = Null Then Pass = ""
%>
<form name="form1" method="post" action="TestEncrypt.asp">
請輸入要加密的文本:<br>
<textarea name="txt1" cols="80" rows="10"><%=server.HTMLEncode(Decrypt_PRO(Request("txt2"),Pass))%></textarea>
<br>
求得解密文本為: 密碼為:
<input name="txtpass" type="text" id="txtpass" value="<%=Pass%>">
<br>
<textarea name="txt2" cols="80" rows="10"><%=Encrypt_PRO(Request("txt1"),Pass)%></textarea>
<br><input type="submit" name="Submit" value="加密">
<input type="submit" name="Submit2" value="解密">
</form>
</body>
</html>
㈤ asp.net如何進行用戶名和密碼的加密和解密
直接給代碼吧
using System.Web.Security;
string str= FormsAuthentication.(TextBox1.text, "MD5")
把TextBox1里的內容用MD5加密返回給str
MD5為不可逆加密所以不可解密,你只有再次加密與加密後的密碼匹配來判斷是否正確
㈥ 請教asp代碼加密都用的是什麼方法,解密的方法是怎樣的
感覺很像微軟的Script Encoder加的密。有好多種辦法加密,用微軟ASP加密軟體Script Encoder最簡單,還有Asp EnCoder、AspApp、AspToDll等。
主要基本上就是加密解密,移位、逆位加密解密演算法,加密建立在對信息進行數學編碼和解碼的基礎上。
加密類型分為兩種,對稱加密與非對稱加密,對稱加密雙方採用共同密鑰 。
加密技術包括兩個元素:演算法和密鑰。演算法是將普通的信息或者可以理解的信息與一串數字(密鑰)結合,產生不可理解的密文的步驟,密鑰是用來對數據進行編碼和解密的一種演算法。在安全保密中,可通過適當的鑰加密技術和管理機制來保證網路的信息通信安全。
㈦ Asp.net(C#)md5加密後登陸時如何解密
為什麼要那麼麻煩呢??
何不這樣做:
1、在注冊時,把加密後的密碼保存到資料庫
2、登錄時,再把輸入的密碼進行加密,與資料庫中的密碼進行比對。如果是完全一樣的,那說明密碼輸入沒有問題。
㈧ asp.net如何進行用戶名和密碼的加密和解密
代碼如下:
using System.Web.Security;
string str= FormsAuthentication.(TextBox1.text, MD5")
.NET是微軟下一代的操作平台,它允許人們在其上構建各種應用方式,使人們盡可能通過簡單的方式,多樣化地、最大限度地從網站獲取信息,解決網站之間的協同工作,並打破計算機、設備、網站、各大機構和工業界間的障礙--即所謂的"數字孤島",從而實現網際網路的全部潛能,搭建起第三代互聯網平台。後綴為net是網路服務公司,為個人或商業提供服務。
㈨ c# asp.net 加密方法怎樣解密
為什麼要那麼麻煩呢??
何不這樣做:
1、在注冊時,把加密後的密碼保存到資料庫
2、登錄時,再把輸入的密碼進行加密,與資料庫中的密碼進行比對。如果是完全一樣的,那說明密碼輸入沒有問題。
如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!
vaela
㈩ asp.net cookie用戶名和密碼 加密 解密
using System;
using System.Collections.Generic;
using System.Text;
using System.Security.Cryptography;
using System.IO;
namespace clsModel
{
class clsModel
{
public static string UserMd5(string str)
{
string cl = str;
string pwd = "";
MD5 md5 = MD5.Create();//實例化一個md5對像
// 加密後是一個位元組類型的數組,這里要注意編碼UTF8/Unicode等的選擇
byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(cl));
// 通過使用循環,將位元組類型的數組轉換為字元串,此字元串是常規字元格式化所得
for (int i = 0; i < s.Length; i++)
{
// 將得到的字元串使用十六進制類型格式。格式後的字元是小寫的字母,如果使用大寫(X)則格式後的字元是大寫字元
pwd = pwd + s[i].ToString("x").PadLeft(2, '0');
}
return pwd;
}
private static byte[] IV = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };
public static String Encrypt(String Key, String str)
{
byte[] bKey = Encoding.UTF8.GetBytes(Key.Substring(0, 8));
byte[] bIV = IV;
byte[] bStr = Encoding.UTF8.GetBytes(str);
try
{
DESCryptoServiceProvider desc = new DESCryptoServiceProvider();
MemoryStream mStream = new MemoryStream();
CryptoStream cStream = new CryptoStream(mStream, desc.CreateEncryptor(bKey, bIV), CryptoStreamMode.Write);
cStream.Write(bStr, 0, bStr.Length);
cStream.FlushFinalBlock();
return Convert.ToBase64String(mStream.ToArray());
}
catch
{
return string.Empty;
}
}
public static String Decrypt(String Key, String DecryptStr)
{
try
{
byte[] bKey = Encoding.UTF8.GetBytes(Key.Substring(0, 8));
byte[] bIV = IV;
byte[] bStr = Convert.FromBase64String(DecryptStr);
DESCryptoServiceProvider desc = new DESCryptoServiceProvider();
MemoryStream mStream = new MemoryStream();
CryptoStream cStream = new CryptoStream(mStream, desc.CreateDecryptor(bKey, bIV), CryptoStreamMode.Write);
cStream.Write(bStr, 0, bStr.Length);
cStream.FlushFinalBlock();
return Encoding.UTF8.GetString(mStream.ToArray());
}
catch
{
return string.Empty;
}
}
}
}
完整的加密解密類...直接引用就可以,方法中的參數Key為密碼,可以自己指定...
Encrypt加密的方法
Decrypt解密的方法