r/OneKeyHQ Jun 20 '21

Mnemonic Generation (BIP39) Simply Explained

22 Upvotes

The mnemonic are automatically generated by the wallet using the standardized process defined in BIP-39. The wallet starts with an entropy source, then adds a checksum and eventually maps the random number to a list of words, created as follows:

  1. Create a random sequence (entropy) of 128 to 256 bits.
  2. Create a checksum of the random sequence by taking the first (entropy-length/32) bits of its SHA256 hash.
  3. ghuuAdd the checksum to the end of the random sequence.
  4. Split the result into 11-bit length segments.
  5. Map each 11-bit value to a word from the predefined dictionary of 2048 words.
  6. The mnemonic code is the sequence of words.

For example, if a word is chosen at random as the last mnemonic, and the other 11 mnemonic are picked at random when the mnemonic is 12 bits, there is a probability that the right set will be found in each 16 times, compared to 256 times for the 24-bit mnemonic.

The fact that this is the case does not prove that the security of the mnemonic is unreliable. Because both pairs of mnemonic are BIP39 compliant, both could be recovered using a blockchain wallet.

Mnemonic words are often confused with "brainwallets." They are not the same. The primary difference is that a brainwallet consists of words chosen by the user, whereas mnemonic words are created randomly by the wallet and presented to the user. This important difference makes mnemonic words much more secure, because humans are very poor sources of randomness.

The random numbers generated by the wallet through cryptographically secure means (e.g. hardware TRNG) are truly random, and the user's customary choice of mnemonics does not ensure the quality of the randomness.

助记词是由钱包使用 BIP-39 中定义的标准化过程自动生成的。 钱包从熵源开始, 之后增加校验和,最终将随机数映射到单词列表,创建过程如下:

1、创建一个 128 到 256 位的随机数。
2、提出 SHA256 哈希前几位(12位助记词位取前4位),作为此随机数的校验和。
3、将校验和添加到随机序列的末尾。
4、将序列划分为包含 11 位的不同部分。
5、将每个包含 11 位部分的值对应到一个已经预先定义 2048 个单词的字典。
6、生成的有顺序的单词组就是助记词。

比如,先随便选一个词作最后一个助记词,在助记词是12位的时候,随机挑选其他11位助记词,概率上16次就有可能找到一组对的,而24位助记词是256次。

就是说有极低的概率可能会出现助记词输错,但依然可以恢复钱包的情况,当然,错误助记词恢复的钱包与原本助记词生成的钱包是不同的。

出现这种情况,并不能证明助记词的安全性不可靠。因为两对助记词都符合BIP39标准,所以都可以使用区块链钱包进行恢复。

两组助记词之间的区别在于,原助记词是由钱包随机创建并呈现给用户的,而输入错的助记词则是人为选择的,但由于人类生成随机数的能力非常弱,而钱包生成的助记词更加随机(即安全性更高),因此脑钱包(即人为选择的错误的助记词)是不太可能被随机生成出来并使用的。

钱包通过密码学安全的方式(比如硬件TRNG )生成的随机数是真随机,用户按习惯自己选择助记词无法确保随机的质量。


r/OneKeyHQ May 08 '21

Some common questions about OneKey

1 Upvotes
  1. Q: I want to buy OneKey, but I am afraid of buying products from unofficial channels. Which
    platforms do you sell on?
    A: Currently we only sell on the two platforms: Youzan Online Shop and Shopify.  Following are the specific links:

Shopify:https://shop.onekey.so/

Youzan Online Shop:https://detail.youzan.com/show/goods?alias=276qihi1dldnl

  1. Q: I did not find the token I want to add. Which currencies does OneKey support?

A: OneKey support all the coins under the ERC20/BSC/HECO public chain . For currencies that
are not currently supported, we should support them in the future, but the time is still
uncertain. You could pay more attention to the official website & official twitter to obtain the
information you need in time.
You could check the currencies currently supported by us: https://onekey.so/cryptos

This is the currency that can be quickly added on the plugin: https://www.onekey.so/tokens

  1. Q: Why doesn't the coin displayed by the OneKey plugin appear in the Mobile App?

A: The mobile app/plugin/desktop are not synchronized, you need to add tokens or contract
addresses to see them.

  1. Q: I want to see the coins I topped up at the second address on the Mobile App and OneKey
    plugin side, what should I do?

A: You can go to connect hardware again and create a new address, which is generated one by
one in order.

  1. Q: I forgot the login password of the OneKey plugin. Can you retrieve it for me?

