समरूपी गोपनीयता साझाकरण: Difference between revisions

From Vigyanwiki
(Created page with "{{refimprove|date=March 2021}} क्रिप्टोग्राफी में, होमोमोर्फिक गुप्त साझाकरण एक...")
 
Line 1: Line 1:
{{refimprove|date=March 2021}}
[[क्रिप्टोग्राफी|क्रिप्टोग्राफी (कूटलेखन)]] में, '''समरूपी [[ गुप्त साझाकरण |गोपनीयता साझाकरण]]''' एक प्रकार का गोपनीयता साझाकरण [[ कलन विधि |एल्गोरिथम]] है जिसमें [[होमोमोर्फिक एन्क्रिप्शन|समरूपी एन्क्रिप्शन]] के माध्यम से गोपनीयता को एन्क्रिप्ट किया जाता है। एक [[समरूपता]] एक [[बीजगणितीय संरचना]] से समान प्रकार के दूसरे में परिवर्तन है ताकि संरचना संरक्षित रहे। महत्वपूर्ण रूप से, इसका तात्पर्य यह है कि मूल डेटा के प्रत्येक प्रकार के प्रकलन के लिए, रूपांतरित डेटा का एक समान प्रकलन होता है।<ref>{{cite journal|last=Schoenmakers|first=Berry|title=एक साधारण सार्वजनिक सत्यापन योग्य गुप्त साझाकरण योजना और इलेक्ट्रॉनिक वोटिंग के लिए इसका अनुप्रयोग|journal=Advances in Cryptology|year=1999|volume=1666|pages=148–164|citeseerx = 10.1.1.102.9375 }}</ref>
 
[[क्रिप्टोग्राफी]] में, होमोमोर्फिक [[ गुप्त साझाकरण ]] एक प्रकार का सीक्रेट शेयरिंग [[ कलन विधि ]] है जिसमें [[होमोमोर्फिक एन्क्रिप्शन]] के माध्यम से रहस्य को एन्क्रिप्ट किया जाता है। एक [[समरूपता]] एक [[बीजगणितीय संरचना]] से एक ही प्रकार के दूसरे में परिवर्तन है ताकि संरचना संरक्षित रहे। महत्वपूर्ण रूप से, इसका मतलब यह है कि मूल डेटा के हर प्रकार के हेरफेर के लिए, रूपांतरित डेटा का एक समान हेरफेर होता है।<ref>{{cite journal|last=Schoenmakers|first=Berry|title=एक साधारण सार्वजनिक सत्यापन योग्य गुप्त साझाकरण योजना और इलेक्ट्रॉनिक वोटिंग के लिए इसका अनुप्रयोग|journal=Advances in Cryptology|year=1999|volume=1666|pages=148–164|citeseerx = 10.1.1.102.9375 }}</ref>




== तकनीक ==
== तकनीक ==


होमोमॉर्फिक गुप्त साझाकरण का उपयोग कई प्राप्तकर्ताओं को एक रहस्य प्रसारित करने के लिए किया जाता है:
होमोमॉर्फिक गुप्त साझाकरण का उपयोग कई प्राप्तकर्ताओं को एक गोपनीयता प्रसारित करने के लिए किया जाता है:
# एक समरूपता का उपयोग करके रहस्य को रूपांतरित करें। यह अक्सर रहस्य को एक ऐसे रूप में रखता है जिसे हेरफेर करना या स्टोर करना आसान होता है। विशेष रूप से, चरण (2) द्वारा आवश्यक नए रूप को 'विभाजित' करने का एक स्वाभाविक तरीका हो सकता है।
# एक समरूपता का उपयोग करके गोपनीयता को रूपांतरित करें। यह प्रायः गोपनीयता को एक ऐसे रूप में रखता है जिसे प्रकलन करना या संग्रहित करना आसान होता है। विशेष रूप से, चरण (2) द्वारा आवश्यक नए रूप को 'विभाजित' करने का एक स्वाभाविक तरीका हो सकता है।
# रूपांतरित रहस्य को कई भागों में विभाजित करें, प्रत्येक प्राप्तकर्ता के लिए एक। रहस्य को इस तरह से विभाजित किया जाना चाहिए कि इसे केवल तभी पुनर्प्राप्त किया जा सके जब सभी या अधिकांश भाग संयुक्त हों। (गुप्त साझाकरण देखें।)
# प्रत्येक प्राप्तकर्ता के लिए रूपांतरित रहस्य को कई भागों में विभाजित करें। गोपनीयता को इस तरह से विभाजित किया जाना चाहिए कि इसे केवल तभी पुनर्प्राप्त किया जा सके जब सभी या अधिकांश भाग (गुप्त साझाकरण देखें।) संयुक्त हों।
# प्राप्तकर्ताओं में से प्रत्येक को रहस्य के हिस्से वितरित करें।
# प्राप्तकर्ताओं में से प्रत्येक को गोपनीयता के भागों को वितरित करें।
# परिवर्तित रहस्य को पुनर्प्राप्त करने के लिए प्राप्तकर्ताओं के प्रत्येक भाग को मिलाएं, शायद एक निर्दिष्ट समय पर।
# परिवर्तित गोपनीयता को पुनर्प्राप्त करने के लिए प्राप्तकर्ताओं प्रत्येक भाग को एक निर्दिष्ट समय पर संयोजित करें।
# मूल रहस्य को पुनर्प्राप्त करने के लिए समरूपता को उलट दें।
# मूल गोपनीयता को पुनर्प्राप्त करने के लिए समरूपता को प्रतिवर्त कर दें।


