Kode sederhana dan lengkap. Melalui kode ini, Anda akan memiliki pemahaman awal tentang metode implementasi algoritma enkripsi RSA di Java. Anda dapat menggunakan kelas ini secara langsung. Jika Anda memiliki level tingkat tinggi, ubah dan tingkatkan kode sendiri.
Paket keamanan; impor java.security.*; impor java.security.spec.*; impor java.security.interfaces.*; impor javax.crypto.spec.*; impor javax.crypto. GenerateKey () {coba {keyPairGenerator kpg = keyPairGenerator.getInstance ("rsa"); kpg.initialize (1024); keypair kp = kpg.genkeypair (); publicKey pbkey = kp.getPublic (); privateKey privey privey = kp.getygey pbkey = kp.getpublic (); privateKey privey privey = KP.getygey = (((); FileOutputStream ("pubkey.dat"); ObjectOutputStream b1 = ObjectOutputStream baru (f1); b1.writeObject (pbKey); // simpan file kunci pribadi f2 f2 = FileOutputStream ("privateKey.dat"); ObjectOutputStream B2 = ObyputSputStream baru (f2); {}}public static void encrypt() throws Exception {String s = "Hello World!";// Get the public key and parameters e,nFileInputStream f = new FileInputStream("pubkey.dat");ObjectInputStream b = new ObjectInputStream(f);RSAPublicKey pbk = (RSAPublicKey) b.readObject();BigInteger e = pbk.getPublicexPonent (); biginteger n = pbk.getModulus (); System.out.println ("e =" + e); System.out.println ("n =" + n); // dapatkan plaintext mbyte ptext [] = s.getbytes ("utf-8"); ciphertext cbigInteger c = m.modpow (e, n); System.out.println ("c =" + c); // simpan ciphertext string cs = c.tostring (); bufferedwriter out = bufferedwriter baru (outputStreamWriter baru ("wryeutputstream. cs.length ()); out.close ();} public static void decrypt () melempar Exception {// Baca ciphertext bufferedReader di = BufferedReader baru (new inputStreamReader (coReDreadStream ("encrypt.dat")); string ctext = in.reredline ("encrypt.dat")); Private Key FileInputStream f = new FileInputStream ("privateKey.dat"); ObjectInputStream b = ObjectInputStream baru (f); rsaprivateKey prk = (rsaprivateKey) b.readObject (); Biginteger D = prk.getPrivateExponent (); // Dapatkan Paramer Kunci Privat dan Biginteger D = PRK.GetPrivateExponent (); // Dapatkan Paramer Kunci Pribadi dan Private Paramers dan Private prk.getModulus (); System.out.println ("d =" + d); System.out.println ("n =" + n); biginteger m = c.modpow (d, n); // tunjukkan sistem dekripsi. "); untuk (int i = 0; i <mt.length; i ++) {System.out.print ((char) mt [i]);}} public static void main (string args []) {coba {generateKey (); encrypt (); decrypt ();} catch (Exception e) {System.println (e.toString ();}}}}} {System.println (e.toString ();Artikel di atas tentang metode implementasi sederhana dari algoritma enkripsi Java RSA (harus dibaca) adalah semua konten yang saya bagikan dengan Anda. Saya harap Anda dapat memberi Anda referensi dan saya harap Anda dapat mendukung wulin.com lebih lanjut.