Rumah  >  Artikel  >  Java  >  Bagaimana untuk Menjana SHA-256 Hashes daripada Strings di Java?

Bagaimana untuk Menjana SHA-256 Hashes daripada Strings di Java?

Linda Hamilton
Linda Hamiltonasal
2024-10-28 06:24:01561semak imbas

How to Generate SHA-256 Hashes from Strings in Java?

Java: Pencincangan Rentetan dengan SHA-256

Pencincangan rentetan menggunakan SHA-256 biasanya digunakan untuk memastikan integriti data, menyediakan storan kata laluan yang selamat atau menjana pengecam unik. Di Java, operasi ini boleh dilakukan dengan pantas dan mudah.

Langkah 1: Fahami Algoritma SHA-256

SHA-256 (Secure Hash Algorithm 256) ialah fungsi cincang kriptografi sehala yang menghasilkan nilai cincang bersaiz tetap daripada rentetan input. Nilai cincang ini unik dan tidak boleh diterbalikkan untuk mendapatkan rentetan asal.

Langkah 2: Pilih Pengekodan

SHA-256 berfungsi dengan tatasusunan bait, jadi sebelum mencincang rentetan, anda perlu menukarnya kepada tatasusunan bait. Gunakan pengekodan seperti UTF-8, yang kebanyakan bahasa pengaturcaraan menyokong secara lalai.

Langkah 3: Buat Instance MessageDigest

Gunakan kelas MessageDigest untuk mencipta instance algoritma SHA-256 .

<code class="java">MessageDigest digest = MessageDigest.getInstance("SHA-256");</code>

Langkah 4: Cincang Rentetan

Mencerna atau mencincang rentetan melibatkan menghantar tatasusunan bait ke dalam contoh ringkasan. Hasil daripada operasi ini ialah nilai cincang SHA-256 dalam bentuk tatasusunan bait.

<code class="java">byte[] hash = digest.digest(text.getBytes(StandardCharsets.UTF_8));</code>

Tatasusunan Bait kepada Penukaran Rentetan

Memandangkan nilai cincang ialah tatasusunan bait, anda mungkin perlu menukarnya kepada format yang lebih mudah dibaca untuk paparan atau storan. Pilihan biasa termasuk asas64 atau perenambelasan.

Kod Contoh

<code class="java">import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;

public class SHA256Hashing {

    public static byte[] hashSHA256(String text) {
        try {
            MessageDigest digest = MessageDigest.getInstance("SHA-256");
            return digest.digest(text.getBytes(StandardCharsets.UTF_8));
        } catch (NoSuchAlgorithmException e) {
            throw new RuntimeException(e);
        }
    }
}</code>

Menggunakan kaedah hashSHA256 di atas, anda kini boleh mencincang nilai Rentetan dengan mudah dan selamat.

Atas ialah kandungan terperinci Bagaimana untuk Menjana SHA-256 Hashes daripada Strings di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn