跳至內容
主選單
主選單
移至側邊欄
隱藏
導覽
首頁
近期變更
隨機頁面
MediaWiki說明
搜尋
搜尋
外觀
建立帳號
登入
個人工具
建立帳號
登入
用於已登出編輯者的頁面
了解更多
貢獻
討論
正在編輯「
粒子探測器
」
頁面
討論
臺灣正體
閱讀
編輯
編輯原始碼
檢視歷史
工具
工具
移至側邊欄
隱藏
操作
閱讀
編輯
編輯原始碼
檢視歷史
一般
連結至此的頁面
相關變更
特殊頁面
頁面資訊
外觀
移至側邊欄
隱藏
文字
小
標準
大
此頁面始終使用小字型
寬度
標準
寬
內容已盡可能延展寬度以適應您的瀏覽器視窗。
警告:
您尚未登入。 若您進行任何的編輯您的 IP 位址將會被公開。 若您
登入
或
建立帳號
,您的編輯將會以您的使用者名稱標示,並能擁有另外的益處。
防垃圾訊息檢查用。
請勿
填寫此欄位!
預覽
切換編輯器
您已切換至原始碼編輯
關閉
您可以隨時點選此圖示切換回視覺化編輯器。
視覺化編輯
原始碼編輯
更多
進階
特殊文字
說明
標題
標題 2
標題 3
標題 4
標題 5
格式
插入
拉丁文
拉丁文擴充
國際音標
符號
希臘文
希臘字母擴充
斯拉夫文
阿拉伯文
阿拉伯文擴充
希伯來文
孟加拉文
坦米爾文
特拉古文
僧伽羅文
梵文
古吉拉特文
泰文
寮文
高棉文
加拿大原住民
盧恩
Á
á
À
à
Â
â
Ä
ä
Ã
ã
Ǎ
ǎ
Ā
ā
Ă
ă
Ą
ą
Å
å
Ć
ć
Ĉ
ĉ
Ç
ç
Č
č
Ċ
ċ
Đ
đ
Ď
ď
É
é
È
è
Ê
ê
Ë
ë
Ě
ě
Ē
ē
Ĕ
ĕ
Ė
ė
Ę
ę
Ĝ
ĝ
Ģ
ģ
Ğ
ğ
Ġ
ġ
Ĥ
ĥ
Ħ
ħ
Í
í
Ì
ì
Î
î
Ï
ï
Ĩ
ĩ
Ǐ
ǐ
Ī
ī
Ĭ
ĭ
İ
ı
Į
į
Ĵ
ĵ
Ķ
ķ
Ĺ
ĺ
Ļ
ļ
Ľ
ľ
Ł
ł
Ń
ń
Ñ
ñ
Ņ
ņ
Ň
ň
Ó
ó
Ò
ò
Ô
ô
Ö
ö
Õ
õ
Ǒ
ǒ
Ō
ō
Ŏ
ŏ
Ǫ
ǫ
Ő
ő
Ŕ
ŕ
Ŗ
ŗ
Ř
ř
Ś
ś
Ŝ
ŝ
Ş
ş
Š
š
Ș
ș
Ț
ț
Ť
ť
Ú
ú
Ù
ù
Û
û
Ü
ü
Ũ
ũ
Ů
ů
Ǔ
ǔ
Ū
ū
ǖ
ǘ
ǚ
ǜ
Ŭ
ŭ
Ų
ų
Ű
ű
Ŵ
ŵ
Ý
ý
Ŷ
ŷ
Ÿ
ÿ
Ȳ
ȳ
Ź
ź
Ž
ž
Ż
ż
Æ
æ
Ǣ
ǣ
Ø
ø
Œ
œ
ß
Ð
ð
Þ
þ
Ə
ə
格式
連結
標題
清單
檔案
討論
參考來源
描述
您輸入的內容
您取得的結果
斜體
''斜體文字''
斜體文字
粗體
'''粗體文字'''
粗體文字
粗斜體
'''''粗斜體文字'''''
粗斜體文字
描述
您輸入的內容
您取得的結果
參考來源
頁面文字。<ref>[https://www.example.org/ 連結文字],其他文字。</ref>
頁面文字。
[1]
已命名的參考文獻
頁面文字。<ref name="测试">[https://www.example.org/ 連結文字]</ref>
頁面文字。
[2]
重複使用相同參考來源
頁面文字。<ref name="测试" />
頁面文字。
[2]
顯示參考來源
<references />
↑
連結文字
,其他文字。
↑
連結文字
[[檔案:Mess Detector.webp|縮圖|粒子探測器]] 粒子探測器,通過一系列的紅石裝置測量了TNT點燃跳起時的隨機角度反向計算Math.random的種子碼 可用於預測MINECRAFT內所有隨機事件的發生。<blockquote>此機器擁有100%的預測正確率,該機器也極度敏感,只要有一玩家在任何一個維度的一個角落中吃了食物並且產生出食物碎屑粒子該機器就可以檢測這個世界有人吃食物了!</blockquote> == 起因 == 粒子探測器的誕生是為了用來建造Minecraft中最快的經驗值農場,終界龍農場。 由於玩家每秒最多只能吸收10顆經驗球,但我們知道終界龍每次死亡對會掉落經驗球 其中的兩顆球特別大顆,為了去分類出這兩顆大球,所以建造了粒子探測器去預測球的掉落順序 確保每次玩家總是吸起終界龍那兩顆特別大的球,以確保最高效率的獲取經驗值。 == 內部結構 == * 48-bit 乘法器 * 12-bit 乘法器 * 累計加法器模組 * TNT角度偵測器 * 十六進位to十進位轉換器 * 7個 8bit 記憶體 == 原理 == Minecraft本身運用的隨機數產生法是Linear Congruential generator(LCG)線性同餘生成器 公式為:seed_new = (seed_current * a) + b (mod m) java中使用的參數為:a = 25214903917 、 b = 11 、 m = 2^48 而最後輸出隨機種子碼,但只會有高位前32bit輸出 LCG在隨機數生成中具有一定的隨機性,但其內部的結構使得它可預測,這些可預測性可以被利用來進行破解 以下是LCG的幾個弱點。 * '''低位比特的重複性:''' 在LCG的生成過程中,低位比特往往具有高度的重複性,這代表著相同的低位比特可能會在不同的隨機數中反覆出現,Java通過僅輸出高位的32位來減少這種重複性對隨機性的影響,然而,低位的這種重複特性依然存在,在某些情況下可被利用進行破解。 * '''行列式弱點:''' 假設使用n×n的矩陣來表示LCG的輸出,其中每一行代表連續n次的LCG調用結果。當計算這個矩陣的行列式時,其結果會是k*m^(n-1)的形式,這裡的k是一個整數。如果k等於1,則這些向量可以生成LCG後續所有可能的點,這代表著這些點之間的關係是可預測的,並且可以通過數學方法來逆向推導出最初的隨機種子。 * '''網格結構:''' 當LCG的結果被繪製在二維或更高維度的空間中時,它們往往會形成一個網格狀的結構,這種結構看起來並不隨機。這種網格特性使得它在視覺上表現出規則性,而這種規則性正是在破解中所利用的關鍵。通過分析這些網格,我們可以推導出LCG的內部狀態,進而反推LCG的隨機數生成過程。 這台機器有一個半徑120格的圓形區域,且在周圍放上了692個偵測器用於偵測TNT隨機發射角度,每次偵測都會發射7顆TNT來偵測角度,拿到7個角度後進行反向計算出隨機種子碼,組成一個7維的超立方體,接下來就開始使用線性代數進行破解。
摘要:
請注意,所有於華麥百科所做的貢獻會依據CC BY-SA(創用CC 姓名標示─相同方式分享)授權條款發佈(詳情請見
說明:著作權
)。若您不希望您的著作被任意修改與散佈,請勿在此發表文章。
您同時向我們保證在此的著作內容是您自行撰寫,或是取自不受版權保護的公開領域或自由資源。
請勿在未經授權的情況下發表文章!
為防止 wiki 遭受自動化編輯垃圾訊息,請完成以下驗證碼:
取消
編輯說明
(在新視窗開啟)
歡迎光臨 華麥百科
任何人可編輯,每次改進都可以協助我們。
感謝您的協助讓眾人發現世界!
切換至視覺化編輯器
開始編輯