Friday, July 12, 2013

Cloud Computing to Astronomy: Study of Performance at Circuit Level

Cloud Computing to Astronomy: Study of Performance at Circuit Level

Praveen Kr. Vishnoi1, Rahul Yadav2, Sohit Teotia3, Ravi Kant Vyas4
1, 2Dept. of IT, SITE, Nathdwara, Rajasthan
3Dept. of MCA, IET, Alwar, Rajasthan
4Dept. of CS, ITM, Bhilwara, Rajasthan
1erpv89@gmail.com, 2yadav.rahul@live.com, 3sohitt@gmail.com, 4vyasravikant@gmail.com









AbstractCloud computing is a powerful new technology in which recent investigating funds the benefits which offers scientific computing. We have used three workflow applications to compare the performance of processing data on the EC2 cloud of Amazon with the performance on the Abe high-performance cluster at the National Center for Supercomputing Applications (NCSA). We show that the Amazon EC2 cloud offers better performance and value for processor- and memory-limited applications than for I/O-bound applications.  We provide an example of how the cloud is well suited to the generation of a science product: an atlas of periodograms for the 210,000 light curves released by the NASA Kepler Mission. This atlas means to support the identification of periodic signals, including those due to transiting exo-planets, in the Kepler data sets.

Keywords – Cloud computing, Workflow Application, Cost Analysis, I/O Bound, Memory Bound, Amazon EC2.

I.                    Introduction

Vast quantities of data are made available to scientists at sophisticated and ever-accelerating rate, and approaches to data mining data discovery and analysis are being developed to extract the full scientific content contained in this data tsunami. The e-Science paradigm is enabling the synthesis of new data products through the reprocessing and re-sampling of existing data products. In this paper, we investigate the applicability of cloud computing to scientific applications. Cloud computing in this context refers to pay-as-you-go, on-demand compute resources made available by a third-party provider.
We study the cost and performance of one cloud service provider, Amazon EC2, in running workflow applications. We investigate the performance of three workflow applications with different I/O, memory and CPU requirements on Amazon EC2, and compare the performance of the cloud with that of a typical high-performance cluster (HPC). Our goal is to identify which applications give best performance on the cloud at the lowest cost.
We describe the application of cloud computing to the generation of a new data product: an atlas of periodograms for the 210,000 light curves publicly released to date by the Kepler Mission. Kepler is designed to search for Earth-like exoplanets by observing their transits across their host star. The atlas of periodograms will support the identification of candidate exoplanets through the periodicities caused by the transits, as well as supporting studies of general variability in the Kepler data sets. 

II.                  Evaluating Applications On The Amazon Ec2 Cloud

A)       Goals Of This Study
Our goal is to determine which types of scientific workflow applications are cheaply and efficiently run on the Amazon EC2 cloud (hereafter, AmEC2). Workflows are loosely coupled parallel applications that consist of a set of computational tasks linked by data- and control-flow dependencies. Unlike tightly coupled applications, in which tasks communicate directly through the network, workflow tasks typically communicate using the file system: the output files written by one task become input files to be read by dependent tasks later in the workflow.
Given that AmEC2 uses only commodity hardware and given that applications make very different demands on resources, it is likely that cost and performance will vary dramatically by application. It was therefore important to study workflow applications that make different demands on resources. Thus the goals of this study are:
1.       Understand the performance of three workflow applications with different I/O, memory and CPU requirements on a commercial cloud.
2.       Compare the performance of the cloud with that of a high-performance cluster (HPC) equipped with a high-performance network and parallel file system, and
3.       Analyze the various costs associated with running workflows on a commercial cloud.

B)       Choice of Workflow Applications
We have chosen three workflow applications because their usage of computational resources is very different: Montage astronomy, Broadband from seismology, and Epigenome from biochemistry.
Montage [1] is a toolkit for aggregating astronomical images in Flexible Image Transport System (FITS) format into mosaics. Broadband generates and compares intensity measures of seismograms from several high- and low- frequency earthquake simulation codes.   Epigenome maps short DNA segments collected using high-throughput gene sequencing machines to a previously constructed reference genome.  Table I summarizes the relative resource usage of these three applications. The following three paragraphs give the technical specifications for the specific workflows used in this study.
Montage was used to generate an 8-degree mosaic of M16 composed of images from the Two Micron All Sky Survey.  The resulting workflow contained 10,429 tasks, read 4.2 GB of input data, and produced 7.9 GB of output data. Montage is considered I/O-bound because it spends more than 95% of its time waiting on I/O operations.

App.
I/O
Memory
CPU
Montage
High
Low
Low
Broadband
Medium
High
Medium
Epigenome
Low
Medium
High

TABLE1: SUMMARY OF RESOURCES USE BY THE WORKFLOW

Broadband used four earthquake source descriptions and five sites to generate a workflow containing 320 tasks that read 6 GB of input data and wrote 160 MB of output data.
Broadband is considered to be memory-limited because more than 75% of its runtime is consumed by tasks requiring more than 1 GB of physical memory.
 The Epigenome workflow maps human DNA sequences to a reference copy of chromosome 21.  The workflow contained 81 tasks, read 1.8 GB of input data, and produced 300 MB of output data. Epigenome is considered to be CPU- bound because it spends 99% of its runtime in the CPU and only 1% on I/O and other activities.

C)      Experimental Set-Up
In this section we summarize the experimental set-up. For a complete description, see [2] and [3]. We compared the performance of AmEC2 with that of the Abe High Performance Cluster (hereafter, Abe) at the National Center for Supercomputing Applications, which is equipped with a high speed network and parallel file system to provide high-performance I/O.
To provide an unbiased comparison of the performance of   workflows   on   AmEC2   and   Abe,   the   experiments presented here were all run on single nodes, using the local disk on both AmEC2 and Abe. For comparison we also ran experiments   using   the   parallel   file   system   on   Abe. Intuitively, the parallel file system would be expected to significantly improve the   runtime of I/O-intensive applications like Montage, but would be less of an advantage for CPU-intensive applications like Epigenome.
The two Abe nodes use the same resource type—64-bit Xeon machines—but differ in the I/O devices used: abe.local uses a local partition for I/O, and abe.lustre uses a shared Lustre™ parallel file system.  Both instances use a 10 Gbps InfiniBand™   network.   The   computational   capacity   of abe.lustre is roughly equivalent to that of c1.xlarge, which is useful when comparing the performance of Abe and AmEC2 and in estimating the virtualization overhead of AmEC2.
On AmEC2, executables were pre-installed in a Virtual Machine image, which is deployed on the node. The input data was stored in the Amazon Elastic Block Store (EBS) (a SAN-like storage service), while the output and intermediate files, as well as the application executables, and were stored on local disks. For Abe, all application executables and input files were stored in the Luster™ file system. For abe.local experiments, the input data were copied to a local disk before running the workflow, and all intermediate and output data were written to the same local disk. For abe.lustre, all intermediate and output data were written to the LusterTM file system.
All jobs on both platforms were managed and executed through a job submission host at the Information Sciences Institute (ISI) using the Pegasus Workflow Management System (Pegasus WMS), which includes Pegasus [4] and Condor [5]. On AmEC2 we configured our VM image to start Condor worker processes when each node boots.

