0. ArtemSerov 16 14.01.20 10:57 Сейчас в теме

1C и защищенное хранение данных на блокчейне: модуль интеграции от Acryl Platform

Модуль интеграция 1С и блокчейн платформы "Acryl Platform" без использования внешних компонент. Под катом реализация механизмов Base58, Blake2b, Keccak, Curv25519 (the elliptic curve Diffie–Hellman) в подсистеме "Crypt", примеры генерации ключей, адресов, подписи транзакций, запись данных в блокчейн, чтение и восстановление данных из блокчейн. Код открыть. Лицензия MIT.

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. kiv1c 553 23.01.20 10:35 Сейчас в теме
Долго думал. Вот я заплатил 0.23$ (16 рублей) аж за 1 документ. Записал в блокчейн. И что мне это дает? А если документов достаточно много, траты уже ощутимые. А польза неясна.
2. ArtemSerov 16 23.01.20 12:47 Сейчас в теме
(1) Стоимость в первую очередь определяется объемом информации, в данном примере сериализован документ со всеми реквизитами и табличными частями. Вы можете записывать произвольную выборку данных, формировать отчеты и данные табличного документа записать в блокчейн, после записи ваши данные не будут утеряны или изменены.

Рассмотрим пример на задаче: имеется база УНФ, необходимо реализовать защиту от подделки продукции, для этого нам необходимо из документа "СборкаЗапасов" записать все серийные номера в блокчейн, а так же движения серийных номеров, дату и место продажи (если филиал производителя) или дату и ИНН партнера (если реализация через партнера), Допустим мы имеем выпуск продукции в 100 номеров, стоимость записи их составит ~0.54$, стоимость записи сводной продажи всех номеров (100 шт) по филиалам и партнерам ~0.67, то есть, для реализации прозрачной системы защиты от подделок, где любой желающий может отследить движение серийных номеров и проверить товар перед покупкой вам потребуется заложить в себестоимость 1.21$ на 100 единиц продукции.
3. Dach 295 23.01.20 16:00 Сейчас в теме
самом децентрализованном, а значит самом отказоустойчивом блокчейне в СНГ на 2020 год


пруфы в студию, плз

В блокчейне ACRYL стоимость монеты стабильная и постоянно поддерживается усилиями компании на уровне $13


Каким образом? Ссылку на ваш white paper, плз. Что у вас в основе - PoW или PoS? Ваша монета майнится или нет? Пулы и ноды?

И главные вопросы - чем вы лучше многих сотен соскамившихся проектов? И почему мы должны вдруг нести вам свои конфиденциальные данные?
5. ArtemSerov 16 24.01.20 10:14 Сейчас в теме
(3)
пруфы в студию, плз

Peers list, отражающий количество нод в сети в реальном времени доступен в explorer: https://explorer.acrylplatform.com/peers

Каким образом? Ссылку на ваш white paper, плз. Что у вас в основе - PoW или PoS? Ваша монета майнится или нет? Пулы и ноды?

В основе лежит LPoS, но в данной статье не рассматривается майнинг вообще, никто не кого не призывает майнить. Всю информацию о сети, нодах вы можете найти на официальных ресурсах Acryl

И главные вопросы - чем вы лучше многих сотен соскамившихся проектов? И почему мы должны вдруг нести вам свои конфиденциальные данные?

В предыдущем ответе рассматривался пример с серийными номерами, данные о которых не являются конфиденциальными, однако Конфиденциальные данные останутся конфиденциальными если вы будете записывать информацию в зашифрованном виде, используя какой либо алгоритм шифрования (Например AES 256 CBC), в данном примере не рассматривается шифрование данных, это тема отдельной публикации.
4. Dach 295 23.01.20 16:13 Сейчас в теме
Выглядит все это как отчаянная попытка привлечь пользователей ну хоть откуда-нибудь, даже из этой 1С

https://www.coingecko.com/ru/Криптовалюты/acryl
https://coincost.net/currency/acryl

