UUID / ULID / NanoID ਜਨਰੇਟਰ

ਆਪਣੇ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਹੀ ਤੁਰੰਤ UUID v4, UUID v7, ULID, ਅਤੇ NanoID ਮੁੱਲ ਤਿਆਰ ਕਰੋ।

ਫਾਰਮੈਟ

122 ਬਿੱਟ ਦੀ ਸ਼ੁੱਧ ਰੈਂਡਮਨੈੱਸ — ਕੋਈ ਕ੍ਰਮ ਨਹੀਂ, ਅੰਦਾਜ਼ਾ ਲਗਾਉਣਾ ਅਸੰਭਵ।

ਤਿਆਰ ਕੀਤੇ ਗਏ ID
ਤਿਆਰ ਹੈ।

ਤੁਹਾਡੇ ID ਮਜ਼ਬੂਤ ਬ੍ਰਾਊਜ਼ਰ ਰੈਂਡਮਨੈੱਸ ਨਾਲ ਸਥਾਨਕ ਤੌਰ 'ਤੇ ਤਿਆਰ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। BroBroGo ਨੂੰ ਕੁਝ ਵੀ ਨਹੀਂ ਭੇਜਿਆ ਜਾਂਦਾ।

ਅਕਸਰ ਪੁੱਛੇ ਜਾਣ ਵਾਲੇ ਸਵਾਲ

UUID v4, UUID v7, ULID, ਅਤੇ NanoID ਵਿੱਚ ਕੀ ਅੰਤਰ ਹੈ?

UUID v4 ਜਾਣੇ-ਪਛਾਣੇ 36-ਅੱਖਰਾਂ ਦੇ ਫਾਰਮੈਟ ਵਿੱਚ 122 ਬਿੱਟਾਂ ਦੀ ਸ਼ੁੱਧ ਰੈਂਡਮਨੈੱਸ ਹੈ, ਪਰ ਇਸਦਾ ਰੈਂਡਮ ਕ੍ਰਮ ਡੇਟਾਬੇਸ ਇੰਡੈਕਸ ਲੋਕੈਲਿਟੀ ਲਈ ਠੀਕ ਨਹੀਂ ਹੁੰਦਾ। UUID v7 ਉਸੇ ਸ਼ਕਲ ਨੂੰ ਬਣਾਈ ਰੱਖਦਾ ਹੈ ਜਦੋਂ ਕਿ ਇੱਕ ਮਿਲੀਸਕਿੰਟ ਟਾਈਮਸਟੈਂਪ ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਜੋ ID ਲਗਭਗ ਬਣਾਉਣ ਦੇ ਸਮੇਂ ਅਨੁਸਾਰ ਕ੍ਰਮਬੱਧ ਹੋ ਸਕਣ — ਜੋ ਕਿ ਪ੍ਰਾਇਮਰੀ ਕੀਅਜ਼ (primary keys) ਲਈ ਬਹੁਤ ਉਪਯੋਗੀ ਹੈ। ULID ਇੱਕ ਛੋਟੀ, ਕੇਸ-ਇਨਸੈਂਸਟਿਵ 26-ਅੱਖਰਾਂ ਦੀ ਸਟ੍ਰਿੰਗ ਵਿੱਚ ਇਹੀ ਕੰਮ ਕਰਦਾ ਹੈ। NanoID ਇੱਕ ਬਹੁਤ ਛੋਟੀ, ਪੂਰੀ ਤਰ੍ਹਾਂ ਅਨੁਕੂਲਿਤ (customizable) ID ਲਈ ਕ੍ਰਮਬੱਧਤਾ ਨੂੰ ਛੱਡ ਦਿੰਦਾ ਹੈ — ਤੁਸੀਂ ਲੰਬਾਈ ਅਤੇ ਅੱਖਰਾਂ ਦਾ ਸੈੱਟ ਖੁਦ ਚੁਣ ਸਕਦੇ ਹੋ।

ਕੀ ਇਹ ID ਇੰਨੇ ਰੈਂਡਮ ਹਨ ਕਿ ਇਹਨਾਂ ਦਾ ਅੰਦਾਜ਼ਾ ਨਹੀਂ ਲਗਾਇਆ ਜਾ ਸਕਦਾ?

