paint-brush
Near-Zero: Używanie Rootstock do zbudowania stablecoina, którego chciał Satoshiprzez@walo
931 odczyty
931 odczyty

Near-Zero: Używanie Rootstock do zbudowania stablecoina, którego chciał Satoshi

przez walo, the underscore.22m2024/11/29
Read on Terminal Reader

Za długo; Czytać

Implikacje stabilnej, zdecentralizowanej, niefiat-pegged kryptowaluty dla globalnego handlu i lokalnych rządów. Podczas gdy Sat nigdy nie siedział, aby otwarcie omówić stablecoiny, co oznacza zbudowanie jednego na blockchainie BTC przez Rootstock dla web3?
featured image - Near-Zero: Używanie Rootstock do zbudowania stablecoina, którego chciał Satoshi
walo, the underscore. HackerNoon profile picture
0-item
1-item

Jest rok 1305, a ty żyjesz w niezwykłym i pięknym mieście na wybrzeżu Afryki Zachodniej; na długo zanim tony cudzoziemców i oleistych odpadów zaczęły dryfować na brzeg. W twoje ręce wpada wielki worek muszli porcelanowych twojego starego mistrza, pod którego okiem trenowałeś przez lata — dar — ułatwiający podróż, by stanąć na własnych nogach.


„To tylko puste skorupy”, mówi do ciebie w twoim śpiewnym ojczystym języku. „Ale to ty decydujesz, jaki ciężar każdy z nich niesie, my wszyscy”. Ach, marzycielsko.


Niestety, mamy rok 2024. A każdy rząd twierdzi, że wszystkie pieniądze należą do niego — to największy błąd w naszej historii.


Jeśli trafiłeś na złoto podczas kopania w swojej posiadłości, kto jest jego właścicielem? A co powiesz na las?


Widzisz, Satoshi miał dość tej kontroli, której żądają rządy i widział gospodarkę cyfrową jako ciężar, który ją zrównoważy. „Wspierają” swoje waluty fiducjarne głównie dlatego, że tworzą i egzekwują zasady. To ich świat i powinniśmy uważać się za szczęściarzy, że w nim jesteśmy, uważają.


Znasz zasady!

Ale przez śmiałą próbę, znaną dziś jako Bitcoin , nasz świat wymyka się im z rąk.


Oszukiwanie systemu na skalę globalną

Jak przewidywał Satoshi, zmienność jest/była nieunikniona w miarę wzrostu adopcji. BTC został stworzony, aby służyć jako alternatywny magazyn wartości poza scentralizowaną regulacją, ale pozostanie niestabilny, dopóki nie zostanie osiągnięta globalna adopcja.


To nie jest pierwsza rozmowa o globalnej walucie. Los pieniądza zmienił się na zawsze na konferencji w Bretton Woods w 1944 r., która zastąpiła GBP USD jako naszą rezerwę pieniężną. (GBP po cichu zastąpił lokalny, przekształcony w globalny standard złota Isaaca Newtona poprzez wpływy kolonialne)


Była to globalna decyzja podjęta przez przedstawicieli 44 (spośród 195) krajów na tej konferencji, która odbyła się w USA. Jak do tego doszło?


John Maynard Keynes (angielski ekonomista akademicki) od lat naciskał na globalną walutę. Jego głos stał się w końcu istotny podczas II wojny światowej, gdy Europa zdała sobie sprawę z trudności globalnego handlu z [byłymi] koloniami i innymi krajami w zakresie podstawowych dóbr i broni.


Ponieważ Ameryka odegrała kluczową rolę w wojnie i zyskała globalny wpływ, Harry Dexter White (amerykański ekonomista rządowy) naciskał na standard dolara z Keynesem. I cała sala się zgodziła, wierząc, że dolar pozostanie powiązany ze złotem.


Śledzenie sekwencji zdarzeń, które doprowadziły nas do tego punktu, nie jest celem tego tekstu, ale był to ostatni wątek w naszym uwikłaniu. A w 1971 r. prezydent USA Richard Nixon zmiażdżył system z Bretton Woods, anulując powiązanie dolara amerykańskiego ze złotem na poziomie 35 dolarów za uncję.


„Szok Nixona” wyrwał cały świat z dywanu. Brzmi znajomo?


O nie, zdrada. 🙄

Czy świat potrzebuje kolejnego stablecoina?

W zamyśle Satoshiego, tymczasowa zmienność była ceną za długoterminową stabilność i zaufanie.


Platforma Web3 powstała poprzez połączenie dwóch technologii: blockchain i kryptowaluty. Każda z nich wspomaga drugą, zapewniając bezpieczeństwo i decentralizację, do których twórcy dążą do dziś.


