<< Volver atrás

Tesis:

Cryptographic Techniques for the Security of Cloud and Blockchain Systems


  • Autor: NIZZARDO, Luca

  • Título: Cryptographic Techniques for the Security of Cloud and Blockchain Systems

  • Fecha: 2018

  • Materia: Sin materia definida

  • Escuela: E.T.S DE INGENIEROS INFORMÁTICOS

  • Departamentos: LENGUAJES Y SISTEMAS INFORMATICOS E INGENIERIA DE SOFTWARE

  • Acceso electrónico: http://oa.upm.es/51656/

  • Director/a 1º: FIORE, Dario

  • Resumen: Las interacciones sociales normalmente involucran personas con distintos intereses, incluso intereses contradictorios en algunas ocasiones, como por ejemplo, relaciones entre compradores y vendedores o entre consumidores y servicios. Tradicionalmente estas interacciones han tenido lugar en persona y la sociedad ha desarrollado durante años diferentes formas de proteger a los usuarios frente a un comportamiento malicioso por alguna de las partes. Sin embargo, en la era digital, cada vez es más común que estas interacciones tengan lugar a través de Internet, donde la gente no se reúne en persona o incluso no se conoce. Proteger a los usuarios en este escenario es mucho más complicado y requiere herramientas digitales adicionales. En esta tesis se investiga cómo conseguir que las distintas partes de una interacción digital se comporten de forma honesta. En particular, se consideran dos problemas emergentes en este ámbito: computación en la Nube y comercio electrónico. A través de un servicio en la Nube, cualquiera (un Cliente) puede enviar su información y datos a un servidor remoto (la Nube) y después pedir a la Nube que realice operaciones sobre dicha información. Este nuevo modelo permite un gran ahorro en tiempo, poder de computación y otros costes infraestructurales para el usuario, ya que puede subcontratar estos servicios. Este modelo proporciona una funcionalidad muy prometedora, pero, al mismo tiempo, introduce la necesidad de confiar en la Nube, lo que puede llegar a ser problemático por diversos motivos. Los dos principales problemas que más ocupan a la comunidad recientemente son el de privacidad y el de autenticidad de la información almacenada y procesada en entornos no confiables. Intuitivamente, la privacidad es importante porque un cliente no desea que el servidor obtenga ninguna información sobre los datos que le ha proporcionado. Por otro lado, los Clientes necesitan autenticidad para asegurarse de que la Nube ha calculado correctamente las operaciones que han sido pedidas. Esta tesis se centra en el segundo problema: estudiar y mejorar los autenticadores homomorficos. Los autenticadores homomórficos permiten que un Cliente, C, almacene información autenticada en la Nube. Más tarde, una tercera parte (el Verificador) puede pedirle a la Nube que calcule una función, f , sobre la información de C. Usando un procedimiento especial, la Nube puede convencer al Verificador de que la computación se ha realizado correctamente, a través de una pieza de información llamada autenticador. La contribución de esta tesis consiste en mejorar tres aspectos sobre los autenticadores homomórficos: definiciones, eficiencia y funcionalidad. Primero, se introduce un nuevo modelo de seguridad que es más exigente y fácil de manejar comparado con el modelo anterior. Ademés, se proponen dos compiladores que permiten pasar del modelo anterior al nuevo. Segundo, se presenta el primer esquema de firma linealmente homomórfico con una clave de verificación de tamaño sub-lineal en el tamaño del conjunto de datos. Tercero, se formaliza la noción de autenticadores homomórficos para funciones que toman entradas autenticadas por diferentes partes (usando claves diferentes) y se presentan construcciones contretas tanto para verificación pública como privada. En cuanto al comercio electrónico, y más generalmente, la posibilidad de transferir valores a través de Internet, la invención del Bitcoin [100] ha resultado una revolución, ya que es el primer protocolo que permite a sus usuarios transferir valores digitales sin necesidad de una autoridad de confianza. Además de su utilidad y potencial en el ámbito de pagos y transacciones, Bitcoin se ha hecho famoso por la tecnología en la que se basa: la Blockchain, que se podría describir como un registro distribuido sobre el cual los usuarios se ponen de acuerdo y donde todas las transacciones son registradas de forma inalterable. Esta peculiar característica ha hecho que el paradigma de Blockchain se convirtiera en uno de los más populares y prometedores conceptos en los últimos años. Adem´as, se le ha dado mucha importancia y atención a las posibilidades que ofrece la tecnología de Blockchain más allá de Bitcoin. En concreto, este trabajo se centra en alcanzar un modelo de “intercambio equitativo” a partir de la tecnología de Blockchain, donde el objetivo es que dos usuarios intercambien bienes digitales de forma que ninguno pueda engañar al otro. En este sentido, se considera un protocolo introducido por Maxwell [94] conocido como “Pagos Contingentes de Conocimiento Cero” (ZKCP). La contribución de esta tesis es doble: Primero se identifica y describe un fallo en el protocolo de ZKCP existente y se propone cómo se podría solucionar de forma eficiente, modificando el protocolo original. Segundo, se argumenta cómo este nuevo protocolo proporciona funcionalidades adicionales, que eran imposibles de alcanzar antes. ----------ABSTRACT---------- Human interactions often involve people who have different and sometimes contrasting interests, like buyers and sellers or consumers and providers. For what regards physical interactions, the society has developed during the years many different ways to protect users against misbehaviors. Nevertheless, when this communication happens in the digital world through the Internet, where people do not meet or even know each other, such a protection is more challenging to obtain, and additional digital tools are needed in order to defend users. In this thesis we investigate how to enforce the honest behavior of parties involved in a digital interaction over the Internet. In particular, we consider two emerging paradigms in this setting: Could computing and E-commerce. By using a Cloud service, anyone (a Client) can outsource data to a remote server (the Cloud), and later on ask the Cloud to perform operations on them. This new paradigm allows for huge potential savings in terms of time, computing power and other kind of infrastructural costs, since it is possible to access to pay-per-use services upon request. It is clear that a computing paradigm like this is very attractive but, at the same time, trusting the Cloud can be problematic for various reasons. Two main security concerns that have been recently given attention by the research community are those about the privacy and authenticity of the data stored and processed in untrusted environments. Intuitively, for privacy a Client does not want the server to learn any information about the outsourced data. For authenticity, the Client instead wants to be sure that the Cloud computed correctly on the outsourced data. In this thesis we focus on this second problem, advancing the study of homomorphic authenticators. In homomorphic authenticators a Client C outsources authenticated data to the Cloud. Later on, a third entity (the Verifier) can ask the Cloud to compute a function f over the Client’s outsourced data. Using a special procedure, the Cloud can provide the Verifier with an authenticator for the output of the function, which allows the Verifier to check the validity of the computation queried. The contribution of this thesis addresses three different aspects of homomorphic authenticators: definitions, efficiency and functionalities. First, it introduces a new security model which is stronger and easier to deal with compared with the existing one, along with two compilers which allow one to go from the old model to the new one. Second, it provides the first linearly homomorphic signature scheme whose verification keys have size sublinear in that of the outsourced dataset. Third, it formalizes the notion of homomorphic authenticators for functions which take inputs authenticated using different keys, providing concrete constructions both in the case of private and public verification. For what regards E-commerce and, more in general, the possibility of transferring value through the Internet, a breakthrough result was the invention of Bitcoin [100], the first protocol which allows users to transfer digital value without relying on any trusted authority. Other than being appealing for its potential in the framework of payments, Bitcoin became also famous for its underlying technology, the Blockchain, that can be described as a distributed ledger over which all the users can reach consensus, and where all the transactions are recorded in an immutable way. This peculiar feature made the “Blockchain paradigm” to become one of the most popular and promising concepts in the last few years. In particular, a lot of attention has been devoted to the possible uses of the Blockchain technology beyond Bitcoin. Specifically, this work is focused on achieving fair exchange by profiting of the Blockchain features, where with fair exchange we mean the possibility for two users to swap digital goods such that neither can cheat the other. In this area we consider a known protocol introduced by Maxwell [94] and known as Zero Knowledge Contingent Payments (ZKCP). The contribution of this thesis is twofold: first, it identifies a flaw in the ZKCP and proposes how to efficiently solve the security issue by changing the original protocol. Second, it shows that this new protocol supports additional functionalities which were impossible to achieve before.