ਹਾਂ — ਹਰੇਕ ID ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਤੌਰ 'ਤੇ ਮਜ਼ਬੂਤ ਬ੍ਰਾਊਜ਼ਰ ਰੈਂਡਮਨੈੱਸ ਨਾਲ ਤਿਆਰ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਨਾ ਕਿ ਕਿਸੇ ਅਨੁਮਾਨਿਤ ਸਰੋਤ ਤੋਂ। UUID v4 ਅਤੇ NanoID ਦੀ ਡਿਫੌਲਟ ਵਰਣਮਾਲਾ ਵਿੱਚ 100 ਬਿੱਟਾਂ ਤੋਂ ਵੱਧ ਦੀ ਰੈਂਡਮਨੈੱਸ ਹੁੰਦੀ ਹੈ। UUID v7 ਅਤੇ ULID ਇੱਕ ਸ਼ੁਰੂਆਤੀ ਟਾਈਮਸਟੈਂਪ ਲਈ ਉਹਨਾਂ ਬਿੱਟਾਂ ਵਿੱਚੋਂ ਲਗਭਗ 48 ਬਿੱਟਾਂ ਦਾ ਤਿਆਗ ਕਰਦੇ ਹਨ, ਇਸ ਲਈ ਟਾਈਮਸਟੈਂਪ-ਪ੍ਰੀਫਿਕਸਡ ਫਾਰਮੈਟਾਂ ਨੂੰ ਗੁਪਤ ਕੋਡਾਂ ਦੀ ਬਜਾਏ ਕ੍ਰਮਬੱਧ ਕਰਨ ਯੋਗ ID ਵਜੋਂ ਦੇਖੋ।

ਕੀ ਮੈਂ NanoID ਦੀ ਲੰਬਾਈ ਅਤੇ ਅੱਖਰਾਂ ਦੇ ਸੈੱਟ ਨੂੰ ਬਦਲ ਸਕਦਾ ਹਾਂ?

ਹਾਂ — NanoID 'ਤੇ ਸਵਿਚ ਕਰੋ ਅਤੇ ਇਹ ਟੂਲ ਇੱਕ ਲੰਬਾਈ ਸਲਾਈਡਰ (ਡਿਫੌਲਟ ਰੂਪ ਵਿੱਚ 21 ਅੱਖਰ, ਲਾਇਬ੍ਰੇਰੀ ਨਾਲ ਮੇਲ ਖਾਂਦਾ) ਦੇ ਨਾਲ ਇੱਕ ਸੰਪਾਦਨਯੋਗ ਵਰਣਮਾਲਾ ਖੇਤਰ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਲੰਬਾਈ ਨੂੰ ਘਟਾਉਣ ਜਾਂ ਵਰਣਮਾਲਾ ਨੂੰ ਸੀਮਤ ਕਰਨ ਨਾਲ ਟਕਰਾਅ ਪ੍ਰਤੀਰੋਧ (collision resistance) ਘੱਟ ਜਾਂਦਾ ਹੈ, ਇਸ ਲਈ ਜੇਕਰ ਤੁਸੀਂ ਅੱਖਰਾਂ ਦੇ ਸੈੱਟ ਨੂੰ ਘਟਾਉਂਦੇ ਹੋ ਤਾਂ ਲੰਬਾਈ ਨੂੰ ਵੱਧ ਰੱਖੋ।

