Bitcoin Forum
June 22, 2024, 12:51:52 AM *
News: Voting for pizza day contest
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Base58 или Base57?  (Read 926 times)
Coin-1 (OP)
Legendary
*
Offline Offline

Activity: 2492
Merit: 2232



View Profile
September 15, 2017, 01:58:24 PM
 #1

Все знают, что Bitcoin-адреса кодируются в Base58, однако цифра "1" в некоторых шрифтах (например, в Courier New) почти неотличима от прописной латинской буквы "l". Не лучше ли использовать Base57?

Base64:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

Base57:
ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz23456789

Цифру "1" следует убрать из Base58.
ligor
Full Member
***
Offline Offline

Activity: 1246
Merit: 138


Hodl DeepOnion


View Profile WWW
September 15, 2017, 03:17:50 PM
 #2

Все знают, что Bitcoin-адреса кодируются в Base58, однако цифра "1" в некоторых шрифтах (например, в Courier New) почти неотличима от прописной латинской буквы "l". Не лучше ли использовать Base57?

Base64:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

Base57:
ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz23456789

Цифру "1" следует убрать из Base58.

Ну так прописной латинской буквы "l" и нет в этих кодировках, так что если есть сомнения: 1 это или l - смело выбирайте 1.

Quote
Base58 .... Исключены 0 (ноль), O (заглавная латинская o), I (заглавная латинская i), l (маленькая латинская L). Также исключены символы + (плюс) и / (косая черта), которые при кодировании URL могут приводить к неверной интерпретации.

Coin-1 (OP)
Legendary
*
Offline Offline

Activity: 2492
Merit: 2232



View Profile
September 17, 2017, 06:00:31 PM
 #3

Понятно, что буквы "l" нет в Base58, но подход "если вы видите символ, похожий на прописную латинскую букву l, то пишите цифру 1" неправильный. И заглавная латинская буква "O", и цифра "0" - оба этих символа, а не один из них - были убраны из Base64 именно для устранения разночтений.

Разумеется, сейчас уже в Bitcoin ничего не менять не будут, но Base57 может быть использован для последующих альткойнов.
awoland
Legendary
*
Offline Offline

Activity: 1498
Merit: 1021

Was mich nicht umbringt macht mich stärker [F.N.]


View Profile WWW
September 20, 2017, 06:27:39 AM
 #4

Если вы видите то, чего на самом деле нет, значит проблемы на вашей стороне...

Was mich nicht umbringt macht mich stärker [F.N.]
Coin-1 (OP)
Legendary
*
Offline Offline

Activity: 2492
Merit: 2232



View Profile
September 21, 2017, 03:00:04 AM
 #5

Откройте, например, популярную программу Notepad++ (в которой по умолчанию шрифт Courier New) и убедитесь, что цифра "1" почти неотличима от прописной латинской буквы "l". Проблема в кодировке Base58, а не в том, что человек не знает, что буквы "l" нет в Bitcoin-адресах. Следует убрать цифру "1".
fulinov
Full Member
***
Offline Offline

Activity: 231
Merit: 100


View Profile
September 21, 2017, 07:06:12 AM
 #6

Откройте, например, популярную программу Notepad++ (в которой по умолчанию шрифт Courier New) и убедитесь, что цифра "1" почти неотличима от прописной латинской буквы "l". Проблема в кодировке Base58, а не в том, что человек не знает, что буквы "l" нет в Bitcoin-адресах. Следует убрать цифру "1".
Это проблема Notepad++ или шрифта, причем здесь base 58? А если завтра появится шрифт, в котором половина символов друг от друга не отличимы, то что, изобретать base 2? Японцы вообще иероглифами пишут и не парятся 曜際換新   Grin
TechPriest
Sr. Member
****
Offline Offline

Activity: 377
Merit: 282


Finis coronat opus


View Profile
September 21, 2017, 11:06:37 PM
 #7

Откройте, например, популярную программу Notepad++ (в которой по умолчанию шрифт Courier New) и убедитесь, что цифра "1" почти неотличима от прописной латинской буквы "l". Проблема в кодировке Base58, а не в том, что человек не знает, что буквы "l" нет в Bitcoin-адресах. Следует убрать цифру "1".

так а какая проблема? В кодировке есть только "1". Видите код в base58 знайте что там могут быть только единицы.
Здесь есть проблема человека, а не проблема кодировки. Даже проблема ленивого или невнимательного человека.

In science we trust!
fulinov
Full Member
***
Offline Offline

Activity: 231
Merit: 100


View Profile
September 22, 2017, 11:36:37 AM
 #8

