R. Ragel | University of Peradeniya (original) (raw)

Papers by R. Ragel

Research paper thumbnail of Dept. of Comput. Eng., Univ. of Peradeniya, Peradeniya, Sri Lanka

Research paper thumbnail of Accelerating Correlation Power Analysis Using Graphics Processing Units

Correlation Power Analysis (CPA) is a type of power analysis based side channel attack that can b... more Correlation Power Analysis (CPA) is a type of power analysis based side channel attack that can be used to derive the secret key of encryption algorithms including DES (Data Encryption Standard) and AES (Advanced Encryption Standard). A typical CPA attack on unprotected AES is performed by analysing a few thousand power traces that requires about an hour of computational time on a general purpose CPU. Due to the severity of this situation, a large number of researchers work on countermeasures to such attacks. Verifying that a proposed countermeasure works well requires performing the CPA attack on about 1.5 million power traces. Such processing, even for a single attempt of verification on commodity hardware would run for several days making the verification process infeasible. Modern Graphics Processing Units (GPUs) have support for thousands of light weight threads, making them ideal for parallelizable algorithms like CPA. While the cost of a GPU being lesser than a high performance multicore server, still the GPU performance for this algorithm is many folds better than that of a multicore server. We present an algorithm and its implementation on GPU for CPA on 128-bit AES that is capable of executing 1300x faster than that on a single threaded CPU and more than 60x faster than that on a 32 threaded multicore server. We show that an attack that would take hours on the multicore server would take even less than a minute on a much cost effective GPU.

Research paper thumbnail of Low Cost Telepresence Robot

Research paper thumbnail of Evaluating a Data Level Parallelism Approach in Drug Discovery Research

Research paper thumbnail of To Use or Not to Use: Graphics Processing Units for Pattern Matching Algorithms

String matching is an important part in today's computer applications and Aho-Corasick algorithm ... more String matching is an important part in today's computer applications and Aho-Corasick algorithm is one of the main string matching algorithms used to accomplish this. This paper discusses that when can the GPUs be used for string matching applications using the Aho-Corasick algorithm as a benchmark. We have to identify the best unit to run our string matching algorithm according to the performance of our devices and the applications. Sometimes CPU gives better performance than GPU and sometimes GPU gives better performance than CPU. Therefore, identifying this critical point is significant task for researchers who are using GPUs to improve the performance of their string matching applications based on string matching algorithms.

Research paper thumbnail of Software implementation level countermeasures against the cache timing attack on advanced encryption standard

2013 IEEE 8th International Conference on Industrial and Information Systems, 2013

Advanced Encryption Standard (AES) is a symmetric key encryption algorithm which is extensively u... more Advanced Encryption Standard (AES) is a symmetric key encryption algorithm which is extensively used in secure electronic data transmission. When introduced, although it was tested and declared as secure, in 2005, a researcher named Bernstein claimed that it is vulnerable to side channel attacks. The cache-based timing attack is the type of side channel attack demonstrated by Bernstein, which uses the timing variation in cache hits and misses. This kind of attacks can be prevented by masking the actual timing information from the attacker. Such masking can be performed by altering the original AES software implementation while preserving its semantics. This paper presents possible software implementation level countermeasures against Bernstein's cache timing attack. Two simple software based countermeasures based on the concept of "constant-encryption-time" were demonstrated against the remote cache timing attack with positive outcomes, in which we establish a secured environment for the AES encryption.

Research paper thumbnail of High throughput virtual screening with data level parallelism in multi-core processors

Improving the throughput of molecular docking, a computationally intensive phase of the virtual s... more Improving the throughput of molecular docking, a computationally intensive phase of the virtual screening process, is a highly sought area of research since it has a significant weight in the drug designing process. With such improvements, the world might find cures for incurable diseases like HIV disease and Cancer sooner. Our approach presented in this paper is to utilize a multi-core environment to introduce Data Level Parallelism (DLP) to the Autodock Vina software, which is a widely used for molecular docking software. Autodock ...

Research paper thumbnail of Constant time encryption as a countermeasure against remote cache timing attacks

Rijndael was standardized in 2001 by National Institute of Standard and Technology as the Advance... more Rijndael was standardized in 2001 by National Institute of Standard and Technology as the Advanced Encryption Standard (AES). AES is still being used to encrypt financial, military and even government confidential data. In 2005, Bernstein illustrated a remote cache timing attack on AES using the client-server architecture and therefore proved a side channel in its software implementation. Over the years, a number of countermeasures have been proposed against cache timing attacks both using hardware and software. ...

Research paper thumbnail of GPGPU: To Use or Not To Use

String matching is a very important aspect in various databases and text processing applications.... more String matching is a very important aspect in various databases and text processing applications. Bioinformatics, signature based anti-virus software and many other important applications high depend on the efficiency of string matching tools. With the advent of parallel computing, traditional sequential string matching drawbacks were faced out improving the application's performance. Over the past few years, the use of Graphic Processing Units (GPUs) to achieve parallelism has shown promising results, in which the GPUs exhibit SPMD (Single Program Multiple Data) programming model. NVIDIA has introduced CUDA (Compute Unified Device Architecture) programming API enabling programmers to use threaded processors of a GPU to achieve higher data parallelism.