ਯੂਨੀਕ ਆਈਡੈਂਟੀਫਾਇਰ (Unique Identifiers) ਆਧੁਨਿਕ ਸਾਫਟਵੇਅਰ ਆਰਕੀਟੈਕਚਰ, ਡੇਟਾਬੇਸ ਪ੍ਰਬੰਧਨ ਅਤੇ ਸੁਰੱਖਿਅਤ ਡੇਟਾ ਟ੍ਰਾਂਸਫਰ ਦੇ ਬੁਨਿਆਦੀ ਹਿੱਸੇ ਹਨ। ਵੱਖ-ਵੱਖ ਐਪਲੀਕੇਸ਼ਨਾਂ ਦੀਆਂ ਲੋੜਾਂ ਮੁਤਾਬਕ ਵੱਖ-ਵੱਖ ਫਾਰਮੈਟਾਂ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ ਰੈਂਡਮਨੈੱਸ, ਸਮਾਂ-ਆਧਾਰਿਤ ਕ੍ਰਮਬੱਧਤਾ, ਜਾਂ ਛੋਟਾ ਆਕਾਰ। ਇਹ ਜਨਰੇਟਰ ਟੂਲ ਤੁਹਾਨੂੰ ਮੁੱਖ ਫਾਰਮੈਟਾਂ—UUID v4, UUID v7, ULID, ਅਤੇ NanoID—ਵਿੱਚੋਂ ਚੋਣ ਕਰਨ ਅਤੇ ਲੋੜ ਅਨੁਸਾਰ ਆਈਡੈਂਟੀਫਾਇਰ ਤਿਆਰ ਕਰਨ ਦੀ ਸਹੂਲਤ ਦਿੰਦਾ ਹੈ।

ਆਈਡੈਂਟੀਫਾਇਰ ਫਾਰਮੈਟਾਂ ਦੀ ਬਣਤਰ ਅਤੇ ਅੰਤਰ

ਵੱਖ-ਵੱਖ ਫਾਰਮੈਟਾਂ ਦੀ ਬਣਤਰ ਅਤੇ ਉਹਨਾਂ ਦੇ ਕੰਮ ਕਰਨ ਦੇ ਤਰੀਕੇ ਵਿੱਚ ਮਹੱਤਵਪੂਰਨ ਅੰਤਰ ਹੁੰਦਾ ਹੈ, ਜੋ ਉਹਨਾਂ ਨੂੰ ਖਾਸ ਕੰਮਾਂ ਲਈ ਢੁਕਵਾਂ ਬਣਾਉਂਦਾ ਹੈ:

UUID v4

UUID v4 (Universally Unique Identifier version 4) ਪੂਰੀ ਤਰ੍ਹਾਂ ਰੈਂਡਮਨੈੱਸ 'ਤੇ ਆਧਾਰਿਤ ਹੁੰਦਾ ਹੈ। ਇਹ 36-ਅੱਖਰਾਂ ਦੇ ਫਾਰਮੈਟ (ਜਿਸ ਵਿੱਚ 32 ਹੈਕਸਾਡੈਸੀਮਲ ਅੱਖਰ ਅਤੇ 4 ਹਾਈਫਨ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ) ਵਿੱਚ 122 ਬਿੱਟਾਂ ਦੀ ਸ਼ੁੱਧ ਰੈਂਡਮਨੈੱਸ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਕੋਈ ਕ੍ਰਮਬੱਧਤਾ ਨਹੀਂ ਹੁੰਦੀ, ਜਿਸ ਕਾਰਨ ਇਸਦਾ ਅੰਦਾਜ਼ਾ ਲਗਾਉਣਾ ਅਸੰਭਵ ਹੁੰਦਾ ਹੈ।

UUID v7

UUID v7 ਇੱਕ ਨਵਾਂ ਫਾਰਮੈਟ ਹੈ ਜੋ UUID v4 ਵਾਂਗ ਹੀ 36-ਅੱਖਰਾਂ ਦੀ ਸ਼ਕਲ ਨੂੰ ਬਣਾਈ ਰੱਖਦਾ ਹੈ, ਪਰ ਇਸਦੀ ਸ਼ੁਰੂਆਤ ਇੱਕ ਮਿਲੀਸਕਿੰਟ ਟਾਈਮਸਟੈਂਪ (millisecond timestamp) ਨਾਲ ਹੁੰਦੀ ਹੈ। ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਇਹ ਆਈਡੀ ਬਣਾਉਣ ਦੇ ਸਮੇਂ ਦੇ ਹਿਸਾਬ ਨਾਲ ਲਗਭਗ ਕ੍ਰਮਬੱਧ (sortable) ਹੁੰਦੇ ਹਨ। ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ ਡੇਟਾਬੇਸ ਇੰਡੈਕਸ ਲੋਕੈਲਿਟੀ (database index locality) ਲਈ ਬਹੁਤ ਫਾਇਦੇਮੰਦ ਹੈ।

