cpu-race

Activity, over time

Daily observations from the public event archive.

Attention

Daily stars & forks

Loading attention chart

Star accumulation

Cumulative stars

Loading star accumulation chart

Pull requests

Daily opens & merges

Loading pull requests chart

Conversations

Daily issues & comments

Loading conversations chart

Community

Daily accounts & reviews

Loading community chart

Releases

Daily releases

Loading releases chart

Mentions

3posts · 30d
Nov 32 posts
  1. Reddit · · r/crypto · u/zjcqoo

    I built a crypto-based CPU frequency tester and leaderboard (please roast / break it)

    1 point
  2. V2EX · · 程序员 · @iqoo

    一个用于前端 wasm 的自创密码学算法,欢迎破解~ 具体功能:在线网页测量用户的 CPU 主频,并挑战排行榜。[(查看演示)]( etherdream.github.io) 要实现这个功能,最简单的办法就是用 js/wasm 跑一段消耗 CPU 周期比较稳定的程序,测量起始和结束的时间差,然后上报到服务端。 但这有个严重的问题:时间是在前端测量的,用户可以伪造。即便对程序加密混淆,现在也不难破解。所以必须用一些密码学机制,从原理上堵住这个漏洞。例如使用 VDF 函数进行计算,这样客户端必须老老实实执行每一步才能得出正确的结果。 但这还有另一个问题:这个算法是跑在网页里的,因此必须能被 JIT 充分优化,接近甚至达到原生程序的性能才行,否则作弊者可以用原生程序代替网页版。要符合这个条件,稍复杂一点的算法可能就不满足了。例如有些 VDF 函数基于大数运算,在原生程序里可充分利用 CPU 专用指令,比 wasm 版本快几倍。 因此这个算法必须足够简单,尽可能规避各种损耗。目前这个版本非常简单,只有纯粹的寄存器运算,在网页里和本地 C 程序几乎一样快;同时为了确保强度,模仿密码学中的 ARX (Add–Rotate–Xor) 运算,并且把加法换成了乘法,因为乘法的扩散效果更好,并且硬件实现也更复杂(减少 FPGA 等优势)。 具体算法可[查看这里]( github.com/EtherDream/cpu-race/blob/main/algo/mrx…)。由于是纯手搓自创的,目前没有强度证明(是否具备计算不可约性)。如果你能破解并实现跳步计算,可试试能不能在排行榜上刷出非常高的成绩。 类似的问题之前讨论过,不过没有演示所以很无聊。前几天做了个演示并改进了下,做成 CPU 排行榜类型更好玩一点。 目前的难度系数是 1000 亿个周期,用 5 GHz 的 CPU 大约需运行 20 秒。(测试过程中切换页面可能会降速)

  3. V2EX · · 分享创造 · @iqoo

    在线测试 CPU 主频并排名,试试能不能破解算法刷排行榜 演示: etherdream.github.io 测速原理:服务端下发一个题目,前端 wasm 进行求解(在主流 CPU 上消耗固定的周期),然后上报答案进行验证。 为了防止作弊,运行时间统计的是“服务端下发题目”到“服务端收到题目”的时间差,因此网络延迟会算在计算时间里,导致最终展示的 CPU 主频比实际略低。 服务端使用的是 Cloudflare Worker ,在国内大约有 200ms 的延迟。不过相比整个测试过程需 ~20s ( 5GHz CPU ),延迟占比有限。 计算代码可参考: EtherDream/cpu-race (后端实细节暂未公开) 如果展示的 CPU 主频和实际不一致,可以反馈问题。

Latest stargazers

The last 10 distinct accounts we observed this year.

Most active participants

PR, issue, comment & review events in the past year.

Packages

Scan pending.

README badges

Embed a badge in your README or website.

Live mentions · last 30 days
EtherDream/cpu-race mentions in the last 30 days