Wyjaśniając, jak działają oba rozwiązania, Satoshi udostępnił je jako oprogramowanie typu open source, oczekując, że inni rozwiną tę technologię dalej, niż zakładał pierwotny projekt, bazując na jego złożonych rozwiązaniach.


Największą barierą wejścia dla Bitcoina niekoniecznie jest świadomość lub technologia. To pewność, że wartość, którą przechowuję jako krypto, nie jest kotem Schrödingera. Fiat zapewnił mniejszą zmienność w tym sensie, ale żadnej bliskiej zera bez negatywnych konsekwencji.


I chociaż istnieją „stabilne” monety powiązane z walutami fiducjarnymi, one również idą w dół. Stare pieniądze nie opierały się na abstrakcjach ani na wątłym zaufaniu do rządu. Gdybyśmy nie byli pewni, że jutro zaświeci słońce, nie moglibyśmy żyć.


Przy starannym wykonaniu możliwe jest stworzenie stabilnej, zdecentralizowanej kryptowaluty niezależnej od walut fiducjarnych.


A jeśli jego podstawową funkcją jest niemal zerowa zmienność, co by się stało ze światem, gdybyśmy zbudowali go na blockchainie Bitcoina, tutaj?


Zapnijcie pasy, zmieniamy biegi.

Wszystko dla rodziny.

Wymagania budowlane

  1. Definiowanie naszego stablecoina
  2. Wybór naszego Blockchaina
  3. Inżynieria naszego inteligentnego kontraktu
  4. Projektowanie dla równowagi
  5. Wdrażanie i testowanie


Definiowanie naszego Stablecoina

Metryka

  • Kołek: Do czego jest przypięty?
  • Jakość aktywów: Jakie są nasze aktywa rezerwowe?
  • Płynność aktywów: Jak płynne są te rezerwy?
  • Warunki systemowe: Jakie warunki sprawiają, że to działa?
  • Zaufanie do rynku: dlaczego ludzie powinni mu ufać?


Kołek: Towar

Zasoby są najcenniejszymi rzeczami na tej planecie. Pieniądze istnieją, aby handlować zasobami — kraj bogaty w zasoby może tworzyć nieskończone możliwości dzięki swoim naturalnym darom.


A gdy zasoby są ograniczone, twoje pieniądze są bezwartościowe. Puste skorupy, tak jak obiecał twój pan. Pieniądze są jedynie reprezentacją inherentnej i ograniczonej czasowo wartości zasobów. Przywiązywanie pieniędzy do samych pieniędzy jest najgłupszą rzeczą, jaką kiedykolwiek słyszałem, ale do tego wrócimy.


Kraje infiltrują inne kraje, aby przejąć lub wyłudzić ich zasoby: pracę, złoto, ropę naftową, diamenty, przyjemności — wymień wszystko. Nic wartościowego nie jest poza zasięgiem ludzi uzależnionych od władzy, tylko silni mogą chronić swoje skarby.


Ponieważ jest oczywiste, że prawdziwa wartość leży w zasobach, nie ośmielamy się powiązać naszego stablecoina o bliskiej zeru zmienności z dolarem amerykańskim.


Ta moneta musi mieć pokrycie w towarze.


Sprawdź to.

Jakość aktywów: łatwa weryfikacja

Standard złota został zainicjowany przez Isaaca Newtona jako Mistrza Mennicy. Jego zadaniem było utrzymanie monet w obiegu o określonej wadze i jakości.


Standaryzując złote monety — suwerenny towar Wielkiej Brytanii, Newton wprowadził modułowy system do brytyjskiej gospodarki ze względu na naturę złota. Jest wszędzie, podzielne i akceptowalne, nawet jeśli nie jest bite.


Standardową brytyjską monetą złotą była gwinea: każda zawierała (w dzisiejszych jednostkach) 8,3 grama 22-karatowego złota, co odpowiadało 1,05 funta szterlinga.


Ten brytyjski funt był abstrakcyjny, po prostu reprezentował i kwantyfikował wszystkie różne jakości złota, którymi handlowali. Pomyśl o tym jak o jednostce. Jednostki pomagają nam przeliczać właściwości, podkreślając ich relacje.


Jeśli więc wprowadzono nowe złoto do obiegu, zespół Newtona je standaryzował. To samo zrobili z zagranicznymi i starymi złotymi monetami w obiegu, aby Brytyjczycy mogli zaufać pieniądzom — bez konieczności ufania sobie nawzajem lub rządowi.


