Кодировка UUID Base 64 - использовать в качестве токена доступа - PullRequest
0 голосов
/ 19 января 2019

Я пишу приложение GoLang Oauth, в котором я использую метод ниже, чтобы сгенерировать UUID, а затем сгенерировать accessToken из UUID.

import "github.com/pborman/uuid"
uuid := uuid.NewRandom()
accessToken = base64.RawURLEncoding.EncodeToString([]byte(uuid)) 

Хотелось бы знать, что кодировка токена base64 уникальна, как UUID, или нет, потому что accessToken будет иметь уникальный индекс в моей базе данных MYSQL и потерпит неудачу в случае коллизии.

Ответы [ 2 ]

0 голосов
/ 19 января 2019

Base64 - это просто кодировка. Он не удаляет и не добавляет информацию. Это также обратимо. Исходя из этого, уникальность u64 в кодировке base64 точно такая же, как в кодировке uuid.

0 голосов
/ 19 января 2019

Да, он уникален, потому что ваш uuid уникален. Почему вы не используете uuid в качестве токена? Нет необходимости в base64, вы можете использовать его как есть.

...