技術帝!通過按鍵音還原周鴻祎的手機號碼

jopen 12年前發布 | 5K 次閱讀 程序員

        這年頭,人們的隱私會從各種渠道被泄露出去,有些甚至你完全想不到,可以說防不勝防,比如說,你想過單從按鍵聲音就分析出你的手機號碼么?竟然還真有人做到了!網友“清華南都”就根據一段視頻中的按鍵音,還原出了 360 總裁周鴻祎的手機號,并驗證無誤,還引來了周鴻祎本人的關注,甚至得到了李開復拋來的創業橄欖枝。

        事情起源于這幾天的 360、百度搜索大戰。優酷的報道中出現了這么一段視頻:

        在從視頻的第 33-43秒,我們可以清晰地聽到優酷記者給周鴻祎撥號的整個過程。的確,用人耳聽似乎覺得每個音都差不多(下面會解釋原因),但是將它們轉化成圖形以后,就可以很清楚地看到差別了。

        先用 FFmpeg 或者任何工具將這段聲音截出來,轉成 PCM Signed 24 位的單聲道 WAV 文件,然后用 Adobe Soundbooth 打開:

技術帝!通過按鍵音還原周鴻祎的手機號碼

        綠色那部分是波形圖(Waveform),綠線和橫軸交點的密度代表頻率(音調),一個周期內最高點和最低點的距離代表振幅(響度),但是這種圖丟失了很多信息,我們用不上。

        下半圖是加上時間后的頻譜圖(sound spectrum),這是整個問題的關鍵所在。事實上,我們聽到的聲音里,每一小段都是由很多個不同強度和不同頻率的聲音(note)組成的。下半圖很好地展現了這些信息,其中橫坐標代表了時間,縱坐標代表頻率,顏色代表強度(深色弱淺色強),圖中的一個點都表示在某個時間點上某個頻率的聲音的強度。

        從圖中我們可以很清晰地看到 11 根由黃色和紅色組成的“柱子”。相信你也猜到了,就是按那 11 個數字的時候產生的按鍵音。

        接下來介紹DTMF (Dual-Tone Multifrequency),也就是雙音多頻。我們平常所用的電話是通過 DTMF 信號來向交換機傳遞命令的,每按下電話鍵盤上的一個鍵,就會同時發出兩個不同頻率的聲音,轉化成電流在對面解析。也就是說,每個按鍵音實際上是由兩個純粹的音(tone)構成的。通過下表可以看到每個數字由哪兩個頻率的聲音構成的。

技術帝!通過按鍵音還原周鴻祎的手機號碼

        接下來就好辦了。我們將 400Hz 到 1700Hz 以內的頻譜圖放大,然后找出淺色(強度高)的頻率段:

技術帝!通過按鍵音還原周鴻祎的手機號碼

        結論出來了,周總的手機號是:1370**9**98。

        1、因為只是個試驗,而且為了保護隱私,就不把號碼全公布出來了,某些數字的頻譜區域打了馬賽克,對應數字則標記為“*”。

        2、因為音頻的質量,開頭的數字 1 無法從頻譜圖中得出,但是地球人都知道中國大陸手機號開頭是1。

        3、最后的“8”,因為必須由一個高音構成,雖然不明顯,但是相比 1477Hz 和 1209Hz,1366Hz 最強。

        4、下面的一片黃色是環境音和座機按鍵的機械聲音造成的。發出某個頻率的聲音時,黃色會散布在頻率線的兩側,故中間的數字“9”的低音,選擇的是 852Hz 而不是 941Hz。

        怎么驗證結果正不正確呢?那就更簡單了:

        1、查詢號碼歸屬地,的確是北京的。

技術帝!通過按鍵音還原周鴻祎的手機號碼

        2、在手機上按了一遍號碼,并把它錄下來了,結果完全一樣。

        3、晚上十點,打了個電話給周總。

        我:“喂,您好,請問是周先生嗎?”

        他:“我在開會,你有事嗎?”

        (作者自稱當時很緊張,完全不知道怎么說)

        我:“抱歉我打錯了。”

        然后就把電話掛了。作者還調侃說,當時好糾結沒有問“請問您是 360 的周先生嗎?”

        4、關鍵的證據:Google 一下電話號碼。為了防止里面的信息被用來作為關鍵字再 Google 出號碼,所以打了很多馬賽克。

技術帝!通過按鍵音還原周鴻祎的手機號碼

        5、作為補充,又錄了一段工商銀行“95588”的撥號音。因為是觸摸屏按的,沒有機械聲音,很純正。 

技術帝!通過按鍵音還原周鴻祎的手機號碼

        其實最最關鍵的證據來自周總本人,今天早晨他親自回復了“清華南都”發的微博:“這位同學確實能干,各位就不用驗證了,也請大家別在晚上十一點后打電話,誰也不希望剛睡著就被突然的電話鈴聲驚醒吧。”

        這就等于承認了:)

        這位技術帝專業而精準的分析也引來了李開復的注意,邀請其加盟創新工廠,有合適的項目供其考慮,并希望兩周后與其親自見面。

        同學們看見沒?誰說技術宅沒有前途啊?!

技術帝!通過按鍵音還原周鴻祎的手機號碼

        最后是幾個友善的提醒:

        1、技術再好也要用在合適的場合,不要用來做壞事,大家不是 Google 但也盡量不要作惡。

        2、我們平常用手機撥號,或者在門禁處或者一些機器上輸入密碼的時候,不妨注意身旁有沒有人錄音。通過上面的分析大家也看出來了,除非有人在現場唱美聲,否則整個輸入過程是可以通過聲音還原出來的。

        3、電視和網絡媒體要注意了,在撥號給其他人的時候,最好不要把撥號過程也放出來,有人起了歹心的話這可是很危險的。

來自: 驅動之家

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!