GBP ujednolicił transakcje w czasie rzeczywistym, podczas gdy Newton pracował nad ujednoliceniem monet w obiegu, aby ułatwić handel. Monety w obiegu stały się tej samej wagi, czystości i projektu, zmniejszając potrzebę weryfikacji.


Najwyższą jakością aktywów w przypadku każdego standardu pieniężnego opartego na towarach jest taka, którą można łatwo zweryfikować.


Wartość naszego towaru musi być łatwo weryfikowalna, z wyraźnym potencjałem przyszłej wymiany. Niskie ryzyko.


Płynność aktywów: lekka i niezbędna

Dwa kluczowe czynniki, które tworzą stablecoina to płynność i zabezpieczenie. Jeśli wszystko, co istnieje, jest energią w ruchu, to:


Płynność to energia kinetyczna : miara wartości dostępnej w handlu natychmiastowym.

Zabezpieczeniem jest energia potencjalna : miara wartości dostępna na potrzeby przyszłego handlu.


Właśnie omawialiśmy zabezpieczenie. Ale kiedy dajesz komuś pieniądze jako zapłatę, otrzymujesz zasoby — rzeczywistą wartość, a oni trzymają tylko pieniądze. To ryzyko, ponieważ zawsze istnieje potencjał utraty wartości przez trzymanie pieniędzy.


Jeśli trzymałeś 1 dolara przez 25 lat, najprawdopodobniej nie dostaniesz za niego tego samego, co wcześniej.


Ze względu na ryzyko utraty wartości w wyniku oszczędzania pieniędzy, waluty są zabezpieczone namacalnym zabezpieczeniem (zasobami), aby dać użytkownikom pewność, że Schrödinger ich nie ustawił. *kaszel w Nixon*


Ta giełda ustala wartość zabezpieczenia na podstawie wartości A waluty. Ale jeśli „miara wartości dostępna do natychmiastowego handlu”, czyli płynność, spadnie, spadnie również wartość monety.


Jeśli jednak płynność pozostanie na wysokim poziomie, ludzie będą zbyt zajęci wymianą zasobów, aby martwić się ryzykiem, choć ono zawsze istnieje.


Płynność to łatwość wypłacenia pieniędzy z systemu, gdy ich potrzebujesz.


Zakładając, że istnieją wystarczające zasoby stanowiące zabezpieczenie dla naszych abstrakcyjnych pieniędzy (zwykle ich nie ma), ta łatwość zależy od tego, jak bardzo rynek jest skłonny wymienić się z Tobą na te zasoby.


Zasadniczo każda jednostka waluty, którą posiadasz, reprezentuje zasoby fizyczne.


Nasz stablecoin musi być lekki i niezbędny: musi opierać się na surowcach, bez których ludzie nie mogą się obejść, i musi być łatwy w zarządzaniu.


Warunki systemowe

Po kilku spadkach i dewaluacjach różnych kryptowalut, kolejny etap web3 jest już całkiem jasny.


Chcemy, aby nasza moneta wypełniła tę próżnię. Aby była stabilną, zdecentralizowaną, nie powiązaną z walutą fiducjarną kryptowalutą, przyjrzeliśmy się naszym przeszłym finansowym porażkom i sukcesom.


Wiemy, że musi być powiązany z towarem, który jest niezbędny, lekki i łatwy do zweryfikowania. Czy masz jakieś pomysły?


Na potrzeby tego tekstu przytoczę dziwaczny przykład, żeby lepiej się trzymał. Głowice nuklearne będą naszym towarem . Haha, zostań ze mną.


Rekord z początku tego roku to około 12 121 istniejących jednostek. Nigdy nie podają nam prawdziwej liczby. Nasz inteligentny kontrakt będzie oparty na warunku, że liczba rozmieszczonych głowic będzie zawsze równa 0.


Nie chcemy, żeby były używane gdziekolwiek ponownie. Niezbędne .


Chociaż jest to okazja do zademonstrowania technologii blockchain w celu utrzymania „pokoju na świecie”, prawdopodobieństwo, że wszystkie rządy zgodzą się na dzielenie się danymi w czasie rzeczywistym, jest niewielkie. Chcą mieć przewagę zaskoczenia. Nie światła .


Czy powinniśmy założyć, że nasz kod jest lekki i że dane zostały opublikowane na blockchainie?


W takim przypadku uwzględnilibyśmy wyrocznię w naszym inteligentnym kontrakcie, ponieważ jest to scenariusz ze świata rzeczywistego, który dotyczy nas bezpośrednio.


Zaufanie rynku

