Список использованных источников



1. А. Е. Ваулин «Факторизация числа, проблемы ее теории» - 2014. - [Электронный ресурс] https://habr.com/ru/post/226395/

2. А.А. Сериков «Методы криптоанализа» - 2015 – [Электронный ресурсы] https://intuit.ru/studies/courses/940/456/lecture/10198

3. В.С. Головин «Факторизация чисел и методы решета»- 2020. – [Электронный ресурс] https://se7en.ws/faktorizaciya-chisel-i-metody-resheta-chast

4. «Сравнительный анализ методов факторизации натуральных чисел» -2013. – [Интернет ресурс]  https://www.bibliofond.ru/view.aspx?id=656994

5. Интернет ресурс profy48.ru.

6. Приказ ФСБ РФ от 9.02.2005 N 66 "Об утверждении Положения о разработке, производстве, реализации и эксплуатации шифровальных (криптографических) средств защиты информации (Положение ПКЗ-2005)"

7. Об утверждении Положения о лицензировании деятельности по разработке, производству, распространению шифровальных (криптографических) средств, информационных систем и телеком-муникационных систем, защищенных с использованием шифровальных (криптографических) средств, выполнению работ, оказанию услуг в об-ласти шифрования информации, техническому обслуживанию шифро-вальных (криптографических) средств, информационных систем и теле-коммуникационных систем, защищенных с использованием шифро-вальных (криптографических) средств (за исключением случая, если техническое обслуживание шифровальных (криптографических) средств, информационных систем и телекоммуникационных систем, защищенных с использованием шифровальных (криптографических) средств, осуществляется для обеспечения собственных нужд юридического лица или индивидуального предпринимателя) [Электронный ресурс].: постановление Правительства Рос. Федерации от 16.04.2012 № 313 // КонсультантПлюс : справочная правовая система / разраб. НПО «Вычисл. математика и информатика». – Москва : Консультант Плюс, 1997-2020. – Режим доступа : http://www.consultant.ru. – 01.12.2020.

8. Интернет СУБД [Электронный ресурс]. –Математика криптографи и теория шифрования - Режим доступа:https://intuit.ru/studies/courses/552/408/lecture/9368?page=6

9. Интернет СУБД [Электронный ресурс]. –Метод Лемана- Режим доступа:http://wp.wiki wiki.ru/wp/index.php/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%9B%D0%B5%D0%BC%D0%B0%D0%BD%D0%B0

10. Интернет СУБД [Электронный ресурс]. – Python- Режим доступа:https://pythonworld.ru/moduli/modul-math.html

11. Интернет СУБД [Электронный ресурс]. – Pythondocymentation- Режим доступа:https://andreyex.ru/yazyk-programmirovaniya-python/python-3-chislovaya-funkciya-sqrt/

12. Интернет СУБД [Электронный ресурс]. – Pythondocymentation- Режим доступа:https://docs.microsoft.com/ru-ru/cpp/c-runtime-library/reference/ceil-ceilf-ceill?view=msvc-160&viewFallbackFrom=vs-2019

13. Интернет СУБД [Электронный ресурс]. – Разложение чисел- Режим доступа:https://brestprog.by/topics/factorization/

14. С. Авдошин, А.Савельев «Криптоанализ: вчера, сегодня, завтра » - 2009. - [Электронный ресурс] https://www.osp.ru/os/2009/03/8120956

15. Л. Инфельд, Т.Е. Халл «Метод факторизации» - 2009. -[Электронный ресурс] http://ega-math.narod.ru/Nquant/Infeld.htm

16. Интернет СУБД [Электронный ресурс]. Алгоритмы факторизации натуральных чисел Режим доступа: https://studbooks.net/2321890/informatika/algoritmy_faktorizatsii_naturalnyh_chisel

 

 


 

Приложение А

 

Листинг программы

frommathimportsqrt, ceil
k=0
z=1
chase=int(input("Чтобы воспользоваться алгоритмом ферма введите 1, чтобы использовать алгоритм Лемана введите 2:"))
ifchase==1:
whileTrue:
try:
       n = int(input("Введите целое нечётное число:"))
       k = 0
z = 1
ifn % 2 == 1:
           s1 = sqrt(n)
           s = ceil(s1)
ifs != s1: # если не целое извленичение
whilez != 0:
                   x = s + k
                   L = (x ** 2) - n
                   y1 = sqrt(L)
                   y = round(y1)
ify == y1:
                       a = x + y
                       b = x - y
print(n, "=", a, "*", b)
ifa == 1 orb == 1:
print(n, "Простое число")
                       z = 0
else:
                       k += 1
else: # если целое
a = s
print(n, '=', a, "*", a)
else:
print('Неверное число')
exceptValueError:
print("Ошибка это не число")

if chase==2:
N=int(input(" Введитецелоенатуральноечисло :"))
I, k, d, A, B, t, dd=int
for I := 2 in Trunc(Power(N, 1 / 3))
if N % I == 0:
       Result = I
for k == 1 in Trunc(Power(N, 1 / 3)) do:
      for d ==0 in Trunc( Power(N, 1 / 6) / (4 * Sqrt(k)) ) + 1:
      A = Trunc(Sqrt(4 * k * N)) + d;
      t = Sqrt(A) - 4 * k * N;
if t <0:
      B = Trunc(Sqrt(t))
if Sqr(B) == t:
      ASSERT((A + B) * (A - B) // N == 0 )
      dd = GCD(A - B, N)
if (1 <dd) and (dd< N):
       Result = dd
else:
print(' Неверноечисло ')
except ValueError:
print(" Ошибкаэтонечисло ")


Дата добавления: 2021-01-20; просмотров: 67; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!