Comments (4)
Yeah, unfortunately EIPs don't have any sort of i18n horizontal review so this wouldn't have really been considered about if what's described is the right approach. To date, most wallets just display the statement that's sent over by the site so if the site chooses to address i18n solutions then it will work otherwise the wallets aren't going to do translations and thereby not address the concern.
I see your point, and ideally this should have been addressed, but given much of the web3 communities are new to standards development processes they'll likely just have to relearn why this horizontal processes exist in most other SDOs.
Luckily I don't believe EIP-4361 nor CAIP-122 have been finalized so let me see if they'd be open to modifying it so that this can be handled via the server side since they are the one who produce the statement that's displayed in the wallet anyways.
from caips.
I see where this solution is coming from, thank you. But IMHO, this replaces small complexity on the service side with large complexity on the wallet side, which is now expected to translate an arbitrary free text prompt into the user's language. It also opens up interesting threat models.
The "standard" solution would look like:
"statement-en": "English text",
"statement-es": "Spanish text"
with the wallet picking its local language if available, or a default one. This could even be backward compatible with existing solutions by adding these elements. (Language tags are standardized of course.)
from caips.
@yaronf CAIP-122 is a multi-chain successor to EIP-4361, with explicit statement about i18n:
After successfully parsing the message into ABNF terms, translation MAY happen at the UX level per human language
The real reason is that having multiple languages opens up a can of worms wrt to particular wording in national languages. It adds to the struggles of adoption (dictionaries per language, using a language field to validate a signed message), and adds little to the end goal: having a SIWx prompt properly localised in (add by) a user's wallet.
from caips.
PRs welcome?
from caips.
Related Issues (20)
- CACAO v2/v3 confusion and varsig - are v3/varsig stale? HOT 1
- CAIP-122: address or account_id? HOT 2
- CAIP-2: chain ID alias HOT 2
- [CAIP-74] Signature Metadata type is not well defined HOT 1
- https://support.exodus.com/support/en/articles/8598833-walletconnect-in-exodus-mobile#qr-code کیف پول اکسود وس HOT 1
- 2
- 2
- [Publishing] Link to post-final updates, extensions, and proposed replaces from final CAIPs?
- [CAIP-275] - chain-specific resolution corner-case HOT 1
- Browser Wallet Messaging for Extensions (window.dispatchEvent)
- Browser Wallet Messaging for Iframes (window.postMessage)
- Browser Wallet Messaging for Extensions (externally_connectable)
- [CAIP-25] - Pass of editing to clarify "persistance" requirements on both sides
- [CAIP-25] - Refactor "requiredScopes" to suggest but not require connection breakage
- [tracking issue] `wallet_getSession` method needed for feature parity between legacy concurrent CAIP-25 and single-session CAIP-25 (see PR 285)
- [tracking issue] `wallet_revokeSession` method needed for feature parity between legacy concurrent CAIP-25 and single-session CAIP-25 (see PR 285)
- Ууу HOT 1
- [tracking issue] CAIP-25 in sessionId-mandatory mode and sessionId-optional CAIP-25 are confusing HOT 1
- [tracking issue] CAIP-25 needs a clearer definition of trust criterion for sharing informative error handling
- CAIP-104 rendering broken
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from caips.