III.         EVALUATING APPLICATIONS ON THE AMAZON EC2 CLOUD

A)       Performance Comparison between Amazon EC2 and the Abe High Performance Cluster

Fig. 1 compares the runtimes of the Montage, Broadband and Epigenome workflows on all the Amazon EC2 and Abe platforms listed in Table II.  Runtime in this context refers to the total amount of wall clock time, in seconds, from the moment the first workflow task is submitted until the last task completes. These runtimes exclude the following:

·         The time required to install and boot the VM, which typically averages between 70 and 90 seconds (AmEC2 only)
·         The latency in provisioning resources from Abe using the pilot jobs, which is highly dependent on the current system load.
·         The time to transfer input and output data, which varies with the load on the wide Area Network (WAN).

This definition of runtime (also known as-makespan) enables a one-to-one comparison of the performances of AmEC2 and Abe. The similarities between the specifications of   c1.xlarge   and   abe.local   allow   us   to   estimate   the virtualization overhead for each application on AmEC2.

                                                          i.      Montage (I/O-bound)

The best performance was achieved on the m1.xlarge resource type. It has double the memory of the other types, and the extra memory is used by the Linux kernel for the file system buffer cache to reduce the amount of time the application spends waiting for I/O. This is particularly beneficial for an I/O-intensive application like Montage. Reasonably good performance was achieved on all resource types except m1.small, which is much less powerful than the other types. The AmEC2 c1.xlarge type is nearly equivalent to abe.local and delivered nearly equivalent performance (within 8%), indicating the virtualization overhead does not seriously degrade performance for this application.

ii.  Broadband (Memory-bound)

For Broadband the processing advantage of the parallel file system largely disappears: abe.lustre offers only slightly better   performance   than   abe.local And   abe.local’s performance is only 1% better than c1.xlarge, so virtualization overhead is essentially negligible. For a memory-intensive application like Broadband, AmEC2 can achieve nearly the same performance as Abe as long as there is more than 1 GB of memory per core. If there is less, then some cores must sit idle to prevent the system from running out of memory or swapping.

  FIGURE 1.THE PROCESSING TIMES FOR THE MONTAGE, BROADBAND AND EPIGENOME WORKFLOWS ON THE AMAZON EC2 CLOUD AND THE HIGH PERFORMANCE CLUSTER. THE LEGEND IDENTIFIES THE PROCESSORS.

                                                        ii.      Epigenome (CPU-bound)

As with Broadband, the parallel file system in Abe provides no processing advantage for Epigenome: processing times on abe.lustre were only 2% faster than on abe.local. Epigenome performance suggests that virtualization overhead may be more significant for a CPU-bound application: the processing time for c1.xlarge was some 10% larger than for abe.local. The machines with the most cores gave the best performance for Epigenome, as would be expected for a CPU-bound application.

IV.                COST-ANALYSIS OF RUNNING WORKFLOW APPLICATIONS ON AMAZON EC2

AmEC2 itemizes charges for the use of all of its resources, including charges for:
·         Resources, including the use of VM instances and processing,
·         Data storage, including the cost of virtual images in S3 and input data in S3,
·         Data transfer, including charges for transferring input data into the cloud, and
·         Transferring output data and log files between the summit host and AmEC2.

i. Resource Cost

Fig. 2 clearly shows the trade-off between performance and cost for Montage. The most powerful processor, c1.xlarge, offers a three-fold performance advantage over the least powerful, m1.small, but at five times the cost. The most cost-effective solution is c1.medium, which offers performance of only 20% less than m1.xlarge but at five- times lower cost.
For Broadband, the picture is quite different. Processing costs do not vary widely with machine, so there is no reason to choose less-powerful machines. Similar results apply to Epigenome: the machine offering the best performance, c1.xlarge, is also the second-cheapest machine.
FIGURE 2. THE PROCESSING COSTS FOR THE MONTAGE, BROADBAND AND EPIGENOME WORKFLOWS FOR THE AMAZON EC2 PROCESSORS GIVEN IN THE LEGEND.

ii.                   Storage Cost

Storage cost is made up of the cost to store VM images in the Simple Storage Service (S3, an object-based storage system), and the cost of storing input data in the Elastic Block Store (EBS, a SAN-like block-based storage system). Both S3 and EBS use fixed monthly charges for the storage of data, and charges for accessing the data, which can vary according to the application. The rates for fixed charges are $0.15 per GB/month for S3 and $0.10 per GB/month for EBS. The main difference in cost is that EBS is charged based on the amount of disk storage requested, whereas S3 only charges for what is used. Additionally, EBS can be attached to only one computing instance, whereas S3 can be access concurrently by any number of instances.  The variable charges for data storage are $0.01 per 1,000 PUT operations and $0.01 per 10,000 GET operations for S3, and $0.10 per million I/O operations for EBS.
The 32-bit image used for the experiments in this paper was 773 MB, compressed, and the 64-bit image was 729MB, compressed, for a total fixed cost of $0.22 per month. The fixed monthly cost of storing input data for the three applications is shown in Table III. For the experiments described in this study, there were 4,616 S3 GET operations and 2,560 S3 PUT operations for a total variable cost of approximately $0.03. In addition, there were 3.18 million I/O operations on EBS for a total variable cost of $0.30.

Appli.
I/p Vol.
Monthly Cost
Montage
4.3 GB
$0.66
Broadband
4.1 GB
$0.66
Epigenome
1.8 GB
$0.26

TABLE 2 MONTHLY STORAGE COST

iii. Transfer Cost

In addition to resource and storage charges, AmEC2 charges $0.10 per GB for transfer into the cloud, and $0.17 per GB for transfer out of the cloud. Tables IV and V show the transfer sizes and costs for the three workflows.
Input is the amount of input data to the workflow, output is the amount of output data, and logs refers to the amount of logging data recorded for workflow tasks and transferred back to the summit host. The cost of the protocol used by Condor to communicate between the summit host and the workers is not included, but it is estimated to be much less than $0.01 per workflow.

iv. Sample Cost Effectiveness Study


