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

一个小挑战:如何确定这个字符串的编码方式?

  •  
  •   wangleineo · 2017-06-28 12:53:50 +08:00 · 1496 次点击
    这是一个创建于 2723 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一个美拍视频页面: http://www.meipai.com/media/786518616

    美拍页面版加载的视频 url 是: http://mvvideo2.meitudata.com/594d6aa29e9036562.mp4

    这个页面的地址估计是来自于 HTML 的头部:

    <meta content="0c52aHR0cDovLLSY6lj212dmlkZW8yLm1laXR1ZGF0YS5jb20vNTk0ZDZhYTI5ZTkwMzY1NjJnv8IubXA0" property="og:video:url">
    
    <meta content="0c52aHR0cDovLLSY6lj212dmlkZW8yLm1laXR1ZGF0YS5jb20vNTk0ZDZhYTI5ZTkwMzY1NjJnv8IubXA0" property="og:video:secure_url">
    

    但是这个字符串不是地址的 base64 编码。

    问题是:怎样破解地址字符串的编码方式?

    5 条回复    2017-06-28 14:47:33 +08:00
    geelaw
        1
    geelaw  
       2017-06-28 13:08:52 +08:00   ❤️ 1
    让我帮你 fucking Google that

    http://www.jianshu.com/p/15f5c8660f7b

    但我不知道它是不是对的,因为我不用 Python,此外你可以发现该字符串每次刷新都会变化。
    ech0x
        2
    ech0x  
       2017-06-28 13:11:38 +08:00 via iPad
    不知道对不对算是提供个思路,看看 js 里的有没有写解谜的算法
    wangleineo
        3
    wangleineo  
    OP
       2017-06-28 13:30:37 +08:00   ❤️ 1
    @ech0x js 是 minified 过的

    @geelaw 我还真没搜到这一篇。试了一下,他的方法是好用的,每次不一样的原因是在这个字符串里有一个随机种子,算法还挺复杂的。我好奇的是这个博主怎么解析出来这个算法的,硬抠 js 文件?

    这哥们是专干这个的: http://www.jianshu.com/c/2045641881ad
    和视频网站有仇吗?:)
    crab
        4
    crab  
       2017-06-28 14:32:49 +08:00
    data-video
    e = MP.decodeMp4.decode(this.getAttribute("data-video"))
    a.decodeMp4 = f,
    f = {
    getHex:
    wangleineo
        5
    wangleineo  
    OP
       2017-06-28 14:47:33 +08:00
    @crab 牛,这么快就定位到了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   825 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:07 · PVG 06:07 · LAX 14:07 · JFK 17:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.