Zaufanie rynku do tej monety byłoby niskie, ponieważ udział rządu jest mało prawdopodobny, więc nie możemy przetestować blockchaina. A gdyby dane były dostępne, czy naprawdę chciałbyś wiedzieć, czy zmierzają w twoją stronę?


„Przepraszam, chłopaki, ale właśnie zmierza w waszą stronę.”

Spróbujmy więc jeszcze raz.


Tym razem skupimy się na uruchomieniu naszego inteligentnego kontraktu w momencie próby wystrzelenia broni nuklearnej, a nie w obliczu nieuchronnej zagłady.


Łącząc obrazowanie satelitarne i pracę organizacji, które śledzą broń jądrową i publikują swoje dane, możemy tworzyć kompleksowe dane do pracy. Przekształcimy te dane w jedną lub dwie proste, przydatne metryki, aby zasilić nasz blockchain, osiągając publiczną dostępność bez narażania bezpieczeństwa.


Najpierw pójdziemy o krok dalej i połączymy dane satelitarne i dane ze źródeł otwartych z wydarzeniami ze świata rzeczywistego, wykorzystując w tym celu sztuczną inteligencję. W ten sposób stworzymy nasz pierwszy wskaźnik: Indeks Strachu.


Byłoby to częścią inteligentnego kontraktu, ale nie miałoby to znaczenia w obliczaniu głównego warunku — próby wystrzelenia broni jądrowej. Służyłoby to jako kontrola pulsu dla liderów, ale co ważniejsze, dałoby ludziom coś do gryzienia.


Jest to ważne, aby zapobiec zmienności monety z powodu paniki. Zamiast mówić nam, żebyśmy się uspokoili, skwantyfikujemy nasze obawy.

„Teraz jesteśmy tak przestraszeni, chłopaki.”


Strach jest zaraźliwy, więc poddamy go kwarantannie. Ale sam ten wskaźnik nie wystarczy.


Obok niego będzie Calm Index, metryka oparta wyłącznie na obrazach satelitarnych i danych terenowych, aby powiedzieć, że nie odnotowaliśmy żadnych prób przy użyciu naszych najlepszych źródeł. W idealnym przypadku Calm Index pozostanie stagnacyjny, jeśli nie będzie prób aktywacji lub uruchomienia, utrzymując monetę stabilną, gdy znacznie gorsze rzeczy przytrafią się fiat podczas wojen.


Wartość naszej monety pozostanie stała w stosunku do liczby pozostałych głowic w stosunku do liczby wystrzelonych głowic. Nie prób.


Oznacza to, że musielibyśmy wystrzelić je wszystkie, aby moneta stała się niestabilna.

Rewelacyjny.


Teraz przyjrzyjmy się naszemu blockchainowi.


Wybór naszego Blockchaina

Kiedy zaczynałem nad tym pracować, zapytałem wszystkich moich przyjaciół nerdów web3, czy mogliby zbudować stablecoina na blockchainie BTC, zakładając, że mają niezawodny peg. Konsensus?


Jest to możliwe, ale trudne.


Wygląda na to, że Rootstock nie stał się jeszcze tak popularny, jak powinien. Chociaż technologia web3 ewoluuje poza wizję Satoshiego, odpowiedzialność nadal spoczywa na monecie zbudowanej z bitów, Bitcoinie.


Każda nowa faza web3 sprowadza nas z powrotem do deski kreślarskiej. Jej blockchain to niewykorzystany zasób, a Rootstock to korzeń palowy. Po co budować stablecoina na jakimkolwiek innym łańcuchu?


Aby ten artykuł był krótki, opisałem nasz projekt stablecoinów Perplexity AI. Następnie poprosiłem o metryki dla wysokiej jakości blockchaina i metryki, których projekt potrzebuje.


W każdym z tych kryteriów aplikacja uzyskała wysoki wynik, który możesz podłączyć do swojej sztucznej inteligencji, aby się zweryfikować:


  • Bezpieczeństwo: Czy daje nam spokój ducha?
  • Skalowalność: Czy platforma łatwo i szybko obsługuje dużą liczbę transakcji?
  • Opłacalność: Czy oszczędzamy na rachunkach za benzynę?
  • Interoperacyjność: Czy jest kompatybilna z innymi blockchainami, dApps i aplikacjami + usługami DeFi?


Następnie poprosiłem go, aby powiedział mi, czy Rootstock może wykonać zadanie. Krótka odpowiedź brzmi: tak. To bardzo przydatny łańcuch boczny Bitcoin, w tym możliwość opcji płynności z aplikacji DeFi podczas projektowania naszej infrastruktury.



Inżynieria naszego inteligentnego kontraktu

  • Warunki bicia
  • Mechanizm kołkowy
  • Dostawa początkowa
  • Opłaty za gaz