ULID

ULID (Universally Unique Lexicographically Sortable Identifier) ਵੀ ਸਮਾਂ-ਕ੍ਰਮਬੱਧ ਹੁੰਦਾ ਹੈ। ਇਹ 26-ਅੱਖਰਾਂ ਦੀ ਇੱਕ ਕੇਸ-ਇਨਸੈਂਸਟਿਵ (case-insensitive) ਸਟ੍ਰਿੰਗ ਹੁੰਦੀ ਹੈ ਜੋ ਟਾਈਮਸਟੈਂਪ ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ। ਇਹ UUID v7 ਵਾਂਗ ਹੀ ਕੰਮ ਕਰਦਾ ਹੈ ਪਰ ਇੱਕ ਵੱਖਰੇ ਅਤੇ ਛੋਟੇ ਟੈਕਸਟ ਰੂਪ ਵਿੱਚ ਪੇਸ਼ ਹੁੰਦਾ ਹੈ।

NanoID

NanoID ਇੱਕ ਸੰਖੇਪ ਅਤੇ ਪੂਰੀ ਤਰ੍ਹਾਂ ਅਨੁਕੂਲਿਤ (customizable) ਆਈਡੈਂਟੀਫਾਇਰ ਹੈ। ਇਸ ਵਿੱਚ ਕੋਈ ਸਮਾਂ-ਆਧਾਰਿਤ ਕ੍ਰਮ ਨਹੀਂ ਹੁੰਦਾ। ਇਸਦੀ ਡਿਫੌਲਟ ਲੰਬਾਈ 21 ਅੱਖਰ ਹੁੰਦੀ ਹੈ, ਪਰ ਉਪਭੋਗਤਾ ਆਪਣੀ ਲੋੜ ਅਨੁਸਾਰ ਇਸਦੀ ਲੰਬਾਈ ਅਤੇ ਵਰਣਮਾਲਾ (characters set) ਨੂੰ ਬਦਲ ਸਕਦੇ ਹਨ।


ਟੂਲ ਦੇ ਇਨਪੁਟ ਵਿਕਲਪ ਅਤੇ ਨਿਯਮ

ਇਸ ਜਨਰੇਟਰ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਫਾਰਮੈਟਾਂ ਨੂੰ ਤਿਆਰ ਕਰਨ ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰਨ ਲਈ ਹੇਠ ਲਿਖੇ ਵਿਕਲਪ ਦਿੱਤੇ ਗਏ ਹਨ:

  • ਫਾਰਮੈਟ: ਤੁਸੀਂ UUID v4, UUID v7, ULID, ਜਾਂ NanoID ਵਿੱਚੋਂ ਕੋਈ ਵੀ ਇੱਕ ਫਾਰਮੈਟ ਚੁਣ ਸਕਦੇ ਹੋ।
  • ਗਿਣਤੀ: ਤੁਸੀਂ ਇੱਕ ਵਾਰ ਵਿੱਚ 1 ਤੋਂ ਲੈ ਕੇ 100 ਤੱਕ ਆਈਡੀ ਤਿਆਰ ਕਰ ਸਕਦੇ ਹੋ।
  • ਵੱਡੇ ਅੱਖਰ (Uppercase): UUIDs (v4 ਅਤੇ v7) ਲਈ ਇੱਕ ਟੌਗਲ ਬਟਨ ਹੈ, ਜਿਸ ਨਾਲ ਤੁਸੀਂ ਆਉਟਪੁੱਟ ਨੂੰ ਵੱਡੇ ਅੱਖਰਾਂ ਵਿੱਚ ਦਿਖਾ ਸਕਦੇ ਹੋ।
  • ਹਾਈਫਨ ਸ਼ਾਮਲ ਕਰੋ: UUIDs ਵਿੱਚ ਹਾਈਫਨ (-) ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਜਾਂ ਹਟਾਉਣ ਲਈ ਇੱਕ ਟੌਗਲ ਵਿਕਲਪ ਉਪਲਬਧ ਹੈ।
  • ਲੰਬਾਈ: NanoID ਲਈ ਇੱਕ ਸਲਾਈਡਰ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਜਿਸ ਰਾਹੀਂ ਆਈਡੀ ਦੀ ਲੰਬਾਈ ਨੂੰ 2 ਤੋਂ 36 ਅੱਖਰਾਂ ਦੇ ਵਿਚਕਾਰ ਸੈੱਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ (ਡਿਫੌਲਟ ਲੰਬਾਈ 21 ਹੈ)।
  • ਵਰਣਮਾਲਾ (Alphabet): NanoID ਲਈ ਇੱਕ ਸੰਪਾਦਨਯੋਗ ਟੈਕਸਟ ਫੀਲਡ ਹੈ, ਜਿੱਥੇ ਤੁਸੀਂ ਉਹ ਅੱਖਰ ਲਿਖ ਸਕਦੇ ਹੋ ਜਿਨ੍ਹਾਂ ਨਾਲ ਆਈਡੀ ਤਿਆਰ ਕੀਤੀ ਜਾਵੇਗੀ।

