Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

DarkBASIC Professional Discussion / DBPro Preprocessor released ...

Author
Message
Hubdule
23
Years of Service
User Offline
Joined: 3rd Sep 2002
Location: Gundelsheim
Posted: 2nd Apr 2003 09:27
Hi @ all ...

I've just finished a complete version of the DBPro Preprocessor.
This version needs DBPro Patch 4 and above ... versions below do not work properly due to some needed functions in the DBP compiler ...

What is this preprocessor you'll ask:

"The preprocessor gives you the ability to release protected DBPro source code to the public without giving the source away. The created DBL files are packed/encrypted so the stored functions could only be used but the source couldn't be seen.
You can also create DBL files which contain certain parts of your projects to manage them easily. DBL file creation is very easy. You get all the tools to create import/export functions and DBL files. The preprocessor and tools could be used easily from within the DBPro Editor."

I hope everything works. Please give some comments about it so I can see if it works for you ...

Thanks ...

Homepage:
http://www.colorarts.de/prepro/
Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 2nd Apr 2003 09:31 Edited at: 2nd Apr 2003 09:35
YAY!!! just what Raven's been waiting for (^_^)
downloading now... :: quite excited ::

[edit-]
currently there is now DBL download available

i have a feeling thats you've mispelt something

Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 2nd Apr 2003 09:45
Very impressive indeed - Congrats Hubdule!

Current Project: Retro Compo. Entry.
MrTAToad
23
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 2nd Apr 2003 10:54
Very nice - now you can distribute libraries...

Good news everyone! I really am THAT good...
http://www.nickk.nildram.co.uk/ for great plug-ins - oh my, yes!
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 2nd Apr 2003 13:33
I will test the security of the system once I get home this evening, I need to be sure that my source code is safe from at least average joe (although I admit, securing the source will be difficult as the encryption / decryption is not built into the compiler)

Current Project: Retro Compo. Entry.
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 2nd Apr 2003 18:11 Edited at: 2nd Apr 2003 18:13
@Hubdule

I think you might want to set it so that the pre-processor is turned on by default after it is installed, having to navigate to the configurator is slightly annoying. However when it runs it is incredibly neat as a tool (I only had a few minutes this morning to test it - I'll give you a more thourough overview l8r )

And one other thing, can you set it so that some libraries are included all the time by default (specified in the configurator) - that way we don't have to include it every time we start a project.

Current Project: Retro Compo. Entry.
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 2nd Apr 2003 21:16 Edited at: 2nd Apr 2003 21:19
OK... checked it out, seems secure enough for me

@Hubdule - Just curious, but you did you get it to show up 'X's in the debugger in place of hidden / secured code?

...edit, nevermind its a neat feature of the compiler.

put

hidestart

and

hideend

around the code and it hides it from view in the debugger - neat

Current Project: Retro Compo. Entry.
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 2nd Apr 2003 22:35 Edited at: 2nd Apr 2003 22:36
Hey - I cracked it!

It took a little bit of doing (hacking the compiler with a hex editor and WDASM32 / SoftICE), but anyhow, here are the DBA contents of secured Library.DBL (the sample provided):



Current Project: Retro Compo. Entry.
Hubdule
23
Years of Service
User Offline
Joined: 3rd Sep 2002
Location: Gundelsheim
Posted: 2nd Apr 2003 23:05
Thanks for all the comments

And yes, Rob it is only possible to get the source through WDASM32/SoftICE as everything is taking place in memory. It would be nice if you help me get the thing even more secure

Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 3rd Apr 2003 00:18
@Hubdule

It took me quite a while to get the above source (it certainly isn't easy - if anyone has any doubts about this I wouldn't be worried). This is partly because your app is written in VisualBASIC and then packed . VB apps are absolute bastards to debug as code runs all over the place. If you are not already doing so, compile to P-Code. Also, keep the data encrypted in memory until the last possible moment.

Most of the debugging was done via tracing the compiler (redirecting API calls etc). This is because it is much easier to debug the compiler (written in C++) than your application. Unfortunately there is little you can do about this. You are doing pretty much everything right anyway.

I am still having problems getting the source for largish DBL files - so you are not in danger

Anyhoo, this is an excellent tool and I will certainly be using it for secure, convenient code distribution in the future

Current Project: Retro Compo. Entry.
Hubdule
23
Years of Service
User Offline
Joined: 3rd Sep 2002
Location: Gundelsheim
Posted: 3rd Apr 2003 01:27
Ok thanks for the info about that Rob First moment I read your post I thought all work was for nothing as the protection was hacked within a few hours

About P-Code ... I've heard that this is much more unsecure to compile to P-Code instead of native system code ? Don't know what's better now ... Maybe I'll change that in the near future ...

If you have any other things which could be usefull then just let me know


@Raven ... fixed that spelling bug on the site was late as always hehe

Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 3rd Apr 2003 07:34
(^_^) well i just though i'd point it out cause i know how often i miss the stupid little things like that myself all the time.

i kinda find it amusing how it goes "you must configure the preprocessor before first use!" and you have 3 options, on-off-reset (which turned it off lol) but atleast its simplistic hehee

i'm trying to think of how i can go about making my UIS with it, perhaps would be good if you could look into an include style library - so we place at the top
`##include <dbhello.dlib>

and then you can just use the functions within it or like types
i mean all i've been looking for has been something just to keep include file functions safe - but perhaps i should play with this a little longer when i have time.

Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
Hubdule
23
Years of Service
User Offline
Joined: 3rd Sep 2002
Location: Gundelsheim
Posted: 3rd Apr 2003 08:40
It won't be a problem to support something like that Raven. It's just another command to parse. I thought that it'll be quite usefull to just include functions/parts from a DBL you need because you can store a huge amount of code within them so there could also be code within the DBL you don't need so why include ithen ... If you want to create an include file for a DBL file simply right click in the editor window, open the "Addd DBL functions" then mark all parts you need and add them to a new source file ... I can include an automatic DBA include file creation option for easier handling if that's more usefull ?

For the on/off/reset thing I can only say: Use on/off to switch it on or off and the reset button if the preprocessor refuses to turn off (which could happen when the cfg files are messed up) to reset the configuration to a state before the preprocessor was installed (This was just included for all DBPro newbies because it's easier then tell them copy file A to Position B and rename to C ...).

If there are anything else that should be included just let me know and I'll see what I can do

Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 3rd Apr 2003 14:43
"unsecure to compile to P-Code"

In one of R!SCs tutorials he mentions that P-Code is harder to break, so I would suggest that it is.

Current Project: Retro Compo. Entry.

Login to post a reply

Server time is: 2026-07-11 05:24:40
Your offset time is: 2026-07-11 05:24:40