• 请不要在回答技术问题时复制粘贴 AI 生成的内容
imndx
V2EX  ›  程序员

为开源 IM 做了个需要授权的闭源 JS SDK,请问进行代码混淆是否有意义?

  •  
  •   imndx · Jul 16, 2019 via Android · 4589 views
    This topic created in 2669 days ago, the information mentioned may be changed or developed.

    我们开发的 IM 解决方案,服务端、Android、iOS 都开源了。

    想通过需要授权的 JS SDK 来赚点小钱,现在的问题是如何保证 SDK 不被破解,或者如何能增大破解的难度?

    请大家指点一下。

    另外,前段代码,混淆、加密是否有意义?

    最后,如果你对开源 IM 感兴趣,欢迎围观:

    https://github.com/wildfirechat

    imndx
    imndx
    OP
    Jul 16, 2019 via Android
    1
    写错了,是前端代码,不是前段代码,sorry
    berumotto
    berumotto
    Jul 16, 2019 via iPhone
    2
    前端没有加密可说吧
    nnnToTnnn
    nnnToTnnn
    Jul 16, 2019
    3
    @imndx 有啊,增加我对这个项目逆向的兴趣
    imndx
    imndx
    OP
    Jul 16, 2019 via Android
    4
    @nnnToTnnn 好吧,但有个小小的请求呀,逆向仅仅是个人研究学习哈
    imndx
    imndx
    OP
    Jul 16, 2019 via Android
    5
    @berumotto 我不是专业前端,但听过这种说法。有什么更好的思路不?
    k9982874
    k9982874
    Jul 16, 2019 via iPhone
    6
    服务器都开源了 加密 sdk 毫无意义
    free9fw
    free9fw
    Jul 16, 2019❤️2
    7
    赚钱何必开源,开源了又来收钱
    berumotto
    berumotto
    Jul 16, 2019 via iPhone
    8
    @imndx 收费提供技术支持或者分离出一个商业版
    nnnToTnnn
    nnnToTnnn
    Jul 16, 2019
    9
    @imndx 开源又何必授权 sdk,具体的开源运营模式可参考 Red Hat,为客户提供服务,而不是做授权 sdk,这样做只会各种反编译等等的版本出来,不是限制客户,而是为客户做解决方案,然后你就会钓到大鱼
    Rorysky
    Rorysky
    Jul 16, 2019 via iPhone
    10
    没啥意义吧,效果和不允许商业使用差不多
    imndx
    imndx
    OP
    Jul 16, 2019 via Android
    11
    @free9fw 赚钱和开源,不一定是二选一的。红帽子,开源和赚钱都做的很好。
    abcbuzhiming
    abcbuzhiming
    Jul 16, 2019
    12
    兄弟,收钱不是这么收的,你应该搞一个专门的,高级功能加强版本或定制版,整体闭源,付费服务。
    geelaw
    geelaw
    Jul 16, 2019 via iPhone
    13
    所以 JS SDK 是用来做什么的呢?实现 Web 客户端?

    我觉得从 Android 和 iOS 客户端的代码很容易 infer 出来 Web 客户端怎么写,所以客户端逻辑不是一个可以(或者说,需要)被保护的对象。因此,所谓“逆向这个 JS SDK ”完全是多此一举——可以直接看其他客户端代码并翻译成 JS。

    “破解”的含义也不明确,如果你只是单纯想增加 JS SDK 未被授权的使用难度,有很多 ad-hoc 的技巧,但并不 sound。

    很多问题的技术解决方案的成本远远高于法律解决方案,而且有些问题是不存在技术解决方案的。
    imndx
    imndx
    OP
    Jul 16, 2019 via Android
    14
    @k9982874 是的,服务端开源了,一定是能自己把 JS SDK 写出来的。可能会有没时间,想马上拥有的客户买授权的
    imndx
    imndx
    OP
    Jul 16, 2019 via Android
    15
    @abcbuzhiming 我们真有个专业版,功能区分度不大,社区版性能又太好了,还没人对专业版感兴趣。谢谢
    laravel
    laravel
    Jul 16, 2019
    16
    还不如做个商业版 —— wildfirechat plus 增加其功能,现在很多开源软件都是这套路
    laravel
    laravel
    Jul 16, 2019
    17
    相近的比如 emqtt 就是一个开源版,一个收费版,我以前问他们老大,人家说一个单子几十万呢,还有别的国家的用户。
    k9982874
    k9982874
    Jul 16, 2019
    18
    @imndx #14 可以学一下 twilio,按用量收费,提供一定免费用量。服务器也继续开源,sdk 开不开源就无所谓了。
    imndx
    imndx
    OP
    Jul 16, 2019 via Android
    19
    @k9982874 谢谢,我去研究下他们是怎么玩。我们这开源的比较完整,完全不知道他们的使用量
    imndx
    imndx
    OP
    Jul 16, 2019 via Android
    20
    @laravel 谢谢,是的,专业的商业本和社区版得有区分度
    LeeSeoung
    LeeSeoung
    Jul 16, 2019❤️1
    21
    可以提供技术支持 服务,或者一些定制化的需求来收费。或者是新增一些不开源的服务收费。
    shynome
    shynome
    Jul 16, 2019 via Android
    22
    @imndx 开源如果不完整的话不如不开源,eolinker 商业化之后就留了个残废的开源版在 GitHub 上,中文支持被去掉,代码能运行起来但是工作不正常,然后去排查问题的时候发现是官方 issues 已经有了但是完全不管,这样的开源你用吗

    还有开源版不应该添加使用量统计这种依赖特定服务器不透明的东西
    Buges
    Buges
    Jul 16, 2019 via Android
    23
    授权 sdk ❌
    有二改开发需求找你们定制✔️
    guyeu
    guyeu
    Jul 16, 2019
    24
    红帽如果开源+赚钱两不误的话就不会被收购了。。
    jiangecho
    jiangecho
    Jul 16, 2019
    25
    @shynome 我们的开源是完整的,另外,没有添加使用量统计之类不透明的东西的。
    imndx
    imndx
    OP
    Jul 16, 2019
    26
    @jiangecho 乱入?这是啥鬼?
    ntdll
    ntdll
    Jul 16, 2019
    27
    sdk 收费意义真的不大,服务端开源,人家自己写一份就行了,SDK 再复杂能有一个服务端复杂?

    可以参考以下这几种方式

    1、RHEL 免费用,技术支持收费
    2、定制需求收费
    3、私有化部署收费
    Felldeadbird
    Felldeadbird
    Jul 16, 2019 via iPhone
    28
    我觉得,对于破解是无法阻止的。
    我的另外做法是,找泄露源,不同客户购买后,都有独特的识别码。通过这个可以知道泄露源头。当然,如果把识别码移除,这就当他实力获取。
    otakustay
    otakustay
    Jul 16, 2019
    29
    基本没有意义,我还是一个 T3 的时候,只用了半个月就把 google 的广告 SDK 给吃透了,甚至可以在整出了流程的基础上再做局部优化写自己的 SDK ……
    shynome
    shynome
    Jul 16, 2019 via Android
    30
    @jiangecho 只是提醒勿忘初衷
    lifeintools
    lifeintools
    Jul 16, 2019
    31
    提供 docker 一键部署 最好
    jiangzhuo
    jiangzhuo
    Jul 16, 2019
    32
    授权便宜了不赚钱
    授权贵了不如自己笔者 iOS Android 抄一个

    大概率赚不到小钱
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4245 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 09:45 · PVG 17:45 · LAX 01:45 · JFK 04:45
    ♥ Do have faith in what you're doing.