網頁

2013年10月16日 星期三

密碼學RSA作業

簡易版本的RSA系統中,假設質數p=13, q=17

n=?
phi(n)=?
假設公鑰指數e=5,私鑰指數d=?
明文代碼m=100,密文c=?

提示:可用Java中的BigInteger 中的方法modInverse, modPow求d與c的解,或者是用筆算。參閱http://anwendeng.blogspot.tw/2013/10/java1024-bit-rsa.html

52 則留言:

  1. B10133048 饒家華2013年10月16日 下午1:05

    package go;
    import java.math.BigInteger;
    import java.security.SecureRandom;

    public class CAI {

    public static void main(String[] args)throws Exception
    {
    System.out.println("My name is RAMBO!");
    SecureRandom rnd=new SecureRandom();
    BigInteger p,q,n,phiN,e,d;
    int b=512, u=128;
    p=new BigInteger("13");
    System.out.println("p="+p);
    q=new BigInteger("17");
    System.out.println("q="+q);
    n=p.multiply(q);
    System.out.println("n="+n);
    BigInteger one=new BigInteger("1");
    phiN=p.subtract(one).multiply(q.subtract(one));
    System.out.println("phiN="+phiN);
    e=new BigInteger("5");
    System.out.println("e="+e);
    d=e.modInverse(phiN);
    System.out.println("d="+d);
    BigInteger m=new BigInteger("100");
    System.out.println("m="+m);
    BigInteger c=m.modPow(e, n);
    System.out.println("c="+c);
    BigInteger m1=c.modPow(d, n);
    System.out.println("m1="+m1);
    System.out.println(m.equals(m1));

    }

    }

    回覆刪除
  2. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  3. n=221

    phi(n)=192

    私鑰指數d=77

    密文c=172

    回覆刪除
  4. b10031017 徐瑞謚2013年10月22日 晚上9:30

    n=221

    phi(n)=192

    私鑰指數d=77

    密文c=172

    回覆刪除
  5. n=221
    phi(n)=192
    d=77
    c=172

    回覆刪除
  6. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  7. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  8. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  9. n=221

    phi(n)=192

    私鑰指數d=77

    密文c=172

    回覆刪除
  10. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  11. B10031041 謝東諺2013年10月23日 清晨6:55

    n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  12. B10133162 楊杰霖2013年10月23日 清晨7:48

    n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  13. b10041032 林佳雯
    n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  14. b10031063 許時睿2013年10月23日 上午9:21

    n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  15. N=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  16. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  17. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  18. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  19. n=221
    phi(n)=192
    d=77
    c=172

    回覆刪除
  20. n=221
    phi(n)=192
    d=77
    c=172

    回覆刪除
  21. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  22. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  23. N=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  24. B10133014 吳欣怡2013年10月23日 下午3:26

    n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  25. B10133042 沈俞宜2013年10月23日 下午3:26

    n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  26. B10133002 謝佩紋2013年10月23日 下午3:26

    n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  27. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  28. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  29. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  30. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  31. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  32. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  33. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  34. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  35. package go;
    import java.math.BigInteger;
    import java.security.SecureRandom;

    public class CAI {

    public static void main(String[] args)throws Exception
    {
    System.out.println("My name is RAMBO!");
    SecureRandom rnd=new SecureRandom();
    BigInteger p,q,n,phiN,e,d;
    int b=512, u=128;
    p=new BigInteger("13");
    System.out.println("p="+p);
    q=new BigInteger("17");
    System.out.println("q="+q);
    n=p.multiply(q);
    System.out.println("n="+n);
    BigInteger one=new BigInteger("1");
    phiN=p.subtract(one).multiply(q.subtract(one));
    System.out.println("phiN="+phiN);
    e=new BigInteger("5");
    System.out.println("e="+e);
    d=e.modInverse(phiN);
    System.out.println("d="+d);
    BigInteger m=new BigInteger("100");
    System.out.println("m="+m);
    BigInteger c=m.modPow(e, n);
    System.out.println("c="+c);
    BigInteger m1=c.modPow(d, n);
    System.out.println("m1="+m1);
    System.out.println(m.equals(m1));

    }

    }

    回覆刪除
  36. package go;
    import java.math.BigInteger;
    import java.security.SecureRandom;

    public class CAI {

    public static void main(String[] args)throws Exception
    {
    System.out.println("My name is RAMBO!");
    SecureRandom rnd=new SecureRandom();
    BigInteger p,q,n,phiN,e,d;
    int b=512, u=128;
    p=new BigInteger("13");
    System.out.println("p="+p);
    q=new BigInteger("17");
    System.out.println("q="+q);
    n=p.multiply(q);
    System.out.println("n="+n);
    BigInteger one=new BigInteger("1");
    phiN=p.subtract(one).multiply(q.subtract(one));
    System.out.println("phiN="+phiN);
    e=new BigInteger("5");
    System.out.println("e="+e);
    d=e.modInverse(phiN);
    System.out.println("d="+d);
    BigInteger m=new BigInteger("100");
    System.out.println("m="+m);
    BigInteger c=m.modPow(e, n);
    System.out.println("c="+c);
    BigInteger m1=c.modPow(d, n);
    System.out.println("m1="+m1);
    System.out.println(m.equals(m1));

    }

    }

    回覆刪除
  37. n=221

    phi(n)=192

    私鑰指數d=77

    密文c=172

    回覆刪除
  38. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  39. B10132143 陳又婉2013年10月29日 凌晨1:18

    n=221

    phi(n)=192

    私鑰指數d=77

    密文c=172

    回覆刪除
  40. B10132143 陳又婉2013年10月29日 凌晨1:19

    n=221

    phi(n)=192

    私鑰指數d=77

    密文c=172

    回覆刪除
  41. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  42. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  43. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  44. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  45. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  46. n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  47. B10033123 莫凱慈2013年12月18日 下午3:10

    n=221
    phi(n)=192
    私鑰指數d=77
    密文c=172

    回覆刪除
  48. package go;
    import java.math.BigInteger;
    import java.security.SecureRandom;

    public class CAI {

    public static void main(String[] args)throws Exception
    {
    System.out.println("My name is RAMBO!");
    SecureRandom rnd=new SecureRandom();
    BigInteger p,q,n,phiN,e,d;
    int b=512, u=128;
    p=new BigInteger("13");
    System.out.println("p="+p);
    q=new BigInteger("17");
    System.out.println("q="+q);
    n=p.multiply(q);
    System.out.println("n="+n);
    BigInteger one=new BigInteger("1");
    phiN=p.subtract(one).multiply(q.subtract(one));
    System.out.println("phiN="+phiN);
    e=new BigInteger("5");
    System.out.println("e="+e);
    d=e.modInverse(phiN);
    System.out.println("d="+d);
    BigInteger m=new BigInteger("100");
    System.out.println("m="+m);
    BigInteger c=m.modPow(e, n);
    System.out.println("c="+c);
    BigInteger m1=c.modPow(d, n);
    System.out.println("m1="+m1);
    System.out.println(m.equals(m1));

    }

    }

    回覆刪除
  49. B10133046 邱誌寬2013年12月23日 上午9:18

    package go;
    import java.math.BigInteger;
    import java.security.SecureRandom;

    public class CA {

    public static void main(String[] args)throws Exception
    {
    System.out.println("My name is RAMBO!");
    SecureRandom rnd=new SecureRandom();
    BigInteger p,q,n,phiN,e,d;
    int b=512, u=128;
    p=new BigInteger("13");
    System.out.println("p="+p);
    q=new BigInteger("17");
    System.out.println("q="+q);
    n=p.multiply(q);
    System.out.println("n="+n);
    BigInteger one=new BigInteger("1");
    phiN=p.subtract(one).multiply(q.subtract(one));
    System.out.println("phiN="+phiN);
    e=new BigInteger("5");
    System.out.println("e="+e);
    d=e.modInverse(phiN);
    System.out.println("d="+d);
    BigInteger m=new BigInteger("100");
    System.out.println("m="+m);
    BigInteger c=m.modPow(e, n);
    System.out.println("c="+c);
    BigInteger n1=c.modPow(d, n);
    System.out.println("n1="+n1);
    System.out.println(m.equals(n1));

    }

    }

    回覆刪除
  50. B10133045 林玹安2013年12月23日 上午9:19

    package go;
    import java.math.BigInteger;
    import java.security.SecureRandom;

    public class CKI {

    public static void main(String[] args)throws Exception
    {
    System.out.println("My name is RAMBO!");
    SecureRandom rnd=new SecureRandom();
    BigInteger p,q,n,phiN,e,d;
    int b=512, u=128;
    p=new BigInteger("13");
    System.out.println("p="+p);
    q=new BigInteger("17");
    System.out.println("q="+q);
    n=p.multiply(q);
    System.out.println("n="+n);
    BigInteger one=new BigInteger("1");
    phiN=p.subtract(one).multiply(q.subtract(one));
    System.out.println("phiN="+phiN);
    e=new BigInteger("5");
    System.out.println("e="+e);
    d=e.modInverse(phiN);
    System.out.println("d="+d);
    BigInteger m=new BigInteger("100");
    System.out.println("m="+m);
    BigInteger c=m.modPow(e, n);
    System.out.println("c="+c);
    BigInteger K=c.modPow(d, n);
    System.out.println("K="+K);
    System.out.println(m.equals(K));

    }

    }

    回覆刪除
  51. B10133139 林志鴻2013年12月23日 下午2:39



    n=221
    phi(n)=192
    d=77
    c=172

    回覆刪除
  52. n = 221
    phi(n) = 192
    私鑰指數d = 77
    密文c = 172

    回覆刪除

HTML 編輯器