콘텐츠로 이동

데이터 보기 및 디코딩

캡처는 첫걸음일 뿐이고, 이해하는 것이 핵심입니다. 일반 도구는 흔히 압축된 바이트 더미나 깨진 텍스트를 건넵니다. Trace Eagle은 자동으로 압축을 해제하고 형식을 감지해 정리하며, 미디어를 인라인으로 미리 보고 사설 프로토콜을 분해하기까지 해서, 모든 데이터를 가장 읽기 좋은 형태로 보여줍니다.


1. 하나의 데이터, 다섯 가지 보기 방식

섹션 제목: “1. 하나의 데이터, 다섯 가지 보기 방식”

요청 측과 응답 측이 각각 독립적으로 보기 모드를 전환합니다.

  • 구조화: 시작 줄 + 요청 헤더 표 + 스마트 본문. 기본 보기입니다.
  • 텍스트 · 정리: 콘텐츠 타입에 따라 자동으로 들여쓰기하고, JSON, XML, 폼(x-www-form-urlencoded)을 원탭으로 포맷하여 읽기 쉽게 합니다.
  • 텍스트 · 원본: 전체 메시지를 원시 텍스트로 표시합니다.
  • 헥스: 바이트를 클릭하면 헥스↔ASCII가 연동 하이라이트되는 헥스 뷰어로, 오프셋을 표시하고 원탭으로 바이너리 파일에 저장할 수 있습니다. 아주 큰 페이로드도 끊김 없이 부드럽게 스크롤됩니다.
  • 자동 감지: 데이터를 엔진에 넘겨 심층 디코딩하고, 한 겹씩 펼칠 수 있는 디코드 트리로 렌더링합니다. 중첩 압축과 중첩 프레임 모두 단계별로 파고들 수 있습니다.

보기 모드 전환: 구조화 / 텍스트 · 정리 / 텍스트 · 원본 / 헥스 / 자동 감지, 요청과 응답을 독립적으로 전환

“다음으로 보기”는 표현 계층(구조화 / 텍스트 / 헥스 / 자동 감지)만 전환합니다. JSON, XML, 폼은 텍스트의 포맷 스타일이며 “텍스트 · 정리”가 자동으로 처리하므로 별도로 나열하지 않습니다.

헥스 뷰어: 오프셋을 표시하고 헥스와 ASCII를 나란히 두어 연동 하이라이트하며, 원탭으로 바이너리 파일에 저장할 수 있습니다


  • 자동 압축 해제: gzip, brotli(br), deflate, zstd를 지원하며, 여러 겹으로 쌓인 인코딩(예: gzip, br을 바깥에서 안쪽으로 한 겹씩 디코딩)도 처리합니다. 일반 도구는 흔히 가장 바깥 겹만 디코딩합니다.
  • 자동 감지 및 정리: JSON, XML, 폼, Apple plist(바이너리 / XML / NSKeyedArchiver 아카이브 복원), protobuf / gRPC.
  • 바이너리 형식 감지: 내장 데이터 감지 엔진이 이미지, 폰트, PDF, 아카이브 등을 자동으로 인식하고, 아카이브 내부의 파일 목록을 나열할 수 있습니다.
  • 인라인 미디어 미리 보기: 이미지, 비디오, 오디오를 상세 보기에서 바로 미리 보기 / 재생합니다.
  • 스마트 봉투(envelope) 벗기기: 텔레메트리 보고에서 흔한 “커스텀 헤더 + 압축 스트림” 봉투(표준 인코딩 표시가 없는 경우가 많음)를 인식해 봉투 헤더를 자동으로 벗겨내고 실제 데이터를 복원합니다. 일반 도구는 깨진 텍스트만 내놓습니다.
  • 정직한 실패 안내: 정말로 복원할 수 없는 사설 암호화 데이터를 만나면, 깨진 텍스트 더미를 던지는 대신 그렇다고 분명히 알려줍니다.
  • UTF-8 통일: 문자 인코딩을 일관되게 유효한 UTF-8로 처리합니다.

인라인 미디어 미리 보기: 이미지가 응답 상세 보기에 직접 렌더링되고 타입과 크기가 함께 표시됩니다


데이터 타입 보기 모드
WebSocket 프레임별로 표시(text / binary / ping / pong), 송수신 방향 표시
Server-Sent Events (SSE) 이벤트 스트림을 이벤트별로 표시
gRPC / protobuf .proto 없이 필드 번호 / 타입 / 값 디코딩
원시 TCP / UDP 복호화되지 않았거나 비 HTTP인 원시 송수신 바이트, 헥스 / 텍스트 전환 가능

4. 사설 프로토콜도 분해할 수 있습니다

섹션 제목: “4. 사설 프로토콜도 분해할 수 있습니다”

비 HTTP 사설 / 바이너리 프로토콜의 경우:

  • 많은 사설 프레임이 설정 없이 자동으로 분해됨: 엔진이 흔한 고정 길이 접두어 경계를 시도해 프레임별로 펼치므로, 원시 스트림도 스크립트 없이 개별 메시지로 나뉩니다.
  • 내장 프레이밍 템플릿: 길이 접두어, 매직 시그니처 경계, 구분자(헥스 포함 가능), 고정 길이 같은 흔한 사설 프레임 구조에 바로 사용할 수 있는 템플릿이 있습니다. 몇 가지 값만 바꾸면 분해됩니다. 더 복잡한 구조는 아래의 JS 스크립트로 넘어가세요.
  • JS 스크립트 디코딩: 소량의 JavaScript를 작성해 프레이밍과 디코딩 로직을 맞춤 구성하며, 바이트 추출, 진법 변환, 압축 해제 같은 보조 기능이 바로 사용할 수 있게 내장되어 있습니다.
  • 수동 “다음으로 디코드”: 임의의 연결에 프레이밍 방식을 수동으로 선택해 그 연결의 완전한 송수신 기록을 보고, 각 메시지를 자동 감지 / 텍스트 / 헥스로 더 세부 전환할 수 있습니다. 사용자 정의 프로토콜 디코딩을 참고하세요.

프록시 캡처로 돌아가기