http://repositorio.unb.br/handle/10482/36128
Arquivo | Descrição | Tamanho | Formato | |
---|---|---|---|---|
2019_CaioYuridaSilvaCosta.PDF | 794,16 kB | Adobe PDF | Visualizar/Abrir |
Título: | Diversidade em Replicação Máquina de Estados |
Autor(es): | Costa, Caio Yuri da Silva |
Orientador(es): | Alchieri, Eduardo Adilio Pelinson |
Assunto: | Segurança de sistemas Tolerância a falhas Replicação Máquina de Estados (RME) Arquitetura de software |
Data de publicação: | 16-Jan-2020 |
Data de defesa: | 24-Jun-2019 |
Referência: | COSTA, Caio Yuri da Silva. Diversidade em Replicação Máquina de Estados. 2019. xi, 57 f., il. Dissertação (Mestrado em Informática)—Universidade de Brasília, Brasília, 2019. |
Resumo: | A dependabilidade e as propriedades de segurança de um sistema podem ser comprometidas por uma falha ou por um atacante que explora suas vulnerabilidades, respectivamente. Uma alternativa para mitigar este risco é a implementação de sistemas tolerantes a falhas e tolerantes a intrusões, em que as propriedades do sistema são preservadas mesmo se alguns de seus componentes falharem (e.g., por uma falha de software ou uma falha do ambiente de execução) ou se forem comprometidos por um ataque bem-sucedido. A Replicação Máquina de Estados (RME) é amplamente utilizada para implementar esses sistemas. Na RME, servidores são replicados e requisições de clientes são executadas de maneira determinística e na mesma ordem por todas as réplicas de maneira que o comportamento do sistema mantém-se correto mesmo se algumas delas estiverem comprometidas, já que as réplicas corretas mascaram o mal-comportamento das réplicas com falha. Infelizmente, as soluções propostas para RME não consideram diversidade na implementação e todas as réplicas executam o mesmo software. Consequentemente, o mesmo ataque ou bug de software pode comprometer todo o sistema. Tentando contornar este problema, este trabalho propõe uma arquitetura para fornecer suporte à diversidade na implementação de serviços seguros utilizando a abordagem RME. Nosso objetivo não é implementar diferentes versões de uma biblioteca RME para diferentes linguagens de programação, o que demandaria muitos recursos. Ao invés disso, a arquitetura proposta usa com base uma biblioteca RME e provê meios de implementar e executar réplicas (aplicações) em diferentes linguagens de programação. Os principais problemas atacados pela arquitetura proposta são dois: (1) comunicação entre diferentes linguagens; e (2) representação de dados. A arquitetura proposta foi integrada à biblioteca RME Bft-SMaRt e um conjunto de experimentos mostra sua viabilidade prática. |
Abstract: | The dependability and security properties of a system could be impaired by a system failure or by an opponent that exploits its vulnerabilities, respectively. An alternative to mitigate this risk is the implementation of fault- and intrusion-tolerant systems, in which the system properties are ensured even if some of its components fail (e.g., because a software bug or a failure in the runtime environment) or are compromised by a successful attack. State Machine Replication (SMR) is widely used to implement these systems. In SMR, servers are replicated and client requests are deterministically executed in the same order by all replicas in a way that the system behavior remains correct even if some of them are compromised since the correct replicas mask the misbehavior of the faulty ones. Unfortunately, the proposed solutions for SMR do not consider diversity in the implementation and all replicas execute the same software. Consequently, the same attack or software bug could compromise all the system. In order to circumvent this problem, this work proposes an architecture to allow diversity in the implementation of dependable and secure services using the SMR approach. The goal is not to implement different versions of a SMR library for different programming languages, which demands a lot of resources and is very expensive. Instead, the proposed architecture uses an underlying SMR library and provides means to implement and execute service replicas (the application code) in different programming languages. The main problems addressed by the proposed architecture are twofold: (1) communication among different languages; and (2) data representation. The proposed architecture was integrated in the SMR library Bft-SMaRt and a set of experiments showed its practical feasibility. |
Unidade Acadêmica: | Instituto de Ciências Exatas (IE) Departamento de Ciência da Computação (IE CIC) |
Informações adicionais: | Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2019. |
Programa de pós-graduação: | Programa de Pós-Graduação em Informática |
Licença: | A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor com as seguintes condições: Na qualidade de titular dos direitos de autor da publicação, autorizo a Universidade de Brasília e o IBICT a disponibilizar por meio dos sites www.bce.unb.br, www.ibict.br, http://hercules.vtls.com/cgi-bin/ndltd/chameleon?lng=pt&skin=ndltd sem ressarcimento dos direitos autorais, de acordo com a Lei nº 9610/98, o texto integral da obra disponibilizada, conforme permissões assinaladas, para fins de leitura, impressão e/ou download, a título de divulgação da produção científica brasileira, a partir desta data. |
Aparece nas coleções: | Teses, dissertações e produtos pós-doutorado |
Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.