QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4986|回复: 1
打印 上一主题 下一主题

ASP生成随机密码的又一种方法

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-5 16:53 |只看该作者 |倒序浏览
|招呼Ta 关注Ta

dim char_array(35)

! q8 N6 l, }. i- B

char_array(0) = '0'

, A) D0 d4 l' V9 o4 q5 I f3 v1 ^

char_array(1) = '1'

& a$ K0 r, r |" K' ^; b% t/ F

char_array(2) = '2'

7 g) ~. L1 Q, ?8 \- ^- |1 z, }! K! ^% ^

char_array(3) = '3'

% Q Y; Q1 P% ~' {# ^% P' m

char_array(4) = '4'

' K4 D, ^4 v; A0 Q+ M1 [

char_array(5) = '5'

s3 b9 v+ L8 A- s

char_array(6) = '6'

z2 C* Z' {6 T! h

char_array(7) = '7'

: d9 p2 m; ^% c& u. t

char_array(8) = '8'

" J" B1 C1 L. O

char_array(9) = '9'

/ `1 T6 J: e: P5 w$ G; O- |

char_array(10) = 'A'

, J6 C! }3 h5 C* @7 T% a4 R# o

char_array(11) = 'B'

" ~7 D" a, U$ i- p5 c# R2 t4 {

char_array(12) = 'C'

- @2 d7 {/ G. N0 A

char_array(13) = 'D'

; Y& Q: F- h& W$ X* t3 M

char_array(14) = 'E'

& [0 O" I$ {7 o8 C5 C4 }

char_array(15) = 'F'

+ [ e0 K" }* k8 |- H g

char_array(16) = 'G'

. r0 O5 h. ~) b2 g7 i9 B" i( [, Z4 O

char_array(17) = 'H'

% f( x$ |1 K% v0 T/ R

char_array(18) = 'I'

( j2 X/ l7 r) N9 ?* t4 I; N

char_array(19) = 'J'

' L- n3 M; s$ O

char_array(20) = 'K'

9 P' Q" ?: L$ `% M

char_array(21) = 'L'

2 G6 W- O8 v5 [" Q' W" X

char_array(22) = 'M'

1 z6 w' ]6 ]. w9 Y& r. R

char_array(23) = 'N'

1 ~! l$ b3 R8 J( w, {. I8 L

char_array(24) = 'O'

7 L1 v7 V: I) }+ x7 k

char_array(25) = 'P'

4 W3 I1 M/ @7 ]

char_array(26) = 'Q'

, S. y6 y# j+ U7 J/ V. ~, }! o: x

char_array(27) = 'R'

, ~) `( ^, y) d3 O

char_array(28) = 'S'

( P: K! B0 y, |7 W

char_array(29) = 'T'

) K3 L5 r K0 M; m

char_array(30) = 'U'

/ \/ a# y" y: K% E- f& ~

char_array(31) = 'V'

6 `; u6 S: j' U. P3 P0 _. H3 C: W' N

char_array(32) = 'W'

& K N, }1 ~" J% ~+ C2 A

char_array(33) = 'X'

3 M0 I$ ?& ~9 R5 u6 l8 J

char_array(34) = 'Y'

3 y0 G2 }# E; F: S% A) V) l. ~

char_array(35) = 'Z'

! O( s7 M" b7 p/ ^* e8 W9 V

randomize

o+ d. ?; t5 g4 G, N# Z* S

do while len(output) num = char_array(Int(35 * Rnd + 0))

) h! I F% v% |5 g5 B+ D7 D L

output = output + num

# `6 ^" z, i7 M+ L" d! G: m! p

loop

. `0 b$ b1 W: S

gen_key = output

8 p4 \5 M# I! b$ n( h8 ~" S6 }! p

End Function

" t+ h( H4 e. S# I6 {

response.write '随机密码是:' & gen_key(10)

0 I2 S! m- m3 _+ o1 J4 l+ U% j% y' O

这是一个生成随机数的通用函数,我们首先将所有可能的字符保存在数组内,这里的例子是0-9及26个英文字符,共36个字符。注意数组下标是从0开始的,所以dim char_array(35),其实表示有36个字符。注意:本例没有专门区分字母的大小写,如果你还要加上“大小写敏感/区分大小写”特性的话,修改数组大小为char_array(50),然后在后面列出所有可能的小写字符。例如:

' W& C% A) ]7 r; Y z

char_array(36) = 'a'

/ Z. l1 _' N$ b* ?" t1 y( j+ {

char_array(37) = 'b'

+ C) I# y8 {0 W( b

...............类推

4 w. e4 N* R9 P8 c9 s0 w2 _9 z% |

注意这是一个可以通用的函数,gen_key(digits)它传进一个参数digits,代表要生成的随机密码位数。今后要生成20为密码就用gen_key(20)即可打印出密码,或者将它保存在数据库内。

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
兄弟 实名认证       

0

主题

5

听众

556

积分

升级  85.33%

该用户从未签到

新人进步奖

群组西南大学建模组

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-6-14 04:13 , Processed in 0.645278 second(s), 57 queries .

回顶部