InfoQ Geekathon 大模型技术应用创新大赛 了解详情
写点什么

莫斯科用区块链进行投票,遭人 20 分钟破解并赢走官方 15000 美元奖金

  • 2019-09-09
  • 本文字数:1828 字

    阅读完需:约 6 分钟

莫斯科用区块链进行投票,遭人20分钟破解并赢走官方15000美元奖金

一位法国安全研究员已经在基于区块链的投票系统中找到了一个严重的漏洞,而俄罗斯官方计划于 2019 年 9 月举行的 2019 年莫斯科市杜马选举中使用该系统。


洛林大学(Lorraine University)的学者 、INRIA(法国数字科学研究所)的研究员 Pierrick Gaudry 发现,他可以根据该投票系统的公钥计算出该系统的私钥。这些私钥和公钥一起用于加密本次选举中的用户投票情况。

破解莫斯科区块链投票系统只需 20 分钟

Gaudry 把这个问题归咎于俄罗斯官方使用的EIGamal加密方案的一种变体,它使用的加密密钥大小太小而无法保证安全。这意味着,现代计算机可以在几分钟内就破解该加密方案。


Gaudry在本月初发布的一份报告中提到:“使用一台标准的个人计算机,并且只使用公开可得的免费软件,就可以在 20 分钟内破解该系统。”


他补充道:“如果这些(私钥)被知悉,任何加密数据可以像创建它们一样快地被解密。”



至于攻击者可以用这些加密密钥来做什么事,目前尚不得知,由于该投票系统的协议还没有英文版本,因此,Gaudry 还无法进行进一步的调查。


这位法国研究员说到:“在没有读过该协议前,很难准确地说出由此而引发的后果,因为,尽管我们认为,目前还不清楚,这种用于加密投票人弱加密方法对于攻击者来说,得到投票和投票人之间的相应关系有多么容易。”


“在最糟糕的情形下,所有使用该系统的投票人在完成投票时,任何人都可以知道投票情况。”

第一个这样的系统

莫斯科的区块链投票系统是第一个这样的系统。它是由莫斯科信息技术部门内部开发的,以“智能合约”的形式运行于以太坊区块链平台上。


该投票系统计划于 9 月 8 日投入运行,将运行 12 个小时,和官方投票时间同步。


一旦在选举日(9 月 8 日)部署完毕,莫斯科的居民就可以通过互联网、手机或家用电脑进行投票,并且把他们的投票加密记录在公共以太坊区块链上。


这个基于互联网和区块链的投票系统不仅仅限于在国外旅行和行动不便的人使用。每个事先注册的人都可以使用该系统,这意味着,该系统有潜力去吸引那些通常不去投票的人。


当 2019 年 9 月部署好该系统时,莫斯科的互联网投票系统将成为第一个基于区块链、具有法律约束力的系统,而不仅仅是在有限制的测试中使用。

莫斯科官方承诺解决这个问题

由于莫斯科官方于 7 月在GitHub上公开了其源代码,并要求安全研究人员进行测试,因此,该法国学者能够测试莫斯科即将推出的基于区块链的投票系统。


在 Gaudry 的发现公布之后,莫斯科的信息技术部门承诺修补报道中的问题,即弱私钥的使用。


发言人在网上的回应中表示:“我们绝对同意 256x3 的私钥长度不够安全。这个实施只是在试用期使用。几天后,私钥的长度将改为 1024。”


Gaudry 发现莫斯科官方修改了 EIGamal 加密方法,以便使用三个较弱的密钥,而不是一个密钥,无法解释信息部门为什么选择这个做法。


这位法国研究员认为:“这是个迷。我们可以想到的唯一可能的解释是,设计者认为这可以弥补所涉及的质数太小的密钥大小。但是 3 个长度为 256 位的质数和 1 个长度为 768 位的质数真的不一样。”


然而,根据Gaudry的说法,长度为 1024 位的密钥可能还不够,他认为官方应该使用长度至少为 2048 位密钥的其中之一。


这个设计决定也让 Attivo Networks 的首席安全策略官 Chris Roberts 感到困惑。


Roberts 说:“到底是什么原因让该平台的开发人员首先选择一个弱长度的密钥显然是个问题。是缺乏知识和理解吗?或者只是要得到最快的速度和效率或其他东西呢?”

“美国的系统可以从俄罗斯那里学到很多东西”

他补充道:“对于这个,有个好的方面。莫斯科允许其他人查看、研究代码,然后帮助他们完善安全性。”


此外,莫斯科官方还批准了给 Gaudry 的金钱奖励,根据俄罗斯新闻网站 Meduza 的报道,Gaudry将获得1百万卢布,约 15000 美元。


