CRIVO QUADRÁTICO: UM ESTUDO DA OBTENÇÃO DE UM QUADRADO PERFEITO

Documentos relacionados
CRIVO QUADRÁTICO: UM ESTUDO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES

CRIVO QUADRÁTICO: IMPLEMENTAÇÃO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES

Introdução aos Métodos Numéricos

Laboratório de Matemática Computacional II

Introdução aos Métodos Numéricos

Tema: Método da Eliminação de Gauss

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

Período Letivo: 2019/1 Período de Início de Validade : 2017/2. Carga Horária: 60h CH Autônoma: 0h CH Coletiva: 60h CH Individual: 0h

Introdução aos Métodos Numéricos

Introdução aos Métodos Numéricos

CYNTHIA FEIJO SEGATTO 25/10/2017 (2017/2) 05/11/2018 (2019/1)

Geometria Analítica e Álgebra Linear

Um novo algoritmo probabilístico para fatoração de inteiros com primos relativamente distantes p.1/15

IMPLEMENTAÇÃO DO MÉTODO DE FATORAÇÃO DE INTEIROS CRIVO QUADRÁTICO

étodos uméricos SISTEMAS DE EQUAÇÕES LINEARES (Continuação) Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

5. Seja A uma matriz qualquer. Assinale a afirmativa

Números Primos, Fatores Primos, MDC e MMC

Números Inteiros Algoritmo da Divisão e suas Aplicações

Criptografia Pós-Quântica Corretores de Erros

PLANO DE ENSINO E APRENDIZAGEM

Resolução de sistemas de equações lineares: Fatorações de matrizes

Algoritmos Numéricos 2 a edição

Introdução aos Métodos Numéricos. Instituto de Computação UFF

Sistemas Lineares - Decomposição LU

Complexidade de Algoritmos

Laboratório de Simulação Matemática. Parte 6 2

Teoria dos Números e Criptografia

Disciplina: Cálculo Numérico IPRJ/UERJ. Sílvia Mara da Costa Campos Victer. Aula 6 - Solução de Sistema de Equações Algébricas

PLANO DE ENSINO e APRENDIZAGEM Álgebra Linear

Introdução aos Métodos Numéricos

Álgebra I Israel. Bárbara Lopes Amaral. 19 de novembro de Universidade Federal de Minas Gerais. Fatoração de Polinômios. Lagrange.

Modelagem Computacional. Parte 6 2

Identificar e aplicar os critérios de divisibilidade por 2, 3, 4, 5,6, 8, 9 e 10.

Introdução aos Métodos Numéricos

Os Fa n t á s t i c o s

Resolução de Sistemas de Equações Lineares

Sistemas Lineares Métodos Diretos

Resolução de sistemas de equações lineares: Método de eliminação de Gauss - estratégias de pivotamento

UNIVERSIDADE DO ESTADO DO RIO GRANDE DO NORTE CURSO: CIÊNCIA DA COMPUTAÇÃO DISCIPLINA: ÁLGEBRA LINEAR PROF.: MARCELO SILVA.

étodos uméricos ZEROS DE FUNÇÕES Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

Reticulados e Criptograa Pós-Quântica

Introdução à Algebra para Criptografia de Curvas Elipticas

AUTOVALORES E AUTOVETORES: CONCEITOS E UMA APLICAÇÃO A UM SISTEMA DINÂMICO

Primos. Vanessa Filipa Vicente Lourenço

Aula 25 - Espaços Vetoriais

CIFRA DE HILL. Autor: Maycon Pereira de Souza

Cálculo Numérico. Aula 8 Sistemas de Equações Lineares / Parte /04/2014. Prof. Guilherme Amorim*

Cálculo Numérico BCC760

Programação Acadêmica de 2012 Semestre 1 Turma 2011

SUMÁRIO. Unidade 1 Matemática Básica

Processamento de Imagens CPS755

