AlecSadler

[SIM] Secure Interface Module (With DARTIS©)

17 posts in this topic

#1 ·  Posted (edited)

Hello friends, today I am sharing a script I've been working on called secure interface module.

It's a SSL encrypted Instant Messenger, with optional 4D Holographic Encryption. (See THIS thread for more info about DARTIS)

To sign up for an account visit https://pdglobal.net (You will need to use a valid email)

Script is attached, to use just extract and run SIM32.exe or SIM.au3

Warning: There might be bugs. This is an early alpha version, if you find something that needs fixed, please fix it if you can or report it here in the thread so I can look into fixing it.

Download: https://pdglobal.net/?pid=SIM#SIM

SIM.png

Edited by AlecSadler

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

Please note: I need testers to help test out the long range message delivery system. I've been working on fixing the bugs in it, and need testers to confirm the bug has been fixed. Please leave a reply if you have time to help test it.

You can add me on skype my skype is zachary.litzinger, there we can discuss further testing of the networking functions.

There is also a known bug with encryption, if encryption is disabled for the sender but enabled for the receiver, the receiver's Client will crash, I'm working on a fix to this bug, but I really need testers to make sure my fixes work. [FIXED]

Edited by AlecSadler

Share this post


Link to post
Share on other sites

Update: I fixed the buggy message delivery system. Messages will now always be delivered.

Share this post


Link to post
Share on other sites

#4 ·  Posted

For anyone who's interested, I updated this so it wouldnt freeze while receiving messages.

It now uses inetget() instead of _inetgetsource()

Share this post


Link to post
Share on other sites

#5 ·  Posted

Updated the source code so that users in the list show the number of unread messages from each user.

Share this post


Link to post
Share on other sites

#6 ·  Posted (edited)

Made a couple of bug fixes

-SIM will now re-encrypt messages if they get corrupted

-SIM will no longer crash if you receive a message before selecting a contact

-SIM will no longer crash if you select a keyfile before selecting a contact

-SIM no longer crashes when receiving messages from someone not on your contact list (the message will simply be ignored)

Edited by AlecSadler

Share this post


Link to post
Share on other sites

#7 ·  Posted

Update:

-Added online/offline status to users. Online users will show up with a [+] next to their name. Offline users will show a [-] next to their name.

Share this post


Link to post
Share on other sites

#8 ·  Posted (edited)

Update:

-Fixed inet functions failing. Replaced them with winhttp object

-Now uses a second process to fetch messages so that the main thread doesn't lock up.


Update:

-Switched message delivery method from GET to POST to support more data.

Edited by AlecSadler

Share this post


Link to post
Share on other sites

#9 ·  Posted

Update:

-Contacts now have online/offline icons beside their names

-Removed some redundant code(a lot actually)

Share this post


Link to post
Share on other sites

#10 ·  Posted

Update:

->Added an error handler/bug reporter.
->Message delivery is now less buggy
->Added some new emoticons
->Other minor miscelaious bug fixes

->Message polling now occurs every 42 MS
->Can now receive bulk amounts of messages and process them accordingly
->Message frame now refreshes on resize of window
->Message frame now scrolls to the bottom when a user is selected (even if there are a lot of messages)

->Limited message buffer to 300 messages per conversation
->Limited message sending to 1 message per second(to prevent spam)
->Put toast into a seperate thread to avoid main thread from pausing

Share this post


Link to post
Share on other sites

#11 ·  Posted (edited)

Updated to version 0.0.8.0
Changes:
->KeyFile Blueprints (for DARTIS) are now 1,416,752,005 bits (168 MB)
->SIM/DARTIS Now requires an x64 OS to run.
->Highmem library used to allocate additional memory
->ReduceMem function intregrated from winswap(to reduce RAM use)

(you can try running on a 32 bit machine by commenting out the high-mem function that allocates memory and compiling for 32 bit windows, but this is not guaranteed to work)

Updated to version 0.0.8.1
Changes:
->Includes 32 bit source and binary. (use at your own risk, it may crash when loading keyfile blueprints)
->Better memory management when loading contacts from server.

Edited by AlecSadler

Share this post


Link to post
Share on other sites

#12 ·  Posted (edited)

Over 1,000 views and not a single reply yet?!?!
Edited by AlecSadler

Share this post


Link to post
Share on other sites

#13 ·  Posted (edited)

Updated to version 0.0.8.2
Changes:
->Added ability to generate/use 32 OR 64 bit keys.
Note: 32 bit keys are much less secure than 64 bit keys, but may be used on older systems which don't support 64 bit software.
Note: 64 bit keys may be used with either version of SIM. If you don't have enough RAM to use 64 bit keys, you should fall back to using 32 bit keys.

Edited by Jos
tried fixing formatting

Share this post


Link to post
Share on other sites

#14 ·  Posted

I have been following this intently.  What I want to know is, how to integrate this into an existing project.  Lets say I want to display the convo inside a childGUI of some existing project?

Skysnake

1 person likes this

Skysnake

Why is the snake in the sky?

Share this post


Link to post
Share on other sites

#15 ·  Posted (edited)

You were in the "New Members" group which have restrictions, but i've changed that now so you should have more options. 
No need to report all of this and I will do some cleanup. :)

Jos

