DB 시딩이나 API 모킹을 위해 수십, 수백 개의 고유 식별자가 갑자기 필요한 순간이 있다. 스크립트를 새로 작성하거나 외부 라이브러리를 설치하는 일은 번거롭고, 운영 환경과 다른 설정을 건드리다 보면 귀중한 개발 시간이 낭비된다. 서버로 데이터를 보내 처리하는 방식은 프로젝트 보안 측면에서도 찜찜함을 남긴다. 이 글에서는 별도의 코드 작성 없이 100% 브라우저 내에서 안전하고 즉각적으로 UUID 대량 생성을 완료하는 방법을 알아본다.
왜 이 문제가 생기는가
테스트 데이터나 초기 DB 세팅을 구성할 때 단순한 일련번호를 사용하면 분산 환경이나 실제 서비스와 구조가 달라져 테스트의 신뢰성이 떨어진다. 반면 글로벌 고유 식별자인 UUID를 사용하려면 특정 언어나 프레임워크에 종속된 코드를 작성해야 한다. 대량의 데이터가 필요할수록 매번 스크립트를 짜거나 패키지를 설치하는 과정이 반복되어 개발 흐름이 끊기게 된다. 특히 엄격한 보안이 요구되는 프로젝트에서는 외부 서비스에 의존해 식별자를 발급받는 과정에서 잠재적인 데이터 관리 이슈가 발생할 수도 있다.
해결 방법
UUID 대량 생성 절차
- 1버전 선택
RFC 9562 표준 v4를 선택하여 충돌 없는 대량 무작위 데이터를 준비한다.
- 2개수 지정
필요한 수량을 입력하여 최대 100개의 식별자 세트를 생성한다.
- 3내보내기
목록을 클립보드에 일괄 복사하거나 .txt 파일로 다운로드하여 활용한다.
이런 번거로움을 피하려면 회원가입이나 결제, 횟수 제한 없이 브라우저 환경에서 즉시 구동되는 UUID / GUID 생성기를 활용하는 것이 가장 효율적이다. 웹 브라우저의 자체 엔진을 사용하면 암호학적으로 안전한 난수를 바탕으로 서버 전송 없이 100% 클라이언트 사이드에서 연산이 이루어진다.
- 버전 선택: 대량의 무작위 데이터가 필요하다면 RFC 9562 표준에 따른 v4를 선택한다. v4는 122비트 난수를 바탕으로 만들어지므로 실질적인 충돌 가능성이 거의 없어 대량 시딩에 최적화되어 있다.
- 개수 지정: 필요한 수량을 입력한다. 클릭 한 번으로 최대 100개의 식별자 세트를 8-4-4-4-12 형태의 문자열로 즉시 얻을 수 있다.
- 내보내기: 화면에 출력된 목록을 클립보드에 일괄 복사하거나, .txt 파일로 다운로드하여 DB 스크립트나 JSON 목업 데이터에 바로 붙여넣는다.
이 과정에서 텍스트 데이터가 외부 서버로 절대 유출되지 않으므로 기업 보안 정책을 준수하면서도 빠르게 작업을 이어갈 수 있다.
그래도 안 될 때
극히 오래된 버전의 브라우저 사용
크롬, 엣지, 사파리 등을 최신 버전으로 업데이트한 후 다시 시도한다.
텍스트 에디터 인코딩 불일치
텍스트 에디터에서 UTF-8 인코딩으로 열었는지 확인한다.
브라우저 기반 암호화 API는 최신 브라우저 대부분에서 지원되지만, 극히 오래된 버전의 브라우저를 사용 중이라면 난수 생성 기능이 정상 동작하지 않을 수 있다. 이때는 크롬, 엣지, 사파리 등을 최신 버전으로 업데이트한 후 다시 시도하면 해결된다. 다운로드한 파일의 텍스트가 비정상적으로 보인다면 텍스트 에디터에서 UTF-8 인코딩으로 열었는지 확인한다.
재발 방지 팁
반복적인 테스트 데이터 구축 작업이 예상된다면 팀 내부 문서나 북마크에 안전한 브라우저 로컬 생성 도구 링크를 등록해 두는 것이 좋다. 그러면 다음번에 대량의 식별자가 필요할 때 불필요한 환경 설정이나 스크립트 작성 시간을 아끼고 곧바로 핵심 로직 개발에 집중할 수 있다.