А койнмаркеткап вас даже вниманием не удостоил:

https://coinmarketcap.com/currencies/acryl/

13$ говорите? Ну-ну.... Расходимся, посоны. Скамеров подвезли
GreenDragon; +1 Ответить
6. ArtemSerov 16 24.01.20 12:11 Сейчас в теме
(4) В данной статье не рассматривается криптотрейдинг, в целом блокчейн платформа Acryl про запись данных, стоимость в 13$ так же закреплена в web клиенте, вы всегда сможете приобрести единицы записи по фиксированной стоимости.
7. GreenDragon 29.01.20 15:55 Сейчас в теме
(4) Однозначно.
"Mining with Acryl does not require large investments, power, and energy consumption, as it is carried out through a physical node of the network - ACRYL NODE" Какие парни решили загнать токены за usd13
8. GreenDragon 29.01.20 16:09 Сейчас в теме
Мне вот интересно - какой кейс у этого решения? Отправлять документ в децентрализованное хранилище мне кажется категорически странной идеей. Какую реальную бизнес задачу я могу решить с помощью этого решения?
9. palsergeich 29.01.20 19:43 Сейчас в теме
(8)Ты сделаешь разработчиков богаче
10. RegrZ 57 30.03.20 03:48 Сейчас в теме
Если я правильно понял, чтобы записать один документ в этот блокчейн, надо иметь 1 токен этого пенопласта, стоимость $13, каждая модификация объекта это новая транзакция со всеми издержками, получается что-то вроде платной истории объектов вашей базы в децентрализованном хранилище, где неизвестно кто и с какой целью эти объекты может получить и посмотреть, если их без шифрования туда помещать, зачем это нужно непонятно. История объектов вроде уже бесплатно сделана, на уровне платформы...
11. ArtemSerov 16 30.03.20 07:12 Сейчас в теме
(10) По сути все так, но данный модуль это инструмент, а не конечное решение, в качестве примера записываются документы и их изменения, вы можете использовав его, записывать любые данные в блокчейн, закладывать любую логику и решать любые ваши задачи с применением блокчейн
16. mrsmrv 59 11.05.20 06:16 Сейчас в теме
(11) допустим будет 100 000 фирм, будут писать в день по 100 документов, как будет расти объём базы в год? И у кого будет храниться это? у каждого узла? и это будет хеш или полная копия документа? а если к документу приложены файлы или комментарий длинный (ведь там бесконечная строка) Да и других реквизитов в документах типовой с бесконечной строкой хватает. Как это организовано, опишите пожалуйста.
12. mrsmrv 59 29.04.20 10:09 Сейчас в теме
Так можно запилить свою платформу и дистрибьютору например раздавать монеты за покупки партий товаров у него - типа бонусная система такая. Но конечно блокчейн применять только ради этого... Разве что дистрибьюторов много и они конкурируют. Короче в описанном виде за 13$ не взлетит конечно, нужна другая мотивация и куча плюшек на старте.
13. mrsmrv 59 10.05.20 20:10 Сейчас в теме
Походу я единственный, кто качнул это. Автор потрудился, но много сделано лишнего, т.к. возможности заявленной платформы позволяют реализовать например преобразования данных, работы с буфером двоичных данных, преобразование текста в различных кодировках. Да и получение типа значения через ТипЗнч("") тоже можно наверное реализовать как-то "привычнее" что-ли. Анализирую дальше. После анализа кодирования в base58 эта конфигурация содержит в себе ещё кучу "волшебства".
14. mrsmrv 59 10.05.20 22:02 Сейчас в теме
Итак в модуле Crypt_Sha3 в функции KeccakUpdate в строке code = КодСимвола(message, Сред(message, index, 1));
У вас ошибка. Туда мы попадаем если в функцию передаём строку. Ведь у вас там предусмотрено в начале функции работа со строкой. В итоге вываливаемся в ошибку. Вы у строки сообщения зачем-то получаете символ по индексу, и потом этот символ передаёте в код символа. Ну т.е. вызов Сред не нужен. Вы тестировали?
Поставил code = КодСимвола(message, index);
ArtemSerov; +1 Ответить
15. mrsmrv 59 10.05.20 22:36 Сейчас в теме
(14) Тестирую кечак, на пустой строке не работает. Он у вас не срабатывает на пустую строку. А ведь даже в википедии описаны значения хеш сумм для пустых строк. Ладно тестирую дальше на строке "The quick brown fox jumps over the lazy dog". вылетает ошибка в строке
Если code < 128 Тогда

