Posts
Hongbo Lin
Cancel

本指导记录了在 Windows 下(除了安装外,其余章节 Linux 同样适用)使用 Repo 工具的过程,包括安装 Repo、配置代理、同步全部或部分 Android Open Source Project(APPS)工程源代码到本地,可方便 Android 系统研究人员后续使用 Source Insight 等工具本地查阅代码。 安装 Repo(Windows) 安装 Python ...

概述 根据 Google 的文档,从 Android 4.3 开始,Android 应用框架引入了 App Ops。 App Ops 涵盖了广泛的功能,被用于访问控制和跟踪,帮助运行时权限访问控制和跟踪到电池消耗。也就是说 App Ops 也被用于安全用途,具体而言:新的权限模型由传统 permission 和 App Ops 共同组成,一些权限会额外关联 op,例如 android.p...

OAuth 2.0 RFC(The OAuth 2.0 Authorization Framework)篇幅很长、内容详实,覆盖了包括原理概念、工作流程、报文格式、安全性、拓展性等等诸多方面,直接阅读十分不易。因此,本文结合博主的背景知识,提取、翻译规范主干内容并深入解读 OAuth 2.0,意图帮助读者避免一开始就陷入 RFC 的繁枝末节中。 整体介绍 在传统的客户端/服务器(clie...

本文演示了如何在 OpenWrt 上安装和设置 DDNS 软件包,最后接入 Cloudflare 提供的 DDNS 服务。 安装 ddns 软件包 需要安装 ddns-scripts 和 ddns-scripts_cloudfare.com-v4 两个人软件包 opkg install ddns-scripts ddns-scripts_cloudfare.com-v4 获取 Cl...

本文详细记录了在 openmediavault 上搭建私人 NAS 的过程,包括:安装配置 openmediavault、Docker;部署 Transmission BT 工具、Nextcloud 网盘等容器;配置 HTTP/HTTPS 反向代理和 Let’s Encrypt 证书,最终实现个人 NAS 的搭建。 为什么选择 openmediavault? 简要对比部分主流 NAS 操...

分层 前端(frontend) 将源代码翻译为一个中间表示(intermediate representation, IR)。clang 是 LLVM 中 C 系语言的前端。 词法分析 词法分析是为了识别输入(源代码)中特定单词的准确含义,比如一个单词到底是语言的关键字还是程序员自定义的变量名?注释开始结束?这些分析结果将作为后续语法分析的输入。 词法分析器基本原理是正则表达式+a...

在 OpenWrt 路由器上安装 server 版 Shadowsocks,使得客户端设备能够以 VPN 的形式远程连接到家庭局域网。 在 OpenWrt 上安装 Shadowsocks Server Step 1 - 安装 shadowsocks-libev-server 软件包 前往作者项目主页获取最新版本的 shadowsocks-libev-server 并安装,安装之前用如下...

在 Android 上 Google 提供了一套名为 App Links 和 Deep Links 的由 URI/URL 跳转到原生 Android 应用组件的协议及实现,使得用户从能够从原生应用(包括浏览器页面)直接通过链接跳转到指定的应用内容。本文详细介绍了它们如何运作,并剖析了其中的安全性。 App Links 的实现细节及与 Deep Links 间区别 App Links 是...

在计算机科学领域,声明(Declaration)是指向编译器说明一个变量或函数的信息,包括:名字、类型、初始值等,即声明变量、函数的属性细节;而定义(Definition)则指明变量、函数存储在哪里,当定义发生时,系统为变量或函数分配内存单元。 在 C 语言中,一般的声明语句同时包含了定义,二者同时发生,也就是说声明和定义没有区别。例如,考虑下面的声明(定义)语句 int a; 这里...

介绍 在 《OpenWrt Shadowsocks 安装&配置指南》一文中博主详细介绍了使用 CHNRoutes 规则翻墙方案,本文进一步说明如何在其基础上切换为 GFWList 规则,即仅在 GFWList 中流量的走 Shadowsocks 代理。方案的基本思路是基于 GFWList IP 地址列表构建 iptables (防火墙) 规则,将目标 IP 的流量转发至 Shado...