[Phase 1] HIP 61: 10 Word Verbal Confirmation

HIP: 61
title: 10 Word Verbal Confirmation
authors: @greenlucid
status: Phase 1
created: 2021-09-07
conflicts with: None
languages: EN

Simple Summary

Modify verbal confirmation phrase to use 10 words instead, with room to errors.


The proposal will allow submitters to fail at conveying up to two words in the verbal confirmation phrase. A sort of game is done to verify the correctness of the phrase, by removing up to two words, independently, from both the original phrase and the announced phrase, and asserting the phrases are the same.


This user made a profile submission , misreading one of the words, and it got challenged. She lost the challenge. Some time later, another user went through the same problem.


Increase the amount of words in a verbal confirmation phrase to 10.
Correctness of an announced phrase is done as follows:

  1. The original phrase is written down. Up to two words can be omitted, and the result is stored, with the resulting words respecting the remaining order.
  2. The very same process is done with the announced phrase, which is written down as the submitter announces it. The up to two words here are independent.
  3. Both results are asserted to be the exact same. If so, confirmation is correct, otherwise, it’s incorrect.


  • We can reasonably assume the shown submissions were valid in the spirit of PoH.
  • Using two extra words provides a buffer for mistakes to occur.
  • Making it work with a game, instead of hardcoding a given number of misorders, misreadings, etc, is easier to understand for verifiers.


PR on proof-of-humanity/poh-docs


The user has to say the 10 words that are shown on the screen when recording their video.

This slipped. This is not necessarily true now, as with this system, omissions are allowed. I removed the clause that disallows disorder and omissions, but the way this is expressed, “The user has to say the 10 words”, it may be excuse for rejection.

Also the “shown on the screen” is erroneous. The user reads the word sequence, so we could as well remove that since we got to make an edit here anyway.

How about, instead:

The user says the address-bound phrase, that contains 10 words. (…)

And then, change the original phrase wording I used to address-bound phrase everywhere else.

1 Like

what do you mean by “written down” in this case?

Trying to picture the process to the reader without getting too abstract.
I mean, “turn the sequence of words the submitters has said into a phrase”.

In the original writing, it said:

These words are the result of turning the submitter’s Ethereum address into base 2048 and then matching these with the BIP-039 dictionary of the same language that the user is using for the rest of the phrase.

Now, this is not the whole story. Addresses are 160 bits, base 2048 uses 11 bits per element. So, in the previous version, 88 bits from the address were used.
If you did what the policy says, you’d get 15 words (14.5). So, what happens with the missing 7 words? What is being pruned here? The first 7 words, or the last 7 words? This has to be written into the policy, so that whoever reproduces the submission gets the same result. @nicobilinkis.eth

After this proposal, it will be 5, though.

EDIT: So I checked the code.

When you “turn the address into base 2048”, I would assume you write the address. Then, starting from the end, convert 11 bits to a word, etc. In the end, the most significant element will be guaranteed to not be larger than 63.

So, it works as expected. I checked a bunch of PoH profiles and the first word is always under 63 (it starts with an a). I was assuming for a moment that it encoded it in another way. The issue with this is that, then, we weren’t getting 88 bits, but 82 bits.

Anyway, now that I know how it was expected to work, and seeing my assumed interpretation was correct, I think it should be fine to go ahead and make this meaning explicit? Write something like:

The last 5 words are excluded from the address-bound phrase.

1 Like

I believe its a great idea.