Rumah >Java >javaTutorial >Bagaimana untuk melaksanakan algoritma penyulitan DES menggunakan java
Cara menggunakan Java untuk melaksanakan algoritma penyulitan DES
Ikhtisar:
DES (Standard Penyulitan Data) ialah satu algoritma. Ia digunakan secara meluas dalam penyulitan dan penyahsulitan data dalam bidang komputer. Di Java, kita boleh menggunakan perpustakaan javax.crypto untuk melaksanakan algoritma penyulitan DES.
Langkah:
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto .SecretKey;# 🎜🎜#import javax.crypto.spec.SecretKeySpec;
SecretKey secretKey = keyGenerator.generateKey();#🎜 🎜# byte[] keyBytes = secretKey.getEcoded();
#🎜Enkripsi semula#🎜 Instance# 🎜🎜#Gunakan kelas Cipher untuk mencipta tika penyulitan Kami menggunakan mod algoritma DES/CBC/PKCS5Padding untuk penyulitan. Berikut ialah contoh kod untuk mencipta contoh penyulitan:
Data disulitkan
Gunakan kaedah doFinal sifir untuk menyulitkan data. Berikut ialah contoh kod untuk menyulitkan data:
#🎜🎜[]#byte decryptedBytes = cipher.doFinal(encryptedBytes);
import javax.crypto.SecretKey;
import javax.crypto.spec.IvParameterSpec;import javax.crypto.spec.SecretKeySpec🎜;. .SecureRandom ;
public static void main(String[] args) throws Exception { // 生成密钥 KeyGenerator keyGenerator = KeyGenerator.getInstance("DES"); SecretKey secretKey = keyGenerator.generateKey(); byte[] keyBytes = secretKey.getEncoded(); // 转换密钥 SecretKeySpec secretKeySpec = new SecretKeySpec(keyBytes, "DES"); // 创建加密实例 Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); // 初始化加密实例 byte[] iv = new byte[cipher.getBlockSize()]; SecureRandom secureRandom = new SecureRandom(); secureRandom.nextBytes(iv); cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec, new IvParameterSpec(iv)); // 加密数据 String input = "Hello, world!"; byte[] encryptedBytes = cipher.doFinal(input.getBytes()); // 解密数据 cipher.init(Cipher.DECRYPT_MODE, secretKeySpec, new IvParameterSpec(iv)); byte[] decryptedBytes = cipher.doFinal(encryptedBytes); // 打印结果 System.out.println("明文:" + input); System.out.println("加密后:" + new String(encryptedBytes)); System.out.println("解密后:" + new String(decryptedBytes)); }
Ringkasan:
Melalui langkah-langkah di atas, boleh dilaksanakan melalui Java algoritma penyulitan DES. Dalam pembangunan sebenar, anda boleh membuat pilihan algoritma penyulitan dan mod penyulitan yang munasabah mengikut keperluan anda sendiri, dan membuat pelarasan yang sesuai mengikut senario perniagaan tertentu. Walau bagaimanapun, sila ambil perhatian bahawa algoritma penyulitan DES sudah lapuk dan tidak lagi disyorkan. Pilihan yang lebih selamat ialah algoritma penyulitan AES.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan algoritma penyulitan DES menggunakan java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!