núcleo de computação eletrônica universidade federal do rio de janeiro 11 segurança em redes...

44
Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Segurança em Redes Aula 4 Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail: [email protected] [email protected]

Upload: washington-coimbra-ferrao

Post on 07-Apr-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

Núcleo de Computação EletrônicaUniversidade Federal do Rio de Janeiro

11

Segurança em Redes Segurança em Redes Aula 4Aula 4

Luiz Fernando Rust INMETROTel. (021) 2679-9072

e-mail: [email protected]

[email protected]

Page 2: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

2

Criptografia Convencional

• CriptoAnálise – Linear– Diferencial – Timming Analysis– Power Analysis– Differential Fault analysis

• IDEA• AES

Page 3: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

3

Criptoanálise Linear

• Ataque de texto-limpo conhecido• H. Heys, A tutorial on Linear and Differential Cryptamalysis• Idéia básica

– Aproxima S-boxes por funções lineares (ou afins)

– Exclusive-or “soma” de bits de entrada u e bits de saída – Para u e aleatórios

• probabilidade da expressão ser satisfeita é ½– Dado uma Probabilidade Linear pL (expressão linear ser satisfeita), define-

se desvio (bias) como• pL - 1/2

– Quanto maior o desvio ( І pL - ½ І ), melhor a aplicabilidade da criptoanálise linear com menos textos conhecidos

– Achar expressões que tenham alta ou baixa probabilidade de serem satisfeitas (alto desvio)

Page 4: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

4

Codificador

• S- Boxes

Page 5: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

5

Mapeando um S-box

• Exemplo:– X2 X3 y1 y3 y4 = 0 ou X2 X3 y1 y3 y4

– Aplicando os 16 possíveis valores de X e examinando os valores de Y, verifica-se sucesso em 12 dos16 casos

• o desvio de probabilidade é 12/16 –1/2

Page 6: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

6

Generalizando mapeamento no S-box

• Entrada (horizontal)• Saída (vertical) • Valor representa o desvio (número de acertos – 8) * 16

Page 7: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

7

Aproximação linear para o codificador inteiro

• Apenas para os 3 primeiros rounds

Page 8: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

8

Piling-UP

• Desvio

Page 9: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

9

Extração dos bits da chave

• Aplicando Piling-UP

– Com probabilidade 15/32 e desvio = 1/32

• Processo envolve decodificação parcial do último round• Testar todos os valores de subchaves possíveis• Exemplo

– 10000 amostras (texto claro/texto cifrado)– Fazer ou-exclusivo do texto cifrado com a subchave em teste– Resultado é aplicado na função reversa do S-box– Valor é comparado com a função linear aplicada no texto claro– Se igual incrementa o contador da subchave– Valor correto da chave é aquele que tiver maior desvio

• Desvio = І contador – 5000 І / 10000

Page 10: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

10

Chave do exemplo anterior

Page 11: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

11

Criptoanálise Diferencial

• Desenvolvida em 1990 por Eli Biham e Adi Shamir

• Ataque de texto limpo escolhido

• Compara o comportamento do texto cifrado para blocos com diferenças pré-determinadas

• Analisa as diferenças no processamento das Sboxes do último round de forma a determinar a chave utilizada nesse round

• Os bits restantes da chave (8) podem ser obtidos por força bruta

Page 12: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

12

Round no DES (função F)

• Propriedades importantes

Page 13: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

13

Princípios

• No projeto das S-boxes existiu a preocupação de garantir que é produzida uma saída aleatória face a uma entrada aleatória

• Porém, a diferença dos resultados de uma S-box para pares de entradas com uma diferença determinada não é mais aleatória

• Exemplo para S-1– Frequência da diferença dos resultados nos pares de entrada com

diferença 01 (64 possíveis pares)

– comportamento está longe de ser aleatório– muitas das possibilidades de resultado estão excluidas (0,1,2,4,8) – maior probabilidade de ocorrer certos resultados

Page 14: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

14

Tabela de distribuição de S1 - Probabilidade de saída

Page 15: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

15

Exemplo

• Pode-se determinar também as entradas e as saídas– Exemplo: Diferença de entrada = 34

Page 16: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

16

Como achar K?

