Vector de inicialização (IV)

>b>O que é um vector de inicialização?

Um vector de inicialização (IV) é um número arbitrário que pode ser usado juntamente com uma chave secreta para encriptação de dados. Este número, também chamado de nonce, é empregado apenas uma vez em qualquer sessão. 

O uso de um IV evita a repetição na criptografia de dados, tornando mais difícil para um hacker usando um ataque de dicionário encontrar padrões e quebrar uma cifra. Por exemplo, uma sequência pode aparecer duas ou mais vezes dentro do corpo de uma mensagem. Se houver seqüências repetidas em dados criptografados, um atacante pode assumir que as seqüências correspondentes na mensagem também são idênticas. O IV evita o aparecimento de sequências de caracteres duplicados correspondentes no ciphertext. 

O IV ideal é um número aleatório que é dado a conhecer ao computador de destino para facilitar a decifração dos dados quando são recebidos. O IV pode ser acordado antecipadamente, transmitido independentemente ou incluído como parte da configuração da sessão antes da troca dos dados da mensagem. O comprimento do IV (o número de bits ou bytes que contém) depende do método de encriptação. O comprimento do IV é normalmente comparável ao comprimento da chave ou bloco de criptografia em uso.

>p> Aprenda mais sobre IT:
> Spiritus-Temporis.com descreve como os IVs funcionam e fornece links para tópicos relacionados.
> Example-code.com explica 'AES Encrypt with Initialization Vector'.'
> Wikipedia tem uma entrada sobre vetores de inicialização.