【导语】:ImHex 是一款界面美观的十六进制编辑器,主要面向逆向工程师和程序员。如果你喜欢暗黑系编辑器,那它应该是你的菜。

ImHex 最近在 GitHub 上非常火热,上架五天就收获了 2.5k Star,十天 5k Star。

开发者介绍

ImHex 的开发者是 WerWolv,今年 21 岁,是一个瑞士的电子工程本科大二在读学生。他着迷于嵌入式系统,底层编码,ARM 微控制器开发,操作系统以及主机自制软件和定制固件。

项目地址 + 源码

https://github.com/WerWolv/ImHex

示例图

功能特点

  • 功能性十六进制视图

    • 字节
    • 十六进制字符串
    • C, C++, C#, Rust, Python, Java & JavaScript 数组
    • ASCII-Art十六进制视图
    • HTML 自包含 div
    • 字节修补
    • 补丁管理
    • 字节复制功能
    • 字符串和16进制查找
    • 彩色高亮显示
    • 从开头、尾部以及当前光标位置跳转
  • 自定义类C++模式的语言,用于解析突出显示文件内容
    • 基于 MIME 类型的自动加载
    • 数组、指针、结构,共用体,枚举,位域,使用声明,大小端支持
    • 有用的错误信息,语法高亮和错误标记
  • 数据导入

    • Base64文件
    • IPS 和 IPS32 补丁
  • 数据导出
    • IPS 和 IPS32 补丁
  • 数据检查器允许将数据解析为多种类型(小端和大端)
  • 支持大文件快速、高校载入
  • 字符串查找
    • 字符串复制
    • demangled 字符串复制
  • 支持文件hash
    • 支持自定义初始值和多项式的 CRC16 和 CRC32
    • MD4, MD5
    • SHA-1, SHA-224, SHA-256, SHA-384, SHA-512
  • 支持多种不同的架构的拆解器
    • ARM32 (ARM, Thumb, Cortex-M, aarch32)
    • ARM64
    • MIPS (MIPS32, MIPS64, MIPS32R6, Micro)
    • x86 (16 位, 32 位, 64 位)
    • owerPC (32 bit, 64 bit)
    • Sparc
    • SystemZ
    • XCore
    • M68K
    • TMS320C64X
    • M680X
    • Ethereum
  • 书签
    • 区域突出显示
    • 注释
  • 数据分析
    • 基于文件解析器和 MIME 类型的数据库的文件magic
    • 字节分布图
    • 熵图
    • 最大熵和平均熵
    • 加密 / 压缩文件检测
  • 帮助工具
    • Itanium 和 MSVC demangler
    • ASCII 码表
    • 正则表达式替换
    • 数学表达式求值器(计算器)
    • 十六进制颜色选取器
  • 模式语言和数学计算内置速查表
  • 在深夜使用时不会毁掉你的视网膜

编译

你的编译工具要兼容 C ++ 20,比如GCC 10.2.0。更重要的是,要想编译ImHex,你还需要下列的依赖:

  • GLFW3
  • libmagic, libgnurx, libtre, libintl, libiconv
  • libcrypto
  • capstone
  • libLLVMDemangle
  • nlohmann json
  • Python 3

以上所有的依赖安装脚本,可以在下面的链接中找到,主要支持 Arch Linux、Fedora、 Debian/Ubuntu 和、或 MSYS2 : https://github.com/WerWolv/ImHex/blob/master/dist

安装完以上的依赖后,执行如下命令,构建ImHex:

mkdir build
cd build
cmake ..
make -j

在 macOS 下构建 ImHex,可使用下面的命令:

brew bundle --no-lock --file dist/Brewfile
mkdir build
cd build
CC=$(brew --prefix llvm)/bin/clang CXX=$(brew --prefix llvm)/bin/clang++ PKG_CONFIG_PATH="$(brew --prefix openssl)/lib/pkgconfig":"$(brew --prefix)/lib/pkgconfig" cmake ..
make -j

喜欢的朋友,可以试一下。

- EOF -

php十六进制字符串转成字节数组_10 天 5 千 Star!21 岁本科生给程序员开发的十六进制编辑器...相关推荐

  1. 10 天 5 千 Star!21 岁本科生给程序员开发的十六进制编辑器

    [导语]:ImHex 是一款界面美观的十六进制编辑器,主要面向逆向工程师和程序员.如果你喜欢暗黑系编辑器,那它应该是你的菜. ImHex 最近在 GitHub 上非常火热,上架五天就收获了 2.5k ...

  2. php十六进制字符串转成字节数组_PHP中的数据类型及实例演示

    数据类型 1. 什么是类型 不同的数据类型其实就是所存储数据的不同种类. 整型(integer):用来存储整数. 浮点型(float):用来存储实数. 字符串型(string):用来存储字符串. 布尔 ...

  3. 16进制字符串转成字节数组、字节数组转16进制字符串、16进制字符串转成2进制字符串、中英文 字符串转16进制、16进制转换成中英文 字符串

    因为需要与硬件相互通讯 用到了这些方法 亲测可用 /*** 16进制表示的字符串 转换为字节数组** @param hexString 16进制表示的字符串* @return byte[] 字节数组* ...

  4. java字符串转换成字节数组_将Java字符串转换为字节数组

    我有一个要加密的字节数组,然后转换为字符串,以便可以传输. 当我收到字符串时,我必须将字符串转换回字节数组,以便可以对其进行解密. 我检查了接收到的字符串是否与发送的字符串(包括长度)匹配,但是当我使 ...

  5. Bytes.toBytes(String类型的字符串) 将字符串转成字节数组的好处

    用户就是转换为byte数组之后就是二进制数据, 一般用来处理文件流操作,比如将数据存取到文件中 java中对于文件操作没有C#那么灵活,使用原生jdk的话操作文件都是以二进制形式进行的读/取.

  6. C# 将对象转换成字节数组(二进制数据)

    在将自定义对象或者数组等这样的数据存储到数据库时往往需要转换成二进制字节,尤其是在一些O/RM数据库框架中,下面是转换的函数,一个是将对象转换成二进制字节数组,另一个是将从数据库中读取的二进制流转换成 ...

  7. Java 字节数组流之图片转成字节数组

    Java 字节数组流之图片转成字节数组,相当于图片的复制 字符串可以直接读取到字节数组中用(getBytes) 问题:将一张图片读到字节数组里面(所有的东西都能够读到字节数组里面) 思路:先使用文件输 ...

  8. C# 中字符串string和字节数组byte[]的转换,16 进制字符串转 int的方法

    string和byte[]互转 string转byte[] byte[] byteArray = System.Text.Encoding.Default.GetBytes(str); byte[] ...

  9. C# 指定格式的字符串截成一维数组(二维数组)的操作类

    指定格式的字符串截成一维数组(二维数组)的操作类 做项目时经常会遇到将"1,3,a,b,d"截成一维数组或将"1,a;2,b;3,c;4,d"截成二维数组.虽然 ...

最新文章

  1. 比较数据库表结构之间的差异
  2. hexo 博客支持PWA和压缩博文
  3. JAVA16版本.JDK16关于TCP和UDP的优化
  4. Android 数据库 哪个好,目前最好用的安卓数据库,DBFlow使用详解
  5. mysql丢失数据_MySQL数据丢失问题
  6. python禁用键盘鼠标_在Python中禁用或锁定鼠标和键盘?
  7. 【译】45种Javascript技巧大全
  8. go技术文章梳理(2017)
  9. java4.25生成车牌号_泸牌16年涨882倍 超25万人拍一张车牌为哪般?
  10. 【MV-3D】----多视图的3D目标检测网络
  11. MindSpore:自然语言处理(NLP)—分词技术
  12. 单因子方差分析Python实现(小鸡增肥)
  13. Amlogic A311D2 八核 Arm 处理器支持高达 16GB RAM
  14. NPOIHelper
  15. 快速上手Linux核心命令(九):文件备份与压缩
  16. uniapp 视频video 播放 白屏 android
  17. c++ 之 括号匹配(栈)
  18. How to Pronounce PROBABLY
  19. brew安装报错:fatal: not in a git directory Error: Command failed with exit 128: git
  20. 借贷宝java_程序猿去哪儿?——北京JAVA专场

热门文章

  1. Flowable 数据库表结构 ACT_GE_PROPERTY
  2. (需求实战_进阶_02)SSM集成RabbitMQ 关键代码讲解、开发、测试
  3. linux中fdisk的参数,Linux fdisk命令参数及用法详解--Linux磁盘分区管理命令fdisk
  4. jvm调优 java_opt_Java-100天知识进阶-JVM调优工具-JDK自带工具-知识铺《八》
  5. 数据库mysql中贴换函数_关于一个自定义MYSQL函数,实现点击链接后,在数据库里改变数据的问题。...
  6. jq之slideToggle
  7. linux环境下安装多个任意版本的python环境
  8. android 跨应用,Android跨应用获取资源
  9. cstring移除指定字符串_从String中移除空白字符的多种方式!?差别竟然这么大!...
  10. 对象工厂PHP,php – 域对象工厂是什么样的?