2) В будущих версиях будет реализован опциональный механизм One-Time Public Key, и вовсе делающий подобную технологию неработоспособной. Потому что адреса будут одноразовые, генерирующиеся из пары публичных ключей и случайного seed. Одна транзакция - один адрес, и никаких повторений. С помощью имеющихся закрытых ключей получатель в любой момент сможет восстановить все свои одноразовые адреса, использованные в сети когда-либо, но сторонние наблюдатели сделать этого не смогут.
Тестовая реализация генератора готова, в общем-то, будет доступна для экспериментов на этой или следующей неделе.
Пара слов о том, как это работает.
Действия пользователя:
1) Пользователь генерирует и сохраняет пару secp256k1 приватных ключей (l, h);
2) Публикует пару соответствующих им публичных ключей (L, H). Они используются желающими отправить пользователю транзакцию.
Действия отправителя:
Отправитель генерирует секретное 256-бит случайное число r, затем вычисляет одноразовый публичный ключ и несекретное значение следующим образом:
K
p = G * Hash
160(L*r) + H
R = G*r
Kp используется в качестве назначения транзакции, а R сохраняется в транзакции в виде метаданных. Сохранять значение r нигде не нужно, оно в дальнейшем бесполезно.
Действия получателя:
Извлечь из транзакции R, затем для каждого выхода проверить равенство:
K
p == G * Hash
160(R*l) + H
Если равенство верно, значит выход принадлежит получателю, и он может вычислить приватный ключ следующим образом:
K = Hash
160(R*l) + h
Hash
160 - стандартная для сатоши-клиента функция взятия ID ключа;
G - базовая точка secp256k1 (см.
тут);
"*" - операция умножения точки эллиптической кривой на число (подробнее
здесь).
Как результат, несмотря на то, что "адрес" у пользователя один, публичные ключи в выходах адресуемых ему транзакций всегда разные, равно как и соответствующие им приватные ключи. Это повышает общую энтропию системы и приближает нашу вселенную к тепловой смерти.

Также это несколько усложняет жизнь любителям смотреть балансы в эксплорере и делает проблемной эксплуатацию уязвимостей вроде этой:
http://www.theregister.co.uk/2013/08/12/android_bug_batters_bitcoin_wallets/ 