Register to post in forums, or Log in to your existing account
 

This forum is locked: you cannot post, reply to, or edit topics.  This topic is locked: you cannot edit posts or make replies.     Home » Forums » General zApp Discussion
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Wed Apr 20, 2005 9:54 pm   

Script compression and protection
 
I've added another new feature to zApp today. It's part of the new event implementation, but it effects *any* script used in zApp.

Now, all scripts and event handlers (except the OnMouseMove which needs high performance) are compressed using ZLib compression. This has the side benefit that someone looking through memory to find your scripts won't find any clear text. Not as good as encryption, but it prevents casual source code snooping. Also, it saves a lot of memory when you have large scripts in your applications.

In addition, as described on the ZXLFiles documentation page, I have implemented the protection and locking for scripts within ZXL files. So while a plugin can *add* a script to a control in a ZXL file, it cannot examine or replace an existing script.

Within the ZXL file itself you still have full read/write access to your scripts and event handlers. But any attempt to access a protected script outside of your own ZXL file will fail. This combination of new features should make ZXL files a lot more secure than before, even though it's impossible to make them completely secure (you can always run a debugger and trap Windows when it decrypts and decompresses a script, or trap VBScript itself when it executes your script).

Finally, a small but important tweak: if you rename the ZAPP.EXE to the same as your ZML/ZXL file, zApp will no longer modify the registry entries for ZML and ZXL file extensions to point to the renamed image. So, that allows multiple copies of zApp (and renamed zapp.exe) to coexist on the same system without interfering with each other. This will help when I put together the bundling system in distributing your applications with a renamed ZAPP.EXE to make it look less like using a runtime, and avoids the version conflict problems that runtimes usually have.

Oh yeah, the ZLIB compression is also now available within the zApp string library as str.compress and str.decompress.

That's the changes for today. I hope to have the new event implementation finished tomorrow and will release a new weekly build at that time so people can play with it and see what else might have gotten broken.
Reply with quote
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.     Home » Forums » General zApp Discussion All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
© 2009 Zugg Software. Hosted on Wolfpaw.net