buzz44 Posted May 31, 2005 Posted May 31, 2005 I remember the last encryption tool you done datkewlguy, where I asked you a question about 'where' it is most encrypted. I'll ask again . With this new version, is the most encrypted return going to be the first returned? Ok... let me rephrase that lol. Eg encryption... lol > nnq > spp > rur > ttw Is 'nnq' going to be the most encrypted? With your last version, if I remember correctly, the encryption would loop. If you encrypted something, and kept encrypting it would eventually return to the original text, is this the same? qq
datkewlguy Posted May 31, 2005 Author Posted May 31, 2005 it should be... it uses the square root to determine a 'safe' amount of encryption, for instance, if you encrypted a 2 chr word, it wouldnt encrypt it 50 times and go over itself multiple times. I'm not sure where the max level falls however.
datkewlguy Posted June 3, 2005 Author Posted June 3, 2005 (edited) its done! check out the code above. Edited June 3, 2005 by datkewlguy
PeteW Posted June 3, 2005 Posted June 3, 2005 >datkewlguy: '...it is fairly slow, if people could come up with suggestions on how to speed it up [dramatically] that would be greatly appreciated.' The following is quick & simple - each original character is converted into a 2chr Hex value (with shift). NB This does mean that the encrypted string is twice the length of the original. Not sure exactly what you're after re: encryption level and on-screen display, but anyway... 1] Replace the While...Wend 'decrypt' and 'encrypt' case section with: Case $msg = $decrypt ;--- Start Decryption ---; $sz_enc = GUICtrlRead($edit) $sz_tmptxt = "" GUICtrlSetData($edit, "") GUICtrlSetData($edit, "Unscrambling...") $sz_tmptxt = _Unscramble($sz_enc) GUICtrlSetData($edit, "") GUICtrlSetData($edit, $sz_tmptxt) ;--- End Decryption ---; Case $msg = $encrypt ;--- Start Encryption ---; $sz_dec = GUICtrlRead($edit) $sz_tmptxt = "" GUICtrlSetData($edit, "") GUICtrlSetData($edit, "Scrambling...") $sz_tmptxt = _Scramble($sz_dec) GUICtrlSetData($edit, "") GUICtrlSetData($edit, $sz_tmptxt) ;--- End Encryption ---; 2] Replace the _Scramble and _Unscramble functions with: Func _Scramble($sText) ;; Scramble a text string. ; Simple encryption method - convert plain text to encrypted hex string Local $iLen = StringLen($sText) $Scrambled = "" For $i1 = 1 To $iLen $HexSecret = Hex(Mod(Asc(StringMid($sText,$i1,1))+128, 256),2) ; Ensure all hex is 2 chrs $Scrambled = $Scrambled & $HexSecret Next Return $Scrambled EndFunc ;==>_Scramble Func _Unscramble($sText) ;; De-Scramble a Scrambled text that was scrambled by _Scramble. ; Simple decryption method - convert encrypted hex string to plain text Local $iLen = StringLen($sText) $Unscrambled = "" If Mod($iLen, 2) = 0 Then ; Secret text length *must* be an even no. (should be already) For $i1=1 To Int($iLen/2) ; Do 2chrs at a time $Unscrambled = $Unscrambled & Chr(Mod(Dec(StringMid($sText,($i1*2)-1,2))+128,256)) Next EndIf $sText = $Unscrambled Return $sText EndFunc ;==>_Unscramble 3] The following functions are no longer needed: _IsAlpha($sz_str) normalize ($character) unnormalize($character) FixVerticalTab($sz_t) Cheers, Pete.
datkewlguy Posted June 3, 2005 Author Posted June 3, 2005 that would maybe solve our speed problem, but i really hate inflating the string. If anything, im trying to compress it. I think that doing this your way, while perhaps solving one problem, creates more, as certain programs have limits on message size, this would also restrict users to half the chr size they normally would have, with the same message. I fear that other problems would arise as well... If you can figure out a way to do this without messing up string length, let me know...
Ejoc Posted June 3, 2005 Posted June 3, 2005 someone did RSA encryption using microsofts built-in crypto functions, why not use something like that? Then it really would be encrypted. Start -> Programs -> AutoIt v3 -> AutoIt Help File -> Index -> (The Function you are asking about)----- Links -----DllStruct UDFsRSA Crypto UDFs
datkewlguy Posted June 4, 2005 Author Posted June 4, 2005 yeah i was thinking of adding a password feature onto this one, RSA uses keys as well, maybe ill look a bit into this. Or another way i could do the encryption thing, would be to just attach your password onto the end of the string before encrypting. Then, you must enter a password, then decrypt, if the password at the end (after encrypting) matches the one entered, then it will reveal the cleartext without the password... What do you think of that idea?
JSThePatriot Posted June 4, 2005 Posted June 4, 2005 yeah i was thinking of adding a password feature onto this one, RSA uses keys as well, maybe ill look a bit into this. Or another way i could do the encryption thing, would be to just attach your password onto the end of the string before encrypting. Then, you must enter a password, then decrypt, if the password at the end (after encrypting) matches the one entered, then it will reveal the cleartext without the password... What do you think of that idea?<{POST_SNAPBACK}>Depending on how you implement that it may or may not work. I have been just silently following this topic. I am sure you know you would have to decrypt the password and then check to see if the string contains the password they entered, but that would leave the text decrypted so therefore unsafe... not that most people would even know how to get to it.JS AutoIt Links File-String Hash Plugin Updated! 04-02-2008Â Plugins have been discontinued. I just found out. ComputerGetInfo UDF's Updated! 11-23-2006 External Links Vortex Revolutions Engineer / Inventor (Web, Desktop, and Mobile Applications, Hardware Gizmos, Consulting, and more)
datkewlguy Posted June 4, 2005 Author Posted June 4, 2005 Depending on how you implement that it may or may not work. I have been just silently following this topic. I am sure you know you would have to decrypt the password and then check to see if the string contains the password they entered, but that would leave the text decrypted so therefore unsafe... not that most people would even know how to get to it.JS<{POST_SNAPBACK}>how would anyone get to it? it would just decrypt it inside itself, meaning that only the program could read it, and it would be for a fraction of a second, just enough time to check the password. Nothing would be visible to the user until the password was verified and correct...
datkewlguy Posted June 5, 2005 Author Posted June 5, 2005 i cut the time for the encryption in half! Very noticable in large strings. The problem was the scramble function, which i now scramble half the amount as last time (i think that's all that's necessary) anyways, code updated in first post, any more comments would be great, im gonna get started on that password thing now.
datkewlguy Posted June 5, 2005 Author Posted June 5, 2005 i added password encryption, this way, if multiple people have this program, you can still keep your privacy by encrypting a password that will be required to decrypt it. Enjoy, and comments would be great.
datkewlguy Posted June 9, 2005 Author Posted June 9, 2005 (edited) there was an error in the previous version when your password had enters in it and u decrypted it with the wrong password, it has been fixed above. EDIT: made the blank password outcome more secure, also, thanks to Helge, made it so that when you click on the password box it clears for you. Thanks to everyone else as well, sorry to keep bringing this topic up, i think ill just work on it myself now since i dont think anyone is still interested. But anyways, thankyou all for your help. Edited June 10, 2005 by datkewlguy
Moonchild Posted April 6, 2006 Posted April 6, 2006 (edited) Simply brilliant! DEFINITELY among the best AutoIt based encryption programs. Excellent user interface (cool slide-in effects), and it really slow for an average sized email! GREAT WORK! *EDIT* no, given its high level of security, its really not slow at all, even for LARGE emails! Edited April 6, 2006 by Moonchild
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