安卓应用安全与开发技术:Go语言、TEE及未来展望
在安卓应用开发和安全防护领域,有许多技术值得我们深入探索。本文将围绕SSL Pinning、Go语言、Trusted Execution Environment(TEE)以及安卓的未来发展等方面展开介绍。
1. SSL Pinning的价值
SSL Pinning在一定程度上能增加应用的安全性。即使是微小的优势也可能起到关键作用,逆向工程师绕过SSL Pinning所需要付出的额外工作,可能会让他们放弃对我们应用的逆向分析。
2. Go语言的魅力与应用
Go语言是由谷歌开发的开源编程语言,它具有强大的性能和出色的可移植性,跨平台编译轻松便捷,运行速度也非常快。例如,在之前的工作中,将一个基于Java的API用Go语言重写后,服务器的CPU使用率从90 - 93%骤降至2 - 3%,效果惊人。
引入Go语言的目的是为了在安卓APK中实现一个原生库,该库将处理应用的SSL连接和SSL Pinning功能,增加逆向工程师破解的难度。需要注意的是,Go编译器自1.5版本后完全移植到了Go语言,并且Go有一个运行时环境,负责程序执行的各个方面,如调度、垃圾回收和内存管理等。在逆向工程时,我们看到的代码并非简单的Go到汇编代码的转换,还需要考虑运行时环境。
3. Gomobile的使用
Go在1.10版本引入了gomobile工具,用于通过编写Go代码来构建安卓和iOS移动应用。以下是使用gomobile的具体步骤:
- 安装Go :按照官网 [https://golang.org/doc/install]
超级会员免费看
订阅专栏 解锁全文
835

被折叠的 条评论
为什么被折叠?



