最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

B站av和bv序列號(hào)的互換

2020-03-24 12:59 作者:gigo_64  | 我要投稿


轉(zhuǎn)載自知乎mcfx

留個(gè)底,以后用

由于字?jǐn)?shù)最低限制,把巨神的推到過程復(fù)制來

作者:mcfx
鏈接:https://www.zhihu.com/question/381784377/answer/1099438784

UPD:之前的代碼中,所有數(shù)位都被用到是亂湊的,實(shí)際上并不需要,目前只要低 6 位就足夠了。(更大的 av 號(hào)需要 64 位整數(shù)存儲(chǔ),但是 b 站現(xiàn)在使用的應(yīng)該還是 32 位整數(shù),所以應(yīng)該還要很久)


發(fā)現(xiàn)的方法:

首先從各種渠道的信息來看,應(yīng)該是 base58 編碼的。設(shè) x 是一個(gè)欽定的 av 號(hào),查詢 ?這些 av 號(hào)對(duì)應(yīng)的 bv 號(hào),發(fā)現(xiàn) bv 號(hào)的第 12、11、4、9、5 位分別會(huì)變化。所以猜測(cè)這些是 58 進(jìn)制下的相應(yīng)位。

但是直接 base58 是不行的,所以猜測(cè)異或了一個(gè)大數(shù),并且 base58 的字符表可能打亂了。經(jīng)過實(shí)驗(yàn),bv 號(hào)最低位相同的數(shù),av 號(hào)的奇偶性相同,這一定程度上印證了之前的猜想。

接下來找了一些 av 號(hào) x,滿足 x 和 x+1 對(duì)應(yīng) bv 號(hào)的第 11 位不同。設(shè)異或的數(shù)為 X,那么 ?( ??表示異或)。

由于 av 號(hào)(除了最新的少量視頻)最多只有 27 bits,所以可以設(shè) ?。然后可以發(fā)現(xiàn) ?只和 ?和 ?有關(guān),那么可以枚舉這兩個(gè)值(一共 ?種情況)然后使用上面的式子檢查,就能得到若干可能的 ?和 ?。

這里我得到的可能值如下:(左邊是 ?,右邊是 ?)

22 90983642
22 90983643
50 43234084
50 43234085

有奇有偶是因?yàn)楫惢?1 之后也能找到輪換表。而 ?則使得模 58 的余數(shù)剛好變成 ?減它。

我取了 b=43234084,然后處理最低位,可以得到一個(gè)字符表,即 fZodR9XQDSUm21yCkr6zBqiveYah8bt4xsWpHnJE7jL5VG3guMTKNPAwcF。

對(duì)于更高位,實(shí)際上還需要知道 ?,這些值也可以 枚舉 58 次得到,最后我得到的值是 ?。

這時(shí)我發(fā)現(xiàn),每一位的字符表是相同的(實(shí)際上只對(duì) b=43234084 是這樣的),然后再微調(diào)一下參數(shù)(上面代碼中的兩個(gè) magic number 就相當(dāng)于這里的 ?),最后處理了一下 ?的情況就得到了這份代碼


B站av和bv序列號(hào)的互換的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
通江县| 玉环县| 项城市| 湖南省| 洱源县| 普安县| 石嘴山市| 深水埗区| 凤山市| 叶城县| 雷山县| 双峰县| 兴国县| 望奎县| 普兰店市| 长寿区| 仙游县| 突泉县| 靖州| 开远市| 九江县| 井陉县| 奉节县| 漳州市| 安平县| 剑阁县| 汕尾市| 邓州市| 绥阳县| 始兴县| 凤城市| 河北省| 沁源县| 肇源县| 东丰县| 青神县| 汾西县| 阜新市| 台中市| 怀宁县| 卓资县|