Cálculo Numérico Prof. Guilherme Amorim 26/11/2013. Aula 11 Sistemas de Equações Lineares / Parte 4 Convergência e Sistemas mal-condicionados

Novas Relações na Matriz de Transformação da Transformada Numérica de Pascal

Resolução de sistemas de equações lineares: Fatorações de matrizes

Resolução de sistemas de equações lineares: Fatorações de matrizes

Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.

Programação Acadêmica de 2011 Semestre 1

AUTOVALORES E AUTOVETORES

Prof. Lorí Viali, Dr. PUCRS FAMAT: Departamento de Estatística

Critérios de divisibilidade Para alguns números como o dois, o três, o cinco e outros, existem regras que permitem verificar a divisibilidade sem se

Matemática Discreta. Fundamentos e Conceitos da Teoria dos Números. Universidade do Estado de Mato Grosso. 4 de setembro de 2017

Sistemas Lineares. ( Aula 3 )

DESENVOLVIMENTO DE UM MÓDULO DE PROGRAMAÇÃO LINEAR NO PROGRAMA OPTIMI

MÓDULO XII. EP.02) Determine o valor numérico da expressão algébrica x 2 yz xy 2 z para x = 1, y = 1 e z = 2. c) y.(y x + 1) +

Roteiros e Exercícios - Álgebra Linear v1.0

Números Primos e Criptografia RSA

Escalonamento de matrizes

Resolução de Sistemas Lineares. Ana Paula

étodos uméricos SISTEMAS DE EQUAÇÕES LINEARES (Continuação) Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

MC3305 Algoritmos e Estruturas de Dados II. Aula 02 Hashing. Prof. Jesús P. Mena-Chalco.


Autovalores e Autovetores

Programa Anual MATEMÁTICA EXTENSIVO

Ciência da Computação. Prof. Dr. Leandro Alves Neves Prof. Dr. Adriano M. Cansian

CAPÍTULO 1 Operações Fundamentais com Números 1. CAPÍTULO 2 Operações Fundamentais com Expressões Algébricas 12

NÚMEROS DE FERMAT. (Pedro H. O. Pantoja, Universidade de Lisboa, Portugal)

Linguagem Computacional

Aula prática 5. Funções Recursivas

Divisibilidade Múltiplos de um número Critérios de divisibilidade 5367

Curso de Aritmética Capítulo 1: Conjuntos Numéricos, Operações Básicas e Fatorações

UMA FERRAMENTA PARA A ANÁLISE DE CIRCUITOS ELÉTRICOS

Revisão: Matrizes e Sistemas lineares. Parte 01

Sistemas Lineares - Eliminação de Gauss

Hashing: conceitos. Hashing

Álgebra Linear e Geometria Analítica Bacharelados e Engenharias Parte I - Matrizes

Renato Martins Assunção

Corpos estendidos no espaço em grupos

PLANO DE ENSINO CURSO ENGENHARIA AMBIENTAL MATRIZ 519

Álgebra Linear e Geometria Analítica Bacharelados e Engenharias Parte II Matrizes (continuação)

Ricardo J. da Silva. Estudos de. Sequências Numéricas

Guia-1. a 11 a a 1n a 21 a a 2n A = a m1 a m2... a mn

11.1) Noções Elementares 11.2) MDCs e algoritmos de Euclides 11.3) Aritmética modular 11.4) Aplics da MD: O sistema criptográfico RSA

Uma Curva Elíptica sobre F 23

Agenda do Dia Aula 14 (19/10/15) Sistemas Lineares: Introdução Classificação

MATEMÁTICA MÓDULO 8 DIVISIBILIDADE E CONGRUÊNCIA. Professor Matheus Secco

Período Letivo: 2016/1 Período de Início de Validade : 2016/1. Carga Horária: 60h CH Autônoma: 0h CH Coletiva: 60h CH Individual: 0h

Os Fantásticos. Números Primos

Cálculo Diferencial e Integral Química Notas de Aula