== उदाहरण ==
== उदाहरण ==


मान लीजिए कि एक समुदाय विकेंद्रीकृत मतदान प्रोटोकॉल का उपयोग करके चुनाव करना चाहता है, लेकिन वे यह सुनिश्चित करना चाहते हैं कि वोट-काउंटर परिणामों के बारे में झूठ नहीं बोलेंगे। एक प्रकार के होमोमोर्फिक गुप्त साझाकरण का उपयोग करना जिसे शमीर के गुप्त साझाकरण के रूप में जाना जाता है, समुदाय का प्रत्येक सदस्य अपने वोट को एक ऐसे रूप में जोड़ सकता है जो टुकड़ों में विभाजित होता है, फिर प्रत्येक टुकड़े को एक अलग वोट-काउंटर पर जमा किया जाता है। टुकड़ों को डिज़ाइन किया गया है ताकि वोट-काउंटर यह अनुमान न लगा सकें कि प्रत्येक टुकड़े में कोई भी परिवर्तन पूरे को कैसे प्रभावित करेगा, इस प्रकार, वोट-काउंटरों को उनके टुकड़ों के साथ छेड़छाड़ करने से हतोत्साहित किया जाता है। जब सभी वोट प्राप्त हो जाते हैं, तो वोट-काउंटर उन्हें जोड़ देते हैं, जिससे उन्हें कुल चुनाव परिणामों को पुनर्प्राप्त करने की अनुमति मिलती है।
मान लीजिए कि एक समुदाय विकेंद्रीकृत वोटिंग (मतदान) प्रोटोकॉल का उपयोग करके चुनाव करना चाहता है, लेकिन वे यह सुनिश्चित करना चाहते हैं कि मतगणना परिणामों के बारे में झूठ नहीं बोलेंगे। एक प्रकार के समरूपी गुप्त साझाकरण का उपयोग करना जिसे शमीर के गुप्त साझाकरण के रूप में जाना जाता है, समुदाय का प्रत्येक सदस्य अपने वोट को एक ऐसे रूप में जोड़ सकता है जो भागों में विभाजित होता है, फिर प्रत्येक भाग को एक अलग वोट-काउंटर पर निवेदित किया जाता है। भागों को डिज़ाइन किया गया है ताकि वोट-काउंटर यह अनुमान न लगा सकें कि प्रत्येक भाग में कोई भी परिवर्तन पूर्ण रूप से कैसे प्रभावित करेगा। इस प्रकार, वोट-काउंटरों को उनके भागों के साथ विकृत करने से हतोत्साहित किया जाता है। जब सभी वोट प्राप्त हो जाते हैं, तो वोट-काउंटर उन्हें जोड़ देते हैं, जिससे उन्हें कुल चुनाव परिणामों को पुनर्प्राप्त करने की स्वीकृति मिलती है।


