2014-03-13 21 views
-1

我想使用某種加密技術和其他弄虛作假的分散計數它會是可以統計已經發生多少次。OCCURENCES

例如假設有一個方法來識別每個計算機和我的軟件試圖指望有多少人用每個它,因爲它使用互聯網其它連接使用它。

讓我們說我的軟件在計算機中的,然後等下載...

像A> B> C ......現在一個位於C需要以某種方式知道,有三個獨特的電腦使用它。

和A> B> d需要知道它也有三臺電腦。

但是,如果A> B> C> E和A> B> d>電子立即註冊E需要知道有5臺獨特的計算機。

現在我可以製作一個系統,其中一個基於某事(現在會是什麼)的獨特ID將以計算機的形式存儲在計算機中,然後軟件將其與該計算機一起攜帶,並在連接時與其他人共享,然後檢查如果在數組列表中有新計算機,那麼所有其他人都知道所有其他人都有足夠的連接。

然而,從我從Bitcoin和密碼學學我有一種感覺,必須有存放長串一百萬次(如果碰巧噸計算機)之外的另一個途徑。

+0

長串?你想讓每臺計算機知道*有多少臺計算機運行了代碼,或者哪些計算機已經運行了代碼? – Beta

+0

多少,但不會意味着他們必須知道哪些有,因爲根據D和C,總共有3 + 3 = 6個電腦..但是一旦你比較和消除重複,它實際上是4。 guidOfCompX + nOtherCompsss加入一些加密魔術..會導致一些事情,將來會告訴我,這個字符串不包含像30個guid,它們已經屬於您的字符串中的guid ... –

+0

爲什麼不用一臺*一臺帶有列表的計算機,它將一個數字分配給所有其餘的? – Beta

回答

0

您是否試圖統計有多少人曾經使用該程序?或者有多少人正在使用該程序?或者有多少人在現在之前的一段時間內使用過該程序?

如果您的計數包括不能保證可訪問的計算機(例如,如果計算曾經使用該程序的獨特計算機,或者一段時間後使用它,但現在不一定在線),那麼您將需要不可避免的官方積累清單的一些集中存儲庫。每臺計算機都需要與該集中式列表進行通信,併爲計算機傳遞一些唯一標識符。如果您想從時間T開始知道計算機,則還需要跟蹤連接的時間信息。

如果您只想要當前正在使用它的計算機(相互可訪問)的數量,則可能每個計算機在其想要形成當前計數的時間點動態詢問其他計算機。但即使如此,你需要一些集中式的約定來表達他們如何接觸溝通。從概念上講,它們每個都動態地加入一個「集合」,然後再離開它。即使這個「集合」並不總是位於一個固定的單個位置,但仍然需要在概念上是一個官方的「集合」,並且每個實例需要能夠與「集合」連接以加入它並且稍後離開它。這意味着一個標準化的聯繫點和聯繫方式。

所以我懷疑你可能真的要在你希望的方式可能不是完全可能的。也就是說,如果您仍然想進一步思考,您可能想了解更多關於點對點軟件(如BitTorrent等)的信息。

+0

我想說它已安裝了多少臺獨特的計算機。我想知道是否可以做分散的計數。 –