ChatGPT 编程实现文心一言界面所使用的 Web 数字水印技术 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
zddhub
V2EX    分享创造

ChatGPT 编程实现文心一言界面所使用的 Web 数字水印技术

  •  
  •   zddhub 2023-03-25 21:16:48 +08:00 3413 次点击
    这是一个创建于 932 天前的主题,其中的信息可能已经有所发展或是发生改变。

    文心一言发布后,界面的水印技术引起了我极大的兴趣。再加上想体验 ChatGPT 写代码的能力,所以试了一下,结果它完成的挺出色的。

    这是实现的一个带水印的网页: https://zddhub.com/watermark/

    代码( code 部分)包括部署,我只贡献了大概 1%,剩下的都是 ChatGPT 写的。

    也录屏记录了一下,没有时间亲自体验的同学可以看看:

    视频地址: https://www.bilibili.com/video/BV1Ak4y147t6

    代码地址: https://github.com/zddhub/watermark

    视频里实现了:

    • 水印效果
    • 监听 DOM 让水印删不掉
    • 水印防删除增强
    • 重构代码
    • 部署到 Github Page

    很多时候,只需要把错误复制给 ChatGPT ,它就能帮忙修复。

    体验结束之后我觉得,可以很大的提升效率,但是也不用过分焦虑,毕竟错对还要我们来判断。

    18 条回复    2023-03-25 22:47:34 +08:00
    charlieethan
        1
    charlieethan  
       2023-03-25 21:38:41 +08:00   1
    JS 我不会,但是如果要我写个 ublock 规则的话,那就 zddhub.com###root + div
    ijrou
        2
    ijrou  
       2023-03-25 21:42:19 +08:00   1
    slowman
        3
    slowman  
       2023-03-25 21:50:28 +08:00  
    规则加一条吧:
    不能去除水印
    Aloento
        4
    Aloento  
       2023-03-25 21:54:37 +08:00
    zddhub
        5
    zddhub  
    OP
       2023-03-25 22:01:17 +08:00
    @1423 哈哈哈
    ijrou
        6
    ijrou  
       2023-03-25 22:04:32 +08:00   1
    #eb-watermark {font-size: 0;}
    ijrou
        7
    ijrou  
       2023-03-25 22:07:40 +08:00
    给钱!! v 我 50 !!!代码含量很高,但是想要去掉很简单
    AhECbt
        8
    AhECbt  
       2023-03-25 22:09:24 +08:00   1
    在前端谈加密也是醉了,白送你

    ```
    // ==UserScript==
    // @name New Userscript
    // @namespace http://tampermonkey.net/
    // @version 0.1
    // @description try to take over the world!
    // @author You
    // @match https://zddhub.com/watermark/
    // @icon https://www.google.com/s2/favicons?sz=64&domain=zddhub.com
    // @grant none
    // @run-at document-start
    // ==/UserScript==

    (function() {
    'use strict';
    const observe = MutationObserver.prototype.observe;
    MutationObserver.prototype.observe = function(callback, options) {
    observe.call(this, function(mutationsList, observer) {
    return;
    }, options);
    };
    const originalSetInterval = window.setInterval;
    window.setInterval = function(callback, delay) {
    originalSetInterval.call(this, function() {
    return;
    }, delay);
    };
    })();
    ```
    ijrou
        9
    ijrou  
       2023-03-25 22:11:40 +08:00
    @AhECbt #8 哈哈,,,其实我也看到里面的代码了本来想用 hook 的,但是发现直接用 font-size 更加快。。。
    ijrou
        10
    ijrou  
       2023-03-25 22:19:53 +08:00   1
    打算删掉 id 吗?是不是也要加上 font-size:12px !important;
    那我继续:body>div:last-child {transform: translateX(-999999px);}
    ijrou
        11
    ijrou  
       2023-03-25 22:23:22 +08:00
    我感觉,真的无从下手,应该是像 微信阅读网页版 那样,打乱字符顺序,然后通过 js 来指定提取这些字符,用 svg 绘制,,,最重要的就是还要加上 js 混淆
    zddhub
        12
    zddhub  
    OP
       2023-03-25 22:23:50 +08:00
    @ijrou 拿 css 的话,我理解把 id 设置成 UUID (数字开头)就堵住了,可以去文心一言的界面试试。我这边没有用是因为想保持和录屏里一致。

    @AhECbt 你意思是说写类似 `document.createElement = null` 吗?

    这些都是已经被发现的方法。
    ijrou
        13
    ijrou  
       2023-03-25 22:26:50 +08:00   1
    @zddhub #12 看 10 楼,我压根不需要你的 id
    我感觉,真的无从下手,应该是像 微信读书网页版 那样,打乱字符顺序,然后通过 js 来指定提取这些字符,用 canvas 绘制,,,最重要的就是还要加上 js 混淆
    zddhub
        14
    zddhub  
    OP
       2023-03-25 22:28:32 +08:00
    @ijrou 感谢,学到了
    AhECbt
        15
    AhECbt  
       2023-03-25 22:30:25 +08:00   1
    @zddhub 在前端谈加密本来就是一件挺扯淡的事,极端点我劫持所有的原生函数,你还能飞不成?随你代码怎么混淆,都一个结果。如果你在防止劫持上花的的成本大于你要干的的正事,这就变得更加扯淡。所以,没意义。
    zddhub
        16
    zddhub  
    OP
       203-03-25 22:37:45 +08:00
    @AhECbt 同意

    @ijrou 刚完了一下 微信的 Canvas 实现。感觉很有意思,不知道 ChatGPT 能不能帮我写出来,回头试试看。
    ijrou
        17
    ijrou  
       2023-03-25 22:44:13 +08:00
    @zddhub #16 微信阅读只是防止复制和爬虫,而不是为了水印,,搞它的书籍下来,也不是不能做,,直接上自动化工具,每一页都去截取主要内容的截图,下到本地的图片打包成 pdf ,用福昕的 ocr 功能,,,,完美的一本电子书搞定。。。所以,前端页面你再怎么搞,都很难防止小人去获取所需要的资源,,,所以,你没发现很多厂商都推广 app 吗?毕竟 app 真要做防御还是很厉害的(只是需要掏钱加壳混淆加密而已),,,
    zddhub
        18
    zddhub  
    OP
       2023-03-25 22:47:34 +08:00
    @ijrou 同意。个人对这个比较感兴趣。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5684 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 01:41 PVG 09:41 LAX 18:41 JFK 21:41
    Do have faith in what you're doing.
    ubao 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