В base 58 есть "i". В base 58 нет 4 символов: "0", "O", "l" и "I".
Coin-1 (OP)
Legendary
*
Offline Offline

Activity: 2492
Merit: 2232



View Profile
September 24, 2017, 12:27:26 PM
 #9

Откройте, например, популярную программу Notepad++ (в которой по умолчанию шрифт Courier New) и убедитесь, что цифра "1" почти неотличима от прописной латинской буквы "l". Проблема в кодировке Base58, а не в том, что человек не знает, что буквы "l" нет в Bitcoin-адресах. Следует убрать цифру "1".

так а какая проблема? В кодировке есть только "1". Видите код в base58 знайте что там могут быть только единицы.
Здесь есть проблема человека, а не проблема кодировки. Даже проблема ленивого или невнимательного человека.
А почему тогда из Base64 убрали и заглавную букву "O", и цифру "0", а не один из этих символов? Как раз для того, чтобы снять вопросы о невнимательности пользователей Bitcoin.
Coin-1 (OP)
Legendary
*
Offline Offline

Activity: 2492
Merit: 2232



View Profile
September 24, 2017, 12:32:10 PM
 #10

Откройте, например, популярную программу Notepad++ (в которой по умолчанию шрифт Courier New) и убедитесь, что цифра "1" почти неотличима от прописной латинской буквы "l". Проблема в кодировке Base58, а не в том, что человек не знает, что буквы "l" нет в Bitcoin-адресах. Следует убрать цифру "1".
Это проблема Notepad++ или шрифта, причем здесь base 58? А если завтра появится шрифт, в котором половина символов друг от друга не отличимы, то что, изобретать base 2? Японцы вообще иероглифами пишут и не парятся 曜際換新   Grin
Всё-таки Courier New существует уже давно и это очень распространённый шрифт. Кстати, в этом шрифте прописная английская буква "l" (эл) легко отличима от заглавной английской буквы "I" (ай), чего не скажешь, например, о шрифте Arial.

По всей видимости, при разработке кодировки Base58 учитывался только шрифт Arial или Verdana, остальные популярные шрифты игнорировались.
yaroslav195
Full Member
***
Offline Offline

Activity: 448
Merit: 109


View Profile
September 25, 2017, 11:51:35 AM
 #11

Сначала был Base64. Исключены 0 (ноль), O (заглавная латинская o), I (заглавная латинская i), l (маленькая латинская L). Также исключены символы + (плюс) и / (косая черта).
Зачем убирать 1, зная, что в этом алгоритме нет l и i ?
KostiaSA
Jr. Member
*
Offline Offline

Activity: 34
Merit: 3


View Profile
September 25, 2017, 07:18:02 PM
 #12

Вся дискуссия не имеет смысла, потому что адрес биткоина включает в себя контрольную сумму, поэтому нельзя перепутать цифры или буквы и заслать битки в никуда. Причем, у биткоина сделано более правильно, чем у эфира, потому что контрольная сумма вычисляется по разному для тестовой и боевой сети.
Coin-1 (OP)
Legendary
*
Offline Offline

Activity: 2492
Merit: 2232



View Profile
September 29, 2017, 12:11:36 AM
 #13

Сначала был Base64. Исключены 0 (ноль), O (заглавная латинская o), I (заглавная латинская i), l (маленькая латинская L). Также исключены символы + (плюс) и / (косая черта).
Зачем убирать 1, зная, что в этом алгоритме нет l и i ?
А зачем тогда убирать цифру "0", зная, что в этом алгоритме нет заглавной английской буквы "O"? И откуда простому пользователю Bitcoin знать, какие из похожих символов используются в кодировке Base58?
Coin-1 (OP)
Legendary
*
Offline Offline

Activity: 2492
Merit: 2232



View Profile
September 29, 2017, 12:16:59 AM
 #14

Вся дискуссия не имеет смысла, потому что адрес биткоина включает в себя контрольную сумму, поэтому нельзя перепутать цифры или буквы и заслать битки в никуда. Причем, у биткоина сделано более правильно, чем у эфира, потому что контрольная сумма вычисляется по разному для тестовой и боевой сети.
Смысл дискуссии в том, что для устранения разночтений было бы лучше, если бы в Base58 не было цифры "1".

В топике прозвучал сильный контр-аргумент про то, что могут быть и другие менее популярные шрифты, в которых будут визуально схожи не только символы "0", "O", "1", "l", "I".
igordata
Full Member
***
Offline Offline

Activity: 252
Merit: 103



View Profile WWW
September 29, 2017, 10:10:42 PM
 #15

а нехрен адреса ручками набирать
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!