• Dado S1E = 1 e S1E* = 35

• Pela tabela verificamos que existem 8 formas de mapear 34 com D• Pela construção da tabela determinamos que K X tem de ser

– 06, 10, 16, 1C, 22, 24, 28, 32.

Page 17: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

17

Como achar K?

• Repetindo o mesmo raciocínio para S1E = 21 e S1E* = 15

• Pela tabela verificamos que existem 6 formas de mapear 34 com 3• Pela construção da tabela determinamos que K X tem de ser

– 01, 02, 15, 21, 35, 36

• Chave (K)– Determinada pela intersecção dos conjuntos de possibilidades – 17 ou 23

Page 18: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

18

Ataque n-rounds

• A cripto-análise diferencial baseia-se no conhecimento das diferenças na entrada/saída das S-boxes...

• As diferenças nas entradas da S-box do último round são diretamente calculadas dos criptogramas disponíveis

• Já as diferenças na saída terão de ser calculadas com base em estimativas

• Motivo pelo qual a viabilidade da criptoanálise diferencial é fortemente influenciada pelo número de rounds

• ...para 3 rounds é possível conduzir uma análise determinística

• Para mais do que isso é necessário uma abordagem probabilística que aumenta muito o número de pares texto limpo/criptograma a analisar e complica substancialmente o ataque

Page 19: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

19

Ataque n-rounds

• Gerar características diferenciais até o penúltimo round• Fazer decodificação parcial do último round

– Testar todos os valores de subchaves possíveis• Exemplo

