我正在编写GoLang Oauth应用程序,其中使用以下方法来生成UUID,然后从UUID生成accessToken。
import "github.com/pborman/uuid"
uuid := uuid.NewRandom()
accessToken = base64.RawURLEncoding.EncodeToString([]byte(uuid))
想知道令牌的base64编码是否与UUID一样唯一,因为accessToken在MYSQL数据库中具有唯一索引,并且如果发生冲突将失败。
答案 0 :(得分:0)
是的,因为您的uuid是唯一的,所以它是唯一的。 为什么不使用uuid作为令牌?无需base64,您可以按原样使用它。
答案 1 :(得分:0)
Base64只是一种编码。它既不删除信息也不添加信息。这也是可逆的。基于此,base64编码的uuid的唯一性与未编码的uuid完全相同。