O procedimento para a criação de uma chave de sessão Extra Systems Cypher Net através da fusão das opções make_common_key propostas pelos parceiros funciona de acordo com o seguinte algoritmo:
void make_common_key(void) { unsigned char x, y; int i; for (i = 0; i < PACKED_VALUE_LENTH; i++) { x = local_key.packed[i]; y = remote_key.packed[i]; common_key.packed[i] = x ^ y; } unpack_value(common_key.packed, common_key.unpacked); }
Cada subscritor gera a sua própria chave (local_key) independentemente no procedimento make_local_key e recebe a chave do parceiro (remote_key) deste último em formato encriptado durante o procedimento get_common_key.
Obviamente, devido à natureza comutativa da operação utilizada, este procedimento dá o mesmo resultado em ambas as extremidades da ligação. Ou seja, ambos os subscritores recebem a mesma chave de sessão para a encriptação subsequente de todo o tráfego entre eles.
O conteúdo desta página está também disponível em inglês, francês, alemão, espanhol, ucraniano e russo.
© Extra Systems, 2024 |