Kuinka käyttää Client Raindropia ILMAINEN käyttämällä vety-sovellusliittymää

** Olen julkaissut video-opetusohjelman, joka seuraa tätä blogin viestiä vaiheelta **

Tämän oppaan ymmärtämiseksi on tärkeää ensin määritellä joitain termejä.

Määritelmät

Vety: yritys, joka on luonut tuotteen - Hydro API.

Hydro API: API, joka kutsuu Hydro-smart-sopimusten toimintoja. Jokainen muu sovellus, kuten Hydro API, voi myös kutsua toimintoja Hydro-smart-sopimuksissa joko manuaalisesti sivustojen kuten MyCrypto (kuten teen tässä opetusohjelmassa) tai ohjelmallisesti web3: n kautta.

Hydro-mobiilisovellus: Tämä on vedyn luoma mobiilisovellus, joka yhdistää loppukäyttäjät vety-sovellusliittymään. Tämä luo käyttäjille HydroID-tunnukset, joiden avulla he voivat puolestaan ​​hallita vuorovaikutustaan ​​Hydro Smart -sopimusten kanssa. Hydro-sovellusliittymän ansiosta tämä ei vaadi mitään sovellusketjun alkuperäisiä toimintoketjuja.

HydroID: Tämä on tunnus, joka luodaan asiakaspuolen Raindrop-älykkäässä sopimuksessa. Vain yksi HydroID voidaan luoda tietylle ethereum-lompakolle. Tämä tunnus on linkitetty Hydro-älykkäisiin sopimuksiin; Esimerkiksi, kun käyttäjä luo Lumihiutaleen henkilötietojen hallintaa varten, hänen yksilöllinen, jota ei voi muuttaa, Lumihiutale-tunnus linkitetään heidän HydroID-tunnukseen. Vety API luo vain HydroID-sovellukset Hydro-mobiilisovelluksen lompakkoihin, joita ei tällä hetkellä ole tarkoitettu pitämään varoja; Kolmannen osapuolen sovellukset voivat kuitenkin linkittää HydroID-tiedostot MetaMask-lompakkoihin, alkuperäisiin lompakkoihin tai muihin lompakkoihin niiden sovellusten tarpeiden perusteella.

Hydro hajautettu projekti: Hydro-ydinryhmä kirjoittaa älykkäitä sopimuksia, jotka hyödyntävät HYDRO-tunnusta lisätäkseen ketju-parannettuja rahoituspalveluiden toimintoja yrityksille. Blockchain-kehittäjät ympäri maailmaa voivat vapaasti tunnistaa ongelmat, tehdä veto-pyyntöjä tai kirjoittaa omia sopimuksiaan, jotka hyödyntävät myös HYDROa tuodakseen blockchain-toiminnallisuuden yrityksiin.

Hydro-ekosysteemi: Tämä koostuu kehittäjistä, jotka kirjoittavat Hydro-älykkäitä sopimuksia ja osallistuvat niihin, yrityksistä, jotka käyttävät web3: ta suoraan yhteyteen Hydro-älykkäisiin sopimuksiin, ja kaikista asiakkaista, joita nämä yritykset palvelevat.

Panostaminen HYDRO: Hyvien toimijoiden takaamiseksi HYDRO-ekosysteemissä tietyt Hydro-smart-sopimukset vaativat kehittäjiä ylläpitämään tietyn HYDRO-tasapainon. Client Raindrop -sopimus edellyttää HYDRO-saldoa kaikille, jotka haluavat rekisteröidä käyttäjiä. HYDRO-merkki sopimuksen omistaja (tiimimme) voi säätää vaadittua määrää HYDRO-pinottua (jotta voimme vähentää vaatimusta tarvittaessa merkinnän niukkuuden perusteella). Tämä panostussumma ei kuitenkaan voi koskaan ylittää 111 111 111 HYDRO-arvoa, kun luodaan HydroID jonkun toisen puolesta, ja 222 222, jos haluat luoda HydroID-tiedoston itse. Asetamme tämän ylärajan hajauttamisen ylläpitämiseksi, joten jos hallitsemme suurta osaa kokonaistoimituksesta, emme voi hinnoitella kilpailijoita. Jatkossa aiomme luoda hajautetun omistajarakenteen omistajasopimukselle, vaikka se olisi minimaalinen.

Tämän opetusohjelman laajuus

Osana Hydro-projektia olemme kirjoittaneet muutamia älykkäitä sopimuksia, jotka hyödyntävät HYDRO-tunnusta: palvelinpuolen sadepisaran älykäs sopimus, asiakaspuolen sadepisaran älykäs sopimus ja lumihiutaleen älykäs sopimus. Aiomme kirjoittaa enemmän sopimuksia etenemissuunnitelmamme mukaisesti tehdäksemme Hydro-tokenista vieläkin dynaamisemman ja hyödyllisemmän. Kaikkien luomiemme älykkäiden sopimusten ytimessä on HydroID. HydroID luodaan älykkäiden asiakassovellusten kautta ja luo pysyvän, turvallisen linkin käyttäjän lompakkoon, joka yhdistää käyttäjän koko Hydro-ekosysteemiin.