ਮਹੱਤਵਪੂਰਨ ਨਿਯਮ ਅਤੇ ਸੀਮਾਵਾਂ:

  1. ਵਰਣਮਾਲਾ ਦੀ ਸੀਮਾ: NanoID ਦੀ ਵਰਣਮਾਲਾ ਵਿੱਚ ਘੱਟੋ-ਘੱਟ 2 ਵੱਖ-ਵੱਖ ਅੱਖਰ ਹੋਣੇ ਲਾਜ਼ਮੀ ਹਨ। ਜੇਕਰ ਵਰਣਮਾਲਾ ਨੂੰ ਘਟਾ ਕੇ ਇੱਕ ਅੱਖਰ ਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਨਤੀਜੇ ਸਾਫ਼ ਹੋ ਜਾਂਦੇ ਹਨ, ਆਈਡੀ ਦੀ ਗਿਣਤੀ 0 ਹੋ ਜਾਂਦੀ ਹੈ, "ਸਭ ਕਾਪੀ ਕਰੋ" ਬਟਨ ਅਯੋਗ ਹੋ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਸਕ੍ਰੀਨ 'ਤੇ ਤਰੁੱਟੀ ਸੁਨੇਹਾ ਵਰਣਮਾਲਾ ਵਿੱਚ ਘੱਟੋ-ਘੱਟ 2 ਵੱਖ-ਵੱਖ ਅੱਖਰ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ। ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ।
  2. ਤੁਰੰਤ ਅੱਪਡੇਟ: ਟੂਲ ਵਿੱਚ ਕਿਸੇ ਵੀ ਵਿਕਲਪ ਨੂੰ ਬਦਲਣ ਨਾਲ ਆਈਡੀ ਆਪਣੇ ਆਪ ਦੁਬਾਰਾ ਤਿਆਰ (regenerate) ਹੋ ਜਾਂਦੀਆਂ ਹਨ।
  3. ਸਮਾਂ-ਕ੍ਰਮਬੱਧਤਾ ਦੀ ਸੀਮਾ: UUID v7 ਅਤੇ ULID ਬਣਾਉਣ ਦੇ ਸਮੇਂ ਅਨੁਸਾਰ ਕ੍ਰਮਬੱਧ ਹੁੰਦੇ ਹਨ, ਪਰ ਇੱਕੋ ਮਿਲੀਸਕਿੰਟ ਦੇ ਅੰਦਰ ਤਿਆਰ ਕੀਤੇ ਗਏ ਆਈਡੀ ਲਈ ਸਖ਼ਤ ਕ੍ਰਮਬੱਧਤਾ (strict ordering) ਦੀ ਗਾਰੰਟੀ ਨਹੀਂ ਹੁੰਦੀ।

ਸਥਾਨਕ ਪ੍ਰੋਸੈਸਿੰਗ ਅਤੇ ਨਿੱਜਤਾ

