2017-04-03 115 views
1

我正在爲ad-hoc網絡中的對等對話開發應用程序。當對方想要與其他對等方通信時,它使用其IP地址進行連接。 一旦Ad-hoc網絡中的設備相互連接,IP地址就會分配給它們中的每一個,但我需要一個較小的字符串(4-6個字符)作爲特定於每個設備的唯一ID網絡。由於這是一個點對點網絡,因此沒有服務器(它可以生成唯一的ID),因此每個對等點本身都有責任生成唯一的ID。我正在尋找一種機制或算法來在java中生成唯一的ID。如何在對等Ad hoc網絡中爲每個設備創建唯一ID

+0

這是編程語言 – 134

+1

只需要一個想法或機制來做到這一點。 –

+1

@ 134你有解決這個問題的辦法嗎? –

回答

0

使用用於產生隨機數的代碼如下用6個字符

private static SecureRandom random = new SecureRandom(); 

public static String getUniqueId() { 
    return new BigInteger(130, random).toString(32).substring(0, 6); 
} 
1

這是通過使用每個設備的接口特定的MAC地址的可能是最好的解決。在標準實施中,MAC地址對於每個網絡接口都是唯一的,因此每個設備都有唯一的編號。您可以直接使用此地址或作爲種子值創建派生ID。