如何实现匿名投票? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
meeop

如何实现匿名投票?

  •  
  •   meeop Feb 6, 2024 1871 views
    This topic created in 815 days ago, the information mentioned may be changed or developed.

    问了 ai,感觉方案都有缺陷

    前置条件:

    允许事先对每个人验证身份,并官方提供可能的认证信息

    要求:

    1 投票结果是准确的,即可以确定确实是有资格的 n 个人投票并投给特定提案

    2 投票是匿名的,即只能确定投票人有投票资格,而不知道具体是谁(包括主持人或者组织者也不知道)

    3 完全线上化,算法化

    其他边界条件:

    一人一票

    只能本人投票,不可代他人投票

    除非全部参与者坐到一起提供全部信息并且不撒谎,否则无法确认每一票的投票人

    假定大多数人是诚信的,少数人可能会破坏投票

    如果有破坏者,是可以在大多数人配合的情况下找到的

    11 replies    2024-02-10 16:32:44 +08:00
    laminux29
        1
    laminux29  
       Feb 6, 2024
    非常简单:

    1.官方打印一堆全局唯一的随机数字,10 - 12 位就行,不能是连续的。如果不缺钱,甚至可以做成刮刮卡形式的,要刮开才能看到随机数。

    2.随机数或刮刮卡,以抽卡的形式发放,保证每个人是随机抽取到的,不能使用发放的形式,不然大家会觉得随机数或刮刮卡上面有记号。

    3.投票时,需要输入这些随机数字,才能投票。这样就保证了投票人是有资格的。

    4. [不可代他人投票] ,这一条是做不到的,因为它与匿名投票冲突了。就连大会堂的投票,都能发生代投票。
    Aoang
        2
    Aoang  
       Feb 6, 2024
    只要程序不记录,就能匿名。不然还不是追着痕找到人。

    问题核心在于如何信任程序会不记录
    meeop
        3
    meeop  
    OP
       Feb 7, 2024
    @laminux29 只要是物理领票或者投票,就有可能通过比如隐藏监控,或者领票后查看票池判断你的身份

    不可代投,我想表达的是不可冒用别人身份投,可以通过每个人对投票信息私有签名来保证
    meeop
        4
    meeop  
    OP
       Feb 7, 2024
    @Aoang 所以强调一定得是算法安全,不能信任任何人
    laminux29
        5
    laminux29  
       Feb 7, 2024
    @meeop

    1.请仔细看第 2 条:保证每个人是随机抽取到的。
    也就是每个人领取时,是随机抽取,就算有监控,也无法看到那个人到底拿了啥。而且如果是刮刮卡,保密性更好。我觉得你应该从没参与过现场纸质匿名投票与抽票,你可以自己先试一下。

    2.只要是匿名投票,就做不到不可代投,这是原理问题。你说的私有签名,持有者是可以主动把私有签名发送给其他人的。
    wcxu1123
        6
    wcxu1123  
       Feb 7, 2024 via Android
    我感觉既然有途径找到所谓的“破坏者”,那这还是多了很多弯弯绕绕实名制。一个有权限投票的人投什么都是他的自由,什么情况会成为破坏者呢?破坏预期结果的人?
    meeop
        7
    meeop  
    OP
       Feb 7, 2024
    @laminux29 在主办方作弊情况下,这个随机领取是无法保证的,比如各种彩票,也可以通过取票后检查剩余哪些票来判断你取了哪张。

    扑克作弊有一种方法就是在扑克背面隐藏信息(比如图案细微差别),这个刮刮卡完全可以从很多我不知道的角度做手脚,从而观察到我拿走哪张或者至少观察到剩余哪些
    meeop
        8
    meeop  
    OP
       Feb 7, 2024
    @laminux29 我没表达清楚,不是不能在别人授权下代投,是不能在别人未授权冒用别人的身份投,即不能(被代表)
    meeop
        9
    meeop  
    OP
       Feb 7, 2024
    @wcxu1123 如果有人不想这个投票完成,就一直搞破坏。如果破坏者不能被发现
    ,那么就可以用暗中破坏的方式让投票永远完不成

    比如美国大选懂王确定落选情况下,就有可能无限破坏投票
    laminux29
        10
    laminux29  
       Feb 8, 2024
    @meeop 我们讨论这个话题的前提是,主办方是公正的。

    如果主办方不公正,随便你用什么办法,如果我是主办方,我都能作弊,这样就没有讨论的意义了。
    meeop
        11
    meeop  
    OP
       Feb 10, 2024
    @laminux29 恩恩对的,所以我在想有没有办法在任何一方都可能作弊的情况下达成匿名投票。

    如果是实名投票,用区块链合约可以轻松实现可靠投票
    About     Help     Advertise     Blog     API     FAQ     Solana     2378 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 04:17 PVG 12:17 LAX 21:17 JFK 00:17
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86