Android逆向 - Dalvik语言基础 技术杂谈

Dalvik语言基础 Dalvik虚拟机有专门的指令集及专门的指令格式和调用规范。由Dalvik指令集组成的代码称为Dalvik汇编代码,由这种代码组成的语言称为Dalvik汇编语言。 Dalvik汇编的设计准则 采用基于寄存器的设计。方法在内存中创建后即拥有固定大小的栈帧,栈帧占用的空间取决于方法中指定的寄存器数目。运行时使用的数据和代码都存储在DEX文...
ljierui 发布于 

Android逆向 - Dalvik可执行格式与字节码规范 技术杂谈

Dalvik虚拟机 Dalvik虚拟机的特点 体积小,占用内存空间少。 专有的dex可执行文件格式,体积小,执行速度快。 常量池采用32位索引值,对类方法名、字段名、常量的寻址速度快。 基于寄存器架构,同时拥有一套完整的指令系统 提供了对象生命周期管理、堆栈管理、线程管理、安全和异常管理以及垃圾回收等机制。 Android程序都运行在Android系统中,每...
ljierui 发布于 

安卓逆向 - 使用ApkTool进行逆向 技术杂谈

使用apktool进行逆向,并逆向第一个软件
ljierui 发布于 

Rust - String 技术杂谈

Rust中的String,动态UTF-8编码字符串的容器。它支持可变长度,提供丰富的方法进行字符串操作,是处理文本数据的强大工具,确保了内存安全和编码正确性。
ljierui 发布于 

Rust - HashMap 技术杂谈

Rust的HashMap,键值对集合的高效存储。它基于哈希表实现,提供快速的数据插入和检索能力,是处理大量数据和复杂映射关系时的首选数据结构。
ljierui 发布于 

Rust - panic! 技术杂谈

Rust中的panic!,程序遇到不可恢复错误的紧急制动器。它触发时,程序会尝试安全地清理资源,然后终止执行,是Rust错误处理策略中的一种极端手段,用于处理那些无法通过常规方式恢复的异常情况。
ljierui 发布于 

Rust - Trait 技术杂谈

Rust中的Trait,定义共享行为的蓝图。它们允许类型实现特定的功能契约,支持泛型编程和多态,是构建可复用、可扩展代码的基石
ljierui 发布于 

Rust - 生命周期 技术杂谈

Rust生命周期,确保引用有效性的关键机制。通过明确的生命周期注解,Rust防止了悬垂指针和数据竞争,保障了内存安全。生命周期是Rust借用检查器的基石,让代码既安全又灵活。
ljierui 发布于 

Rust - 闭包 技术杂谈

Rust闭包,匿名函数的灵活运用。它们可以捕获并存储环境变量,支持高阶函数特性,是Rust函数式编程范式的体现,为数据处理和自定义逻辑提供了强大工具。
ljierui 发布于