Проблема: как решить следующие задачи:
а) идентифицировать ту или иную транзакцию как транзакцию от добропорядочного покупателя добропорядочному продавцу;
б) зафиксировать что конкретная уникальная партия товара продана добропорядочным покупателем добропорядочному продавцу;
в) скрыть факт того, что 1) покупатель Х является клиентом продавца Y; 2) Покупатель Х потратил N-сумму токенов на конкретную уникальную партию товара; 3) Продавец Y получил N-сумму за конкретную уникальную партию товара.
Решение вижу следующим образом.
Для начала нужно создать средство общения, это либо шифрованный чат по публичным ключам либо что-то типа шифрованной электронной почты по публичным ключам. У каждого проверенного пользователя в описании профиля должен быть публичный ключ, при помощи которого можно шифровать сообщения и которое расшифровать может сам пользователь.
Потом:
1. Создать открытый список всех участников, чтобы все видели кто в системе и кто является вообще добропорядочным, с указанием их каких-то данных и возможностью пообщаться в приватном шифрованном чате или с помощью зашифрованных сообщений. Если в чате, то идентификация происходит при помощи электронной подписи с этого адреса на который привязан публичный проверенный профиль.
2. Первичный продавец размещает товар. К нему периодически в приватном чате (один на один) обращаются покупатели.
3. Допустим условия устроили обоих. Тогда продавец говорит, вот мой адрес смарт-контракта и вот мой анонимный адрес (адреса как в биткоине) для оплаты, а покупатель говорит а вот мой анонимный адрес.
4. После этого продавец создает смарт-контракт, с условием, что если приходит определенная небольшая сумма с проверенного адреса продавца, то он меняет владельца товара на анонимный адрес покупателя. После этого покупатель отправляет сумму на анонимный адрес продавца, а тот получив деньги, активирует смарт-контракт-который меняет владельца товара. Таким образом произошли две сделки анонимные переводы денег с неизвестного адреса или адресов на неизвестный адрес и публично подтвержденная смена владельца товара смарт-контрактом.
5. Теперь анонимный покупатель, становиться анонимным продавцом. Он используя электронную подпись входит в чат со своим адресом и начинает общаться с проверенными пользователями. Как только условия переговоров дошли до сделки, то анонимный продавец входит в чат под своим публичным проверенным адресом, связывается с проверенным покупателем с которым только что общались и подтверждает условия сделки.
6. Дальше так же оба обмениваются анонимными адресами.
Таким образом у нас получается следующая схема. Самый первичный продавец находит проверенного продавца, но делает его анонимным для всех остальных, этот анонимный продавец остается анонимным для всех, но становиться проверенным для проверенного покупателя по сделке.
Деньги передаются частично с разных левых адресов или сразу с одного адреса покупателя на анонимный адрес продавца, а вот публичная передача прав осуществляется с помощью смарт-контракта с публичного проверенного адреса.
Прохождение товара просто должно фиксироваться автоматически.