From 51550e98e8e5d29d07ebfda40bec7a2061eda1f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Sat, 20 Jun 2020 16:23:44 +0100 Subject: [PATCH] README: simplify and update with the latest changes --- README.md | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 5624801..65c5cff 100644 --- a/README.md +++ b/README.md @@ -21,21 +21,14 @@ The tool is designed to be: ### Mechanism -The tool wraps calls to the Go compiler to transform the Go source code, in +The tool wraps calls to the Go compiler and linker to transform the Go build, in order to: * Replace as many useful identifiers as possible with short base64 hashes -* Remove [module build information](https://golang.org/pkg/runtime/debug/#ReadBuildInfo) -* Strip filenames and unnecessary lines, to make position info less useful -* Replace all string literals with AES encrypted literals - -It also wraps calls to the linker in order to: - -* Enforce the `-s` flag, to not include the symbol table -* Enforce the `-w` flag, to not include DWARF debugging data - -Finally, the tool requires the use of the `-trimpath` build flag, to ensure the -binary doesn't include paths from the current filesystem. +* Remove all [build](https://golang.org/pkg/runtime/#Version) and [module](https://golang.org/pkg/runtime/debug/#ReadBuildInfo) information +* Strip filenames and shuffle position information +* Obfuscate literals, if the `-literals` flag is given +* Strip debugging information and symbol tables ### Options