@echo off
chcp 866
cls
echo Скрипт проверки транзакции блокчейн-реестра. Перед выполнением проверки требуется подготовка блокчейн-реестра (см. соответствующий скрипт в папке).
set /p CHAINNUMBER="Введите номер электронного реестра, включая ноль в начале: "

echo Запрос количества скопированных голосов в текущем электронном реестре № %CHAINNUMBER%:
bin\multichain-cli.exe %CHAINNUMBER% -rpcconnect=127.0.0.1 -rpcport=1%CHAINNUMBER% -rpcuser=edg -rpcpassword=RunWhiteBear liststreamkeys root

set /p TRANSACTION="Введите номер идентификатора транзакции вашего голоса: "

echo Запрос наличия транзакции в скопированном электронном реестре, декодирование данных в транзакции с помощью опубликованного приватного ключа голосования (публикуется после окончания голосования):

bin\multichain-cli.exe %CHAINNUMBER% -rpcconnect=127.0.0.1 -rpcport=1%CHAINNUMBER% -rpcuser=edg -rpcpassword=RunWhiteBear getstreamitem root %TRANSACTION% | bin\jq-win32.exe -r ".data" | bin\xxd -r -p | bin\openssl.exe  smime -decrypt -inkey pg-priv.key -inform der | bin\jq-win32.exe

echo Осуществляется попытка расшифровки данных транзакции с помощью закрытого ключа электронного голосования (публикуется после окончания голосования). Вывод данных форматируется в JSON формате. В соответствии с заполненными бюллетенями, порядковый номер Вашего голоса содержит цифровой идентификатор выбранного Вами кандидата с сайта по прямым ссылкам вида https://pg.er.ru/candidate/идентификатор
echo.
echo Обращаем внимание, что ответ с кодом -710 This transaction was not found in this stream может говорить о том, что копирование электронного реестра не завершилось, вследствие чего транзакция не была найдена. Дождитесь завершения копирования реестра.
pause