Desta logo Desta clients
PbGuard - protect PowerBuilder applications against decompilers
PbGuard is a command line utility that implements encryption of PowerBuilder applications to protect them against decompilers or unauthorized modifications.

Key features:

  • Support versions of PowerBuilder from v.5 to v.12 (classic)
  • Support the p-code (PBD) and the machine code (DLL) targets
  • The program source code is not changed to support protection. PbGuard protects compiled executables and libraries (the source code is not even needed).
  • Each encryption uses a unique generated encryption key, so that no two protected programs would have the same key.
  • Support reusing the key for applications sharing their libraries.
  • Support adding encrypted PBDs to library list at runtime.
  • Protected program does not require any additional external DLLs

    Requirements/limitations:

  • PbGuard itself and programs protected by it can only work under Windows 200X, XP, Vista, 7. (Windows 9X series are not supported)
  • Net targets are not supported


    Why protect PowerBuilder applications?

    In the past, PowerBuilder developers were not worried much about protecting their applications from cracking and source code theft, as PowerBuilder had its own undocumented format of executable files and P-code, and there were no tools which were able to produce the source code from the p-code. In addition, each new version of PowerBuilder had new format of p-code. So the possibility of unauthorized access to source code and analysis of the protection code had been seriously limited.

    However, in recent years, a few decompilers were introduced, allowing automatic conversion of the compiled libraries (PBD / DLL) to PowerScript code. At the moment, there are decompilers for all existing versions of PowerBuilder. Moreover, free demo versions of the decompilers can be easily found on the Internet, and they allow viewing the source code as well. Decompilers made the hacking of protection code trivial and accessible to almost any attacker, even without specific knowledge of the internals of PowerBuilder applications.

    Also, among PowerBuilder programmers there is a misconception that the machine code (DLL) builds protect the application from the decompiler. But this is just not true: DLLs produced using the machine code builds include copies of the corresponding PBDs and therefore can be decompiled as well.

    There are two main ways of protection from decompilers - source code obfuscation and encryption of executable files.

    Obfuscation is a transformation of the source code that does not change the meaning of the program, but make its analysis hard (meaningless names of variables/functions, no formatting, etc). Obfuscation protects programs against theft of the source code, since obfuscated code is difficult to use in other projects. However, to protect from the analysis it's not enough to obfuscate the source code, because decompilers still produce PowerScript code, which can be relatively easy to explore (even obfuscated). In addition, obfuscation is not always possible, especially in projects with a lot of dynamically generated code. That requires substantial effort on testing the code processed by obfuscators.

    Therefore, the encryption of executable application files is an important part of protection against hacking so that a decompiler could not work at all. In this case, an attacker would have to analyze the machine code of the encryption module to extract unencrypted executables, and then to use a decompiler. Analysis of machine code, especially the code that is written specifically to confuse the attacker, is a considerably more complex task than running an automatic decompiler which is available freely on the Internet. And not everyone will be able to do it. Of course, there is no such a protection, which would not be broken, sooner or later. However, by that time new protection modules will become available and the attackers would have to deal with the new algorithms of protection. That's why the use of encryption allows software developers to be always one step ahead of hackers and to make cracking less profitable than buying a legal copy of the program.

    This useful PowerBuilder tool is developed by our friend and partner Anatoly Moskovsky www.sqlbatch.com

    Download/Order
    PbGuard Lite
  • Free of charge
  • No customer support
  • Weak encryption

    Download PbGuard Lite

    PbGuard Pro
  • Strong protection
  • One year of customer support which includes free bug fixes and free updates to the most current version of PbGuard Pro
  • One bought copy can be used by any developer in your organization

    Purchase PbGuard Pro ($295)

    Custom PbGuard protection module
    All PbGuard Pro features plus:
  • Encryption module implemented specially for you (or supplied by you if possible)
  • Optionally, embedding additional encrypted files which are transparently available to your application at run-time.
  • Your suggestions are welcome

    The price will depend on the features you request. For details, please contact us by email using the link below.

    Order a custom PbGuard protection module

    Version History

    PbGuard 1.2.2
  • Support larger resource sizes in EXE.

    PbGuard 1.2.1

  • Fixed interaction with the Data Execution Prevention (DEP) technology.
    Advertisement: Desta are looking for a contract job...
    Desta are looking for a contract job as distant powerbuilder software engineers (outsourced developers). Our team currently has the manpower resource of 2,000 man-hours monthly and can increase it upon request and/or in case of extensive development that requires extra efforts.
    Please, find our CV at our official site: http://desta.biz
    About Desta Company
    Desta is a software company engaged in development and implementation of software in the fields of the accounting (including GAAP) management, financial analysis, HR management, forwarding, agricultural operations, travel business, etc. Many companies and enterprises use our software. Well-considered price policy and rich functionality give us the opportunity to offer flexible and forward-looking solutions.