ਇਸ ਟੂਲ ਵਿੱਚ ਸੁਰੱਖਿਆ ਅਤੇ ਨਿੱਜਤਾ ਦਾ ਪੂਰਾ ਧਿਆਨ ਰੱਖਿਆ ਗਿਆ ਹੈ:

  • ਤੁਹਾਡੇ ਆਈਡੀ ਮਜ਼ਬੂਤ ਬ੍ਰਾਊਜ਼ਰ ਰੈਂਡਮਨੈੱਸ ਨਾਲ ਸਥਾਨਕ ਤੌਰ 'ਤੇ ਤਿਆਰ ਕੀਤੇ ਜਾਂਦੇ ਹਨ।
  • ਪ੍ਰੋਸੈਸਿੰਗ ਪੂਰੀ ਤਰ੍ਹਾਂ ਤੁਹਾਡੇ ਆਪਣੇ ਵੈੱਬ ਬ੍ਰਾਊਜ਼ਰ ਦੇ ਅੰਦਰ ਹੁੰਦੀ ਹੈ।
  • BroBroGo ਨੂੰ ਕੋਈ ਵੀ ਡੇਟਾ ਜਾਂ ਤਿਆਰ ਕੀਤੇ ਗਏ ਆਈਡੀ ਨਹੀਂ ਭੇਜੇ ਜਾਂਦੇ।

ਆਈਡੈਂਟੀਫਾਇਰ ਦੀ ਚੋਣ: ਟ੍ਰੇਡ-ਆਫ ਅਤੇ ਵਰਤੋਂ

ਸਹੀ ਆਈਡੈਂਟੀਫਾਇਰ ਦੀ ਚੋਣ ਕਰਦੇ ਸਮੇਂ ਲੰਬਾਈ, ਅੱਖਰਾਂ ਦੇ ਸਮੂਹ ਅਤੇ ਟਕਰਾਅ ਪ੍ਰਤੀਰੋਧ (collision resistance) ਦੇ ਵਿਚਕਾਰ ਸੰਤੁਲਨ ਬਣਾਉਣਾ ਜ਼ਰੂਰੀ ਹੁੰਦਾ ਹੈ:

ਫਾਰਮੈਟ ਲੰਬਾਈ (ਅੱਖਰ) ਸਮਾਂ-ਕ੍ਰਮਬੱਧਤਾ (Time-Sortable) ਮੁੱਖ ਵਿਸ਼ੇਸ਼ਤਾ / ਵਰਤੋਂ
UUID v4 36 ਅੱਖਰ ਨਹੀਂ 122 ਬਿੱਟ ਦੀ ਸ਼ੁੱਧ ਰੈਂਡਮਨੈੱਸ, ਅੰਦਾਜ਼ਾ ਲਗਾਉਣਾ ਅਸੰਭਵ
UUID v7 36 ਅੱਖਰ ਹਾਂ (ਮਿਲੀਸਕਿੰਟ) ਡਾਟਾਬੇਸ ਪ੍ਰਾਇਮਰੀ ਕੁੰਜੀਆਂ (primary keys) ਲਈ ਵਧੀਆ
ULID 26 ਅੱਖਰ ਹਾਂ (ਮਿਲੀਸਕਿੰਟ) ਕੇਸ-ਇਨਸੈਂਸਟਿਵ, ਛੋਟਾ ਟੈਕਸਟ ਰੂਪ
NanoID 2 ਤੋਂ 36 (ਡਿਫੌਲਟ 21) ਨਹੀਂ ਪੂਰੀ ਤਰ੍ਹਾਂ ਅਨੁਕੂਲਿਤ ਲੰਬਾਈ ਅਤੇ ਅੱਖਰ ਸਮੂਹ

