A Software Library for Multi Precision Arithmetic

Author(s):  
Kannan Balasubramanian ◽  
Ahmed Mahmoud Abbas

The most prevalent need for multiple precision arithmetic, often referred to as “bignum” math, is within the implementation of public key cryptography algorithms. Algorithms such as RSA and Diffie-Hellman require integers of significant magnitude to resist known cryptanalytic attacks. As of now, a typical RSA modulus would be at least greater than 10^309. However, modern programming languages such as ISO C and Java only provide intrinsic support for integers that are relatively small and single precision. This chapter describe the modules provided by one such library for the C Programming Language.

Author(s):  
Alaeeddine Yassine ◽  
Driss Chenouni ◽  
Mohammed Berrada ◽  
Ahmed Tahiri

This paper conducts a study to identify pedagogical approaches and gameplay techniques involved in the development of serious games for teaching scientific courses in general especially programming languages. The concept of serious games is increasingly popular and is considered as an innovative teaching practice since it is based on information and communication technology and gamification to foster learning. To this end, a serious game "Perobo" will be introduced and discussed. It is based on a set of gameplay techniques and pedagogical approaches used for teaching pointers, considered as a difficult concept in C programming language, and essential for programming complex and advanced programs. The game is also based on a taxonomy design to define the learning levels.


2010 ◽  
Vol 43 (4) ◽  
pp. 916-919 ◽  
Author(s):  
Yun Lin

A .NET class library for STAR/CIF manipulation, ASTAR, has been developed and is available at http://xstar.sourceforge.net/astar/. The library provides facilities to read and write STAR/CIF files and an object model to manipulate data in STAR/CIF files. While the library is written in the C# programming language, it can be utilized by programs written in various programming languages targeting the .NET platform.


2020 ◽  
Vol 15 (1) ◽  
pp. 266-279
Author(s):  
Atul Pandey ◽  
Indivar Gupta ◽  
Dhiraj Kumar Singh

AbstractElGamal cryptosystem has emerged as one of the most important construction in Public Key Cryptography (PKC) since Diffie-Hellman key exchange protocol was proposed. However, public key schemes which are based on number theoretic problems such as discrete logarithm problem (DLP) are at risk because of the evolution of quantum computers. As a result, other non-number theoretic alternatives are a dire need of entire cryptographic community.In 2016, Saba Inam and Rashid Ali proposed a ElGamal-like cryptosystem based on matrices over group rings in ‘Neural Computing & Applications’. Using linear algebra approach, Jia et al. provided a cryptanalysis for the cryptosystem in 2019 and claimed that their attack could recover all the equivalent keys. However, this is not the case and we have improved their cryptanalysis approach and derived all equivalent key pairs that can be used to totally break the ElGamal-like cryptosystem proposed by Saba and Rashid. Using the decomposition of matrices over group rings to larger size matrices over rings, we have made the cryptanalysing algorithm more practical and efficient. We have also proved that the ElGamal cryptosystem proposed by Saba and Rashid does not achieve the security of IND-CPA and IND-CCA.


2020 ◽  
Vol 30 (3) ◽  
pp. 28-33 ◽  
Author(s):  
S. A. Pryadko ◽  
A. Yu. Troshin ◽  
V. D. Kozlov ◽  
A. E. Ivanov

The article describes various options for speeding up calculations on computer systems. These features are closely related to the architecture of these complexes. The objective of this paper is to provide necessary information when selecting the capability for the speeding process of solving the computation problem. The main features implemented using the following models are described: programming in systems with shared memory, programming in systems with distributed memory, and programming on graphics accelerators (video cards). The basic concept, principles, advantages, and disadvantages of each of the considered programming models are described. All standards for writing programs described in the article can be used both on Linux and Windows operating systems. The required libraries are available and compatible with the C/C++ programming language. The article concludes with recommendations on the use of a particular technology, depending on the type of task to be solved.


Sign in / Sign up

Export Citation Format

Share Document