We provide here a simple example of a cost-effectiveness study to answer the question: Is it cheaper to host an on- demand image mosaic service locally or on AmEC2? The costs described here are current as of October 2010. The calculations presented assume that the two services process requests for 36,000 mosaics of 2MASS images (total size10TB) of size 4 sq deg over a period of three years. This workload is typical of the requests made to an existing image mosaic service hosted at the Infrared Processing and Analysis Center. Table VI summarizes the costs of the local service, using hardware choices typical of those used at IPAC. The roll-up of the power, cooling and administration are estimates provided by IPAC system management. Table VII gives similar calculations for AmEC2; the costs there include the costs of data transfer, I/O etc.  Clearly, the local service is the least expensive choice. The high costs of data storage in AmEC2, and the high cost of data transfer and I/O in the case of an I/O-bound application like Montage, make AmEC2 much less attractive than a local service. An example of a much more cost-effective astronomy application will be given in Section V.

Item
Cost ($)
12 TB RAID 5 disk farm and enclosure(3 yr support)
12,000
Dell 2650 Xeon quadcore processor,1 TB staging area
5,000
Power, cooling and administration
6,000
Total 3-year Cost
23,000
Cost per mosaic
0.64

TABLE 3. COST PER MOSAIC OF A LOCALLY HOSTED IMAGE MOSAIC SERVICE

Item
Cost ($)
Network Transfer In
1,000
Data Storage on Elastic Block Storage
36,000
Processor Cost (c1.medium)
4,500
I/O operations
7,000
Network Transfer Out
4,200
Total 3-year Cost
52,700
Cost per mosaic
1.46

TABLE 4: COST PER MOSAIC OF A MOSAIC SERVICE HOSTED IN THE AMAZON EC2 CLOUD

iii.                 Summary Of The Comparative Study: When To Use The Cloud

·         Virtualization overhead on AmEC2 is generally small, but most evident for CPU-bound applications.
·         The resources offered by AmEC2 are generally less powerful than those available in high-performance clusters and generally do not offer the same performance. This is particularly the case for I/O– bound applications, whose performance benefits greatly from the availability of parallel file systems. This advantage essentially disappears for CPU- and Memory-bound applications.
·         End-users should understand the resource usage of their applications and undertake a cost-benefit study of the resources offered to establish a processing and storage strategy. They should take into account factors such as:
·         Amazon EC2 itemizes charges for resource usage, data transfer and storage, and the impact of these costs should be evaluated.
·         For I/O-bound applications, the most expensive resources are not necessarily the most cost- effective.
·         Data transfer costs can exceed the processing costs for data-intensive applications.
·         Amazon EC2 offers no cost benefit over locally hosted storage, and is generally more expensive, but does eliminate local maintenance and energy costs, and does offer high-quality, reliable, storage.

iv.                   Conclusions

Our study has shown that cloud computing offers a powerful and cost-effective new resource for scientists, especially for compute and memory intensive applications. For I/O-bound applications, however, high-performance clusters equipped with parallel file systems and high performance networks do offer superior performance.  End- users should perform a cost-benefit study of cloud resources as part of their usage strategy.

We have used the calculation of an atlas of periodograms of light curves measured by the Kepler mission as an example of how the Amazon cloud can be used to generate a new science product.  Although the monetary costs presented here were small, these costs can grow significantly as the number of curves grows, or as the search parameters are adjusted. As a result, commercial clouds may not be best suited for large-scale computations. On the other hand, there is now a movement towards providing academic clouds, such as those being built by Future Grid or the National Energy Research Scientific Computing Center (NERSC) that will provide virtual environment capabilities to the scientific community.   What remains to be seen is whether the level of service provided by academia can be on the par with that delivered by commercial entities.

REFERENCES
[1]     J. C. Jacob, D. S. Katz, G. B. Berriman, J. Good,  A. C. Laity, E. Deelman, C. Kesselman, G. Singh, M.-H. Su, T. A.  Prince, and R. Williams, “Montage: a grid portal and software toolkit for science-grade astronomical image mosaics”. Computational Science and Engineering. 2010. Vol, 4, Number 2, 1.
[2]     G. B. Berriman, E. Deelman, P. Groth, and G. Juve. “The Application of   Cloud   Computing to the Creation of Image Mosaics and Management of Their Provenance”, SPIE Conference 7740: Software and Cyberinfrastructure for Astronomy (GET REF), 2010.
[3]     G. Juve, E. Deelman, K. Vahi, G. Mehta, G. B.    Berriman, B. P. Berman, and P. Maechling, “Scientific Workflow Applications on Amazon EC2”.  Cloud Computing Workshop in Conjunction with e-Science Oxford, UK: IEEE, 2009.
[4]     Deelman, E.  et al., ―Pegasus: A framework for  mapping complex scientific              workflows onto distributed systems, Scientific Programming, 2005.



A lightweight stream cipher for mobile devices using RSA and Message feedback

A lightweight stream cipher for mobile devices using RSA and Message feedback

Rahul Yadav1, Praveen Kr. Vishnoi2, Sohit Teotia3, Dhirendra Yadav4
1, 2Dept. of IT, SITE, Nathdwara, Rajasthan
3Dept. of MCA, IET, Alwar, Rajasthan
4Dept. of CS, JPTC, Samirpur, Himanchal Pradesh
1yadav.rahul@live.com, 2erpv89@gmail.com, 3sohitt@gmail.com, 4dhirendra.yadav.ballia@gmail.com




Abstract: An encryption method is presented to implement a symmetric stream cipher for which we have used message stream as an One Time Pad and RSA to initiate the first One Time Pad in each cryptographic step previous stream of message is used as One Time Pad for X-OR operation on next stream of message.

                Scheme presented here ensure the secure establishment of Key (First One Time Pad) with the help of well known RSA algorithm and in subsequent cryptographic steps securely transferred message stream is used as One Time Pad for next step.

Key Words & Phrases: RSA algorithm, One Time Pad, Symmetric Cryptosystem, Stream Cipher, Key Feedback, SYMBIAN Mobile Devices.

I. INTRODUCTION

Memory and processing speed of personal computing systems have increased drastically over the past few decades in the terms of processors with huge space for scalability. But for mobile devices especially SYMBIAN based devices have observed slow and steady growth. Most of the popular cryptographic systems are aimed for the computers and mobile devices often suffer in terms of memory and processing speed in order to incorporate security algorithms.

Here a model for Lightweight and symmetric stream cipher system is introduced which provide   the level of security of the higher order of most popular symmetric stream cipher, RC4.The private key is used of the form of One Time Pad with low redundancy in key and for each cryptographic step a new Key with automatic update is used through message feedback approach. Hence no Key exchange is required rather than the first step where we establish a session.[1]

II. SYMBIAN OS BASED MOBILE DEVICES

