rsa220


Factorisation of RSA-220 with CADO-NFS by Shi Bai, Pierrick Gaudry, Alexander Kruppa, Emmanuel Thomé and Paul Zimmermann.
This matrix comes from a Number Field Sieve calculation to factor the RSA-220 challenge number. The main part is a 132253465x132253305 matrix defined over GF(2), with 175 non-zero coefficients per row on average.
The matrix is sorted in binary as a sequence of rows. There is no header. Each row holds a 32-bit little endian integer for the row weight, followed by this very number of 32-bit little endian integers, indicating column indices of non-zero elements.
As is relatively usual with the Number Field Sieve factorization algorithm, the densest columns of the relation matrix produced by the algorithm are put aside before linear algebra processing, and the required correction is performed later on. Here, 32 columns were put aside, in the rsa220.merge.dense.bin file.
The row weight and column weight files, for each matrix, are stored simply as list of 32-bit little endian integers.
The rsa220.png image below represents the matrix density, obtained by splitting the matrix into blocks of size about 2^17, and assigning a gray level to the various densities obtained.

  • rsa220.png
  •       4 ko      
  • rsa220.merge.sparse.bin
  •       87G        132253465x132253305, 23144357191 non-zero coefficients
  • rsa220.merge.sparse.rw.bin
  •       505M       row weights
  • rsa220.merge.sparse.cw.bin
  •       505M       column weights
  • rsa220.merge.dense.bin
  •       6.6G        132253465x32, 1651178683 non-zero coefficients
  • rsa220.merge.dense.rw.bin
  •       505M       row weights
  • rsa220.merge.dense.cw.bin
  •       1k       column weights