【问题标题】:Can Provably Fair truly be fair?Provably Fair 真的可以公平吗?
【发布时间】:2016-03-28 18:14:03
【问题描述】:

我看到很多赌博 (BTC) 网站使用“可证明公平”系统。我想知道其中一些是否可能是伪造的。

举个例子:

  1. 在网站上下注 1 BTC
  2. 该网站为您提供了一个哈希来“验证”结果的结果
  3. 显示结果、奖励或获得

现在我知道这些是完全随机的,但几乎任何编程语言都可以在几毫秒内一次生成数千个这样的哈希值。赌博网站是否有可能通过在特定规则之前生成数字来尝试“欺骗”用户,以根据他们的输赢来决定他们想要给他们的数字。

我刚开始研究他们是否值得信赖,这让我想到了。

如果这是一个错误的堆栈网站,如果您不介意将我引导到正确的网站,我深表歉意。

这里有一些例子: http://provablyfair.org/ https://fortunejack.com/help/provably_fair

【问题讨论】:

  • 您可以添加此类站点/代码的示例吗?根据定义,可证明公平意味着您(玩家)可以运行与服务提供商相同的算法。所以这更像是一个问题,如果您所指的某些特定算法确实可以证明是公平的。
  • AFAIK,哈希是在您真正赌博之前提供给您的。所以结果是预定义的,网站无法更改它(除非他们设法找到哈希冲突,这对于标准的“不可逆”哈希来说是极不可能的)
  • 我在帖子中添加了示例。对此感到抱歉。

标签: static-analysis gambling


【解决方案1】:

我明白你的意思,我也认为这可以做到,其实很简单:

  • 服务器发送号码给客户端,修改结果
  • 哈希第二天显示
  • 创建 10000 个哈希,选择您需要的结果并按该顺序发布
  • 完成

现在天才会说:“你不能修改种子”。不,但据我所知,您可以创建尽可能多的不同秘密,以存档不同的数字结果。 (我是 codign 的新手,但我认为它可以通过这种方式工作)

【讨论】:

    【解决方案2】:

    一个结果通常使用 3 个东西来计算:

    • 服务器种子:由服务器生成。这是经过哈希处理的,以便玩家可以验证结果是否合法,并且服务器没有中途更改它,但不允许玩家自己计算结果(作弊)
    • 客户端种子:由浏览器生成。这样做是为了让服务器不知道结果并且无法更改它。
    • 双方都知道的随机数。这通常用作您下注次数的计数器。

    要得到结果:

    • 您的浏览器将客户端种子和投注信息(金额、赔率)发送到服务器。现在服务器知道结果,但不能更改它,因为客户端稍后会检查哈希。
    • 服务器将结果和服务器种子发送到您的浏览器。

    验证:

    • 第 1 步:获取服务器种子并对其进行哈希处理,然后将其与您之前收到的哈希值进行比较。如果匹配,服务器会玩得很好并且没有欺骗你。继续执行第 2 步。如果没有,您就被骗了:(
    • 第 2 步:自己计算结果。

    【讨论】:

      猜你喜欢
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-02
      • 2019-09-17
      相关资源
      最近更新 更多