Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. how to implement Obfuscator LLVM for qmake
Forum Updated to NodeBB v4.3 + New Features

how to implement Obfuscator LLVM for qmake

Scheduled Pinned Locked Moved Unsolved General and Desktop
4 Posts 4 Posters 425 Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B Offline
    B Offline
    Blackzero
    wrote on 25 Jun 2024, 21:26 last edited by
    #1

    How to implement obfuscator LLVM for qmake ? is that possible

    S 1 Reply Last reply 27 Jun 2024, 06:24
    0
    • C Offline
      C Offline
      Christian Ehrlicher
      Lifetime Qt Champion
      wrote on 26 Jun 2024, 05:45 last edited by
      #2

      Better ask - what should this be and what should be the gain?

      Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
      Visit the Qt Academy at https://academy.qt.io/catalog

      1 Reply Last reply
      0
      • V Offline
        V Offline
        Volker75
        wrote on 26 Jun 2024, 16:13 last edited by Volker75
        #3

        I guess he is talking about this:
        https://github.com/obfuscator-llvm/obfuscator/wiki

        I don't think that it will "help", since guys that want to read the binary can still read it. They only need a bit more time to read it. So it won't help much. Also the run time will be slower. That is bad.

        Many years ago I coded by own obfuscator. But it doesn't add additional stuff into the binary. It only replace all variable names by very short new names and also removes all with spaces. In fact it was only my first "just for fun" coding project to write a parser.
        There are in fact 2 advantages that might be useful in a few cases.

        1. If you compile the same source on a lot of different systems, then you can save time by that, since the new source code is much smaller, so it is a bit faster to compile.
        2. It might be useful for guys that don't trust Microsoft or Apple too much; so if you fear that they "steal" your code by making a copy of your data in their cloud (There are currently again bad news about Windows 11 and auto enable cloud saving). Since by that you can develop on a (hopefully) safer Linux computer and then use the short source code on Windows and MacOS. But in fact even that source can be read. Similar to every binary file.
          So in total not very useful.
        1 Reply Last reply
        0
        • B Blackzero
          25 Jun 2024, 21:26

          How to implement obfuscator LLVM for qmake ? is that possible

          S Offline
          S Offline
          SimonSchroeder
          wrote on 27 Jun 2024, 06:24 last edited by
          #4

          @Blackzero said in how to implement Obfuscator LLVM for qmake:

          How to implement obfuscator LLVM for qmake ? is that possible

          Well, not that obfuscation helps other than making your software slower (at least in the case that @Volker75 mentioned). From Qt Creator it is quite easy by just adding the obfuscator-llvm compiler to your list of compilers and create a corresponding kit. I am not sure how that would work on the command line, though. Use QMAKE_CXXFLAGS to set additional compiler flags to turn on obfuscations (if you are talking about obfuscator-llvm).

          But honestly: Don't do this. It is not making your software safer.

          1 Reply Last reply
          1

          4/4

          27 Jun 2024, 06:24

          • Login

          • Login or register to search.
          4 out of 4
          • First post
            4/4
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • Users
          • Groups
          • Search
          • Get Qt Extensions
          • Unsolved