Синхронизация Биткоинов (Bitcoins Synchronization)
Синхронизация является самым важным процессом в работе сети Биткоин. Напомним, что сеть биткоин является пиринговой (одноранговой) в которой отсутствуют центральные серверы и все транзакции происходят напрямую между двумя узлами сети. При этом на узлы сети (кошельки пользователей) также возлагается контроль уникальности транзакций и их завершения. Для проведения платежа в сети Биткоин требуется не менее 6 подтверждений от других узлов.
Для обеспечения контроля транзакций в сети Биткоин каждый узел сети (кошелек пользователя) должен содержать полную историю всех транзакций Биткоин с момента запуска системы. При появлении нового платежа база транзакций биткоин обновляется на всех кошельках системы. Загрузка базы транзакций при установке программы-клиента и называется «биткоин синхронизация».
Текущий размер базы Биткоин составляет более 10Гб и процесс начальной синхронизации может занимать значительное время (порядка 1-2 дней). Полная синхронизация требуется только для создания отдельного узла сети на основе программных клиентов, таких как Bitcoin Core. Только узлы, имеющие актуальную базу транзакций, могут проверять и регистрировать новые транзакции.
Мобильные и онлайн-кошельки Биткоин для работы не требуют такой долгой и сложной синхронизации, при проведении транзакции они обращаются к базам транзакций на удаленных серверах. Следует учесть, что такой способ работы не является полностью безопасным и анонимным.
В Биткоин пользователь может создать неограниченное количество кошельков. Если предполагается использовать несколько кошельков на одном компьютере, нужно тщательно выбирать программный Биткоинт-клиент, он должен поддерживать работу с несколькими кошельками. Иначе может возникнуть ситуация, когда каждый кошелек может начать свою синхронизацию и на жестком диске может образоваться несколько копий базы транзакций занимающих большой объем диска.
В качестве альтернативы «классической» синхронизации можно использовать базы транзакций Биткоин на определенный момент времени. Процесс выглядит следующим образом: из сети Интернет скачивается готовая база транзакций Биткоин и устанавливается в программу-клиент, после соединения с сетью Биткоин программе уже не нужно скачивать базу полностью, а только небольшой пакет изменений для приведения базы в актуальное состояние.