Nazwa monety : KOINONIA

Ticker: KONKONB-LO

Blockchain: Rootstock/Bitcoin

Warunki bicia monety: Nieograniczone, jeśli w ciągu ostatnich 365 dni liczba PRÓB wystrzelenia głowic jądrowych dziennie / liczba głowic wystrzelonych dziennie > 0.

Mechanizm kołkowy: Wartość warunkowa; liczba głowic nuklearnych WYSTRZELANYCH dziennie = 0.

Początkowa dostawa: Liczba głowic x 10^(Czas trwania pierwszego porozumienia w sprawie broni jądrowej w latach) = 12 121 x 10^25

Opłaty za gaz: Zbudujmy kod.


Napisałem to w Solidity, w tym jedno dla naszego hipotetycznego wyroczni. Następnie skompilujemy to do bajtkodu za pomocą Hardhat.


Oto nasze programy:


 // SPDX-License-Identifier: GPL-3.0 pragma solidity >=0.8.0 <0.9.0; interface IOracle { function getAttemptedFires() external view returns (uint256); function getActualFires() external view returns (uint256); } contract KOINONIA { string public name = "KOINONIA"; string public symbol = "KONKONB-LO"; uint8 public decimals = 25; // Set to 25 decimals uint256 public totalSupply; address public owner; uint256 public yearlyCap; // Maximum tokens that can be minted in a year uint256 public mintedThisYear; // Tokens minted in the current year uint256 public currentYear; // Current year as a timestamp IOracle public oracle; // Reference to the oracle contract mapping(address => uint256) public balances; event Minted(address indexed to, uint256 amount); constructor(uint256 _yearlyCap, address _oracleAddress) { owner = msg.sender; yearlyCap = _yearlyCap * 10 ** uint256(decimals); // Set yearly cap currentYear = block.timestamp / 365 days; // Initialize current year oracle = IOracle(_oracleAddress); // Set the oracle address totalSupply = 12_121 * (10 ** 25); // Initial supply based on nuclear warheads balances[owner] = totalSupply; // Assign initial supply to owner } // Function to mint new tokens function mint(uint256 amount) external { // Check if we need to reset for a new year uint256 newYear = block.timestamp / 365 days; if (newYear > currentYear) { currentYear = newYear; // Update to new year mintedThisYear = 0; // Reset minted count for the new year } // Get data from oracle uint256 attemptedFires = oracle.getAttemptedFires(); uint256 actualFires = oracle.getActualFires(); require(attemptedFires > actualFires, "Condition not met: More actual fires than attempts"); // Calculate allowed minting based on attempted vs actual fires uint256 allowedMinting = (attemptedFires - actualFires) * 10 ** uint256(decimals); // Example calculation require(mintedThisYear + amount <= allowedMinting, "Yearly cap exceeded"); totalSupply += amount * 10 ** uint256(decimals); // Increment total supply balances[owner] += amount * 10 ** uint256(decimals); // Increment owner's balance mintedThisYear += amount * 10 ** uint256(decimals); // Increment the minted count emit Minted(owner, amount * 10 ** uint256(decimals)); // Emit event for minting } // Function to check balance of an address function balanceOf(address account) external view returns (uint256) { return balances[account]; } }


A co z danymi Oracle, które będą pochodzić z tych samych źródeł, co nasze Indeksy Strachu i Spokoju.


 // SPDX-License-Identifier: GPL-3.0 pragma solidity >=0.8.0 <0.9.0; contract Oracle { uint256 private attemptedFires; uint256 private actualFires; function updateFires(uint256 _attemptedFires, uint256 _actualFires) external { // Only allow authorized users to update these values (implement access control) attemptedFires = _attemptedFires; actualFires = _actualFires; } function getAttemptedFires() external view returns (uint256) { return attemptedFires; } function getActualFires() external view returns (uint256) { return actualFires; } }


Oszacowanie opłat za gaz

  1. Koszt wdrożenia :
    • Szacuje się, że liczba ta wynosi około 200 000 - 300 000 jednostek gazowych .

    • Przyjmując cenę gazu wynoszącą 30 gwei , kosztowałoby to w przybliżeniu:


      250 000 gazu × 30 gwei ≈ 15 USD


  2. Koszt wywołania funkcji Mint :
    • Każde połączenie może kosztować około 50 000 - 100 000 jednostek gazu , co daje koszt około:


      75 000 gazu × 30 gwei ≈ 4,50 USD


Nie potrafię pisać kodu, ale dzięki AI było to możliwe. Przekazywałem Perplexity te dane w trakcie i prosiłem o optymalizację kosztów i szacowanie.