Symbian is a mobile operating system (OS) and computing platform designed for smart phones and currently maintained by Nokia. The Symbian platform is the successor to Symbian OS and Nokia Series 60; unlike Symbian OS, which needed an additional user interface system, Symbian includes a user interface component based on S60 5th Edition. The latest version, Symbian3, was officially released in Q4 2010, first used in the Nokia N8. In May 2011 an update, Symbian Anna, was officially announced, followed by Symbian Belle in August 2011.

Symbian OS was originally developed by Symbian Ltd. It is a descendant of Psion's EPOC and runs exclusively on ARM processors, although an unreleased x86 port existed. Some estimates indicate that the cumulative number of mobile devices shipped with the Symbian OS up to the end of Q2 2010 is 385 million.

By April 5, 2011, Nokia released Symbian under a new license and converted to a proprietary shared-source model as opposed to an open source project. On February 11, 2011, Nokia announced that it would migrate away from Symbian to Windows Phone 7. In June 22, 2011 Nokia has made an agreement with Accenture as an outsourcing program. Accenture will provide Symbian based software development and support services to Nokia through 2016 and about 2,800 Nokia employees will be Accenture employees at early October 2011. [5]


III. COMPARISON OF PROCESSING / MEMORY CAPACITY BETWEEN COMPUTERS AND SYMBIAN MOBILES

When we compare the memory and the processing capacity between the computers and SYMBIAN based devices against the minimum hardware requirements of applications and platform used we find portable SYMBIAN devices far behind but users expectations are very high for the same. So the security systems also need to be efficient enough to overcome all the limitations of mobile devices. Here a comparison of these requirements is made. [5]

Windows NT
Minimum Requirement
Recommended
Secondary Storage
128 MB
2 GB with 1 GB Free
CPU
25 MHz
150 MHz
RAM
12 MB
64 MB

TABLE 1. REQUIREMENT SPECIFICATIONS OF WINDOWS NT

Windows XP
Minimum Requirement
Recommended
Secondary Storage
1.7 GB
5 GB with 2 GB Free
CPU
2.26 MHz
3.0 GHz Duel Processor
RAM
64-128 MB
512 MB

TABLE 2. REQUIREMENT SPECIFICATIONS OF WINDOWS XP

Apple MAC
Minimum Requirement
Recommended
Secondary Storage
1.5 GB
5 GB with 2 GB Free
CPU
150 MHz
1.7 GHz
RAM
128 MB
512 MB

TABLE 3. REQUIREMENT SPECIFICATIONS OF APPLE MAC

SYMBIAN Mobile Devices
Low Tier SYMBIAN
Mid Tier SYMBIAN
High Tier SYMBIAN
Secondary Storage
162 MB
256 MB
1 GB
CPU
220-250 MHz
399-528 MHz
600 MHz
RAM
32-64 MB
64-128 MB
128-256 MB

TABLE 4. REQUIREMENT SPECIFICATIONS OF SYMBIAN MOBILE DEVICES

Platform
CPU & RAM
Secondary Storage
Windows NT / XP
Highly Expandable
Highly Expandable
Open Sources
Highly Expandable
Highly Expandable
Apple MAC
Less Expandable
Less Expandable
SYMBIAN
Non Expandable
Less Expandable

TABLE 5. SUPPORT TO HARDWARE EXPANSION (FOR MAC SYSTEM PARAMETERS ARE AGAINST THE STANDARD APPLE HARDWARE)
This comparison is made to calibrate the typical differences between computers and SYMBIAN mobile devices when scalability factor is excluded. Furthermore scalability offered by these platforms offers different levels of expandability and we found the SYMBIAN devices to be tightly bound with pre-installation hardware requirements, in terms of storage and processing power.

IV. LIMITATIONS ASSOCIATED WITH IMPLEMENTATION OF NORMAL CIPHER SYSTEMS IN SYMBIANS IN CONTEXT OF ALGORITHM DEVELOPMENT.


Whenever a network connection leaves a building, security to data is a must. . To obtain security objectives cryptographic techniques are used to block outside traffic from mingling with shared internal network. Crypto processing will require a lot of resources and many hosts will reap significant performance benefits if processing load is reduced. In this context different encryption algorithms will be discussed in terms of their computational overhead, confidentiality & authentication. Even though cryptography can resolve the security problem, it also creates some drawbacks. The major part of the disadvantage is computational overhead.  There is no perfect encryption algorithm so far. So people who want more secure system are trying to make the encryption algorithm more complex so that no one can break the system. But complex encryption algorithm takes more time to encrypt a message as the complexity of the crypto system increases.  In other words, if you want to use more secure system, you have to spend more time on communication.  Another problem is data overhead. During the securing procedure, depending on the algorithm that used to make it secure, it may generate some additional data. It is also an overhead in network point of view.[2]

V. ONE TIME PAD

In cryptography, the one-time pad (OTP) is a type of encryption, which has been proven to be impossible to crack if used correctly. Each bit or character from the plaintext is encrypted by a modular addition with a bit or character from a secret random key (or pad) of the same length as the plaintext, resulting in a cipher text. If the key is truly random, as large as or greater than the plaintext, never reused in whole or part, and kept secret, the cipher text will be impossible to decrypt or break without knowing the key. It has also been proven that any cipher with the perfect secrecy property must use keys with effectively the same requirements as OTP keys.[5] However, practical problems have prevented one-time pads from being widely used.
First described by Frank Miller in 1882, the one-time pad was re-invented in 1917 and patented a couple of years later. It is derived from the Vernam cipher, named after Gilbert Vernam, one of its inventors. Vernam's system was a cipher that combined a message with a key read from a punched tape loop. In its original form Vernam's system was not unbreakable because the key could be reused. One-time use came a little later when Joseph Mauborgne recognized that if the key tape were totally random, cryptanalytic difficulty would be increased.[5]

VI. STREAM CIPHER

[Rue86] A stream cipher is a symmetric cipher which operates with a time-varying transformation on individual plaintext digits. By contrast, block ciphers operate with a fixed transformation on large blocks of plaintext digits. More precisely, in a stream cipher a sequence of plaintext digits, m0m1 . . ., is encrypted into a sequence of cipher text digits c0c1 . . . as follows: a pseudorandom sequence s0s1 . . ., called the running-key or the key stream, is produced by a finite state automaton whose initial state is determined by a secret key. The i-th key stream digit only depends on the secret key and on the (i−1) previous plaintext digits. Then, the i-th ciphertext digit is obtained by combining the i-th plaintext digit with the i-th keystream digit. Stream ciphers are classified into two types: synchronous stream ciphers and asynchronousstream ciphers.