Uma equação linear com n variáveis tem a seguinte forma:

Transcrição:

CRIVO QUADRÁTICO: UM ESTUDO DA OBTENÇÃO DE UM QUADRADO PERFEITO Marcelo Figueiredo Terenciani 1 ; Adriana Betânia de Paula Molgora 2 1 Estudante do Curso de Ciência da Computação da UEMS, Unidade Universitária de Dourados; e-mail: terenciani@yahoo.com.br, Bolsista PIBIC. 2 Professora do Curso de Ciência da Computação da UEMS, Unidade Universitária de Dourados; e-mail: abmol@terra.com.br Área Temática: Teoria Computacional dos Números Resumo. O interesse pela fatoração de números inteiros foi despertado pela necessidade de um entendimento mais aprofundado sobre esse tema. O Crivo Quadrático apesar de ser um método de fatoração de apenas vinte anos é um dos mais importantes na fatoração de números inteiros. O objetivo deste trabalho é realizar um estudo do processo de obtenção de um quadrado perfeito, que é uma das etapas requeridas pelo método em questão. Através da uma pesquisa bibliográfica foram estudados métodos que podem ser utilizados no desenvolvimento dessa etapa do Crivo Quadrático. Com este estudo podemos constatou-se que existem algumas melhorias que podem ser acrescentadas ao Crivo Quadrático resultando em ganho de desempenho ao mesmo. Palavras chave: Fatoração. Criptografia. Crivo. 1. Introdução. A Criptografia moderna baseia-se no fato de que a fatoração de números inteiros é um problema muito difícil. Criar grandes números compostos multiplicando primos grandes juntos é muito fácil, mas é muito difícil reconstruir os fatores primos de um número grande. Um exemplo de um sistema que usa este fato é o sistema RSA, famoso e amplamente utilizado hoje. (Asbrink e Brynielsson, 2000). O Crivo Quadrático (Quadratic Sieve), Pomerance (1985), foi desenvolvido por Carl Pomerance em 1981, é um método de fatoração considerado um dos mais eficientes na fatoração de números inteiros. Seu funcionamento é dividido basicamente em duas etapas: determinação de um conjunto de números que sejam fatorados por uma base de fatores e obtenção de números que sejam quadrados perfeitos.

A complexidade do Crivo Quadrático ao fatorar um número n, não rigorosamente provada, é dada por. Portanto, para n muito grande o trabalho executado por uma implementação do método cresce exponencialmente, o que torna a fatoração de n muito grande impraticável (SOUZA, 2004). O objetivo desse trabalho é realizar um estudo dos procedimentos envolvidos na segunda etapa do método e disponibilizar conhecimentos, de forma mais simplificada, possibilitando estudos mais avançados em pesquisas posteriores. 2. Materiais e Métodos O desenvolvimento do trabalho foi centrado na pesquisa bibliográfica, principalmente em: 1. Documentos, e-books, artigos e teses de dissertações disponíveis em sites na internet; 2. Livros particulares e também da Biblioteca Central da UEMS. 3. Resultados Os conceitos básicos, como o de espaços vetoriais, matriz identidade, independência linear, podem ser encontrados em Lima (2000) e Cláudio e Marins (1994). 3.1 Crivo Quadrático A fatoração de inteiros através do método Crivo Quadrático tem como base o fato de que se existirem números x e y que satisfaçam a condição x 2 y 2 (mod n), então se têm que 0 (mod n). Logo, = (x + y) (x - y) e os números d mdc (x + y, n) e f = (x - y, n) poderão ser fatores não triviais de n. Ou seja, a idéia básica do método consiste em encontrar congruências da forma x 2 i y 2 i (mod n). De acordo com Crandall e Pomerance (2002), na prática, para encontrar x e y, em primeiro lugar deve-se encontrar uma base de fatores, que é um conjunto de números primos como, para certo limite B e, para cada primo p, o número n deve ser um resíduo quadrático módulo p. Em seguida é determinado um conjunto de números completamente fatorados sobre essa base de fatores s. Através do conjunto de números obtidos na etapa anterior, busca-se obter os quadrados perfeito requeridos pelo método Crivo Quadrático, que é o objeto de estudo desse trabalho.

