基于藍牙的匿名團體投票方法
【專利摘要】本發(fā)明提供一種基于藍牙的匿名團體投票方法包括:投票發(fā)起方發(fā)起藍牙投票事件;投票發(fā)起方對投票信息進行編輯存入藍牙設備名字中,并使用密鑰加密,經(jīng)藍牙進行發(fā)送;投票方打開設備藍牙,接收投票發(fā)起方發(fā)布投票信息;投票方接收到信息即可使用密鑰解密信息進行投票,同時設備成為節(jié)點,通過多跳方式進行轉(zhuǎn)發(fā)投票信息;投票完畢后,將投票結(jié)果及自動產(chǎn)生的隨機碼存儲到手機藍牙設備名上,輸入密鑰加密并提交選票,設備將以多跳方式將不同選票者的選票信息擴散、匯總到投票發(fā)起方設備上;投票結(jié)束,系統(tǒng)根據(jù)收到有效信息進行解密,并自動計算投票結(jié)果呈現(xiàn)給投票發(fā)起方,之后公布選票結(jié)果,降低了成本,提高了靈活性、效率、安全性及可靠性。
【專利說明】基于藍牙的匿名團體投票方法
【【技術(shù)領(lǐng)域】】
[0001]本發(fā)明涉及藍牙設備軟件及網(wǎng)絡交互領(lǐng)域,特別涉及一種基于藍牙的匿名團體投票方法。
【背景技木】
[0002]投票是人們生活和工作中常用的ー種方式,用以表達大眾對某項活動或者事宜的選擇。比如投票選舉,選舉人將所要選的人的姓名寫在選票上,或在印有候選人姓名的選票上做出標記,投入票箱。其中,匿名投票,又稱不記名投票,是投票的ー種常用形式。投票者在投票吋,選票中不用寫下自己的名字及身份識別信息,避免非自愿地讓人知道自己的投票意向。傳統(tǒng)的不記名投票的流程為:事先準備好紙筆等記錄工具以及票箱用于保密處理,然后由投票發(fā)起方對選舉目的、背景及規(guī)則等相關(guān)事宜作出陳述并分發(fā)選票;而后由投票方在選票上填寫投票信息;最后將填寫好的選票統(tǒng)一投到票箱由公證人員對選票進行統(tǒng)計并公布最終結(jié)果。
[0003]從上述操作流程中,可以發(fā)現(xiàn)傳統(tǒng)不記名投票方式在操作靈活性以及信息保密性等方面上都具有一定局限 ,具體體現(xiàn)為以下幾點:第一,傳統(tǒng)不記名投票的前期準備工作較為繁瑣,不能靈活適應生活中的實際情況,如:在一個團體出游時,需臨時在大巴車上決議第二天的旅游項目,在沒有預先準備紙筆等道具的情況下很難實現(xiàn)不記名投票;第二,投票的整個流程中需要設專人宣讀投票信息、統(tǒng)計票數(shù)、唱票,費時費力,由于人的主觀性及個人私欲,暗箱操作等情況也時有發(fā)生,從而導致不公正性;第三,在不記名投票的過程中很難實際做到信息的保密性,投票者本身的字跡作為個體差異性特征容易暴露其真實身份;第四,投票過程中所使用的紙張、投票箱等并不符合現(xiàn)代要求低碳環(huán)保的標準。
【
【發(fā)明內(nèi)容】
】
[0004]有鑒于此,本發(fā)明要解決技術(shù)問題,在于提供一種基于藍牙的匿名団體投票方法,該方法可以簡化了投票前期準備工作,使成員匿名投票,投票速度快,可快速統(tǒng)計票數(shù),得出結(jié)果。
[0005]為了實現(xiàn)上述目的,本發(fā)明提出一種基于藍牙的匿名団體投票方法,其包括:
[0006]步驟I,投票發(fā)起方發(fā)起藍牙投票事件;
[0007]步驟2,投票發(fā)起方對投票信息進行編輯存入藍牙設備名字中,并使用密鑰加密,經(jīng)藍牙進行發(fā)送;
[0008]步驟3,投票方打開設備藍牙,接收投票發(fā)起方發(fā)布投票信息;
[0009]步驟4,投票方接收到信息即可使用密鑰解密信息進行投票,同時設備成為節(jié)點,通過多跳方式進行轉(zhuǎn)發(fā)投票信息;
[0010]步驟5,投票完畢后,將投票結(jié)果及自動產(chǎn)生的隨機碼存儲到藍牙名上,輸入密鑰加密并提交選票,設備將以多跳方式將不同選票者的選票信息擴散、匯總到投票發(fā)起方設備上;[0011]步驟6,投票結(jié)束,系統(tǒng)根據(jù)收到有效信息進行解密,并自動計算投票結(jié)果呈現(xiàn)給投票發(fā)起方,之后公布選票結(jié)果。
[0012]進ー步地,所述隨機碼產(chǎn)生過程:投票方提交選票吋,調(diào)用隨機算法產(chǎn)生的。
[0013]進ー步地,所述隨機碼為隨機數(shù)字組成分配給投票者用于設備之間識別。
[0014]進ー步地,將四位密鑰循環(huán)擴長至240位,之后從藍牙名的第九位開始,使用基于異或的對稱加密算法對擴長后的密鑰和藍牙名進行按位“異或”運算,得到加密后的藍牙名;
[0015]將四位密鑰循環(huán)擴長至240位,之后從加密后的藍牙名的第九位開始,使用基于異或的對稱加密算法對擴長后的密鑰和藍牙名進行按位“異或”運算,得到解密后的藍牙名。
[0016]進ー步地,所述公布選票結(jié)果為設備自動唱票或投票發(fā)起方發(fā)送結(jié)果給所有投票方。
[0017]本發(fā)明基于藍牙的匿名団體投票方法,只需準備帶藍牙的設備,無需預先準備其他任何工具即可完成投票的整個過程,能夠適應各種場合下的使用需要;同時無紙化的操作更是迎合了現(xiàn)代綠色環(huán)保的要求;通過巧妙地設計,在完成投票的同時有效保障了投票方個人身份信息的隱蔽性;通過系統(tǒng)中的多跳轉(zhuǎn)發(fā)機制及統(tǒng)計分析算法可以自動完成選票的分發(fā)、回收及統(tǒng)計等工作并將最后結(jié)果返回給投票發(fā)起方,在最大程度上減免了人工參與的環(huán)節(jié),提高了效率,盡可能避免了人為因素所致的誤差及不公正性。
【【專利附圖】
【附圖說明】】
[0018]圖1是本發(fā)明基于藍牙的匿名団體投票方法的流程框圖。
[0019]圖2是本發(fā)明基于藍牙的匿名団體投票方法的藍牙名格式示意圖。
[0020]圖3A是本發(fā)明基于藍牙的匿名団體投票方法的設備A的選票記錄字段內(nèi)容示意圖。
[0021]圖3B是本發(fā)明基于藍牙的匿名団體投票方法的設備B的選票記錄字段內(nèi)容示意圖。
[0022]圖3C是本發(fā)明基于藍牙的匿名団體投票方法的經(jīng)與設備B交換后設備A的選票記錄字段內(nèi)容不意圖。
[0023]圖4是本發(fā)明基于藍牙的匿名団體投票方法的多跳傳輸過程示意圖。
【【具體實施方式】】
[0024]下面是對本發(fā)明基于藍牙的匿名団體投票方法進行具體說明。
[0025]如圖1所示,本發(fā)明基于藍牙的匿名団體投票方法的一種實施例方式包括:
[0026]步驟IS:投票發(fā)起方發(fā)起藍牙投票事件;
[0027]步驟2S:投票發(fā)起方對投票信息進行編輯存入藍牙設備名字中,并使用密鑰加密,經(jīng)藍牙進行發(fā)送;
[0028]步驟3S:投票方打開設備藍牙,接收投票發(fā)起方發(fā)布投票信息;
[0029]步驟4S:投票方接收到信息即可使用密鑰解密信息進行投票,同時設備成為節(jié)點,通過多跳方式轉(zhuǎn)發(fā)進行轉(zhuǎn)發(fā)投票信息;[0030]步驟5S:投票完畢后,將投票結(jié)果及自動產(chǎn)生的隨機碼存儲到手機藍牙設備名上,輸入密鑰加密并提交選票,設備將以多跳方式轉(zhuǎn)發(fā)不同選票者的選票信息擴散、匯總到投票發(fā)起方設備上;
[0031]步驟6S:投票結(jié)束,系統(tǒng)根據(jù)收到有效信息進行解密,并自動計算投票結(jié)果呈現(xiàn)給投票發(fā)起方,之后公布選票結(jié)果。
[0032]如圖2所示,根據(jù)藍牙協(xié)議規(guī)定,手機設備的藍牙名長度最大為248個字節(jié),我們將其劃分為若干個字段。圖2給出了ー種具體的劃分字段的方式:組名,占8個字節(jié),用以區(qū)分不同的投票用戶組,組員根據(jù)組名判斷是否是組內(nèi)的合法投票;投票內(nèi)容介紹,占60個字節(jié),作用是介紹投票相關(guān)的信息,如為什么要投票,投票的目的是什么;投票選項,每項占用10個字節(jié),設8個選項,共占用80個字節(jié);選票記錄或決策信息,占100個字節(jié)。這一字段在投票決策前后裝載不同的類型的內(nèi)容,在決策產(chǎn)生前為各成員的投票選項記錄,即記錄下大家投了什么票。決策之后則顯示最終決策的信息及下一歩的安排。投票選項的記錄是這樣的,總共100個字節(jié)中,用每2個字節(jié)對應ー個成員的選擇,則可以最大支持50個投票用戶。這2個字節(jié)里,我們進一歩進行劃分,用13位以區(qū)分不同的投票用戶(稱這13位為“區(qū)分位”),這里我們用臨時分配給投票者的一個隨機數(shù)來表示,這個隨機數(shù)是用戶在提交選票的時候調(diào)用隨機算法得到一組隨機數(shù),投票方將這組隨機數(shù)和投票選項一同放入藍牙名中,并提交選票。這樣做的好處是對投票者身份的隱藏,即使是組內(nèi)成員也不知道是誰投的票。雖然不同用戶可能產(chǎn)生同樣的隨機碼,但這個概率是很低的,比如兩個13位隨機數(shù)沖突的概率是二百一十三分之一,基本上不會對整體結(jié)果造成影響。剩下的3位表示投票用戶的選擇(稱這3位為投票位),因此能支持8種選擇,即可以支持最多8個投票選項,這對于大多數(shù)投票應用都已經(jīng)足夠,如果不夠,也可以根據(jù)需要調(diào)整“區(qū)分位”與“投票位”的長度。因此需要強調(diào)的是,這里的格式劃分只是ー個例子,具體使用者可以依據(jù)自身的特性進行特定的劃分。如記錄單個成員的選擇的字段(目前是2個字節(jié)),字段越長所能支持的投票總?cè)藬?shù)越少(總空間在100個字節(jié)的前提下),但是投票發(fā)生沖突的概率就越低。
[0033]在用戶提交選票時,將產(chǎn)生ー個13位的隨機碼,隨機碼是由系統(tǒng)中的隨機算法生成的,將該隨機碼和投票選項數(shù)字一同放入到藍牙設備名中的任意空白的選票記錄字段。值得ー提的是,每個用戶完成投票后,便自動進入到了系統(tǒng)的多跳轉(zhuǎn)發(fā)機制中,即該用戶成為了投票信息的傳播者,別的用戶可以從該用戶獲取投票信息并傳播投票選項。如,另外ー個普通用戶通過掃描得到該用戶的設備名后,將做出投票并更新自己的設備名。具體來說,是根據(jù)隨機碼剔除同一個用戶的重復內(nèi)容,然后將新發(fā)現(xiàn)的投票字段放入自己的設備名里。如圖3A所示,手機設備A在提交選票信息后,經(jīng)搜索檢測到附近手機設備B的選票信息,如圖3B所示。根據(jù)前13位隨機碼判斷該選票并未包含在本機所收集的選票信息中,于是將該條選票信息加入到自己的設備名里,如圖3C所示。系統(tǒng)中的用戶皆會重復此過程,最終投票發(fā)起方即可獲取全部投票結(jié)果。
[0034]如圖4所示,基于多跳轉(zhuǎn)發(fā)的信息擴散機制由于在整個拓撲結(jié)構(gòu)中不存在明顯的核心節(jié)點,即除決策方外每個節(jié)點的重要性幾乎相等,因此任意節(jié)點的損壞并不會顯著影響信息流在整個網(wǎng)絡中的擴散及匯總。如圖4所示:各投票方在完成投票后自動進入到多跳轉(zhuǎn)發(fā)機制,即將自身的選票信息向附近處于同一投票組的其他節(jié)點進行廣播,即圖4中箭頭方向代表選票信息的擴散方向,并收集、匯總來自其他節(jié)點的選票信息。如圖4所示,由于超出了通信半徑的范圍,投票者3雖然不能從投票發(fā)起方處直接獲取投票信息,根據(jù)我們的多跳轉(zhuǎn)發(fā)機制,投票者3卻可以從投票者I或者2那里獲取投票信息,完成投票后其投票信息亦可被投票者I或者2獲取,從而最終被投票發(fā)起方獲取。
[0035]加密:由于藍牙傳輸協(xié)議限制,藍牙名在傳輸信道中使用的是明文,為使選舉團外人員不能讀出與投票相關(guān)的信息,由選舉團內(nèi)設置通用密鑰,用以加密選票信息。采用基于異或的對稱加密算法,由用戶設置4位的加密密鑰KcilKci2Kci3Ktl4,將此4位密鑰從藍牙名X1, X
2,? ? ? ? , X9, X10, X11, X12, X13,X248的第二個字段開始,即第9位X9開始。先將密鑰循環(huán)擴長至240位,即240個UTF-8字符,最后將用戶的藍牙名與此擴長后的密鑰從藍牙名的第二個字段開始,即不對整個藍牙名加密,跳過了組名字段的加密過程,這樣可以保證系統(tǒng)能夠區(qū)分不同的投票組,同時又不泄露用戶的其他信息。按位進行“異或”運算得到加密后的藍牙名為X1, X2,....X8, N9, N10, N11, N12,...., N248J并將此結(jié)果作為新的監(jiān)牙名賦予手機。由于加密解密固化在系統(tǒng)程序里,藍牙名向外部呈現(xiàn)的是加過密的信息,即是ー堆不知意義的符號,即使是內(nèi)部投票使用者也不知道具體字段的格式設置,因此不能人為增刪、偽造虛假的投票信息。
[0036]解密:當投票方用戶將其選票信息設置加密后,經(jīng)多跳轉(zhuǎn)發(fā),附近可靠節(jié)點交換得到的新選票信息仍為密文形式,只有選票信息被匯總到投票發(fā)起方時,才進行相應的解密操作并完成統(tǒng)計、分析過程。由于本加密算法采用的是對稱加密的形式,因此在解密選票信息吋,根據(jù)投票發(fā)起方設置的組內(nèi)密鑰KcilKci2Kci3Ktl4進行后續(xù)的解密操作。具體解密過程如下:與加密算法相似,將此4位密鑰循環(huán)擴長240位,共240個UTF-8字符,之后將此加密后的藍牙名與擴長后的密鑰從藍牙名的第二個字段開始,即跳過了組名字段,因為在加密過程中并未對此部分信息進行加密,無需進行解密,之后按位進行“異或”運算得到解密后的藍牙名為X1, X2,, X9, X10, X11, X12, X13,X248,于是投票發(fā)起方便得到了所有選票信息的明文形式。
[0037]投票發(fā)起方統(tǒng)計投票信息并做出決策:在投票發(fā)起方確認所有投票者均作出應答后即可查看投票信息,為了避免無限期地等待投票者,系統(tǒng)也可以設置一個最長投票期限,超過該期限的投票宣告無效。系統(tǒng)根`據(jù)已收集到的本組有效投票信息自動計算出各選項的票數(shù)并呈現(xiàn)給投票發(fā)起方。投票發(fā)起方可以根據(jù)此最終結(jié)果做出決議,并將最終決策加以描述后公示給小組內(nèi)的其他投票成員。即投票發(fā)起方將該決策信息覆蓋到原有的“選票記錄”信息,并再次按照前面所述的方法分發(fā)給投票者。至此,整個投票過程完結(jié)。
[0038]與現(xiàn)有的技術(shù)相比較,本發(fā)明基于藍牙的匿名団體投票方法,只需準備帶藍牙的設備,無需預先準備其他任何工具即可完成投票的整個過程,能夠適應各種場合下的使用需要;同時無紙化的操作更是迎合了現(xiàn)代綠色環(huán)保的要求;通過巧妙地設計,在完成投票的同時有效保障了投票方個人身份信息的隱蔽性;通過系統(tǒng)中的多跳轉(zhuǎn)發(fā)機制及統(tǒng)計分析算法可以自動完成選票的分發(fā)、回收及統(tǒng)計等工作并將最后結(jié)果返回給投票發(fā)起方,在最大程度上減免了人工參與的環(huán)節(jié),提高了效率,盡可能避免了人為因素所致的誤差及不公正性。
[0039]以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進,這些改進也應視為本發(fā)明的保護范圍。
【權(quán)利要求】
1.一種基于藍牙的匿名団體投票方法,其特征在于,包括: 步驟I,投票發(fā)起方發(fā)起藍牙投票事件; 步驟2,投票發(fā)起方對投票信息進行編輯存入藍牙設備名字中,并使用密鑰加密,經(jīng)藍牙進行發(fā)送; 步驟3,投票方打開設備藍牙,接收投票發(fā)起方發(fā)布投票信息; 步驟4,投票方接收到信息即可使用密鑰解密信息進行投票,同時設備成為節(jié)點,通過多跳方式進行轉(zhuǎn)發(fā)投票信息; 步驟5,投票完畢后,將投票結(jié)果及自動產(chǎn)生的隨機碼存儲到藍牙名上,輸入密鑰加密并提交選票,設備將以多跳方式將不同選票者的選票信息擴散、匯總到投票發(fā)起方設備上; 步驟6,投票結(jié)束,系統(tǒng)根據(jù)收到有效信息進行解密,并自動計算投票結(jié)果呈現(xiàn)給投票發(fā)起方,之后公布選票結(jié)果。
2.如權(quán)利要求1所述的基于藍牙的匿名団體投票方法,其特征是:所述隨機碼產(chǎn)生過程:投票方提交選票吋,調(diào)用隨機算法產(chǎn)生的。
3.如權(quán)利要求1或2所述的基于藍牙的匿名団體投票方法,其特征是:所述隨機碼為隨機數(shù)字組成分配給投票者用于設備之間識別。
4.如權(quán)利要求1所述的基于藍牙的匿名団體投票方法,其特征是:所述密鑰加密具體過程:將四位密鑰循環(huán)擴長至240位,之后從藍牙名的第九位開始,使用基于異或的對稱加密算法對擴長后的密鑰和藍牙名進行按位“異或”運算,得到加密后的藍牙名; 將四位密鑰循環(huán)擴長至240位,之后從加密后的藍牙名的第九位開始,使用基于異或的對稱加密算法對擴長后的密鑰和藍牙名進行按位“異或”運算,得到解密后的藍牙名。
5.如權(quán)利要求1所述的基于藍牙的匿名団體投票方法,其特征是:所述公布選票結(jié)果為設備自動唱票或投票發(fā)起方發(fā)送結(jié)果給所有投票方。
【文檔編號】G07C13/00GK103593899SQ201310535624
【公開日】2014年2月19日 申請日期:2013年11月1日 優(yōu)先權(quán)日:2013年11月1日
【發(fā)明者】王田, 吳尤可, 彭臻 申請人:華僑大學