


Cara melaksanakan penyulitan dan penyahsulitan data untuk pembangunan fungsi Java
Cara melakukan penyulitan dan penyahsulitan data untuk pembangunan fungsi Java
Penyulitan dan penyahsulitan data memainkan peranan penting dalam bidang keselamatan maklumat. Dalam pembangunan Java, terdapat banyak cara untuk melaksanakan fungsi penyulitan dan penyahsulitan data. Artikel ini akan memperkenalkan kaedah penyulitan dan penyahsulitan data menggunakan bahasa pengaturcaraan Java dan memberikan contoh kod.
1. Algoritma penyulitan simetri
Algoritma penyulitan simetri menggunakan kunci yang sama untuk menyulitkan dan menyahsulit data. Algoritma penyulitan simetri yang biasa digunakan termasuk DES, 3DES, AES, dsb.
Contoh kod:
import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax.crypto.SecretKey; import javax.crypto.spec.SecretKeySpec; import java.security.SecureRandom; import java.util.Base64; public class SymmetricEncryptionExample { public static void main(String[] args) throws Exception { String plaintext = "Hello, World!"; String secretKey = "0123456789abcdef"; // Generate Key SecretKey key = new SecretKeySpec(secretKey.getBytes(), "AES"); // Create Cipher Cipher cipher = Cipher.getInstance("AES"); // Encrypt cipher.init(Cipher.ENCRYPT_MODE, key); byte[] encryptedBytes = cipher.doFinal(plaintext.getBytes()); String encryptedText = Base64.getEncoder().encodeToString(encryptedBytes); System.out.println("Encrypted Text: " + encryptedText); // Decrypt cipher.init(Cipher.DECRYPT_MODE, key); byte[] decryptedBytes = cipher.doFinal(Base64.getDecoder().decode(encryptedText)); String decryptedText = new String(decryptedBytes); System.out.println("Decrypted Text: " + decryptedText); } }
2. Algoritma penyulitan asimetri
Algoritma penyulitan asimetri menggunakan sepasang kunci, kunci awam digunakan untuk penyulitan dan kunci peribadi digunakan untuk penyahsulitan. Di Java, algoritma penyulitan asimetri yang biasa digunakan ialah RSA.
Contoh kod:
import javax.crypto.Cipher; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.PrivateKey; import java.security.PublicKey; import java.util.Base64; public class AsymmetricEncryptionExample { public static void main(String[] args) throws Exception { String plaintext = "Hello, World!"; // Generate Key Pair KeyPairGenerator keyGenerator = KeyPairGenerator.getInstance("RSA"); keyGenerator.initialize(2048); KeyPair keyPair = keyGenerator.generateKeyPair(); PublicKey publicKey = keyPair.getPublic(); PrivateKey privateKey = keyPair.getPrivate(); // Create Cipher Cipher cipher = Cipher.getInstance("RSA"); // Encrypt cipher.init(Cipher.ENCRYPT_MODE, publicKey); byte[] encryptedBytes = cipher.doFinal(plaintext.getBytes()); String encryptedText = Base64.getEncoder().encodeToString(encryptedBytes); System.out.println("Encrypted Text: " + encryptedText); // Decrypt cipher.init(Cipher.DECRYPT_MODE, privateKey); byte[] decryptedBytes = cipher.doFinal(Base64.getDecoder().decode(encryptedText)); String decryptedText = new String(decryptedBytes); System.out.println("Decrypted Text: " + decryptedText); } }
3 Algoritma cincang
Algoritma cincang boleh menukar data apa-apa panjang kepada nilai cincang panjang tetap yang biasa digunakan termasuk MD5, SHA-1, SHA-256, dsb.
Sampel kod:
import java.security.MessageDigest; public class HashAlgorithmExample { public static void main(String[] args) throws Exception { String plaintext = "Hello, World!"; // Create MessageDigest MessageDigest md = MessageDigest.getInstance("SHA-256"); // Hash byte[] hashedBytes = md.digest(plaintext.getBytes()); StringBuilder stringBuilder = new StringBuilder(); for (byte hashedByte : hashedBytes) { stringBuilder.append(Integer.toHexString(0xFF & hashedByte)); } String hashedText = stringBuilder.toString(); System.out.println("Hashed Text: " + hashedText); } }
Ringkasan:
Artikel ini memperkenalkan kaedah dan contoh kod menggunakan Java untuk membangunkan dan melaksanakan penyulitan dan penyahsulitan data. Dalam pembangunan sebenar, algoritma penyulitan yang sesuai dan panjang kunci dipilih mengikut keperluan yang berbeza untuk memastikan keselamatan data.
Atas ialah kandungan terperinci Cara melaksanakan penyulitan dan penyahsulitan data untuk pembangunan fungsi Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas





ChatGPTJava: Bagaimana untuk melaksanakan ringkasan automatik dan pengekstrakan maklumat utama daripada artikel, contoh kod khusus diperlukan Ringkasan dan pengekstrakan maklumat utama adalah tugas yang sangat penting dalam mendapatkan maklumat dan pemprosesan teks. Untuk melaksanakan ringkasan automatik dan mengekstrak maklumat utama artikel dalam Java, anda boleh menggunakan pustaka pemprosesan bahasa semula jadi (NLP) dan algoritma yang berkaitan. Artikel ini akan memperkenalkan cara menggunakan Lucene dan StanfordCoreNLP untuk melaksanakan fungsi ini, dan memberikan contoh kod khusus. 1. Ringkasan automatik Ringkasan automatik diekstrak daripada teks

Storan penyulitan data termasuk penyulitan simetri, penyulitan asimetri, algoritma cincang, tandatangan digital dan kaedah lain. Pengenalan terperinci: 1. Penyulitan simetri Semasa proses penyulitan, data dan kunci asal dikira oleh algoritma penyulitan untuk menjana teks sifir yang disulitkan dinyahsulit dengan kunci persendirian dan sebaliknya 3. Algoritma hash, yang boleh mengesahkan integriti dan konsistensi data semasa penghantaran dan penyimpanan data 4. Tandatangan digital, dsb.

PHP adalah bahasa pengaturcaraan yang sangat popular yang digunakan secara meluas dalam bidang pembangunan web. Swoole ialah sambungan bahasa PHP berprestasi tinggi yang boleh menyediakan ciri seperti IO tak segerak dan coroutine, yang sangat meningkatkan keupayaan serentak PHP. Dalam sesetengah senario, kita perlu menyulitkan dan menyahsulit data, jadi bagaimana untuk menggunakan PHP dan swoole untuk mencapai penyulitan dan penyahsulitan data yang cekap? Mula-mula, mari kita perkenalkan pilihan algoritma penyulitan. Dalam aplikasi praktikal, algoritma penyulitan yang biasa digunakan termasuk algoritma penyulitan simetri dan algoritma penyulitan asimetri.

Untuk meneroka pelbagai kaedah pelaksanaan pemasa Java, contoh kod khusus diperlukan Dalam pembangunan perisian moden, pemasa adalah fungsi yang sangat biasa dan penting. Ia boleh melaksanakan tugas pada selang masa tertentu atau masa tertentu, dan sering digunakan dalam senario seperti pengesanan degupan jantung, penjadualan tugas berjadual dan muat semula data. Dalam pembangunan Java, terdapat banyak cara untuk melaksanakan pemasa Artikel ini akan meneroka beberapa cara biasa dan memberikan contoh kod yang sepadan. Gunakan kelas java.util.Timer yang disertakan dengan Java

Kaedah panggilan yang biasa digunakan dalam refleksi Java memerlukan contoh kod khusus Pengenalan: Refleksi Java ialah ciri bahasa Java yang berkuasa, yang membolehkan kami memperoleh maklumat kelas secara dinamik dan mengendalikan atribut kelas, kaedah, pembina, dsb. semasa runtime . Di Jawa, dengan menggunakan refleksi, kita boleh mencapai banyak fungsi, seperti mencipta objek secara dinamik, kaedah memanggil dan mengubah suai sifat peribadi. Artikel ini akan memperkenalkan kaedah panggilan yang biasa digunakan dalam refleksi dalam Java dan memberikan contoh kod khusus. Dapatkan objek Kelas sebelum menggunakan refleksi

Bagaimana untuk menggunakan teknik pemfaktoran semula dalam Java untuk meningkatkan kualiti dan reka bentuk kod sedia ada? Pengenalan: Dalam pembangunan perisian, kualiti dan reka bentuk kod secara langsung mempengaruhi kebolehselenggaraan dan kebolehskalaan perisian. Teknologi pemfaktoran semula ialah cara yang berkesan untuk membantu meningkatkan kualiti dan reka bentuk kod. Artikel ini akan memperkenalkan cara menggunakan teknologi pemfaktoran semula dalam Java untuk meningkatkan kualiti dan reka bentuk kod sedia ada, dan menunjukkan aplikasi teknologi pemfaktoran semula melalui contoh kod. 1. Memahami konsep pemfaktoran semula merujuk kepada mengubah suai struktur dalaman kod tanpa mengubah tingkah laku luaran kod.

Masalah biasa dan strategi penyelesaian untuk keselamatan rangkaian dalam Python Keselamatan rangkaian adalah salah satu isu penting yang tidak boleh diabaikan dalam era maklumat hari ini. Dengan populariti dan aplikasi meluas bahasa Python, keselamatan rangkaian juga telah menjadi cabaran yang perlu dihadapi dan diselesaikan oleh pembangun Python. Artikel ini akan memperkenalkan isu keselamatan rangkaian biasa dalam Python dan menyediakan strategi penyelesaian yang sepadan serta contoh kod. 1. Isu keselamatan rangkaian Serangan suntikan SQL Serangan suntikan SQL bermakna penyerang memasukkan kod SQL berniat jahat ke dalam parameter yang dimasukkan oleh pengguna, dengan itu

Cara melaksanakan penyulitan dan penyahsulitan data dalam pembangunan fungsi Java Penyulitan dan penyahsulitan data memainkan peranan penting dalam bidang keselamatan maklumat. Dalam pembangunan Java, terdapat banyak cara untuk melaksanakan fungsi penyulitan dan penyahsulitan data. Artikel ini akan memperkenalkan kaedah penyulitan dan penyahsulitan data menggunakan bahasa pengaturcaraan Java dan memberikan contoh kod. 1. Algoritma penyulitan simetri Algoritma penyulitan simetri menggunakan kunci yang sama untuk menyulitkan dan menyahsulit data. Algoritma penyulitan simetri yang biasa digunakan termasuk DES, 3DES, AES, dsb. Contoh kod: importja
