目前python支持uuid1,uuid3,uuid4和uuid5四種方法產生uuid,其中uuid1能夠產生全球唯一標識,但是在默認的情況下會直接暴露主機的mac地址;
本文主要是結合md5的唯一性,對uuid1方法進行封裝,使得mac不可見,方法如下:
#!/usr/bin/env python
#--- coding: utf8 ---
import time
import md5
import uuid
def get_uuid():
m = md5.new()
m.update(str(uuid.uuid1()))
uuid_md5 = m.hexdigest()
return '%s-%s-%s-%s-%s' % (
uuid_md5[:8],
uuid_md5[8:12],
uuid_md5[12:16],
uuid_md5[16:20],
uuid_md5[20:]
)