Можно ли будет экспортировать ключ и разрешить его импорт только один раз?

Когда ключ импорта/экспорта будет реализован, я хотел бы знать, можно ли будет экспортировать ключ с такой опцией, как: экспортированный файл может быть импортирован только один раз, или экспортированный ключ был экспортирован с опцией, которая удалила ключ от кошелька, который его экспортировал. Я спрашиваю об этом, потому что я хотел бы получить, например, экспортированный файл ключа от кого-то, но с уверенностью, что ключ больше не находится в этом чьем-то кошельке (или любом другом кошельке).

Будет ли это возможно?

Ответы (5)

Нет, невозможно отслеживать, что люди делают со своими закрытыми ключами. Вы можете легко записать ключ перед его экспортом, и вы можете использовать его, даже не импортируя его в кошелек. Можно создать транзакцию из закрытого ключа вручную или с помощью какого-либо стороннего программного обеспечения, а затем передать эту транзакцию в сеть.

Похоже, вы хотите иметь возможность отправлять деньги без использования блокчейна, просто передавая закрытые ключи. Затем вы столкнетесь с проблемой двойной траты . Это именно та проблема, которую решает блокчейн. Так что нет, если вы хотите безопасно отправлять биткойны, вам придется использовать блокчейн.

Единственный способ обойти это — получить закрытый ключ из надежного источника, защищенного каким-либо механизмом защиты от несанкционированного доступа. Именно так работают физические биткойны BitBills и Casascius, и даже в этом случае вам все равно придется доверять эмитенту, чтобы он не хранил копии самих ключей.
И хотя на данный момент подробности ускользают от меня (и Google меня подводит), я хочу сказать, что слышал о работоспособной схеме, которую кто-то придумал, когда станут доступны транзакции с несколькими подписями.
Привет, Дэвид, если вы найдете эту работоспособную схему, отправьте сообщение здесь. Спасибо

Нет, это было бы невозможно. Экспортирующая сторона всегда может сохранить копию ключа, если она того пожелает, просто сделав резервную копию кошелька перед экспортом. Вы всегда должны предполагать, что любые ключи/кошельки, которые вы получаете от других, имеют копии, сохраненные отправителем.

Нет, и попытка сделать это нарушает безопасность биткойнов.

Если вы хотите отправить кому-то монеты, создайте транзакцию. Это будет проверено сетью, и богатство может быть безопасно и безвозвратно переведено.

Биткойн-адрес просто состоит из открытого ключа и закрытого ключа. Адрес не хранит какой-либо другой секрет локально (например, код, который определяет, сколько он стоит). Клиент (и любой другой клиент) может определить, сколько стоит конкретный адрес, используя сеть.

Учитывая, что адрес состоит всего лишь из двух ключей (строк чисел), нет никакого возможного механизма, гарантирующего, что когда вам дается копия, не существует другой копии.

Вы можете сделать одну вещь: немедленно проверить, что монеты все еще существуют, а затем перевести их на другой адрес, которым вы владеете (тот, у которого есть секретный закрытый ключ). После подтверждения транзакция является необратимой и ваши средства больше не подвергаются риску. После этого «потенциально скомпрометированный» адрес можно удалить.

По замыслу у Биткойна только один владелец, у ключа — много.

Только монеты гарантируют уникальное владение, иначе это был бы кошмар с точки зрения резервного копирования.

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

Вместо этого вы генерируете ключ и даете им адрес. Попросите их отправить биткойны на этот адрес. Вы будете знать, что только у вас есть ключ, потому что вы его сгенерировали.