BoringSSL 与 OpenSSL
📚 Google 的 BoringSSL 是 OpenSSL 的分支,Android 的 SSL 栈基础。
关系
- OpenSSL:老牌 SSL 库
- BoringSSL:Google 从 OpenSSL fork 的分支,Android/Chrome 用
- Android 上
libssl.so/libcrypto.so实际是 BoringSSL
r0capture hook 的符号
SSL_read、SSL_write、SSL_get_fd、SSL_get_session、SSL_SESSION_get_id 这些函数名在 OpenSSL 和 BoringSSL 里完全一样(API 兼容),所以 r0capture 用 *libssl* 通配能匹配到 Android 的 BoringSSL。
darwin 分支
javascript
Process.platform == "darwin" ? "*libboringssl*" : "*libssl*"iOS/macOS 上库名直接是 libboringssl,所以 darwin 分支用 *libboringssl*。