SORU
23 Kasım 2009, PAZARTESİ


Ne zaman uuıd kullanmalıyım.() uuid1 vs uuıd.() uuid4 python?

I docs. dan ikisi arasındaki farkı anlayabilme

uuid1():
Ana bilgisayar KİMLİĞİ, sıra numarası ve geçerli zaman bir UUID oluşturmak

uuid4():
Rastgele bir UUID oluşturmak.

uuid1 bir UUID oluşturmak için makine/sıra/zaman bilgi kullanır. Her kullanmanın artıları ve eksileri nelerdir?

uuid1() makine-bilgileri kapalı tabanlı olduğu için gizlilik endişeleri var, biliyorum. Eğer biri ya da diğeri seçerken daha ince ise orada merak ediyorum. Ben sadece tamamen rastgele bir UUID olduğu için şu anda uuid4() kullanın. Ama eğer uuid1 çarpışma riskini azaltmak için kullanılması gerektiğini merak ediyorum.

Temel olarak, en iyi uygulamaları diğer vs birini kullanarak için ipuçları arıyorum. Teşekkürler!

CEVAP
23 Kasım 2009, PAZARTESİ


uuid1() herhangi bir çakışması (aynı anda çok sayıda oluşturmak varsayımı altında) üretmek için garanti değil. Mac adresi bilgisayar arasında benzersiz yapmak için kullanılan alır gibi uuid ve bilgisayar arasında bir bağlantı yok Hayır bu kadar önemliyse, onu kullanmak olmaz.

2'den fazla oluşturarak çoğaltır oluşturabilirsiniz14100ns, ama bu daha az uuid1 en kullanım durumları için sorun değil.

uuid4() dediğiniz gibi, rastgele bir UUID üretir. Bir çarpışma şans gerçektengerçektenküçük. Bu konuda endişelenmenize gerek yok bu yeterli. Sorun rastgele sayı kötü bir jeneratör bu çarpışmalar olması daha olası hale getirir.

This excellent answer by Bob Aman kadar güzel özetliyor. (Bütün cevap okumanızı tavsiye ederiz.)

Açıkçası, tek bir uygulama alanı içinde kötü niyetli aktörler olmadan, Dünya'daki tüm yaşamı yok edecek varsa çok geçmeden ortaya çarpışma, sürüm 4 UUID bile, eğer çok üretiyorsun bile Olacak biçimde saniyede.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • sk8ingis4me

    sk8ingis4me

    16 Mart 2006
  • SRI International

    SRI Internat

    30 NİSAN 2008
  • TecNoob

    TecNoob

    15 AĞUSTOS 2013