Para a próxima etapa do método é necessário a construção de uma matriz principal (M), onde o número de linhas é determinado pelo número de completamente fatorados ( s ) e o número de colunas é o número de primos da base de fatores (p). Então para cada f (r) associa-se uma (string) de p dígitos binários. Caso o primo correspondente apresente potência par, então o dígito que o representa é 0; se a potência é ímpar o dígito é 1. quantidade O próximo passo é associar uma matriz identidade (I) quadrada de acordo com a s à matriz (M) formada anteriormente a fim de dizer qual combinação de s dará um quadrado perfeito. São realizados os passos da Eliminação Gaussiana nas duas matrizes. A Eliminação Gaussiana é realizada até que seja encontrada uma linha com todos os elementos nulos na matriz principal. A linha correspondente da matriz identidade indicará quais s devem ser multiplicados para que se encontre um quadrado perfeito. As colunas da matriz identidade com o dígito 1 indicam quais s devem ser multiplicados. Então x será o produto dos r s correspondentes módulo n e y serão dado pela raiz do produto dos fatores dos s módulo n, depois faz o mdc (x y, n) e mdc(x + y, n). O resultado destes dois mdc s são os fatores de n. O maior divisor comum de dois ou mais números é chamado de máximo divisor comum desses números. Usamos à abreviação m.d.c. Tomando como exemplo o número 8051 com uma base formada pelos primos: {5, 7, 13, 23, 43, 47, 59, 61, 79, 103} e os seguintes s : {413, 2765, 3185, 4945, 5405, 9373, 12685, 34385, 36049, 60593, 3745}, e aplicarmos as devidas transformações, ao realizar a Eliminação Gaussiana em a 1º linha a ser zerada é a 8º linha da matriz (M). A linha correspondente em identidade (I) será: [0 0 1 0 0 0 0 1 0 0 0], ou seja, os s serão o 3º e o 8º: 3185 3438. O x=5734 e y=3320. Após os cálculos do mdc o número 8051 terá os fatores 83 e 97. A descrição completa desse exemplo e também outros exemplos podem ser encontradas em Sanches (2010). 3.2 Eliminação Gaussiana Segundo Cláudio e Marins (1994), a Eliminação Gaussiana consiste basicamente em duas etapas, triangulação e retrossubstituição. A triangulação consiste em transformar uma matriz A numa matriz triangular superior, mediante permutações e combinações lineares de linhas, ou seja, adição de uma linha com o múltiplo de outra linha, para substituir uma das linhas consideradas, às vezes poderá necessitar de fazer apenas a multiplicação de uma linha por uma

constante, quanto existem elementos nulos na diagonal principal é necessária a troca de linhas. A retrossubstituição consiste no cálculo dos componentes regressivamente. Por exemplo: L2 = 2xL2 + L1 L3 = -1/2xL3 + L1 L3 = -2xL3 + L2 O último e não menos critico passo do QS é a Eliminação Gaussiana, pois é formada uma matriz muito grande e com quase todas as estradas sendo 0. Não é viável realizar este processo em paralelismo, pois a comunicação que teria de haver entre os processadores seria enorme deixando o método muito lento. Existem diferentes algoritmos para realizar a resolução de sistemas lineares, entre eles está o Algoritmo de Lanczos, descrito em Buchmann e Muller (2005), consiste em encontrar uma matriz inversível W = [w 1,..., w n ] tal que W t A W = D, onde D é uma matriz diagonal (matriz composta somente pela diagonal principal). Em seguida uma solução y do sistema linear D y = W t b é uma solução. Uma vez que D é uma matriz diagonal, uma solução de D y = W t b pode ser calculada muito fácilmente. Portanto nós reduzimos a solução de para a determinação da matriz W. O Algoritmo de Lanczos usa a independência linear dos vetores coluna para encontrar a matriz W. Seja S = {v 1, v 2,..., v r } conjunto não vazio de vetores do espaço vetorial E. (i) Diz-se que S é linearmente independente se satisfaz a condição: Para quaisquer k 1, k 2,..., k r E K, k 1 v 1 + k 2 v 2 +... + k r v r = 0 k 1 = k 2 = = k n = 0. (ii) Diz-se que S é linearmente dependente, caso contrário. 3.3 Discussão Com esse estudo vimos que a fatoração de números inteiros grandes é bem complexa, necessitando de um estudo aprofundado dos aspectos matemáticos envolvidos em seu contexto. Esse trabalho mostrou-nos o quão importante é o QS e que a documentação dos conhecimentos adquiridos é muito importante, principalmente para estudos futuros.

