zoukankan      html  css  js  c++  java
  • 两人智力扑克

    类似思维掷硬币,智力扑克借用思维实现远程打扑克。

    实现过程比较简单,这里就直接说出它的具体实现过程,相信看完后就能明白。

    参与者:Alice、Bob。

    (1):Alice对52个消息进行对称加密,得到M1、M2、...M52,这里每一个消息代表一张牌。加密完成后发送给Bob。

    (2):Bob随机挑选出五个消息,假设为Mn1、Mn2、...、Mn5, 并再次对它们进行对称加密,得到Mn1‘、Mn2’、...、Mn5‘。加密完成后发送给Alice。

    (3):Alice对这五个消息进行解密,发送给Bob,Bob由此对这五个消息进一步解密,得到手牌。这一步避免了Alice与Bob作弊的可能性,

                若有人作弊,在游戏结束后双方出示各自的密钥时可以发现。

    (4):Bob再随机挑选另外的五个信息并发送给Alice。

    (5):Alice对这五个信息进行解密得到手牌。

    PS:双方可以重复上述过程以得到一定数量的手牌,在游戏结束后必须出示双方密钥用来验证在游戏过程中没有作弊。

  • 相关阅读:
    Rex 密钥认证
    MQTT协议之moquette 安装使用
    开源MQTT中间件:moquette
    Hazelcast入门简介
    Maven和Gradle对比
    rex 上传文件并远程执行
    myeclipse配置gradle插件
    ansible 新手上路
    CentOS release 6.5 (Final) 安装ansible
    spring boot 使用profile来分区配置
  • 原文地址:https://www.cnblogs.com/hhjfighting/p/7770574.html
Copyright © 2011-2022 走看看