User Tools

Site Tools


tanszek:oktatas:blockchain_technologia_es_virtualis_fizetoeszkoezoek

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tanszek:oktatas:blockchain_technologia_es_virtualis_fizetoeszkoezoek [2024/11/21 17:02] – [Blokklánc felépítése] kneheztanszek:oktatas:blockchain_technologia_es_virtualis_fizetoeszkoezoek [2024/11/21 17:32] (current) – [Okosszerződések (Smart Contracts)] knehez
Line 82: Line 82:
 === "Jogos" alkalmazások === === "Jogos" alkalmazások ===
  
-   
   * Elektronikus szavazás (e-voting): A blockchain hálózat minden szavazatot hitelesít, és a többségi döntés automatikusan végrehajtásra kerül.   * Elektronikus szavazás (e-voting): A blockchain hálózat minden szavazatot hitelesít, és a többségi döntés automatikusan végrehajtásra kerül.
   * Decentralizált Autonóm Szervezetek (DAO-k): A szavazás biztosítja a közösség által irányított működést, például a források elosztásáról vagy projektek jóváhagyásáról.    * Decentralizált Autonóm Szervezetek (DAO-k): A szavazás biztosítja a közösség által irányított működést, például a források elosztásáról vagy projektek jóváhagyásáról. 
Line 105: Line 104:
   * **1. példa**: Egy biztosítási szerződés, amely automatikusan kártérítést fizet, ha egy előre meghatározott esemény bekövetkezik (pl. egy járat késik).   * **1. példa**: Egy biztosítási szerződés, amely automatikusan kártérítést fizet, ha egy előre meghatározott esemény bekövetkezik (pl. egy járat késik).
  
 +<sxh javascript>
 +pragma solidity ^0.8.0;
 +
 +contract FlightDelayInsurance {
 +    struct Policy {
 +        address insured;  // A biztosított személy címe
 +        uint256 premium;  // A biztosítási díj (premium)
 +        uint256 payout;   // A kártérítési összeg
 +        bool active;      // Aktív-e a biztosítás
 +        bool paidOut;     // Kifizetés megtörtént-e
 +    }
 +
 +    address public owner; // A biztosító címe
 +    mapping(string => Policy) public policies; // Járatszámhoz kötött biztosítási szerződések
 +
 +    event PolicyPurchased(address indexed insured, string flightNumber, uint256 premium, uint256 payout);
 +    event CompensationPaid(address indexed insured, string flightNumber, uint256 amount);
 +
 +    constructor() {
 +        owner = msg.sender; // A szerződést deployoló fél lesz a biztosító
 +    }
 +
 +    modifier onlyOwner() {
 +        require(msg.sender == owner, "Csak a biztosító végezheti ezt a műveletet.");
 +    }
 +
 +    // Biztosítás vásárlása
 +    function purchasePolicy(string memory flightNumber, uint256 payout) public payable {
 +        require(msg.value > 0, "Biztosítási díjat (premium) kell fizetni.");
 +        require(policies[flightNumber].insured == address(0), "Ehhez a járathoz már van biztosítás.");
 +
 +        policies[flightNumber] = Policy({
 +            insured: msg.sender,
 +            premium: msg.value,
 +            payout: payout,
 +            active: true,
 +            paidOut: false
 +        });
 +
 +        emit PolicyPurchased(msg.sender, flightNumber, msg.value, payout);
 +    }
 +
 +    // Kártérítés kifizetése késés esetén (az orákulum adatai alapján)
 +    function payCompensation(string memory flightNumber) public onlyOwner {
 +        Policy storage policy = policies[flightNumber];
 +        require(policy.active, "Ez a biztosítás már nem aktív.");
 +        require(!policy.paidOut, "A kártérítést már kifizették.");
 +
 +        // Kifizetés
 +        policy.paidOut = true;
 +        policy.active = false;
 +
 +        payable(policy.insured).transfer(policy.payout);
 +        emit CompensationPaid(policy.insured, flightNumber, policy.payout);
 +    }
 +
 +    // Szerződés egyenlegének lekérdezése
 +    function getBalance() public view onlyOwner returns (uint256) {
 +        return address(this).balance;
 +    }
 +
 +    // Külső forrásból származó információk frissítése (orákulum szimulációja)
 +    function handleFlightDelay(string memory flightNumber) public onlyOwner {
 +        // Ez a függvény szimulálja a repülési késés adatok fogadását
 +        // és automatikusan meghívja a kártérítést kifizető függvényt
 +        payCompensation(flightNumber);
 +    }
 +}
 +
 +</sxh>
 ===== Virtuális fizetőeszközök előnyei és kihívásai ===== ===== Virtuális fizetőeszközök előnyei és kihívásai =====
   * **Előnyök**:   * **Előnyök**:
tanszek/oktatas/blockchain_technologia_es_virtualis_fizetoeszkoezoek.1732208554.txt.gz · Last modified: 2024/11/21 17:02 by knehez