4. Conclusão Apesar de ser um método relativamente novo, o Crivo Quadrático muito importante, necessitando de estudos e aperfeiçoamento. Nesse sentido esse trabalho apresentou um estudo detalhado de uma das etapas do método em questão, que consiste na obtenção de um quadrado perfeito. Para trabalhos futuros sugere-se a implementação desse estudo, para resultados práticos. 5. Agradecimentos Agradecemos à Universidade Estadual de Mato Grosso do Sul pela concessão da bolsa de auxilio financeiro que nos possibilitou uma maior dedicação às atividades desenvolvidas em torno da pesquisa e também a todos acadêmicos, professores e técnicos, que contribuíram para a realização dessa pesquisa. 6. Referências 6.1 Livros CLÁUDIO M. D; MARINS J. M. Cálculo Numérico Computacional; São Paulo: Atlas; 2ª Edição; 1994. CRANDALL, R.; Pomerance, C. Prime Numbers- A Computational Perspective; New York: Springer-Verlag: 1ª Edição; 2002. p. 227-242. LIMA, Elon Lages. Álgebra Linear; Instituto de Matemática Pura e Aplicada, Rio de Janeiro: CNPQ; 4ª Ed; 2000. POMERANCE, C. The Quadratic Sieve Factoring Algorithm; New York: Springer-Verlag, Ed. T. Beth, N. Cot, and I. Ingemarsson; 1985. p. 13. 6.2 Teses SOUZA, B. A. de. Teoria dos Números e o RSA. Dissertação de Mestrado, Universidade Estadual de Campinas; 2004. Disponível em: <http://www.ime.unicamp.br/~mdc/teses/plinio/ bianca.pdf> (último acesso em 03/06/2011).

6.3 Sites ASBRINK, O., BRYNIELSSON, J. Factoring large integers using parallel Quadratic Sieve; 2000. Disponível em: <http://citeseerx.ist.psu.edu/viewdoc/versions?doi=10.1.1.96.3685& version=0> (último acesso em 15/07/2011). BUCHMANN, J. MULLER, V. Algorithms for Fatoring Integers; Technische Hochschule Darmstadt Institut für theoretische Informatik; 2005. <http://www.cdc.informatik.tudarmstadt.de/ ~buchmann/lecture%20notes/algorithms%20for%20factoring%20integers.pdf> (ultimo acesso em 25/07/2011). LANDQUIST, E. The Quadratic Sieve Factoring Algorithm; 2001. Disponível em: <http://www.cs.virginia.edu/crab/qfs_simple.pdf> (último acesso em 15/07/2011). SANCHES, A. de P. MOLGORA, A. B. de P. Implementação do Método de Fatoração de Inteiros Crivo Quadrático; Universidade Estadual de Mato Grosso do Sul. 2010. Disponível em: <https://www.periodicos.uems.br/index.php/enic/article/view/2089/749> (último acesso em 09/07/2011).