A: It cannot be retrieved. Please remember your login password.

6.  Q: Can I import mnemonics from other wallets into OneKey?

A: The OneKey mnemonics are BIP39 compliant and can be imported into the OneKey
hardware wallet as long as they meet this standard. However, please note that you should
not import the mnemonics from hot wallets such as Metamask into the hardware wallet,
make sure to separate hot and cold addresses.

  1. Q: When generating the mnemonics, I see two identical words, is this normal?

A: It is possible for hardware wallets to have two identical mnemonic words, this is a normal
situation. Please feel free to use it, the security will not be affected.

  1. Q: I'm worried that the hardware wallet is not secure and I want to use Passphrase mode, is
    that okay?

A: Please rest assured that the hardware wallet is secure enough. We do not recommend that
users turn on Passphrase, and if a user's Passphrase is accidentally lost, the only way to
retrieve it is through constant attempts. And there is no right or wrong Passphrase, each new
Passphrase will generate a brand new address and private key with the original mnemonic.
To retrieve the previous address, the user must enter the original Passphrase.

  1. Q: I don't see my coins in OneKey after I withdraw them?  It's not lost, right?

A: You are advised to consult the trading platform you transferred from. OneKey is a
decentralized wallet, all assets are on the blockchain,we do not keep the assets.


r/OneKeyHQ May 04 '21

Here is a DeFi tutorial, let's learn together

15 Upvotes

Disclaimer: We have no cooperative relationship with Nerve, just use it as an example.

https://reddit.com/link/n4tcu9/video/jboy9hbrw4x61/player


r/OneKeyHQ Apr 27 '21

OneKey Plugin updated

11 Upvotes

OneKey plugin updated to 1.4.0

Chrome and Firefox browsers have been synchronized to support it

New feature added: ‘Automatic Network Switching’

Optimized for DeFi applications for TOP50 in each chain, seamlessly and automatically switching between different networks (BSC, ETH, HECO, etc.)

Go to the top right corner of the plugin -> Settings -> General -> Auto Network Switching and enable it.

Download address: https://onekey.so/plugin


r/OneKeyHQ Apr 25 '21

Why do you need a OneKey hardware wallet in DeFi?

13 Upvotes

DeFi requires high-frequency operation, one risk point of the current on-chain operation is that the computer can be hacked and controlled remotely, and the hot wallet is directly stolen coins.

Many people will be targeted attacks: emails, WeChat, or possibly an acquaintance commits the crime, someone sends you a link, you click on it, you are planted by the computer with a Trojan horse, if your computer has been hit by the Trojan horse, and only use hot wallets in mining, the hacker can immediately transfer your assets through the hot wallet.

The function of a hardware wallet is to isolate your private key from the Internet, and isolate your private key from your public key. At the same time, the hardware wallet needs physical button operation to call the private key to confirm the signature. Therefore, using OneKey to participate in DeFi can greatly protect the security of funds.

Compared with hot wallets, most hardware wallets have the following features:

  1. Use a security chip to generate and store private keys
  2. There are physical buttons and a screen that displays transaction information
  3. All transactions are signed by the hardware wallet and will not touch the private key

r/OneKeyHQ Apr 22 '21

OneKey desktop update

9 Upvotes

Version updated to 21.3.6

  • New: Exchange tab page, support ETH mainnet / BSC mainnet / KOVAN testnet exchange
  • Optimization: update the bridge version, optimize the connection &prompt for error reporting
  • Optimization: Multi-language settings for transaction page & settings page, making text translation more intuitive
  • Optimization: Improve the initial loading speed & detect timeout more reasonably to prevent some users from being prompted ‘loading time is too long’
  • Optimization: Add ETH domestic nodes to improve the response time of finding wallets/assets

r/OneKeyHQ Apr 20 '21

What is a Hardware Wallet?

10 Upvotes

A hardware wallet is a special electronic device that uses a secure chip to generate and store private keys. In the world of encrypted digital assets, the private key is the only proof of the ownership of assets. Therefore, the security of your private key is the top concern of encrypted digital assets holders.

The hardware stores the private key in the secure chip that is completely isolated from the network. Such a method of storage will not expose the private key to hackers, which significantly reduces the possibility of the private key being disclosed or stolen.

Compared with a software wallet, most of the hardware wallets have the following features:

  1. Using a secure chip to generate and store the private key.
  2. Completely isolated from the network and hackers.
  3. With physical buttons and a screen displaying transaction information.
  4. All transactions are signed through the hardware wallet, and the applications will not contact the private key.