Wrox Programmer Forums
Go Back   Wrox Programmer Forums > Java > Java and JDK > Java Basics
|
Java Basics General beginning Java language questions that don't fit in one of the more specific forums. Please specify what version.
Welcome to the p2p.wrox.com Forums.

You are currently viewing the Java Basics section of the Wrox Programmer to Programmer discussions. This is a community of software programmers and website developers including Wrox book authors and readers. New member registration was closed in 2019. New posts were shut off and the site was archived into this static format as of October 1, 2020. If you require technical support for a Wrox book please contact http://hub.wiley.com
 
Old March 21st, 2008, 07:24 PM
Registered User
 
Join Date: Mar 2008
Posts: 8
Thanks: 0
Thanked 0 Times in 0 Posts
Send a message via MSN to Floetic
Default Using Java To Implement RSA Algorithm

Hi I'm looking for SOME advice on how to simulate the following:

http://i71.photobucket.com/albums/i1...pinate/RSA.jpg

http://i71.photobucket.com/albums/i1...inate/RSA2.jpg


Ive done this so far:


Code:
package RSAalgorithm;

public class SecurityAlgorithm {

     public static char[] StartSymbolic = {'A','B','C','D','E','F','G','H','I','J',
                                    'K','L','M','N','O','P','Q','R','S','T',
                                    'U','V','W','X','Y','Z'}; 

     public static int[] numeric = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,
                          16,17,18,19,20,21,22,23,24,25,26};


 

     public static void main(String[] args) {


          long P3 = 0;
          long P3mod33=0;
          long C7=0;
           long C7mod33=0;



       for(int counter = 0; counter < numeric.length; counter++){

            for(int i = 0; i < StartSymbolic.length; i++)  {

              int temp = numeric[counter];
              P3 = (long) (temp*temp*temp);
         P3mod33 = P3%33;
         C7 = (long) (P3mod33*P3mod33*P3mod33*P3mod33*P3mod33*P3mod33*P3mod33);
        int tp = numeric[counter];
                 C7mod33 = C7%33;
       }

                    System.out.println("*******************************************");
                     //System.out.println(StartSymbolic[i]);
                    System.out.println("Numeric: " + numeric[counter]); 
                         System.out.println("P3: " +P3); 
                     System.out.println("P3mod33: " + P3mod33); 
                      System.out.println("C7: " +C7);
                      System.out.println("C7mod33:" + C7mod33);
                    //  System.out.println(StartSymbolic[i]);
                     System.out.println("*******************************************");

          }

     }
 }

Code:
Output:
*******************************************
Numeric: 1
P3: 1
P3mod33: 1
C7: 1
C7mod33:1
*******************************************
*******************************************
Numeric: 2
P3: 8
P3mod33: 8
C7: 2097152
C7mod33:2
*******************************************
*******************************************
Numeric: 3
P3: 27
P3mod33: 27
C7: 10460353203
C7mod33:3
*******************************************
*******************************************
Numeric: 4
P3: 64
P3mod33: 31
C7: 27512614111
C7mod33:4
*******************************************
*******************************************
Numeric: 5
P3: 125
P3mod33: 26
C7: 8031810176
C7mod33:5
*******************************************
*******************************************
Numeric: 6
P3: 216
P3mod33: 18
C7: 612220032
C7mod33:6
*******************************************
*******************************************
Numeric: 7
P3: 343
P3mod33: 13
C7: 62748517
C7mod33:7
*******************************************
*******************************************
Numeric: 8
P3: 512
P3mod33: 17
C7: 410338673
C7mod33:8
*******************************************
*******************************************
Numeric: 9
P3: 729
P3mod33: 3
C7: 2187
C7mod33:9
*******************************************
*******************************************
Numeric: 10
P3: 1000
P3mod33: 10
C7: 10000000
C7mod33:10
*******************************************
*******************************************
Numeric: 11
P3: 1331
P3mod33: 11
C7: 19487171
C7mod33:11
*******************************************
*******************************************
Numeric: 12
P3: 1728
P3mod33: 12
C7: 35831808
C7mod33:12
*******************************************
*******************************************
Numeric: 13
P3: 2197
P3mod33: 19
C7: 893871739
C7mod33:13
*******************************************
*******************************************
Numeric: 14
P3: 2744
P3mod33: 5
C7: 78125
C7mod33:14
*******************************************
*******************************************
Numeric: 15
P3: 3375
P3mod33: 9
C7: 4782969
C7mod33:15
*******************************************
*******************************************
Numeric: 16
P3: 4096
P3mod33: 4
C7: 16384
C7mod33:16
*******************************************
*******************************************
Numeric: 17
P3: 4913
P3mod33: 29
C7: 17249876309
C7mod33:17
*******************************************
*******************************************
Numeric: 18
P3: 5832
P3mod33: 24
C7: 4586471424
C7mod33:18
*******************************************
*******************************************
Numeric: 19
P3: 6859
P3mod33: 28
C7: 13492928512
C7mod33:19
*******************************************
*******************************************
Numeric: 20
P3: 8000
P3mod33: 14
C7: 105413504
C7mod33:20
*******************************************
*******************************************
Numeric: 21
P3: 9261
P3mod33: 21
C7: 1801088541
C7mod33:21
*******************************************
*******************************************
Numeric: 22
P3: 10648
P3mod33: 22
C7: 2494357888
C7mod33:22
*******************************************
*******************************************
Numeric: 23
P3: 12167
P3mod33: 23
C7: 3404825447
C7mod33:23
*******************************************
*******************************************
Numeric: 24
P3: 13824
P3mod33: 30
C7: 21870000000
C7mod33:24
*******************************************
*******************************************
Numeric: 25
P3: 15625
P3mod33: 16
C7: 268435456
C7mod33:25
*******************************************
*******************************************
Numeric: 26
P3: 17576
P3mod33: 20
C7: 1280000000
C7mod33:26
*******************************************