The most famous stream cipher is the Vernam cipher, also called one-time pad that leads to perfect secrecy (the ciphertext gives no information about the plaintext). Stream ciphers have several advantages which make them suitable for some applications. Most notably, they are usually faster and have a lower hardware complexity than block ciphers. They are also appropriate when buering is limited, since the digits are individually encrypted and decrypted. Moreover, synchronous stream ciphers are not aected by error-propagation.[3]


VII. RC4: STREAM CIPHER APPROACH

In cryptography, RC4 (also known as ARC4 or ARCFOUR meaning Alleged RC4) is the most widely used software stream cipher and is used in popular protocols such as Secure Sockets Layer (SSL) (to protect Internet traffic) and WEP (to secure wireless networks). While remarkable for its simplicity and speed in software, RC4 has weaknesses that argue against its use in new systems. It is especially vulnerable when the beginning of the output key stream is not discarded, or nonrandom or related keys are used; some ways of using RC4 can lead to very insecure cryptosystems such asWEP.

RC4 uses a variable length key from 1 to 256 bytes to initialize a 256-byte state table.  The state table is used for subsequent generation of pseudo-random bytes and then to generate a pseudo-random stream which is XORed with the plaintext to give the ciphertext.  Each element in the state table is swapped at least once.
  
• The RC4 key is often limited to 40 bits, because of export restrictions but it is sometimes used as a 128 bit key.  It has the capability of using keys between 1 and 2048 bits.   RC4 is used in many commercial software packages such as Lotus Notes and Oracle Secure SQL. 
• The RC4 algorithm works in two phases, key setup and ciphering.  Key setup is the first and most difficult phase of this algorithm.  During a N-bit key setup (N being your key length), the encryption key is used to generate an encrypting variable using two arrays, state and key, and N-number of mixing operations.  These mixing operations consist of swapping bytes, modulo operations, and other formulas.  A modulo operation is the process of yielding a remainder from division.  For example, 11/4 is 2 remainder 3; therefore eleven mod four would be equal to three.

• Once the encrypting variable is produced from the key setup, it enters the ciphering phase, where it is XORed with the plain text message to create an encrypted message.  XOR is the logical operation of comparing two binary bits. If the bits are different, the result is 1.  If the bits are the same, the result is 0.  Once the receiver gets the encrypted message, he decrypts it by XORing the encrypted message with the same encrypting variable.

VIII. LIMITATIONS FOUND IN RC4 FOR SPEEDUP PERFORMANCE ON SYMBIANS

Being efficiently fast for the computer systems, RC4 algorithm is based on the use of a random permutation. Analysis shows that the period of the cipher is overwhelming likely to be greater than 10100. Eight to sixteen machine operations are required per output byte, and the cipher can be expected to run very quickly in software. We can fast the process and improve the operations for mobile devices by giving attention to the fallowing improvement areas.

1.        Elimination of pseudorandom number generator
2.        Elimination of Static Vector array S[256].
a.        Non initialization of S vector.
b.        Skipping of the permutation of S vector.
c.        Removal of time complex swap operations on S vector.

IX. RSA CRYPTOSYSTEM

There are three stages of RSA[4] operations named
1.        Key Generation
2.        Encryption
3.        Decryption Process.
Key Generation
  Select two distinct large prime numbers, says p, q
  Calculate n= p*q
  Calculate φ(n) = (p - 1) * (q - 1)
  Select e : gcd(φ(n), e) == 1
  Calculate d ≡ e-1 mod φ(n)
Your Keys are
Private Key:             (d, n)
Public Key:              (e, n)

Encryption: to encrypt a message block M using the public key (e, n) into cipher C
C= Me mod n

Decryption: to decrypt a cipher block C using the private key (d, n) into message M
M= Cd mod n

X. PROPOSED MODEL

The proposal is consisting of two step cipher scheme. Initially we exchange the key element of the RSA scheme, where the communication initiator device A sends a communication request to device B. Device B responds with its public key element (e, n) of RSA cryptosystem. Now in the scenario where the flow of the data stream is from Device A to Device B, i.e. Device A acts as a sender and Device B acts as a receiver. Now the cryptographic operations can be sought of a two step process;

1.        RSA Mode
2.        Message feedback mode

In RSA mode a session key is established and the first stream of message having 128 bits is securely transferred. In Message feedback mode the message stream of previous cryptographic step is used as a Private Key of One Time Pad forms. Security of the model is completely dependent over the RSA session establishment mechanism. The detailed operations are as:

1)       RSA Mode:
a)        RSA Public key elements are shared between communicating devices, and after this Device B having key elements (e, n) and (d, n) both. Device A have public key element (e, n) only.
b)       Device A encrypts the very first message stream M0 having 128 bits into cipher stream C0 using the public key (e, n) of Device B.
c)        Device A transmits C0 to Device B.
d)       On receiving of C0 Device B decrypts it using his own private key (d, n) and get M0.

2)       Message feedback mode: After RSA operations on very first message stream M0 of 128 bit subsequent message streams Mn can be ciphered with the help of Mn-1 using it as One Time Pad for X-OR operation.
a)        Encryption at Device A
For Mn where n>0
Cn =  MnMn-1                       ……(1)
b)       Decryption at Device B
For Cn where n>0
Mn =  CnMn-1                       ……(2)


XI. ADVANTAGES OF PROPOSED SYSTEM AND SECURITY LEVEL OFFERED

The security of this system needs to be examined in more detail. In particular, the difficulty of factoring large numbers should be examined very closely. The reader is urged to find a way to “break" the system. Once the method has withstood all attacks for a sufficient length of time it may be used with a reasonable amount of confidence.[4]

RSA's security management strategy brings together the ISO 27001 framework, a tightly integrated set of core security technologies, strategic professional services, and a vibrant user community to make enterprise security management more efficient and effective.

The integrated Security Management Suite at the heart of this approach will include the RSA Archer eGRC Suite, RSA enVision for security information and event management (SIEM), and RSA Data Loss Prevention (DLP). It will provide a single hub to correlate and act on information from across your enterprise, including a wide variety of third-party point products. You'll be able to access information security within its business context and respond more appropriately. You can also take advantage of purpose-built solutions to specific business challenges, such as RSA Archer Incident Management and RSA Cloud Security and Compliance Solutions.

XII. CONCLUSION

The main results drown from this work are following:
1. Higher level of security offered for normal mobile communication.
2. The security level of proposed model has the same level of security to offer as RSA cryptosystem does.
3. Advantages of Public key cryptography with simplicity of Private Key environment.
4. A hybrid model which try to have advantages of both Public Key and Private Key cryptosystems
5. The exhaustive operations of RC4 algorithms are eliminated.
6. Message feedback ensures the data integrity while communication over a communication medium in Public domain.
7. The security lies totally on RSA operations, which is approximately infeasible to break.

REFERENCES


