tanbui Posted July 28, 2015 Share Posted July 28, 2015 Hi AllPlease help me about read MD5 password file, I stored MD5 password in login.txt file. How can I read it? Func VerifyLogin($USERNAME,$PASSWORD)local $x = 1If $USERNAME ="" or $PASSWORD = "" Then MsgBox(0,"ERROR","Please Enter a Username and Password") return 0Else Do $login = filereadline(@ScriptDir & "\login.txt",$x) $string = stringsplit($login,"|") IF $string[1] = $username and $string[2] = $password Then return 1 exitloop Else $x = $x + 1 Endif if $login = "" then return 0 exitloop Endif until $x = $x + 1EndIfEndFuncThanks. Link to comment Share on other sites More sharing options...
Jfish Posted July 28, 2015 Share Posted July 28, 2015 @tanbui - hello and welcome. You should try to use code tags <> when posting to make it easier to read the code. Also, please try to explain the exact problem that you are having. When I create a simple text file containing one line: username|password I can read it and see what is contained within the array with the following snippet:#include<Array.au3> $login = filereadline(@ScriptDir & "\login.txt") $string = stringsplit($login,"|") _ArrayDisplay($string)Note: I did not use the optional line parameter on filereadline which you had as $x. No need if there is only one line ... give it a try. My text file looks like this:username | passwordI called it login.txt and was sure to save it to the same directory as my script. Build your own poker game with AutoIt: pokerlogic.au3 | Learn To Program Using FREE Tools with AutoIt Link to comment Share on other sites More sharing options...
BrewManNH Posted July 28, 2015 Share Posted July 28, 2015 MD5 returns a hash, you can't "de-hash" it, you have to create a hash of the entered password and compare the two hashes to see if they match. If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag GudeHow to ask questions the smart way! I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from. Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays. - ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script. - Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label. - _FileGetProperty - Retrieve the properties of a file - SciTE Toolbar - A toolbar demo for use with the SciTE editor - GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI. - Latin Square password generator Link to comment Share on other sites More sharing options...
tanbui Posted July 29, 2015 Author Share Posted July 29, 2015 Thank everyone...My problem isI have a program, if you want to use it, you must login with username and password....Otherwise the username and pass will be stored on the root folder of website (ex: http://yoursite.com/login.txt). The structure of login.txt as the same Jfish said above but I will change to MD5 base on actual password ( ex: user1|MD5 password).How can I read MD5 password in login.txt when login?Please help me. Thank so much. Link to comment Share on other sites More sharing options...
Jfish Posted July 29, 2015 Share Posted July 29, 2015 It will look funny in its hash form. @BrewManNH was correct when he explained you can't de-hash it back to a regular string. It will look all weird like this: þQôãVSŠä…mØ´Üÿ.If you want to do that then as he explained you would need to compare it in the hash form to a hash version you are storing in the app. Otherwise, if you want to store it encrypted and then decrypt it back to a regular string then you should use _Crypt_EncryptData() and _Crypt_DecryptData(). Build your own poker game with AutoIt: pokerlogic.au3 | Learn To Program Using FREE Tools with AutoIt Link to comment Share on other sites More sharing options...
tanbui Posted July 29, 2015 Author Share Posted July 29, 2015 You mean: I must convert MD5 to hash after that I will compare it when login right? Link to comment Share on other sites More sharing options...
J2TeaM Posted July 29, 2015 Share Posted July 29, 2015 You mean: I must convert MD5 to hash after that I will compare it when login right?Yes, it's the same with the authentication process on a web page.When an user login, you need to hash the password and compare it with the hash stored in login.txt file. My UDF/Example Scripts: Imgur UDF | AutoIt & PHP/MySQL | Font Icon UDF | Awesome AutoIt My Blog: https://junookyo.blogspot.com/ Link to comment Share on other sites More sharing options...
tanbui Posted July 29, 2015 Author Share Posted July 29, 2015 Hi J2TeaMCan you help me edit my code above to add more this code?Thank so much. Link to comment Share on other sites More sharing options...
tanbui Posted July 30, 2015 Author Share Posted July 30, 2015 Hi AllAfter login, I want to write log file but the log file will be stored on website as the path http://yoursite.com/logger.txtSo, How can I do it? Please advice me.Thanks. Link to comment Share on other sites More sharing options...
guinness Posted July 30, 2015 Share Posted July 30, 2015 (edited) Use PHP at the server side, send a POST request from the AutoIt application with data to the server and process at the other end using file_get_contents('php //input') to get the POST'ed data. Super trivial to do if you ask.Oh and using a text document to store usernames and password hashes (without salts) is just plain wrong. The smart solution would be to use a backend database that you can then query. Of course the even smarter solution would be to implement a small backend API, that you can then use with your AutoIt application to querying the database, add to the database etc.. Edited July 30, 2015 by guinness UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now