Tässä opetusohjelmassa aion käyttää asiakkaan raindrop smart -sopimusta luomaan käyttäjälle HydroID: n, joka linkittää henkilökohtaiseen Luottamus-lompakkooni. Aion tehdä tämän Rinkeby-testiverkossa MyCrypto-sovelluksen avulla. Kehittäjä voisi käyttää web3: ta soittaakseen samoihin toimintoihin, joita minä kutsun, ja yhdistämään sen omaan sovellukseensa. Esimerkiksi pankki, joka saattaa haluta tehdä Raindropin alkuperäiseksi omalle mobiilisovellukselleen 2FA: lle ja käyttää omaa tuotemerkkiään sen sijaan, että pakottaisi käyttäjän lataamaan erillisen sovelluksen, saattaa käyttää web3: ta kutsumaan näitä toimintoja integroituna omaan sovellusliittymään. Vaihtoehtoisesti joku, joka rakentaa linkitetyn tyylisen sosiaalisen median alustan, jolla on natiivi lompakon toiminnallisuus, saattaa haluta kutsua näitä toimintoja käyttäjien HydroID-tunnisteiden luomiseksi, jotka linkittäisivät kyseisten käyttäjien lumihiutaleiden ei-siirrettäviä merkkejä. Ohjelmistollisen vuorovaikutuksen Hydro Smart -sopimusten kanssa on täysin kehittäjän mielikuvitus.

Testnet-eetterin ja tokenien hankkiminen

Ennen kuin aloitat, sinun on hankittava ETH ja HYDRO rinkeby-testiverkossa. Saadaksesi ETH: n, noudata tämän StackExchange-vastauksen vaiheita:

Seuraavaksi sinun on hankittava testnet HYDRO-tokenit. Voit tehdä tämän siirtymällä MyCrypto-sopimussivulle:

Yhdistä lompakkoon - Käytin vain MetaMask-lompakkoani tähän. Käytämme Rinkeby Hydro -merkkisopimusta, joka löytyy täältä:

Jätä ”valitse nykyinen sopimus” tyhjäksi ja liitä sen sijaan 0x4959c… -osoite eetteriskan linkin vasempaan yläosaan ”sopimusosoite” -kenttään. Liitä sopimuksen ABI etherscanista ”ABI” -kenttään. Valitse getMoreTokens-toiminto, aseta kaasuraja ja luo tapahtuma. Kun olet valmis, sinun pitäisi pystyä katsomaan 10 000 HYDRO-tunnusta 0x4959c-osoitteesta Rinkeby-testnetnet-lompakossasi. Jos noudatat näitä vaiheita Ethereum Main Net -verkossa, sinun on hankittava HYDRO kolmannelta osapuolelta.

Vaikka olemme asettaneet HYDRO: n pääverkkopanostustarpeeksi 222 222 HYDRO, pidämme Rinkeby-panostusvaatimuksena 10 000 HYDRO: ta, jotta kehittäjien on helppo seurata näitä vaiheita ja testata.

Huomaa * koko tämän opetusohjelman aikana et käytä näitä 10 000 HYDROa. Et voi vain soittaa näihin toimintoihin, ellei lompakkosi saldo on 10 000 HYDRO. Siten, jos haluat joskus lopettaa käyttäjien rekisteröinnin, voit käyttää panostettua HYDRO-laitetta muihin HYDRO-älykkäisiin sopimuksiin tai antaa sen muille kehittäjille tai kolmannelle osapuolelle tai jättää ne vain tilillesi.

Käyttäjien rekisteröinti asiakaspuolen Raindrop Smart -sopimuksen kautta

Nyt kun olemme perustettu, voimme aloittaa varsinaisen vuorovaikutuksen asiakaspuolen Raindrop Smart -sopimuksen kanssa. Voit tehdä tämän kahdella tavalla: voit joko rekisteröidä oman HydroID-tunnuksen tai siirtää jonkun muun tekemään sen puolestasi. Aloitetaan helpoimmasta - oman HydroID-rekisteröinti. Oman HydroID-rekisteröinnin voi tehdä soittamalla asiakaspuolen Raindrop-sopimuksen signUpUser-toimintoon.

Palaa MyCrypto-sopimussivulle, paitsi tällä kertaa liitä asiakaspuolen Raindrop-sopimusosoite, joka alkaa numerolla 0xb29…. Löydät tämän sopimuksen seuraavan eetteriskangasivun vasemmasta yläkulmasta. Ota myös ABI täältä:

Valitse signUpDelechedUser-toiminto, joka ottaa käyttöön ainoan parametrin casedUserName. Syötä mikä tahansa käyttäjänimi, jonka haluat rekisteröidä. Koska nämä käyttäjänimet tallennetaan julkiseen lohkoketjuun, HydrogenAPI generoi satunnaiset aakkosnumeeriset 7 merkkijonoa tälle kentälle; Koska teen tämän kuitenkin manuaalisesti HydrogenAPI: n ulkopuolella, rekisteröin vain käyttäjänimen nimeltään AnuragHydro.

Täällä voit nähdä vahvistetun tapahtuman:

Nyt mielenkiintoisemmasta lähestymistavasta: HydroID: n rekisteröiminen toisen käyttäjän puolesta. Tämä on hyödyllinen kolmansien osapuolien sovelluksille, jotka haluavat kytkeä käyttäjään Hydro-ekosysteemiin. Jotta rekisteröidyt jonkun toisen käyttäjän, sinun on kerättävä heiltä kaksi asiaa:

  1. allekirjoitettu viesti heiltä - tämän viestin on oltava keccak 256-hash ”Luo ​​RaindropClient Hydro-tili”
  2. heidän julkisen osoitteensa

Tallennamme Hydrogen-sovelluksessa avainparia käyttäjän mobiililaitteelle Hydro-sovelluksen kautta. Tämä yksityinen avain allekirjoittaa viestin ja lähettää allekirjoitetun viestin yhdessä niiden julkisen osoitteen kanssa sovellusliittymällemme, joka luo heidän HydroID: n.

Käytän tämän opetusohjelman tarkoituksia varten ja prosessin läpi käsin, käytän MyCrypton allekirjoitustoimintoa. Mene:

Ja varmista, että olet kirjautunut sisään uudella ja erillisellä ethereum-osoitteella, jolle suoritat delegoidun rekisteröinnin. Kaivoksen julkinen osoite on 0x3c5… Sinun on liitettävä hash viesti ”Luo ​​RaindropClient Hydro-tili” - voit hankkia hash täältä:

ja sen pitäisi tulla ulos näyttämällä tältä: 96c9259001bd030923ed09cd77ac733c1f82fe843ed92337c2b3953346d5a522. Lisää 0x eteen ja allekirjoita viesti:

Kun olet tehnyt tämän, allekirjoituksen tulee näkyä alla:

Sinun on kerättävä ”r” “s” ja “v” tästä allekirjoituksesta. Voit tehdä tämän liittämällä allekirjoituksen kiinteän leveyden tekstieditoriin (käytän atomia) ja noudattamalla näitä vaiheita:

  1. poista 0x alusta alkaen
  2. jaa tuloksena saatu naru kolmeen riviin. Varmista, että viimeinen rivi on 2 merkkiä pitkä ja ensimmäinen ja toinen rivi ovat yhtä pitkiä.
  3. Lisää 0x kunkin kahden ensimmäisen rivin alkuun.

Tässä vaiheessa allekirjoituksen tulisi näyttää tällaiselta

4. ”v” -arvo on tällä hetkellä heksadesimaalimuodossa ja se on muunnettava desimaalimuotoon. Voit tehdä tämän muunnoksen täällä:

1c desimaalin tarkkuudella on 28, joten v-arvoni on 28.

Joten nyt olemme keränneet seuraavia tietoja käyttäjältä, jota aiomme rekisteröidä:

julkinen osoite = 0x3c5…

r = 0x02c9….

s = 0x7a5c….

v = 28

Ja me nimeämme HydroID-tunnuksen tälle käyttäjälle AnuragHydro3.0

Joten nyt meidän on palattava MyCrypto-sovelluksen Hydro Client-Raindrop -sivustoon, paitsi nyt, että kutsumme signUpDelechedUser-toimintoa signUpUser-toiminnon sijasta. Kirjoita yllä kerätyt parametrit seuraavasti:

Ja tässä on onnistunut eetteriskannan vahvistus:

Ja voila! Olet rekisteröinyt erillisen käyttäjän manuaalisesti. Ohjelmallisesti voit kutsua kaikki nämä samat toiminnot samalla tavalla ja rekisteröidä käyttäjät massalla.

Kerro minulle, pystytkö toistamaan nämä vaiheet onnistuneesti tai integroimaan tämän prosessin omaksi sovellukseesi! Vaihtoehtoisesti voit aina saada käyttäjän lataamaan Hydro-mobiilisovelluksen ja kirjautumaan Hydro-sovellusliittymään vety-verkkosivuston kautta ja yhdistämään sovelluksesi vain Hydro-sovellusliittymään.