발급 규칙부터 선택
Twitter 원본은 보관된 snowflake-2010 코드의 형식입니다. Discord는 공식 부호 없는 형식을 사용합니다. 자체 시스템이라면 사용자 지정을 선택하고 에포크와 세 필드의 비트 수를 직접 입력하세요.
식별자와 시간
ID를 해석하기 전에 발급 시스템의 레이아웃을 선택하세요.
모든 ID 계산은 브라우저에서 처리하며 입력을 업로드하지 않습니다.
십진 ID 하나를 최대 256자로 입력하세요. URL과 목록은 지원하지 않습니다.
Twitter snowflake-2010: 41/5/5/12. 상위 노드는 데이터센터, 하위는 워커이며 예약 부호 비트는 0입니다. 출처 보기
ID를 입력하거나 예제를 불러오세요.
로그에 생성 시각 없이 긴 ID만 남았다면 Snowflake 디코더로 시간 필드를 확인할 수 있습니다. 같은 숫자도 에포크에 따라 서로 다른 날짜가 됩니다. 날짜가 그럴듯해 보이는 것만으로 출처를 판단하지 말고, 발급 시스템의 설정부터 대조하세요.
Snowflake 디코더는 Twitter 원본과 Discord를 구분합니다. 시간 필드는 각각 41비트와 42비트이며 노드의 두 하위 필드 이름도 다릅니다. 선택한 프리셋의 에포크와 출처를 함께 보면서 시각 차이의 원인을 좁힐 수 있습니다.
밀리초 시간, 노드, 시퀀스를 고정하면 같은 ID가 나옵니다. 비트별 그룹을 애플리케이션의 마스크와 비교하거나 사용자 지정 설정에서 경계를 바꿔 보세요. 실제 데이터에 손대지 않고 필드 조합 오류를 확인할 수 있습니다.
Twitter 원본은 보관된 snowflake-2010 코드의 형식입니다. Discord는 공식 부호 없는 형식을 사용합니다. 자체 시스템이라면 사용자 지정을 선택하고 에포크와 세 필드의 비트 수를 직접 입력하세요.
에포크와 생성 시간 모두 Unix 밀리초를 받습니다. 프리셋의 노드는 상위 값 × 32 + 하위 값입니다. Twitter는 데이터센터와 워커, Discord는 워커와 프로세스를 합친 값입니다.
자동 디코딩은 마지막 변경 후 350ms 뒤에 실행됩니다. 끄면 버튼이나 Ctrl/Cmd + Enter로 실행할 수 있습니다. 입력이 바뀌면 내보내기가 비활성화되며, 테스트 ID 생성은 언제나 직접 실행해야 합니다.
Snowflake ID 날짜 변환기는 십진 문자열을 BigInt로 읽습니다. Discord 예제 175928847299117063은 2016-04-30T11:18:25.796Z, 노드 32, 시퀀스 7로 해석됩니다. 부동소수점에서 같아질 수 있는 인접한 번호도 구분합니다.
타임스탬프 변환기는 UTC, Unix 밀리초, 에포크 이후 경과 시간을 보여 줍니다. 이진수 앞의 0도 유지합니다. Twitter의 예약 부호 비트는 0으로 표시하고 Discord는 64비트 전체를 사용합니다.
상위부터 시간, 노드, 시퀀스가 연속으로 배치됩니다. 노드나 시퀀스에 0비트를 할당하면 값도 0이어야 합니다. 필드에 맞지 않는 값을 잘라 넣지 않고 거부하므로 옆 필드가 조용히 바뀌지 않습니다.
시간을 직접 입력하면 동일한 ID를 다시 만들 수 있습니다. 비워 두면 실행한 순간의 현재 시간을 씁니다. 결과를 즉시 반대로 해석하며 ID를 복사하거나 레이아웃을 포함한 JSON 보고서를 다운로드할 수 있습니다.
Discord의 개발자 모드를 켠 뒤 대상의 메뉴에서 ID 복사를 선택하세요. Snowflake 디코더에서는 Discord 프리셋으로 그 숫자를 읽습니다. 메시지 링크 대신 ID만 입력하며 사용자 이름으로 번호를 검색하는 기능은 없습니다.
원본의 기준은 2010-11-04T01:42:54.657Z, 즉 Unix 밀리초 1288834974657입니다. Discord는 1420070400000을 사용합니다. 에포크가 다르면 같은 시간 비트가 다른 실제 시각으로 바뀝니다.
아니요. 예전의 단순 증가 번호에는 이 방식의 시간 정보가 없습니다. 이 도구는 숫자를 지정한 레이아웃으로 해석하므로 짧은 숫자에서도 날짜가 나올 수 있지만, 그것을 실제 게시 시각으로 사용하면 안 됩니다.
지원하는 형식은 밀리초 단위입니다. 비트 연산으로 저장된 밀리초를 정확히 읽지만 원래 시스템 시계의 정확도나 실제 사건 발생 시각까지 보증하지는 않습니다. 입력 전 숫자가 반올림됐다면 원본 문자열을 다시 확보해야 합니다.
아니요. 선택한 시간과 노드, 시퀀스를 조합한 테스트 값입니다. 노드와 시퀀스를 모두 0으로 두면 해당 밀리초의 가장 작은 값이 됩니다. 반복 생성은 같은 결과를 만들며 게시물 존재 여부는 확인하지 않습니다.
다른 레이아웃이 필요한가요?