blocks[пСдвигВПраво(i, 2)] = пИли(blocks[пСдвигВПраво(i, 2)],
пСдвигВЛево(code, пИ(this.SHIFT[i + 1], 3)));

i = i + 1;
Индекс находится за пределами... Ну ё-моё.
Попробую скормить массив байт
Входные условия в функции некорректно отрабатывают если передать массив. Но если передать структуру с именем массива вторым параметров, то срабатывает. На непустой строку отрабатывает корректно, но очень долго, последовательность символов "12345678901234567890123456789012345678901234567890123456789­01234" - массив в 64 байта обрабатывает более 6 секунд на i7-8700К. см. скриншот. Можно быстрее, см скриншот 2 на тех же входных данных.
В остальном бегло посмотрев другие модули - быстродействие можно увеличить и намного и потребление памяти сократить заодно. Такое впечатление что вы получали гонорар за количество строк кода и количество секунд его исполнения.
Прикрепленные файлы:
ArtemSerov; +1 Ответить
17. ArtemSerov 16 11.05.20 07:16 Сейчас в теме
(15) Да, ошибка известна, на самом деле алгоритм Keccak в данном модуле отрабатывает только если передавать в него структуру с массивом.

(16) Хранятся данные у держателей нод, все верно, у каждого узла. В зависимости от того что вы запишите, хотите полная копия, хотите, будет только хеш.
В данном примере никаких специальных обработок не предусмотрено
Объект обрабатывается следующим образом:
ЗаписьJSON = Новый ЗаписьJSON;
	ЗаписьJSON.УстановитьСтроку();
	
	НастройкиСериализации = Новый НастройкиСериализацииJSON;
	НастройкиСериализации.ВариантЗаписиДаты  = ВариантЗаписиДатыJSON.ЛокальнаяДата;
	НастройкиСериализации.ФорматСериализацииДаты  = ФорматДатыJSON.ISO;
	
	Объект = Значение.ПолучитьОбъект();
	
	СериализаторXDTO.ЗаписатьJSON(ЗаписьJSON, Объект, НазначениеТипаXML.Явное);
	
	ДокументJson = ЗаписьJSON.Закрыть();		
	
	Хранилище = Новый ХранилищеЗначения(ДокументJson, Новый СжатиеДанных(9));
	СерилизованнаяСтрока = СериализаторXDTO.XMLСтрока(Хранилище);
	
	Результат = Новый Структура;
	
	Ключ = "ref-" + Строка(Значение.УникальныйИдентификатор());
	
	Ключ = СтрЗаменить(Ключ, "-", "_");
	
	Результат.Вставить(Ключ, СерилизованнаяСтрока);
	
	Возврат Результат;
Показать
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Специалист 1 категории (Методист-аналитик 1С)
Фрязино
зарплата от 100 000 руб.
Полный день

Главный архитектор 1С
Москва
зарплата от 200 000 руб. до 300 000 руб.
Полный день

Программист 1С (Оперативный учет)
Санкт-Петербург
зарплата от 120 000 руб.
Полный день

Программист по 1С:ЗУП
Санкт-Петербург
зарплата от 120 000 руб. до 150 000 руб.
Полный день

Программист по 1С:Бухгалтерии
Санкт-Петербург
зарплата от 120 000 руб. до 150 000 руб.
Полный день