Research paper thumbnail of Dept. of Comput. Eng., Univ. of Peradeniya, Peradeniya, Sri Lanka

Research paper thumbnail of Accelerating Correlation Power Analysis Using Graphics Processing Units

Correlation Power Analysis (CPA) is a type of power analysis based side channel attack that can b... more Correlation Power Analysis (CPA) is a type of power analysis based side channel attack that can be used to derive the secret key of encryption algorithms including DES (Data Encryption Standard) and AES (Advanced Encryption Standard). A typical CPA attack on unprotected AES is performed by analysing a few thousand power traces that requires about an hour of computational time on a general purpose CPU. Due to the severity of this situation, a large number of researchers work on countermeasures to such attacks. Verifying that a proposed countermeasure works well requires performing the CPA attack on about 1.5 million power traces. Such processing, even for a single attempt of verification on commodity hardware would run for several days making the verification process infeasible. Modern Graphics Processing Units (GPUs) have support for thousands of light weight threads, making them ideal for parallelizable algorithms like CPA. While the cost of a GPU being lesser than a high performance multicore server, still the GPU performance for this algorithm is many folds better than that of a multicore server. We present an algorithm and its implementation on GPU for CPA on 128-bit AES that is capable of executing 1300x faster than that on a single threaded CPU and more than 60x faster than that on a 32 threaded multicore server. We show that an attack that would take hours on the multicore server would take even less than a minute on a much cost effective GPU.

Research paper thumbnail of Low Cost Telepresence Robot

Research paper thumbnail of Evaluating a Data Level Parallelism Approach in Drug Discovery Research

Research paper thumbnail of To Use or Not to Use: Graphics Processing Units for Pattern Matching Algorithms

String matching is an important part in today's computer applications and Aho-Corasick algorithm ... more String matching is an important part in today's computer applications and Aho-Corasick algorithm is one of the main string matching algorithms used to accomplish this. This paper discusses that when can the GPUs be used for string matching applications using the Aho-Corasick algorithm as a benchmark. We have to identify the best unit to run our string matching algorithm according to the performance of our devices and the applications. Sometimes CPU gives better performance than GPU and sometimes GPU gives better performance than CPU. Therefore, identifying this critical point is significant task for researchers who are using GPUs to improve the performance of their string matching applications based on string matching algorithms.

Research paper thumbnail of Software implementation level countermeasures against the cache timing attack on advanced encryption standard

2013 IEEE 8th International Conference on Industrial and Information Systems, 2013

Advanced Encryption Standard (AES) is a symmetric key encryption algorithm which is extensively u... more Advanced Encryption Standard (AES) is a symmetric key encryption algorithm which is extensively used in secure electronic data transmission. When introduced, although it was tested and declared as secure, in 2005, a researcher named Bernstein claimed that it is vulnerable to side channel attacks. The cache-based timing attack is the type of side channel attack demonstrated by Bernstein, which uses the timing variation in cache hits and misses. This kind of attacks can be prevented by masking the actual timing information from the attacker. Such masking can be performed by altering the original AES software implementation while preserving its semantics. This paper presents possible software implementation level countermeasures against Bernstein's cache timing attack. Two simple software based countermeasures based on the concept of "constant-encryption-time" were demonstrated against the remote cache timing attack with positive outcomes, in which we establish a secured environment for the AES encryption.

Research paper thumbnail of High throughput virtual screening with data level parallelism in multi-core processors

Improving the throughput of molecular docking, a computationally intensive phase of the virtual s... more Improving the throughput of molecular docking, a computationally intensive phase of the virtual screening process, is a highly sought area of research since it has a significant weight in the drug designing process. With such improvements, the world might find cures for incurable diseases like HIV disease and Cancer sooner. Our approach presented in this paper is to utilize a multi-core environment to introduce Data Level Parallelism (DLP) to the Autodock Vina software, which is a widely used for molecular docking software. Autodock ...

Research paper thumbnail of Constant time encryption as a countermeasure against remote cache timing attacks

Rijndael was standardized in 2001 by National Institute of Standard and Technology as the Advance... more Rijndael was standardized in 2001 by National Institute of Standard and Technology as the Advanced Encryption Standard (AES). AES is still being used to encrypt financial, military and even government confidential data. In 2005, Bernstein illustrated a remote cache timing attack on AES using the client-server architecture and therefore proved a side channel in its software implementation. Over the years, a number of countermeasures have been proposed against cache timing attacks both using hardware and software. ...

Research paper thumbnail of GPGPU: To Use or Not To Use

String matching is a very important aspect in various databases and text processing applications.... more String matching is a very important aspect in various databases and text processing applications. Bioinformatics, signature based anti-virus software and many other important applications high depend on the efficiency of string matching tools. With the advent of parallel computing, traditional sequential string matching drawbacks were faced out improving the application's performance. Over the past few years, the use of Graphic Processing Units (GPUs) to achieve parallelism has shown promising results, in which the GPUs exhibit SPMD (Single Program Multiple Data) programming model. NVIDIA has introduced CUDA (Compute Unified Device Architecture) programming API enabling programmers to use threaded processors of a GPU to achieve higher data parallelism.