विस्तार से, मान लीजिए कि हमारे पास एक चुनाव है:
विस्तार से, मान लीजिए कि हमारे पास एक चुनाव है:
* दो संभावित परिणाम, या तो हाँ या नहीं। हम उन परिणामों को क्रमशः +1 और -1 द्वारा संख्यात्मक रूप से प्रदर्शित करेंगे।
* दो संभावित परिणाम, या तो हाँ या नहीं है। हम उन परिणामों को क्रमशः +1 और -1 द्वारा संख्यात्मक रूप से प्रदर्शित करेंगे।
* कई अधिकारी, के, जो वोटों की गिनती करेंगे।
* कई अधिकारी k जो वोटों की गिनती करेंगे।
* कई मतदाता, एन, जो वोट जमा करेंगे।
* कई मतदाता n, जो वोट निवेदित करेंगे।


# अग्रिम में, प्रत्येक प्राधिकरण सार्वजनिक रूप से उपलब्ध संख्यात्मक कुंजी, x उत्पन्न करता है<sub>k</sub>.
# अग्रिम में, प्रत्येक प्राधिकरण सार्वजनिक रूप से उपलब्ध संख्यात्मक कुंजी ''x<sub>k</sub>'' उत्पन्न करता है।
# प्रत्येक मतदाता बहुपद पी में अपने वोट को एनकोड करता है<sub>n</sub>निम्नलिखित नियमों के अनुसार: बहुपद की डिग्री होनी चाहिए {{nowrap|''k'' − 1}}, इसकी निरंतर अवधि या तो +1 या -1 होनी चाहिए (वोटिंग हां या वोटिंग नहीं के अनुरूप), और इसके अन्य गुणांक यादृच्छिक रूप से उत्पन्न होने चाहिए।
# प्रत्येक मतदाता निम्नलिखित नियमों के अनुसार एक बहुपद p<sub>n</sub> में अपना वोट कूटबद्ध करता है: बहुपद की डिग्री k - 1 होनी चाहिए, इसकी निरंतर अवधि या तो +1 या -1 होनी चाहिए (वोटिंग हां या वोटिंग नहीं के अनुरूप) और इसके अन्य गुणांक यादृच्छिक रूप से उत्पन्न होने चाहिए।
# प्रत्येक मतदाता अपने बहुपद p के मान की गणना करता है<sub>n</sub>प्रत्येक प्राधिकरण की सार्वजनिक कुंजी x पर<sub>k</sub>.
# प्रत्येक मतदाता अपने बहुपद p<sub>n</sub> प्रत्येक प्राधिकरण की सार्वजनिक कुंजी x<sub>k</sub> के मान की गणना करता है
#* यह k अंक उत्पन्न करता है, प्रत्येक प्राधिकरण के लिए एक।
#* यह प्रत्येक प्राधिकरण के लिए k अंक एक बनाता है।
#* ये k बिंदु वोट के टुकड़े हैं: यदि आप सभी बिंदुओं को जानते हैं, तो आप बहुपद p का पता लगा सकते हैं<sub>n</sub>(और इसलिए आप यह पता लगा सकते हैं कि मतदाता ने कैसे मतदान किया)। हालाँकि, यदि आप केवल कुछ बिंदुओं को जानते हैं, तो आप बहुपद का पता नहीं लगा सकते। (ऐसा इसलिए है क्योंकि आपको डिग्री निर्धारित करने के लिए n अंक चाहिए-{{nowrap|(''n'' − 1)}} बहुपद। दो बिंदु एक रेखा निर्धारित करते हैं, तीन बिंदु एक परबोला निर्धारित करते हैं, आदि।)
#* ये k बिंदु वोट के "भाग" हैं: यदि आप सभी बिंदुओं को जानते हैं, तो आप बहुपद ''p<sub>n</sub>'' का पता लगा सकते हैं और इसलिए आप यह पता लगा सकते हैं कि मतदाता ने कैसे वोट किया। हालाँकि, यदि आप केवल कुछ बिंदुओं को जानते हैं, तो आप बहुपद का पता नहीं लगा सकते। ऐसा इसलिए है क्योंकि डिग्री-(n − 1) बहुपद निर्धारित करने के लिए आपको n बिंदुओं की आवश्यकता है। दो बिंदु एक रेखा निर्धारित करते हैं, तीन बिंदु एक परवलय आदि निर्धारित करते हैं।
# मतदाता प्रत्येक प्राधिकरण को वह मूल्य भेजता है जो प्राधिकरण की कुंजी का उपयोग करके उत्पादित किया गया था।
# मतदाता प्रत्येक प्राधिकारी को वह मान भेजता है जो प्राधिकरण की कुंजी का उपयोग करके उत्पादित किया गया था।
# प्रत्येक प्राधिकरण उन मूल्यों को एकत्र करता है जो उसे प्राप्त होते हैं। चूंकि प्रत्येक प्राधिकरण प्रत्येक मतदाता से केवल एक मान प्राप्त करता है, वह किसी दिए गए मतदाता के बहुपद की खोज नहीं कर सकता है। इसके अलावा, वह भविष्यवाणी नहीं कर सकता कि प्रस्तुतियाँ बदलने से वोट कैसे प्रभावित होगा।
# प्रत्येक प्राधिकरण उन मानो को निवेदित करता है जो उसे प्राप्त होते हैं। चूंकि प्रत्येक प्राधिकरण प्रत्येक मतदाता से केवल एक मान प्राप्त करता है, वह किसी दिए गए मतदाता के बहुपद की खोज नहीं कर सकता है। इसके अतिरिक्त, वह भविष्यवाणी नहीं कर सकता कि प्रस्तुतियाँ बदलने से वोट कैसे प्रभावित होगा।
# मतदाताओं द्वारा अपना वोट जमा करने के बाद, प्रत्येक प्राधिकरण k की गणना करता है और राशि A की घोषणा करता है<sub>k</sub>उसे प्राप्त सभी मूल्यों का।
# एक बार जब मतदाता अपना वोट निवेदित कर देते हैं, तो प्रत्येक प्राधिकरण ''A<sub>k</sub>'' उसके द्वारा प्राप्त किए गए सभी मानो के योग की गणना करता है और घोषणा करता है।
# के योग हैं, ए<sub>k</sub>; जब उन्हें एक साथ जोड़ दिया जाता है, तो वे एक अद्वितीय बहुपद P(x) निर्धारित करते हैं - विशेष रूप से, सभी मतदाता बहुपदों का योग: P(x) = p<sub>1</sub>(एक्स) + पी<sub>2</sub>(एक्स) + ... + पी<sub>''n''</sub>(एक्स)
# k का योग ''A<sub>k</sub>'' हैं जब उन्हें एक साथ जोड़ा जाता है, तो वे एक अद्वितीय बहुपद P(x) निर्धारित करते हैं - विशेष रूप से, सभी मतदाता बहुपदों का ''P''(''x'') = ''p''<sub>1</sub>(''x'') + ''p''<sub>2</sub>(''x'') + ... + ''p<sub>n</sub>''(''x'') योग होता है।
#* P(x) की निरंतर अवधि वास्तव में सभी मतों का योग है, क्योंकि P(x) की निरंतर अवधि व्यक्तिगत p की निरंतर शर्तों का योग है<sub>n</sub>.
#* P(x) की निरंतर अवधि वास्तव में सभी मतों का योग है, क्योंकि P(x) की निरंतर अवधि व्यक्तिगत p<sub>n</sub> की निरंतर शर्तों का योग है
#* इस प्रकार P(x) की निरंतर अवधि कुल चुनाव परिणाम प्रदान करती है: यदि यह सकारात्मक है, तो अधिक लोगों ने -1 की तुलना में +1 के लिए मतदान किया; यदि यह नकारात्मक है, तो अधिक लोगों ने +1 की तुलना में -1 को वोट दिया।
#* इस प्रकार P(x) की निरंतर अवधि कुल चुनाव परिणाम प्रदान करती है: यदि यह सकारात्मक है, तो अधिक लोगों ने -1 की तुलना में +1 के लिए मतदान किया; यदि यह नकारात्मक है, तो अधिक लोगों ने +1 की तुलना में -1 को वोट दिया है।


