Asas Pembangunan Web3 & DApp · Pelajaran

Kriptografi untuk Rantaian Blok

Fahami fungsi cincangan, kriptografi kunci awam dan tandatangan digital dalam teknologi rantaian blok.

Pelajaran 1 daripada 311 langkah

Kriptografi untuk Rantaian Blok ialah pelajaran Asas Pembangunan Web3 & DApp percuma di CoddyKit. Ini ialah pelajaran 1 daripada 3. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Asas Pembangunan Web3 & DApp, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Asas Pembangunan Web3 & DApp merangkumi sejumlah 3 pelajaran.

Kripto: Bahan Rahsia Rantaian Blok

Selamat datang ke Kriptografi untuk Rantaian Blok! Kriptografi ialah tulang belakang teknologi rantaian blok yang memastikan keselamatan, integriti dan kepercayaan.

Dalam pelajaran ini, kita akan membongkar rahsia fungsi cincangan, kriptografi kunci awam dan tandatangan digital — konsep penting yang memungkinkan sistem terdesentralisasi.

Pencincangan: Cap Jari Digital

Bayangkan anda mengambil apa-apa jumlah data — teks, imej atau keseluruhan buku — lalu menukarkannya menjadi rentetan aksara yang unik dan bersaiz tetap. Itulah fungsi cincangan!

Ia seperti cap jari digital untuk data anda. Perubahan yang sekecil mana pun pada data asal akan menghasilkan cap jari yang sama sekali berbeza.

Kuasa Istimewa Cincangan Kriptografi

Fungsi cincangan kriptografi mempunyai sifat istimewa yang menjadikannya sesuai untuk rantaian blok:

  • Satu hala: Cincangan mudah dikira, tetapi hampir mustahil untuk mendapatkan semula data asal daripada cincangan.
  • Deterministik: Input yang sama akan sentiasa menghasilkan cincangan output yang sama tepat.
  • Tahan perlanggaran: Amat sukar untuk mencari dua input berbeza yang menghasilkan output cincangan yang sama.
  • Kesan runtuhan: Perubahan kecil pada input menghasilkan output cincangan yang sangat berbeza.

Demonstrasi Pencincangan: Lihat Caranya!

Mari kita lihat kesan runtuhan menggunakan algoritma pencincangan biasa, SHA-256 (Algoritma Cincangan Selamat 256 bit). Perhatikan bagaimana perubahan kecil mengubah cincangan sepenuhnya.

import java.security.MessageDigest;
import java.nio.charset.StandardCharsets;
import java.util.Base64;

public class Main {
  public static String applySha256(String input) {
    try {
      MessageDigest digest = MessageDigest.getInstance("SHA-256");
      byte[] hash = digest.digest(input.getBytes(StandardCharsets.UTF_8));
      StringBuilder hexString = new StringBuilder();
      for (byte b : hash) {
        String hex = Integer.toHexString(0xff & b);
        if (hex.length() == 1) hexString.append('0');
        hexString.append(hex);
      }
      return hexString.toString();
    } catch (Exception e) {
      throw new RuntimeException(e);
    }
  }

  public static void main(String[] args) {
    String data1 = "Hello CoddyKit!";
    String data2 = "hello CoddyKit!"; // Note: 'h' vs 'H'

    System.out.println("Data 1 Hash: " + applySha256(data1));
    System.out.println("Data 2 Hash: " + applySha256(data2));
  }
}

Cincangan: Memautkan Blok dan Data

Dalam rantaian blok, cincangan amat penting:

  • Pautan Blok: Setiap blok mengandungi cincangan blok sebelumnya. Ini menghasilkan rantaian yang kukuh, menjadikan pengubahan transaksi lama hampir mustahil tanpa membatalkan blok-blok seterusnya.
  • Integriti Data: Cincangan blok dikira daripada semua datanya (transaksi, cap masa dan sebagainya). Jika satu bahagian data pun diubah, cincangan blok akan berubah dan pengubahan itu akan didedahkan serta-merta.

Kripto Kunci Awam: Dua Kunci, Satu Kunci

Kriptografi kunci awam (juga dipanggil kriptografi tidak simetri) menggunakan sepasang kunci yang dipautkan secara matematik: kunci awam dan kunci peribadi.

