最近有个需求需要定制一个证书安装接口提供给业务应用:实现应用能够通过接口安装证书并且无需设置密码以及鉴权放行。
一般情况在 Android 系统中安装 CA 证书有两种方法:
- 通过设置应用通过设置应用安装需要用户手动操作,并且安装过程需要满足用户设置了锁屏密码。
- 通过 MDM 接口
还有一种方式是应用调用 MDM 接口,通过installCaCert
系统接口安装证书;这种方式可以实现用户不感知,适合编程的方式。
程序调用接口是最好的选择,先来把原有的证书安装使用逻辑撸一下。
最近有个需求需要定制一个证书安装接口提供给业务应用:实现应用能够通过接口安装证书并且无需设置密码以及鉴权放行。
一般情况在 Android 系统中安装 CA 证书有两种方法:
installCaCert
系统接口安装证书;这种方式可以实现用户不感知,适合编程的方式。程序调用接口是最好的选择,先来把原有的证书安装使用逻辑撸一下。
深度学习(DL,Deep Learning)是机器学习(ML,Machine Learning)的子集,机器学习的目标是实现人工智能(AI,Artificial Intelligence)。
WireGuard
是一种现代、快速且安全的虚拟专用网络(VPN)通信协议和免费开源软件。
WireGuard
的设计目标在于易于使用、高速性能和低攻击面。它利用了最新的加密技术,旨在提供比 IPsec
和 OpenVPN
等传统VPN协议更好的性能和更强大的功能。WireGuard
的核心代码相对精简,被 Linux
之父 Linus Torvalds
称为 艺术品
,其核心代码只有四千多行。
此外,WireGuard
协议通过 UDP
传递流量,使其在速度和安全性方面具有显著优势。它被设计为简单、高效,并适用于从低端设备如树莓派到高端服务器的广泛环境。
这玩意简单、灵活,怪不得会被
Linus Torvalds
直接合入内核。本文记录的是WireGuard
的一种用法。
Netty
是一个异步事件驱动的网络应用框架,用于快速开发可维护的高性能服务器和客户端。
在 Android
平台,经常用 Netty
来对接物联网设备,处理各种自定义协议的场景。
这不今天碰到个场景,说需要终端在同时连接 蜂窝数据
和 WiFi
的时候,应用程序能够一面使用 WiFi
网络和一些物联网设备通信,一面使用 蜂窝数据
和服务器通信。并且这两种访问是并行的,协同工作。
最近考虑将虚拟机中的 OpenVPN
服务搬迁到路由器当中。
路由器是 Redmi AC2100
,运行的 OpenWrt 23.5
,网上的博文都是各种命令行搭建的,我不喜欢。
这里记录一下使用图形界面搭建的笔记。
查找文件是任何操作系统上非常常见的任务。Linux Find 命令是 Linux 系统中最重要和最常用的命令之一。它可用于查找文件和目录并对其执行后续操作。它支持按文件、文件夹、名称、创建日期、修改日期、所有者和权限进行搜索。
在本文中,让我们回顾一下 Linux 的实际示例,这些命令对新手和专家都非常有用。
OrangePi-3b
搭载了一颗 紫光展锐
的 WIFI & BT
一体的无线模组,型号是 UWE5622
。
目前主线 Kernel
当中没有对应的驱动,需要移植一下。
研究HTTPS的双向认证实现与原理,踩了不少坑,终于整个流程都跑通了,现在总结出一篇文档来,把一些心得,特别是容易踩坑的地方记录下来。
买了这个 OrangePi 3b
之后,顺手给它配一个5寸的屏幕。
淘宝里面找到一款设计给树莓派使用的屏幕,刚好 OrangePi 3b
的打孔位置和这个屏幕完全匹配,所有果断入手。
但是,这块屏实测默认只有香橙派的 Android
固件能够点亮它,其他的都不能直接点亮(LCD 屏通常需要特殊适配),不过至少也证明硬件是可以兼容的。
这就来适配一下。
为了编译项目而不污染操作系统,笔记记录的操作都是使用的 Docker
和 Debian 12
的容器来完成的。
这一篇文章主要是记录一下之前使用到的编译环境,方便今后快速调用。
这篇笔记其实是在搞完 U-Boot
、Kernel
和 RootFS
之后才整理出来的,但是为了方便一些按照这个系列文章实验的同学阅读,这里将它的顺序调整到第二篇。
所以这篇笔记是开了上帝视角,提前记录了后续构建系统要用到的软件包。不过都有明显的用途记录,方便理解。