我需要在ruby中生成UTID。这是我在一份文档中找到的内容。
UTID - 许多服务使用唯一生成的ID,称为Unique 交易ID(UTID)。这些ID基于标准UUID,但是 修改为更易于阅读。创建UTID的过程是 如下:
生成版本4(随机)UUID
将UUID转换为16字节的二进制表示
- 对二进制UUID进行编码
使用base32
- 醇>
为了便于阅读,UTID可能每5个字符插入一个短划线
"-"
,最后一组为6个字符。base32编码的特定字符集必须是
0123456789ABCDEFGHJKMNPQRSTVWXYZ
。转换UUID的示例d0ab7ada-1a1e-4893-8e1e-4ab07da05dc3
是UTIDT2NQN-PGT3S-4973G-Y9AR7-V82XRC
。
(我正在使用上述文档中的示例来检查我的结果。但它们从不匹配。)
问题在于我无法完全重新创建这些步骤。我不确定如何实施第二步和第三步。第一步我用这个:
SecureRandom.uuid.delete('-')
如何实施所有其他步骤?