我已經爲密碼學Deffie Hellman創建了這個基本程序。我希望s是一個隨機生成的素數,q是一個隨機生成的整數。 sk1和sk2是隨機生成的共享密鑰。 pk1和pk2是我必須證明的模數計算值彼此相等。我認爲我的公式是正確的,但我不知道如何打印s,q,sk1,sk2,pk1和pk2的值來驗證我的要求。我的代碼粘貼在下面,如果有人可以幫我打印報表,我會很感激。打印值問題
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package javaapplication1;
import java.util.Random;
import java.math.*;
/**
*
* @author Hash
*/
public class DH {
public static void main(String [] arg) {
int s, q;
double sk1, sk2, pk1 = 0, pk2 = 0;
Random generator = new Random();
s = generator.nextInt(50000);
q = generator.nextInt(50000);
sk1 = generator.nextInt();
sk2 = generator.nextInt();
if(s==1 || s==2) {
for(int i = 2; i< (int)(s/2); i++) {
if(s/i != (int)(s/i)) {
double a= Math.pow(q,sk1);
pk1 = a%s;
double b= Math.pow(q, sk2);
pk2 = b%s;
if(pk1==pk2) {
System.out.println("true");
}
System.out.println(s);
System.out.println(q);
System.out.println(sk1);
System.out.println(sk2);
System.out.println(pk1);
System.out.println(pk2);
}
}
}
}
}
請選擇它並按下CTRL + K來格式化您的代碼。 – EboMike 2010-11-30 00:59:54
順便說一句,你的問題是什麼?你說你不確定如何打印這些值,但是你打電話給`System.out.println`。那麼發生了什麼?他們沒有打印出來嗎? – EboMike 2010-11-30 01:00:35