目前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:]
)