Ensin vähän kielenkäyttöä. A "viesti" on viestintäyksikkö kahden tai useamman lohkoketjun verkon osallistujan välillä. Se voi sisältää minkä tahansa tyyppistä dataa, ja niitä käytetään yleisesti digitaalisen hyväksynnän saamiseksi käyttäjältä.
A "transaktio", toisaalta, on tietyntyyppinen viesti, joka sisältää arvon siirron osallistujalta toiselle. Se sisältää yleensä tietoja, kuten lähettäjän osoitteen, vastaanottajan osoitteen, siirrettävän kryptovaluutan määrän ja digitaalisen allekirjoituksen, joka todistaa lähettäjän valtuutuksen siirtoon.
Käyttäjät voivat jo tyhjentää allekirjoitustapahtumat Ledger-laitteillaan, kuten tässä viestissä on kuvattu, ja olemme laajentaneet tätä hyvää käytäntöä samojen periaatteiden mukaisesti myös viesteihin. Näin voit tehdä sen.
Miksi allekirjoitamme viestejä web3:ssa?
Lohkoketjut perustuvat "julkisen avaimen salaus", jossa käyttäjät omistavat julkisen avaimen ja yksityisen avaimen, jotka muodostavat parin. Julkinen avain edustaa omistajan henkilöllisyyttä ja yksityinen avain on salainen, jolloin he voivat todistaa omistavansa avainparin.
Kun allekirjoitat viestin, käytät yksityistä avaimesi allekirjoitusalgoritmissa allekirjoituksen linkittämiseksi viestiin ja julkiseen avaimeen. Kukaan ei voi johtaa yksityistä avaimesi tai väärentää kelvollista allekirjoitusta sinulle. Jokainen, joka tuntee julkisen avaimesi, voi kuitenkin helposti varmistaa, että viesti on allekirjoitettu yksityisellä avaimellasi.
Lyhyesti sanottuna se on sama prosessi ja ajatus kuin tapahtumien allekirjoittaminen, paitsi että keskitymme tässä allekirjoittamaan viestit, jotka palvelevat eri tarkoitusta: korvausta. Allekirjoitamme viestejä krypto-sovelluksissa kerätäksemme käyttäjien suostumuksen, aivan kuten tosielämässä käyttäisit kirjallista allekirjoitustasi paperille. Se on "fiat-allekirjoituksen" kryptoversio.
EIP-712: n merkitys
Viestien allekirjoittaminen ei ole uusi asia. Olemme voineet allekirjoittaa viestejä jo vuosia, ja ne voivat saada eri muotoja ja muotoja, kun ne paranevat ajan myötä. Itse asiassa, Ethereumin parannusehdotus 191 (EIP-191) lähetettiin vuonna 2016, ja se esitteli standardin, joka mahdollistaa ihmisten luettavissa olevat viestit, jota Ledger-laitteet tukevat alkuperäisesti. EIP-191 kuitenkin epäonnistui siinä, että standardi ei strukturoi tietoja. Se on vain rajattoman pituisen datan hämärtymä viestin lopussa, mikä vaikeuttaa sen käyttöä. Käytännössä viestit ovat usein liian pitkiä, jolloin ne lyhennetään, jolloin käyttäjä jää paitsi mahdollisesti tärkeimmistä tiedoista; huono UX.
Kuten jutun alussa todettiin Ethereumin parannusehdotus 712 (EIP-712): ”Datan allekirjoittaminen on ratkaistu ongelma, jos välitämme vain bytestringsistä. Valitettavasti todellisessa maailmassa välitämme monimutkaisista merkityksellisistä viesteistä." – En voisi olla enempää samaa mieltä. Kun viestit kasvoivat monimutkaisempiin toimintoihin, EIP-712:n mukaisten kirjoitettujen tietorakenteiden käyttöönotto viesteissä oli tervetullut muutos.
Tämä tarkoittaa käyttäjille sitä, että nyt kehittäjät voivat jäsentää viestin tiedot ja tietää, mikä on mitä, mikä voidaan nyt paljastaa käyttäjälle. Jäsentäminen tarkoittaa kykyä lukea sisältö, koska tiedät kuinka se on rakennettu. Se on pelin muuttaja käyttäjäkokemuksen kannalta, mutta myös turvallisuuden näkökulmasta, koska nyt voin tarkistaa, mitä allekirjoitan.
Viestien käyttötarkoitukseen liittyen, jos pyydät Alicea myöntämään sinulle erityisen luvan lompakon sisältöön, sinun tulee olla sovelluskehittäjänä erittäin selkeä, jotta voit maksimoida hänen mahdollisuutesi jatkaa. Mutta se on enemmän kuin pelkkä tulosprosentin optimointi.
Jos ajattelet turvallisuutta ja puolustusta kilpailevassa ympäristössä, huijari varmasti tekee viestistä mahdollisimman läpinäkymättömän huijatakseen Alicea sallimaan tuon haitallisen toiminnan. Avoimuus ja Alicen kyky tarkistaa allekirjoittamansa asia ovat ehdottoman tärkeitä.
Ja tässä EIP-712 tulee esiin. Ennen tätä EIP:tä allekirjoitetut viestit olivat läpinäkymätön heksadesimaalimerkkijono, joka näytettiin käyttäjälle ja jossa oli vain vähän kontekstia viestin muodostavista kohteista.
Allekirjoittaisitko tämän? Onko aavistustakaan, mitä valtuutat täällä?
EIP-712-spesifikaatio sisältää kirjoitetut tietorakenteet viesteille, joiden avulla lompakkot voivat jäsentää ne ja näyttää käyttäjäystävällisellä tavalla, jotta Alice voi tehdä tietoisen päätöksen. Lisäksi se on standardi ja yhteentoimiva koko teollisuudessa: EIP-712-tuki, Ledger, MetaMask, Rainbow, Argent, Coinbase Wallet voivat jäsentää viestisi.
Reskontratuki EIP-712:lle
Ensinnäkin, iloisia päiviä, Ledger-laitteissa on alkuperäinen tuki EIP-712-viesteille, ja kehittäjänä voit hallita tarkasti, kuinka viestisi näkyvät laitteessa.
Ledger-laitteiden viesteille on käytännössä kolme tukitasoa:
Taso 1: Sokea allekirjoitus
Jos Bob, sovelluskehittäjä, ei käytä EIP-712-viestejä, Bob lähinnä pyytää Alicea allekirjoittamaan lukemattoman heksadesimaalijonon: Bob pyytää Alicea allekirjoittamaan jotain, jota hän ei edes osaa lukea. sokea allekirjoitus.
Taso 2: Läpinäkyvä allekirjoitus
Toteuttamalla EIP-712-sanoman Bob ottaa askeleen eteenpäin siirtyessään heksa-merkkijonosta luettavaan sisältöön. Sen avulla Alice voi nyt lukea viestin sisällön, mutta koska se näyttää hänelle viestin koko sisällön, on vaikea havaita keskeisiä tietoja, jotka ovat sekoitettuna teknisiin tietoihin. Se on läpinäkyvää, mutta se ei ole vielä selvää.
Taso 3: selkeä allekirjoitus
Koska laite osaa jäsentää viestin sisällön, voimme saavuttaa selkeän allekirjoituksen ilmoittamalla, mitä näyttää ja miten. Jos Bob on asettanut vaaditut metatiedot, Alice näkisi Ledger-laitteellaan seuraavasti:
Paljon parempi kuin kuusiomerkkijono, eikö?
Toinen keskeinen seikka on, että koska se näytetään täysin suojatussa erillinen laite, jota ei voi peukaloida, Alice on 100 % varma, että se, mitä hän näkee kyseisellä laitteella, on se, mitä hän allekirjoittaa: mikään haittaohjelma tai haitallinen sovellus ei voi muuttaa sitä, mitä hänelle näytetään. Jos laitteella näkyvät asiat eivät vastaa hänen odotuksiaan, hän voi pysyä turvassa ja kieltäytyä allekirjoittamasta viestiä.
Voidakseen tarjota käyttäjilleen tämän parannetun käyttökokemuksen ja lisäsuojan Bobin on tehtävä kaksi asiaa: määritä, mitkä kentät näytetään käyttäjälle, ja anna niille mukava, selkeä näyttönimi.
Jos haluat kehittäjänä liittyä Bobiin ja tehdä sen sovelluksellesi, sinulla on kaikki asiakirjat täällä, ja se tiivistyy lähinnä vetopyynnön luomiseen sopimuksesi lisäämiseksi sallittujen luetteloon Ledgerin dApps Asset Registry -rekisteriin JSON-tiedoston avulla, joka sisältää:
- Valitsimet osoittavat, mitkä kentät laitteen on näytettävä Alice,
- Merkitse jokaiselle valitsimelle näyttönimi.
Tämä ei ole kosmetiikkaa, se on hyvä käytäntö
Lisäämällä älykkään sopimuksesi sallittujen luetteloon ja osoittamalla, kuinka Ledger-laitteet voivat näyttää viestisi, et ainoastaan paranna käyttökokemusta merkittävästi vuorovaikutuksessa sovelluksesi kanssa, mutta mikä tärkeintä, suojaat meitä kaikkia huijauksilta ja autat rakentamaan hyviä tapoja web3 ekosysteemi.
Meidän ei pitäisi koskaan allekirjoittaa jotain, jota emme ymmärrä.
Emme voi tehdä tätä ilman sinua, auta meitä tekemään selkeä allekirjoitus normiksi.
- SEO-pohjainen sisällön ja PR-jakelu. Vahvista jo tänään.
- PlatoAiStream. Web3 Data Intelligence. Tietoa laajennettu. Pääsy tästä.
- Tulevaisuuden lyöminen Adryenn Ashley. Pääsy tästä.
- Osta ja myy osakkeita PRE-IPO-yhtiöissä PREIPO®:lla. Pääsy tästä.
- Lähde: https://www.ledger.com/blog/securing-message-signing
- :On
- :ei
- :missä
- $ YLÖS
- 1
- 2016
- 22
- 220
- a
- kyky
- pystyy
- Meistä
- siitä
- ehdottomasti
- Saavuttaa
- poikki
- osoite
- kontradiktorisen
- algoritmi
- Kaikki
- sallia
- Salliminen
- mahdollistaa
- jo
- Myös
- määrä
- an
- ja
- Toinen
- Kaikki
- joku
- sovelluksen
- Hakemus
- hyväksyminen
- OVAT
- Hopea
- AS
- etu
- At
- lupa
- perustua
- BE
- koska
- ollut
- ennen
- Alku
- ovat
- Paremmin
- välillä
- Bitti
- blockchain
- Blockchain-verkko
- bob
- rakentaa
- mutta
- by
- CAN
- joka
- tyydyttää
- mahdollisuudet
- muuttaa
- Vaihtaja
- selkeä
- coinbase
- Coinbase-lompakko
- tulee
- yleisesti
- Viestintä
- monimutkainen
- suostumus
- sisältää
- pitoisuus
- sisältö
- tausta
- sopimus
- ohjaus
- Muuntaminen
- Luominen
- kryptovaluutta
- DApps
- tiedot
- päivää
- päätös
- Puolustus
- yksityiskohtainen
- Kehittäjä
- kehittäjille
- laite
- Laitteet
- eri
- digitaalinen
- näyttö
- näyttämällä
- do
- dokumentointi
- ei
- Dont
- alas
- kukin
- helposti
- ekosysteemi
- EIP
- loppu
- ympäristö
- olennainen
- olennaisesti
- ethereum
- Jopa
- Paitsi
- odotukset
- experience
- avoin
- lisää
- tosiasia
- Fields
- filee
- tarkennus
- varten
- väärentää
- muoto
- lomakkeet
- Eteenpäin
- alkaen
- koko
- täysin
- Lisäksi
- peli
- peli-vaihtaja
- kerätä
- saada
- gif
- menee
- hyvä
- myöntää
- käsi
- onnellinen
- Kova
- Olla
- auttaa
- auttaa
- hänen
- tätä
- HEX
- hänen
- Miten
- Kuitenkin
- HTTPS
- luettavaan
- i
- ajatus
- Identiteetti
- if
- merkitys
- parantaa
- parani
- parannus
- parantaminen
- in
- sisältää
- osoittaa
- teollisuus
- tiedot
- tietoa
- vuorovaikutuksessa
- yhteentoimivia
- käyttöön
- Esittelee
- esittely
- IT
- kohdetta
- yhdistää
- jpg
- json
- vain
- avain
- Tietää
- pääkirja
- Pituus
- tasot
- elämä
- LINK
- vähän
- Pitkät
- tehdä
- Tekeminen
- haittaohjelmat
- tapa
- ottelu
- max-width
- Maksimoida
- mielekäs
- välineet
- viesti
- viestien
- Metadata
- MetaMask
- puuttuva
- sekoitettu
- lisää
- nimi
- syntyperäinen
- tarpeet
- verkko
- ei ikinä
- Uusi
- mukava
- Nro
- nyt
- of
- usein
- on
- ONE
- vain
- läpikuultamaton
- toiminta
- Operations
- optimointi
- or
- Muut
- ulos
- yli
- oma
- pari
- Paperi
- osallistujat
- lupa
- näkökulma
- Platon
- Platonin tietotieto
- PlatonData
- Kohta
- kehno
- mahdollinen
- mahdollisesti
- harjoitusta.
- tarkasti
- periaatteet
- yksityinen
- yksityinen avain
- Ongelma
- prosessi
- ehdotus
- suojella
- todistaa
- osoittautuu
- toimittaa
- mikäli
- julkinen
- julkinen avain
- tarkoitus
- hinta
- Lue
- todellinen
- oikea elämä
- todellinen maailma
- rekisterin
- edustaa
- pyyntö
- tarvitaan
- Saatu ja
- turvallista
- sama
- huijauksia
- salaisuus
- turvallinen
- turvallisuus
- nähdä
- näkee
- palvella
- setti
- muodot
- hän
- Lyhyt
- shouldnt
- näyttää
- merkki
- allekirjoitettu
- merkittävästi
- allekirjoittaminen
- koska
- fiksu
- älykäs sopimus
- So
- jotain
- erityinen
- määrittely
- määritelty
- Kaupallinen
- standardi
- totesi
- pysyä
- Vaihe
- Tarina
- jono
- rakenne
- jäsennelty
- toimitettu
- niin
- suuri
- tuki
- Tuetut
- Tukea
- ottaa
- teknologia
- ehdot
- kuin
- että
- -
- heidän
- Niitä
- Nämä
- ne
- asia
- asiat
- ajatella
- tätä
- ne
- vaikka?
- aika
- että
- liian
- Liiketoimet
- siirtää
- siirretty
- Läpinäkyvyys
- läpinäkyvä
- kaksi
- tyyppi
- ymmärtää
- valitettavasti
- yksikkö
- rajoittamaton
- us
- käyttää
- käytetty
- käyttäjä
- Käyttäjäkokemus
- helppokäyttöinen
- Käyttäjät
- käyttämällä
- yleensä
- ux
- arvo
- todentaa
- kautta
- Lompakko
- Lompakot
- haluta
- oli
- we
- Web3
- Web3 ekosysteemi
- tervetuloa
- HYVIN
- olivat
- Mitä
- Mikä on
- kun
- joka
- whitelist
- KUKA
- tulee
- with
- ilman
- maailman-
- olisi
- kirjallinen
- vuotta
- Voit
- Sinun
- zephyrnet