[[File:Homomorphic secret sharing, voting example.svg|frame|center|alt=A table illustrating the voting protocol| मतदान प्रोटोकॉल का एक उदाहरण। प्रत्येक स्तंभ एक विशेष मतदाता के वोट के टुकड़ों का प्रतिनिधित्व करता है। प्रत्येक पंक्ति एक विशेष प्राधिकरण द्वारा प्राप्त टुकड़ों का प्रतिनिधित्व करती है।]]
[[File:Homomorphic secret sharing, voting example.svg|frame|center|alt=A table illustrating the voting protocol| वोटिंग (मतदान) प्रोटोकॉल का एक उदाहरण। प्रत्येक स्तंभ एक विशेष मतदाता के वोट के भागों का प्रतिनिधित्व करता है। प्रत्येक पंक्ति एक विशेष प्राधिकरण द्वारा प्राप्त भागों का प्रतिनिधित्व करती है।]]


=== सुविधाएँ ===
=== सुविधाएँ ===


यह प्रोटोकॉल तब तक काम करता है जब तक कि सभी k प्राधिकरण भ्रष्ट नहीं हैं - यदि वे थे, तो वे प्रत्येक मतदाता के लिए P(x) के पुनर्निर्माण के लिए सहयोग कर सकते थे और बाद में वोटों को बदल भी सकते थे।
यह प्रोटोकॉल तब तक काम करता है जब तक कि सभी k प्राधिकरण भ्रष्ट नहीं हैं - यदि वे होते तो वे प्रत्येक मतदाता के लिए P(x) के पुनर्निर्माण में सहयोग कर सकते थे और बाद में वोटों को बदल भी सकते थे।