[1] Stallings W., Cryptography and Network Security, 4e, Pearson Education - New Delhi, 2002

[2]  A.V.N.Krishna, and Dr. A.Vinaya Babu, Pipeline Data Compression and Encryption Techniques in E-Learning environment,@ http://www.jatit.org/volumes/research-papers/Pipeline_Data_Compression_3_1.pdf


[3] R.A. Rueppel. Analysis and design of stream ciphers. Springer-Verlag, 1986


[4] Rivest R.L. et.al. ‘A method for obtaining digital signatures and publickey cryptosystems’, Commun. Of the ACM, Vol 21, No 2, February 1978

[5] http://en.wikipedia.org/wiki/



RSA AND ABES-ARM METHODS FOR PERFORMANCE ENHANCEMENT







Formatted Text:

REVIEW: RSA AND ABES-ARM METHODS FOR PERFORMANCE
ENHANCEMENT
Rahul Yadav Ashwin Perti
Department of Information Technology, Department of Information Technology,
Academy of Business and Engineering Sciences, Academy of Business and Engineering Sciences,
Ghaziabad, India; Ghaziabad, India;
E-mail: rexingrahul@gmail.com E-mail: ashwinperti@abes.ac.in
Mohammad Tausif
Department of Indesign RnD
Thomson Digital Press
Noida, India
E-mail: mohdtausif20@gmail.com
Abstract: An encryption method and modifications to
the existing algorithms are presented in order to
enhance the performance and security of the RSA
cryptosystem. The method presented here is capable
and efficient for each such block value of a message
where bit count of message and publish divisor are
same, and the numerical value of message is greater
than publish divisor, this have following important
consequence: enciphering and deciphering of each
block of message require a number of exhaustive
operations, so we proposed solution to those
considerations.
A message M is encrypted into a cipher pair by
representing it in two numbers by using number theory
(not in two sub-blocks), different operations are
performed over each number.
Modifications proposed for the key generation
ensures maximum key space, rapid key generation and
enhances security from a new dimension of discovered
threat.
Key Words and Phrases: Public-key cryptosystems,
cryptography, unconcealed key(s), ambiguity, Bézout's
identity.
I. Introduction
In the history of cryptology up to 1975, all
cryptosystems required the sender and the receiver to
agree beforehand on the same key, a key that had to be
rigorously protected from exposure to an adversary. In
1976, Martin Hellman, a professor at Stanford
University and Whitfield Diffie, a graduate student,
introduced the concept of public key cryptography. In
August 1977 the RSA public key cryptosystem [1] was
introduced in Martin Gardner’s column on
Mathematical Games in Scientific American. The RSA
cryptosystem has survived over thirty one years of
study by cryptanalysts in the public sector, but there are
also dimensions in the basic concepts of RSA
cryptosystem which are yet to be disclosed in order to
make RSA more efficient and secure in implementation
prospective.
In subsequent text we will discuss some of the problems
and limitations associated with RSA cryptosystem, but
first let’s have a brief of the RSA cryptosystem. There
are three stages of RSA operations named Key
Generation, Encryption and Decryption Process. In the
Key Generation step we first choose two distinct large
prime numbers namely p and q, multiplying both the
numbers gives publish divisor n, another value φ(n)
known as Eulars totient function of n is calculated as
φ(n) = (p - 1) * (q - 1). Then we choose public exponent
e, such number which is relatively prime to φ(n).
Private exponent d is calculated by using the
congruence modulo relation which is notated as
[e * d = 1 mod φ(n)],
and d is said to be multiplicative inverse of e in the ring
of positive integers Zφ(n). To encrypt lengthy SSL data
we first divide that data into small size of blocks
depends on the size of publish divisor n. A block value
M (Integer representation of data block), is encrypted
into cipher C as
C = Me mod n
and for the purpose of decryption
Cd mod n gives M.
II. Limitations and problems associated with
RSA cryptosystem
Here we are going to discuss the main limitations and
problems which are often encounters while
implementation of RSA cryptosystem and these are just
ignored by taking an alternative patch over the whole
system. The solutions of given list will be discussed in
subsequent sections.
2.1 RSA cryptosystem do not give any method to
encrypt the message block M where M>n, except
dividing M into sub-blocks of size and value less than
n, this result into increased time and space complexity.
For example if we are using a 1024-bit RSA key whose
initials (Hex value) are given as 00:ca:fa:79:98… (an
example sited in Netscape site) now for a 1024-bit M,
whose initials (Hex value) are given as
2a:5b:57:4d:26…, The message M is of the same size as
n, but due to the fact that M>n, and RSA cryptosystem
is not applicable for M>n, we need to divide M into two
sub-blocks which doubles the complexity, and half the
performance of the system in the case.
2.2 A huge key space of RSA cryptosystem gone in
vain due to absence of absolute solution for the
multiplicative inverse problem for the ring of positive
integers. This is due to fact that most widely used
solution for the multiplicative inverse problem,
Extended Euclid algorithm is efficient for the integers
and not for the positive integers. The algorithm returns
the smallest possible integer as multiplicative inverse.
Our observations show in more than 49% cases
algorithm returns a negative integer, which are not
desired. The most accurate method to find
multiplicative inverse, which is given as:
e * d mod φ(n) = 1
or d = (k * φ(n) +1)/e | for some integer value of k
This approach have unnecessory time complexity,
we encounter the value of k lies between 1 to (φ(n) – 2)
for the different values of e and k is maximum (φ(n) –
2) for (e = φ(n) -1). Due to this fact we have to use long
lasting key pairs which is not recommended due to
security resions.
2.3 In some cases we observed exact mapping between
the key pair e and d, saying e = = d, this is not desired
for a public key environment. So we need to find out
the cases where such conditions encounter and its
solution.
III. Extended Euclidean Algorithm
Before heading towards the solutions for the problems
and limitaions discussed in above section let’s have a
breaf look over Extended Euclid algorithm which is
going to be a subject of major discussion in subsequent
sections. The extended Euclidean algorithm is an
extension to the Euclidean algorithm for finding the
greatest common divisor (GCD) of integers a and b: it
also finds the integers x and y in Bézout's identity [4]
ax + by = gcd (a, b)
(Typically either x or y is negative).
The extended Euclidean algorithm is particularly useful
when a and b are coprime, since x is the modular
multiplicative inverse of a modulo b. Here we present
the Iterative textbook version of Extended Euclid
algorithm [3] to find the value
d = b-1 mod m
Extended Euclid [m, b] // m>b
1. (A1, A2, A3) = (1, 0, m); (B1, B2, B3) = (0, 1,
b);
2. if B3 = 0 return A3 = gcd(m, b); no
multiplicative inverse
3. if B3 = 1 return B3 = gcd(m, b); B2 = b-1 mod
m
4. Q = floor(A3 / B3)
5. (T1, T2, T3) = (A1 – QB1, A2 – QB2, A3 –
QB3)
6. (A1, A2, A3) = (B1, B2, B3)
7. (B1, B2, B3) = (T1, T2, T3)
8. goto 2
IV. ABES-ARM variant of RSA for M>n
As in the traditional method of encryption and
decryption using RSA it is considered that RSA
algorithm is efficient for the message M, where 0<M<n,
this is due to the closure property of the Ring of
Integers Zn under the operations multiplication and
residue modulo. Here we have a variant of RSA, which
is capable of encrypting and decrypting the value M,
which lies outside the Zn.
The concept is the simple which preserves the
security of the RSA, and let it retain same as it is with
the message size and value M<n, as the key values
remains same, and we used the value C2 to record the
message variance from the n, and this value C2= floor
(M / n) is only dependent on the value of n, and the
residue r lies in Zn which will be encrypted using
conventional RSA relations, so it cause no security
compromises. The method presented here is capable for
the M>n and it is efficient where size of M is of the
same order as n, for example the method is capable of
encryption and decryption for the values as (n= 187,
M=1 to 999), we will not go further with this approach
for the entire plaintext as it cause the disclosure of the
MSB of plaintext message M when C2 is multiplied by
n. The number of disclosed MSB digits will be same
with count of more digits in M than n. Yet we can apply
the method for the cases as illustrated in section 2.2.
4.1 Encryption Process:
To encrypt M > n, from public key (e, n)
r = M mod n
C1 = re mod n
C2 = (M – r) / n or C2 = floor (M / n)
4.2 Decryption Process:
To decrypt cipher pair (C1, C2), from private key (d, n),
for the message M
M = (C1
d
mod n) + (C2 * n)
4.3 Proof: the underlying Mathematics:
We now prove that equations (1) (2) in subsequent text
hold (that is, that deciphering works correctly if e and d
are chosen as described in section II and will be more
efficient and secure if the concepts on section V and VI
are implemented). Now
D(E(M))
= (C1)d mod n + (C2 * n)
= (re)d mod n + ((M-r)/n) * n
= red mod n + M – r (1)
Now let r is the value of the plaintext used for RSA
cryptosystem encrypted by the public key e and
decrypted by the private key d.
D(E(r)) ≡ (E(r))d ≡ (re)d (mod n) = red (mod n)
E(D(r)) ≡ (D(r))e ≡ (rd)e (mod n) = red (mod n)
And as per the Rich Schroeppel [2] proof of RSA, E
and D are inverse permutations. This yields when the D
is applied on the output value of E, and vise-versa the
resulting value is red (mod n). now when two inverse
permutations E and D are applied on the value r, this
will always result into r, this is equally saying that when
RSA cryptosystem’s operations E and D are applied on
a value r this will result into red (mod n) or r, as it
happens in RSA cryptosystem. This is equally saying
that
red (mod n) = r (2)
now placing the result (2) into (1)
D(E(M))
= (C1)d mod n + (C2 * n)
= (re)d mod n + ((M-r)/n) * n
= red mod n + M – r
= r + M – r
= M
V. Ambiguity in RSA Key generation
5.1. Analysis of the relation d ≡ e-1 mod φ(n)
If we proceed with the congruence relation with the d
and e-1 we may derive the fallowing relations
Given;
d ≡ e-1 mod φ(n)
Implications;
 d ≡ (1/e) mod φ(n)
 d*e ≡ 1 mod φ(n)
 d*e mod φ(n) = 1
 d*e -1 mod φ(n) = 0
 (d*e -1)/ φ(n) = k //for some integer constant k
 d = (k* φ(n) +1)/e (3)
