Простой и полный код. Благодаря этому коду у вас будет предварительное понимание методов реализации алгоритма шифрования RSA в Java. Вы можете использовать этот класс напрямую. Если у вас высокие уровни, самостоятельно измените и улучшайте код.
Безопасность пакета; импорт java.security.*; import java.security.spec.*; import java.security.interfaces.*; import javax.crypto.spec.*; import javax.crypto.interfaces.*; import java.io.*; import java.math. void GenerateKey () {try {KeyPairGenerator KPG = KeyPairGenerator.GetInstance ("rsa"); kpg.initialize (1024); KeyPair KP = kpg.genkeypair (); publickey pbkey = kp.getpublic () private prkey = kp.getprivate (); FileOutputStream ("pubkey.dat"); objectOutputStream B1 = new ObjectOutputStream (f1); b1.writeObject (pbkey); // Сохранить закрытый ключ FileOutputStream f2 = new FileOutputStream ("privativeKey.dat"); objectPutStream b2 = new ObjectOutpream (f2); b2.write); {}} public static void incrypt () бросает исключение {string s = "hello world!"; // Получить открытый ключ и параметры E, nfileinputStream f = new FileInputStream ("pubkey.dat"); objectInptream b = new ObjectInptream (f); rsApublickee pbkck e (rsapublickey) b. readerege (f); rsapubly pbkckeckecke); pbk.getPublicexponent (); BigInteger n = pbk.getModulus (); System.out.println ("e =" + e); System.out.println ("n =" + n); // Получить plantext mbyte ptext [] = s.getbytes ("utf-8"); cbiginteger c = m.modpow (e, n); system.out.println ("c =" + c); // Сохранить строку зашифрованного текста cs = c.tostring (); bufferedwriter out = new Bufferedwriter (новый выходной sturshriter (новый файловый cs.length ()); out.close ();} public static void decrypt () Throws Exception {// Читать BufferedRead CipherText in = new BufferedReader (новый inputStreamRead (new FileInputStream ("encrypt.dat")); String ctext = in.readline () fileInpterem ("encrypt.dat")); String ctext = in.readline (); New FileInputStream ("privateKey.dat"); ObjectInputStream b = new ObjectInputStream (f); RsaprivateKey prk = (rsaprivatekey) b. readebject (); BigInteger d = prk.getPrivateExponent (); // Получить параметры закрытого ключа и Decrypt Biginteger n = = prk.getmodulus (); system.out.println ("d =" + d); system.out.println ("n =" + n); biginteger m = c.modpow (d, n); // показывает результаты дешифрования System.out.println ("m =" + m); byte [] mt = m.tobytearray ("m =" + m); "); для (int i = 0; я <mt.length; i ++) {System.out.print ((char) mt [i]);}} public static void main (string args []) {try {GenerateKey (); Encrypt (); Decrypt ();} Catch (Exception e) {System.out.println (e.toString ());}}}}}}}}}}}}}}}}}}}}}}}}}}}Приведенная выше статья о простом методе реализации алгоритма шифрования RSA Java (необходимо прочитать) - это весь контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.