[[क्रिप्टोग्राफिक प्रोटोकॉल]] की आवश्यकता है {{nowrap|''t'' + 1}} अधिकारियों को पूरा किया जाना है, इसलिए मामले में हैं {{nowrap|''N'' > ''t'' + 1}} अधिकारी, {{nowrap|''N'' ''t'' − 1}} अधिकारियों को भ्रष्ट किया जा सकता है, जो प्रोटोकॉल को कुछ हद तक मजबूती देता है।
प्रोटोकॉल को पूरा करने के लिए t + 1 प्राधिकरणों की आवश्यकता होती है, इसलिए N > t + 1 प्राधिकरण होने की स्थिति में, N − t − 1 प्राधिकरण विकृत हो सकते हैं, जो प्रोटोकॉल को अधिकांश सीमा तक बाध्य करता है।


प्रोटोकॉल मतदाताओं की आईडी का प्रबंधन करता है (आईडी मतपत्रों के साथ जमा की गई थी) और इसलिए यह सत्यापित कर सकता है कि केवल वैध मतदाताओं ने मतदान किया है।
प्रोटोकॉल मतदाताओं की आईडी का प्रबंधन करता है (आईडी मतपत्रों के साथ निवेदित की गई थी) और इसलिए यह सत्यापित कर सकता है कि केवल वैध मतदाताओं ने मतदान किया है।


टी पर मान्यताओं के तहत:
t पर अवधारणाओ के अंतर्गत:
#एक मतपत्र को आईडी पर वापस नहीं भेजा जा सकता है, इसलिए मतदाताओं की गोपनीयता संरक्षित है।
#मतपत्र को आईडी पर वापस नहीं भेजा जा सकता है, इसलिए मतदाताओं की गोपनीयता संरक्षित है।
#एक मतदाता यह साबित नहीं कर सकता कि उसने कैसे मतदान किया।
#मतदाता यह प्रमाणित नहीं कर सकता कि उसने कैसे मतदान किया।
#वोट सत्यापित करना असंभव है।
#वोट सत्यापित करना असंभव है।


क्रिप्टोग्राफिक प्रोटोकॉल स्पष्ट रूप से मतपत्रों के भ्रष्टाचार को रोकता है।
क्रिप्टोग्राफिक प्रोटोकॉल स्पष्ट रूप से मतपत्रों के भ्रष्टाचार को रोकता है। ऐसा इसलिए है क्योंकि अधिकारियों के पास मतपत्र को बदलने के लिए कोई प्रोत्साहन नहीं है क्योंकि प्रत्येक प्राधिकरण के पास मतपत्र का केवल एक भाग होता है और उन्हें यह नहीं पता होता है कि इस भाग को बदलने से परिणाम कैसे प्रभावित होगा।
ऐसा इसलिए है क्योंकि अधिकारियों के पास मतपत्र को बदलने के लिए कोई प्रोत्साहन नहीं है क्योंकि प्रत्येक प्राधिकरण के पास मतपत्र का केवल एक हिस्सा होता है और उन्हें यह नहीं पता होता है कि इस हिस्से को बदलने से परिणाम कैसे प्रभावित होगा।


=== भेद्यता ===
=== '''आलोचनीयता''' ===


*मतदाता निश्चित नहीं हो सकता कि उसका मत सही दर्ज किया गया है।
*मतदाता निश्चित नहीं हो सकता कि उसका मत सही रिकॉर्ड किया गया है।
*अधिकारी यह सुनिश्चित नहीं कर सकते कि वोट कानूनी और बराबर थे, उदाहरण के लिए मतदाता एक मूल्य चुन सकता है जो एक वैध विकल्प नहीं है (अर्थात नहीं {{mset|−1, 1}}) जैसे -20, 50, जो परिणामों को उनके पक्ष में झुका देंगे।
*अधिकारी यह सुनिश्चित नहीं कर सकते कि वोट वैध और बराबर थे, उदाहरण के लिए मतदाता एक मान चयन कर सकता है जो एक वैध विकल्प नहीं है (अर्थात नहीं {{mset|−1, 1}}) जैसे -20, 50, जो परिणामों को उनके पक्ष में जाएगा।


== यह भी देखें ==
== यह भी देखें ==
* [[एंड-टू-एंड ऑडिटेबल वोटिंग सिस्टम]]
* [[एंड-टू-एंड ऑडिटेबल वोटिंग सिस्टम|एंड-टू-एंड ऑडिटेबल (लेखापरीक्षा योग्य) वोटिंग प्रणाली]]
* [[ इलेक्ट्रॉनिक मतदान ]]
* [[ इलेक्ट्रॉनिक मतदान ]]
* वोटिंग मशीनों का प्रमाणन
* मतदान मशीनों का प्रमाणन
* चुनावी धोखाधड़ी#इलेक्ट्रॉनिक_मतदान_मशीनों से छेड़छाड़
* चुनाव प्रवंचना को रोकना: इलेक्ट्रॉनिक वोटिंग का परीक्षण और प्रमाणन
* चुनाव धोखाधड़ी#इलेक्ट्रॉनिक वोटिंग का परीक्षण और प्रमाणन|चुनाव धोखाधड़ी को रोकना: इलेक्ट्रॉनिक वोटिंग का परीक्षण और प्रमाणन
*मतगणना प्रणाली
* [[मतगणना प्रणाली]]
* E-लोकतंत्र
* -लोकतंत्र
* [[सुरक्षित बहुदलीय संगणना]]
* [[सुरक्षित बहुदलीय संगणना]]
* [[मानसिक पोकर]]
* [[मानसिक पोकर|मानसिक निर्विकार]]


==संदर्भ==
==संदर्भ==

Revision as of 12:23, 14 May 2023

क्रिप्टोग्राफी (कूटलेखन) में, समरूपी गोपनीयता साझाकरण एक प्रकार का गोपनीयता साझाकरण एल्गोरिथम है जिसमें समरूपी एन्क्रिप्शन के माध्यम से गोपनीयता को एन्क्रिप्ट किया जाता है। एक समरूपता एक बीजगणितीय संरचना से समान प्रकार के दूसरे में परिवर्तन है ताकि संरचना संरक्षित रहे। महत्वपूर्ण रूप से, इसका तात्पर्य यह है कि मूल डेटा के प्रत्येक प्रकार के प्रकलन के लिए, रूपांतरित डेटा का एक समान प्रकलन होता है।[1]


तकनीक

होमोमॉर्फिक गुप्त साझाकरण का उपयोग कई प्राप्तकर्ताओं को एक गोपनीयता प्रसारित करने के लिए किया जाता है:

  1. एक समरूपता का उपयोग करके गोपनीयता को रूपांतरित करें। यह प्रायः गोपनीयता को एक ऐसे रूप में रखता है जिसे प्रकलन करना या संग्रहित करना आसान होता है। विशेष रूप से, चरण (2) द्वारा आवश्यक नए रूप को 'विभाजित' करने का एक स्वाभाविक तरीका हो सकता है।
  2. प्रत्येक प्राप्तकर्ता के लिए रूपांतरित रहस्य को कई भागों में विभाजित करें। गोपनीयता को इस तरह से विभाजित किया जाना चाहिए कि इसे केवल तभी पुनर्प्राप्त किया जा सके जब सभी या अधिकांश भाग (गुप्त साझाकरण देखें।) संयुक्त हों।
  3. प्राप्तकर्ताओं में से प्रत्येक को गोपनीयता के भागों को वितरित करें।
  4. परिवर्तित गोपनीयता को पुनर्प्राप्त करने के लिए प्राप्तकर्ताओं प्रत्येक भाग को एक निर्दिष्ट समय पर संयोजित करें।
  5. मूल गोपनीयता को पुनर्प्राप्त करने के लिए समरूपता को प्रतिवर्त कर दें।

