TWI743563B - 用於投票的系統、方法和裝置 - Google Patents

用於投票的系統、方法和裝置 Download PDF

Info

Publication number
TWI743563B
TWI743563B TW108133231A TW108133231A TWI743563B TW I743563 B TWI743563 B TW I743563B TW 108133231 A TW108133231 A TW 108133231A TW 108133231 A TW108133231 A TW 108133231A TW I743563 B TWI743563 B TW I743563B
Authority
TW
Taiwan
Prior art keywords
voting
data
client device
server
user
Prior art date
Application number
TW108133231A
Other languages
English (en)
Other versions
TW202040379A (zh
Inventor
黃慧
張振宇
劉正
應鵬飛
Original Assignee
開曼群島商創新先進技術有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 開曼群島商創新先進技術有限公司 filed Critical 開曼群島商創新先進技術有限公司
Publication of TW202040379A publication Critical patent/TW202040379A/zh
Application granted granted Critical
Publication of TWI743563B publication Critical patent/TWI743563B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本說明書的實施例公開了一種用於投票的系統,所述系統包括至少一個客戶端設備、多個中間伺服器、一個或多個重構伺服器和,每個客戶端設備向使用者呈現投票選項,接收使用者對投票選項的選擇並產生投票資料,使用秘密分享演算法將投票資料轉換為多個資料分片,以及將多個資料分片傳送到多個中間伺服器,其中秘密分享演算法使得無法從小於臨界值數量的資料分片重構投票資料。重構伺服器從多個中間伺服器獲得大於等於臨界值數量的資料分片並使用資料分片來重構投票資料。匯總伺服器接收來自一個或多個重構伺服器的經重構的投票資料並對其進行匯總以產生匯總結果,並將匯總結果傳送給相應的客戶端設備以供顯示。本說明書實施例還公開了用於投票的方法和裝置。

Description

用於投票的系統、方法和裝置
本說明書的實施例涉及投票,尤其涉及用於投票的系統、方法和裝置。
目前,基於計算設備的電子投票(或調查研究,以下統稱“投票”)已經越來越普及。在電子投票中,使用者透過計算設備輸入投票資料或調查研究資料,所述投票資料被傳送至伺服器以供統計或匯總以產生投票結果。 然而,目前的電子投票系統有可能暴露使用者的隱私,比如使用者的投票選擇。一些現有系統已經使用匿名投票機制,但惡意使用者透過存取cookie資料、使用者特徵挖掘等方式,仍然有可能獲知使用者隱私。此外,惡意使用者還可能截獲並竄改或偽造使用者投票。 因此,需要能夠增加使用者投票的私密性和可信度的投票系統、方法和裝置。
為了進一步增加使用者投票的私密性和可信度,本說明書的實施例提供了改進的投票系統、方法和裝置。 本說明書的實施例透過以下技術方案來實現其上述目的。 在一個方面中,公開了一種用於投票的系統,所述系統包括:至少一個客戶端設備、多個中間伺服器、一個或多個重構伺服器以及匯總伺服器,其中每個客戶端設備:向使用者呈現投票選項,接收所述使用者對投票選項的選擇並產生投票資料,使用秘密分享演算法將所述投票資料轉換為多個資料分片,其中所述秘密分享演算法使得無法從小於臨界值數量的資料分片重構所述投票資料,以及將所述多個資料分片傳送到多個中間伺服器;所述多個中間伺服器從所述至少一個客戶端設備接收資料分片,其中大於等於所述臨界值數量的資料分片被用來重構所述投票資料;所述一個或多個重構伺服器,其中所述重構伺服器從所述多個中間伺服器獲得大於等於臨界值數量的資料分片並使用所述資料分片來重構所述投票資料;並且所述匯總伺服器接收來自所述一個或多個重構伺服器的經重構的投票資料並對其進行匯總以產生匯總結果,並將所述匯總結果傳送給相應的客戶端設備以供顯示。 較佳地,顯示所述匯總結果包括顯示多個使用者的投票資料的統計平均值。 較佳地,顯示所述匯總結果包括顯示所述使用者的投票資料與多個使用者的投票資料的統計平均值的關係。 較佳地,所述秘密分享演算法是Shamir臨界值秘密分享演算法。 較佳地,所述重構伺服器中的一個或多個由所述中間伺服器擔當。 較佳地,所述匯總伺服器由所述中間伺服器或所述重構伺服器中的一個或多個擔當。 較佳地,每個資料分片僅被傳送至一個中間伺服器。 在另一個方面中,公開了一種用於投票的方法,包括:透過客戶端設備向使用者呈現投票選項;透過客戶端設備接收使用者對投票選項的選擇以產生投票資料;透過客戶端設備使用秘密分享演算法將所述投票資料轉換為多個資料分片,其中所述秘密分享演算法使得無法從小於臨界值數量的資料分片重構所述投票資料;以及透過客戶端設備將所述多個資料分片傳送到多個中間伺服器,其中大於等於所述臨界值數量的資料分片被用於重構所述投票資料,其中來自多個客戶端設備的經重構的投票資料將被匯總以產生匯總結果;以及透過所述客戶端設備接收並顯示所述匯總結果。 在又一個方面中,還公開了一種裝置,該裝置包括儲存器;通訊介面;和處理器,與所述儲存器和通訊介面通訊地連接,所述處理器操作以實現本文所述的各實施例的方法。 在再一個方面中,還公開一種包括儲存於其上的電腦可執行指令的電腦可讀儲存媒體,所述電腦可執行指令在被處理器執行時使得所述處理器執行本文所述的各實施例的方法。 與現有技術相比,本說明書的實施例可具有如下有益效果: 在本說明書的一些實施例中,由於需要臨界值數量的資料分片才能重構投票資料,所以即便一個或多個客戶端設備或中間傳輸過程受到破壞,惡意使用者仍然無法重構投票資料,從而更好地保護了使用者的隱私。重構投票資料所需的臨界值資料可按需設置,諸如根據所需要的保護等級來設置,由此使得隱私保護更具靈活性。 在本說明書的一些實施例中,秘密分享演算法的特性使得惡意使用者很難竄改或偽造使用者投票,從而提升了投票的可信度。 當然,實施本申請的任一技術方案無需同時達到所有上述技術效果。
以下在具體實施方式中詳細敘述本說明書的實施例的詳細特徵以及優點,其內容足以使任何本領域技術人員瞭解本說明書的實施例的技術內容並據以實施,且根據本說明書所揭露的說明書、請求項及圖式,本領域技術人員可輕易地理解本說明書的實施例相關的目的及優點。 為了提升投票的私密性以及可信度,本說明書的一些實施例提供了改進的投票方法、系統和電腦可讀媒體。本說明書的方案將秘密分享應用於投票,從而大幅降低了進行投票的使用者的隱私被洩露或投票資料被竄改/偽造的可能性。 下面,首先將對“秘密分享”進行簡單介紹。然後參考圖式,分別介紹本說明書所提出的投票系統及其組成部分,從客戶端設備視角的本說明書的用於投票的方法,從中間伺服器視角的本說明書的用於投票的方法,以及可用於實現本說明書的方法的計算設備。最後,將簡要說明本說明書所提供的突出的技術效果。 秘密分享 秘密分享(“secret sharing”,又稱為秘密分割或秘密共享)是一種由莊家(dealer)將秘密(secret)拆分為多個份額(share)在一組參與者(又稱為“份額持有者(shareholder)”)中分發的機制。通常,透過秘密分享演算法,僅當大於等於臨界值數量的份額被組合使用時才能重構秘密;單個份額或者小於臨界值數量的份額則無法被用來重構秘密或關於秘密的資訊。 一種典型的秘密分享演算法是“Shamir秘密分享演算法”,這種演算法通常採用(p, t)臨界值方案。具體而言,秘密被“拆分”為p個份額,僅當至少t(即臨界值)個份額被組合使用時才能夠重構秘密(其中p和t均為正整數,且p≥t,通常p>t)。秘密分享演算法的具體細節是本領域技術人員已知的,在下文中將不對其進行詳細描述。 用於投票的系統 參見圖式1,其中示出了根據本說明書的實施例的用於投票的系統100的示意圖,其示出了一個客戶端設備的情形。如圖1所示,假設系統100包括客戶端設備102和多個(例如p個)中間伺服器104-1到104-p。 在實施例中,客戶端設備102可充當投票終端,以便接收來自使用者的投票資料。在一些實施例中,在客戶端設備102上可安裝投票應用,該投票應用向客戶呈現投票選項,以供客戶從中選擇。例如,該投票應用可以是瀏覽器或專用投票應用。 使用者可透過投票應用進行投票。較佳地,該投票可以是匿名投票。也就是說,投票資料中不包括任何使用者標識資訊。 替代地,該投票可以是非匿名投票,在此情況下,投票資料中可包括使用者標識資訊,例如使用者ID、身分證號等等。例如,在一些情況下,使用者可能需要註冊並登錄來進行投票,此時客戶端設備可獲得使用者的標識資訊(例如使用者的身分、使用者名等)。在一些情況下,可將使用者標識資訊包括在投票資料中,以供隨後使用。 需要指出的是,本申請中所述的投票可包括,其中可向使用者提供多個選項,使用者可從所述多個選項中選擇一個或多個投票選項。 例如,在一個投票示例中,使用者可投票選擇聚餐時間。此時,客戶端設備102可向使用者呈現多個聚餐時間作為投票選項以供使用者從中選擇。使用者可從所述投票選項中選擇一個或多個投票選項。此時,客戶端設備102可透過投票應用來接收使用者對投票選項的選擇並產生投票資料。 在另一投票示例中,使用者可就多個問題進行投票,例如使用者可投票選擇聚餐時間和聚餐地點。此時,客戶端設備102可在第一個投票問題中向使用者呈現多個聚餐時間作為投票選項以供使用者從中選擇,並在第二個投票問題中向使用者呈現多個聚餐地點作為投票選項以供使用者從中選擇。使用者可針對這兩個投票問題從所述投票選項中選擇一個或多個投票選項。同樣地,客戶端設備102可透過投票應用來接收使用者對投票選項的選擇並產生投票資料。 顯然,可存在多種其它投票或調查研究形式。例如,客戶端設備102可向使用者呈現開放式問題,且使用者可輸入對這些問題的回答(例如數字輸入或文本輸入)。客戶端設備102可基於使用者的回答產生投票資料。 所述投票還可採用更不傳統的形式。例如,在社交網站上的點讚、喜歡或者推薦等也可被視為一種投票。例如,使用者可能在社交網站服務上點擊其它使用者的帖子下面的向上的大拇指圖標,從而表達對該帖子的贊成,這可被視為等同於對該帖子的內容的贊成票;而點擊向下的大拇指圖標可被視為對該帖子的內容的反對票。類似地,點擊帖子下面的愛心圖標可被視為使用者對該帖子的內容投贊成票,而不點擊愛心圖標可被視為使用者對該帖子的內容投棄權票或反對票。可構想多種類似的投票方式。 客戶端設備102在接收到來自使用者的投票資料之後,可以採用秘密分享演算法來對投票資料進行處理,以將所述投票資料轉換為多個資料分片,所述秘密分享演算法使得無法從小於臨界值數量的資料分片重構所述投票資料。例如,客戶端設備102可充當秘密分享演算法中的莊家,投票資料可充當秘密,而資料分片則可充當份額,如上面所介紹的。 在本說明書的實施例中,可採用各種秘密分享演算法。較佳地,可採用Shamir臨界值秘密分享演算法。在以下描述中將以Shamir秘密分享演算法為例來描述本說明書的實施例,但應理解,本說明書不限於此。 較佳地,客戶端設備102可將所述多個資料分片傳送到多個中間伺服器。例如,較佳地,投票資料被轉換為p個資料分片,且所述p個資料分片被傳送到p個中間伺服器104-1到104-p,從而每個資料分片被傳送到一個中間伺服器,如圖1中所示。此時,少於臨界值數量(例如t個)中間伺服器無法重構投票資料。 在另一些實施例中,資料分片和中間伺服器可不存在一一對應關係。例如,多個不同的資料分片可被傳送到同一中間伺服器。又例如,一個資料分片可被傳送到多個中間伺服器。通常,無論採用何種傳送方式,較佳地所述傳送方式使得小於一定數量(例如第二臨界值數量)的中間伺服器無法重構投票資料,從而保證在少於一定數量的中間伺服器的資料被洩露的情況下,投票資料仍舊無法被重構,從而保護了客戶的隱私。 較佳地,客戶端設備在傳送所述資料分片之前,可對所述資料分片進行加密,以得到經加密的資料分片。所述加密可採用各種加密演算法進行。對資料分片進行加密能夠進一步保護使用者的隱私。 較佳地,當所述資料分片被客戶端設備加密時,中間伺服器(或者下面提及的重構伺服器)可對經加密的資料分片進行解密,以得到經解密的資料分片。 在資料分片被中間伺服器接收之後,大於等於臨界值數量的資料分片可被用於重構投票資料。 對投票資料的重構可採用各種方式進行。 在一些實施例中,如圖2所示,系統100可包括獨立的重構伺服器106,所述重構伺服器106可以不同於中間伺服器104-1到104-p。在此情況下,多個中間伺服器(例如中間伺服器104-1到104-t)可向所述重構伺服器傳送資料分片。當重構伺服器106接收到大於等於臨界值數量的資料分片時,重構伺服器106就能夠使用該大於等於臨界值數量的資料分片來重構投票資料。 在另一些實施例中,系統100可不包括獨立的重構伺服器106,而是所述多個中間伺服器中的一個或多個可擔當重構伺服器。例如,中間伺服器104-1可擔當重構伺服器。此時,其它中間伺服器可向擔當重構伺服器的中間伺服器(例如中間伺服器104-1)傳送資料分片。在擔當重構伺服器的中間伺服器獲得足夠數量(大於等於臨界值數量)的資料分片之後,就可採用秘密重構演算法來重構投票資料。可以領會,在擔當重構伺服器的中間伺服器本身已儲存了資料分片的情況下,無需向擔當重構伺服器的中間伺服器傳送臨界值數量的資料分片,只需該擔當重構伺服器的中間伺服器所獲得的資料分片的數量(即其從其它中間伺服器接收的資料分片的數量加上其本身從客戶端設備接收的資料分片的數量)大於等於臨界值數量即可。 通常,秘密重構演算法可與秘密分享演算法相對應。秘密重構演算法的具體細節是本領域習知的,在此將不對其進行詳細描述。 以上示例顯示了單個客戶端設備的情況。在實踐中,投票或調查研究通常針對多個使用者進行。 參見圖3,其中示出了根據本說明書的另一實施例的用於投票的系統300的示意圖,其示出了由多個使用者使用的多個客戶端設備的情形。例如,系統300可包括多個(例如n個)客戶端設備302-1到302-n和多個(例如p個)中間伺服器304-1到304-p。 在這樣的情況下,客戶端設備302-1到302-n中的每一個都可如參考圖1和2所描述的客戶端設備102一樣操作。例如,客戶端設備302-1到302-n中的每一個都可向使用者呈現投票選項,接收使用者對投票選項的選擇以產生相應使用者的投票資料。 如同參考客戶端設備102所描述的,客戶端設備302-1到302-n中的每一者可將相應使用者的投票資料轉換為資料分片。 在圖3的示例中,在一些實施例中,所有客戶端設備302-1到302-n可將其資料分片傳送給相同的一組中間伺服器304-1到304-p。但應當領會,在另一些實施例中,不同客戶端設備302-1到302-n可將其資料分片傳送給不同的中間伺服器組,這些不同的中間伺服器組可能有重疊(例如可包括一個或多個相同的中間伺服器)或者沒有重疊。例如,多個客戶端設備可位於不同區域,而客戶端設備將其資料分片傳送給其對應區域的中間伺服器。 多個中間伺服器304-1到304-p可將與同一投票資料相對應的多個資料分片傳送給重構伺服器306-1到306-m,從而所述重構伺服器306-1到306-m能夠使用所述大於等於臨界值數量的資料分片來重構相對應的投票資料。 在一些實施例中,與上面參考圖2所描述的類似地,系統300可包括一個或多個獨立的重構伺服器306-1到306-m。例如,在多個重構伺服器的情況下,來自不同客戶端設備的投票資料可在相同或不同重構伺服器處重構。例如,來自客戶端設備302-1和302-n的投票資料可在重構伺服器306-1處重構,而來自客戶端設備302-2的投票資料可在重構伺服器306-m處重構。 替代地,與上面參考圖1所描述的類似地,系統300可不包括獨立的重構伺服器,而是由一個或多個中間伺服器擔當重構伺服器。當然,也可存在混合情況,在此情況下,有些重構伺服器為獨立的重構伺服器,而有些重構伺服器由中間伺服器擔當。 重構伺服器306-1到306-m在重構以產生與該多個客戶端設備302-1到302-n相對應的多個投票資料之後,可將該多個投票資料傳送至匯總伺服器308以供匯總。 如圖3所示,系統300可包括獨立的匯總伺服器308,該匯總伺服器308可以根據來自多個客戶端設備的投票資料獲得多個使用者的投票選項,並對所述多個使用者的投票選項進行處理,以產生匯總結果。 例如,在上面描述的針對聚餐時間投票的示例中,匯總伺服器可匯總多個使用者對聚餐時間的選擇,從而獲得最終的匯總結果,例如可選擇投票最多的聚餐時間作為最終確定的聚餐時間。 替代地,系統可不包括獨立的匯總伺服器。此時,匯總伺服器例如可以由所述多個中間伺服器304-1到304-p或所述一個或多個獨立重構伺服器306-1到306-m(如果存在)中的一個或多個來擔當。 在各實施例中,匯總結果可被傳送給客戶端設備以供顯示。應當注意,通常僅向客戶端設備傳送匯總結果,而不向客戶端設備傳送其本身的投票資料或其它客戶端設備的投票資料。透過這種方式,即便該匯總結果被攔截,攔截者也無法從匯總資料中得到來自客戶端設備的投票資料,從而確保了使用者的隱私。 在一個示例中,可向使用者僅顯示多個使用者的投票資料的統計平均值。例如,在對身高進行調查研究的情況下,可向使用者顯示多個使用者的身高的平均值。 在另一個示例中,可向使用者僅顯示多個使用者的投票資料的其它統計量。例如,在對就餐時間進行投票的情況下,可向使用者顯示被最多使用者選擇的投票時間。 在又一示例中,可向使用者顯示使用者的投票資料與匯總結果的關係。此時,客戶端設備可從其本身的儲存中獲得該使用者的投票資料,並與匯總結果進行比較,以便顯示該關係。例如,在向使用者顯示統計平均值的情況下,還可向使用者顯示使用者的投票資料與該統計平均值的關係。例如,假設使用者的身高為1.8米,而多個使用者的身高的平均值為1.7米,則可向使用者顯示:“您的身高高於平均值0.1米”。 應當理解,所述顯示的匯總結果的內容僅僅是示例,本領域技術人員可以構想其它顯示內容,其均落入本發明的保護範圍。 所述匯總結果的呈現也可採取各種方式。在一個示例中,可向使用者顯示匯總結果的文字。例如,如上所提及的,可向使用者顯示“平均身高為1.7米”及/或“您的身高高於平均值0.1米”。 在另一個示例中,可向使用者顯示包括匯總結果的圖片。例如,如圖式4所示,其示出了根據本說明書的實施例的向使用者顯示的圖片。在該圖片中,除了顯示與上面所述的類似的內容外,還可伴隨該內容顯示圖片,以更直觀地向使用者呈現統計結果。 在又一示例中,還可採用語音、動畫等方式向使用者呈現匯總結果。例如,客戶端設備可向使用者播放“平均身高為1.7米”的語音,或者可向使用者呈現能直觀且動態地表現這一結果的動畫。 用於投票的系統 如同上面參考圖1、圖2和圖3所描述的,本說明書的實施例公開了一種系統。 所述系統可包括一個或多個客戶端設備和多個中間伺服器。所述一個或多個客戶端設備的具體描述可參考圖1或圖2所描述的客戶端設備102或者參考圖3所描述的客戶端設備302-1到302-n。所述多個中間伺服器的具體描述可參考圖1、圖2所示的中間伺服器104-1到104-p或參考圖3所示的中間伺服器304-1到304-p。 所述一個或多個客戶端設備可向使用者呈現投票選項,接收所述使用者對投票選項的選擇並產生投票資料,使用秘密分享演算法將所述投票資料轉換為多個資料分片,以及將所述多個資料分片傳送到多個中間伺服器。所述秘密分享演算法使得無法從小於臨界值數量的資料分片重構所述投票資料。 所述多個中間伺服器從所述客戶端設備接收所述資料分片,其中大於等於所述臨界值數量的資料分片被用來重構所述投票資料。 在向使用者呈現投票選項之前、期間或之後,可由客戶端設備向使用者呈現圖片、動畫、文字或語音等以向所述使用者告知秘密分享演算法的工作原理。 所述投票資料可包括或不包括使用者標識資訊。 所述秘密分享演算法例如可以是Shamir臨界值秘密分享演算法。 所述系統還可包括一個或多個重構伺服器。所述重構伺服器可以是由所述多個中間伺服器中的一個或多個擔當的。所述重構伺服器的具體描述可參考圖2所描述的重構伺服器106或圖3所描述的重構伺服器306。所述重構伺服器從所述多個中間伺服器獲得大於等於臨界值數量的資料分片並使用所述資料分片來重構所述投票資料。 所述系統還可包括匯總伺服器。所述匯總伺服器可以是由所述中間伺服器或所述重構伺服器中的一個或多個擔當的。所述匯總伺服器的具體描述可參考圖3所描述的匯總伺服器306。來自所述多個客戶端設備的投票資料在被重構之後被匯總以便產生匯總結果。 匯總結果由匯總伺服器306傳送給相應的客戶端設備302-1到302-n。如上所提及的,通常匯總伺服器306僅傳送匯總結果,而不傳送與相應客戶端設備或其它客戶端設備相關的投票資料,以便進一步保護使用者的隱私。 客戶端設備在接收到來自匯總伺服器306的匯總結果之後,可顯示匯總結果。顯示匯總結果的具體方式可參考上面的描述。 用於投票的方法 參考圖5,其中示出了根據本說明書的實施例的用於投票的方法500的流程圖。例如,所述方法可由參考圖1、圖2所示的客戶端設備102或參考圖3所示的客戶端設備302-1到302-n執行。 方法500可包括:在步驟502,可透過客戶端設備向使用者呈現投票選項。 方法500可包括:可選地,在步驟502之前、期間或之後的步驟501,可由所述客戶端設備向使用者呈現圖片、文字、語音或動畫以向所述使用者告知秘密分享演算法的工作原理。 方法500可包括:在步驟504,可透過客戶端設備接收使用者對投票選項的選擇以產生投票資料。 方法500可包括:在步驟506,可透過客戶端設備使用秘密分享演算法將所述投票資料轉換為多個資料分片,其中所述秘密分享演算法使得無法從小於臨界值數量的資料分片重構所述投票資料。 方法500還可包括:在步驟508,可透過客戶端設備將所述多個資料分片傳送到多個中間伺服器,其中大於等於所述臨界值數量的資料分片被用於重構所述投票資料,其中來自多個客戶端設備的經重構的投票資料將被匯總以產生匯總結果。 方法500還可包括:在步驟510,可透過客戶端設備接收並顯示匯總結果。 對方法的各步驟的具體實現的描述可參考前文。 此外,本申請還公開了一種裝置,該裝置包括儲存器;通訊介面;和處理器,與所述儲存器和通訊介面通訊地連接,所述處理器操作以實現本文所述的各實施例的方法。 而且,本申請還公開了一種包括儲存於其上的電腦可執行指令的電腦可讀儲存媒體,所述電腦可執行指令在被處理器執行時使得所述處理器執行本文所述的各實施例的方法。 可以理解,根據本說明書的各實施例的方法可以用軟體、韌體或其組合來實現。 應該理解,所公開的方法中各步驟的具體次序或階層是示例性過程的解說。基於設計偏好,應該理解,可以重新編排這些方法中各步驟的具體次序或階層。所附方法請求項以樣本次序呈現各種步驟的要素,且並不意味著被限定於所呈現的具體次序或階層,除非在本文中有特別敘述。 應該理解,本文用單數形式描述或者在圖式中僅顯示一個的元件並不代表將該元件的數量限於一個。此外,本文中被描述或示出為分開的模組或元件可被組合為單個模組或元件,且本文中被描述或示出為單個的模組或元件可被拆分為多個模組或元件。 還應理解,本文採用的用語和表述方式只是用於描述,本說明書的實施例並不應局限於這些用語和表述。使用這些用語和表述並不意味著排除任何示意和描述(或其中部分)的等效特徵,應認識到可能存在的各種修改也應包含在請求項範圍內。其他修改、變化和替換也可能存在。相應的,請求項應視為覆蓋所有這些等效物。 同樣,需要指出的是,雖然本發明已參照當前的具體實施例來描述,但是本技術領域中的普通技術人員應當認識到,以上的實施例僅是用來說明本發明,在沒有脫離本發明精神的情況下還可做出各種等效的變化或替換,因此,只要在本發明的實質精神範圍內對上述實施例的變化、變型都將落在本申請的申請專利範圍的範圍內。
100:系統 102:客戶端設備 104-1:中間伺服器 104-2:中間伺服器 104-t:中間伺服器 104-p:中間伺服器 106:重構伺服器 300:系統 302-1:客戶端設備 302-2:客戶端設備 302-n:客戶端設備 304-1:中間伺服器 304-2:中間伺服器 304-t:中間伺服器 304-p:中間伺服器 306-1:重構伺服器 306-m:重構伺服器 308:匯總伺服器 500:方法 501:步驟 502:步驟 504:步驟 506:步驟 508:步驟 510:步驟
以上發明內容以及下面的具體實施方式在結合圖式閱讀時會得到更好的理解。需要說明的是,圖式僅作為所請求保護的發明的示例。在圖式中,相同的圖式標記代表相同或類似的元素。 [圖1]是示出根據本說明書的實施例的用於投票的系統的示意圖。 [圖2]是示出根據本說明書的另一實施例的用於投票的系統的示意圖。 [圖3]是示出根據本說明書的另一實施例的用於投票的系統的示意圖。 [圖4]是示出根據本說明書的實施例的向使用者顯示的圖片的示例的示意圖。 [圖5]是示出根據本說明書的實施例的由客戶端設備執行的用於投票的方法的流程圖。
300:系統
302-1:客戶端設備
302-2:客戶端設備
302-n:客戶端設備
304-1:中間伺服器
304-2:中間伺服器
304-t:中間伺服器
304-p:中間伺服器
306-1:重構伺服器
306-m:重構伺服器
308:匯總伺服器

Claims (16)

  1. 一種用於投票的系統,包括:至少一個客戶端設備,每個客戶端設備:向使用者呈現投票選項,接收所述使用者對投票選項的選擇並產生投票資料,該投票資料中不包括該客戶端設備的使用者標識資訊,使用秘密分享演算法將所述投票資料轉換為多個資料分片,其中所述秘密分享演算法使得無法從小於臨界值數量的資料分片重構所述投票資料,以及將所述多個資料分片傳送到多個中間伺服器;多個中間伺服器,其中所述多個中間伺服器從所述至少一個客戶端設備接收資料分片,其中大於等於所述臨界值數量的資料分片被用來重構所述投票資料;一個或多個重構伺服器,其中所述重構伺服器從所述多個中間伺服器獲得大於等於臨界值數量的資料分片並使用所述資料分片來重構所述投票資料;以及匯總伺服器,所述匯總伺服器接收來自所述一個或多個重構伺服器的經重構的投票資料並對其進行匯總以產生匯總結果,並將所述匯總結果傳送給相應的客戶端設備以供顯示。
  2. 如請求項1所述的系統,其中,顯示所述匯總結果包括顯示多個使用者的投票資料的統計平均值。
  3. 如請求項1所述的系統,其中,顯示所述匯總結果包括顯示所述使用者的投票資料與多個使用者的 投票資料的統計平均值的關係。
  4. 如請求項1所述的系統,其中,所述秘密分享演算法是Shamir臨界值秘密分享演算法。
  5. 如請求項1所述的系統,其中,所述重構伺服器中的一個或多個由所述中間伺服器擔當。
  6. 如請求項1所述的系統,其中,所述匯總伺服器由所述中間伺服器或所述重構伺服器中的一個或多個擔當。
  7. 如請求項1所述的系統,其中,每個資料分片僅被傳送至一個中間伺服器。
  8. 一種用於投票的方法,包括:透過客戶端設備向使用者呈現投票選項;透過客戶端設備接收使用者對投票選項的選擇以產生投票資料,該投票資料中不包括該客戶端設備的使用者標識資訊;透過客戶端設備使用秘密分享演算法將所述投票資料轉換為多個資料分片,其中所述秘密分享演算法使得無法從小於臨界值數量的資料分片重構所述投票資料;透過客戶端設備將所述多個資料分片傳送到多個中間伺服器,其中大於等於所述臨界值數量的資料分片被用於重構所述投票資料,其中來自多個客戶端設備的經重構的投票資料將被匯總以產生匯總結果;以及透過所述客戶端設備接收並顯示所述匯總結果。
  9. 如請求項8所述的方法,其中,顯示所述 匯總結果包括僅顯示統計平均值。
  10. 如請求項8所述的方法,其中,顯示所述匯總結果包括顯示所述使用者的投票資料與多個使用者的投票資料的統計平均值的關係。
  11. 如請求項8所述的方法,其中,所述秘密分享演算法是Shamir臨界值秘密分享演算法。
  12. 如請求項8所述的方法,其中,將每個資料分片傳送至僅一個中間伺服器。
  13. 如請求項8所述的方法,其中,所述重構由獨立的重構伺服器執行或由中間伺服器執行。
  14. 如請求項8所述的方法,其中,所述匯總由獨立的匯總伺服器執行、由中間伺服器執行或由用於重構投票資料的重構伺服器執行。
  15. 一種用於投票的裝置,包括:儲存器;通訊介面;以及連接到所述儲存器和通訊介面的處理器,所述處理器被配置為執行如請求項8至14中任一項所述的方法。
  16. 一種儲存指令的電腦可讀儲存媒體,所述指令當被電腦執行時,使所述電腦執行如請求項8至14中任一項所述的方法。
TW108133231A 2019-02-28 2019-09-16 用於投票的系統、方法和裝置 TWI743563B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910151336.0A CN110035057A (zh) 2019-02-28 2019-02-28 用于投票的系统、方法和装置
CN201910151336.0 2019-02-28

Publications (2)

Publication Number Publication Date
TW202040379A TW202040379A (zh) 2020-11-01
TWI743563B true TWI743563B (zh) 2021-10-21

Family

ID=67234969

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108133231A TWI743563B (zh) 2019-02-28 2019-09-16 用於投票的系統、方法和裝置

Country Status (3)

Country Link
CN (1) CN110035057A (zh)
TW (1) TWI743563B (zh)
WO (1) WO2020173279A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109949472A (zh) * 2019-02-28 2019-06-28 阿里巴巴集团控股有限公司 用于投票的系统、方法和装置
CN110035057A (zh) * 2019-02-28 2019-07-19 阿里巴巴集团控股有限公司 用于投票的系统、方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020133396A1 (en) * 2001-03-13 2002-09-19 Barnhart Robert M. Method and system for securing network-based electronic voting
US20050218224A1 (en) * 2001-12-31 2005-10-06 Boldin Anthony J Computerized electronic voting system
CN104935565A (zh) * 2015-04-15 2015-09-23 浙江师范大学 用于网络投票系统的选票处理系统、方法以及装置
CN106230872A (zh) * 2009-11-25 2016-12-14 安全第公司 对移动中数据进行保护的系统和方法
TWI591563B (zh) * 2016-07-29 2017-07-11 臺灣集中保管結算所股份有限公司 一種自動跨平台以執行股東投票之方法及系統
TW201818303A (zh) * 2016-11-03 2018-05-16 鴻達積股份有限公司 行動裝置投票系統

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101945125A (zh) * 2010-08-30 2011-01-12 北京邮电大学 一种文件传输的方法和装置
US8484195B2 (en) * 2011-05-11 2013-07-09 Yottavote, Inc. Anonymous referendum system and method
CN102629396B (zh) * 2012-04-09 2014-04-02 中科院成都信息技术股份有限公司 含另选人的电子选票信息加密及快速处理方法
CN102664731B (zh) * 2012-04-09 2014-06-25 中科院成都信息技术股份有限公司 电子选票信息的加密及快速处理方法
CN103414682B (zh) * 2013-04-07 2016-08-17 深圳大学 一种数据的云端存储方法及系统
CN103955984B (zh) * 2014-03-24 2017-11-07 广州华多网络科技有限公司 实现互联网投票的方法、服务器、投票处理节点及系统
CN106296956A (zh) * 2015-06-11 2017-01-04 镇江为天下信息服务有限公司 一种面向分布式网络投票的安全保障方法
CN106330668A (zh) * 2015-07-02 2017-01-11 天脉聚源(北京)科技有限公司 一种微信投票实现方法及系统
CN106373251A (zh) * 2016-08-30 2017-02-01 中科院成都信息技术股份有限公司 一种基于秘密分享的电子选票计票方法
CN108768607B (zh) * 2018-05-14 2021-10-08 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种基于区块链的投票方法、装置、设备及介质
CN108809624A (zh) * 2018-07-18 2018-11-13 杭州安恒信息技术股份有限公司 一种电子选举方法、系统、设备及计算机可读存储介质
CN109120398B (zh) * 2018-08-03 2021-07-27 河南师范大学 一种基于区块链系统的秘密共享方法与装置
CN109949472A (zh) * 2019-02-28 2019-06-28 阿里巴巴集团控股有限公司 用于投票的系统、方法和装置
CN110035057A (zh) * 2019-02-28 2019-07-19 阿里巴巴集团控股有限公司 用于投票的系统、方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020133396A1 (en) * 2001-03-13 2002-09-19 Barnhart Robert M. Method and system for securing network-based electronic voting
US20050218224A1 (en) * 2001-12-31 2005-10-06 Boldin Anthony J Computerized electronic voting system
CN106230872A (zh) * 2009-11-25 2016-12-14 安全第公司 对移动中数据进行保护的系统和方法
CN104935565A (zh) * 2015-04-15 2015-09-23 浙江师范大学 用于网络投票系统的选票处理系统、方法以及装置
TWI591563B (zh) * 2016-07-29 2017-07-11 臺灣集中保管結算所股份有限公司 一種自動跨平台以執行股東投票之方法及系統
TW201818303A (zh) * 2016-11-03 2018-05-16 鴻達積股份有限公司 行動裝置投票系統

Also Published As

Publication number Publication date
WO2020173279A1 (zh) 2020-09-03
CN110035057A (zh) 2019-07-19
TW202040379A (zh) 2020-11-01

Similar Documents

Publication Publication Date Title
US11399079B2 (en) Zero-knowledge environment based networking engine
US11128466B2 (en) Zero-knowledge environment based social networking engine
TWI720614B (zh) 用於投票的系統、方法和裝置
US20210281402A1 (en) Multi-party security computing method and apparatus, and electronic device
WO2022247576A1 (zh) 一种数据处理方法、装置、设备及计算机可读存储介质
US10037544B2 (en) Technologies for collecting advertising statistics in a privacy sensitive manner
US8379857B1 (en) Secure key distribution for private communication in an unsecured communication channel
JP2022526058A (ja) プライバシーを保護するための方法
CN108811519A (zh) 用于在不公开特定识别信息的情况下建立标识符之间的链接的系统和方法
US10692115B2 (en) Systems and methods for protecting internet advertising data
US11470057B2 (en) Systems and methods for protecting internet advertising data
TWI743563B (zh) 用於投票的系統、方法和裝置
KR20210102291A (ko) 암호화된 네트워크 값 집계
US20130177156A1 (en) Encrypted Data Processing
KR20210107750A (ko) 다중 집계 서버를 사용하여 데이터 조작 방지
CN112822152B (zh) 定向信息展示处理方法及相关设备
CN114826616B (zh) 数据处理方法、装置、电子设备和介质
Belaynew Security Enhanced SMS for Sensitive Applications