Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NEW FEATURE PROPOSAL: ALGORAND MULTI-LANGUAGE PASSPHRASE SUPPORT #748

Open
wants to merge 17 commits into
base: develop
Choose a base branch
from

Conversation

kcelestinomaria
Copy link

@kcelestinomaria kcelestinomaria commented Mar 20, 2023

This is a new feature proposal, to enable multi-language support for Algorand Wallet Passphrases. It was raised as an issue here: algorand/go-algorand#5215 .

This PR needs a review before adoption. Here are the issues:

  • I changed the whole mnemonic code structure as it previously was written to default support for English, this has broken some things, and I had to add some helper functions, some unused, so helper.ts, index.ts and mnemonic.ts needs some deeper look and evident refactoring. I changed the typescript files that contained wordlists into json files.
  • All languages I added, were based on the most visibly active and large communities on Algorand + most spoken non-English languages on the web.


The English wordlist selected here remains unchanged
All other wordlists except Arabic and Indonesian, were originally done by Bitcoin developers under BIP-39
Arabic wordlist has been selected from https://arabeyes.org - Online Arab Linux/Unix Community
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a more concrete link for the Arabic wordlist? I wasn't able to find the list. Similar remark regarding Indonesian.

Copy link
Author

@kcelestinomaria kcelestinomaria Mar 22, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here is where I sorted them from, for Arabic find github repo here: https://github.com/a3f/arabic-wordlists .

I used the Arabeyes wordlist, as the community there had worked on a technical dictionary already with Arabic words, see Arabeyes here: https://arabeyes.org/Download_technical_dictionary . However, as you can see from the Arabic Wordlist repo, there are many other options i.e

For Indonesian, here is the link: https://github.com/geovedi/indonesian-wordlist . But, as you can see, Google Code Archive shelved the links for the wordlists. I added the Indonesian wordlist for 2011 - Google Code Archive.

Thanks! @tzaffi

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I corrected and added concrete links to the files.
One quick question, do you think it is necessary to add entropy functions for the wordlists? Thanks.

Add concrete links for Arabic wordlist and Indonesian wordlist
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants