给定GUID,如果我缩短它...我们可以假设它仍然是唯一的吗?

时间:2014-03-12 04:27:48

标签: language-agnostic guid

鉴于GUID's是(或多或少)唯一的​​,如果我们缩短它with some code

  
    

它基本上只是将GUID转换为base64字符串并稍微缩短它。     它需要像这样的标准GUID:

         

c9a646d3-9c61-4cb7-bfcd-ee2522c8f633

         

并将其转换为这个较小的字符串:

         

00amyWGct0y_ze4lIsj2Mw

  

我现在可以假设缩短的guid与之前的(正常)形式一样独特吗?

1 个答案:

答案 0 :(得分:5)

这是一个可逆转换 - 您可以使用反函数获取原始GUID。这意味着它完全为" unique&#34 ;;有一个不同的"缩短的GUID"对于每个GUID。编码函数中的最后substr步骤是删除base64填充字符==。这不会丢失任何信息,因为每个GUID都是相同的长度,因此每个GUID都具有相同的填充。解码函数在传递给base64解码器之前重新附加"=="