• Nenhum resultado encontrado

2.4 Segurança e Negócio Electrónico

2.4.3 Criptografia

A palavra criptografia tem origem nas palavras gregas Kryptos (escondido) e

Graphia (escrever). Criptografar significa transformar uma mensagem noutra

(“escondendo” a mensagem original), com a elaboração de um algoritmo com funções matemáticas e um código secreto especial, chamado chave (Oliveira, 2001).

O objectivo principal da criptografia é garantir que a troca de informação entre dois intervenientes, um emissor e um receptor, satisfaz os requisitos de segurança, nomeadamente confidencialidade, integridade, autenticação e não- repúdio. Para assegurar a confidencialidade na comunicação utilizam-se cifras (Magalhães e Grilo, 2006). Podemos ter algoritmos de chave simétrica, algoritmos de

chave assimétrica, envelopes digitais, algoritmos de sumário, assinatura digital, e certificado digital.

Algoritmos de chave simétrica

Nos algoritmos de chave simétrica, a mesma chave é utilizada para cifrar e decifrar os dados. Este tipo de criptografia também é chamada de chave secreta, pela sua segurança se basear no facto de a chave ser do conhecimento exclusivo do emissor e do receptor.

A implementação de criptografia de chave simétrica é, em geral, muito eficiente em termos computacionais, sendo esta criptografia utilizada para cifrar grandes volumes de dados (Silva et al, 2003).

No entanto apresentam a desvantagem de a chave ter de ser partilhada pelo emissor e receptor obrigando a que ambos tenham que tomar conhecimento da chave de forma segura. Se utilizarem um método inseguro para distribuir a chave, esta pode ser interceptada, dando acesso aos dados cifrados a terceiros indesejáveis.

À partida, a única maneira de conseguir uma distribuição segura da chave seria através do contacto directo entre os participantes, antes de se iniciar qualquer troca de dados cifrados. Mas na impossibilidade desse contacto, existem técnicas para o fazer sendo a mais conhecida a DES (Data Encriptation Standard) desenvolvida pela NSA (National Security Agency) e a IBM em 1950.

Algoritmos de chave assimétrica

Os algoritmos de chave assimétrica utilizam duas chaves complementares. Dados cifrados com uma só podem ser decifrados com a outra e vice-versa. Esta criptografia também é designada de chave pública, devido a uma das chaves poder ser divulgada publicamente (a chave pública), devendo a outra permanecer secreta (a chave privada).

As duas chaves são complementares no sentido em que uma é calculada em função da outra, recorrendo a métodos matemáticos. Estes métodos baseiam-se em problemas complexos relacionados com a teoria dos números, para os quais não se conhecem soluções sistemáticas e eficientes em termos computacionais. Além disso os números utilizados são muito grandes (Silva et al, 2003).

A grande desvantagem da complexidade dos métodos utilizados nesta criptografia é a ineficiência das suas implementações. Por esta razão, este tipo de criptografia é utilizado para cifrar volumes de dados relativamente pequenos. A distribuição das chaves públicas é também um problema ao nível da sua autenticidade.

Envelopes digitais

A criptografia de chaves públicas é lenta, devido à complexidade dos algoritmos para cifrar grandes volumes de dados. A criptografia de chaves simétricas é eficiente para cifrar grandes volumes de dados, mas a distribuição das chaves é problemática. Uma solução é usar a criptografia simétrica para cifrar e decifrar grandes volumes de dados, mas criptografia de chaves públicas para cifrar e enviar as chaves simétricas. Esta técnica é chamada de envelope digital.

Quando um emissor pretende enviar uma mensagem a um receptor do qual conhece a chave pública, começa por gerar uma chave secreta aleatória e usa-a para cifrar a mensagem. Em seguida, cifra esta chave com a chave pública do receptor. Finalmente, envia a mensagem e a chave secreta, cifradas, ao receptor. Ao receber o envelope digital, o receptor começa por cifrar a chave secreta com a sua chave privada (como a cifra foi produzida com a chave pública, apenas a chave privada a pode decifrar). Uma vez na posse desta chave, pode decifrar a mensagem.

Algoritmos de Sumário

Os algoritmos de sumário, habitualmente denominados por funções de Hash, assumem um papel fundamental na criptografia moderna, por exemplo na produção de assinaturas digitais. O objectivo das funções de Hash é transformar univocamente a mensagem original (de tamanho variável) num sumário (impressão digital) de tamanho fixo. Uma vez que as funções de Hash não são invertíveis, é computacionalmente impraticável obter o texto original a partir do sumário. É importante referir que, ao contrário dos algoritmos de cifra, cujo principal objectivo é assegurar a confidencialidade da mensagem, os algoritmos de sumário pretendem garantir a integridade (Magalhães e Grilo, 2006).

Assinatura digital

Os algoritmos de chaves simétricas e de chaves assimétricas providenciam a confidencialidade e a integridade. É também possível utilizar estes mecanismos para providenciar as garantias de autenticação e não-repúdio.

Um emissor que pretenda estas garantias no envio de uma mensagem, gera um sumário da mensagem e cifra-o com a sua chave privada. Em seguida, envia-a, juntamente com o sumário cifrado. Este método é a assinatura digital.

O receptor utiliza a chave pública do emissor para decifrar o sumário. Em seguida, ele próprio gera um sumário da mensagem e compara-o com o que antes decifrou. Se os sumários coincidirem, o receptor conclui que a assinatura digital é valida.

O facto de se conseguir decifrar o sumário com a chave pública do emissor, prova que foi utilizada a chave privada deste, logo apenas este poderia ter cifrado aquele sumário (autenticação). Pelo mesmo motivo, utilização da chave privada, o emissor não poderá negar a autoria da mensagem (não-repúdio).

Certificado digital

Numa comunicação, os intervenientes devem poder ter a certeza de que cada vez que utilizam uma chave pública a entidade com quem pretendem trocar informação possui a chave privada associada. Essa confiança assenta nos certificados digitais (Magalhães e Grilo, 2006).

Um certificado digital é um conjunto de dados que inclui, entre outros elementos, a identificação de uma entidade (uma pessoa, por exemplo) e a sua chave pública. Sobre este conjunto é gerada uma assinatura digital, a qual passa a ser parte integrante do certificado. Quando alguém deseja obter a chave pública daquela entidade, só tem de obter o certificado digital, verificar a validade da assinatura e extrair a chave desejada.

A assinatura digital é colocada no certificado por uma terceira entidade na qual os outros confiam: e detentor (emissor) da chave pública acredita que esta não será modificada antes de o certificado ser assinado; os receptores do certificado acreditam que, antes de assinar o certificado, aquela entidade se assegurou sobre a verdadeira identidade do emissor.

Um certificado digital providencia as garantias de autenticação e não-repúdio, pois fornece uma ligação inequívoca entre uma chave pública e o seu possuidor (Silva et al, 2003).