Web3:n ja DApp-sovellusten kehityksen perusteet · Oppitunti

Lohkoketjujen kryptografia

Ymmärrä hajautusfunktiot, julkisen avaimen kryptografia ja digitaaliset allekirjoitukset lohkoketjuteknologian yhteydessä.

Oppitunti 1/311 vaihetta

Lohkoketjujen kryptografia on ilmainen Web3:n ja DApp-sovellusten kehityksen perusteet-oppitunti CoddyKitissä. Tämä on oppitunti 1/3. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Web3:n ja DApp-sovellusten kehityksen perusteet-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Web3:n ja DApp-sovellusten kehityksen perusteet-kurssilla on yhteensä 3 oppituntia.

Krypto: lohkoketjun salainen ainesosa

Tervetuloa lohkoketjujen kryptografian pariin! Kryptografia on lohkoketjuteknologian perusta, joka takaa turvallisuuden, eheyden ja luottamuksen.

Tässä oppitunnissa tutustut hajautusfunktioiden, julkisen avaimen kryptografian ja digitaalisten allekirjoitusten saloihin – ne ovat keskeisiä käsitteitä, jotka mahdollistavat hajautetut järjestelmät.

Hajautus: digitaalinen sormenjälki

Kuvittele, että muutat minkä tahansa määrän tietoa – tekstin, kuvan tai kokonaisen kirjan – yksilölliseksi, vakiokokoiseksi merkkijonoksi. Juuri tämän hajautusfunktio tekee!

Se on kuin tietojesi digitaalinen sormenjälki. Pienikin muutos alkuperäisissä tiedoissa tuottaa täysin erilaisen sormenjäljen.

Kryptografisten tiivisteiden supervoimat

Kryptografisilla hajautusfunktioilla on erityisiä ominaisuuksia, joiden ansiosta ne sopivat täydellisesti lohkoketjuihin:

  • Yksisuuntaisuus: Tiiviste on helppo laskea, mutta alkuperäisiä tietoja on lähes mahdotonta selvittää tiivisteestä.
  • Deterministisyys: Sama syöte tuottaa aina täsmälleen saman tiivisteen.
  • Törmäyksenkestävyys: On erittäin vaikeaa löytää kaksi erilaista syötettä, jotka tuottavat saman tiivisteen.
  • Avalanche-efekti: Pieni muutos syötteessä tuottaa huomattavasti erilaisen tiivisteen.

Hajautuksen esittely: katso, miten se toimii!

Katsotaan avalanche-efektiä yleisen hajautusalgoritmin, SHA-256:n (Secure Hash Algorithm 256-bit), avulla. Huomaa, miten pieni muutos muuttaa tiivisteen täysin.

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));
  }
}

Tiivisteet: lohkojen ja tietojen yhdistäminen

Lohkoketjuissa tiivisteet ovat keskeisiä:

  • Lohkojen yhdistäminen: Jokainen lohko sisältää edellisen lohkon tiivisteen. Näin muodostuu katkeamaton ketju, jonka ansiosta aiempien tapahtumien muuttaminen ilman seuraavien lohkojen mitätöitymistä on lähes mahdotonta.
  • Tietojen eheys: Lohkon tiiviste lasketaan kaikista sen tiedoista (tapahtumista, aikaleimasta ja niin edelleen). Jos yhtäkin tietoa peukaloidaan, lohkon tiiviste muuttuu ja paljastaa muutoksen välittömästi.

Julkisen avaimen krypto: kaksi avainta, yksi lukko

Julkisen avaimen kryptografia (jota kutsutaan myös epäsymmetriseksi kryptografiaksi) käyttää matemaattisesti toisiinsa liittyvää avainparia: julkista avainta ja yksityistä avainta.

Ajattele sitä erityisenä postilaatikkona: kuka tahansa voi panna sinne kirjeen (salata sen julkisella avaimella), mutta vain ainutlaatuisen avaimen haltija voi avata sen (purkaa salauksen yksityisellä avaimella).

Digitaalinen identiteettisi: avaimet