根据7月发布的一份报告,Gaudry 获得的奖励接近莫斯科当地政府允诺给漏洞猎手的最高奖,但是,当代码放上 GitHub 时,允诺的奖励是 1 百 50 万卢布(22500 美元)。


Roberts 表示:“美国的系统可以从俄罗斯的这个系统中学到很多东西。” 他指的是美国最近在试图保护其电子投票机安全性过程中所遭受到的过多的日益增长痛苦


这些日益增长的痛苦主要来自投票机供应商,他们拒绝与网络安全社区接触,而莫斯科政府在这方面没有问题。


美国使用的电子投票机和选举系统的这种封闭性正是微软最近宣布在 GitHub 上开源一种新技术的原因,该新技术用于保护电子投票机安全性


原文链接:


Moscow’s blockchain voting system cracked a month before election


活动推荐:

2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。

2019-09-09 16:265792
用户头像

发布了 199 篇内容, 共 79.0 次阅读, 收获喜欢 292 次。

关注

评论

发布
暂无评论
发现更多内容

高性能MySQL

田维常

MySQL

大神带你一睹为快!阿里技术官亲自码了“2000页的Spring全家桶笔记”真牛逼!

比伯

Java 编程 程序员 架构 计算机

ECS实践案例丨逻辑卷的创建和扩容操作指导

华为云开发者联盟

数据库 数据 服务

APP专项测试 —— 弱网测试

行者AI

测试

摸透原理|一文带你了解 Redis 列表底层的实现方式

Java架构师迁哥

用 JavaScript 实现寻路算法 —— 编程训练

三钻

Java 算法 大前端 七日更 寻路算法

滴滴Java后台3面题目:网络+内存溢出+各种锁+高性能+消息队列

Java架构之路

Java 程序员 架构 面试 编程语言

四年Java开发,刚从美团、京东、阿里面试归来(已拿offer),分享个人面经

Java架构之路

Java 程序员 架构 面试 编程语言

使用LL算法构建AST —— 编程训练

三钻

Java 算法 大前端 七日更

软件测试的方法

测试人生路

软件测试

LeetCode题解:42. 接雨水,暴力法,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

如何阅读别人的源码

熊斌

学习 Code Review 源码阅读 七日更

区块链数字货币多币种钱包开发案例

用 JavaScript 实现一个 TicTacToe 游戏 —— 编程训练

三钻

Java 算法 大前端 游戏开发 七日更

真香!阿里P8耗时半年著作660页Java高并发与网络编程实战总结

Java架构之路

Java 程序员 架构 面试 编程语言

传统数仓如何转型大数据

数据社

大数据 数据仓库 七日更

从中心到边缘,IoT正变为互联网之上的一张大网

华为云开发者联盟

物联网 IoT 网络

Nice!有了这份Alibaba内部 “Java面试宝典”,跳槽面试稳了

Java架构之路

Java 程序员 架构 面试 编程语言

SpacePX挖矿系统APP开发|SpacePX挖矿软件开发

系统开发

滴滴内部框架手册:Spring5+SpringMVC3+MyBatis3.X

Java架构追梦

Java spring 架构 mybatis springmvc

顶会两篇论文连发,华为云医疗AI低调中崭露头角

华为云开发者联盟

人工智能 医疗 华为云

都 2021 年了,Serverless 能取代微服务吗?

Serverless Devs

Serverless 微服务 运维 云原生 后端

你不好奇 Linux 网络发包过程吗?

小林coding

Linux 操作系统 网络

编写令人愉悦的API接口(二)

Geek_42915f

Java APi设计 接口规范

程序员必看的Redis6.0多线程性能测试结果及分析 你看懂了嘛?

比伯

Java 编程 架构 面试

阿里P8整理出Nginx笔记:Nginx应用与运维实战核心篇

996小迁

Java nginx 架构 面试

Serverless 是一种思想状态

Serverless Devs

Java Serverless 运维 云原生 后端

波场智能合约系统开发技术方案丨智能合约DAPP系统开发源码

架构师训练营第 1 期 第 13 周作业

李循律

极客大学架构师训练营

应对游戏业务的四大“崩溃”场景有妙招,安全畅玩不是梦!

华为云开发者联盟

游戏 场景 崩溃

字典树 —— 字符串分析算法

三钻

算法 大前端 七日更 字典树

  • 扫码添加小助手
    领取最新资料包
莫斯科用区块链进行投票,遭人20分钟破解并赢走官方15000美元奖金_区块链_Catalin Cimpanu_InfoQ精选文章