程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> asp解密、還原chrw、chr編碼文件的方法

asp解密、還原chrw、chr編碼文件的方法

編輯:關於ASP編程

將asp函數的參數通過chrw編碼加密後,如何解碼chrw內容。下面的解碼函數,原來很簡單,用正則提取內容中的chrw串,然後eval動態執行獲取的chrw串得到內容,再執行替換即可。注意事項參考源代碼裡面的注釋,注意將源代碼保存為vbs格式的文件後執行,如果是asp文件,需要將createobject修改為server.createobject。

function readfile(fn)'讀取編碼文件的內容
 set fso=createobject("scripting.filesystemobject")
 set ts=fso.OpenTextFile(fn,1,false,-2)'注意這裡的最後一個參數,如果你的是unicode編碼,將-2(系統默認編碼)修改為-1(unicode編碼)。0為ascii
 readfile=ts.ReadAll
 ts.close
 set ts=nothing
 set fso=nothing
end function
function decodechrw(s)'解碼chrw編碼的內容
 set rx=new RegExp
 rx.Global=true
 rx.IgnoreCase=true
 rx.Pattern="ChrW\s*\(\s*\d+\s*\)(\s*&\s*ChrW\s*\(\s*\d+\s*\))*"'解碼chrw串
 set mc=rx.Execute(s)
 for each m in mc
  s=replace(s, m.value,""""&eval(m.value)&"""")
 next
 rx.Pattern="Chr\s*\(\s*\d+\s*\)(\s*&\s*Chr\s*\(\s*\d+\s*\))*"‘急嗎chr串
 set mc=rx.Execute(s)
 for each m in mc
  s=replace(s, m.value,""""&eval(m.value)&"""")
 next
 decodechrw=s
 
end function
function decodechrwfile(fn)'解碼內容包含chrw編碼的文件
 s=readfile(fn)
 s=decodechrw(s)
 '將解碼內容寫回文件
 set fso=createobject("scripting.filesystemobject")
 set ts=fso.OpenTextFile(replace(fn,".","_decode."),2,true,-2)'寫入解碼後的內容到原來文件名替換為 _decode的文件裡面,如fn為encode.txt,則解碼後的文件為encode_decode.txt
 ts.write s
 ts.close
 set ts=nothing
 set fso=nothing
end function
decodechrwfile("encode.txt")'注意修改這裡被chrw加密的文件名稱及路徑,如果是客戶端提交的內容
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved