HAL,数字电子电路的逆向工程框架

半截屏

HAL 这是一个用于分析数字电子电路列表的集成环境是一个全面的逆向工程和操纵框架 适用于侧重于效率,可伸缩性和可移植性的门级网表。 哈尔 带有插件系统 完成 这允许在内核中引入任意功能。

有趣的 由HAL 是它允许在GUI中查看和分析电路并进行操作 使用python脚本。 在脚本中,您可以使用实现图形理论操作的附加功能“标准库”,这些功能可用于逆向工程数字电子电路(使用这些功能,您可以试探性地检测各种设计模式,并通过多行脚本来消除简单的混淆) 。

图书馆 它还包括IDE中用于项目管理的类, 可以在开发用于连接分析和检查的插件时使用。 提供了用于VHDL和Verilog硬件描述语言的解析器。

这种环境是由几所德国大学开发的,以C ++,Qt和Python编写,并在MIT许可下发布。

其主要特点 以下突出:

  • 网表项目及其连接的自然图形表示形式。
  • 支持自定义门库。
  • 优化的C ++内核带来高性能
  • 模块化-编写您自己的C ++插件,以进行有效的网络列表分析和处理(例如,使用图形算法)
  • 功能丰富的GUI,可对网络列表进行可视检查并进行交互式分析
  • 内置的Python shell,用于与网表项目进行探索性交互以及与GUI中的插件进行交互

关于HAL 2.0.0版

现在 此环境的版本为2.0.0 在其中 VHDL和Verilog分析仪得到了改进, 以及已更新为使用基于目标的配置的CMake构建系统。

需要强调的是,添加了对层次结构和模块化的支持, 以及其他隔离视图和新的设计系统。

其他变化 在此新版本中提到:

  • 门图书馆系统的变更
  • BDD替换为布尔函数
  • 闸门类型的内部表示形式的重大变化
  • 允许区分LUT,触发器,锁存器和组合门类型
  • 现在,您可以在锁存器和触发器中指定特殊的顺序输入,例如使能,时钟,配置和复位。
  • JSON Gate库替换为自由文件
  • 简化的插件系统
  • 包括Igraph库
  • GUI专业评论

如何在Ubuntu及其衍生产品上安装HAL?

对于那些有兴趣安装此电子电路逆向工程框架的人, 他们可以按照说明进行操作 我们在下面分享。

HAL 可以两种方式安装 在Ubuntu及其衍生版本中, 第一个是从资源库中为我们提供支持 的应用程序(仅对Ubuntu 18.04有效).

我们可以借助终端将其添加到系统中 (您可以使用快捷键Ctrl + Alt + T打开它),然后在其中键入以下命令。

首先,我们将从存储库中添加以下内容:

sudo add-apt-repository ppa:sebastian-wallat/hal

我们使用以下命令更新软件包和存储库列表:

sudo apt-get update

然后,我们通过键入以下命令来在系统上安装该应用程序:

sudo apt install hal-reverse

另一种安装方法是通过编译 在系统中的应用程序。 为此,我们必须在终端的帮助下下载HAL代码。

首先我们要输入:

git clone https://github.com/emsec/hal.git && cd hal

现在 我们将安装必要的依赖项:

./install_dependencies.sh

然后,我们继续使用以下代码进行编译:

mkdir build && cd build

cmake ..

make

编译完成后,我们将继续执行以下安装:

make install

最后 可以查阅文档和其他信息 关于哈尔 在下面的链接中。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。