Вы находитесь на странице: 1из 90

Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Puede una computadora saber si un


numero es primo?

Daniel Rivera
Facultad de Ciencias
Universidad Autonoma del Estado de Morelos

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que es un numero primo?

Los numeros enteros


Los numeros enteros son

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que es un numero primo?

Los numeros enteros


Los numeros enteros son

. . . , 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, . . .

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que es un numero primo?

Los numeros enteros


Los numeros enteros son

. . . , 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, . . .

Division entera

Al dividir m entre n obtenemos:


I Un cociente q, que tambien es un
numero entero

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que es un numero primo?

Los numeros enteros


Los numeros enteros son

. . . , 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, . . .

Division entera

Al dividir m entre n obtenemos:


I Un cociente q, que tambien es un
numero entero
I Un residuo r , que es un numero
entero 0

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que es un numero primo?

Los numeros enteros


Los numeros enteros son

. . . , 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, . . .

Division entera
Al dividir m entre n obtenemos:
I Un cociente q, que tambien es un
numero entero
I Un residuo r , que es un numero
entero 0
I De echo 0 r < |n|.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Ejemplo de division entera

Al dividir 123 entre 7 obtenemos:

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Ejemplo de division entera

Al dividir 123 entre 7 obtenemos:


I Un cociente q = 17

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Ejemplo de division entera

Al dividir 123 entre 7 obtenemos:


I Un cociente q = 17
I Un residuo r = 4

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Ejemplo de division entera

Al dividir 123 entre 7 obtenemos:


I Un cociente q = 17
I Un residuo r = 4

Escrito de otra forma:

123 = (7 17) + 4

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Divisores
Si m yn son numeros enteros, decimos que n divide a m, o que n
es divisor de m si

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Divisores
Si m yn son numeros enteros, decimos que n divide a m, o que n
es divisor de m si

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Divisores
Si m yn son numeros enteros, decimos que n divide a m, o que n
es divisor de m si

es decir

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Divisores
Si m yn son numeros enteros, decimos que n divide a m, o que n
es divisor de m si

es decir

m = nq

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Divisores
Si m yn son numeros enteros, decimos que n divide a m, o que n
es divisor de m si

De todos los divisores de un numero m nos interesan los divisores n


de m tales que
1 < n < |m|

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

De todos los divisores n de un numero m nos interesan los n tales


que
1 < n < |m|

Numero primo
El numero m > 0 es primo si y solo si para todo 1 < n < m

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Numero primo
El numero m > 0 es El numero m es primo
primo si y solo si para si y solo si para todo

todo 1 < n m 1<n<m

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Propiedad
(a) Si para todo (b) entonces para todo

1<n m 1<n<m

Demostracion
Si se cumple (a) y para Entonces m = nq con

algun m < n < m q m

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70
71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90
91 92 93 94 95 96 97 98 99 100

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70
71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90
91 92 93 94 95 96 97 98 99 100

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

2 3 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70
71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90
91 92 93 94 95 96 97 98 99 100

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

2 3 5 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70
71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90
91 92 93 94 95 96 97 98 99 100

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

2 3 5 7 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70
71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90
91 92 93 94 95 96 97 98 99 100

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

2 3 5 7 9
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70
71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90
91 92 93 94 95 96 97 98 99 100

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

2 3 5 7 9
11 13 15 17 19
21 23 25 27 29
31 33 35 37 39
41 43 45 47 49
51 53 55 57 59
61 63 65 67 69
71 73 75 77 79
81 83 85 87 89
91 93 95 97 99

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

2 3 5 7
11 13 17 19
23 25 29
31 35 37
41 43 47 49
53 55 59
61 65 67
71 73 77 79
83 85 89
91 93 95 97

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

2 3 5 7
11 13 17 19
23 29
31 37
41 43 47 49
53 59
61 67
71 73 77 79
83 89
91 93 97

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Como encontrar numeros primos?

Criba de Eratostenes

