랜덤 문자열 생성기
보안 토큰, 비밀번호 등에 사용할 랜덤 문자열을 생성합니다.
정보 입력
계산 결과
문자열을 생성해주세요.
랜덤 문자열 생성기 보안 토큰, 비밀번호, API 키, 임시 ID 등에 사용할 무작위 문자열을 즉시 만들어 주는 도구입니다. 대문자·소문자·숫자·특수문자 중 필요한 문자 유형을 선택하고 길이와 개수를 설정하면, 암호학적으로 안전한 난수 생성 알고리즘으로 고품질 문자열을 생성합니다.
회원가입 임시 비밀번호 발급, 세션·인증 토큰 생성, 테스트용 더미 데이터 작성, 충돌 없는 파일명 생성 등 개발과 운영 전반에서 활용됩니다.
개발자와 서비스 운영자에게는 필수 유틸리티로, 일반 사용자에게는 안전한 비밀번호를 만드는 도구로 유용합니다.
이 도구는 브라우저의 Web Crypto API(crypto.getRandomValues)를 사용하므로 일반 난수보다 예측이 어렵습니다. 다만 생성된 값은 화면에만 표시되고 저장되지 않으므로, 중요한 키는 별도 보안 장소에 보관하세요.
- 문자열의 길이를 설정하세요. (1~256자)
- 사용할 문자 집합을 선택하세요. (대문자, 소문자, 숫자, 기호)
- 생성할 문자열 개수를 입력하고 생성 버튼을 클릭하세요.
- 원하는 문자열을 복사하거나 모두 복사하세요.
영숫자 8자
길이 8에 대문자, 소문자, 숫자를 선택하면 정확히 8자로 구성된 영숫자 문자열이 생성됩니다. 예: Kx9mQ2pZ
기호 포함 16자
길이 16에 모든 문자 유형을 선택하면 기호가 포함된 강력한 16자 문자열이 생성됩니다. 예: A#b9!kD$f2@Lm4&Q
길이 제한
길이는 1에서 256 사이로 제한됩니다. 이 범위를 벗어나는 값을 입력하면 자동으로 가장 가까운 허용 값으로 조정됩니다.
문자셋 구성
선택한 문자 유형에 따라 사용 가능한 문자 집합을 만듭니다.
uppercase + lowercase + numbers + symbols
가능한 조합 수
길이 L, 문자셋 크기 N일 때 가능한 문자열의 총수는 다음과 같습니다.
조합 수 = N^L
예: 문자 62개, 길이 16 → 62^16 ≈ 4.7×10²⁸개
난수 매핑
crypto.getRandomValues로 만든 무작위 정수를 문자셋 길이로 나눈 나머지를 인덱스로 사용합니다.
result += charset[random % charset.length]
이 방식은 각 문자가 동일한 확률로 선택되는 균일 분포를 보장합니다.
비밀번호 길이
- 중요 계정은 최소 12자, 권장 16자 이상을 사용하세요.
- 모든 문자 유형을 활성화할수록 강도가 올라갑니다.
API 키 생성
- 특수문자는 이스케이프 문제가 생길 수 있으므로 숫자+영문 조합을 추천합니다.
- 세션·인증 토큰은 32자 이상을 권장합니다.
재사용 금지
- 같은 문자열을 여러 곳에 재사용하지 마세요.
- 유출 의심 시 즉시 새 것으로 교체하세요.
안전한 보관
- 생성값은 저장되지 않으므로 비밀번호 관리자를 이용하세요.
- 화면 캡처나 로그에 남지 않도록 주의하세요.
테스트 데이터
- 더미 데이터와 파일명 생성에 대량 생성을 활용하세요.
- 개수는 한 번에 최대 50개까지 가능합니다.
복잡도 조절
- 사용처에 따라 특수문자 포함 여부를 조절하세요.
- 가독성이 필요하면 숫자+영문 조합이 적당합니다.
Q어떤 문자 집합을 선택할 수 있나요?
대문자(A-Z), 소문자(a-z), 숫자(0-9), 그리고 특수 기호(!@#$%^&* 등)를 조합하여 선택할 수 있습니다. 하나도 선택하지 않으면 소문자만 사용됩니다.
Q이 생성기는 암호화에 안전한가요?
네. 이 생성기는 Math.random() 대신 crypto.getRandomValues()를 사용하여 암호학적으로 안전한 난수를 제공합니다.
Q비밀번호에는 어떤 길이가 권장되나요?
비밀번호에는 16자 이상, 특히 기호를 포함한 문자열을 권장합니다. 길이가 길수록 추측이나 무차별 대입 공격에 강해집니다.
Q중복 문자열이 생성될 확률은 얼마인가요?
문자 집합 크기가 n이고 길이가 L일 때 가능한 조합은 n의 L제곱입니다. 길이와 문자 종류가 충분하다면 중복 확률은 극히 낮습니다.
Q이 문자열은 어떤 용도로 사용할 수 있나요?
비밀번호, API 키, 인증 토큰, 세션 ID, 일회용 코드 등 보안이 필요한 다양한 용도에 사용할 수 있습니다.