Tämä avainpari on ratkaisevan tärkeä:

  • Yksityinen avain: Tämä on salaisuutesi. Se on kuin salasana ja allekirjoitus samassa paketissa. Älä koskaan jaa sitä! Sitä käytetään viestien salauksen purkamiseen tai digitaalisten allekirjoitusten luomiseen.
  • Julkinen avain: Tämä johdetaan yksityisestä avaimestasi, ja sen voi jakaa avoimesti. Muut käyttävät sitä viestien salaamiseen sinulle tai digitaalisten allekirjoitustesi tarkistamiseen.

Näiden avainten avulla voidaan viestiä turvallisesti jakamatta salaista tietoa suoraan.

Digitaaliset allekirjoitukset: aitouden todistaminen

Digitaalinen allekirjoitus on kryptografinen menetelmä, jolla tarkistetaan digitaalisen viestin tai asiakirjan aitous ja eheys.

Se muistuttaa käsin kirjoitettua allekirjoitusta, mutta on paljon turvallisempi! Se vahvistaa, että viesti on todella allekirjoittajan lähettämä eikä sitä ole muutettu allekirjoittamisen jälkeen.

Digitaalinen allekirjoittaminen ja vahvistaminen

Yleisesti se toimii näin:

  1. Lähettäjä laskee viestin tiivisteen.
  2. Hän salaa tämän tiivisteen yksityisellä avaimellaan ja luo digitaalisen allekirjoituksen.
  3. Vastaanottaja saa viestin ja allekirjoituksen.
  4. Hän laskee vastaanottamansa viestin tiivisteen itse.
  5. Hän purkaa lähettäjän allekirjoituksen salauksen lähettäjän julkisella avaimella saadakseen alkuperäisen tiivisteen.
  6. Jos tiivisteet täsmäävät, allekirjoitus on kelvollinen ja viesti aito eikä sitä ole peukaloitu!

Pikatarkistus: kryptografia

Mikä seuraavista EI ole kryptografisen hajautusfunktion keskeinen ominaisuus?

Kertaus: kryptografian rooli Web3:ssa

Hienoa työtä! Olet oppinut Web3:n perustana olevat kryptografiset perusteet:

  • Hajautusfunktiot: Luovat tiedoille yksilölliset, vakiokokoiset ”sormenjäljet”, varmistavat eheyden ja yhdistävät lohkoja.
  • Julkisen avaimen kryptografia: Käyttää avainpareja (julkinen/yksityinen) turvalliseen viestintään ja identiteetin hallintaan.
  • Digitaaliset allekirjoitukset: Tarjoavat tapahtumille aitouden ja kiistämättömyyden, jotka ovat lohkoketjun turvallisuuden kannalta välttämättömiä.

Nämä käsitteet ovat ratkaisevan tärkeitä, jotta ymmärrät, miten kryptovaluutat ja hajautetut sovellukset pysyvät turvallisina ja luotettavina. Seuraavaksi perehdymme tarkemmin siihen, miten näitä avaimia hallitaan lompakoissa!

Aloita maksutta

Opi Web3:n ja DApp-sovellusten kehityksen perusteet tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
29
Oppitunnit
105

Usein kysytyt kysymykset

Onko oppitunti ”Lohkoketjujen kryptografia” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Web3:n ja DApp-sovellusten kehityksen perusteet-oppimispolun 3 oppituntia, myös oppitunnin “Lohkoketjujen kryptografia”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Web3:n ja DApp-sovellusten kehityksen perusteet-kurssilla on yhteensä 3 oppituntia.

Mitä opin oppitunnilla ”Lohkoketjujen kryptografia”?

Ymmärrä hajautusfunktiot, julkisen avaimen kryptografia ja digitaaliset allekirjoitukset lohkoketjuteknologian yhteydessä. Harjoittelet Web3:n ja DApp-sovellusten kehityksen perusteet-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Web3:n ja DApp-sovellusten kehityksen perusteet-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Web3:n ja DApp-sovellusten kehityksen perusteet-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/3.

Kuinka kauan ”Lohkoketjujen kryptografia”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Web3:n ja DApp-sovellusten kehityksen perusteet-oppitunnilla?

Kyllä. Jokainen Web3:n ja DApp-sovellusten kehityksen perusteet-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Lohkoketjujen kryptografia
  2. Julkiset ja yksityiset avaimet sekä lompakot
  3. Johdatus MetaMaskiin
← Takaisin: Web3:n ja DApp-sovellusten kehityksen perusteet