I was looking to achieve what is shown in the 1st image.

I can get the numeric, P3, P3mod33, C7, C7mod33 to print out but not the symbolic information for some reason?

I want to be able to allow the user to enter in a string then the plaintext and ciphertext can be displayed.

Like this:

String input: SUZANNE

Output:

Plaintext: S U Z A N N E
Ciphertext: 28 21 20 1 5 5 26


Thanks.

 
Old March 24th, 2008, 07:26 AM
Friend of Wrox
 
Join Date: Mar 2007
Posts: 373
Thanks: 0
Thanked 1 Time in 1 Post
Default

If i understood your problem clearly then the following code will give the output you wanted
Code:
import java.io.*;

public class SecurityAlgorithm {

    public static DataInputStream in = new DataInputStream(System.in);

     public static void main(String[] args) {
         char[] plainText;
         try {
             System.out.print("Enter a string: ");
             plainText = in.readLine().toUpperCase().toCharArray();
         } catch (IOException e) {
             e.printStackTrace();
             return;
         }

         int[] encText = new int[plainText.length];

         System.out.print("\nPlain Text:\t ");
         for(int i=0;i<plainText.length; i++) {
             int tmp =(int)plainText[i]-64;
             encText[i] = (tmp*tmp*tmp)%33;
             System.out.print("\t"+plainText[i]);
         }

         System.out.print("\nEncripted Text:\t");
         for(int i=0;i<encText.length; i++) {
             System.out.print("\t"+encText[i]);
         }
     }
 }

- Rakesh
 
Old March 24th, 2008, 12:07 PM
Registered User
 
Join Date: Mar 2008
Posts: 8
Thanks: 0
Thanked 0 Times in 0 Posts
Send a message via MSN to Floetic
Default

Thank you so so very much rakesh that is exactly what I was looking to achieve :)






Similar Threads
Thread Thread Starter Forum Replies Last Post
Wrapping RSA Keys rayback_2 BOOK: Beginning Cryptography with Java 3 April 28th, 2008 04:29 PM
Problem With RSA Interface Floetic Java GUI 1 March 25th, 2008 06:14 AM
RSA Decryption - Chapter 4 amalvido BOOK: Beginning Cryptography with Java 2 January 22nd, 2007 08:59 PM
Bad data when decrypting using RSA scotthcw ASP.NET 2.0 Basics 0 December 8th, 2006 11:10 PM
RSA ajm235 C++ Programming 1 August 19th, 2004 01:41 PM





Powered by vBulletin®
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Copyright (c) 2020 John Wiley & Sons, Inc.