– Tabela de distribuição do codificador do tutorial de H. Heys, (A tutorial on Linear and Differential Cryptamalysis(

Page 20: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

20

Características Diferenciais

• Usando

Page 21: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

21

Extração dos bits da chave

• Conactenando S-boxes

– Com probabilidade

• Processo envolve decodificação parcial do último round• Testar todos os valores de subchaves possíveis• Exemplo

– 5000 amostras (texto claro/texto cifrado)– Fazer ou-exclusivo do par de textos cifrados com a subchave em teste– Resultado é aplicado na função reversa do S-box– Valor é comparado com as diferenças obtidas para cada par de textos

claros correspondente– Se igual incrementa o contador da subchave– Valor correto da chave é aquele que tiver maior valor no contador

• prob = contador / 5000

Page 22: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

22

Chave do exemplo anterior

Page 23: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

23

Resumo de resultados da Criptoanálise diferencial

Page 24: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

24

Outras Técnicas de Criptoanálise

• Muitas técnicas de cripto-análise não atacam diretamente o algoritmo criptográfico mas procuram retirar informação do “ambiente” onde este é executado

– Power analysis– Timming analysis– Differential fault analysis

• Estas técnicas não são, de forma alguma, específicas do DES

• Algumas são até particularmente adequadas para atacar cifras assimétricas

Page 25: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

25

Timming Analysis

• Analisa tempos de execução das operações criptográficas de forma a retirar informação sobre os parâmetros do algoritmo

– Particularmente efetiva para algoritmos assimétricos, onde as operações são fortemente dependentes dos dados (e.g. Exponenciação modular)

– Cuidados especiais nas implementações dificultam ataques (e.g. dummy code; randomized delays; etc.)

Page 26: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

26

Power Analysis

• Retira informação dos parâmetros dos algoritmos por análise do consumo de energia

– Execuções condicionais

– Escalonamento das chaves

– Permutações

Divergência do relógio no ciclo 6indica execução condicional...

Page 27: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

27

Differential Fault analysis

• Comparam a execução do algoritmo com uma onde são induzidos erros na sua execução

– Induz-se um erro num dos bits do último round– Por analise diferencial, determina-se chave do round– Restantes bits por força bruta...– Vocacionada para atacar dispositivos “tamper proof” (e.g.

Smartcards)

Page 28: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

28

International Data Encryption Algorithm (IDEA)

• Criado em 1991 por James Massey e Xuejia Lai

• Possui patente da suíça ASCOM Systec

• Estruturado seguindo as mesmas linhas gerais do DES– também é um cifrador de bloco iterativo, com um bloco de

tamanho igual a 64 bits e um tamanho de chave de 128 bits– Possui apenas 8 iterações (DES possui 16)– Cada iteração IDEA funciona como se fosse uma dupla

iteração DES

• Na maioria dos microprocessadores, uma implementação por software do IDEA é mais rápida do que uma implementação por software do DES

• Considerado um dos mais seguros codificadores atuais• Usado no PGP

Page 29: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

29

IDEA

• Texto pleno organizado em blocos de 64 bits

• Confusão e difusão são gerados por grupos algébricos– XOR– Adição mod (216)– Multiplicação mod (216 + 1) – também visto com S-boxes

• Todas as operações incidem em blocos de 16 bits

• Blocos de dados são divididos em 4 blocos de 16 bits

• Utiliza 8 rodadas e cada rodada tem 14 passos

Page 30: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

30

IDEA - Rodadas

Exceto para a última rodada, swap Y2 e Y3

Depois da última rodada (oitava):

Page 31: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

31

IDEA: Interações

XOR bit a bit dos sub-blocos de 16 bits.

Adição módulo 216 de inteiros de 16 bits.

Multiplicação módulo 216+1 de inteiros de 16 bitscom o sub-bloco zero correspondendo a 216.

X1 X2 X3 X4

Z1 Z2 Z3 Z4

Z5

Z6

Z1 Z2 Z3 Z4Saída Final

umaiteração

mais 7iterações

Y1 Y2 Y3 Y4

Page 32: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

32

IDEA – Geração de chaves

• Usa um total de 52 subchaves• 6 em cada uma das 8 rodadas e 4 na operação de saída

• Chave original K é dividida em 8 subchaves de 16 bits– 6 primeiras são usadas no primeiro round– As duas restantes ficam para o segundo round– Desloca chave 25 bits para esquerda e divide novamente em 8

subchaves– Usa as quatro primeiras para completar as chaves do

segundo round– As quatro restantes ficam para o terceiro round– Desloca chave 25 bits para esquerda e divide novamente em 8

subchaves– Assim sucessivamente....

Page 33: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

33

IDEA considerações

• Velocidade

– Implementações atuais rodam duas vezes mais rápidas que o DES

• Criptoanálise

– Ataque de força bruta necessita 2128

– Parece ser imune a ataques diferenciais (pouco estudo ainda)

– Algumas classe de chaves podem facilitar ataques do tipo texto pleno escolhido, mas nunca serão usadas

Page 34: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

34

Advanced Encryption Standard

• Programa iniciado em 1997 pelo NIST para substituir o DES• AES: novo padrão durante os próximos 30 anos (e vida útil de

outros 50 ou 60 anos)– Obs: AES deverá proteger informações até o século XXII!

• Requisitos do sucessor do DES – ter chaves de 128, 192 e 256 bits– operar com blocos de 128 bits – ser “eficiente”– ser “flexível”– estar livre de royalties

• Quinze candidatos foram selecionados em jun/98 • Cinco candidatos em 1999: Serpent, Mars, RC6, Twofish e Rijndael

Page 35: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

35

Advanced Encryption Standard

• AES foi adotado o pelo National Institute of Standards and Technology (NIST) como US FIPS PUB 197 em Novembro de 2001 depois de um processo de padronização de 5 anos

• Concorrentes– Rijndael (86 votos) - anunciado vencedor em Outubro de 2000

• Rijndael can be pronounced "Rhine dahl", a long “i" and a silent “e“• Desenvolvido por Joan Daemen e Vincent Rijmen (Rijmen-Daemen - Bélgica)

– Serpent (59 votos)– Mars (13 votos)– RC6 (23 votos)– Twofish (31votos)

• Pela primeira vez um codificador público é usado plo NSA para informação Top Secret

– "The design and strength of all key lengths of the AES algorithm (i.e., 128, 192 and 256) are sufficient to protect classified information up to the SECRET level. TOP SECRET information will require use of either the 192 or 256 key lengths. The implementation of AES in products intended to protect national security systems and/or information must be reviewed and certified by NSA prior to their acquisition and use."

Page 36: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

36

Rijndael

• Características – operações realizadas no nível de byte – tamanhos de chaves: 128, 192, 256 bits – tamanhos de blocos: 128, 192, 256 bits – número de rodadas: 9, 11, 13 (além de uma rodada – extra no final)

• Opera em arrays de 4×4 de bytes – – Denominado estado– Versões com blocos maiores operam com colunas adicionais

• Cada rodada composta de quatro passos– substituição de bytes– deslocamento de linhas– mistura de colunas, – soma da subchave de rodada

Page 37: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

37

Substituição de bytes

0 0 1 2 3 4 5 6 7 8 9 a b c d e f

0 63 7c 77 7b f2 6b 6f c5 30 01 67 2b fe d7 ab 76

1 ca 82 c9 7d fa 59 47 f0 ad d4 a2 af 9c a4 72 c0

2 b7 fd 93 26 36 3f f7 cc 34 a5 e5 f1 71 d8 31 15

3 04 c7 23 c3 18 96 05 9a 07 12 80 e2 eb 27 b2 75

4 09 83 2c 1a 1b 6e 5a a0 52 3b d6 b3 29 e3 2f 84

5 53 d1 00 ed 20 fc b1 5b 6a cb be 39 4a 4c 58 cf

6 d0 ef aa fb 43 4d 33 85 45 f9 02 7f 50 3c 9f a8

7 51 a3 40 8f 92 9d 38 f5 bc b6 da 21 10 ff f3 d2

8 cd 0c 13 ec 5f 97 44 17 c4 a7 7e 3d 64 5d 19 73

9 60 81 4f dc 22 2a 90 88 46 ee b8 14 de 5e 0b db

a e0 32 3a 0a 49 06 24 5c c2 d3 ac 62 91 95 e4 79

b e7 c8 37 6d 8d d5 4e a9 6c 56 f4 ea 65 7a ae 08

c ba 78 25 2e 1c a6 b4 c6 e8 dd 74 1f 4b bd 8b 8a

d 70 3e b5 66 48 03 f6 0e 61 35 57 b9 86 c1 1d 9e

e e1 f8 98 11 69 d9 8e 94 9b 1e 87 e9 ce 55 28 df

f 8c a1 89 0d bf e6 42 68 41 99 2d 0f b0 54 bb 16

Page 38: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

38

Deslocamento de linhas

Page 39: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

39

Mistura de colunas

Page 40: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

40

Soma da subchave de rodada

Page 41: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

41

AES completo

Page 42: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

42

CriptoAnálise do AES

• Pela primeira vez a Matemática envolvida é completamente aberta

• Ataques conhecidos – Quebras com codificadores que implementam um menor número de

rodadas• 7/10 - 128, 8/12 – 192, 9/14 – 256

– Preocupações com a margem pequena entre o número de rodadas passíveis de quebra e o padronizado

– Quebra criptográfica é qualquer coisa melhor que uma busca exaustiva – Como uma busca exaustiva envolve pelo menos 2128...

• Ataque téorico proposto em 2002 – XSL attack– Erros nas estimativas

• Cache timing attack– Ataque não contra o AES mas contra implementações mal-feitas do AES – Servidor usando OpenSSL sem restrição de tempo – Recomendação do autor -> não usar S-box

Page 43: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

43

Outros Algoritmos Simétricos

• Blowfish (32-448 bits)– Não patenteado– Fácil implementar– Alta velocidade de execução – Roda em emenos de 5K de memória – S-boxes dependem dos dados

• Skipjack (80 bits)– Utilizado no Clipper e Fortezza– Desenvolvido pela NSA– Em domínio público desde jun/98

• CAST-128 e CAST-256– 128 e 256 bits, patenteado pela Nortel (não há royalties)– As funções variam de rodada para rodada

Page 44: Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro 11 Segurança em Redes Aula 4 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail:

44

Outros Algoritmos Simétricos

• RC5 e RC28

– Projetados por Ron Rivest (o R da empresa RSA Data Security Inc.) – Também é o autor do RC4 e RC6, este último foi concorrente ao AES

– RC5• Rápido, Simples• Adaptável para processadores com diferentes tamanhos de palavra• Número variável de rodadas• Chave de tamanho variável• Baixa necessidade de memória• Alta segurança• Rotações dependentes dos dados

– RC28• Utilizado no protocolo S/MIME• Voltado para criptografia de e-mail corporativo• Também possui chave de tamanho variável