파이썬에서 URI로 사용할 UUID 생성하기?
조회수 2309 답변수 1 반응수 3 등록일 2016.09.22 22:29:13

제목 그대로 URI에서도 안전하게 사용할 UUID를 생성해야 합니다.

랜덤함수를 이용하면 되는건지 아니면 다른 더 좋은 방법이 있는건가요?


uuid 모듈을 사용하면 간편하게 random값을 생성 할 수 있습니다.

아래 코드 참조해 주세요.

  1. import uuid
  2. import base64
  3.  
  4. = uuid.uuid4()
  5. token = base64.urlsafe_b64encode(u.bytes)[:22]
  6. return token.decode("utf-8")

참고로 python 2.5 버전 이상 부터는 uuid 모듈이 표준 라이브러리로 채택되어 내장되어 있습니다.

uuid 모듈은 RFC 4122 규정에 의거하여 uuid를 생성 할 수 있도록 4가지의 메소드를 포함하고 있습니다.


uuid1

  1. def uuid1(node=None, clock_seq=None):
  2. """호스트 ID와 현재 시간을 기준으로 uuid를 생성합니다."""


uuid3

  1. def uuid3(namespace, name):
  2. """namespace의 md5 hash와 name을 가지고 uuid를 생성합니다."""


uuid4

  1. def uuid4():
  2. """랜덤으로 uuid를 생성합니다."""

uuid5
  1. def uuid5(namespace, name):
  2. """namespace의 SHA-1 hash와 name을 가지고 uuid를 생성합니다."""


2016.09.26 21:06:51 반응 이력

답변 작성

질문에 적합한 답변을 상세히 작성해 주시기 바랍니다.

답변이 찬성되면 태그평판 +2점이 적립, 반대되면 태그평판 -1점 차감됩니다.

답변이 채택되면 태그평판 +10점이 적립됩니다.