Projektowanie dla równowagi

  • Przyszłe aktualizacje
  • Wartość towaru
  • Sentyment rynkowy, manipulacje i regulacje
  • Zasoby ponad wszystko: Presja na USA, aby pozostały istotne.
  • Warunki zabezpieczenia: Cena towaru, Ubezpieczenie limitowane na portfel z większą ilością za większą inwestycję, Blokady X%, Gwarancja stabilności okresu obowiązywania (nieograniczone bicie)


Przyszłe aktualizacje

Aby umożliwić przyszłe aktualizacje, dodalibyśmy kontrakt proxy w następujący sposób:


 // SPDX-License-Identifier: GPL-3.0 pragma solidity >=0.8.0 <0.9.0; contract Proxy { address public implementation; address public owner; constructor(address _implementation) { implementation = _implementation; owner = msg.sender; // Set the deployer as the owner } function upgrade(address newImplementation) external { require(msg.sender == owner, "Not authorized"); implementation = newImplementation; } fallback() external payable { (bool success, ) = implementation.delegatecall(msg.data); require(success, "Delegatecall failed"); } }


Aby mieć pewność, że umowa będzie działać z serwerem proxy, wprowadzimy niewielką modyfikację:


 // SPDX-License-Identifier: GPL-3.0 pragma solidity >=0.8.0 <0.9.0; interface IOracle { function getAttemptedFires() external view returns (uint256); function getActualFires() external view returns (uint256); } contract KOINONIA { string public name = "KOINONIA"; string public symbol = "KONKONB-LO"; uint8 public decimals = 25; // Set to 25 decimals uint256 public totalSupply; address public owner; uint256 public yearlyCap; // Maximum tokens that can be minted in a year uint256 public mintedThisYear; // Tokens minted in the current year uint256 public currentYear; // Current year as a timestamp IOracle public oracle; // Reference to the oracle contract mapping(address => uint256) public balances; event Minted(address indexed to, uint256 amount); constructor(uint256 _yearlyCap, address _oracleAddress) { owner = msg.sender; yearlyCap = _yearlyCap * 10 ** uint256(decimals); // Set yearly cap currentYear = block.timestamp / 365 days; // Initialize current year oracle = IOracle(_oracleAddress); // Set the oracle address totalSupply = 12_121 * (10 ** 25); // Initial supply based on nuclear warheads balances[owner] = totalSupply; // Assign initial supply to owner } // Function to mint new tokens function mint(uint256 amount) external { // Check if we need to reset for a new year uint256 newYear = block.timestamp / 365 days; if (newYear > currentYear) { currentYear = newYear; // Update to new year mintedThisYear = 0; // Reset minted count for the new year } // Get data from oracle uint256 attemptedFires = oracle.getAttemptedFires(); uint256 actualFires = oracle.getActualFires(); require(attemptedFires > actualFires, "Condition not met: More actual fires than attempts"); // Calculate allowed minting based on attempted vs actual fires uint256 allowedMinting = (attemptedFires - actualFires) * 10 ** uint256(decimals); // Example calculation require(mintedThisYear + amount <= allowedMinting, "Yearly cap exceeded"); totalSupply += amount * 10 ** uint256(decimals); // Increment total supply balances[owner] += amount * 10 ** uint256(decimals); // Increment owner's balance mintedThisYear += amount * 10 ** uint256(decimals); // Increment the minted count emit Minted(owner, amount * 10 ** uint256(decimals)); // Emit event for minting } // Function to check balance of an address function balanceOf(address account) external view returns (uint256) { return balances[account]; } }


Dzięki tej umowie proxy możemy aktualizować rzeczy. Liczba głowic nuklearnych prawdopodobnie wzrośnie z czasem. Możemy dodać do nich nowe jednostki i dokonać innych niezbędnych modyfikacji bez psucia naszych systemów lub powodowania niedogodności.


Wartość towaru

Warunkiem naszej Jakości Aktywów było to, że będzie łatwa do zweryfikowania. W przypadku Płynności Aktywów było to, że będzie zbudowana na towarach, bez których ludzie nie mogą się obejść, i będzie łatwa w zarządzaniu.


Ponieważ taka aktywność jest zazwyczaj utrzymywana w tajemnicy, najpierw korzystamy ze zwiększenia naszego zaangażowania w przetrwanie naszej rodziny. Jeśli zostaniemy przyjęci, połączymy wszystkie nasze losy, aby stworzyć tratwę, która utrzymuje się na powierzchni, i trzecią nogę, na której nawet fiat może się oprzeć.


