V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
nikoo
V2EX  ›  问与答

如何改进这个 JS 文字加密函数?

  •  
  •   nikoo · 2017-11-16 11:12:34 +08:00 · 1723 次点击
    这是一个创建于 2568 天前的主题,其中的信息可能已经有所发展或是发生改变。
    目前的方案是 https://jsfiddle.net/cu3de6wr/
    即把文字用 javascript 的 escape 函数 encode 后写在 .text 中,加载页面时调用 unescape 函数 decode 并显示出原始文字

    但这个 %u6D4B%u8BD5 感觉过于明显,有没简单的方法能改进一下这个 encode / decode 函数
    能获得更快的 decode 速度那就更好了!
    第 1 条附言  ·  2017-11-16 11:53:42 +08:00
    标题"加密"二字用得不严谨,抱歉,请勿怪,是 encode / decode 函数
    9 条回复    2017-11-16 13:00:00 +08:00
    EmbraceZ
        1
    EmbraceZ  
       2017-11-16 11:29:14 +08:00 via Android   ❤️ 1
    base64
    nikoo
        2
    nikoo  
    OP
       2017-11-16 11:47:23 +08:00
    @EmbraceZ 非常感谢!
    Base64 的安全性足够,并且也用的是 JS 原生函数实现

    只是其执行效率不如 escape / unescape (需要调用 unescape encodeURIComponent 等)

    有没更简单更效率的 encode / decode 函数呢?
    chairuosen
        3
    chairuosen  
       2017-11-16 11:49:29 +08:00
    加密 ? encode ?
    takanasi
        4
    takanasi  
       2017-11-16 11:50:40 +08:00 via Android
    你先分清加密和编码吧
    yxwzaxns
        5
    yxwzaxns  
       2017-11-16 11:51:30 +08:00 via iPhone
    原来加密等于编码啊,有意思
    Zzzzzzzzz
        6
    Zzzzzzzzz  
       2017-11-16 12:04:08 +08:00
    完全没用, 都不用考虑你用什么加密或者编码, 等加载好直接读 dom 的 textContent、innerHTML 不就行了么

    你还不如考虑下 canvas 画图
    nikoo
        7
    nikoo  
    OP
       2017-11-16 12:07:14 +08:00
    @Zzzzzzzzz 谢谢,只是做非针对性的反爬,并非要混淆 /加密内容,所以求一个编码 /解码效率高一些的函数
    liuzhiyong
        8
    liuzhiyong  
       2017-11-16 12:31:18 +08:00   ❤️ 1
    你这个顶多是“混淆”,不是“加密”。你要是觉得“ escape/unescape ”有些“过于明显”,可以再替换一些字符(例如把“%u ”换成“*”,等等),这就不明显了,而且替换应该很快,是 JS 原生函数。
    yadgen
        9
    yadgen  
       2017-11-16 13:00:00 +08:00
    https://blog.yadgen.com/?p=2294
    建议楼主看看这个,CloudZoom 就是加密的 JS 特效。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1405 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:46 · PVG 07:46 · LAX 15:46 · JFK 18:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.