В объяснениях, которые я прочитал о криптографии с открытым ключом, говорят, что некоторое большое число возникает, умножая вместе два чрезвычайно больших простых числа. Так как факторизация продукта больших простых чисел практически невозможна, у вас есть безопасность.
Это похоже на проблему, которую можно было бы тривиально решить с помощью радужных таблиц. Если вы знаете приблизительный размер используемых простых чисел и знаете, что их 2, вы можете быстро построить радужный стол. Это была бы огромная большая таблица, но это могло бы быть сделано, и задача могла быть распараллелирована на аппаратном уровне.
Почему таблицы радуги не являются эффективным способом превзойти криптоалгоритм открытого ключа, основанный на умножении больших простых чисел?
Отказ от ответственности: очевидно, что десятки тысяч сумасшедших умных людей, сознающих безопасность, не просто пропустили на протяжении десятилетий то, что я придумал днем. Я предполагаю, что я неправильно понимаю это, потому что я читал упрощенные объяснения непрофессионалов (например: если используется более двух чисел), но я пока недостаточно знаю, где мой пробел в знаниях.
Изменить: я знаю, что "таблица радуги" относится к использованию предварительно вычисленных хэшей в таблице поиска, но вышеупомянутое звучит как атака радужного стола, поэтому я использую этот термин здесь.
Изменить 2: Как отмечено в ответах, нет способа сохранить только все простые числа, а тем более все их продукты.
- Этот сайт говорит о том, что это много 512 бит простых чисел: ((2 ^ 511) * 1)/(512 log (2) ) = 4,35 × 10 151
- масса солнца составляет 2 × 10 30 кг или 2 × 10 33 g
- Это 2.17 × 10 124 простых чисел на грамм солнца.
- Кол-во. из 512-битных чисел, которые могут поместиться в килобайт: 1 kb = 1024 байта = 8192 бит /512 = 16
- Это может поместиться в терабайт: 16 * 1024 * 1024 * 1024 = 1.72 × 10 10
- Petabyte: 16 * 1024 * 1024 * 1024 * 1024 = 1.72 × 10 13
- Exabyte: 16 * 1024 * 1024 * 1024 * 1024 * 1024 = 1.72 × 10 16
Даже если 1 экзабайт весит 1 грамм, мы нигде не приближаемся к достижению 2.17 × 10 124 чтобы соответствовать всем этим числам на жесткий диск с массой солнца