Информация за блкочейн (не биткойн)

madmax3

Member
Здравейте
Търся информация за практическото използване на блокочейн технологията за съхраняване и обмен на информация, по възможност с практически примери и код, независимо от езика.

Уточнявам, че доста се порових в сайтове на английски, български и руски, но навсякъде откривам само общи неща, както и такива свързани с копаене.
Интересува ме мога ли да създам собствена система (или да използвам готова, но да няма общо с други потребители), в която група потребители да съхраняват и ползват информация, включително и лични данни. Системата няма за цел печалба, търговка дейност или парични преводи, а само въвеждане и обмен на информация и/или документи с малки размери.
Наясно съм, че веднъж въведена информацията не може да бъде изтривана или променяна, но в случая това е предимство.

Благодаря предварително.
 
  • Like
Реакции: Sky
Другото име на блокчейна е списък, било то едносвързан или двусвързан. Примери за тези структури от данни в нета бол.
За конкретната задача трябва да си добавиш към структурата хеш ключ, който трябва да се базира на хеша на даденият докумнет + хеша на предходният възел. Иначе няма да е верига. Блокчена единствено ти гарантира проверка за валидност на данните и то ако информацията е има на повече от едно място. Иначе на никой не му пречи след промяна на даден възел да ребилдне всички хешове по веригата.
Поздрави.
 
Другото име на блокчейна е списък, било то едносвързан или двусвързан. Примери за тези структури от данни в нета бол.
За конкретната задача трябва да си добавиш към структурата хеш ключ, който трябва да се базира на хеша на даденият докумнет + хеша на предходният възел. Иначе няма да е верига. Блокчена единствено ти гарантира проверка за валидност на данните и то ако информацията е има на повече от едно място. Иначе на никой не му пречи след промяна на даден възел да ребилдне всички хешове по веригата.
Поздрави.
Благодаря,
Това го знам, дори съм написал скрипт който прави всичките тези неща. Основните въпроси на които не мога да намеря отговор:
- при условие, че изобщо не става въпрос за печалба, може ли системата да работи без миньори или по скоро без мощни машини за копаене, защото това в моя случай не е необходимо. Ще има някакъв протокол който да изчислява хешовете и да добавя блоковете.
- принципно на всеки компютър ще има цялата информация. Макар и криптирана, няма ли опасност от "изтичане" ?
 
Аз лично бих те насочил към Ethereum блокчейн, поради 3 причини:
  1. Най - голямо community и може би най - голям dev екип. Можеш да разгледаш roadmap-а им, който включва sharding, proof of stake и т.н.
  2. Доста документация, най - различни видове проблеми биват обсъждани на https://ethereum.stackexchange.com/
  3. Ethereum върви вече 5 години на mainnet и събира все повече adoption. Т.е. с всеки изминал ден все повече се доказва като добра среда за бизнес.

Ethereum включва в себе си smart contracts, който се пишат на различни езици, но най - разпространеният е Solidity. Може да започнеш с тях тук https://solidity.readthedocs.io/en/v0.6.6/index.html. Ако не ти допадне като синтаксис можеш да погледнеш Viper също. За всеки един запис в ethereum има eth fee, който се таксува от адресът, който прави записа. Колкото по - големи данни пазиш толкова по - скъпо ще ти струва.


Ако информацията е голяма ще струва скъпо да я запазваш в smart contract-a и като алтернатива можеш да използваш IPFS ( приеми го като пространство, което е P2P и не могат да бъдат редактирани файлове, а само да се ъпдейтват версиите им ). Качваш информацията там след това IPFS ти връща ключ и ти запазваш само ключа в договора. Така, ако искаш да достъпиш информация се обръщаш първо към договора за ключа, после по ключа си взимаш данните от IPFS.


Много зависи каквa информация ще запазваш. Ако тя е дискретна трябва да се обърнеш към блокчейни предлагащи private transactions като например можеш да погледнеш https://z.cash/. Най - вероятно има и доста други решения на private transactions, но не ми се е налагало подобно решение и не съм търсил.


Едно решение как може да използваш Ethereum smart contracts за дискретна информация е асиметрично криптиране на информация или файлове и пазене на хешове в smart contract-a. Т.е. в договора пазиш криптираната версия на информацията и когато искаш да я достъпиш я взимаш от smart contract-a и я декриптираш. Тук също можеш да използваш IPFS като решение ( когато информацията е голяма и скъпо да я запишеш на блокчейна ) като преди да се качи информацията в IPFS тя се криптира и отново в smart contract-a запазваш ключа, който си получил след като си качил криптираната информацията в IPFS.
 

Горе