台灣最大程式設計社群網站
線上人數
1874
 
會員總數:246054
討論主題:189637
歡迎您免費加入會員
討論區列表 >> 專欄文章 >> 亂數密碼產生範例 (修正版)
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
亂數密碼產生範例 (修正版)
價值 : 0 QP  點閱數:711 回應數:0
樓主

ST.one
初學者
163 7
228 37
發送站內信

捐贈 VP 給 ST.one
<%
'使亂數產生時不照順序
Randomize

'亂數產生十二碼數字

'方法:分六次產生,每次產生一個不同的亂數,並加上當時秒數。
Code = Right("00" & Second(Now) + Int((39 * Rnd)+1),2)
Code = Code & Right("00" & Second(Now) + Int((39 * Rnd)+1) ,2)
Code = Code & Right("00" & Second(Now) + Int((39 * Rnd)+1) ,2)
Code = Code & Right("00" & Second(Now) + Int((39 * Rnd)+1) ,2)
Code = Code & Right("00" & Second(Now) + Int((39 * Rnd)+1) ,2)
Code = Code & Right("00" & Second(Now) + Int((39 * Rnd)+1) ,2)

'將十二位數拆成十二組,兩位數一組。
For I = 1 To 12
Session("Temp_" & I) = Clng(Asc(Mid(Code,I,1)))
Next

'設定十二個變數,內容為上面拆出來的變數照順序合併後,再乘上一組一到一千的亂數,再取三十六的於數。
Session("Code_1") = ((Session("Temp_1") & Session("Temp_2")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_2") = ((Session("Temp_2") & Session("Temp_3")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_3") = ((Session("Temp_3") & Session("Temp_4")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_4") = ((Session("Temp_4") & Session("Temp_5")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_5") = ((Session("Temp_5") & Session("Temp_6")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_6") = ((Session("Temp_6") & Session("Temp_7")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_7") = ((Session("Temp_7") & Session("Temp_8")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_8") = ((Session("Temp_8") & Session("Temp_9")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_9") = ((Session("Temp_9") & Session("Temp_10")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_10") = ((Session("Temp_10") & Session("Temp_11")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_11") = ((Session("Temp_11") & Session("Temp_12")) * Int((1000 * Rnd)+1)) Mod 62
Session("Code_12") = ((Session("Temp_12") & Session("Temp_1")) * Int((1000 * Rnd)+1)) Mod 62


'將上列十二組變數合併,並用 Chr 函式轉為英數混合的十二碼字串。
For I = 1 To 12
If Session("Code_" & I) => 10 and Session("Code_" & I) <= 35 Then
Session("Code_" & I) = Chr(Session("Code_" & I) + 55)
ElseIf Session("Code_" & I) => 36 Then
Session("Code_" & I) = Chr(Session("Code_" & I) + 61)
End If
Password = Password & Session("Code_" & I)
Next


'顯示結果
Response.Write Password
%>

搜尋相關Tags的文章: [ 亂數 ] , [ 密碼 ] , [ 範例 ] ,
本篇文章發表於2006-03-14 13:27
目前尚無任何回覆
   

回覆
如要回應,請先登入.