{"id":94097,"date":"2020-09-12T19:42:31","date_gmt":"2020-09-12T17:42:31","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/obzor-proczedury-anonimizaczii-sistemy-distanczionnogo-elektronnogo-golosovaniya"},"modified":"2020-09-12T19:42:31","modified_gmt":"2020-09-12T17:42:31","slug":"obzor-proczedury-anonimizaczii-sistemy-distanczionnogo-elektronnogo-golosovaniya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/obzor-proczedury-anonimizaczii-sistemy-distanczionnogo-elektronnogo-golosovaniya","title":{"rendered":"Overview of the remote electronic voting system anonymization procedure","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>In <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/rostelecom\/blog\/518090\/\">in previous publications<\/a><\/noindex> we noted that in the remote electronic voting system we are discussing, a cryptographic algorithm called 'blind signature' is used to ensure the secrecy of voting and the anonymization of the voter. In this article, we will explore it in more detail.<\/p>\n<p>First, let\u2019s turn to a well-known and familiar electronic signature algorithm that is widely used in various information systems. The foundation of electronic signatures lies in cryptographic algorithms of asymmetric encryption. Asymmetric encryption is the encryption that uses 2 keys: one for encryption and the other for decryption. These are referred to as the public key and the private key. The public key is known to others, while the private key is known only to the owner of the electronic signature and is kept in a location inaccessible to others.<\/p>\n<p>When signing occurs, the following happens: first, the electronic document is transformed through mathematical processes into a sequence of characters of a specific size \u2013 this is called a hash function. <\/p>\n<p>The resulting character sequence (hash of the document) is encrypted by the document sender using the private key and sent to the recipient along with the public key. The recipient decrypts the character sequence using the public key, applies the exact same hash function to the document, and compares the transformation result with the result of the decryption. If they match, then the document has not been modified since it was signed by the sender.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nThe described actions allow for verification that the document has not been altered, but they do not confirm that the sender is indeed who they claim to be. Therefore, we need a third party that is trusted by both the sender and the recipient. To do this, before sending the document, the sender consults the third party and asks them to sign their public key with their own electronic signature. The sender then sends the document, their public key, and the signature of the third party\u2019s key to the recipient. The recipient checks the third party's signature on the public key and trusts the signature received with the document.<\/p>\n<p>Now let's discuss what a \"blind signature\" is and how it can assist us in anonymization.<\/p>\n<p>Let's imagine that in the example described above, the sender is a voter, the document is a ballot, and the recipient is the electoral commission, or as we mentioned, the \"vote counting and accounting component.\" As a third party (validator), we will have the \"Voter List\" component. In this case, the process could work as follows.<\/p>\n<p><img decoding=\"async\" alt=\"Overview of the remote electronic voting system anonymization procedure\" src=\"\/wp-content\/uploads\/2020\/09\/bc2935bfc22f112dc224cb7bd4e3277c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nThe voter generates a key pair on their device \u2013 a private key and a public key. Since these keys are created on their personal device in the browser, they are known only to the voter. <\/p>\n<p>Using these keys, the voter will sign the ballot to ensure its integrity. The signed ballot and the public key are sent to the electoral commission. For the ballot to be accepted by the \"Distributed Storage and Vote Counting\" component, it must verify that the public key is signed by the validator.<\/p>\n<p>The validator (the \"Voter List\" component) will sign the public key only after confirming that the voter is present on the voter list.<\/p>\n<p>To maintain the secrecy of the vote, the public key generated by the voter on their device must not be known to anyone else. Therefore, the validator must sign something that is unknown to them. This task seems impossible, but cryptographic algorithms come to the aid \u2013 specifically, the \"blind signature\" algorithm.<\/p>\n<p>First, the public key on the voter's device must be masked. Masking involves performing specific mathematical operations on the user's device. Imagine you think of a random number between 1 and 100, then a second random number between 1 and 10, and a third random number between 10 and 50; you raise the initially conceived number to the power of the second number and divide it by the third without a remainder. You share the result with others. It would be easy for you to reconstruct the original number since you know the sequence of operations and the numbers you thought of. However, others will not be able to do so.<\/p>\n<p>The masking (blinding) of the public key is carried out according to a special cryptographic algorithm. As a result, the validator signs the masked public key, while the original key remains unknown to them. The peculiarity of the algorithm is that the user (voter), upon receiving the signature on the masked key, can perform inversions and obtain a valid signature for the original, unmasked key. <\/p>\n<p>The described algorithm is widely used in secret voting protocols. In the remote electronic voting system, the RSA algorithm with a key length of 4096 bits is currently used for blind signatures.<\/p>\n<p>In general terms, the anonymization procedure looks as follows.<\/p>\n<ol>\n<li>When creating a vote, a separate key pair for the \"validator\" is generated, with the public key recorded in the blockchain. A unique key pair is created for each vote.<\/li>\n<li>The user is identified in the identification system (in this case, in the ESIA) and provides consent for the transfer of their identification data from the identification system to the PTK DEG.<\/li>\n<li>The \"Voter List\" component of the PTK DEG checks the user's presence in the voter list.<\/li>\n<li>The user's personal keys\u2014private and public\u2014are generated on the user's device, known only to them.<\/li>\n<li>On the user's device, the public key is masked.<\/li>\n<li>Along with the identification data and the masked public key, the user queries the \"Voter List\" component. <\/li>\n<li>The component verifies again the user's presence in the list and confirms that they have not previously received a signature.<\/li>\n<li>If all checks are successful, the key is signed.<\/li>\n<li>The fact of the key's signature is recorded in the blockchain.<\/li>\n<li>The user un-masks the public key on their device and obtains the private key, public key, and the signature on the public key, with all keys known only to them.<\/li>\n<li>After that, the user is transferred to an anonymous zone\u2014on a separate website edg2020.gov.ru\u2014where it is impossible to identify them (for example, before the transition, they can connect to <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/en\/vpn\/\"   title=\"VPN\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"130\">VPN<\/a> or change the internet service provider, completely changing the IP address).<\/li>\n<li>The acceptance of the ballot will depend only on whether the signature of the \"validator\" passes verification and whether such a key has not been used previously.<\/li>\n<\/ol>\n<p>\nNext, we will provide a description of the algorithm from the perspective of cryptography.<br \/>\nSignature parameters and notations:<\/p>\n<p><img decoding=\"async\" alt=\"Overview of the remote electronic voting system anonymization procedure\" src=\"\/wp-content\/uploads\/2020\/09\/8c8063d0e2345e62d37460ecfcc2f54a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Overview of the remote electronic voting system anonymization procedure\" src=\"\/wp-content\/uploads\/2020\/09\/054785634ecfbd61684fd9eb7044e29a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<i>M <\/i>\u2013 in padding FDN format for signature.<br \/>\n<br \/>Source: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/rostelecom\/blog\/518610\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f\u0445 \u043c\u044b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043d\u0430\u043c\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0434\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0442\u0430\u0439\u043d\u044b \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0430\u043d\u043e\u043d\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u00ab\u0441\u043b\u0435\u043f\u043e\u0439 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0434\u043f\u0438\u0441\u0438\u00bb. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0435\u0433\u043e \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043e\u0431\u0440\u0430\u0442\u0438\u043c\u0441\u044f \u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u043c\u0443 \u0438 \u0437\u043d\u0430\u043a\u043e\u043c\u043e\u043c\u0443 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0434\u043f\u0438\u0441\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0448\u0438\u0440\u043e\u043a\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0432 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u043e\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u0412 \u043e\u0441\u043d\u043e\u0432\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":94098,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-94097","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f\u0445 \u043c\u044b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043d\u0430\u043c\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0434\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0433\u043e.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/obzor-proczedury-anonimizaczii-sistemy-distanczionnogo-elektronnogo-golosovaniya\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041e\u0431\u0437\u043e\u0440 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b \u0430\u043d\u043e\u043d\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043d\u0438\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f\u0445 \u043c\u044b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043d\u0430\u043c\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0434\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0433\u043e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/obzor-proczedury-anonimizaczii-sistemy-distanczionnogo-elektronnogo-golosovaniya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-09-12T17:42:31+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-09-12T17:42:31+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Overview of the anonymization procedure for the remote electronic voting system | ProHoster","description":"In previous publications, we focused on the system of remote electronic voting we are discussing.","canonical_url":"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/obzor-proczedury-anonimizaczii-sistemy-distanczionnogo-elektronnogo-golosovaniya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041e\u0431\u0437\u043e\u0440 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b \u0430\u043d\u043e\u043d\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043d\u0438\u044f | ProHoster","og:description":"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f\u0445 \u043c\u044b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043d\u0430\u043c\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0434\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0433\u043e.","og:url":"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/obzor-proczedury-anonimizaczii-sistemy-distanczionnogo-elektronnogo-golosovaniya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-09-12T17:42:31+00:00","article:modified_time":"2020-09-12T17:42:31+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"94097","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:33:44","updated":"2026-02-04 14:42:07","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/94097","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=94097"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/94097\/revisions"}],"predecessor-version":[{"id":156759,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/94097\/revisions\/156759"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media\/94098"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=94097"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=94097"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=94097"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}