V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ljlljl0
V2EX  ›  程序员

容器化软件如何实现 license 获取和授权

  •  
  •   ljlljl0 · 122 天前 · 2426 次点击
    这是一个创建于 122 天前的主题,其中的信息可能已经有所发展或是发生改变。
    小白一个,第一次写 python ,目前后端 fastapi 来做的,打算打包到容器里,但是 license 这块不知道如何去实现,听说 V2 的大佬实力雄厚又帅气特来请教下。
    14 条回复    2024-07-27 23:25:35 +08:00
    devliu1
        1
    devliu1  
       122 天前
    容不容器化有什么区别吗?

    --

    先把你的业务形态讲清楚?目测是,卖给别人一个基于 Python 服务端程序,部署需要 license ?
    ljlljl0
        2
    ljlljl0  
    OP
       122 天前
    前后端的项目,使用功能要 license 授权才能跑起来。
    容器化我怎么获取绑定信息呢,别人买一套,后面以虚拟机方式拿出去卖,无解。
    coolfan
        3
    coolfan  
       122 天前
    和是不是容器化没区别吧。
    假设不是容器化,你分发一个二进制文件,别人还是可以到处传拿去卖。
    往容器传一个授权码吧,或者再加一个鉴权服务器?
    onichandame
        4
    onichandame  
       122 天前
    通过非对称加密签发 license
    ghjh
        5
    ghjh  
       122 天前 via Android
    看你里面的服务能不能连外网吧。能联网都好说一些
    lanwairen123
        6
    lanwairen123  
       121 天前 via Android
    搜索 docker 获取宿主机硬件信息,用 dmidecode 获取宿主机硬件序列号,将硬件序列号和授权功能及授权日期等通过非对称加密算法加密后生成 license 文件,程序内解密验证
    ljlljl0
        7
    ljlljl0  
    OP
       121 天前
    @onichandame 可以
    ljlljl0
        8
    ljlljl0  
    OP
       121 天前
    @lanwairen123 大致思路有了
    l4ever
        9
    l4ever  
       121 天前
    你都用上 python 了, 还怕代码泄露啊?
    l4ever
        10
    l4ever  
       121 天前
    我能看到你的代码, 你既然能验证, 我就能反验证撒.
    guanzhangzhang
        11
    guanzhangzhang  
       121 天前
    https://zhangguanzhang.github.io/2023/11/03/non-root-containers/
    容器里获取机器码,但是别想这个思路了,信创系统没机器码很正常
    koast
        12
    koast  
       121 天前
    还是参考下 mt-photos 的方案?关键逻辑都用 bytenode 弄成 jsc 算法什么的也不调库 自己实现的

    把 jsc 反编译成 js 的工具我是没看到开源的 这玩意想调试只能用 d8 来看字节码调 很是麻烦

    python 这边你还是 cpython 之类的编译到 native 吧 不然只要有对应的解释器 修改下 pycdc 还是能得到能用的源码的(当然可能不可读 比如用 ast 搞下平坦化之类的)
    iorilu
        13
    iorilu  
       121 天前
    真有这需求还是用 go 或 rust, 直接编译成二进制得

    python 本来就不方便加密打包, 你弄个 web 程序更不方便了
    ljlljl0
        14
    ljlljl0  
    OP
       121 天前
    @iorilu 是的 还是得 go
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5898 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 01:52 · PVG 09:52 · LAX 17:52 · JFK 20:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.