4 research outputs found
Exploiting an HMAC-SHA-1 optimization to speed up PBKDF2
PBKDF2 is a well-known password-based key derivation function. In order to slow attackers down, PBKDF2 introduces CPU-intensive operations based on an iterated pseudorandom function (in our case HMAC-SHA-1). If we are able to speed up a SHA-1 or an HMAC implementation, we are able to speed up PBKDF2-HMAC-SHA-1. This means that a performance improvement might be exploited by regular users and attackers. Interestingly, FIPS 198-1 suggests that it is possible to precompute first message block of a keyed hash function only once, store such a value and use it each time is needed. Therefore the computation of first message block does not contribute to slowing attackers down, thus making the computation of second message block crucial. In this paper we focus on the latter, investigating the possibility to avoid part of the HMAC-SHA-1 operations. We show that some CPU-intensive operations may be replaced with a set of equivalent, but less onerous, instructions. We identify useless XOR operations exploiting and extending Intel optimizations, and applying the Boyar-Peralta heuristic. In addition, we provide an alternative method to compute the SHA-1 message scheduling function and explain why attackers might exploit these findings to speed up a brute force attack against PBKDF2
Encripción de Texto a través de Sistemas Distribuidos
En los últimos años, el crecimiento exponencial de las interconexiones entre dispositivos digitales ha provocado un auge significativo de los incidentes de ciberataques. Esto conllevan a consecuencias desastrosas y graves para una organización, mediante la explotación de vulnerabilidades existentes en tecnologías emergentes. Uno de los mecanismos de defensa más innovadores y efectivos en la actualidad es la criptografía, que se considera un requisito esencial en la comunidad de ciberseguridad para la protección de datos. En este trabajo, implementamos métodos de cifrado que se ejecutan independientemente en cada máquina de manera distribuida a través del servicio web denominado protocolo de acceso a objetos simples (SOAP), a los datos que se quieren proteger. Para llevarlo a cabo, se creó un escenario experimental mediante un sistema distribuido con máquinas virtuales que albergan los métodos de cifrado como AES- 256, Cesar, Blowfish, para enviar datos encriptados desde una máquina origen hacia una máquina destino, y a su vez descifrar los datos encriptados. Los resultados obtenidos fueron excelentes debido a que nuestra propuesta agrega más seguridad a los datos que son enviados de un origen hacia su destino, dificultando que el atacante obtenga los datos fácilmente. Además, el consumo de recursos computacionales para la ejecución de los algoritmos en el sistema distribuido es mínimo lo cual es adecuado para garantizar su uso en cualquier computador con muy pocos recursos
Encripción de Texto a través de Sistemas Distribuidos
En los últimos años, el crecimiento exponencial de las interconexiones entre dispositivos digitales ha provocado un auge significativo de los incidentes de ciberataques. Esto conllevan a consecuencias desastrosas y graves para una organización, mediante la explotación de vulnerabilidades existentes en tecnologías emergentes. Uno de los mecanismos de defensa más innovadores y efectivos en la actualidad es la criptografía, que se considera un requisito esencial en la comunidad de ciberseguridad para la protección de datos. En este trabajo, implementamos métodos de cifrado que se ejecutan independientemente en cada máquina de manera distribuida a través del servicio web denominado protocolo de acceso a objetos simples (SOAP), a los datos que se quieren proteger. Para llevarlo a cabo, se creó un escenario experimental mediante un sistema distribuido con máquinas virtuales que albergan los métodos de cifrado como AES- 256, Cesar, Blowfish, para enviar datos encriptados desde una máquina origen hacia una máquina destino, y a su vez descifrar los datos encriptados. Los resultados obtenidos fueron excelentes debido a que nuestra propuesta agrega más seguridad a los datos que son enviados de un origen hacia su destino, dificultando que el atacante obtenga los datos fácilmente. Además, el consumo de recursos computacionales para la ejecución de los algoritmos en el sistema distribuido es mínimo lo cual es adecuado para garantizar su uso en cualquier computador con muy pocos recursos.In recent years, the exponential growth of interconnections between digital devices has led to a significant increase in cyberattack incidents, often leading to severe and disastrous consequences for an organization by exploiting existing vulne rabilities in emerging technologies. One of the most innovative and effective defense mechanisms is cryptography, considered an essential requirement in the cybersecurity community for data protection. In this paper, we implement encryption methods executed on each machine in a distributed manner through the Simple Object Access Protocol (SOAP) web service for the data that want to be protected. To achieve it, a distributed system was created with virtual machines that host encryption methods such as AES-256, Caesar, and Blowfish, to send encrypted data from a source machine to a destination machine and, in turn, decrypt the encrypted data. The results obtained were excellent because our proposal adds more security to the data, performing it difficult for attackers to obtain the data quickly. In addition, the consumption of computational resources for executing the algorithms in the distributed system is minimal, which is adequate to guarantee its use in any computer with limited resources
Measuring Performances of a White-Box Approach in the IoT Context
The internet of things (IoT) refers to all the smart objects that are connected to other objects, devices or servers and that are able to collect and share data, in order to "learn" and improve their functionalities. Smart objects suffer from lack of memory and computational power, since they are usually lightweight. Moreover, their security is weakened by the fact that smart objects can be placed in unprotected environments, where adversaries are able to play with the symmetric-key algorithm used and the device on which the cryptographic operations are executed. In this paper, we focus on a family of white-box symmetric ciphers substitution-permutation network (SPN)box, extending and improving our previous paper on the topic presented at WIDECOM2019. We highlight the importance of white-box cryptography in the IoT context, but also the need to have a fast black-box implementation (server-side) of the cipher. We show that, modifying an internal layer of SPNbox, we are able to increase the key length and to improve the performance of the implementation. We measure these improvements (a) on 32/64-bit architectures and (b) in the IoT context by encrypting/decrypting 10,000 payloads of lightweight messaging protocol Message Queuing Telemetry Transport (MQTT)