最近半年實在是太忙了,一直沒有更新項目。
最近先是花了一天多時間,解決了一下拖了很久的性能問題。通過重寫APK Parser、啟用新的數據結構和並行計算模塊,把性能提升了10倍不止,詳情可以參見這兩個commit:5bf7804 & 388e25f
然後,就是把項目中的註釋幾乎全盤改成了中文,方便以後的交流。剩下還沒有改完的部分誠求熱心人幫一下忙,翻譯起來實在是太累了。
接下來會找機會把目前提交的issue看一下,把6.6.x及以上的微信版本都適配一下,不過這可能要等到12月底了吧。
Wechat Spellbook 是一個使用Kotlin編寫的開源微信插件框架,底層需要Xposed 或VirtualXposed 等Hooking框架的支持,而頂層可以輕鬆對接Java、Kotlin、Scala等JVM系語言。讓程序員能夠在幾分鐘內編寫出簡單的微信插件,隨意揉捏微信的內部邏輯。
另外,在編寫項目文檔的過程中,也會找機會向大家分享一些逆向微信的經驗和適配不同操作系統踩到的坑,也歡迎大家把自己的經驗分享上來自由討論。
目前對於VirtualXposed的支持還算不上完善,因為VirtualXposed的環境和原生Xposed的環境實在是差了太多,我和weishu折騰了很久才算是在部分設備上解決了黑屏卡死的問題。現在我們倆發布代碼的日子裡,一個拜三清一個拜關公,希望能夠幫Bug們早日往生。
在出於興趣接觸微信逆向的短短一年裡,我接觸到了形形色色的開發者、投資者、支持者。被微信本身複雜成熟的架構深深吸引的同時,也驚異於微信衍生出來的灰色產業之龐大、第三方微信競爭之激烈。 有不少朋友勸我閉源、商業化,而且拿出了很多細緻的想法,我很感激他們的幫助,但是最後還是決定在開源的方向上再次邁出了一大步,原因有二。
其一,我不想停在這裡。商業化必然牽扯大量的時間精力和權益糾葛。我不想在自己正處在上升期的時候,就草率地把大量的時間精力都花在一個剛滿20歲的時候意外做出來的小成就上,然後吃上十幾年的老本。而且這個項目,歸根結底是一個寄生在微信上的項目。這種格局,跟我每天在實習崗位上接觸到的、跟大學裡的同學談論到的,都根本不在一個層面上。我雖然知道自己的才華有限,但是只要有機會的話,我還是想看看更高處的風景。
其二,我太過理想主義。中國互聯網在很早的時候就已經是一個相當商業化的世界了。我並不反對商業化,也不覺得商業化有任何的道德問題。人,總歸是要吃飯的。像fkzhang這樣能靠自己的才華吃飯,既不偷也不搶,這有什麼錯呢?但是我心裡總歸是感覺到失落的,因為我最早愛上的,是一個自由的互聯網,是一個為每個有才華有求知欲的年輕人準備的兒童樂園。只要思想用0和1表達出來,就再也沒有什麼規則能夠阻擋他們,他們就是兒童樂園之王。我希望當我國的年輕一代對計算機產生好奇時,也能像西方國家的孩子們一樣,能夠輕鬆地、無語言障礙地,接觸到大量好玩有趣的個人開源項目,進而愛上這個0與1的世界。如果有年輕的初中、高中的學弟學妹,能夠用我的項目把微信像橡皮泥一樣隨意揉捏,像當年的我一樣深深地享受到這個世界的樂趣,那麼對我實在是一種莫大的鼓勵與快樂。
當然,對於諸位想要基於我的項目做商業項目的開發者,也請儘管拿去。我不喜歡道德綁架別人,也不認為這有什麼綁架的必要。但是如果你在閒暇時間能夠貢獻十幾行代碼、修復些你發現的Bug,那就已經十分感激。
應Issue #5 的請求,貼上打賞二維碼,讓我們回歸平和的技術討論。

