QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

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

dim char_array(35)

5 v) Q4 Z! C0 v) ?) o

char_array(0) = '0'

3 o s5 l: m5 z) n5 b9 B' n3 X$ ^

char_array(1) = '1'

9 L2 j6 I7 v3 r- |

char_array(2) = '2'

?. O/ h0 |: X* U$ \- a4 r

char_array(3) = '3'

2 K, X9 G7 S' c* A/ v0 O1 W

char_array(4) = '4'

8 g8 O* W( B% M& {! b

char_array(5) = '5'

; |+ h0 @# @! c, b) G

char_array(6) = '6'

/ f# O) a2 r h% a2 A$ C+ {3 x

char_array(7) = '7'

' e& P# B$ B* j7 C; F- K

char_array(8) = '8'

7 r, U. S s, |" y

char_array(9) = '9'

1 s. B- u9 W5 |8 ? S/ S, g1 y

char_array(10) = 'A'

. q! Q2 I+ u5 e6 [5 F; J

char_array(11) = 'B'

- F. {4 g, l# t% O& L: \. m- @

char_array(12) = 'C'

' w, I: c7 c3 q; J- n& s5 D

char_array(13) = 'D'

; ^0 ~( c1 g% t& Q, ? E

char_array(14) = 'E'

) J4 D) b, Y# b$ b% D

char_array(15) = 'F'

4 L; |: g% l9 {/ f

char_array(16) = 'G'

% `+ R, S; K3 W

char_array(17) = 'H'

: F8 r7 b* u# h* c& b# r

char_array(18) = 'I'

) A3 f7 q1 X& ]

char_array(19) = 'J'

; K. ?! C) L! P$ o4 M& |: n* } O

char_array(20) = 'K'

% E0 h! S. o, y( [6 }4 ^' h3 H& ~; b

char_array(21) = 'L'

# ?1 Z% I/ v8 a5 y- S0 |9 R2 k: T- m$ M

char_array(22) = 'M'

6 ?9 X+ a6 c& l0 z

char_array(23) = 'N'

! b q7 t, n& p c0 g

char_array(24) = 'O'

+ ]$ H5 _" F/ G: E/ U; ^9 W

char_array(25) = 'P'

, [+ P1 l( \; ~+ B) B: U

char_array(26) = 'Q'

6 `; F) h3 K5 J. i& V" H; ?8 l

char_array(27) = 'R'

' X. ^" V0 k0 i' b

char_array(28) = 'S'

& Q, `6 o/ O* \" Q! H5 m* ]; e0 {

char_array(29) = 'T'

: \) U" c( G: \

char_array(30) = 'U'

$ f* E3 T& A1 {4 c

char_array(31) = 'V'

6 Y: a t6 J6 x! v* A8 Y6 C. Y

char_array(32) = 'W'

' d G* ~) D$ \" m

char_array(33) = 'X'

1 r2 p5 c; P) \9 _ U4 d+ a9 q! F

char_array(34) = 'Y'

% t4 i5 b6 r( U- e" I

char_array(35) = 'Z'

. \) z t0 g& C N) Q* |8 _: u& Q

randomize

, W1 }. Y# V& M, E2 Q. O" M. z6 D

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

3 s2 S, d0 q+ A0 u+ f) n' X! O

output = output + num

+ u) i1 Q' K1 Y# z( F

loop

1 H) b+ z& S6 y! \* Y: u* ~1 c) E

gen_key = output

8 {+ k5 K% {# G; C' P- O* j

End Function

) Q$ P2 Z. [' ^7 d6 I4 O9 U

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

6 d2 o+ J0 D. t4 r0 S

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

) e* Z5 k. C& x6 m

char_array(36) = 'a'

' i" Z( l3 ]# C) U

char_array(37) = 'b'

# m2 n0 o4 u+ m) x4 J

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

" v9 P0 u3 R7 S! B/ O# Q

注意这是一个可以通用的函数,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-4-17 06:17 , Processed in 0.291550 second(s), 57 queries .

回顶部