Anggaplah ia seperti peti surat khas: sesiapa sahaja boleh memasukkan surat (menyulitkan dengan kunci awam), tetapi hanya orang yang memiliki kunci unik boleh membukanya (menyahsulit dengan kunci peribadi).

Identiti Digital Anda: Kunci

Pasangan kunci ini amat penting:

  • Kunci Peribadi: Ini ialah rahsia anda. Ia seperti kata laluan dan tandatangan yang digabungkan. Anda tidak boleh berkongsinya! Kunci ini digunakan untuk menyahsulit mesej atau mencipta tandatangan digital.
  • Kunci Awam: Kunci ini terhasil daripada kunci peribadi anda dan boleh dikongsi secara terbuka. Orang lain menggunakannya untuk menyulitkan mesej kepada anda atau mengesahkan tandatangan digital anda.

Kunci ini membolehkan komunikasi yang selamat tanpa perlu berkongsi rahsia secara langsung.

Tandatangan Digital: Membuktikan Ketulenan

Tandatangan digital ialah teknik kriptografi yang digunakan untuk mengesahkan ketulenan dan integriti mesej atau dokumen digital.

Ia seperti tandatangan tulisan tangan, tetapi jauh lebih selamat! Tandatangan ini mengesahkan bahawa mesej benar-benar datang daripada penandatangan dan tidak diubah sejak ditandatangani.

Menandatangani dan Mengesahkan Secara Digital

Beginilah cara proses ini biasanya berfungsi:

  1. Penghantar mencincang mesej.
  2. Penghantar menyulitkan cincangan itu dengan kunci peribadi untuk mencipta tandatangan digital.
  3. Penerima menerima mesej dan tandatangan tersebut.
  4. Penerima mencincang sendiri mesej yang diterima.
  5. Penerima menyahsulit tandatangan penghantar menggunakan kunci awam penghantar untuk mendapatkan cincangan asal.
  6. Jika kedua-dua cincangan sepadan, tandatangan itu sah dan mesej tersebut tulen serta tidak diubah!

Semakan Pantas: Kriptografi

Antara berikut, yang manakah BUKAN sifat teras fungsi cincangan kriptografi?

Imbas Kembali: Peranan Kripto dalam Web3

Tahniah! Anda telah mempelajari asas kriptografi yang menggerakkan Web3:

  • Fungsi Cincangan: Mencipta “cap jari” data yang unik dan bersaiz tetap, memastikan integriti serta memautkan blok.
  • Kriptografi Kunci Awam: Menggunakan pasangan kunci (awam/peribadi) untuk komunikasi dan identiti yang selamat.
  • Tandatangan Digital: Memberikan ketulenan dan perlindungan daripada penafian bagi transaksi, yang penting untuk keselamatan rantaian blok.

Konsep ini penting untuk memahami cara mata wang kripto dan aplikasi terdesentralisasi kekal selamat serta boleh dipercayai. Seterusnya, kita akan mendalami cara kunci ini diurus dalam dompet!

Percuma untuk bermula

Pelajari Asas Pembangunan Web3 & DApp dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
29
Pelajaran
105

Soalan Lazim

Adakah pelajaran “Kriptografi untuk Rantaian Blok” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Asas Pembangunan Web3 & DApp, termasuk “Kriptografi untuk Rantaian Blok”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Asas Pembangunan Web3 & DApp merangkumi sejumlah 3 pelajaran.

Apakah yang akan saya pelajari dalam “Kriptografi untuk Rantaian Blok”?

Fahami fungsi cincangan, kriptografi kunci awam dan tandatangan digital dalam teknologi rantaian blok. Anda berlatih Asas Pembangunan Web3 & DApp menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Asas Pembangunan Web3 & DApp?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Asas Pembangunan Web3 & DApp di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 3.

Berapa lamakah pelajaran “Kriptografi untuk Rantaian Blok” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Asas Pembangunan Web3 & DApp ini?

Ya. Setiap pelajaran Asas Pembangunan Web3 & DApp menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Kriptografi untuk Rantaian Blok
  2. Kunci Awam/Peribadi dan Dompet
  3. Pengenalan kepada MetaMask
← Kembali ke Asas Pembangunan Web3 & DApp