Broń jądrowa jest bardzo droga. A jeśli nie jest używana do prowadzenia wojny, można ją poddać recyklingowi, aby służyła elektrowniom jądrowym i projektom. Ryzyko utraty wartości przez broń dodatkową jest dość niskie. Zamiast reprezentować tylko ból, są to cenne minerały ziemi, których zawsze będziemy potrzebować, tak jak nasza ludzka natura.


Im bardziej pozytywna uwaga zostanie skierowana na broń jądrową w jej potencjalnym stanie poprzez przekształcenie jej w zabezpieczenie kryptowalutowe, tym trudniej będzie ją rozmieścić. Jej wartość wzrośnie również poza jej potencjał destrukcyjny.


W tym właśnie obszarze web3 sprawdza się najlepiej, dając nam narzędzia do zmiany stanów energetycznych świata fizycznego w naszej świadomości.


Być może takie zmiany zmniejszą potrzebę nuklearnego impasu, którego używamy, aby zachować pokój. Wyzwania w osiągnięciu tego są wielkie, ale mądry człowiek powiedział kiedyś:


„Gdzie chęć jest wielka, tam trudność nie może być wielka”


Pamiętaj, że ten temat to tylko przykład mający pomóc Ci zrozumieć, co jest potrzebne, aby stworzyć tę stabilną monetę i jakie będą jej skutki.


Ponieważ jego wartość zależy od stanu, nie będzie zależała od dolara amerykańskiego, którego wartość wynika z zaufania do rządu.


Nie mógł funkcjonować w bańce, lecz istnieć w swoim wymiarze, jednocześnie wchodząc w interakcje z każdą walutą natywnie.


Tak więc 1 Koinonia = 1 potencjał jądrowy,

co można powiązać z [Ilością] energii wyjściowej ze źródła [Materiał radioaktywny] dla [Ilością] warunków obciążenia.


Lokalna cena energii mogłaby być wykorzystana jako kantor wymiany walut , w którym przechowujesz część swoich pieniędzy jako energię w formie KONKONB-LO. Warto, prawda?


Sentyment rynkowy, manipulacje i regulacje

Istnienie naszego przykładowego stablecoina „bliskiego zera” może początkowo szokować jako egzystencjalne zagrożenie dla każdego anarchisty, cyberprzestępcy lub rządu, ale wprowadzamy dyskusję na temat energii, aby ich uspokoić.


Niektórzy mogliby odważyć się użyć głowic, aby zmienić kurs waluty. W końcu mogliby celować w miejsce, w którym nikt nie mieszka, mogliby pomyśleć.


Ale możemy szybko zidentyfikować źródło za pomocą naszej technologii i zacząć nakładać sankcje ekonomiczne na osoby odpowiedzialne. Ponieważ jej wartość opiera się na tym, co dzieje się dzisiaj, nasza moneta może powrócić do stabilności już następnego dnia, jeśli się zatrzęsie.


Będą też zabezpieczenia, które zapewnią ludziom możliwość wypłacenia części pieniędzy, ale nie całości. Jedynym sposobem na utrzymanie zmienności naszej monety jest codzienne strzelanie z broni jądrowej, a to nie jest żaden karabin maszynowy.


Aby ta hipotetyczna moneta odniosła sukces, będziemy musieli o niej ciągle mówić, wytykać jej błędy, rozwijać ją i budować zaufanie do niej.


Musielibyśmy od początku liczyć się z negatywnymi nastrojami i zmieniać perspektywę ludzi poprzez wykonywanie dobrej pracy.



Ale bez międzynarodowego wsparcia nie może osiągnąć swojego pełnego potencjału. Zakończę to — ale najpierw: jak testujemy nasz kod w kontrolowanym środowisku?



Wdrażanie i testowanie na podkładce

Sporządzamy umowę i rozpoczynamy testy.


Oznacza to wyeksportowanie go jako folderu zawierającego kod źródłowy Solidity (plik .sol) oraz skompilowane pliki JSON kodu bajtowego (wersja binarna), ABI (interfejs binarny aplikacji) i inne metadane.


Następnie wdrażanie za pomocą narzędzi wdrożeniowych, takich jak Rootstock CLI, Hardhat, biblioteki JavaScript (takie jak Web3.js) lub portfele, takie jak MetaMask. Po połączeniu narzędzia z folderem możemy utworzyć i rozgłosić naszą transakcję w blockchain.


Mamy szacunkowe opłaty za gaz, a każde użyte narzędzie (powyżej) zawiera instrukcje dotyczące inicjowania transakcji. Po jej zakończeniu otrzymamy adres naszej umowy, dostępny na żywo w Rootstock TestNET Explorer.


