logo
GeekFormat

SHA-256 해시

입력0자 · 0바이트
示例:
전체 해시 (나란히 보기)
Web Crypto API로 계산
MD5
32 hex
SHA-1
40 hex
SHA-256
64 hex
SHA-384
96 hex
SHA-512
128 hex

텍스트, 파일, 배치용 무료 온라인 SHA-256 해시 생성기입니다. MD5, SHA-1, SHA-256, SHA-384, SHA-512를 나란히 계산하고 Hex/Base64 출력을 전환하며 파일을 드래그 앤 드롭하고 알려진 해시와 비교합니다. 모두 브라우저에서 처리되며 업로드하지 않습니다.

관련 추천

사용 사례

  • 다운로드한 설치 파일, ISO, 이미지, 첨부 파일이 공식 SHA-256 체크섬과 일치하는지 확인합니다
  • AWS SigV4, OAuth, JWT HS256 등 API 서명 검증에 필요한 SHA-256 다이제스트를 생성합니다
  • DB 이전, 백업, 네트워크 전송 전후의 파일 완전성 체크섬을 비교합니다
  • 설정 줄, 비밀번호 후보 목록, 테스트 픽스처를 한꺼번에 SHA-256 으로 변환합니다
  • 알려진 평문과 키를 사용해 HMAC-SHA256 Webhook 서명을 끝까지 디버깅합니다
  • MD5, SHA-1, SHA-384, SHA-512 와 결과를 비교하며 해시 알고리즘 차이를 학습합니다

주요 기능

  • 텍스트와 파일 지원: 문자열, 로컬 파일, 배치 입력의 SHA-256 해시를 한 화면에서 생성합니다
  • 5가지 알고리즘 동시 계산: MD5, SHA-1, SHA-256, SHA-384, SHA-512 를 나란히 계산해 교차 확인할 수 있습니다
  • Hex / Base64 출력: API 서명, JWT, 저장 시스템 요구에 맞춰 출력 형식을 바로 전환합니다
  • 드래그 앤 드롭 파일 처리: 설치 파일, ISO, 이미지 등 로컬 파일을 업로드하지 않고 브라우저 안에서 해시화합니다
  • 알려진 해시와 비교: 기대 다이제스트를 붙여 넣으면 일치/불일치를 실시간으로 확인합니다
  • 배치 SHA-256: 설정 줄, 테스트 데이터, 검증 목록을 한 줄씩 개별 해시로 계산합니다
  • HMAC-SHA256 디버깅에 적합: AWS SigV4, JWT HS256, Webhook 서명 흐름을 재현하고 확인하기 쉽습니다
  • Web Crypto API 사용: 브라우저 표준 구현으로 로컬 계산하며 polyfill 에 의존하지 않고 입력을 외부로 보내지 않습니다

이용 방법

  1. 모드 선택: Text, File, Batch, HMAC-SHA256 중 작업에 맞는 모드를 고릅니다
  2. 입력하기: 텍스트를 입력하거나 붙여 넣고, 파일은 드래그 앤 드롭합니다. 텍스트 모드에서는 입력과 함께 결과가 갱신됩니다
  3. 필요하면 Multi-Algorithm 을 켜서 MD5 / SHA-1 / SHA-256 / SHA-384 / SHA-512 를 한 번에 계산합니다
  4. Hex 와 Base64 출력 형식을 전환하고 필요한 다이제스트를 원클릭으로 복사합니다

자주 묻는 질문

SHA-256 은 무엇이고 어떻게 동작하나요?

SHA-256 은 SHA-2 계열의 암호학적 해시 함수로, NIST 가 FIPS 180-4 로 표준화했습니다. 입력을 512비트 블록으로 나눠 64라운드의 비트 연산을 거치고, 고정 길이 256비트(16진수 64자) 다이제스트를 만듭니다. 2026년 기준 전체 라운드 SHA-256 에 대한 실용적인 충돌 공격이나 원상 복구 공격은 알려져 있지 않습니다.

다운로드 파일이 변조되지 않았는지 SHA-256 으로 확인할 수 있나요?

가능합니다. Linux 배포판, Docker 이미지, npm 패키지 등 많은 배포자는 다운로드 링크 옆에 SHA-256 체크섬을 제공합니다. 다운로드 후 이 도구로 파일의 SHA-256 을 계산하고 공개된 값과 완전히 일치하는지 확인하세요. 일치하지 않으면 파일 손상, 변조, 또는 다른 파일일 가능성이 있습니다.

왜 많은 사람이 MD5 보다 SHA-256 을 선호하나요?

