技术标签: atf optee kernel linux 导读目录 trustzone
快速链接:
.
个人博客笔记导读目录(全部)
- 付费专栏-付费课程 【购买须知】:
- ARMv8/ARMv9架构精选系列–目录
- ARMV8/ARMV9/Trustzone/TEE安全课程
- 联系方式-加入交流群 ----联系方式-加入交流群
【register & assembly】
- [register]-ARMV8-aarch64的通用寄存器介绍和总结
- [register]-ARMV8-aarch64 部分系统寄存器总结(必背)
- [register]-ARMV8系统中通用寄存器和系统寄存器的介绍和总结
- [register]-Cache Type Register(CTR)寄存器介绍
- [register]-TCR(Translation Control Register)寄存器详解
- armv8/arnv9的aarch64架构中系统寄存器的分类和总结
- [ARM-assembly]-ARMv8-A64指令集总结和学习
- [ARM-assembly]-ARMV8-A64指令编码介绍
- [assembly]-MMU的地址翻译(Address translation)指令介绍
- [assembly]-ARMV8的cache的指令集介绍
2.2、【专题目录02】gic/异常/中断
- .
精选- 00-《armv8/armv9中断系列详解》-armv8/armv9中断系列详解-序言
- 02-《armv8/armv9中断系列详解》-ARM gicv3/gicv4的总结-基础篇
- 03-《armv8/armv9中断系列详解》-armv8/armv9中断系列详解-硬件基础篇
- 04-《armv8/armv9中断系列详解》-Linux Kernel/optee/ATF/hafnium等操作系统的异常向量表的速查
- 05-《armv8/armv9中断系列详解》-Linux kernel中断相关软件导读
- 06-《armv8/armv9中断系列详解》-optee3.14中断相关软件导读
- 07-《armv8/armv9中断系列详解-TF-A中断相关软件导读 – TODO
- 08-《armv8/armv9中断系列详解》-中断示例展示(不含虚拟化部分)
- 09-《armv8/armv9中断系列详解》-optee运行时来了一个REE(linux)中断–代码导读
- 10–《armv8/armv9中断系列详解》-中断示例展示(虚拟化部分)
- [答疑]-中断流程举例:在TEE侧时产生了FIQ,回到REE后为啥又产生了IRQ
- [答疑]-中断流程举例:在REE(SCR.FIQ=1)侧时产生了FIQ,跳转到EL3后做了哪些事情?
- Linux和optee双系统中1020-1023号的中断号的使用
- EL3中设置的中断的routing模型
- 50-armv8/armv9中断系列详解-中断示例展示(虚拟化部分)
- 深入了解 ARMv9对不可屏蔽中断的支持
- Linux Kernel支持NMI的三种方式
- gic中某些寄存器写不了的解决方法
Common- linux和optee的中断处理流程举例(gicv3举例)
- 中断虚拟化-Host和Guest的中断处理流程举例(gicv3举例)
SDEI初探-透过事务看本质
gic相关- [gic]-ARM gicv3/gicv4的详细介绍-2020/08
- [gic]-ARM gicv3/gicv2的总结和介绍-PPT
- [gic]-ARM gicv2和gicv3的中断模型总结
- [gic]-gicv2的bypass功能
- [gic]-gicv3/gicv4的feature总结
ARM Core相关- [ARM异常]-ARM Core如何响应中断的
- [ARM异常]-ARMV8-aarch64异常和中断处理概念详细介绍
- [ARM异常]-ARMV8-aarch64 异常(中断)是如何跳转到向量表的
- [ARM异常]-异常进入和异常退出时的arm core的硬件自动的行为
- [ARM异常]-armv8/armv9异步异常类型、路由、屏蔽
- [ARM异常]-armv8/armv9同步异常的介绍
- [ARM异常]-SPIs(共享中断)routing到指定CPU的方法
- [ARM异常]-中断的术语介绍:target,assert,taken,acknowledge
- [ARM异常]-ARM体系中是否支持中断嵌套
- armv8的Serror的理解
Linux Kernel- linux kernel中设置向量表基地址
- Linux Kernel 5.14 arm64异常向量表解读-中断处理解读
- Linux Kernel中断下半部分实现的三种方式
- 探究实现中断下半部分的第四种方式
- 在Linux Kernel中有没有定义和实现FIQ向量
- 在linux、optee、ATF中的中断异常向量表
- 思考:Linux Kernel的中断处理函数中是否会被其它程序(中断/异常)打断?
- irq domain介绍和代码导读
optee- optee3.14中的异常向量表解读–中断处理解读
- optee中添加一个中断以及底层代码的相关解读
- optee中关于异常向量表、中断等的深入思考
- optee切换到REE的几种方式 — optee处理FIQ会主动切REE
- optee的RPC设计(模型)详解 — optee处理FIQ和RPC相关
- optee的RPC流程的代码详解
- optee中的中断处理详解
- optee中的thread_vector_table线程向量表— optee的线程向量表和中断没关系,但有相似的地方
- optee对std smc的处理的详解
- optee的fast call的介绍
- optee运行时来了一个REE(linux)中断–代码导读
- optee中断处理的介绍(概念篇)
2.3、【专题目录03】mmu/cache
《深度学习cache系列》 - 2022
- 00-cache思考篇
- 01-简述cache的基本概念和使用场景
- 02-cache的基本概念原理扫盲
- 03-cache的查询原理
- 04-多核多cluster多系统之间缓存一致性概述
- 05-cache相关的系统寄存器
.mmu
- armv8/armv9 MMU深度学习
- 深度学习arm MMU一篇就够了
- [mmu/cache]-ARMV8-aarch64的虚拟内存(mmu/tlb/cache)介绍-概念扫盲
- [mmu/cache]-ARM MMU的学习笔记-一篇就够了
- LearnTheArchitecture-MemoryManagement
- Memory Management Examples
- armv8/armv9页表属性(page descriptor)的详细介绍
- Translation Regime介绍
.其它
- 深度学习armv8/armv9 cache的原理
- [mmu/cache]-ARM cache的学习笔记-一篇就够了
- 有关多核一致性的理解和思考
- cache/TLB里分别都有什么?
- 深度学习armv8/armv9 cache的原理
- MMU关闭时Cache的缓存策略是怎样的
- 多级cache之间的替换策略
- A53 cache的架构解读
- 深度学习arm cache系列–一篇就够了
- [assembly]-MMU的地址翻译(Address translation)指令介绍
- [assembly]-ARMV8的cache的指令集介绍
- [register]-Cache Type Register(CTR)寄存器介绍
- [register]-TCR(Translation Control Register)寄存器详解
【Trustzone & 安全架构】
- [trustzone]-ARM trustzone的安全扩展介绍-一篇就够了
- 思考:通过MMU/TLB/Cache对安全内存攻击的可能性
- [trustzone]-TZC400学习总结
- [trustzone]-ARM Trustzone架构下的软件框图
- [armv9]-ARMV8/ARMV9安全架构介绍 --arm安全架构趋势
- [armv9]-ARMV9 CCA 机密计算简介
- [armv9]-动态Trustzone技术的介绍
- [armv9]-Introducing-Arm-Confidential-Compute-Architecture
【安全技术】- 01-防止Stack smash的技术
- 02-防止stack buffer overflows攻击的方法 : ShadowCallStack
- 03-防止stack buffer overflows攻击的方法 : Canary 漏洞缓解机制
- 04-[armv9]-PAC:Pointer authentication和BTI:Branch target instructions介绍
【安全博文】
物理攻击规避(Physical Attack Mitigation)
【architecture】
- armv8/armv9的简介-学习这一篇就够了
- [architecture]-CPU(ARM)启动的第一条指令
- [architecture]-Cortex-A53的configuration signals
- [architecture]-DBG、DMB、DSB 和 ISB指令介绍
- [architecture]-DMB、DSB 和 ISB指令的深度解读
- [architecture]-arm exclusive机制介绍
- [architecture]-ARMV8的The current Program Counter (PC)介绍
- [architecture]-ARMV7架构下SecureMonitor双系统切换时保存和恢复哪些寄存
- [architecture]-ARMV7架构下Linux Kernel的Userspace进程切换时保存和恢复哪些寄存器
- [architecture]-Armv8 Cryptographic Extension介绍
- [architecture]-ARMV8的RAS Extension(Reliability、Availability、Serviceability)介绍
- [architecture]-ARM AMBA/AXI/ACE/LITE总线介绍
- [architecture]-spin_unlock中是怎样让cpu退出standby模式的
- [architecture]-ARM SMMU学习概念总结一篇就够了
- [architecture]-处理器的顺序和乱序执行
- [architecture]-armv8-aarch64种的SIMD/FP指令介绍
- 01-缓存一致性—基础知识
- 02-缓存一致性—实现big.LITTLE、GPU 计算和企业应用
- 03-缓存一致性—提高性能和引入CoreLink CCI-500
- CoreLink CCI-550的概念介绍
- [armv9]-ARM最新架构为memcpy/memset底层的实现提供新的指令
- ARMV8/ARMV9的执行状态的切换
- SMMU学习这一篇就够了
- 思考: 什么时候需要disable MMU/i-cache/d-cache?
- Cache多核之间的一致性MESI
- 深度解读DynamIQ架构cache的替换策略
- context switch的切换过程(TTBR0的切换/ASID的介绍)
- 思考:EL3直接返回到EL1时需要配置EL2寄存器吗
- 思考:开启MMU瞬间出现的问题以及解决方案
- ARMV8/ARMV9或gic中某些寄存器写不了的解决方法
- S3_0_C12_C12_7是啥寄存器
- 最全讲解WFE和WFI进入低功耗的原理机制
- FPU/VFP/ASE/NEON/MPE/SVE/MVE分别都是什么意思?
- Neoverse Roadmap
- SOC的多核启动流程详解
- 深夜学习:有关Inner、Outer等相关词汇的理解
- ARMv9新特性:虚拟内存系统架构 (VMSA) 的增强功能
- Cortex-A715的介绍
【技巧】
操作系统中如何去读写一个armv8/armv9/gic寄存器
【其它】
[toolchains]-ARM ToolChains介绍
[PSA]-PSA Certified简介
【思考 & 实验 & 答疑】
ARMV8 code reset和warm reset的理解
有关中断唤醒源的思考
PSCI多核启动-Linux Kernel从核启动-TEE开启多核
[思考]-32位的应用程序为什么不能跑64位的应用程序
[实验]-从汇编代码来看volatile关键字的作用
[答疑]-ATF中异常向量表为何没有实现“Current Exception level with SP_ELx, x>0.“
[答疑]-中断流程举例:在REE(SCR.FIQ=1)侧时产生了FIQ,跳转到EL3后做了哪些事情?
[思考]-ARM LR寄存器的思考
[答疑]-中断流程举例:在TEE侧时产生了FIQ,回到REE后为啥又产生了IRQ
[问答]-EL1t和EL1h中的后缀t和h分别是什么意思
[问答]-ARM文档中的†和‡的含义
[记录]-Cortex-A76仅EL0支持aarch32
【 old文章】
以下都是辣鸡文章不用看!!!!
[ARM异常]-ARMV8的异常详细介绍
[ARM异常]-ARMV8的中断的routing和Mask表
[ARM异常]-ARM Core中与中断相关的寄存器
[ARM异常]-同步异常产生和返回(svc/hyc/smc/eret)
[ARM异常]-linux中(aarch/aarch64)异常向量表介绍
[ARM异常]-图解armv7/armv8的异常向量表和基地址
[ARM异常]-ARMV8-aarch32的异常向量表介绍
[ARM异常]-armv8-aarch64下当中断来时自动触发的硬件行为
[ARM异常]-ARMV8虚拟中断的介绍
[gic]-gicv3的1020-1023号的中断的使用
1、linux中的SGI(核间中断)IPI_RESCHEDULE详解
2、linux kernel的异常量表介绍
3、linux kernel中的中断处理流程
1、optee中的异常向量表的实现
2、optee的异常向量表-(irq,fiq,svc…)
[architecture]-ARMV8的一些总结-一篇就够了
[architecture]-Generic Timer
[architecture]-ARMV7的模式切换总结
[architecture]-ARMV8的Execution states介绍
[architecture]-ARMV8的Exception Level切换总结
[architecture]-ARMv8/armv7/linux的栈/sp的学习和总结
[Core]-ARM CORE的发展历史
[Core]-ARM-A系列Core的分类快速参考
[core]-ARM Core的分类和总结
[core]-ARMV7-A、ARMV8-A、ARMV9-A 架构简介
[core]-ARM A76学习笔记
[reference]-ARM Term术语汇总
[reference]-Features_in_A-profile
[reference]-armv8汇编学习-书籍推荐
[reference]-ARM缩写
[reference]-ARM/TEE/security等论文中的缩写和参考文献
[reference]-ARM core timeline
[reference]-MTK智能机(armv8)SOC分类和总结
[trustzone]-ARMV8的aarch64和aarch32环境下ELx级别的理解
[trustzone]-ARM Core的扩展和ELx级别的切换过程
[trustzone]-ARM trustzone技术下常见的软件框图
[trustzone]-ARM Trustzone架构下的软件框图
[Trustzone]-ARM Cortex-A Serial支持Trustzone和Hypervisor的总结
[hypervisor]-ARMV8的hypervisor技术介绍–InProgress
[hypervisor]-AArch64 (hypervisor)Virtualization学习笔记
[register]-04-ARMv8的寄存器简介和总结
[register]-05-ARMv8中常用系统寄存器详解
[ARM-assembly]-ARMV9-A64指令汇总-指令速查
[ARM-assembly]-汇编示例:c语言翻译成汇编
[ARM-assembly]-ARM ASM内联汇编学习
[ARM-assembly]-A64指令集合总结
[ARM-assembly]-C语言和汇编对比学习
[ARM-assembly]-全局变量/静态全局变量/初始化/未初始化变量的存放位置分析
[ARM-assembly]-ARM64汇编语言学习笔记
[ARM-assembly]-A64的load/store指令总结
[ARM-assembly]-ARMV8的exclusive和inexclusive的介绍
[ARM-assembly]-ARM交叉编译器下编译的各个镜像的反汇编文件分析
[ARM-assembly]-ARM向量浮点指令集 快速参考卡
[ARM-assembly]-Thumb指令集快速参考卡
[ARM-assembly]-ARMv8 A64 Quick Reference
[mmu/cache]-cache在linux和optee中的应用
[mmu/cache]-cache的一些基本概念介绍
[mmu/cache]-ARMV8 MMU内存管理中的Memory attributes和Cache policies
【专题:《learn-the-architecture系列》】
- 01-Introducing the Arm architecture
- 02-Armv8-A Instruction Set Architecture
- 03_Introduction_to_AMBA_AXI
- 04-TrustZone for Armv8-A
- 05-Exception model
- 06-GICv3_v4_overview
- 07-Armv8-A virtualization
- 08-Isolation using virtualization in the Secure World_Whitepaper
- 09-LearnTheArchitecture-MemoryManagement
- 10-Armv8-A memory model guide
- 11-Memory Management Examples
- 12-Generic Timer
- 13-Introduction to security
- 14-Providing protection for complex software
- 15-Arm-Confidential-Compute-Software-Stack
- 15.2-armv9的RME简介
- 16-Understanding the Armv8.x extensions
【专题:《Armv8/armv9架构入门指南》】- 【第一章】- 前言-----此章节末尾有PDF下载地址
- 《Armv8/armv9架构入门指南》-【第二章】- ARMv8‑A 架构和处理器
- 《Armv8/armv9架构入门指南》-【第三章】- ARMv8 基础知识
- 《Armv8/armv9架构入门指南》-【第四章】- ARMv8 寄存器
- 《Armv8/armv9架构入门指南》-【第五章】- ARMv8 指令集简介
- 《Armv8/armv9架构入门指南》-【第六章】- ARMv8指令集
- 《Armv8/armv9架构入门指南》-【第七章】- AArch64 浮点和 NEON
- 《Armv8/armv9架构入门指南》-【第八章】- 移植到 A64
- 《Armv8/armv9架构入门指南》-【第九章】- ARM 64 位架构的 ABI
- 《Armv8/armv9架构入门指南》-【第十章】- AArch64 异常处理
- 《Armv8/armv9架构入门指南》-【第十一章】- 缓存cache
- 《Armv8/armv9架构入门指南》-【第十二章】- 内存管理单元
- 《Armv8/armv9架构入门指南》-【第十三章】- 内存排序
- 《Armv8/armv9架构入门指南》-【第十四章】- 多核处理器
- 《Armv8/armv9架构入门指南》-【第十五章】- 电源管理
- 《Armv8/armv9架构入门指南》-【第十六章】- big.LITTLE 技术
- 《Armv8/armv9架构入门指南》-【第十七章】- 安全
- 《Armv8/armv9架构入门指南》-【第十八章】- 调试
- 《Armv8/armv9架构入门指南》-【第十九章】- ARMv8模型
【ATF】
- ATF快速扫盲(Quick Start)
- ATF的代码学习篇-一篇就够了
- MTK:一篇文章了解ATF原理
- 程序之间的跳转模型 –-----学习arm的最最干货!! 精髓
- Linux Kernel/optee/ATF等操作系统的异常向量表的速查
- ATF的异常向量表介绍-(irq,fiq,smc,hyc…)
- 中断配置:SCR.FIQ/SCR.IRQ的配置详解
- smc指令详解
- 思想解读:TF-A(ATF)中栈指针和栈内存的设计思想解读
- TF-A代码阅读: 双系统切换时是如何保存寄存器的(cpu_context介绍)
- TF-A代码阅读: SP_EL3栈内存-cpu_data内存的介绍(cpu_context介绍)
- TEE/REE系统切换时ATF的寄存器的保存和恢复
- ARM级别/异常/状态切回时候的寄存器保存与恢复
- ATF RT-SVC的介绍
- ATF的RT_SVC的详解(runtime service)
- ATF启动–BL31跳转到optee和uboot
- ATF(TF-A)的编译方法
- ATF makefile的导读
- armv8 boot流程(一):ARMV8 code reset和warm reset的理解
- armv8 boot流程(二):软件如何判断当前是cold reset/warm reset/primary boot/senondary boot
- armv8 boot流程(三):TF-A(ATF)中mailbox的使用
- ATF中RESET_TO_BL31宏的含义
- 启动-异常学习笔记-代码导读
- FFA interface
- FF-A架构中CA到TA的调用模型
【专题:《ATF/FF-A/specification文档学习系列》】
optee目录
- .
环境搭建- optee3.8 qemu_v8的环境搭建篇
- optee3.12.0 qemu_v8的环境搭建篇
- optee3.14.0 qemu_v8的环境搭建篇
- optee3.14.0 qemu_v8的环境搭建篇(ubuntu20.10)–终极篇
- optee3.14 qemu_v8的环境搭建篇(ubuntu20.04)–镜像方式-直接使用
- optee3.16.0 qemu_v8的环境搭建篇(ubuntu20.10)
- optee3.18.0 qemu_v8的环境搭建篇(ubuntu20.10)
- FF-A学习环境搭建:基于qemu_v8/spmc_at_el3/optee(ubuntu20.10)
存储系统/Storage- optee的存储系统模型详解
密码学接口/Cryptography/密钥- optee的key的派生
- optee中的密码学算法注册模型
异常/中断/smc/RPC/双系统切换- optee中的异常向量表解读–中断处理解读
- optee中关于异常向量表、中断等的深入思考
- optee中添加一个中断以及底层代码的相关解读
- optee运行时来了一个REE(linux)中断–代码导读
- 中断/gic代码导读:在哪里配置安全中断的?
- optee中的线程向量表(thread_vector_table)
- optee的fast call的介绍
- optee对std smc的处理的详解
- 驱动调用Userspace的设计与实现
- optee的RPC设计(模型)详解
- 探究optee中的RPC机制中的上下文切换和PC跳转
- optee的RPC流程的代码详解
- optee返回到REE的几种方式
- optee进入和退出方式的设计模型
- Linux Kernel(tee_worker)到TEE的调度模型
- tee_workder线程模型的介绍
- 再谈optee中是否支持多线程
- optee中的线程调度
内存管理- optee的内存管理的详细介绍
- optee内存管理和页表建立
- optee内核中malloc函数的原理介绍
- optee应用程序中malloc函数的原理介绍
- optee中的arm64的virt_to_phys的实现
- optee中core_init_mmu_regs函数解读
- optee的共享内存的介绍
- optee的Share Memory介绍
- optee中共享内存的类型
- optee中静态共享内存的注册
- optee中MMU内存管理模型-页表的建立模型
- optee的内存管理 : 将内存加入到页表去管理
- optee的内存管理 :页表的创建过程
- optee3.14中MMU页表查询的所需配置–深入解读
- 在enable mmu之前可以使用mmu了
CA/TA/PTA的原理开发- optee的error codes
- TA的签名和验签
- optee的Offline Signing of TAs方案
- 编写TA链接静态库的方法
- 通过TA binary查看TA的uuid和stack
- opteeTA启动的过程(open_ta的过程)
- optee中User TA的加载和运行
- CA/TA通信的share memory设计思想解读
- TEEC_RegisterSharedMemory和TEEC_AllocateSharedMemory的区别
- TEEC_AllocateSharedMemory()和 TEEC_RegisterSharedMemory()的总结
- CA/TA参数传输中tmpref,memref和Value的区别
- Globalplatform TEE api介绍
- TEE Internal Core API总结
- GP API的归类和总结
- TEEC_Context和TEEC_InitializeContext介绍
- Trusted Applications介绍
- optee编译TA时的属性配置和设置
core- optee的启动过程
- optee中utee syscall的实现(系统调用实现)
- optee系统服务/service的实现方式
- optee中的panic函数实现
- optee的线程介绍
- 思想解读:optee中的多线程处理
- optee:kernel space调用user space进程时候的硬件行为
- 32位的应用程序和64位的应用程序有什么区别
- optee中spinlock的实现原理详解
- optee中mutex的实现方式
- optee的栈指针和栈内存的介绍
- optee aarch64体系下栈的设计(sp_el0/sp_el1)
- optee中使用虚函数(平台客制化)的设计模型
Presentations- PKCS#11 in OP-TEE
- optee HSM的实现
- ASLR in optee
- Secure Partitions in optee
业务&架构&设计- optee的TLS接口的设计与实现
- 基于optee的TEE HSM的设计与实现
- 基于optee的第三种存储系统(persist存储)的设计与实现 --TODO
- 基于optee的GP Socket API的设计与实践
- optee中RPC机制的应用与实践
old- optee中的异常向量表的实现
- optee的异常向量表-(irq,fiq,svc…)
- optee中的中断处理详解
- optee代码中和ARM硬件相关的函数解读
- optee栈的介绍(一)
- optee栈的介绍(二)
- optee同步机制的介绍
- optee堆Virtualization(hypervisor)的支持
其它TEE目录
(2022)
ongoing
- .
optee系统的组件- CA/TA
- ClientLib、supplicant
- TEE-OS
- linux_kernel_tee_driver
- 组件的切换
REE到TEE的调用
TEE到REE的反向调用
ShareMemory的介绍
参数的传递
optee内核介绍- optee内核的启动
- optee内核的进入和退出方式
- Fast call和STD call
- 内置程序 – STA/ETA/PTA/driver/service
- 系统调用
- 中断机制
- 内存管理
- 线程和调度
- 多核与多线程
- 存储系统
- 密码学系统
- 密钥系统
CA/TA开发(收费区)
Title | Description | Status |
---|---|---|
01-How to setup SDK and compile TAs | done | |
02-CA/TA编程:aes demo | done | |
03-CA/TA编程:aes_auth demo | done | |
04-CA/TA编程:hash demo | done | |
05-CA/TA编程:hmac demo | done | |
06-CA/TA编程:rsa demo | done | |
07-CA/TA编程:rsakey demo | done | |
08-CA/TA编程:ecdsa demo | ||
09-CA/TA编程:storage demo | done |
代码导读
- 快速写一个驱动程序并由User程序调用
- Linux Kernel中的同步机制的介绍
- Linux Kernel(armv8-aarch64)的原子操作的底层实现
- Linux Kernel5.10的核间通信(SGI中断)的本质
- Linux Kernel5.10的软中断(softirq)的本质
- 经典面试题-Linux Kernel面试题
- 一文了解Linux Kernel中密码学算法的设计与应用
- Linux Kernel中非对称密码算法的实现
- cryptocell学习笔记
- Linux内核编码风格
- Linux Kernel中local_irq_enable()和local_irq_disable()的实现
类别 | 博文 | 参考/说明 |
---|---|---|
zerotouch | 1、Google zerotouch方案介绍 |
【《代码导读》】
CA/TA组件介绍启动
Trustzone
- Trustzone–cpu_context的初始化以切换 – 双系统的安全身份如何切换的?
- Trustzone–TZC400设置安全内存
- Trustzone–配置中断的安全属性
mmu
- MMU代码导读笔记 – TODO
【专题:《密码学基础系列》】
加解密原理基础:
[crypto]-01-对称加解密AES原理概念详解
[crypto]-02-非对称加解密RSA原理概念详解
[crypto]-03-数字摘要HASH原理概念详解 --inprogross&私有
[crypto]-04-国产密码算法(国密算法sm2/sm3/sm4)介绍
[crypto]-05-转载:PKCS #1 RSA Encryption Version 1.5介绍
[crypto]-05.1-PKCS PKCS#1 PKCS#7 PKCS#11的介绍
[crypto]-06-CA证书介绍和使用方法
[crypto]-10-openssl版本介绍
crypto engine硬件基础:
[crypto]-30-The Armv8 Cryptographic Extension在linux中的应用
[crypto]-31-crypto engion的学习和总结
代码示例:
[crypto]-50-base64_encode和base64_decode的C语言实现
[crypto]-51-RSA私钥pem转换成der, 在将der解析出n e d p q dp dq qp
[crypto]-51.1-python的aes加解密/rsa生成密钥对/rsa加解密/hmac加密
[crypto]-51.2-从rsa公钥中提取N和E
[crypto]-51.3-C语言实现:RSA的因子(nedp…)拼接pem
[crypto]-52-python3中rsa(签名验签加密解密)aes(ecb cbc ctr)hmac的使用,以及unittest测试用
[crypto]-53-openssl命令行的使用(aes/rsa签名校验/rsa加密解密/hmac)
总结:
[crypto]-90-crypto的一些术语和思考
【HOW TO】
[HOW TO]-virtualbox下安装ubuntu14.04超详细
[HOW TO]-图解virtualbox下安装ubuntu20.04虚拟机
[HOW TO]-ubuntu下快速搭建http
[HOW TO]-在ubuntu20.10上搭建SVN Server
[HOW TO]-ubuntu下安装selenium
[HOW TO]-ubuntu20.04 上安装jenkins
[HOW TO]-ubuntu20.10搭建opengrok服务指南
[HOW TO]-ubuntu20.10安装opengrok指南
[HOW TO]-centos环境搭建opengrok笔记
[HOW TO]-openjrok维护手册
[HOW TO]-ubuntu20.10环境上安装workpress
[HOW TO]-外网访问自己的HTTP服务器
[HOW TO]-git/gerrit配置方法
[HOW TO]-windows安装wget工具
[HOW TO]-堡垒机快捷登陆SSH服务器-expect自动输密码
[HOW TO]-python venv虚拟环境
[HOW TO]-ubuntu20.10上安装Pulse Secure客户端
[HOW TO]-Ubuntu 20.04修改终端标题栏文字
[HOW TO]-How to install maven
[HOW TO]-How to Install Python Pip on Ubuntu 20.04
[HOW TO]-如何使用Sphinx编写漂亮的文档
[How TO]-如何编写Linux kernel documentation
[HOW TO]-下载android官方源码
[HOW TO]-android手机安装google play
[HOW TO]-oppo手机安装google play
[HOW TO]-从github拉取optee代码拉不下来怎么办?
[HOW TO]-VirtualBox的虚拟机通过宿主机代理上网
[HOW TO]-官网拉取Trusty-TEE的代码
[HOW TO]-github/gitee的仓库统一管理
[HOW TO]-github/gitee私有项目用户名密码免输入
[HOW TO]-Ubuntu下 Tomcat 9 的设置办法
[HOW TO]-ubuntu安装samba
【Issue Fixed】
[Issue Fixed]-svnadmin: warning: cannot set LC_CTYPE locale
[Issue Fixed]-执行脚本时出现invalid option错误
[Issue Fixed]-Pulse r9.1 embedded browser install failure
[Issue Fixed]-不能为虚拟电脑xxx打开一个新任务
[Issue Fixed]-GCC编译[-Werror,-Wformat]
[Issue Fixed]-分卷压缩解压:gzip: stdin: not in gzip format
[Issue Fixed]-Ubuntu开发环境下遇到的环境问题梳理
[Issue Fixed]-repo-error: .repo/manifests/: contains uncommitted changes
[Issue Fixed]-fatal: unable to access xxx: server certificate verification
[Issue Fixed]-server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none
[Issue Fixed]-Ubuntu20.04执行apt-get update报错:404 Not Found [IP: 91.189.91.38 80]
【工具】
经验/总结 |
---|
travis-ci中的checkpatch工具使用 |
linux shell变量while循环内改变无法传递到循环外 |
[python报错:UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xe0 in position 0: ordinal not in rang] |
类别 | 博文 | 说明 |
---|---|---|
git/github | 1、github:已经提交并push后再次追加提交 | |
Docs | 1、如何编写Linux kernel documentation | |
Android | 1、下载android官方源码 |
C语言__attribute__的使用
LoyenWang博客园 — 虚拟化技术
jasonactions博客园 —armv8学习
Linux内核设计与实现学习笔记目录
骏的世界
Peter.liu的csdn
伟林大佬博客 – 公众号:唐家湾畔老码农
许庆伟 – 内核功守道
课程宣传
- 付费专栏-付费课程-【购买须知】
- 【精选】ARMv8/ARMv9架构入门到精通-[前言]
- ARMv8/ARMv9视频课程-Trustzone/TEE/安全视频课程
- ARMV8/ARMV9/TEE安全等视频课程上线了
- CSDN课程推荐:《【专题】SecureBoot精讲》系列课程上线
- CSDN课程推荐:《ARMv8/ARMv9架构学习》系列课程上线-56节18小时
- 如何高效学习ARMv8/ARMv9架构知识
- ARMV8-ARMV9架构学习知识图谱
- 关于我博客付费专栏:写给粉丝的致歉信
- 再见了哔哩哔哩-哔哩哔哩课程总结
自己的宣传
别人的宣传
- 创作创富,程序员资产配置的“武林秘籍 --新浪财经
- 创作创富,程序员资产配置的“武林秘籍” --网易
- 【1024程序员节】程序员创作创富 — CSDN创富对话社区
- 程序员如何赚到人生第一个 100 万 —csdn程序人生
- 经纬恒润:下一代汽车电子软件开发与测试论坛
- 11月18-19日云端见 | 合作 · 高效—下一代汽车电子软件开发与测试论坛
文章浏览阅读3k次。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> table { _html增删行按钮
文章浏览阅读54次。# 迭代器(Iterator)&生成器(generator)# 若要对象可迭代:# 在python2中对象必须包含__iter__(self)和next(self)# 在python3中对象必须包含__iter__(self)和__next__(self)# 其中:__iter__(self)必须返回一个含有含有__next__(self)的对象,..._python iterator数据结构
文章浏览阅读2.6k次。目前最流行的分布式数据库有两类,一个是以Google Spanner为代表,一个是以AWS Auraro为代表。Spanner 是 shared nothing 的架构,内部维护了自动分片、分布式事务、弹性扩展能力,数据存储还是需要 sharding,plan 计算也需要涉及多台机器,也就涉及了分布式计算和分布式事务。主要产品代表为TiDB、CockroachDB、OceanBase等;这三个产品..._spanner tidb
文章浏览阅读3.4w次,点赞12次,收藏78次。ASCII码表参考:译自这里。正文下列码表含有全部128个ASCII十进制、八进制、十六进制及字符编码。 十进制 八进制 十六进制 字符 0 0 00 NUL(空) 1 1 01 SOH(标题开始) 2 2 02 STX(正文开始) 3 3 03 ETX(正文结束) ..._c++语言16进制,10进制,ascall码
文章浏览阅读4k次。现在服务器可以接受苹果退款通知了!!!!1.从苹果开发者后台配置调用地址url,必须是https的,符合 App Transport Security (ATS)要求,如TLS1.2协议 详情见文档 苹果官方文档2.解析参数,苹果的请求方式为post,发送json数据所以我们解析这个responseBody就可以了,详细见官方文档3.响应,苹果不关心返回参数,只关心返回响应码 200 4xx 5xx,如果200代表成功,4xx 5xx苹果会重试重点来了!!!实战解析例子苹果发送的数据是一个_cancellation_date
文章浏览阅读6.5k次,点赞3次,收藏6次。第一种方法 1、先放入一张图片在ps中 复制图层(ctrl+j) 选择区域:w快速魔法棒(L套索){ shift : 为“+”区域 alt: 为“-”区域 } 图: 2、复制所换区域(天空),一般先羽化2个值(一般快捷键是ctrl+alt+d/shift+f6),再复制图层(ctrl+j) 图: 3、将其他天空图片拉进p..._ps扣天空
文章浏览阅读591次。安装cnpmnpm install -g cnpm查看镜像地址npm get registry https://registry.npmjs.org/更换镜像地址为淘宝的npm config set registry http://registry.npm.taobao.org/或者一步完成npm install -g cnpm --registry=https://registry.npm.taobao.org使用cnpm安装vue-clicnpm install -g @v_如何注册cnpm
文章浏览阅读4.2k次。日期格式时间格式代码<template> <u-form :model="form" ref="uForm"> <u-form-item :label-position="labelPosition" label="日期" prop="patrolDate" label-width="150"> <u-input :border="border" placeholder="请选择日期" v-model="form.patrolDate" typ
文章浏览阅读2.1k次。发现文件更改记录,在红色标记的地方进行提交。提交完成后,点击红色标记部分,Push到Gitlab。Push成功后,到GitLab服务器可以看到刚才提交的文件。..._github desktop 提交到 gitlab
文章浏览阅读7k次。微信域名拦截采用云拦截的机制, 那么如果检测一个域名是否被拦截那?1. 第一步:浏览器打开地址:https://wx.qq.com/登录网页微信2. 打开浏览器调试模式, 一般为F12, 找到:找到Cookie 和User-agnet3. 代码 用第二部的参数替换代码中的cookie, useragent 测试: public boolean isBloc..._airav.cc
文章浏览阅读1.6k次,点赞2次,收藏9次。一、背景进行性能测试时,常用的一些技术指标能够发现大部分常见问题,但是有一些不够明显的性能异常可能需要做更深入的分析。本文详细记录了一些性能场景下相关数据分析方法及思路,对不够明显的数据变动做深入性能分析,从而发现性能问题,希望能够对后续的性能测试提供帮助。二、定位工具图解2.1 CPU CPU:当收到CPU使用率过高告警时,从监控系统中直接查询到,导致 CPU 使用率过高的进程;然后再登录到进程所在的 Linux 服务器中,分析该进程的行为。你可以使用 strac..._性能测试分析
文章浏览阅读1.1w次,点赞11次,收藏14次。vue代码如下:<el-tabs v-model="activeName" @tab-click="handleClick" stretch> <el-tab-pane label="示例1" name="first"> <el-table 此处省略好多代码></el-table> </el-tab-pane> <el-tab-pane label="示例2" name="second"> <el-table 此处_el-tabs居中