2 3 5 7
11 13 17 19
23 29
31 37
41 43 47
53 59
61 67
71 73 79
83 89
93 97

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Numeros primos entre 1 y 100


[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61,
67, 71, 73, 79, 83, 89, 97]

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Numeros primos entre 1 y 100


[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61,
67, 71, 73, 79, 83, 89, 97]

Tiempo en segundos:
0.0099999999999997868

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Numeros primos entre 1 y 1000, 0.0099999999999997868


seg.
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61,
67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137,
139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199,
211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277,
281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359,
367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439,
443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521,
523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607,
613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683,
691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773,
787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863,
877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967,
971, 977, 983, 991, 997]

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Primos, 1-10,000, en 0.099999999999994316 seg.


[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61,
67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137,
139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199,
211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277,
281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359,
367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439,
443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521,
523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607,
613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683,
691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773,
787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863,
877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967,
971, 977, 983, 991, 997, 1009, 1013, 1019, 1021, 1031, 1033,
1039, 1049, 1051, 1061, 1063, 1069, 1087, 1091, 1093, 1097,
1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, 1171, 1181,

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Primos, 1-10000, en 0.099999999999994316 seg.


8713, 8719, 8731, 8737, 8741, 8747, 8753, 8761, 8779, 8783,
8803, 8807, 8819, 8821, 8831, 8837, 8839, 8849, 8861, 8863,
8867, 8887, 8893, 8923, 8929, 8933, 8941, 8951, 8963, 8969,
8971, 8999, 9001, 9007, 9011, 9013, 9029, 9041, 9043, 9049,
9059, 9067, 9091, 9103, 9109, 9127, 9133, 9137, 9151, 9157,
9161, 9173, 9181, 9187, 9199, 9203, 9209, 9221, 9227, 9239,
9241, 9257, 9277, 9281, 9283, 9293, 9311, 9319, 9323, 9337,
9341, 9343, 9349, 9371, 9377, 9391, 9397, 9403, 9413, 9419,
9421, 9431, 9433, 9437, 9439, 9461, 9463, 9467, 9473, 9479,
9491, 9497, 9511, 9521, 9533, 9539, 9547, 9551, 9587, 9601,
9613, 9619, 9623, 9629, 9631, 9643, 9649, 9661, 9677, 9679,
9689, 9697, 9719, 9721, 9733, 9739, 9743, 9749, 9767, 9769,
9781, 9787, 9791, 9803, 9811, 9817, 9829, 9833, 9839, 9851,
9857, 9859, 9871, 9883, 9887, 9901, 9907, 9923, 9929, 9931,
9941, 9949, 9967, 9973]

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

n = 10, 000, 000


Para n = 10, 000, 000 despues de 45 minutos la criba no tenia
respuesta

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

n = 10, 000, 000


Para n = 10, 000, 000 despues de 45 minutos la criba no tenia
respuesta
I No queremos esperar tanto y queremos primos mucho mas
grandes que estos.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

n = 10, 000, 000


Para n = 10, 000, 000 despues de 45 minutos la criba no tenia
respuesta
I No queremos esperar tanto y queremos primos mucho mas
grandes que estos.
I La criba no es el algoritmo que buscamos

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Ensayar divisiones
I La computadora puede generar un entero de 100 digitos o mas,
muy rapido.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Ensayar divisiones
I La computadora puede generar un entero de 100 digitos o mas,
muy rapido.
I Si en lugar de buscar todos los de 100 digitos o mas, generamos
un entero n de
p100 digitos o mas y lo dividimos por los numeros a
con 1 < a < (n)

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Ensayar divisiones
j k
1 Para K = 2, 3, 4, . . . , N :
1 Si K divide a N entonces N es compuesto
2 N es primo

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Ensayar divisiones
j k
1 Para K = 2, 3, 4, . . . , N :
1 Si K divide a N entonces N es compuesto
2 N es primo
I Probemos esto con el numero:
40461075997098802266174901289690412333827294480687731455-
4080878111852524146558641693740196090818125577

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Ensayar divisiones
j k
1 Para K = 2, 3, 4, . . . , N :
1 Si K divide a N entonces N es compuesto
2 N es primo
I Probemos esto con el numero:
40461075997098802266174901289690412333827294480687731455-
4080878111852524146558641693740196090818125577
Despues de 1 hora y 30 minutos no haba respuesta.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Teorema pequeno de Fermat


