# fix: Live Share codes are Crockford base32, like 7KQ-4MZ-9XR, in place of words · clo/snowbound

[View on GitCafe](https://git.cafe/clo/snowbound/commit/4c59412d43f497f29b4c3d4b9695134f634cf17f)

Repository: [clo/snowbound](https://git.cafe/clo/snowbound)

Visibility: public

Requested revision: 4c59412d43f497f29b4c3d4b9695134f634cf17f

Requested commit: 4c59412d43f497f29b4c3d4b9695134f634cf17f

Commit: 4c59412d43f497f29b4c3d4b9695134f634cf17f

Tree: 36a33513df8e6702577e1bd1fe1edfc298201f41

Author: clover caruso

Committer: clover caruso

## Message

```
fix: Live Share codes are Crockford base32, like 7KQ-4MZ-9XR, in place of words

Two random words made codes like "678-scary-virus". A code is now nine
symbols of Crockford base32 (0-9 and A-Z without I, L, O and U), shown in
threes: two numbering the relay's room (it numbers 1 to 999, which two
symbols hold), six of secret, 30 bits, and a check symbol, the symbols
weighted 1 to 8 modulo 31, which refuses a mistyped symbol or two swapped
before it spends one of the relay's tries. Reading ignores case, hyphens and
spaces and takes I and L for 1, O for 0.

With five tries before a code burns, a guess at one code succeeds with
odds 5 in 2^30, about 1 in 215 million; every burn draws a new secret, and
the relay's lockout leaves one address about ten tries an hour. The relay
is unchanged: rooms are still code-<n>. A word code and a new code each read
as malformed on the other version, before any network.

Assisted-by: claude-opus-5.5

```

## Parents

- [e1eb16f90d89d57b6c0a1003cb2a9468c121c530](https://git.cafe/clo/snowbound/commit/e1eb16f90d89d57b6c0a1003cb2a9468c121c530?format=markdown)

[Source at this commit](https://git.cafe/clo/snowbound/tree/4c59412d43f497f29b4c3d4b9695134f634cf17f?format=markdown)
