-1
A
回答
3
顧名思義,Google Native Client使用本機代碼。 這意味着,您的代碼被編譯,就像桌面上的平均可執行二進制文件一樣。它可以反彙編,但源代碼無法恢復。
1
本地客戶端意味着您正在客戶端上運行本機代碼。在大多數情況下,您將在客戶端上運行i386或amd64機器語言。如果您使用的是編譯語言,那麼您的用戶無法直接恢復它。用戶可以反彙編你的軟件來恢復你的代碼的一些信息,但他們不能恢復原始源代碼(除非它是是彙編語言)。從反彙編的二進制文件重寫一段軟件很困難,但如果時間充足,通常可以完成。這真的取決於你對使用你的代碼的人有多麼偏執。
1
本機客戶端的結構要求,使可靠的反彙編,以便它可以執行靜態分析可以使一些代碼混淆技術無法使用。這些通常與惡意軟件用於惡意軟件分析相同的技術相同,即如果通過不同的偏移量解碼,則對指令流有兩種有效的解釋。但是,Native Client會提供一種自修改代碼,因爲它具有JIT支持。例如,Mono使用即時代碼生成,只要JIT代碼繼續符合NaCl安全要求,就可以使用相同的接口來創建混淆代碼。
使用JIT接口當然會使您的代碼不可移植到其他CPU體系結構。
相關問題
- 1. 如何保護源代碼?
- 2. 源代碼保護
- 3. 如何保護x ++源代碼
- 4. 保護DLL的源代碼
- 5. 保護android源代碼
- 6. 保護源代碼段
- 7. 保護AngularJS源代碼
- 8. 如何保護Javascript代碼?
- 9. 保護腳本語言源代碼
- 10. jxcore無法保護源代碼
- 11. 在Matlab和Python中保護源代碼
- 12. 保護Ruby代碼
- 13. Google的Native Client和編譯SDL2
- 14. 如何保護Google電子表格中的Apps腳本代碼?
- 15. 在Google Native-Client中調整音量
- 16. Android系統如何保護我的源代碼
- 17. 如何真正保護您的Javascript/JQuery源代碼?
- 18. golang如何構建lib以保護源代碼?
- 19. 如何保護我的HTML Metro應用程序的源代碼?
- 20. 如何在部署時保護我的源代碼?
- 21. 保護PHP代碼
- 22. 保護Ruby代碼
- 23. PHP - 保護代碼
- 24. 如何保護我們的代碼?
- 25. 如何保護修改的C#代碼
- 26. 如何保護azure webjob代碼執行?
- 27. 如何保護我的代碼
- 28. 如何保護您的客戶代碼
- 29. 如何保護圖表代碼?
- 30. 如何爲Google Native Client獲取3D上下文