Si p es un numero primo, entonces para todo numero natural a
mayor o igual que 2 pero menor o igual que p 1 se tiene que p es
un divisor de
ap1 1

Test de Fermat
Queremos saber si el numero impar n es primo
1 Buscamos algun b tal que n no sea divisor de b n1 1

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Teorema pequeno de Fermat


Si p es un numero primo, entonces para todo numero natural a
mayor o igual que 2 pero menor o igual que p 1 se tiene que p es
un divisor de
ap1 1

Test de Fermat
Queremos saber si el numero impar n es primo
1 Buscamos algun b tal que n no sea divisor de b n1 1
2 Si lo encontramos n es compuesto

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Teorema pequeno de Fermat


Si p es un numero primo, entonces para todo numero natural a
mayor o igual que 2 pero menor o igual que p 1 se tiene que p es
un divisor de
ap1 1

Test de Fermat
Queremos saber si el numero impar n es primo
1 Buscamos algun b tal que n no sea divisor de b n1 1
2 Si lo encontramos n es compuesto
3 Si no lo encontramos, probablemente n sea un numero primo

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Numeros de Carmichael

1 Existen numeros, denominados numeros de Carmichael, n,


impares compuestos, tales que para toda 1 < a < n: n divide
al numero
an1 1.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Numeros de Carmichael

1 Existen numeros, denominados numeros de Carmichael, n,


impares compuestos, tales que para toda 1 < a < n: n divide
al numero
an1 1.
2 Por ejemplo 561 y 1105.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Numeros de Carmichael

1 Existen numeros, denominados numeros de Carmichael, n,


impares compuestos, tales que para toda 1 < a < n: n divide
al numero
an1 1.
2 Por ejemplo 561 y 1105.
3 Un resultado de Alford, Granville y Pomerance en 1994,
muestra la existencia de infinitos numeros de Carmichael.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Teorema
[pequeno de Fermat]Si p es primo entonces para todo 1 a p se
cumple:
ap1 mod p = 1

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Teorema
[pequeno de Fermat]Si p es primo entonces para todo 1 a p se
cumple:
ap1 mod p = 1

Teorema
Si p es primo y d 2 mod p = 1 entonces d mod p = 1 o d
mod p = p 1.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Reinterpretando, N es compuesto en estos dos casos:

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Reinterpretando, N es compuesto en estos dos casos:


Si encontramos un numero a {1, 2, . . . , N} tal que

aN1 mod N 6= 1

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Reinterpretando, N es compuesto en estos dos casos:


Si encontramos un numero a {1, 2, . . . , N} tal que

aN1 mod N 6= 1

Si encontramos un numero d con 1 < d < N 1 tal que

d2 mod N = 1

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Reinterpretando, N es compuesto en estos dos casos:


Si encontramos un numero a {1, 2, . . . , N} tal que

aN1 mod N 6= 1

Si encontramos un numero d con 1 < d < N 1 tal que

d2 mod N = 1

. . . pero estos no son los unicos dos casos.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin


miller rabin (N):
1 Expresar N 1 = 2t u (dividiendo N 1 entre 2, entre 2, etc.)

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin


miller rabin (N):
1 Expresar N 1 = 2t u (dividiendo N 1 entre 2, entre 2, etc.)
2 Elegir un entero positivo a < N con probabilidad uniforme

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin


miller rabin (N):
1 Expresar N 1 = 2t u (dividiendo N 1 entre 2, entre 2, etc.)
2 Elegir un entero positivo a < N con probabilidad uniforme
3 Calcular d1 = au mod N usando recursivamente la formula


1
si m = 0,
m
a mod N = a am1 mod N si m es impar,
m/2 2

a mod N si m es par.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin


miller rabin (N):
1 Expresar N 1 = 2t u (dividiendo N 1 entre 2, entre 2, etc.)
2 Elegir un entero positivo a < N con probabilidad uniforme
3 Calcular d1 = au mod N usando recursivamente la formula


1
si m = 0,
m
a mod N = a am1 mod N si m es impar,
m/2 2

a mod N si m es par.
4 Para k = 2, . . . , t:

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin


miller rabin (N):
1 Expresar N 1 = 2t u (dividiendo N 1 entre 2, entre 2, etc.)
2 Elegir un entero positivo a < N con probabilidad uniforme
3 Calcular d1 = au mod N usando recursivamente la formula


1
si m = 0,
m
a mod N = a am1 mod N si m es impar,
m/2 2

a mod N si m es par.
4 Para k = 2, . . . , t:
2
1 Calcular dk = dk1 mod N

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin


miller rabin (N):
1 Expresar N 1 = 2t u (dividiendo N 1 entre 2, entre 2, etc.)
2 Elegir un entero positivo a < N con probabilidad uniforme
3 Calcular d1 = au mod N usando recursivamente la formula


1
si m = 0,
m
a mod N = a am1 mod N si m es impar,
m/2 2

a mod N si m es par.
4 Para k = 2, . . . , t:
2
1 Calcular dk = dk1 mod N
2 Si dk = 1 pero dk1
/ {1, N 1} entonces N es compuesto

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin


miller rabin (N):
1 Expresar N 1 = 2t u (dividiendo N 1 entre 2, entre 2, etc.)
2 Elegir un entero positivo a < N con probabilidad uniforme
3 Calcular d1 = au mod N usando recursivamente la formula


1
si m = 0,
m
a mod N = a am1 mod N si m es impar,
m/2 2

a mod N si m es par.
4 Para k = 2, . . . , t:
2
1 Calcular dk = dk1 mod N
2 Si dk = 1 pero dk1
/ {1, N 1} entonces N es compuesto
5 Si dk 6= 1 entonces N es compuesto

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin


miller rabin (N):
1 Expresar N 1 = 2t u (dividiendo N 1 entre 2, entre 2, etc.)
2 Elegir un entero positivo a < N con probabilidad uniforme
3 Calcular d1 = au mod N usando recursivamente la formula


1
si m = 0,
m
a mod N = a am1 mod N si m es impar,
m/2 2

a mod N si m es par.
4 Para k = 2, . . . , t:
2
1 Calcular dk = dk1 mod N
2 Si dk = 1 pero dk1
/ {1, N 1} entonces N es compuesto
5 Si dk 6= 1 entonces N es compuesto
6 En otro caso. . . no sabemos, pero suponemos que es primo

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin

Teorema
Supongamos que el numero a se elige con probabilidad uniforme en
el algoritmo Miller-Rabin.
1 Si el algoritmo afirma que N es compuesto entonces N es
compuesto

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Test de primalidad de Miller-Rabin

Teorema
Supongamos que el numero a se elige con probabilidad uniforme en
el algoritmo Miller-Rabin.
1 Si el algoritmo afirma que N es compuesto entonces N es
compuesto
2 Si el algoritmo afirma que N es primo entonces la probabilidad
de que N en verdad sea primo es
3N + 9 3

4N 4

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Probemos con este numero


404610759970988022661749012896904123338272944806877-
314554080878111852524146558641693740196090818125577

Respuesta

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Probemos con este numero


404610759970988022661749012896904123338272944806877-
314554080878111852524146558641693740196090818125577

Respuesta

1
2 Con una probabilidad de 1 0.99999999999999911
425

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Probemos con este numero