ਜੇਕਰ ਤੁਸੀਂ NanoID ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਅੱਖਰਾਂ ਦੇ ਸੈੱਟ ਨੂੰ ਛੋਟਾ ਕਰਦੇ ਹੋ ਜਾਂ ਲੰਬਾਈ ਘਟਾਉਂਦੇ ਹੋ, ਤਾਂ ਟਕਰਾਅ ਪ੍ਰਤੀਰੋਧ (ਦੋ ਇੱਕੋ ਜਿਹੇ ਆਈਡੀ ਬਣਨ ਦੀ ਸੰਭਾਵਨਾ) ਘੱਟ ਜਾਂਦਾ ਹੈ। ਇਸ ਲਈ, ਜੇਕਰ ਤੁਸੀਂ ਅੱਖਰਾਂ ਦੀ ਗਿਣਤੀ ਘਟਾਉਂਦੇ ਹੋ, ਤਾਂ ਸੁਰੱਖਿਆ ਬਣਾਈ ਰੱਖਣ ਲਈ ਆਈਡੀ ਦੀ ਲੰਬਾਈ ਨੂੰ ਵਧਾਉਣਾ ਚਾਹੀਦਾ ਹੈ।


ਅਕਸਰ ਪੁੱਛੇ ਜਾਣ ਵਾਲੇ ਸਵਾਲ (FAQ)

UUID v4, UUID v7, ULID, ਅਤੇ NanoID ਵਿੱਚ ਕੀ ਅੰਤਰ ਹੈ?
UUID v4 ਜਾਣੇ-ਪਛਾਣੇ 36-ਅੱਖਰਾਂ ਦੇ ਫਾਰਮੈਟ ਵਿੱਚ 122 ਬਿੱਟਾਂ ਦੀ ਸ਼ੁੱਧ ਰੈਂਡਮਨੈੱਸ ਹੈ, ਪਰ ਇਸਦਾ ਰੈਂਡਮ ਕ੍ਰਮ ਡੇਟਾਬੇਸ ਇੰਡੈਕਸ ਲੋਕੈਲਿਟੀ ਲਈ ਠੀਕ ਨਹੀਂ ਹੁੰਦਾ। UUID v7 ਉਸੇ ਸ਼ਕਲ ਨੂੰ ਬਣਾਈ ਰੱਖਦਾ ਹੈ ਜਦੋਂ ਕਿ ਇੱਕ ਮਿਲੀਸਕਿੰਟ ਟਾਈਮਸਟੈਂਪ ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਜੋ ID ਲਗਭਗ ਬਣਾਉਣ ਦੇ ਸਮੇਂ ਅਨੁਸਾਰ ਕ੍ਰਮਬੱਧ ਹੋ ਸਕਣ — ਜੋ ਕਿ ਪ੍ਰਾਇਮਰੀ ਕੀਅਜ਼ (primary keys) ਲਈ ਬਹੁਤ ਉਪਯੋਗੀ ਹੈ। ULID ਇੱਕ ਛੋਟੀ, ਕੇਸ-ਇਨਸੈਂਸਟਿਵ 26-ਅੱਖਰਾਂ ਦੀ ਸਟ੍ਰਿੰਗ ਵਿੱਚ ਇਹੀ ਕੰਮ ਕਰਦਾ ਹੈ। NanoID ਇੱਕ ਬਹੁਤ ਛੋਟੀ, ਪੂਰੀ ਤਰ੍ਹਾਂ ਅਨੁਕੂਲਿਤ (customizable) ID ਲਈ ਕ੍ਰਮਬੱਧਤਾ ਨੂੰ ਛੱਡ ਦਿੰਦਾ ਹੈ — ਤੁਸੀਂ ਲੰਬਾਈ ਅਤੇ ਅੱਖਰਾਂ ਦਾ ਸੈੱਟ ਖੁਦ ਚੁਣ ਸਕਦੇ ਹੋ।

