V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
sillydaddy
V2EX  ›  分享创造

BitTrans - 使用动态二维码传数据,离线、安全、开源

  •  1
     
  •   sillydaddy · 2 天前 · 1384 次点击
    只要有浏览器和相机就可以。源代码开放。适合传输 100KB 以内的文件。
    访问这里: https://bittrans.info

    主页:


    发送文件(本地生成变化的二维码):


    接收文件(本地相机):


    接收完成:



    特色:
    1. 可以随时调整二维码的大小,即使是在发送过程中。目前只做到了通过改变网页的大小来实现这一点。
    2. 喷泉码的特色,二维码可以一直播放下去,不需要重新播放、补帧。
    3. 安全,虽然是需要访问这个网站,但是所有操作都在本地。也可以把网页直接保存到本地。
    4. 收发都使用网页,跨平台。

    不足:
    1. 适合 100KB 以内的文件。太大的话,传输时间长。
    2. 目前只测试了 Chrome 浏览器,Firefox 浏览器还有问题。
    3. 部分 UI 还有待改进。


    感谢:
    喷泉码的思路借鉴了 TXQR 这个项目: https://github.com/divan/txqr
    QR 二维码的生成使用了这个超级短小精悍的项目: https://github.com/nayuki/QR-Code-generator

    访问: https://bittrans.info
    第 1 条附言  ·  2 天前
    欢迎使用,后续准备改进的点:
    1. 允许直接粘贴大段的文字,并传送。
    2. 开源到 github 。
    3. 移动设备、浏览器的兼容性改进。
    14 条回复    2025-07-26 17:04:27 +08:00
    BigBai
        1
    BigBai  
       2 天前
    空气(光)传播的工具终于来了
    smy116
        2
    smy116  
       2 天前
    这技术在单项网闸里面好像用的蛮多的,一个摄像头不断的拍显示器。
    eldenboy
        3
    eldenboy  
       2 天前 via Android
    你这也不算完全离线,至少手机端还需要通过你的网站来访问扫码,因为手机上没法离线部署一个网页,需要做成 app 才行。

    org.cimbar.camerafilecopy 这个才是真正的神器,手机 app 扫码,传输速度 30k 每秒,最大支持十几 M 的文件。
    SanjinGG
        4
    SanjinGG  
       2 天前
    简易版 Wormhole ?
    molvqingtai
        5
    molvqingtai  
       2 天前
    重复造轮子应该更好,而不是更差😅
    https://github.com/qifi-dev/qrs
    busier
        6
    busier  
       2 天前 via iPhone
    挺好 发送 pc 端就用 html+javascript 最好
    sillydaddy
        7
    sillydaddy  
    OP
       2 天前
    @eldenboy #3 我试了一下,可以先联网加载页面,然后断网,后续的发送、接收、下载都可以正常使用。这也算离线吧。主要是为了方便,不需要按照 APP ,也不需要自己部署。


    @molvqingtai #5 我确实没搜到这个。不过我觉得自己的还是有创新的,我的可以在传输过程中动态调整二维码的大小,以便找到一个最合适的 size ,你给的那个在调整大小后,只能重新传送。
    xiaofeiyangduizh
        8
    xiaofeiyangduizh  
       2 天前 via iPhone
    能做一个 windows 的 exe 可执行程序会更方便
    busier
        9
    busier  
       2 天前 via Android   ❤️ 1
    https://github.com/mohankumarelec/airgapped-qr-code-transfer

    好吧 重复造轮子了 已经有现有的项目

    发送和接收都是单 html 文件

    接收的 html 最好不要放本地文件系统运行,以免没有调用摄像头的权限
    sillydaddy
        10
    sillydaddy  
    OP
       2 天前
    @busier 你发的这个轮子,跟前面提到的几个,不是一个轮子。 😂
    前面的包括 BitTrans 这个,包括主题里提到的 TXQR ,包括#5 楼提到的 qrs ,都是使用喷泉码来实现的,它允许传输过程中以一定概率丢失某些帧(也就是有损信道)。假如一个文件有 2000 帧,如果丢一帧就要整个重新传,那效率就太低了,所以,要通过编码来解决这一点。我记得 TXQR 这个项目里面有介绍喷泉码。
    greatghoul
        11
    greatghoul  
       1 天前
    挺好玩的,我之前还想着是不是能利用声音来隔空传递数据呢。
    jackOff
        12
    jackOff  
       1 天前
    摆渡系统不就是专门做这种事情的吗,人家还是企业级的网络隔离传输技术
    kios
        13
    kios  
       15 小时 9 分钟前   ❤️ 1
    libcimbar
    sillydaddy
        14
    sillydaddy  
    OP
       14 小时 46 分钟前
    @kios 很有意思,回头我看看,能不能把颜色、形状也加进来。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1145 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 23:50 · PVG 07:50 · LAX 16:50 · JFK 19:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.