สร้างรหัสผ่านแบบไดนามิกโดยสมบูรณ์ เพื่อให้รหัสผ่านเดียวกันสร้างผลลัพธ์ที่แตกต่างกัน หลังจากการดำเนินการครั้งแรกของรหัสผ่าน aaa ผลลัพธ์คือ:
jlce1d65ec3b91556234879c9db8f6da1123
ครั้งที่สอง:
hjmnbe0d01cc1fbd3e18ae7431fa52fb3ce4
ครั้งที่สาม:
grttb05901915e121d83ebefad7e809ef1b0
-
แน่นอน คุณยังสามารถกู้คืนและเปรียบเทียบโค้ดที่ฉันแก้ไขตามฟังก์ชัน MD5 ของ Dongwang ได้
-
'คำ สตริงที่จะเข้ารหัส
'ส่งคืนคำที่เข้ารหัส
'ตัวอย่าง: response.write Md6("aaa")
'www.downcodes.com'
'======================================
ฟังก์ชัน Md6(Word)
สุ่มแบบสุ่ม, RandomNum, สุ่มซ้ำ, reWord
สุ่ม
ทำในขณะที่เลน (สุ่ม) < 4
RandomNum = Chr(25 * rnd + 97)
สุ่ม = สุ่ม & สุ่มตัวเลข
วนซ้ำ
สุ่มใหม่ = Md5(สุ่ม)
reWord = Md5(เวิร์ด)
Md6 = LCase(สุ่ม & Md5(สุ่มใหม่ + reWord))
สิ้นสุดฟังก์ชัน
'========================================
'Wrod คือสตริงที่ต้องตรวจสอบ OldWord คือสตริงดั้งเดิมหลังจากการเข้ารหัส
'ส่งคืนผลการเปรียบเทียบ หากเท่ากัน ให้คืนค่าเป็น True หรือเป็นเท็จ
'ตัวอย่าง: pwd="aaa"
' old_pwd="grttb05901915e121d83ebefad7e809ef1b0"
' ถ้า Md6Back(pwd,old_pwd)=TRUE แล้ว
-
'======================================
ฟังก์ชั่น Md6Back (Word, OldWord)
สุ่มแบบสุ่ม, RandomNum, สุ่มซ้ำ, reWord
สุ่ม = กลาง (OldWord, 1, 4)
สุ่มใหม่ = Md5(สุ่ม)
reWord = Md5(เวิร์ด)
ถ้า OldWord = Random & Md5(reRandom + reWord) แล้ว
Md6Back = จริง
อื่น
Md6Back = เท็จ
สิ้นสุดถ้า
ฟังก์ชันสิ้นสุด