Először is egy kis nyelvezet. A "üzenet" egy blokklánc hálózat két vagy több résztvevője közötti kommunikációs egység. Bármilyen típusú adatot tartalmazhat, és általában arra használják, hogy digitális jóváhagyást kapjanak a felhasználóktól.
A "tranzakció", másrészt egy speciális típusú üzenet, amely magában foglalja az érték átadását egyik résztvevőtől a másikhoz. Általában olyan információkat tartalmaz, mint a feladó címe, a címzett címe, az átutalt kriptovaluta mennyisége, valamint egy digitális aláírás, amely igazolja a feladó jogosultságát az átutalásra.
A felhasználók már törölhetik az aláírási tranzakciókat Ledger eszközeik segítségével, ahogy ebben a bejegyzésben részletezzük, és ezt a bevált gyakorlatot ugyanezekkel az elvekkel kiterjesztettük az üzenetekre is. Így teheti meg.
Miért írunk alá üzeneteket a web3-ban?
A blokkláncok azon alapulnak „nyilvános kulcsú kriptográfia”, ahol a felhasználók egy nyilvános kulcsot és egy privát kulcsot birtokolnak, amelyek egy párt alkotnak. A nyilvános kulcs a tulajdonos személyazonosságát képviseli, a privát kulcs pedig titkos, lehetővé téve számukra, hogy igazolják, hogy birtokolják a kulcspárt.
Üzenet aláírásakor a privát kulcsot használja az aláírási algoritmusban, hogy egy aláírást kapcsoljon az üzenethez és a nyilvános kulcshoz. Senki sem tudja levezetni az Ön privát kulcsát, vagy hamisíthatja az Ön számára érvényes aláírást. Azonban bárki, aki ismeri a nyilvános kulcsát, könnyen ellenőrizheti, hogy az üzenetet az Ön privát kulcsa írta-e alá.
Röviden, ez ugyanaz a folyamat és az ötlet, mint a tranzakciók aláírása, azzal a különbséggel, hogy itt olyan üzenetek aláírására összpontosítunk, amelyek más célt szolgálnak: juttatás. Üzeneteket írunk alá kriptoalkalmazásokban, hogy begyűjtsük a felhasználói beleegyezést, ugyanúgy, mint amikor a való életben az írásos aláírását használná egy papírra. Ez a „fiat aláírás” kriptováltozata.
Az EIP-712 jelentősége
Az üzenetek aláírása nem új keletű dolog. Évek óta aláírhatjuk az üzeneteket, amelyek az idő múlásával fejlődve különböző formákat és formákat ölthetnek. Valójában a Ethereum Improvement Proposal 191 (EIP-191) 2016-ban nyújtották be, és bevezetett egy szabványt, amely lehetővé teszi az ember által olvasható üzeneteket, amelyet natívan támogatnak a Ledger eszközök. Az EIP-191 azonban elmaradt, az az, hogy a szabvány nem strukturálja az adatokat. Ez csak egy korlátlan hosszúságú adathalmaz az üzenet végén, ami megnehezíti a használatát. A gyakorlatban az üzenetek gyakran túl hosszúak, és végül csonkolják, és a felhasználó elveszíti a potenciálisan kulcsfontosságú információkat; gyenge UX.
Amint azt az elején írtuk Ethereum Improvement Proposal 712 (EIP-712): „Az adatok aláírása megoldott probléma, ha csak a bytestringek érdekelnek bennünket. Sajnos a való világban törődünk az összetett értelmes üzenetekkel.” - Nem tudnék jobban egyetérteni. Ahogy az üzenetek egyre összetettebb műveletek kiszolgálására terjedtek ki, üdvözlendő változás volt az EIP-712-ben meghatározott típusos adatszerkezetek bevezetése az üzenetekben.
Ez azt jelenti a felhasználók számára, hogy a fejlesztők most már elemzik az üzenetben lévő adatokat, és tudják, mi az, ami most elérhető a felhasználó számára. Az elemzés azt jelenti, hogy el tudja olvasni a tartalmat, mert tudja, hogyan épül fel. Ez megváltoztatja a felhasználói élményt, de biztonsági szempontból is, mivel most már ellenőrizhetem, hogy mit írok alá.
Visszatérve arra, hogy mire használják fel az üzeneteket, ha arra kéri Alice-t, hogy adjon Önnek konkrét engedélyt a pénztárcája tartalmára, mint alkalmazásfejlesztő, akkor ezt rendkívül egyértelműnek kell lennie, hogy maximalizálja az esélyeit a folytatásra. De ez több, mint egy konverziós arány optimalizálása.
Ha a biztonságra és a védelemre gondol egy ellenséges környezetben, egy csaló nyilvánvalóan a lehető legátláthatatlanabbá teszi ezt az üzenetet, hogy becsapja Alice-t, hogy engedélyezze a rosszindulatú műveletet. Az átláthatóság és annak lehetősége, hogy Alice kétszer is ellenőrizhesse, hogy mit ír alá, elengedhetetlen.
És itt jön a képbe az EIP-712. Az EIP előtt az aláírt üzenetek egy átlátszatlan hexadecimális karakterlánc volt, amelyet a felhasználó számára jelentett meg, kevés kontextussal az üzenetet alkotó elemekről.
Ezt aláírnád? Van ötleted, hogy mit engedélyezel itt?
Az EIP-712 specifikáció típusos adatstruktúrákat vezet be az üzenetekhez, amelyek lehetővé teszik, hogy ezeket a pénztárcák elemezze, és felhasználóbarát módon jelenítse meg Alice számára, hogy megalapozott döntést hozhasson. Ezen túlmenően, ez egy szabvány, és az egész iparágban átjárható: az EIP-712 támogatásával üzenetét a Ledger, a MetaMask, a Rainbow, Argent, a Coinbase Wallet tudja értelmezni.
Főkönyvi támogatás az EIP-712-hez
Először is, boldog napokat, a Ledger eszközök natív támogatással rendelkeznek az EIP-712 üzenetekhez, és fejlesztőként pontosan szabályozhatja, hogyan jelenjenek meg üzenetei az eszközön.
A Ledger eszközökön lévő üzenetek támogatásának alapvetően 3 szintje van:
1. szint: Vak aláírás
Ha Bob, egy alkalmazásfejlesztő nem használ EIP-712 üzeneteket, akkor Bob lényegében egy olvashatatlan hexadecimális karakterlánc aláírására kéri Alice-t: Bob megkéri Alice-t, hogy írjon alá valamit, amit el sem tud olvasni. vak-aláírás.
2. szint: Átlátszó aláírás
Az EIP-712 üzenet megvalósításával Bob előrelépést tesz a hexadecimális karakterlánctól az olvasható tartalom felé. Most már lehetővé teszi Alice számára, hogy elolvassa az üzenet tartalmát, azonban mivel az üzenet teljes tartalmát megjeleníti neki, nehéz észrevenni a kulcsfontosságú információkat, amelyek keverednek a műszaki információkkal. Átlátszó, de még nem tiszta.
3. szint: egyértelmű aláírás
Mivel az eszköz képes elemezni az üzenet tartalmát, a megjelenítési adatok megjelölésével egyértelmű aláírást érhetünk el. Tehát, feltéve, hogy Bob beállította a szükséges metaadatokat, Alice a következőket látja a Ledger-eszközén:
Sokkal jobb, mint egy hatszögletű húr, nem?
Egy másik kulcsfontosságú pont az, hogy mivel teljesen biztonságosan jelenik meg, különálló eszköz, amely nem módosítható, Alice 100%-ban biztos abban, hogy amit az eszközön lát, azt aláírja: egyetlen rosszindulatú program vagy rosszindulatú alkalmazás sem módosíthatja a számára megjelenített tartalmat. Ha az eszközön megjelenő tartalmak nem felelnek meg az elvárásoknak, biztonságban maradhat, és visszautasíthatja az üzenet aláírását.
Ahhoz, hogy ezt a továbbfejlesztett felhasználói élményt és extra biztonságot nyújthassa, Bobnak két dolgot kell tennie: adja meg, mely mezőket jelenítse meg a felhasználó számára, és adjon meg nekik egy szép, egyértelmű megjelenítési nevet.
Ha fejlesztőként szeretne csatlakozni Bobhoz, és megtenni az alkalmazásáért, itt van az összes dokumentum, és lényegében egy lehívási kérés létrehozása, amely lehetővé teszi a szerződés engedélyezőlistára helyezését a Ledger dApps Asset Registry-ben egy JSON-fájlon keresztül, amely tartalmazza:
- Kiválasztók, amelyek jelzik, hogy az eszköznek mely mezőket kell megjelenítenie Alice-nek,
- Minden választót jelöljön meg egy megjelenített névvel.
Ez nem kozmetika, ez egy jó gyakorlat
Azáltal, hogy engedélyezőlistára helyezi intelligens szerződését, és jelzi, hogy a Ledger eszközök hogyan jeleníthetik meg az üzeneteit, nemcsak jelentősen javítja a felhasználói élményt az alkalmazással való interakció során, hanem ami még fontosabb, mindannyiunkat megvéd a csalásoktól, és segít a helyes szokások kialakításában web3 ökoszisztéma.
Soha ne írjunk alá olyasmit, amit nem értünk.
Nélküled ezt nem tudjuk megtenni, segíts, hogy az egyértelmű aláírást normává tegyük.
- SEO által támogatott tartalom és PR terjesztés. Erősödjön még ma.
- PlatoAiStream. Web3 adatintelligencia. Felerősített tudás. Hozzáférés itt.
- A jövő pénzverése – Adryenn Ashley. Hozzáférés itt.
- Részvények vásárlása és eladása PRE-IPO társaságokban a PREIPO® segítségével. Hozzáférés itt.
- Forrás: https://www.ledger.com/blog/securing-message-signing
- :is
- :nem
- :ahol
- $ UP
- 1
- 2016
- 22
- 220
- a
- képesség
- Képes
- Rólunk
- erről
- teljesen
- Elérése
- át
- cím
- ellenséges
- algoritmus
- Minden termék
- lehetővé
- lehetővé téve
- lehetővé teszi, hogy
- már
- Is
- összeg
- an
- és a
- Másik
- bármilyen
- bárki
- app
- Alkalmazás
- jóváhagyás
- VANNAK
- Ezüst
- AS
- vagyontárgy
- At
- meghatalmazás
- alapján
- BE
- mert
- óta
- előtt
- Kezdet
- hogy
- Jobb
- között
- Bit
- blockchain
- Blockchain hálózat
- gabona
- épít
- de
- by
- TUD
- ami
- ellát
- esély
- változik
- Changer
- világos
- coinbase
- Coinbase pénztárca
- jön
- általában
- közlés
- bonyolult
- beleegyezés
- tartalmaz
- tartalom
- tartalom
- kontextus
- szerződés
- ellenőrzés
- Átalakítás
- létrehozása
- cryptocurrency
- DApps
- dátum
- Nap
- döntés
- Védelem
- részletes
- Fejlesztő
- fejlesztők
- eszköz
- Eszközök
- különböző
- digitális
- kijelző
- megjelenítő
- do
- dokumentáció
- Nem
- ne
- le-
- minden
- könnyen
- ökoszisztéma
- EIP
- végén
- Környezet
- alapvető
- lényegében
- Ethereum
- Még
- Kivéve
- várakozások
- tapasztalat
- kitett
- külön-
- tény
- Fields
- filé
- összpontosítás
- A
- kovácsol
- forma
- formák
- Előre
- ból ből
- Tele
- teljesen
- Továbbá
- játék
- játék-váltó
- gyűjt
- kap
- gif
- megy
- jó
- biztosít
- kéz
- boldog
- Kemény
- Legyen
- segít
- segít
- neki
- itt
- HEX
- övé
- Hogyan
- azonban
- HTTPS
- ember által olvasható
- i
- ötlet
- Identitás
- if
- fontosság
- javul
- javított
- javulás
- javuló
- in
- magában foglalja a
- jelez
- ipar
- információ
- tájékoztatták
- kölcsönható
- interoperábilis
- Bevezetett
- Bemutatja
- Bevezetés
- IT
- tételek
- csatlakozik
- jpg
- json
- éppen
- Kulcs
- Ismer
- Főkönyv
- Hossz
- szintek
- élet
- LINK
- kis
- Hosszú
- csinál
- Gyártás
- malware
- mód
- Mérkőzés
- max-width
- Maximize
- jelentőségteljes
- eszközök
- üzenet
- üzenetek
- Metaadatok
- metamaszk
- hiányzó
- vegyes
- több
- név
- bennszülött
- igények
- hálózat
- soha
- Új
- szép
- nem
- Most
- of
- gyakran
- on
- ONE
- csak
- átlátszatlan
- működés
- Művelet
- optimalizálás
- or
- Más
- ki
- felett
- saját
- pár
- Papír
- résztvevők
- engedély
- perspektíva
- Plató
- Platón adatintelligencia
- PlatoData
- pont
- szegény
- lehetséges
- potenciálisan
- gyakorlat
- pontosan
- elvek
- magán
- magánkulcs
- Probléma
- folyamat
- javaslat
- védelme
- Bizonyít
- bizonyul
- ad
- feltéve,
- nyilvános
- nyilvános kulcs
- cél
- Arány
- Olvass
- igazi
- való élet
- való Világ
- iktató hivatal
- jelentése
- kérni
- kötelező
- kapott
- biztonságos
- azonos
- csalások
- Titkos
- biztonság
- biztonság
- lát
- lát
- szolgál
- készlet
- formák
- ő
- rövid
- kellene
- előadás
- <p></p>
- aláírt
- jelentősen
- aláírás
- óta
- okos
- okos szerződés
- So
- valami
- különleges
- leírás
- meghatározott
- Spot
- standard
- meghatározott
- tartózkodás
- Lépés
- Történet
- Húr
- struktúra
- szerkesztett
- benyújtott
- ilyen
- szuper
- támogatás
- Támogatott
- Támogató
- Vesz
- tech
- feltételek
- mint
- hogy
- A
- azok
- Őket
- Ezek
- ők
- dolog
- dolgok
- Szerintem
- ezt
- azok
- bár?
- idő
- nak nek
- is
- Tranzakciók
- átruházás
- átment
- Átláthatóság
- átlátszó
- kettő
- típus
- megért
- sajnálatos módon
- egység
- korlátlan
- us
- használ
- használt
- használó
- User Experience
- barátságos felhasználói
- Felhasználók
- segítségével
- rendszerint
- ux
- érték
- ellenőrzése
- keresztül
- pénztárca
- Pénztárcák
- akar
- volt
- we
- Web3
- Web3 ökoszisztéma
- fogadtatás
- JÓL
- voltak
- Mit
- Mi
- amikor
- ami
- engedélyező lista
- WHO
- lesz
- val vel
- nélkül
- világ
- lenne
- írott
- év
- te
- A te
- zephyrnet