У меня возникли эти идеи в последнее время, о том, как реализовать Bitcoin PoS с физической картой, сродни дебетовой карты. Я уверен, что мои идеи правильны, но я хотел бы проверить несколько предположений первыми.
После прочтения некоторых на SIM-картах и смарт-карт, в общем, я установил следующее:
- Существует защищенное хранение (R / W) на смарт-карте, и единственный способ доступа это с помощью API, предусмотренной программным обеспечением, загруженной на карту. (Если у вас нет сканирующего туннельного микроскопа).
- Программное обеспечение, которое работает на карте может быть либо в C или Java
- C дешевле аппаратно-накрест, но очень негибкая. Любые изменения, необходимые на более поздних этапах означают огромные затраты
- Java дешевле разрабатывать, так как она имеет интегрированную среду разработки и множество классов (в том числе CryptoAPI), а сами карты являются более дорогими
- Вы можете написать программу для смарт-карты, который выполняет на смарт-карте, и способен выполнять различные действия, например:
- Санкционирования доступа к закрытым ключам с PIN-кодом
- Проверка цифровой подписи
- Подписание блока данных
- Инициализация пустой карты с кучей пары ключей
Принимая это во внимание, что это не возможно, чтобы поставить блок цепь на карте, или делать какие-либо обширные проверки, из-за обработки ограничений мощности.
Таким образом, работа делать что должно выполняться с помощью терминала. Современные терминалы, по существу, компьютеры, подключенные к сети, либо через модем, широкополосный, или соединение GPRS. Таким образом, они способны держать блок цепи свежей.
Вопрос заключается в следующем - из-за ограниченное пространство на карте памяти, я не уверен, если это возможно, чтобы держать весь бумажник на карте. Так что должно быть каким-то алгоритм быстро просканировать блок цепь, чтобы установить баланс доступный для ключей, которые хранятся на карте памяти.
Я разговаривал с парнем, который это работа пишет программное обеспечение для SIM-карт, те, в сотовых телефонах каждого. Он сказал, что 1Мбы JavaCard будет стоить около $ 1, если заказ на 50000 карт сразу. Так что это не так уж плохо.
Следующий шаг должен был бы исследовать, как современные POS терминалы работают, а вот можно ли добавить поддержку для обработки Bitcoin на них, или, возможно, даже разработать что-то с нуля.
Другие вещи
Технически карта может быть ограничена одной пары ключей, но это было бы значительно уменьшить анонимность. Я предполагаю, что есть возможность иметь различные классы Bitcoin карт с различным количеством доступных для пары ключей использования.
Пара ключей (ы) может быть запрограммирован в карту в момент изготовления. Проблема заключается в том, что тогда ключи доступны 3 участника. Но тогда можно было бы создать предоплаченный Bitcoin карт.
С другой стороны, пары ключей могут быть созданы с помощью самой карты, на POS, когда добавляется деньги.
Кроме того, POS терминал может распечатать адрес Bitcoin на квитанции, так что вы можете добавить больше денег на карту с регулярным программным обеспечением Bitcoin.
Это также возможно, чтобы иметь карту проверки POS, для обеспечения соответствия. Если POS проверяются (путем криптографического ключом проверки) конечно, то (возможно) дополнительные гарантии могут быть реализованы, как принимать транзакции без каких-либо подтверждений, но почему-то временно предотвратить карты от двойных расходов и т.д. Или дать вариант при оплате как "оплатить не валидаций, но карта блокируется на ближайшие 10 минут" или "платить регулярно, но товары освобождаются от проверки"
вопросы
Это не карта доступа банковского счета. Было бы фактический бумажник карты, так что если он потеряется - деньги ушли навсегда. Если он украден - ПИН-код должен запретить доступ к закрытым ключам. Можно было бы создать 2 защиты PIN-уровня, подобный PIN и PUK в сотовых телефонах.
Кроме того, можно создать "конец света контактный" что вытирает чистоту карты, в случае, если вы находитесь под давлением, или что-то из шпионского романа
Ребята, что вы думаете?