Now both possibilities are there, k may be either
positive or negative. For the positive values of k only,
we can generate decryption key of RSA cryptosystem.
For the negative values again we can generate such
entities which do satisfy the multiplicative inverse
criteria, but we can not use them as the key values for
RSA decryption. Here we encounter the fact that there
exists ambiguity in RSA key generation. This was
clearer when we were able to transform the
multiplicative inverse relation in the form of Bézout's
identity [4].
5.2. Proof of ambiguity:
As in Bézout's identity [4]
ax + by = gcd (a, b)
(Typically either x or y is negative).
A Bézout's identity is the representation of the elements
of a finite field under the multiplicative modulo
operation. We can transform the modular multiplicative
inverse relation used in RSA into Bézout's identity, as:
d ≡ e-1 mod φ(n)
Implications;
 d ≡ (1/e) mod φ(n)
 d*e ≡ 1 mod φ(n)
 d*e mod φ(n) = 1
 d*e -1 mod φ(n) = 0
 (d*e -1)/ φ(n) = k //for some integer constant k
 de = k* φ(n) + 1
 -k* φ(n) + de = 1
now 1 = gcd (φ(n), e)
 -k* φ(n) + de = gcd(φ(n), e) (4)
the above relation (4) is of the form Bézout's identity,
so for positive values of k, d will be negative. A
snapshot of the results of extended euclidean values is
given, as
5.3. Avoiding the ambiguity in RSA key generation
As in the subsequent sections we will discuss method
how to avoid the ambiguity in RSA key generation by
the use of Theory of multiple multiplicative inverses
resides outside the finite field, and will try to find out
the relation between these values, and how they will be
incorporated in Extended Euclid Algorithm so that it
always return a correct positive value. The main
advantage of using only the Extended Euclid algorithm
instead of relation (3), which is given as
d = (k* φ(n) +1)/e
It needlessly requires so long calculation depends on
the values of k, its highest value φ(n)-2 is dependent on
the value of φ(n), and this one is not the case for
Extended Euclid algorithm.
5.4. Resolving Ambiguity by modifying Extended
Euclid algorithm’s return value
5.4.1. Theory of multiple multiplicative inverses resides
outside the ring
As the solution of such kind of ambiguity we have
found a hypothesis and the arithmetic proof of it as
illustrated below;
“For a given value of e and φ(n) we can calculate
multiple values of d such as
1. We get one of it value falls between 2 to φ(n)
which is often used in RSA implementations by the
relation,
d = k* φ(n) +1 (5)
2. For the some cases when we use Euclidean method
to find multiplicative inverse we get a minimal negative
value (d0), for the cases of the negative Euclidean
values if we calculate Least Positive Multiplicative
Inverse value using the relation d = k* φ(n) +1,
We found a relation of the form
d= d0 + φ(n) (6)
We generalized the case and have practical proof as
di+1= di + φ(n) (7)
We will use these results to avoid the ambiguity of RSA
cryptosystem.
5.4.2. Proposed modification in Extended Euclid
algorithm for resolving ambiguity and best suited for
ARM key calculation.
ARM_Euclid(x,y)
{
A1=0, A2=x;
B1=1, B2=y;
while(1)
{
if B2 = 0 then return NO_INVERSE;
if B2 = 1 then
{
return(B1);
}
q=(A3/B3)/1;
T1=A1-(q*B1); if T1<0 then T1=T1+x;
T2=A2-(q*B2); if T2<0 then T2=T2+x;
A1=B1; A2=B2;
B1=T1; B2=T2;
}
}
VI. Unconcealed Keys
In the ring of positive integers less than φ(n) = (p-1) (q-
1) for primes p and q under the operations
multiplication modulo, if we derive a relation between
two integers said (e, d) of the form (the multiplicative
inverse relation).
d ≡ e-1 mod φ(n)
We find a mapping (d= =e) for the exactly seven
values of e, now if we sort these values these will lie in
the ring in fallowing sequence:
1. φ(n)/4 – v
2. φ(n)/4 + v
3. φ(n)/2 -1
4. φ(n)/2 +1
5. 3 *φ(n)/4 – v
6. 3 *φ(n)/4 + v
7. φ(n) -1
(For a fixed number v, randomly dependent on φ(n)).
If we square these values (e) and then decrement the
result by 1, the resulting value (e2-1) will be a multiple
of φ(n), no matter how long φ(n) is, developers can
check the unconcealed results for the long as well as
short values of φ(n).
Example unconcealed keys
n
φ(n)
187
160
209
180
Unconcealed 1 e01 31 19
Unconcealed 2 e02 49 71
Unconcealed 3 e11 79 89
Unconcealed 4 e12 81 91
Unconcealed 5 e21 111 109
Unconcealed 6 e22 129 161
Unconcealed 7 e00 159 179
6.1 Security violence due to uses of unconcealed
keys:
By using the unconcealed keys in Public key
cryptosystem disclosing public key is equivalent to
disclosing the private key, so one should strictly avoid
uses of these kinds of entities. For the cryptanalysts it
will be good practice to try to decrypt the message first
by the known entity that is public key.
6.2. Resolving Un-concealed key values
We have found that each unconcealed key value fallows
one definite relation (8) which is;
(e2 -1) mod g= 0 ……………….(8)
Here we have replaced φ(n) by an alternative notation
by g, saying φ(n) = g;
There will be two methods to avoid such kind of
values,
1. Modifying the structure of Extended Euclid
algorithm
2. Placing a check for (e2 -1) mod g= 0 in step of
selection of key value, step 4 of RSA key generation.
Case1. There are few advantages and disadvantages of
both of above methods. If we go for such a check in the
calculation of multiplicative inverse we have to only
place a single check of the form
If (e == d) then return unconcealed and loop back to
step 4 of RSA key generation … (9)
I.e. choose the next value as e so that previous one is
un-concealed.
Case2. If we go for check in the selection of the key in
step 4, the check structure will be of the form;
(e2 -1) mod g= 0 then declare unconcealed and loop
back to step 4 ……………… (10)
In the case 1 it seems to be lengthier task as compared
to case 1, because we have to loop back after the
execution of whole steps of Extended Euclid algorithm,
but in the case 2 we have a check before the Extended
Euclid structure so it don’t required lengthier loop back.
But if we analyze the complexity of checks, then we
found the time and space complexity of (9) is high in a
great deal than one in (10), and we have to apply check
on each e value. We will found the loop back after the
execution of Extended Euclid structure only in the 7
cases, since there are only 7 unconcealed key values for
φ(n) = (p-1) * (q-1) where p, q prime so this is the case
for only those values but the performance penalty of
relation structure (10) is more high which is the case for
all the e in finite ring. It is better practice to check the
unconcealed values during the calculation of modular
multiplicative inverse e; i.e. case (1).
Case1. Proposed modification in Extended Euclid
algorithm for avoiding unconcealed values
ARM_Euclid(x,y)
{
A1=0, A2=x;
B1=1, B2=y;
while(1)
{
if B2 = 0 then return NO_INVERSE;
if B2 = 1 then
{
if(inverse == e) then return unconcealed;
else
return(B1);
}
q=(A3/B3)/1;
T1=A1-(q*B1); if T1<0 then T1=T1+x;
T2=A2-(q*B2); if T2<0 then T2=T2+x;
A1=B1; A2=B2;
B1=T1; B2=T2;
}
}
Case2. Proposed modification in selection of e to avoid
unconcealed keys
1. Select prime integers p, q
2. Calculate n=p*q
3. Calculate φ(n)=(p-1)*(q-1)
4. Choose e, so that GCD(e, φ(n))=1 && s (e2 -1)
mod φ(n) != 0
5. Calculate d, so that d ≡ e-1 mod φ(n)
VII. A Symmetric RSA scheme
The symmetric RSA scheme can presented by using the
unconcealeds as the key elements for the purpose, as we
have seen in above section that there are seven
unconcealeds while calculating the multiplicative
inverse of a totient function used in asymmetric RSA,
which remains untransformed in the process. The steps
of calculating the private key elements are as fallows:
1. Select prime integers p, q
2. Calculate n=p*q
3. Calculate φ(n)=(p-1)*(q-1)
4. Choose e, so that GCD(e, φ(n))=1 && (e2 -1) mod
φ(n) = = 0
Encryption:
For message M
C = Me mod n
Decryption:
M = Ce mod n
VIII. Conclusions
The main results drown from this work are fallowing
1. ABES-ARM variant to encrypt efficiently the M >
n of the same order
2. Extended key space can be achieved by adoption of
the proposed modifications in extended Euclid
algorithm.
3. Security of the RSA cryptosystem can be enhanced
in a public key system by avoiding the unconcealed
keys.
4. We can use the RSA scheme in a symmetric
manner by using unconcealed keys, the most easy
calculated symmetric keys are given as φ(n)-1 and
φ(n)/2 + 1.
References
[1] R.L. Rivest, A. Shamir, and L. Adleman; A Method
for Obtaining Digital Signatures and Public-Key
Cryptosystems Laboratory for Computer Science,
Massachusetts Institute of Technology, Cambridge;
1978; original RSA papers @
http://people.csail.mit.edu/rivest/Rsapaper.pdf; p 6-8;
[2] R. Schroeppel; contributor author of the underlying
mathematics on original RSA papers as per the [1],
Massachusetts Institute of Technology, Cambridge;
1978;
[3] William Stallings; Cryptography and Network
Security, Principles and Practice Third edition; Pearson
Education (Singapore), Delhi; 2003;
[4] Wikipedia, the encyclopedia; Bézout's identity,
Modular multiplicative inverse, extended Euclidean
algorithm; @ http://en.wikipedia.org/wiki/; Nov 2008;