MD5 는 실용적인 충돌 공격이 알려져 있어 보안 용도로 안전하지 않습니다. SHA-256 은 256비트 출력을 제공하고 전체 라운드에 대한 실용적인 공격이 알려져 있지 않습니다. 새 프로젝트에서 파일 완전성, 서명, HMAC 을 설계한다면 MD5 대신 SHA-256 을 기본으로 선택하는 것이 좋습니다.

SHA-256 은 되돌리거나 복호화할 수 있나요?

할 수 없습니다. SHA-256 은 일방향 함수라 해시값에서 원래 입력을 계산으로 복원하는 것은 현실적으로 불가능합니다. “역추적”처럼 보이는 경우는 사전 공격, 무차별 대입, 알려진 값 테이블 조회 때문입니다. 짧은 비밀번호나 유명한 문자열은 쉽게 찾을 수 있으므로 비밀번호 저장에는 사용하지 마세요.

SHA-256 은 비밀번호 저장에 안전한가요?

아닙니다. SHA-256 은 빠르게 계산되도록 설계되어, 유출된 비밀번호 해시에 대해 공격자가 GPU 로 많은 후보를 빠르게 시도할 수 있습니다. 비밀번호 저장에는 사용자별 salt 를 붙인 bcrypt, scrypt, Argon2id 처럼 계산 비용이나 메모리 비용을 조절할 수 있는 방식을 사용하세요.

API 서명이나 HMAC 디버깅에 SHA-256 이 유용한가요?

유용합니다. AWS SigV4, GitHub Webhook, Slack 서명, JWT HS256, OAuth 1.0a 등 많은 현대적 서명 방식은 HMAC-SHA256 을 사용합니다. 이 도구는 SHA-256 다이제스트와 HMAC-SHA256 확인에 모두 쓸 수 있어 평문, 키, 출력 형식을 분리해 디버깅하기 좋습니다.

SHA-256 과 SHA-3 는 무엇이 다른가요?

둘 다 256비트 다이제스트를 만들 수 있지만 내부 구조가 다릅니다. SHA-256 은 SHA-2 계열의 Merkle–Damgård 구조를 기반으로 하고, SHA-3 는 Keccak 의 sponge 구조를 기반으로 합니다. 일반적인 파일 완전성이나 API 서명에는 SHA-256 이 훨씬 널리 쓰이며, SHA-3 는 다른 계열의 설계가 필요할 때 선택합니다.

Bitcoin 과 블록체인에서 SHA-256 을 쓰는 이유는 무엇인가요?

Bitcoin 은 Proof of Work, 블록 헤더, 트랜잭션 ID, Merkle tree 커밋먼트 등에 SHA-256 을 사용합니다. 많은 곳에서 double-SHA-256 으로 두 번 실행합니다. 고정 길이 출력, 입력의 작은 변화에도 결과가 크게 바뀌는 성질, 원상 복구 어려움이 분산 원장의 검증에 잘 맞습니다.

입력 데이터가 서버로 전송되나요?

전송되지 않습니다. 모든 해시 계산은 브라우저 안의 Web Crypto API 로 실행됩니다. 입력 텍스트, 파일, HMAC 키, 비교할 해시값은 네트워크로 보내지지 않습니다. 페이지가 로드된 뒤에는 오프라인에서도 사용할 수 있습니다.

빈 문자열의 SHA-256 해시는 무엇인가요?

`e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855` 입니다. 빈 문자열에 대한 잘 알려진 SHA-256 값이며, 많은 암호 라이브러리에서 자체 테스트 벡터로 사용됩니다.

SHA-256 해시란?

SHA-256 은 SHA-2 계열의 암호학적 해시 함수입니다. 미국 NSA 가 설계하고 NIST 가 FIPS 180-4 로 표준화했습니다. 빈 문자열부터 수 GB 파일까지 어떤 입력이든 고정 길이의 256비트, 즉 16진수 64자 다이제스트로 바꿉니다.

알고리즘은 입력을 512비트(64바이트) 블록으로 나누고 64라운드의 비트 연산으로 섞습니다. 내부적으로 A 부터 H 까지 8개의 상태 값을 유지하며, 소수의 제곱근 등에서 유도된 상수로 초기화합니다. 입력이 한 글자만 달라도 출력은 완전히 다른 값처럼 바뀌는 강한 avalanche 특성을 가집니다.

2026년 기준으로 전체 64라운드 SHA-256 에 대한 실용적인 충돌 공격이나 원상 복구 공격은 알려져 있지 않습니다. 라운드 수를 줄인 변형에 대한 연구는 있지만 표준 SHA-256 을 깨는 수준은 아닙니다. 그래서 TLS, 파일 완전성, Bitcoin, Git, JWT HS256, HMAC-SHA256 등에서 여전히 널리 쓰이는 표준입니다.

