Boa noite amigos!
Dando continuidade à tradução de “Hashcash – A Denial of Service Counter-Measure”. Estávamos na parte 4, hoje vemos a quinta.
5 Melhorias do Hashcash
6 Baixa Variância
Tokens de função-custo deveriam idealmente levar uma quantidade previsível de recursos computacionais para se calcular. A construção de quebra-cabeças de cliente de Juels e Brainard fornece um custo probabilístico limitado ao emitir desafios com soluções conhecidas, no entanto enquanto isto limita o tempo de execução no pior cenário teórico, faz pouco diferença na prática à variância e ao tempo de execução experienciado tipicamente. A técnica de se usar soluções conhecidas também não é aplicável à configuração não interativa. É uma questão em aberto se existem funções probabilísticas de custo limitado ou de custo fixo não interativas com a mesma ordem de magnitude de custo de verificação como o hashcash.
A outra melhoria incremental mais significante devida a Juels e Brainard é a sugestão para usar vários sub quebra-cabeças com o mesmo custo esperado, mas pouca variância no custo. Essa técnica deveria ser aplicável a ambas variações, não interativa e interativa, do hashcash.
6.1 Não-Paralelismo e DoS Distribuídos
Roger Dingledine, Michael Freedman e David Molnar argumentam que funções-custo não paralelizáveis são menos vulneráveis a DoS distribuídos (DDoS) no capítulo 16 de [8]. O argumento deles é que funções-custo não paralelizáveis frustram o DDoS porque o atacante é incapaz de se subdividir e roubar o trabalho de calcular um token individual.
O autor descreveu uma função-custo de custo fixo em [9] usando o quebra-cabeças com time-lock [travamento de tempo] de Rivest, Shamir e Wagner [10] que acontece de também serem não-paralelizáveis. A função-custo do quebra-cabeças com timelock pode ser usada tanto em uma configuração interativa como uma não-interativa já que é seguro para o usuário escolher o próprio desafio. A aplicabilidade do quebra-cabeças com timelock como uma função-custo também foi observada subsequentemente por Dingledine et al em [8].
Para completude nós apresentamos a função-custo baseada em quebra-cabeças com timelock de custo fixo e não-paralelizável de [9] aqui:
Nós argumentamos no entanto que a proteção adicional a DDoS fornecida pelas funções-custo não-paralelizáveis é marginal: a menos que que o servidor restrinja o número de desafios que entrega a um cliente reconhecidamente único, o atacante DDoS pode roubar desafios múltiplos tão facilmente quanto roubar um único desafio subdividido, e consome recursos no servidor na mesma taxa de antes. Além disso, não é tão difícil para um único cliente se disfarçar de vários clientes em um servidor.
Considere também: o atacante DDoS geralmente tem, devido a natureza de seu método de controlar os nodos, um número igual de nodos conectados à sua disposição que processadores. Ele pode então em qualquer caso fazer com que cada nodo único atacante participe diretamente no protocolo normal indistinguivelmente de qualquer usuário legítimo. Essa estratégia de ataque é também, caso contrário, ótima de qualquer maneira, pois os nodos de ataque apresentarão um conjunto variado de endereços de origem que frustrarão as tentativas em estratégias de otimização da justiça por conexão e contramedidas DDoS baseadas em roteador com base no volume de tráfego entre os intervalos de endereços IP. Sendo assim, para os padrões de empacotamento do nodo de ataque natural, funções-custo não-paralelizáveis oferecem limitada resistência adicional.
[7] Thomas Boschloo. Comunicação pessoal, Março 2002
[8] Andy Oram, editor. Peer-to-Peer: Harnessing the Power of Disruptive Technologies. O’Reilly and Associates, 2001. Capítulo 16 também disponível como as http://freehaven.net/doc/oreilly/accountability-ch16.html.
[9] Adam Back. Hashcash – amortizable publicly auditable cost functions. Rascunho inicial do artigo, 2000.
[10] Ronald L Rivest, Adi Shamir, and David A Wagner. Time-lock puzzles and timed-release crypto. Technical Report MIT/LCS/TR-684, 1996. Também disponível como http://theory.lcs.mit.edu/˜rivest/publications.html.
Fim da quinta parte da obra, no próximo versículo a parte seis. Essa é uma obra bastante técnica e um pouco difícil de traduzir, até por isso tenho demorado um pouco a postar. Mais dois versículos e provavelmente terminamos ela. Ricas bençãos!