ToolypetMCP

HMAC 생성기 | Toolypet

무료 온라인 HMAC 생성기. 키 기반 메시지 인증 코드를 생성하고 MCP로 자동화하세요.

이것은 무엇인가요?

HMAC(Hash-based Message Authentication Code)을 생성하는 도구입니다. 비밀 키와 메시지를 조합하여 인증 코드를 생성하며, SHA-256, SHA-512 등 다양한 해시 알고리즘을 지원합니다. API 서명, 메시지 무결성 검증, 웹훅 인증에 활용됩니다.

입력

키는 비밀로 유지하고 당사자 간에만 공유해야 합니다

미리보기

메시지와 키를 입력한 후 생성 버튼을 클릭하여 HMAC 생성

사용 방법

메시지와 비밀 키를 입력하고 해시 알고리즘을 선택하세요. 도구가 HMAC 값을 16진수 또는 Base64로 생성합니다. API 요청 서명, 웹훅 검증 등에서 동일한 키와 메시지로 HMAC을 재계산하여 일치 여부를 확인합니다.

심층 분석

HMAC은 RFC 2104에 정의되며, 공식은 HMAC(K, m) = H((K' XOR opad) || H((K' XOR ipad) || m))입니다. 내부 해시와 외부 해시 두 번의 해싱을 수행하여, 단순히 키를 메시지에 붙여 해시하는 것(H(K||m))의 길이 확장 공격 취약점을 방지합니다. 웹훅 인증에서 HMAC은 핵심 역할을 합니다. GitHub, Stripe, Slack 등 대부분의 서비스는 웹훅 페이로드를 HMAC-SHA256으로 서명합니다. 수신 측은 공유 시크릿으로 HMAC을 재계산하고, 헤더의 서명과 비교합니다. 이때 반드시 타이밍 안전 비교(constant-time comparison)를 사용하세요 — 일반 문자열 비교는 타이밍 사이드 채널 공격에 취약합니다. AWS API 서명(Signature Version 4)은 HMAC의 대표적 실무 사용 사례입니다. 날짜, 리전, 서비스를 순차적으로 HMAC하여 서명 키를 유도하고, 이 키로 요청을 서명합니다. 이 체인된 HMAC 구조는 키 노출 범위를 제한합니다. HMAC vs 디지털 서명: HMAC은 대칭 키를 사용하여 양쪽이 동일한 키를 알아야 합니다. 디지털 서명(RSA, ECDSA)은 비대칭 키를 사용하여 서명자의 개인 키 없이 공개 키만으로 검증 가능합니다. 부인 방지(non-repudiation)가 필요하면 디지털 서명을 사용하세요.

예시

  1. 웹훅 검증: GitHub 웹훅의 X-Hub-Signature-256 헤더를 HMAC-SHA256으로 검증
  2. API 요청 서명: AWS Signature V4 스타일의 API 요청 서명 생성
  3. 메시지 인증: 데이터 전송 시 HMAC으로 변조 여부 확인
  4. 토큰 생성: HMAC 기반 일회성 토큰이나 CSRF 토큰 생성

Toolypet MCP 서버 설치

하나의 명령어로 AI 에이전트에 Toolypet 도구를 추가하세요. Claude Desktop, Claude Code, Cursor 및 모든 MCP 호환 클라이언트에서 사용 가능합니다.

빠른 시작
npx -y @toolypet/mcp-server@latest
MCP 클라이언트 설정
{
  "mcpServers": {
    "toolypet": {
      "command": "npx",
      "args": [
        "-y",
        "@toolypet/mcp-server@latest"
      ]
    }
  }
}
도구 이름:mcp__toolypet__hmac_generator
프롬프트 예시
Generate HMAC-SHA256 for message 'hello' with secret key 'my-secret'
입력 예시
{
  "message": "hello",
  "secret": "my-secret",
  "algorithm": "sha256"
}
출력 예시
{
  "hmac": "88aab3ede8d3adf94d26ab90d3bafd4a2083070c3bcce9c014ee04a443847c0b",
  "algorithm": "HMAC-SHA256"
}

자주 묻는 질문

HMAC과 일반 해시의 차이점은 무엇인가요?
일반 해시(SHA-256(message))는 키가 없어 누구나 계산할 수 있습니다. HMAC은 비밀 키를 사용하므로 키를 아는 당사자만 올바른 값을 생성/검증할 수 있습니다. 메시지 인증에는 반드시 HMAC을 사용하세요.
길이 확장 공격이란 무엇인가요?
SHA-256(key||message) 형태에서, 공격자가 해시값과 메시지 길이를 알면 key를 모르고도 SHA-256(key||message||padding||attacker_data)를 계산할 수 있습니다. HMAC은 이중 해싱 구조로 이 공격을 방지합니다.
타이밍 안전 비교란 무엇인가요?
일반 문자열 비교는 첫 번째 불일치에서 즉시 반환하여, 응답 시간으로 올바른 바이트 수를 추론할 수 있습니다. 타이밍 안전 비교는 항상 모든 바이트를 비교하여 일정한 시간이 걸립니다. crypto.timingSafeEqual()을 사용하세요.
HMAC에 어떤 해시 알고리즘을 사용해야 하나요?
HMAC-SHA256이 가장 보편적이고 권장됩니다. HMAC-SHA512는 더 긴 출력이 필요하거나 64비트 시스템에서 성능 이점이 있을 때 사용합니다. HMAC-MD5와 HMAC-SHA1은 HMAC 구조 내에서는 아직 안전하지만 새 구현에서는 피하세요.
JWT에서 HMAC은 어떻게 사용되나요?
JWT의 HS256 알고리즘은 HMAC-SHA256으로 헤더와 페이로드에 서명합니다. 서버가 비밀 키로 서명을 생성하고, 검증 시 동일한 키로 HMAC을 재계산하여 일치 여부를 확인합니다.
Claude/Cursor에서 이 도구를 어떻게 사용하나요?
AI 에이전트 설정에 'npx -y @toolypet/mcp-server@latest'로 Toolypet MCP 서버를 추가하세요. 그런 다음 AI에게 hmac_generator 도구를 message, key, algorithm 파라미터와 함께 사용하도록 요청하세요.
MCP란 무엇이며 Toolypet은 왜 지원하나요?
MCP(Model Context Protocol)는 Claude나 Cursor 같은 AI 에이전트가 외부 도구를 사용할 수 있게 하는 개방형 표준입니다. Toolypet은 MCP를 지원하여 65개 이상의 모든 도구를 브라우저와 AI 에이전트 모두에서 사용할 수 있게 하며, 계산과 작업을 AI 워크플로우에 원활하게 통합합니다.

관련 도구