Это руководство предназначено только для образовательных целей, я не несу ответственности за любые убытки, ущерб или другие обязательства, которые могут возникнуть в результате использования любой информации/кода, представленных здесь (или где-либо еще).

Я ни при каких обстоятельствах не являюсь профессионалом Javascript (или JS Ninja/Expert)!

Код не готов к работе! (только в учебных целях)

В этом руководстве я покажу вам, как преобразовать адрес ETH в адрес MAN (Mainnet).

Языком, выбранным для этого руководства, будет JavaScript с Node.js в качестве среды выполнения. (в качестве предварительного условия вам необходимо установить Node.js, https://nodejs.org/en/, обязательно также установите npm, редактор типа https://code.visualstudio.com/ и создайте папку, в которой у нас будет проект, где-нибудь)

Давайте сначала начнем с открытия командной строки.

Чтобы открыть терминал, вы можете ввести cmd в начальную строку поиска, начальная панель поиска находится в левом нижнем углу экрана (если темы не применялись).

После открытия терминала переходим в созданную нами папку (в моем случае AddressCoverter): cd AddressConverter

Теперь мы собираемся создать новый пакет npm, запустив npm init в командной строке (указав на папку по вашему выбору, я буду использовать свою папку на рабочем столе для этого теста с именем AddressConverter) и предоставить правильную информацию (или пропустить это, нажав Enter и написав yes в конце «настройки» (это нормально?), он должен выглядеть примерно так:

Кроме того, выполните следующие команды в cmd, который вы открыли в расположении пакета (мы устанавливаем некоторые пакеты, которые будем использовать для нашего мини-приложения):

npm install buffer

npm install polycrc

npm install bs58

Теперь откройте Visual Studio Code в этой папке, создайте файл с именем index.js, установите все необходимые расширения (js lint или все, что предлагает Visual Studio Code для node.js/js) и давайте начнем программировать.

Начнем с включения модулей, которые мы ранее установили:

Теперь давайте создадим функцию, которая проверяет, является ли предоставленный нами адрес ДЕЙСТВИТЕЛЬНЫМ (имеет допустимые символы, мы будем использовать для этого регулярное выражение, убедитесь, что предоставленный адрес начинается с 0x, после чего за ним следует строка из 40 шестнадцатеричных символов: a…f , A…F, 0…9, модификатор i используется для выполнения сравнения без учета регистра):

Теперь мы вызываем другую функцию с именем getConvertedManAddress, которая преобразует ее в формат Matrix AI Network Mainnet (Base58, исключаемые символы: 0, O, I, l):

Вся программа (https://github.com/CognitiveProcessing/Matrix-AI-Network-Code-Snippets/blob/main/js/ethToManAddressConverter.js):

Для `0x5Fd71CF221e450E619638338bD21871229835261` он должен вернуть `MAN.2LSfiVSmKx8PD9YUbdVGuHEhDY3Jz`

Для `0x5Fd71CF221e450E619638338bD21871229835261z` должно быть возвращено `0x5Fd71CF221e450E619638338bD21871229835261z не является действительным адресом ETH`

Для получения дополнительной документации по используемым пакетам вы можете проверить: https://www.npmjs.com/package/bs58

https://www.npmjs.com/package/buffer

https://www.npmjs.com/package/polycrc

Также посетите официальный портал разработчиков Matrix AI Network: dev.matrix.io.