爱意满满的作品展示区。
iqoo

网页版时间锁,一定时间后才能解密消息

  •  
  •   iqoo · Apr 1, 2024 · 5567 views
    This topic created in 946 days ago, the information mentioned may be changed or developed.

    拿几年前的弱口令强化 Demo 修改了下,做了个在线版的时间锁,可以让接收者必须经过一定时间才能看见消息。

    演示: https://etherdream.github.io/timelock/

    (备用地址: https://etherdream.com/timelock.html )

    界面有点简陋,未适配移动端~ 有 BUG 或建议可以反馈。

    测试 1:

    https://etherdream.github.io/timelock/#iter=10&key=0xC7E071A0F35D5677&cipher=0x7667ADF22C7FA346A2E13307611073FFF7011C903E01DA50925791

    点击“解密”按钮开始解密,单核性能越高,解密越快。建议使用 Chrome 浏览器。

    我的电脑上大约 10 秒能解开( MacBookPro M1 ),内容为 “Hello World”。

    测试 2:

    https://etherdream.github.io/timelock/#iter=120&key=0x5231217743B22301&cipher=0x34965EF12FC6A9E76EE7C9242D72D74E0FF4C67757732399760D4C9EF71896A2C61374A30441A59E22CA9BBE4EB7

    大约 120 秒能解开,内容为 “支付宝口令红包 ********”。( 100 个,2024-04-02 过期。没 BUG 的话之后发一个只能 1 人领取但解密时间更长的,看谁的 CPU 主频最高)

    有什么可以改进或好玩的,可以想象下~

    Supplement 1  ·  Jun 10, 2024
    由于算法已改变,上述演示链接已失效。
    23 replies  •  2024-04-02 21:21:12 +08:00
    CivAx
    CivAx
    Apr 1, 2024
    1
    Cool ,领到了第 6 个
    ztmzzz
    ztmzzz
    Apr 1, 2024 via iPhone
    2
    ios chrome 能正常用,花了 3 分钟解密
    xiaoen
    xiaoen
    Apr 1, 2024
    3
    领到了红包
    tool2d
    tool2d
    Apr 1, 2024
    4
    收到大大的红包,感恩 OP !

    我上次也写了一个前端大计算量的 JS 代码,结果 chrome 直接失去响应。。
    LeslieLeung
    LeslieLeung
    Apr 1, 2024
    5
    领到了第 12 个,好有趣的 demo !这周的周刊又有材料了。

    能不能作为一种反制脚本黄牛的抢购限制手段?必须提早打开页面挂着(购买意愿)并且消耗性能(投入成本)。(不过开虚拟机,每个分配一个核就能解决,只是提高了成本)
    hakuya7
    hakuya7
    Apr 1, 2024
    6
    有点意思
    jurassic2long
    jurassic2long
    Apr 1, 2024
    7
    公司的 i5-6500,耗时 14 分钟。。。领到第 45 个
    ififi
    ififi
    Apr 1, 2024
    8
    领到了第 51 个。谢谢 OP !
    googlefans
    googlefans
    Apr 1, 2024
    9
    以前看到过很多类似的:
    https://www.pastery.net/
    https://controlc.com/
    alexsz
    alexsz
    Apr 1, 2024
    10
    谢谢张真人😁
    R31
    R31
    Apr 1, 2024
    11
    61 个 感谢
    BluePadge
    BluePadge
    Apr 1, 2024
    12
    领到了第 63 个。有一个粗浅的想法:靠加密可以做一个“意外死亡在线遗书”,发布者需要定期延后解密时间,一段时间未更新的话,就把内容作为遗书发送到指定邮箱去。
    LXchienne
    LXchienne
    Apr 1, 2024
    13
    领到了,只是加密时间太长了,想法很不错
    polaris1815
    polaris1815
    Apr 1, 2024
    14
    妙
    buyerhou
    buyerhou
    Apr 1, 2024
    15
    perfect
    guqikang
    guqikang
    Apr 1, 2024
    16
    领到了,谢谢
    KorenKrita
    KorenKrita
    Apr 1, 2024
    17
    提两个建议
    看起来难度是只能为正整数 但是前端页面没限制只能输入正整数 试了几个小数是可以运行的但是会在整数部分结束后就出结果了
    对于加密来说应该加密后给出完整的分享链接(最好还能自动复制到剪贴板) 而不是让用户自己拼 要是没有你的这俩测试链接我都不知道怎么拼
    tool2d
    tool2d
    Apr 1, 2024
    18
    @BluePadge 现在加密时间和解密差不多。你如果要延后一年解密,估计要先算半年加密。
    iqoo
    iqoo
    OP
    Apr 1, 2024❤️1
    19
    @tool2d 不考虑网页版的话是可以快速加密的,demo 里的论文中有详细讲解。

    之前有个新闻 https://www.linkresearcher.com/information/6c3da22d-11fa-45d3-a18c-0c3b28835dd5 也讲解过
    hawken
    hawken
    Apr 1, 2024
    20
    “来晚了,红包已领完” 怎么看时间啊,手动计算吗
    iqoo
    iqoo
    OP
    Apr 1, 2024
    21
    @KorenKrita
    复制链接功能已加上

    难度值的本质是调用 pbkdf2 函数的次数,无法分割成小数。当然,倒是可以根据小数部分设置每次传入 pbkdf2 中的迭代参数,目前该参数是固定 1e7 ,在我笔记本电脑上大约耗时 1s 。如果要考虑低性能的 CPU ,倒是可以考虑这个方案。
    dbit
    dbit
    Apr 2, 2024 via iPhone
    22
    感觉 iPhone15 一分半就解开了? 尽管没领到红包
    rekulas
    rekulas
    Apr 2, 2024
    23
    这个问题我以前也有研究过,因为想做一个区块链上的密码包,目前来说要想真正设置一个时间胶囊只能靠算力限制(挖矿- _ -), 要想快速生成就要降低整个链条的相关性, 但要想防并发破解又要提高相关性(串行解密), 所以找到一个合适的平衡点很重要, 能不能找到一个又快又防爆破的算法,目前来看很难(可能以后量子领域有更好的办法吧), 另外还存在一个问题就是预测遥远未来的算力增长趋势误差太大,容易导致密码被过早(例如帖子中的那样)或过晚解密出来
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2364 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 161ms · UTC 15:45 · PVG 23:45 · LAX 07:45 · JFK 10:45
    ♥ Do have faith in what you're doing.