ਕੀ ਇਹ ID ਇੰਨੇ ਰੈਂਡਮ ਹਨ ਕਿ ਇਹਨਾਂ ਦਾ ਅੰਦਾਜ਼ਾ ਨਹੀਂ ਲਗਾਇਆ ਜਾ ਸਕਦਾ?
ਹਾਂ — ਹਰੇਕ ID ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਤੌਰ 'ਤੇ ਮਜ਼ਬੂਤ ਬ੍ਰਾਊਜ਼ਰ ਰੈਂਡਮਨੈੱਸ ਨਾਲ ਤਿਆਰ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਨਾ ਕਿ ਕਿਸੇ ਅਨੁਮਾਨਿਤ ਸਰੋਤ ਤੋਂ। UUID v4 ਅਤੇ NanoID ਦੀ ਡਿਫੌਲਟ ਵਰਣਮਾਲਾ ਵਿੱਚ 100 ਬਿੱਟਾਂ ਤੋਂ ਵੱਧ ਦੀ ਰੈਂਡਮਨੈੱਸ ਹੁੰਦੀ ਹੈ। UUID v7 ਅਤੇ ULID ਇੱਕ ਸ਼ੁਰੂਆਤੀ ਟਾਈਮਸਟੈਂਪ ਲਈ ਉਹਨਾਂ ਬਿੱਟਾਂ ਵਿੱਚੋਂ ਲਗਭਗ 48 ਬਿੱਟਾਂ ਦਾ ਤਿਆਗ ਕਰਦੇ ਹਨ, ਇਸ ਲਈ ਟਾਈਮਸਟੈਂਪ-ਪ੍ਰੀਫਿਕਸਡ ਫਾਰਮੈਟਾਂ ਨੂੰ ਗੁਪਤ ਕੋਡਾਂ ਦੀ ਬਜਾਏ ਕ੍ਰਮਬੱਧ ਕਰਨ ਯੋਗ ID ਵਜੋਂ ਦੇਖੋ।

ਕੀ ਮੈਂ NanoID ਦੀ ਲੰਬਾਈ ਅਤੇ ਅੱਖਰਾਂ ਦੇ ਸੈੱਟ ਨੂੰ ਬਦਲ ਸਕਦਾ ਹਾਂ?
ਹਾਂ — NanoID 'ਤੇ ਸਵਿਚ ਕਰੋ ਅਤੇ ਇਹ ਟੂਲ ਇੱਕ ਲੰਬਾਈ ਸਲਾਈਡਰ (ਡਿਫੌਲਟ ਰੂਪ ਵਿੱਚ 21 ਅੱਖਰ, ਲਾਇਬ੍ਰੇਰੀ ਨਾਲ ਮੇਲ ਖਾਂਦਾ) ਦੇ ਨਾਲ ਇੱਕ ਸੰਪਾਦਨਯੋਗ ਵਰਣਮਾਲਾ ਖੇਤਰ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਲੰਬਾਈ ਨੂੰ ਘਟਾਉਣ ਜਾਂ ਵਰਣਮਾਲਾ ਨੂੰ ਸੀਮਤ ਕਰਨ ਨਾਲ ਟਕਰਾਅ ਪ੍ਰਤੀਰੋਧ (collision resistance) ਘੱਟ ਜਾਂਦਾ ਹੈ, ਇਸ ਲਈ ਜੇਕਰ ਤੁਸੀਂ ਅੱਖਰਾਂ ਦੇ ਸੈੱਟ ਨੂੰ ਘਟਾਉਂਦੇ ਹੋ ਤਾਂ ਲੰਬਾਈ ਨੂੰ ਵੱਧ ਰੱਖੋ।

ਕੀ ਮੇਰਾ ਡੇਟਾ ਜਾਂ ਤਿਆਰ ਕੀਤੇ ਆਈਡੀ ਕਿਸੇ ਸਰਵਰ 'ਤੇ ਸਟੋਰ ਹੁੰਦੇ ਹਨ?
ਨਹੀਂ, ਤੁਹਾਡੇ ਆਈਡੀ ਮਜ਼ਬੂਤ ਬ੍ਰਾਊਜ਼ਰ ਰੈਂਡਮਨੈੱਸ ਨਾਲ ਸਥਾਨਕ ਤੌਰ 'ਤੇ ਤਿਆਰ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। BroBroGo ਨੂੰ ਕੁਝ ਵੀ ਨਹੀਂ ਭੇਜਿਆ ਜਾਂਦਾ, ਜਿਸ ਕਾਰਨ ਤੁਹਾਡੀ ਪ੍ਰਕਿਰਿਆ ਪੂਰੀ ਤਰ੍ਹਾਂ ਨਿੱਜੀ ਰਹਿੰਦੀ ਹੈ।