다만 SHA-256 은 비밀번호 저장용으로 설계된 함수가 아닙니다. SHA-256 은 빠르게 계산되므로, 비밀번호 해시 DB 가 유출되면 공격자가 GPU 로 엄청난 수의 후보를 짧은 시간에 시도할 수 있습니다. 비밀번호 저장에는 salt 를 붙인 bcrypt, scrypt, Argon2id 처럼 일부러 느리게 만들 수 있는 방식이 필요합니다.

SHA-256 은 NIST FIPS 180-4 와 IETF RFC 6234 에 정의되어 있으며, 여러 보안 시스템에서 승인된 표준입니다. 새 시스템에서 일반적인 체크섬이나 서명용 다이제스트를 고른다면 MD5 나 SHA-1 보다 SHA-256 을 선택하는 것이 자연스럽습니다.

Code Examples

SHA-256 of the empty string

text

The empty string has a single, well-known SHA-256 digest. You will see this constant in logs, caches, CDNs and storage systems as the fingerprint of empty content.

Input  : (empty)
SHA-256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

SHA-256 of "hello"

text

Classic test vector for SHA-256 implementations. Many cryptographic libraries ship a self-test that hashes this exact string.

Input  : hello
SHA-256: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824

SHA-256 of "hello world"

text

The most commonly cited SHA-256 example on the web. Used in tutorials, RFCs and Wikipedia to illustrate the algorithm's output.

Input  : hello world
SHA-256: b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9

Compute SHA-256 in JavaScript (Web Crypto API)

javascript

Production-grade SHA-256 in 4 lines using the browser's native Web Crypto API. No external libraries, no uploads, audited native implementation.

const buf = new TextEncoder().encode('hello')
const hash = await crypto.subtle.digest('SHA-256', buf)
const hex = [...new Uint8Array(hash)]
  .map(b => b.toString(16).padStart(2, '0'))
  .join('')
console.log(hex)
// 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824

Compute SHA-256 in Python

python

Standard-library SHA-256 hash with hex output. Works in Python 3.6+.

import hashlib
print(hashlib.sha256(b'hello').hexdigest())
# 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824

Compute SHA-256 at the command line

bash

Verify a downloaded file with one shell command. macOS and Linux ship sha256sum (or shasum -a 256 on macOS) by default.

$ echo -n 'hello' | sha256sum
2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824  -

$ sha256sum installer.dmg
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855  installer.dmg

Supported Video Formats

FormatMIMEBrowser supportWhen to use
MD5128-bit (32 hex)Universal충돌 공격이 알려져 있어 보안 용도에는 맞지 않습니다. 비보안 체크섬이나 레거시 호환 목적으로만 사용됩니다.
SHA-1160-bit (40 hex)UniversalSHAttered 이후 보안 용도로는 권장되지 않습니다. 새 시스템에서는 SHA-256 을 사용하세요.
SHA-256256-bit (64 hex)Web Crypto API현대적인 기본 선택입니다. TLS, 파일 완전성, Bitcoin, Git, JWT HS256, HMAC-SHA256 에 널리 사용됩니다.
SHA-384384-bit (96 hex)Web Crypto APISHA-2 계열의 384비트 버전입니다. 더 긴 다이제스트나 특정 보안 요구가 있을 때 사용합니다.
SHA-512512-bit (128 hex)Web Crypto APISHA-2 계열의 512비트 버전입니다. 64비트 CPU 에서는 SHA-256 보다 빠른 경우도 있고 긴 다이제스트가 필요한 작업에 적합합니다.
SHA-3 / Keccak256/512-bitLimitedNIST 가 2012년에 선정한 sponge 구조의 해시 함수입니다. 장기적인 암호 민첩성이 필요한 경우 선택할 수 있습니다.

Output Example

A real MP3 file encoded to a Data URI — copy-ready:

입력  : hello world
SHA-256: b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9

입력  : (빈 문자열)
SHA-256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Privacy & Security

이 SHA-256 생성기는 브라우저 표준 Web Crypto API 를 사용해 100% 브라우저 안에서 실행됩니다. 텍스트, 파일, 배치 데이터는 모두 로컬에서 해시화되며 서버로 전송되지 않습니다. 해시 입력에 대한 분석 요청, 로그 저장, 다이제스트 캐시, 도구 자체의 제3자 트래커가 없습니다. 알려진 해시와의 비교도 클라이언트에서 끝납니다. API 키, 내부 파일명, HMAC Secret, 고객 데이터처럼 외부에 보내고 싶지 않은 내용도 확인하기 쉽도록 설계되어 있습니다.

Authoritative References