Hallo e*pvper :)
ich habe mir aus langeweile mal ein kleines Login-System geschrieben, welches die Logindaten auf eine MySql Datenbank speichert.
Inhaltsverzeichniss:
1. Webspace
2. MySql Datenbank
3. Loginscript
4. Screenshot
1. Webspace:
Wie und wo man einen Webspace bekommen kann, sollte jeder wissen und möchste ich hier auch nicht erneut erklären.
Config.php
Bei der Config.php ist zu beachten, alle daten wie z.B. den host und die Logindaten richtig auszufüllen!.
login.php
register.php
Update! recover.php:
Wichtig hierbei ist, das die config.php im selben ordner wie die login.php, register.php und recover.php sein muss.
2. MySql Datenbank:
Wie man eine MySql Datenbank erstellt usw. möchte ich ebenfalls nicht erklären, da es genug andere anleitungen gibt.
Wenn Sie eine Datenbank besitzen, einfach dieses Script ausführen:
In dieser Tabelle befinden sich bereits 2 benutzer: admin und member.
Das Passwort ist gleich dem Loginnamen!
3. Loginscript:
So, nun kommt das LoginScript in autoit:
Login.au3:
Update: login.au3 mit Password recovery :
Ichtig hierbei ist, die adresse zu der login.php,
und die adresse zur register.php,
anzupassen!
md5.au3:
4. Screenshot:
Ich hoffe das Script hilft manchen leuten.
Mit freundlichen Grüßen
Mozo ;)
ich habe mir aus langeweile mal ein kleines Login-System geschrieben, welches die Logindaten auf eine MySql Datenbank speichert.
Inhaltsverzeichniss:
1. Webspace
2. MySql Datenbank
3. Loginscript
4. Screenshot
1. Webspace:
Wie und wo man einen Webspace bekommen kann, sollte jeder wissen und möchste ich hier auch nicht erneut erklären.
Config.php
PHP Code:
<?PHP
//host loaction
define("_HOST", "YOUR HOST", TRUE);
//database username
define("_USER", "DB-USERNAME", TRUE);
//database username`s password
define("_PASS", "DB-PASSWORT", TRUE);
//database name
define("_DB", "DB-NAME", TRUE);
?>
Bei der Config.php ist zu beachten, alle daten wie z.B. den host und die Logindaten richtig auszufüllen!.
login.php
PHP Code:
<?php
// PHP-Code Beginn
@require("config.php");
$link = @mysql_connect(_HOST,_USER,_PASS);
@mysql_select_db(_DB);
$login = mysql_real_escape_string($_GET['login']);
$passwort = mysql_real_escape_string($_GET['pw']);
$result = mysql_query("SELECT * FROM user_data WHERE login = '".$login."' ");
$row = mysql_fetch_row($result);
if ($row)
{
$DbPasswort = $row[2];
if ($DbPasswort == $passwort)
{
echo "$row[3]";
}
else
{
echo 0;
}
}
else
{
echo 99;
}
?>
register.php
PHP Code:
<?php
// PHP-Code Beginn
@require("config.php");
$link = @mysql_connect(_HOST,_USER,_PASS);
@mysql_select_db(_DB);
$login = mysql_real_escape_string($_GET['login']);
$passwort = mysql_real_escape_string($_GET['pw']);
$email = mysql_real_escape_string($_GET['email']);
$result1 = mysql_query("SELECT * FROM user_data WHERE login = '".$login."' ");
$row1 = mysql_fetch_row($result1);
$result2 = mysql_query("SELECT * FROM user_data WHERE email = '".$email."' ");
$row2 = mysql_fetch_row($result2);
if (!$login)
{
echo 99;
}
else
{
if ($row1)
{
echo 1;
}
elseif ($row2)
{
echo 2;
}
else
{
mysql_query("INSERT INTO user_data (`userid`,`login`,`password`,`email`) VALUES (NULL,'$login', '$passwort', '$email')");
echo 0;
}
}
?>
Update! recover.php:
PHP Code:
<?php
// PHP-Code Beginn
@require("config.php");
$link = @mysql_connect(_HOST,_USER,_PASS);
@mysql_select_db(_DB);
$login = mysql_real_escape_string($_GET['login']);
$result = mysql_query("SELECT * FROM user_data WHERE login = '".$login."' ");
$row = mysql_fetch_row($result);
if ($row)
{
$pool = "qwertzupasdfghkyxcvbnm";
$pool .= "23456789";
$pool .= "WERTZUPLKJHGFDSAYXCVBNM";
srand ((double)microtime()*1000000);
for($index = 0; $index < 5; $index++)
{
$pass_word .= substr($pool,(rand()%(strlen ($pool))), 1);
}
$absendername = "LoginSys";
$absendermail = "[Only registered and activated users can see links. Click Here To Register...]";
$betreff = "Password";
$text = "Hallo $login,
dein neues Passwort lautet: $pass_word";
mail($row[3], $betreff, $text, "From: $absendername <$absendermail>");
$newpw = md5($pass_word);
mysql_query("UPDATE `user_data` SET `password`='" . $newpw . "' WHERE `login`='" . $login . "'");
echo 1;
}
else
{
echo 0;
}
?>
Wichtig hierbei ist, das die config.php im selben ordner wie die login.php, register.php und recover.php sein muss.
2. MySql Datenbank:
Wie man eine MySql Datenbank erstellt usw. möchte ich ebenfalls nicht erklären, da es genug andere anleitungen gibt.
Wenn Sie eine Datenbank besitzen, einfach dieses Script ausführen:
PHP Code:
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `user_data`
-- ----------------------------
DROP TABLE IF EXISTS `user_data`;
CREATE TABLE `user_data` (
`userid` int(11) NOT NULL AUTO_INCREMENT,
`login` varchar(255) DEFAULT NULL,
`password` varchar(255) DEFAULT NULL,
`email` varchar(255) DEFAULT NULL,
PRIMARY KEY (`userid`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;
-- ----------------------------
-- Records of user_data
-- ----------------------------
INSERT INTO `user_data` VALUES ('1', 'admin', '21232f297a57a5a743894a0e4a801fc3', '[Only registered and activated users can see links. Click Here To Register...]');
INSERT INTO `user_data` VALUES ('2', 'member', 'aa08769cdcb26674c6706093503ff0a3', '[Only registered and activated users can see links. Click Here To Register...]');
Das Passwort ist gleich dem Loginnamen!
3. Loginscript:
So, nun kommt das LoginScript in autoit:
Login.au3:
PHP Code:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>
#include <INet.au3>
#include <MD5.au3>
$Form1 = GUICreate("LoginSystem | by Mozo", 424, 257, 192, 124)
$Tab1 = GUICtrlCreateTab(16, 16, 393, 225)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
$TabSheet1 = GUICtrlCreateTabItem("Login")
$f_login = GUICtrlCreateInput("", 160, 80, 217, 21)
$f_password = GUICtrlCreateInput("", 160, 128, 217, 21,$ES_PASSWORD)
$l_login = GUICtrlCreateLabel("Loginname:", 40, 80, 59, 17)
$l_password = GUICtrlCreateLabel("Password:", 40, 128, 53, 17)
$b_login = GUICtrlCreateButton("Login", 152, 176, 107, 25, $WS_GROUP)
$TabSheet2 = GUICtrlCreateTabItem("Register")
GUICtrlSetState(-1,$GUI_SHOW)
$f_login_reg = GUICtrlCreateInput("", 160, 63, 217, 21)
$f_password_reg = GUICtrlCreateInput("", 160, 105, 217, 21,$ES_PASSWORD)
$f_password_wdh = GUICtrlCreateInput("", 160, 131, 217, 21,$ES_PASSWORD)
$f_email = GUICtrlCreateInput("", 160, 174, 217, 21)
$l_login_reg = GUICtrlCreateLabel("Loginname:", 40, 63, 59, 17)
$l_password_reg = GUICtrlCreateLabel("Password:", 40, 105, 53, 17)
$l_password_wdh = GUICtrlCreateLabel("Password wdh:", 40, 131, 76, 17)
$l_email = GUICtrlCreateLabel("E-Mail:", 40, 174, 36, 17)
$b_register = GUICtrlCreateButton("Register", 152, 208, 107, 25, $WS_GROUP)
GUICtrlCreateTabItem("")
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $b_login
login()
Case $b_register
register()
EndSwitch
WEnd
Func login()
$get = _INetGetSource("http://**************/login.php?login="&GUICtrlRead($f_login)&"&pw="&md5(GUICtrlRead($f_password)))
If $get = "0" Then
MsgBox(16,"Passwort","Passwort falsch!")
Return
ElseIf $get = "99" Then
MsgBox(16,"Login","Benutzername falsch!")
Return
Else
MsgBox(0,"Login","Erfolgreich eingeloggt!" & @CRLF & "Email: " & $get)
EndIf
EndFunc
Func register()
If GUICtrlRead($f_login_reg) <> "" Then
If GUICtrlRead($f_password_reg) <> "" Then
If GUICtrlRead($f_password_reg) <> GUICtrlRead($f_password_wdh) Then
MsgBox(16,"Register","Passwörter ungleich!")
Return
Else
If GUICtrlRead($f_email) <> "" Then
$regget = _INetGetSource("http://**************/register.php?login="&GUICtrlRead($f_login_reg)&"&pw="&md5(GUICtrlRead($f_password_wdh))&"&email="&GUICtrlRead($f_email))
If $regget = "0" Then
MsgBox(0,"Register","Registration abgeschlossen!"&@CRLF&"Sie könne sich nun einloggen!")
Return
ElseIf $regget = "1" Then
MsgBox(16,"Register","Loginname ist bereits vergeben!")
Return
ElseIf $regget = "2" Then
MsgBox(16,"Register","E-Mail ist bereits vergeben!")
Return
EndIf
Else
MsgBox(16,"Register","Bitte eine E-Mail eingeben!")
Return
EndIf
EndIf
Else
MsgBox(16,"Register","Sie müssen ein Passwort eingeben!")
EndIf
Else
MsgBox(16,"Register","Sie müssen einen Loginnamen eingeben!")
Return
EndIf
EndFunc
Update: login.au3 mit Password recovery :
PHP Code:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>
#include <INet.au3>
#include <MD5.au3>
$Form1 = GUICreate("LoginSystem | by Mozo", 424, 257, 192, 124)
$Tab1 = GUICtrlCreateTab(16, 16, 393, 225)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
$TabSheet1 = GUICtrlCreateTabItem("Login")
$f_login = GUICtrlCreateInput("", 160, 80, 217, 21)
$f_password = GUICtrlCreateInput("", 160, 128, 217, 21,$ES_PASSWORD)
$l_login = GUICtrlCreateLabel("Loginname:", 40, 80, 59, 17)
$l_password = GUICtrlCreateLabel("Password:", 40, 128, 53, 17)
$b_login = GUICtrlCreateButton("Login", 152, 176, 107, 25, $WS_GROUP)
$TabSheet2 = GUICtrlCreateTabItem("Register")
GUICtrlSetState(-1,$GUI_SHOW)
$f_login_reg = GUICtrlCreateInput("", 160, 63, 217, 21)
$f_password_reg = GUICtrlCreateInput("", 160, 105, 217, 21,$ES_PASSWORD)
$f_password_wdh = GUICtrlCreateInput("", 160, 131, 217, 21,$ES_PASSWORD)
$f_email = GUICtrlCreateInput("", 160, 174, 217, 21)
$l_login_reg = GUICtrlCreateLabel("Loginname:", 40, 63, 59, 17)
$l_password_reg = GUICtrlCreateLabel("Password:", 40, 105, 53, 17)
$l_password_wdh = GUICtrlCreateLabel("Password wdh:", 40, 131, 76, 17)
$l_email = GUICtrlCreateLabel("E-Mail:", 40, 174, 36, 17)
$b_register = GUICtrlCreateButton("Register", 152, 208, 107, 25, $WS_GROUP)
$TabSheet3 = GUICtrlCreateTabItem("Password recovery")
GUICtrlSetState(-1,$GUI_SHOW)
$f_password_rec = GUICtrlCreateInput("", 156, 75, 217, 21)
$l_password_rec = GUICtrlCreateLabel("Loginname:", 36, 75, 59, 17)
$b_recover = GUICtrlCreateButton("Recover", 112, 136, 163, 25, $WS_GROUP)
GUICtrlCreateTabItem("")
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $b_login
login()
Case $b_register
register()
Case $b_recover
recover()
EndSwitch
WEnd
Func login()
$get = _INetGetSource("http://mhwebmedia.eu/test/login.php?login="&GUICtrlRead($f_login)&"&pw="&md5(GUICtrlRead($f_password)))
If $get = "0" Then
MsgBox(16,"Passwort","Passwort falsch!")
Return
ElseIf $get = 99 Then
MsgBox(16,"Login","Benutzername falsch!")
Return
Else
MsgBox(0,"Login","Erfolgreich eingeloggt!" & @CRLF & "Email: " & $get)
EndIf
EndFunc
Func register()
If GUICtrlRead($f_login_reg) <> "" Then
If GUICtrlRead($f_password_reg) <> "" Then
If GUICtrlRead($f_password_reg) <> GUICtrlRead($f_password_wdh) Then
MsgBox(16,"Register","Passwörter ungleich!")
Return
Else
If GUICtrlRead($f_email) <> "" Then
$regget = _INetGetSource("http://mhwebmedia.eu/test/register.php?login="&GUICtrlRead($f_login_reg)&"&pw="&md5(GUICtrlRead($f_password_wdh))&"&email="&GUICtrlRead($f_email))
If $regget = 0 Then
MsgBox(0,"Register","Registration abgeschlossen!"&@CRLF&"Sie könne sich nun einloggen!")
Return
ElseIf $regget = 1 Then
MsgBox(16,"Register","Loginname ist bereits vergeben!")
Return
ElseIf $regget = 2 Then
MsgBox(16,"Register","E-Mail ist bereits vergeben!")
Return
EndIf
Else
MsgBox(16,"Register","Bitte eine E-Mail eingeben!")
Return
EndIf
EndIf
Else
MsgBox(16,"Register","Sie müssen ein Passwort eingeben!")
EndIf
Else
MsgBox(16,"Register","Sie müssen einen Loginnamen eingeben!")
Return
EndIf
EndFunc
Func recover()
If GUICtrlRead($f_password_rec) = "" Then
MsgBox(16,"Recover","Sie müssen einen Loginnamen eingeben!")
Else
$recget = _INetGetSource("http://mhwebmedia.eu/test/recover.php?login="&GUICtrlRead($f_password_rec))
If $recget = 1 Then
MsgBox(0,"Recover","Passwort wurde resettet und per E-Mail verschickt!")
ElseIf $recget = 0 Then
MsgBox(16,"Recover","Loginname existiert nicht!")
EndIf
EndIf
EndFunc
Ichtig hierbei ist, die adresse zu der login.php,
PHP Code:
$get = _INetGetSource("http://**************/login.php?login="&GUICtrlRead($f_login)&"&pw="&md5(GUICtrlRead($f_password)))
PHP Code:
$regget = _INetGetSource("http://**************/register.php?login="&GUICtrlRead($f_login_reg)&"&pw="&md5(GUICtrlRead($f_password_wdh))&"&email="&GUICtrlRead($f_email))
md5.au3:
PHP Code:
Func md5($sMessage)
Local $Padding = Binary('0x8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000')
Local $bytes = Binary($sMessage) + BinaryMid($Padding,1,BinaryLen($Padding) - Mod(BinaryLen($sMessage),64)) + BinaryMid(Binary(BinaryLen($sMessage)*8)+Binary(0),1,8)
Local $x[BinaryLen($bytes)/4]
For $i = 1 To BinaryLen($bytes) Step 4
$x[($i-1)/4] = Dec(StringTrimLeft(Binary(BinaryMid($bytes,$i+3,1) + BinaryMid($bytes,$i+2,1) + BinaryMid($bytes,$i+1,1) + BinaryMid($bytes,$i,1)),2))
Next
Local $a = 0x67452301, $b = 0xEFCDAB89, $c = 0x98BADCFE, $d = 0x10325476
For $k = 0 To UBound($x) - 1 Step 16
$AA = $a
$BB = $b
$CC = $c
$DD = $d
; The hex number in the middle of each of the following lines
; an element from the 64 element table constructed with
; T(i) = Int(4294967296 * Abs(Sin(i))) where i is 1 to 64.
;
; However, for speed we don't want to calculate the value every time.
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitOR(BitAND($b, $c), BitAND((BitNOT($b)), $d)) + $x[$k + 0x0],0) + 0xD76AA478,0),0), 0x07,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitOR(BitAND($a, $b), BitAND((BitNOT($a)), $c)) + $x[$k + 0x1],0) + 0xE8C7B756,0),0), 0x0C,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitOR(BitAND($d, $a), BitAND((BitNOT($d)), $b)) + $x[$k + 0x2],0) + 0x242070DB,0),0), 0x11,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitOR(BitAND($c, $d), BitAND((BitNOT($c)), $a)) + $x[$k + 0x3],0) + 0xC1BDCEEE,0),0), 0x16,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitOR(BitAND($b, $c), BitAND((BitNOT($b)), $d)) + $x[$k + 0x4],0) + 0xF57C0FAF,0),0), 0x07,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitOR(BitAND($a, $b), BitAND((BitNOT($a)), $c)) + $x[$k + 0x5],0) + 0x4787C62A,0),0), 0x0C,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitOR(BitAND($d, $a), BitAND((BitNOT($d)), $b)) + $x[$k + 0x6],0) + 0xA8304613,0),0), 0x11,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitOR(BitAND($c, $d), BitAND((BitNOT($c)), $a)) + $x[$k + 0x7],0) + 0xFD469501,0),0), 0x16,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitOR(BitAND($b, $c), BitAND((BitNOT($b)), $d)) + $x[$k + 0x8],0) + 0x698098D8,0),0), 0x07,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitOR(BitAND($a, $b), BitAND((BitNOT($a)), $c)) + $x[$k + 0x9],0) + 0x8B44F7AF,0),0), 0x0C,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitOR(BitAND($d, $a), BitAND((BitNOT($d)), $b)) + $x[$k + 0xA],0) + 0xFFFF5BB1,0),0), 0x11,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitOR(BitAND($c, $d), BitAND((BitNOT($c)), $a)) + $x[$k + 0xB],0) + 0x895CD7BE,0),0), 0x16,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitOR(BitAND($b, $c), BitAND((BitNOT($b)), $d)) + $x[$k + 0xC],0) + 0x6B901122,0),0), 0x07,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitOR(BitAND($a, $b), BitAND((BitNOT($a)), $c)) + $x[$k + 0xD],0) + 0xFD987193,0),0), 0x0C,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitOR(BitAND($d, $a), BitAND((BitNOT($d)), $b)) + $x[$k + 0xE],0) + 0xA679438E,0),0), 0x11,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitOR(BitAND($c, $d), BitAND((BitNOT($c)), $a)) + $x[$k + 0xF],0) + 0x49B40821,0),0), 0x16,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitOR(BitAND($b, $d), BitAND($c, (BitNOT($d)))) + $x[$k + 0x1],0) + 0xF61E2562,0),0),0x05,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitOR(BitAND($a, $c), BitAND($b, (BitNOT($c)))) + $x[$k + 0x6],0) + 0xC040B340,0),0),0x09,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitOR(BitAND($d, $b), BitAND($a, (BitNOT($b)))) + $x[$k + 0xB],0) + 0x265E5A51,0),0),0x0E,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitOR(BitAND($c, $a), BitAND($d, (BitNOT($a)))) + $x[$k + 0x0],0) + 0xE9B6C7AA,0),0),0x14,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitOR(BitAND($b, $d), BitAND($c, (BitNOT($d)))) + $x[$k + 0x5],0) + 0xD62F105D,0),0),0x05,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitOR(BitAND($a, $c), BitAND($b, (BitNOT($c)))) + $x[$k + 0xA],0) + 0x02441453,0),0),0x09,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitOR(BitAND($d, $b), BitAND($a, (BitNOT($b)))) + $x[$k + 0xF],0) + 0xD8A1E681,0),0),0x0E,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitOR(BitAND($c, $a), BitAND($d, (BitNOT($a)))) + $x[$k + 0x4],0) + 0xE7D3FBC8,0),0),0x14,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitOR(BitAND($b, $d), BitAND($c, (BitNOT($d)))) + $x[$k + 0x9],0) + 0x21E1CDE6,0),0),0x05,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitOR(BitAND($a, $c), BitAND($b, (BitNOT($c)))) + $x[$k + 0xE],0) + 0xC33707D6,0),0),0x09,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitOR(BitAND($d, $b), BitAND($a, (BitNOT($b)))) + $x[$k + 0x3],0) + 0xF4D50D87,0),0),0x0E,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitOR(BitAND($c, $a), BitAND($d, (BitNOT($a)))) + $x[$k + 0x8],0) + 0x455A14ED,0),0),0x14,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitOR(BitAND($b, $d), BitAND($c, (BitNOT($d)))) + $x[$k + 0xD],0) + 0xA9E3E905,0),0),0x05,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitOR(BitAND($a, $c), BitAND($b, (BitNOT($c)))) + $x[$k + 0x2],0) + 0xFCEFA3F8,0),0),0x09,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitOR(BitAND($d, $b), BitAND($a, (BitNOT($b)))) + $x[$k + 0x7],0) + 0x676F02D9,0),0),0x0E,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitOR(BitAND($c, $a), BitAND($d, (BitNOT($a)))) + $x[$k + 0xC],0) + 0x8D2A4C8A,0),0),0x14,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitXOR($b, $c, $d) + $x[$k + 0x5],0) + 0xFFFA3942,0),0),0x04,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitXOR($a, $b, $c) + $x[$k + 0x8],0) + 0x8771F681,0),0),0x0B,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitXOR($d, $a, $b) + $x[$k + 0xB],0) + 0x6D9D6122,0),0),0x10,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitXOR($c, $d, $a) + $x[$k + 0xE],0) + 0xFDE5380C,0),0),0x17,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitXOR($b, $c, $d) + $x[$k + 0x1],0) + 0xA4BEEA44,0),0),0x04,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitXOR($a, $b, $c) + $x[$k + 0x4],0) + 0x4BDECFA9,0),0),0x0B,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitXOR($d, $a, $b) + $x[$k + 0x7],0) + 0xF6BB4B60,0),0),0x10,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitXOR($c, $d, $a) + $x[$k + 0xA],0) + 0xBEBFBC70,0),0),0x17,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitXOR($b, $c, $d) + $x[$k + 0xD],0) + 0x289B7EC6,0),0),0x04,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitXOR($a, $b, $c) + $x[$k + 0x0],0) + 0xEAA127FA,0),0),0x0B,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitXOR($d, $a, $b) + $x[$k + 0x3],0) + 0xD4EF3085,0),0),0x10,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitXOR($c, $d, $a) + $x[$k + 0x6],0) + 0x04881D05,0),0),0x17,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitXOR($b, $c, $d) + $x[$k + 0x9],0) + 0xD9D4D039,0),0),0x04,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitXOR($a, $b, $c) + $x[$k + 0xC],0) + 0xE6DB99E5,0),0),0x0B,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitXOR($d, $a, $b) + $x[$k + 0xF],0) + 0x1FA27CF8,0),0),0x10,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitXOR($c, $d, $a) + $x[$k + 0x2],0) + 0xC4AC5665,0),0),0x17,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitXOR($c, BitOR($b, (BitNOT($d)))) + $x[$k + 0x0],0) + 0xF4292244,0),0),0x06,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitXOR($b, BitOR($a, (BitNOT($c)))) + $x[$k + 0x7],0) + 0x432AFF97,0),0),0x0A,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitXOR($a, BitOR($d, (BitNOT($b)))) + $x[$k + 0xE],0) + 0xAB9423A7,0),0),0x0F,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitXOR($d, BitOR($c, (BitNOT($a)))) + $x[$k + 0x5],0) + 0xFC93A039,0),0),0x15,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitXOR($c, BitOR($b, (BitNOT($d)))) + $x[$k + 0xC],0) + 0x655B59C3,0),0),0x06,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitXOR($b, BitOR($a, (BitNOT($c)))) + $x[$k + 0x3],0) + 0x8F0CCC92,0),0),0x0A,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitXOR($a, BitOR($d, (BitNOT($b)))) + $x[$k + 0xA],0) + 0xFFEFF47D,0),0),0x0F,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitXOR($d, BitOR($c, (BitNOT($a)))) + $x[$k + 0x1],0) + 0x85845DD1,0),0),0x15,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitXOR($c, BitOR($b, (BitNOT($d)))) + $x[$k + 0x8],0) + 0x6FA87E4F,0),0),0x06,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitXOR($b, BitOR($a, (BitNOT($c)))) + $x[$k + 0xF],0) + 0xFE2CE6E0,0),0),0x0A,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitXOR($a, BitOR($d, (BitNOT($b)))) + $x[$k + 0x6],0) + 0xA3014314,0),0),0x0F,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitXOR($d, BitOR($c, (BitNOT($a)))) + $x[$k + 0xD],0) + 0x4E0811A1,0),0),0x15,"D")+$c,0)
$a = BitOR(BitRotate(BitOR($a + BitOR(BitOR(BitXOR($c, BitOR($b, (BitNOT($d)))) + $x[$k + 0x4],0) + 0xF7537E82,0),0),0x06,"D")+$b,0)
$d = BitOR(BitRotate(BitOR($d + BitOR(BitOR(BitXOR($b, BitOR($a, (BitNOT($c)))) + $x[$k + 0xB],0) + 0xBD3AF235,0),0),0x0A,"D")+$a,0)
$c = BitOR(BitRotate(BitOR($c + BitOR(BitOR(BitXOR($a, BitOR($d, (BitNOT($b)))) + $x[$k + 0x2],0) + 0x2AD7D2BB,0),0),0x0F,"D")+$d,0)
$b = BitOR(BitRotate(BitOR($b + BitOR(BitOR(BitXOR($d, BitOR($c, (BitNOT($a)))) + $x[$k + 0x9],0) + 0xEB86D391,0),0),0x15,"D")+$c,0)
$a = BitOR($a + $AA,0)
$b = BitOR($b + $BB,0)
$c = BitOR($c + $CC,0)
$d = BitOR($d + $DD,0)
Next
Return StringLower(StringMid(Hex($a),7,2) & StringMid(Hex($a),5,2) & StringMid(Hex($a),3,2) & StringMid(Hex($a),1,2) & _
StringMid(Hex($b),7,2) & StringMid(Hex($b),5,2) & StringMid(Hex($b),3,2) & StringMid(Hex($b),1,2) & _
StringMid(Hex($c),7,2) & StringMid(Hex($c),5,2) & StringMid(Hex($c),3,2) & StringMid(Hex($c),1,2) & _
StringMid(Hex($d),7,2) & StringMid(Hex($d),5,2) & StringMid(Hex($d),3,2) & StringMid(Hex($d),1,2))
EndFunc ;==>MD5
4. Screenshot:
[Only registered and activated users can see links. Click Here To Register...][Only registered and activated users can see links. Click Here To Register...]
Ich hoffe das Script hilft manchen leuten.
Mit freundlichen Grüßen
Mozo ;)