Każda transakcja wysłana na ten adres niesie pakiet danych przenoszący nasze instrukcje do łańcucha bocznego Rootstock. Dzięki temu otrzymujemy wszystkie korzyści łańcucha bloków Bitcoin + zaawansowane inteligentne kontrakty, takie jak ten.


To nasz plac zabaw i z czasem zobaczymy, czy nasz plan zadziała, zanim przejdziemy do sieci głównej.


Rootstock udostępnił swoją bibliotekę dokumentów i kursy dla programistów, aby zapewnić pomoc.


Nie jest tak źle, co? Porozmawiajmy o Quency-Quences.



Konsekwencje stablecoina o zmienności bliskiej zeru

Łatwy samorząd

Ten rodzaj potężnego stablecoina mógłby nawet całkowicie zastąpić rządy, jeśli rozwinie się wystarczająco dużo projektów, aby sfinansować praktyczne rozwiązania dla zaangażowanych społeczności, zamiast, powiedzmy, rozwiązania matematycznego, takiego jak Satoshi zaprojektowany w Bitcoinie. Ale czekaj, lubimy matematykę.


Nasza moneta jest chroniona przez sieć Satoshiego, która chroni jej złożoność i istotność problemu, który rozwiązuje dla społeczności globalnej.


Chociaż tego rodzaju władza kosztuje znaczną autonomię od lokalnych i innych rządów, to jednak odwdzięcza się stabilnością, aby zachować ich fiat — jeśli są wystarczająco mądrzy, aby dostrzec korzyści. Społeczeństwa, które przyjmują technologię, rządzą lepiej.


To całkiem podobne do przekazania przez GBP urzędu globalnej rezerwy fiskalnej Wielkiej Brytanii po wyczerpaniu oszczędności w „wojnie światowej”. Bardziej przypomina to wojnę północną, jeśli mnie pytasz. Nikt nie pytał nas o zdanie, zamiast tego wcielono do wojska naszą pracę ORAZ gospodarkę.


Po wielu wojnach Rzym nauczył się kontynuować handel z Afryką.


Więcej dynamicznej równowagi

Czy zastanawiałeś się kiedyś, dlaczego Nixon chciał zlikwidować kołek?


USA chciały rozszerzyć swoje wpływy. Czy wiesz, gdzie jest dziś świat dzięki temu napędowi?


Ktokolwiek obejmie urząd prezydenta, ponosi wyłączną odpowiedzialność za losy gospodarcze świata.


„Postawcie na nas” – powiedział Nixon.

Dzięki temu stanowisku Ameryka nieustannie zabiegała o zabezpieczenie zasobów innych rządów.


W pewnym sensie jest to patriotyczne. W innym sensie wojna jest patriotyczna;

powiedzą, że walczą o zachowanie swojego dziedzictwa (wolności), nawet zabierając majątek (zasoby) innym.


To, że masz silniejszą walutę od nich, oznacza, że potrzebują cię bardziej, więc wymyślają wymówki, żeby utrzymać się przy władzy.


Oddanie części tej mocy takiemu stablecoinowi znacznie ułatwiłoby ich pracę (grabież i/lub rolnictwo), a jednocześnie bogate w energię kraje afrykańskie zyskałyby kolejny rynek, na którym mogłyby pokazać swoją wartość, co potencjalnie doprowadziłoby do bezprecedensowych zmian w ich przepływach pieniężnych.


Czy w swojej sytuacji zainwestowaliby w stablecoina powiązanego ze słabszymi walutami?


Aby uratować swoją walutę, powiedzą ci: „zawrzyj z nami lepsze umowy i handluj więcej w swoim systemie”. Dla nas, będących na łasce ich wojen, te umowy zniszczyły nas przez ich oszustwa i infiltrację.


Nasze zaufanie do dolara amerykańskiego nie przynosi zysków. Tracimy cenne zasoby na rzecz ich praktyk ekonomicznych w celu uzyskania stresującej energii. W naszym sąsiedztwie Chiny tym razem pakują nasz lit.


Ropa naftowa i lit to niewielkie zasoby w porównaniu z wszystkimi możliwościami energetycznymi. Po co wiązać węzeł raz, skoro jest silniejszy dwa razy?


Żyć to buntować się. Każdego dnia żyjemy w buncie przeciwko śmierci. Znajdź satysfakcję w swoim buncie.


Podobnie jak ci, którzy z radością ryzykują życie dla chwały, jesteś w stanie osiągnąć wiele, jeśli tylko podejmiesz ryzyko .


Czy widzisz siebie trzymającego taką monetę?