整數分解是給出一個正整數，將其寫成幾個質數的乘積的過程。在密碼學中應用到了快速進行整數分解的技術。分解的難度取決於給定數字的大小、形式以及其質因子。目前，大的半素數一般都難以分解（實際上，大多數沒有小因子的數字都很難分解）。 一般形式的數字 首次進行大規模分散式分解的整數是 RSA129。1977 年《科學美國人》中首次提出了這個挑戰，並首次普及了 RSA 密碼系統。1993 年 9 月至 1994 年 4 月間，基於二次篩選法實現了分解。分解過程中有約 600 人透過網際網路參與了貢獻，並最終在貝爾實驗室的 MasPar 超級計算機上完成了分解。 RSA 公司提出的另一個的 155 位挑戰數字 RSA155，在 1999 年 1 月至 8 月間被分解完成。這次分解基於普通數域篩選法，並再次由一個大團隊參與貢獻。最後的計算是由在（SARA）的克雷 C916 超級計算機完成的，僅用時 9 天多。 在 2002 年 1 月，Franke 等人在波恩大學花費了大約幾個月的時間用 25 臺 PC，成功分解出 2953 1 的 158 位共因子，最後階段的計算在六臺 PentiumIII PC 組成的叢集完成。 在 2003 年 4 月，Franke 團隊使用德國聯邦資訊安全辦公室（BSI）約 100 個 CPU 對 160 位的 RSA160 進行了因子分解，最後階段的計算在 SGI Origin 超級計算機的 25 個處理器完成。 在 2003 年 12 月，Franke、Kleinjung 以及 NFSNET 合作伙伴的成員利用德國聯邦資訊安全辦公室（BSI）和波恩大學的資源成功分解了 576 位（174 位數字的）RSA576；隨後不久，Aoki、Kida、Shimoyama、Sonoda 和 Ueda 宣佈他們已經成功分解出了 21826 1 的 164 位共因子。 在 2005 年 2 月至 5 月期間，Aoki、Kida、Shimoyama 和 Ueda 利用日本 NTT 和立教大學的計算機成功分解出 11281 1 的 176 位共因子。 根據 2005 年 5 月 9 日宣佈的訊息，在 2003 年 12 月至 2005 年 5 月期間，663 位（200 位數字的）RSA200 數字的分解挑戰由 Franke、Kleinjung 等人使用德國聯邦資訊安全辦公室（BSI）中由 80 個 Opteron 處理器構成的叢集完成，後來，他們在 2005 年 11 月成功完成了分解稍小的 RSA640 的挑戰。 在 2009 年 12 月 12 日，一個由 CWI、EPFL、INRIA、NTT 的研究人員和之前記錄的作者組成的團隊，成功分解了一個 232 位的半質數（RSA768）。如果這個數字在單個 22 GHz AMD Opteron 核心計算需要進行 2000 年以上的時間。 在 2019 年 11 月，Fabrice Boudot、Pierrick Gaudry、Aurore Guillevic、Nadia Heninger、Emmanuel Thomé 和 Paul Zimmermann 成功分解了 795 位（240 位數字的）RSA240。 F Boudot et al Comparing the difficulty of factorization and discrete logarithm a 240digit experiment June 10 2020 2020 年 2 月，完成 829 位（250 位） 的 RSA250 分解。 特殊形式的數字 1993 年 4 月至 7 月，12151 1，共 542 位（163 位數字）被 CWI 和俄勒岡州立大學的一個團隊成功分解。 2000 年 4 月至 11 月，2773 1，共 774 位（233 位數字），被 The Cabal 團隊在矩陣步驟在 Cray 超級計算機上花費了 250 小時成功分解，該計算機還被用於 RSA155 的分解。 2003 年初，2809 1，共 809 位（244 位數字），其分解宣佈完成。篩選工作在 CWI、波恩大學科學計算研究所和純數學系進行，同時利用了 J Franke、T Kleinjung 和 F Bahr 家族的私人資源。線性代數步驟由 P Montgomery 在阿姆斯特丹的 SARA 完成。 2005 年 9 月至 2006 年 1 月，6353 1，共 911 位（275 位數字），由 Aoki、Kida、Shimoyama 和 Ueda 使用 SNFS 完成分解。 2006 年 9 月至 2007 年 5 月，21039 1 共 1039 位（313 位數字）（儘管已知一個 23 位的因子），由包括 K Aoki、J Franke、T Kleinjung、A K Lenstra 和 D A Osvik 在內的一個團隊使用 NTT、EPFL 和波恩大學的計算機成功分解。 2011 年初至 2012 年 8 月 4 日，21061 1，共 1061 位（320 位數字），由 Greg Childers 領導的一個團隊完成分解，他們使用 nfshome BOINC 專案進行約 300 個 CPU 年的篩選；線性代數階段在 SDSC 的 Trestles 叢集和 TACC Lonestar 的 CPU 叢集上額外運行了 35 年 所有 2n 1（其中 n 介於 1000 和 1200 之間）的未因子分解部分，從 2010 年開始，由 T Kleinjung、J Bos 和 A K Lenstra 等人組成的團隊透過多數篩法（多數篩法使得多個數字可以同時進行大部分篩選步驟。）的方法進行因子分解， 具體而言： n 1081（326 位數字）於 2013 年 3 月 11 日完成； n 1111（335 位數字）於 2013 年 6 月 13 日完成； n 1129（340 位數字）於 2013 年 9 月 20 日完成； n 1153（348 位數字）於 2013 年 10 月 28 日完成； n 1159（349 位數字）於 2014 年 2 月 9 日完成； n 1177（355 位數字）於 2014 年 5 月 29 日完成； n 1193（360 位數字）於 2014 年 8 月 22 日完成； n 1199（361 位數字）於 2014 年 12 月 11 日完成； 首次詳細公告於 2014 年 8 月底釋出。整個專案如果採用 22 GHz Opteron 處理器，總計算工作量約為 7500 年，其中大約 5700 年用於篩選，1800 年用於線性代數。 個人記錄 截至 2007 年底，得益於記憶體技術發展，成本持續下降，多核 64 位計算機更容易獲取，加上 ggnfs 和在後期 msieve 等穩定的開源軟體釋出。一個甚至不需要任何專業的數學經驗的人就可以幾個月內就在幾臺個人計算機上分解最多 750 位（226 位數字）的特殊形式的數字，或者約 520 位（157 位數字）的一般形式的數字 。如果能夠在篩選階段就有幾十臺計算機的協助，上限將增加到約 950 位（286 位數字）特殊形式的數字 和 600 位（181 位數字）一般形式的數字。目前，單臺計算機在後期階段的記憶體和 CPU 效能是主要障礙。 2009 年，Benjamin Moody 使用在網際網路上找到的軟體，成功分解了用於簽名 TI83 圖形計算器的 512 位（155 位數字）RSA 金鑰；這最終導致了德州儀器簽名金鑰爭議。 2013 年 9 月，Ryan Propper 使用機構資源成功分解了 696 位（210 位數字）的 RSA210； 2013 年 3 月至 2014 年 10 月期間，另一個 210 位數字（以 49 開頭的家庭素數序列的第 117 個術語）由一個名為 WraithX 的使用者 完成；他花費了 7600 美元租貿 Amazon EC2 機器的時長來進行篩選工作，並在擁有雙路 Xeon E52687W v1 處理器的機器上花費了四個月進行線性代數計算 量子計算機的新記錄 Shors 演算法可靠因子分解的最大數字是 21，該數字於 2012 年被分解 。之前，一些實驗室已經對 15 進行了因子分解。 在 2012 年 4 月，由彭新華領導的一個團隊報告了在室溫（300K）下使用 NMR 絕熱量子計算機對 143 進行的因子分解，得到了 13 11 的結果 。 2014 年 11 月，發現 2012 年的實驗實際上已經對更大的數字進行了因子分解 2016 年 4 月，使用 DWave 2X 量子處理器上的量子退火對 18 位數字 200099 進行了因子分解不久之後，利用高於室溫的 NMR 對 291311 進行了因子分解 。 2019 年末，Zapata computing 聲稱已經因子分解了 1099551473989 ，並在 2021 年釋出了描述該計算的論文 2024 年，Samer Rahmeh 運用絕熱量子計算（AQC）成功地使用 Dynex 神經形態計算平臺對 201 位（666 位）質數進行了因子分解 。 因此，關於使用量子計算機進行因子分解的宣告受到批評，因為這很大程度上依賴於經典計算來減少所需量子位元的數量 例如，對 1099551473989 的因子分解依賴於經典預處理，將問題減少為一個三位元的量子電路 此外，本文中對三個數字（200099、291311 和 1099551473989）的因子分解可以輕鬆使用費馬的因子分解方法進行，分別只需 3、1 和 1 次迭代。 參見 已知最大素數 整數分解 參考文獻 Category 整數分解演算法 Category 世界紀錄 Category 發展歷史