본문으로 건너뛰기
피드

세계 최초 JPEG XL MD5 해시 퀸 만들기 — 자기 자신의 해시를 표시하는 이미지

general 약 3분
vote
0
댓글
북마크

JPEG XL의 튜링 완전한 예측 트리와 MD5 충돌 블록을 조합해, 이미지가 자기 자신의 MD5 해시값을 화면에 표시하는 해시 퀸(hashquine)을 세계 최초로 구현한 기술 writeup.

  • 1

    JPEG XL 예측 트리가 튜링 머신급 연산 능력을 갖고 있다는 점을 활용

  • 2

    커스텀 허프만 트리로 압축을 우회해 랜덤 바이트(MD5 충돌 블록)를 삽입 가능하게 만듦

  • 3

    128개 MD5 충돌 블록 프로브로 32자리 16진수 해시를 렌더링

  • 4

    최종 이미지는 c0dec000으로 시작하는 vanity 해시를 브루트포스로 생성

  • 해시 퀸(hashquine)은 파일의 해시값을 파일 자체가 화면에 표시하는 구조물임. 이번에 JPEG XL로는 세계 최초로 구현됨
  • 핵심 아이디어: JPEG XL의 예측 트리(prediction tree)가 사실상 튜링 머신급 연산 능력을 가지고 있다는 점을 활용함
  • 예측 트리에서 인접 픽셀 값을 조건 분기하고, 산술 연산을 흉내 낼 수 있어서 "프로그래밍"이 가능함
  • 문제는 MD5 충돌 블록이 랜덤 바이트 덩어리라 JPEG XL 압축과 충돌한다는 것. 이걸 해결하기 위해 커스텀 허프만 트리를 만듦
  • libjxl 인코더를 수정해 256개 심볼을 균등 분포로 강제하면, 모든 8비트 패턴이 유효한 토큰이 됨. 사실상 비압축 바이트 스트림이 되는 셈
  • 128개의 MD5 충돌 블록 "프로브"를 이미지에 삽입함. 각 프로브를 교체하면 특정 픽셀이 뒤집히고, 이걸로 해시의 각 비트를 제어함
  • 4비트를 합산해 16진수 한 자리를 만드는 데 Gradient 연산(W + N - NW)을 활용함. 클램핑 문제는 역값(32 - B) 트릭으로 우회
  • 픽셀 "와이어"로 계산된 값을 이미지 내 올바른 위치로 전송하고, 90,000+ 노드짜리 예측 트리로 Orbitron 폰트 숫자를 렌더링함
  • 최종 이미지는 약 2MB. 마지막에 c0dec000으로 시작하는 vanity 해시를 브루트포스로 생성했는데, 러스트로 2~3분 만에 완료됨
  • 파일 포맷 자체가 하나의 컴퓨터라는 걸 보여주는 극한의 해킹임. JPEG XL 예측 트리가 이 정도 연산을 할 수 있다는 사실 자체가 놀라움

파일 포맷 자체가 하나의 컴퓨터라는 걸 보여주는 극한의 해킹 — JPEG XL의 예측 트리가 이 정도 연산을 할 수 있다는 사실 자체가 놀라움

댓글

댓글

댓글을 불러오는 중...

general

Last.fm, 소유권 바뀌고 독립 회사로 새 출발

Last.fm이 소유권 변경을 거쳐 독립 회사로 운영된다고 밝혔다. 계정, 청취 기록, 스크로블, Pro 구독, API 기능은 그대로 유지되며 사용자 데이터 처리 방식도 바뀌지 않는다고 안내했다.

general

구글이 “사람들은 AI 모드를 좋아한다”고 하자 덕덕고 방문이 28% 가까이 늘어남

구글 검색이 AI 모드와 AI 개요를 전면에 밀어붙이는 사이, AI 없는 검색을 내세운 덕덕고 쪽 트래픽이 눈에 띄게 뛰었다. 덕덕고는 “사람들이 원하는 건 AI 자체의 찬반이 아니라 선택권”이라고 보고 있다.

general

경기도, 도민 15만 명 대상 AI·디지털 교육 시작

경기도가 2026년 AI디지털배움터를 열고 약 15만 명을 대상으로 스마트폰, 키오스크, 생성형 AI, 업무 자동화 교육을 운영해. 고령층과 정보취약지역 주민을 위한 찾아가는 교육, 청년·소상공인 대상 AI 활용 교육까지 범위를 넓힌 게 특징이야.

general

NIA “공공 AX 표준 만들고, 정책부터 현장 구현까지 직접 잇겠다”

한국지능정보사회진흥원(NIA)이 AI 기본법에 따른 인공지능정책센터로 지정되며 공공 부문의 AI 전환을 지원하겠다는 방향을 밝혔다. 핵심은 부처·지자체가 각자 따로 AI를 도입하다 생기는 중복 투자와 표준 부재를 줄이고, 일부 유스케이스는 정책 설계에서 구현까지 직접 밀어붙이겠다는 것.

general

최악의 면접은 코딩 테스트가 아니라 ‘무단 심리평가’였다

한 엔지니어가 정신건강 스타트업의 창업 엔지니어 면접에서 겪은 일을 공유했다. 기술 평가도 하기 전에 90분짜리 컬처핏 인터뷰에서 인생의 가장 힘든 날, 가족 문제, 실패한 관계 같은 사적인 이야기를 끌어냈고, 다음 날 한 줄짜리 탈락 메일을 받았다는 내용이다.