Posts
Hongbo Lin
Cancel

理解 App Ops

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

深入理解 OAuth 2.0

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

OpenWrt Cloudflare DDNS

本文演示了如何在 OpenWrt 上设置 DDNS,接入 Cloudflare 提供的 DDNS 服务。 获取 Cloudflare API key Cloudflare DDNS API 是 RESTful API,调用时必须使用帐户对应的 API key,方法是前往 My account 页面获取。例如 1 ebcdefghijklmnopqrstuvwxyze1234567890...

搭建 openmediavault NAS

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

编译器介绍

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

OpenWrt 安装 Shadowsocks Server

在 OpenWrt 路由器上安装 server 版 Shadowsocks,使得客户端设备能够以 VPN 的形式远程连接到家庭局域网。 Step 1 - 安装 shadowsocks-libev-sever 前往作者项目主页获取最新版本的 shadowsocks-libev-sever 并安装 Step 2 - 创建配置文件 1 2 3 4 5 6 7 8 9 10 vim /etc...

App Links 及其安全性

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

声明(Declaration)与定义(Definition)的区别

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

OpenWrt Shadowsocks 使用 GFWList 路由规则

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

KMS on OpenWrt router for activating Windows Office

In this tutorial, I will introduce how to set up a KMS (Key Management Service) on OpenWrt 18.06.01 and activate your Windows Office 2016 VOL (Volume License) editions automatically. Install and r...