2016-09-27 4 views
0

저는 bitcoin을 좋아합니다.Bitcoinj - 임시 Walllet 만들기

환전 앱의 임시 비트 동전 지갑과 같은 것을 만들어야합니다. 지갑은 단 하나의 교환 거래 또는 2 일 (거래가 확인되지 않은 경우) 후에 제거되어야합니다. 그러나 나는 비트 코인 워드 프로세서에서 바로 알 수 있듯이, "공개 키"를 분류하기 때문에 지갑을 제거 할 수 없습니다.

제안 사항?

+0

유스 케이스를 설명해 주시겠습니까? 어쩌면 다른 방법으로 목표를 달성 할 수 있습니다. –

+0

또한 bitcoin.stackexchange.com에 게시 해보십시오. –

답변

0

'지갑'은 실제로 존재하지 않습니다. 모두가 개인 키의 집합입니다 (또는 HD 지갑처럼 다른 키를 파생시키는 데 사용할 수있는 하나의 개인 키입니다). 이러한 비공개 키를 사용하면 소비되지 않은 출력 (UTXO)을 소비하여 트랜잭션을 생성 할 수 있습니다.

이러한 개인 키는 공개 키를 생성하는 데 사용되며, 이들로부터 주소가 생성됩니다. 이러한 주소는 존재하기 때문에 삭제할 수 없습니다. 사실, 모든 주소가 이미 있습니다. 액세스하려면 개인 키가 필요합니다.

블록 체인에서 물건을 제거하는 것은 어쨌든 이해가되지 않습니다. 블록 체인은 말 그대로 블록 체인이며, 각 블록은 트랜잭션으로 채워진 컨테이너입니다. 블록에서 트랜잭션을 제거하면 블록의 Merkle 트리의 해시가 더 이상 추가되지 않으므로 다음 블록이 모두 유효하지 않게됩니다.


그렇다면 HD 지갑을 살펴 보는 것이 좋습니다. 당신은 (BIP44 참조) 이런 일을 할 수있는 각각의 사용은 자신의 계정을 가질 수 있도록

m/purpose'/coin_type'/account'/change/address_index 

여기 당신이 계정에 대해 증가하는 ID를 사용할 수 있습니다. 그런 다음 각 수신 지불에 대해 새 주소를 작성할 수 있습니다 (인바운드 외부 트랜잭션의 경우 변경 = 0, 사용자의 지갑에서 오는 변경의 경우 1 = 변경).

이것은 각 지급/그 자체의 주소가있는 것을 의미합니다. HD 지갑이기 때문에 원하는 경우 마스터 키를 사용하여 모든 주소에 계속 액세스 할 수 있습니다.

+0

제안 해 주셔서 감사합니다. 정말로 도움이되는 코멘트. 내 응용 프로그램에 다중 지갑 시스템을 사용했습니다. – Aventes