디지털 전자 회로를위한 리버스 엔지니어링 프레임 워크, HAL

hal_스크린샷

HAL 디지털 전자 회로 목록 분석을위한 통합 환경이다 포괄적 인 리버스 엔지니어링 및 조작 프레임 워크입니다. 효율성, 확장 성 및 이식성에 중점을 둔 도어 레벨 넷리스트 용입니다. HAL 플러그인 시스템과 함께 제공 completo 커널에 임의의 기능을 도입 할 수 있습니다.

흥미로운 HAL 제작 GUI에서 회로를보고 분석하고 조작 할 수 있다는 것입니다. 파이썬 스크립트를 사용합니다. 스크립트에서는 디지털 전자 회로 리버스 엔지니어링에 유용한 그래프 이론 연산을 구현하는 함수의 첨부 된 "표준 라이브러리"를 사용할 수 있습니다 (이러한 함수를 사용하면 다양한 디자인 패턴을 경험적으로 감지하고 여러 줄의 스크립트로 간단한 난독 화를 제거 할 수 있음). .

도서관 IDE의 프로젝트 관리를위한 클래스도 포함되어 있습니다. 연결 분석 및 검사 용 플러그인을 개발할 때 사용할 수 있습니다. VHDL 및 Verilog 하드웨어 설명 언어에 대한 구문 분석기가 제공됩니다.

이 환경은 여러 독일 대학에서 개발했습니다., C ++, Qt 및 Python으로 작성되었으며 MIT 라이선스에 따라 출시되었습니다.

주요 특징 다음이 두드러집니다.

  • 넷리스트 항목과 그 연결을 자연스럽게 그래픽으로 표현합니다.
  • 사용자 정의 문 라이브러리 지원.
  • 최적화 된 C ++ 커널로 인한 고성능
  • 모듈성-효율적인 네트워크 목록 분석 및 조작 (예 : 그래프 알고리즘 사용)을 위해 고유 한 C ++ 플러그인 작성
  • 네트워크 목록의 시각적 검사와 대화 형 분석을 가능하게하는 풍부한 기능의 GUI
  • 넷리스트 항목과 탐색 적으로 상호 작용하고 GUI에서 플러그인과 상호 작용하기위한 내장 Python 셸

HAL 버전 2.0.0 정보

지금 이 환경은 버전 2.0.0입니다. 어느 VHDL 및 Verilog 분석기가 개선되었습니다. 목표 기반 구성을 사용하도록 업데이트 된 CMake 빌드 시스템과 함께.

또한 계층화 및 모듈화에 대한 지원이 추가 된 것이 두드러집니다. 추가 격리보기와 새로운 설계 시스템도 제공합니다.

다른 변경 사항 중 이 새 버전에서 언급 :

  • 도어 라이브러리 시스템 변경
  • 부울 함수로 대체 된 BDD
  • 게이트 유형의 내부 표현의 주요 변경 사항
  • LUT, 플립 플롭, 래치 및 조합 게이트 유형을 구분할 수 있습니다.
  • 래치 및 플립 플롭에서 이제 활성화, 클럭, 구성 및 재설정과 같은 특수 순차 입력을 지정할 수 있습니다.
  • Freedom 파일로 대체 된 JSON 게이트 라이브러리
  • 단순화 된 플러그인 시스템
  • 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

최종적으로 문서 및 기타 정보를 참조 할 수 있습니다. HAL에 대해 다음 링크에서.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.