उदाहरण

मान लीजिए कि एक समुदाय विकेंद्रीकृत वोटिंग (मतदान) प्रोटोकॉल का उपयोग करके चुनाव करना चाहता है, लेकिन वे यह सुनिश्चित करना चाहते हैं कि मतगणना परिणामों के बारे में झूठ नहीं बोलेंगे। एक प्रकार के समरूपी गुप्त साझाकरण का उपयोग करना जिसे शमीर के गुप्त साझाकरण के रूप में जाना जाता है, समुदाय का प्रत्येक सदस्य अपने वोट को एक ऐसे रूप में जोड़ सकता है जो भागों में विभाजित होता है, फिर प्रत्येक भाग को एक अलग वोट-काउंटर पर निवेदित किया जाता है। भागों को डिज़ाइन किया गया है ताकि वोट-काउंटर यह अनुमान न लगा सकें कि प्रत्येक भाग में कोई भी परिवर्तन पूर्ण रूप से कैसे प्रभावित करेगा। इस प्रकार, वोट-काउंटरों को उनके भागों के साथ विकृत करने से हतोत्साहित किया जाता है। जब सभी वोट प्राप्त हो जाते हैं, तो वोट-काउंटर उन्हें जोड़ देते हैं, जिससे उन्हें कुल चुनाव परिणामों को पुनर्प्राप्त करने की स्वीकृति मिलती है।

विस्तार से, मान लीजिए कि हमारे पास एक चुनाव है:

  • दो संभावित परिणाम, या तो हाँ या नहीं है। हम उन परिणामों को क्रमशः +1 और -1 द्वारा संख्यात्मक रूप से प्रदर्शित करेंगे।
  • कई अधिकारी k जो वोटों की गिनती करेंगे।
  • कई मतदाता n, जो वोट निवेदित करेंगे।
  1. अग्रिम में, प्रत्येक प्राधिकरण सार्वजनिक रूप से उपलब्ध संख्यात्मक कुंजी xk उत्पन्न करता है।
  2. प्रत्येक मतदाता निम्नलिखित नियमों के अनुसार एक बहुपद pn में अपना वोट कूटबद्ध करता है: बहुपद की डिग्री k - 1 होनी चाहिए, इसकी निरंतर अवधि या तो +1 या -1 होनी चाहिए (वोटिंग हां या वोटिंग नहीं के अनुरूप) और इसके अन्य गुणांक यादृच्छिक रूप से उत्पन्न होने चाहिए।
  3. प्रत्येक मतदाता अपने बहुपद pn प्रत्येक प्राधिकरण की सार्वजनिक कुंजी xk के मान की गणना करता है
    • यह प्रत्येक प्राधिकरण के लिए k अंक एक बनाता है।
    • ये k बिंदु वोट के "भाग" हैं: यदि आप सभी बिंदुओं को जानते हैं, तो आप बहुपद pn का पता लगा सकते हैं और इसलिए आप यह पता लगा सकते हैं कि मतदाता ने कैसे वोट किया। हालाँकि, यदि आप केवल कुछ बिंदुओं को जानते हैं, तो आप बहुपद का पता नहीं लगा सकते। ऐसा इसलिए है क्योंकि डिग्री-(n − 1) बहुपद निर्धारित करने के लिए आपको n बिंदुओं की आवश्यकता है। दो बिंदु एक रेखा निर्धारित करते हैं, तीन बिंदु एक परवलय आदि निर्धारित करते हैं।
  4. मतदाता प्रत्येक प्राधिकारी को वह मान भेजता है जो प्राधिकरण की कुंजी का उपयोग करके उत्पादित किया गया था।
  5. प्रत्येक प्राधिकरण उन मानो को निवेदित करता है जो उसे प्राप्त होते हैं। चूंकि प्रत्येक प्राधिकरण प्रत्येक मतदाता से केवल एक मान प्राप्त करता है, वह किसी दिए गए मतदाता के बहुपद की खोज नहीं कर सकता है। इसके अतिरिक्त, वह भविष्यवाणी नहीं कर सकता कि प्रस्तुतियाँ बदलने से वोट कैसे प्रभावित होगा।
  6. एक बार जब मतदाता अपना वोट निवेदित कर देते हैं, तो प्रत्येक प्राधिकरण Ak उसके द्वारा प्राप्त किए गए सभी मानो के योग की गणना करता है और घोषणा करता है।
  7. k का योग Ak हैं जब उन्हें एक साथ जोड़ा जाता है, तो वे एक अद्वितीय बहुपद P(x) निर्धारित करते हैं - विशेष रूप से, सभी मतदाता बहुपदों का P(x) = p1(x) + p2(x) + ... + pn(x) योग होता है।
    • P(x) की निरंतर अवधि वास्तव में सभी मतों का योग है, क्योंकि P(x) की निरंतर अवधि व्यक्तिगत pn की निरंतर शर्तों का योग है
    • इस प्रकार P(x) की निरंतर अवधि कुल चुनाव परिणाम प्रदान करती है: यदि यह सकारात्मक है, तो अधिक लोगों ने -1 की तुलना में +1 के लिए मतदान किया; यदि यह नकारात्मक है, तो अधिक लोगों ने +1 की तुलना में -1 को वोट दिया है।