114381625757888867669235779976146612010218296721242362562-
561842935706935245733897830597123563958705058989075147-
599290026879543541

Respuesta

1 Este no es un numero primo

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Probemos con este numero


114381625757888867669235779976146612010218296721242362562-
561842935706935245733897830597123563958705058989075147-
599290026879543541

Respuesta

1 Este no es un numero primo


2 El numero con el que falla el test es:

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Probemos con este numero


114381625757888867669235779976146612010218296721242362562-
561842935706935245733897830597123563958705058989075147-
599290026879543541

Respuesta

1 Este no es un numero primo


2 El numero con el que falla el test es:
3 790887732253936338985039000489516129279968266067078
8827816948799496870796368552060085406478520815592800-
785727060422949659051057

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Sirven para tener comunicaciones seguras

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Criptografa de clave publica

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Criptografa de clave publica

Que tiene que ver esto con los numeros primos?

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para obtener las claves


publicas y privadas

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para obtener las claves


publicas y privadas
I Elige un par de numeros primos p y
q.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para obtener las claves


publicas y privadas
I Elige un par de numeros primos p y
q.
I Calcula n = pq y
m = (p 1)(q 1).

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para obtener las claves


publicas y privadas
I Elige un par de numeros primos p y
q.
I Calcula n = pq y
m = (p 1)(q 1).
I Selecciona un numero entero e con
1 < e < m y mcd(e, m) = 1.

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?
Algoritmo para obtener las claves
publicas y privadas
I Elige un par de numeros primos p y
q.
I Calcula n = pq y
m = (p 1)(q 1).
I Selecciona un numero entero e con
1 < e < m y mcd(e, m) = 1.
I Encuentra un numero d tal que

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para obtener las claves


publicas y privadas
I Elige un par de numeros primos p y q.
I Calcula n = pq y m = (p 1)(q 1).
I Selecciona un numero entero e con
1 < e < m y mcd(e, m) = 1.
I Encuentra un numero d tal que

Clave publica y privada

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para obtener las claves


publicas y privadas
I Elige un par de numeros primos p y q.
I Calcula n = pq y m = (p 1)(q 1).
I Selecciona un numero entero e con
1 < e < m y mcd(e, m) = 1.
I Encuentra un numero d tal que

Clave publica y privada


La clave publica es (n, e)

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para obtener las claves


publicas y privadas
I Elige un par de numeros primos p y q.
I Calcula n = pq y m = (p 1)(q 1).
I Selecciona un numero entero e con
1 < e < m y mcd(e, m) = 1.
I Encuentra un numero d tal que
Clave publica y privada
La clave publica es (n, e)
La clave privada es d

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para cifrar y descifrar

Clave publica y privada


La clave publica es (n, e)
La clave privada es d

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para cifrar y descifrar


El emisor toma la clave publica del
receptor y hace lo siguiente:

Clave publica y privada


La clave publica es (n, e)
La clave privada es d

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para cifrar y descifrar


El emisor toma la clave publica del
receptor y hace lo siguiente:
I Calcula el residuo r de dividir t e entre n
Clave publica y privada
La clave publica es (n, e)
La clave privada es d

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Que tiene que ver esto con los numeros


primos?

Algoritmo para cifrar y descifrar


El emisor toma la clave publica del
receptor y hace lo siguiente:
I Calcula el residuo r de dividir t e2 entre
n
I El receptor recibe r y calcula el residuo
r2 de dividir r t entre n.
Clave publica y privada
r2 = t La clave publica es (n, e)
La clave privada es d

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Un ejemplo de RSA

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Un ejemplo de RSA

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Un ejemplo de RSA

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

Un ejemplo de RSA

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

El reto de RSA

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

El reto de RSA

Numeros primos
Que es un numero primo? Como saber si un numero es primo? Para que sirven los numeros primos ?

El reto de RSA

Numeros primos

Вам также может понравиться