Bitcoin Forum
November 16, 2024, 10:30:19 PM *
News: Check out the artwork 1Dq created to commemorate this forum's 15th anniversary
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Bitcoin Core RPC / Мультиподпись  (Read 1624 times)
bastos (OP)
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
November 24, 2016, 10:05:48 AM
 #1

Привет ребят, есть вопрос по поводу работы мультиподписи у bitcoin core.
Не совсем понятен принцип работы мультиподписи при отправке средств. Понятно конечно, что Петя хочет продать Васе яблоко, а Иван за этим следит, но все же как это работает и как использовать эту возможность. Перерыл РУнет и ничего полезного не нашел, да и в буржуйнете не смог найти ничего.

Может ли кто-то объяснить принцип работы, лучше бы с примерами проведения транзакции с мультиподписью?
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
November 28, 2016, 03:37:17 PM
 #2

Привет ребят, есть вопрос по поводу работы мультиподписи у bitcoin core.
Не совсем понятен принцип работы мультиподписи при отправке средств. Понятно конечно, что Петя хочет продать Васе яблоко, а Иван за этим следит, но все же как это работает и как использовать эту возможность. Перерыл РУнет и ничего полезного не нашел, да и в буржуйнете не смог найти ничего.

Может ли кто-то объяснить принцип работы, лучше бы с примерами проведения транзакции с мультиподписью?

Петя хочет продать яблоко Васе.
То есть Вася должен перевести Пете деньги.
Но Вася - несовершеннолетний, поэтому у него все бабки на адресе с мультиподписью.
Сам он в одиночку распоряжаться ими не может.
Вася формирует транзакцию перевода.
Подписывает своим ключом.
Приносит эту наполовину подписанную транзакцию своему опекуну Ивану на флешке.
Иван внимательно смотрит, потом подписывает эту транзакцию с помощью своего ключа
И кто-то из них (теперь уже неважно кто) отправляет её в сеть.
Петя получает бабки и отдает яблоко

Как-то как.

В частном случае, у Васи адрес 2-из-3, то есть ключ есть у Ивана (отец Васи) и у Татьяны (мать Васи)
То есть Вася может получить разрешение хотя бы от одного их них.

А у Ивана и Татьяны адрес 2-из-2 на котором они хранят семейный бюджет.
Потратить с этого адреса у них получится, если они оба согласятся.
progmax
Full Member
***
Offline Offline

Activity: 174
Merit: 100


View Profile
November 29, 2016, 11:17:35 PM
 #3

https://en.bitcoin.it/wiki/Multisignature

https://en.bitcoin.it/wiki/Address#Multi-signature_addresses
bastos (OP)
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
December 01, 2016, 09:03:51 AM
 #4

Привет ребят, есть вопрос по поводу работы мультиподписи у bitcoin core.
Не совсем понятен принцип работы мультиподписи при отправке средств. Понятно конечно, что Петя хочет продать Васе яблоко, а Иван за этим следит, но все же как это работает и как использовать эту возможность. Перерыл РУнет и ничего полезного не нашел, да и в буржуйнете не смог найти ничего.

Может ли кто-то объяснить принцип работы, лучше бы с примерами проведения транзакции с мультиподписью?

Петя хочет продать яблоко Васе.
То есть Вася должен перевести Пете деньги.
Но Вася - несовершеннолетний, поэтому у него все бабки на адресе с мультиподписью.
Сам он в одиночку распоряжаться ими не может.
Вася формирует транзакцию перевода.
Подписывает своим ключом.
Приносит эту наполовину подписанную транзакцию своему опекуну Ивану на флешке.
Иван внимательно смотрит, потом подписывает эту транзакцию с помощью своего ключа
И кто-то из них (теперь уже неважно кто) отправляет её в сеть.
Петя получает бабки и отдает яблоко

Как-то как.

В частном случае, у Васи адрес 2-из-3, то есть ключ есть у Ивана (отец Васи) и у Татьяны (мать Васи)
То есть Вася может получить разрешение хотя бы от одного их них.

А у Ивана и Татьяны адрес 2-из-2 на котором они хранят семейный бюджет.
Потратить с этого адреса у них получится, если они оба согласятся.


Спасибо за развернутый ответ, но тут вопрос касается больше технической части.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
December 01, 2016, 09:22:40 AM
 #5

Спасибо за развернутый ответ, но тут вопрос касается больше технической части.

а что именно в технической части непонятно?
биткойн выполняет скрипт и имеет стек
логика работы на примере псевдокода
если ( OP_CHECKMULTISIG )
{
  взять из стека число N;
  взять из стека N публичных ключей;
  взять из стека число M;
  взять из стека M сигнатур;

  дальше начинаем проверять для каждой сигнатуры - является ли она правильной подписью ключа из списка;
  если правильных сигнатур набралось M - транзакция валидна;
  иначе - нет;
}

При подписи транзакции - алгоритм в обратном порядке.
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!