File:Homomorphic secret sharing, voting example.svg
वोटिंग (मतदान) प्रोटोकॉल का एक उदाहरण। प्रत्येक स्तंभ एक विशेष मतदाता के वोट के भागों का प्रतिनिधित्व करता है। प्रत्येक पंक्ति एक विशेष प्राधिकरण द्वारा प्राप्त भागों का प्रतिनिधित्व करती है।

सुविधाएँ

यह प्रोटोकॉल तब तक काम करता है जब तक कि सभी k प्राधिकरण भ्रष्ट नहीं हैं - यदि वे होते तो वे प्रत्येक मतदाता के लिए P(x) के पुनर्निर्माण में सहयोग कर सकते थे और बाद में वोटों को बदल भी सकते थे।

प्रोटोकॉल को पूरा करने के लिए t + 1 प्राधिकरणों की आवश्यकता होती है, इसलिए N > t + 1 प्राधिकरण होने की स्थिति में, N − t − 1 प्राधिकरण विकृत हो सकते हैं, जो प्रोटोकॉल को अधिकांश सीमा तक बाध्य करता है।

प्रोटोकॉल मतदाताओं की आईडी का प्रबंधन करता है (आईडी मतपत्रों के साथ निवेदित की गई थी) और इसलिए यह सत्यापित कर सकता है कि केवल वैध मतदाताओं ने मतदान किया है।

t पर अवधारणाओ के अंतर्गत:

  1. मतपत्र को आईडी पर वापस नहीं भेजा जा सकता है, इसलिए मतदाताओं की गोपनीयता संरक्षित है।
  2. मतदाता यह प्रमाणित नहीं कर सकता कि उसने कैसे मतदान किया।
  3. वोट सत्यापित करना असंभव है।

क्रिप्टोग्राफिक प्रोटोकॉल स्पष्ट रूप से मतपत्रों के भ्रष्टाचार को रोकता है। ऐसा इसलिए है क्योंकि अधिकारियों के पास मतपत्र को बदलने के लिए कोई प्रोत्साहन नहीं है क्योंकि प्रत्येक प्राधिकरण के पास मतपत्र का केवल एक भाग होता है और उन्हें यह नहीं पता होता है कि इस भाग को बदलने से परिणाम कैसे प्रभावित होगा।

आलोचनीयता

  • मतदाता निश्चित नहीं हो सकता कि उसका मत सही रिकॉर्ड किया गया है।
  • अधिकारी यह सुनिश्चित नहीं कर सकते कि वोट वैध और बराबर थे, उदाहरण के लिए मतदाता एक मान चयन कर सकता है जो एक वैध विकल्प नहीं है (अर्थात नहीं {−1, 1}) जैसे -20, 50, जो परिणामों को उनके पक्ष में जाएगा।

यह भी देखें

संदर्भ

  1. Schoenmakers, Berry (1999). "एक साधारण सार्वजनिक सत्यापन योग्य गुप्त साझाकरण योजना और इलेक्ट्रॉनिक वोटिंग के लिए इसका अनुप्रयोग". Advances in Cryptology. 1666: 148–164. CiteSeerX 10.1.1.102.9375.