Edited by Jos

Visit the SciTE4AutoIt3 Download page for the latest versions  - Beta files                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

#16 ·  Posted (edited)

11 hours ago, Skysnake said:

I have been following this intently.  What I want to know is, how to integrate this into an existing project.  Lets say I want to display the convo inside a childGUI of some existing project?

Skysnake

First you need to pass the username and password of the user you want to fetch messages for to the server so that you can get a Session ID from the server, like so.
    

$oHTTP = ObjCreate("winhttp.winhttprequest.5.1")
$oHTTP.Open("GET", "https://pdglobal.net?sid=login&usr=" & URLEncode($username) & "&pwd=" & URLEncode($password), False)
$oHTTP.Send()
$auth = $oHTTP.ResponseText
$session = StringTrimLeft($auth, 3)

Then you need to pass the session ID to the getmsgs page
            

$oHTTP.Open("GET", "https://pdglobal.net/?sid=getmsgs&session=" & URLEncode($session), False)
$oHTTP.Send()
$msg = $oHTTP.ResponseText

then the $msg variable will have all unread messages for that user. Each message is seperated by a "!" and the username of the message/message itself are separated with a "~"
Note: The URLEncode function() function can be found in the source code of SIM.

Note: The session ID expires after 24 hours, so you may want to request a new session ID every so often. SIM fetches a new session ID every hour.

Edited by litzinger
1 person likes this

Share this post


Link to post
Share on other sites

#17 ·  Posted

Very nice, thank you. Will be back :)

 


Skysnake

Why is the snake in the sky?

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Similar Content

    • Miliardsto
      By Miliardsto
      Hello what is the best way to secure autoit scripts right now?
      People say prebuild stripper in SciTE is not high secure. Other problem is if I use stripper in my program I use a lot of _Timer_SetTimer functions. After stripping timers not work.
      I seen this but now it not work
      https://www.elitepvpers.com/forum/autoit/2708576-release-tool-prevent-decompilation-your-autoit-code.html
      Next thing is https://www.pelock.com
      Is it better than stripper builded in SciTE and got more secure?
       
      Please write me ur knowledge about how to make scripts secure. I know its hard to recieve but tell me ur thoughts
    • XinYoung
      By XinYoung
      Hello all,
      I've been working on 4 standalone scripts. They each have their own GUI and are now independent .exe's. But instead of having 4 separate icons on my computer, is it possible to put them all together into one .exe?
      What I want is one interface with tabs. Each script's GUI would be on their own respective tab. Is this possible?
      The different scripts don't need to communicate with one another. I just want them all in one .exe.
      I can't find this anywhere... Any help would be greatly appreciated. Thank you!
    • Glyph
      By Glyph
      Has anyone already worked on a WSS UDF yet? I'm interested in making a project involving WSS with the ASYNC autoit library like ratchetphp / Pawl in PHP. (using reactphp)
      ASYNC is a must, and obviously WSS. the problem with some libraries i've worked with in PHP are mainly issues with handshakes like improper peer name validation (for multi level certs)
      relevant links: https://tools.ietf.org/rfc/rfc6455.txt
      https://github.com/ratchetphp/Pawl
       
      /e i should note i'm not looking for hybrid workarounds, i want to do this in autoit alone. (no javascript)
    • Danyfirex
      By Danyfirex
      Hi Mate. Some times we need to launch a control panel item to users. So I Implemented an IOpenControlPanel Interface. It allows to launch control panel items easily.
      #include "ControlPanelConstants.au3" Global Const $sCLSID_OpenControlPanel = "{06622D85-6856-4460-8DE1-A81921B41C4B}" Global Const $sIID_IOpenControlPanel = "{D11AD862-66DE-4DF4-BF6C-1F5621996AF1}" Global Const $sTagIOpenControlPanel= "Open hresult(wstr;wstr;ptr);GetPath hresult(wstr;wstr;uint);GetCurrentView hresult(int*)" Local $oOpenControlPanel = ObjCreateInterface($sCLSID_OpenControlPanel, $sIID_IOpenControlPanel, $sTagIOpenControlPanel) $oOpenControlPanel.Open($MicrosoftAdministrativeTools,"",Null) $oOpenControlPanel.Open($MicrosoftDateAndTime,$AdditionalClocks,Null) $oOpenControlPanel.Open($MicrosoftDefaultPrograms,$pageDefaultProgram,Null) $oOpenControlPanel.Open($GUID_MicrosoftDeviceManager,"",Null) $oOpenControlPanel.Open($GUID_MicrosoftDevicesAndPrinters,"",Null) $oOpenControlPanel.Open($MicrosoftHomeGroup,"",Null) $oOpenControlPanel.Open($MicrosoftInternetOptions,$Connections,Null) $oOpenControlPanel.Open($MicrosoftPersonalization,$pageWallpaper,Null) $oOpenControlPanel=0;Free  ControlPanelConstants.au3
      Saludos
    • ManneMoses
      By ManneMoses
      Hello Guys,
      I want to create a simple gui, but with a bigger title bar ( e.g. 2x bigger) Is that possible in any way? I searched the forum but I found nothing. Hope you understand what I mean. Nothing special with the gui, only the size of the title bar should change. Any ideas? Thanks in Advance