2015-12-02 39 views
0

我需要編譯我的shell腳本,因爲我要保護它的源代碼。我已經閱讀了關於shc,但我也讀到,它並不是完全安全的,因爲有了少量的知識(或大腦和谷歌),任何用戶都可以「反編譯」它。有沒有辦法編譯我的腳本,使其可執行,但完全不可讀和'不可編譯'?編譯shell腳本,使它完全不可讀

+1

號想想看,bash有能夠閱讀它足以令它的意義並運行它,如果Bash可以做到這一點,所以人(可能使用內置的bash調試設備)。有些事情可以混淆代碼,但最多可以減慢某些人的情緒。 – blm

+0

因爲有了少量的知識(或大腦和谷歌),任何用戶都可以*'反編譯'* it._少量的知識...瞭解反編譯的C代碼? – rpax

+1

我們可以辯論的小/中/大量的知識永遠的意思,但事實是,它並不難拆卸/反編譯代碼,並找出它在做什麼。當然,任何人都應該依靠它的難度來保護知識產權,或者任何海報試圖保護的東西都不難。 – blm

回答

1

只能使其難以被人類閱讀。腳本是純文本文件,它們必須由腳本解釋器可讀。

1

我的方式做了我自己的bash混淆(obash),其提取腳本所需的密鑰不會存儲在腳本中(但使腳本不分配)。有一個選項可以生成靜態可重用二進制文件,但只能在具有多個兼容級別(內核系統調用接口,glibc,基本二進制兼容性)的系統上執行。 製作可重新分發的二進制文件也意味着將密鑰存儲在生成的二進制文件中,但存儲的密鑰需要在使用前進行操作。 您可能想嘗試一下,看看obash是否能爲您提供更好的服務。