BitCoin 주소를 이용해 헌사된 Nelson Mandela 의 명언 보는 코드

Bitcoin 돈을 받을 주소를 이용해서 블록체인 속에서 사라지지 않는 영원히 기억된 문구를 만들어 낼 수 있다.

https://blockchain.info/ko/address/15gHNr4TCKmhHDEG31L2XFNvpnEcnPSQvd

다음의 블록체인 주소에 들어가면 돈을 받을 주소가 나열되어 있는데 bitcoin 의 주소값인 base58 로 인코딩된 값을 역으로 디코딩 하여 출력하면 된다.

import static org.junit.Assert.*;
 
import java.io.UnsupportedEncodingException;
 
import org.apache.commons.lang3.StringUtils;
import org.bitcoinj.core.AddressFormatException;
import org.bitcoinj.core.Base58;
import org.junit.Test;
 
public class AddressDecodeTest {
 
    @Test
    public void test() throws AddressFormatException, UnsupportedEncodingException {
 
        String[] addresses = new String[] { "147qLbMuBPkhjGQjUxnizD1yGwEe18dMHn", "1AX5aSgcG2foSZpLdZD1vK6psojfBn9kwg",
                "1BceWTRrBwdivd3iC8xdwzqDnhwxfTxAsF", "1AyMMCme4dvs1AUcqQ2PcbVKYVVeC6Hkps",
                "1AcUCFbhKakvZeU8rems4aYtbjYStBRhcT", "1AX5XTatAggFnXZcawEJMHTKQCR3q6bciN",
                "1Bo1t2bNDDjhQ97D1T1E46zN7S5HHR44sp", "1AtSGJU3cTZLSVd4EvgnhmmDkdGJLinvVS",
                "1AtSGJU3dPEFVyiM2F6uDEbj5uSkAWHZiU", "1AFH5i3kaK7fEc78J1qkKhRWrMMFeuXcFf",
                "1A4UcZRARjdmHj8yLhF4iTDGGDQdqrzKY6", "1AFV8QDL4CfoqX9XhW3nGH6y7yipzpL3ty",
                "1A4e8xqe4g7dNNGYshX1wJCthVgoEwCybK", "1AcaG12FaR1AcEt4cJR7LqX3o6vTyyPaau",
                "1AFRWKXxi7JLfpvjxW3kuruW4eVG7W1NiJ", "1KubhUHhzzGcjprzrCsDtWzZEFYABtofCd",
                "1AcF19MRkLP8RPSzhpoHNU3NJVPTrsssQy", "16DLmocGtmcp7RckgywoLKnKLaRY4aV5Ka",
                "1B3pxn1mBuLQS7yr2YLcsC9VSjQj2m9Hxk", "1AFZvFuA5Pv3RTw679GfVYbAzykZqm3Ys2",
                "1AcHQwytpRKkX71DQasUk5TMw6qNED2Yqw", "15gHNr4TCKmhHDEG31L2XFNvpnEcnPSQvd",
                "15VAeb5KsRqbyNWWp7WHSACuVQahe5ngS7", "112CUyPHVEi3zyHViBzP3poagnvyUomYZ ",
                "1A8gyj9ETeGkS1hea2crNp1oJ7HfcRMuK8", "17mkD8JSfeVDx11ZumnEuKo6wVNw9mhipU",
                "1C3TPCe4pni96eQQXLFFe8LvV41qSC2KcL", "12TyUzmb4nCVVW87dsHUJCXvLWBYPuTpzB",
                "17xQY1Wan8TDFAmVtg8pe9mNDfp84YEn7r", "1BtmNAkEvWEts9is65unceNpRpgo9R2MxE",
                "16iwZjYtLBDUBxcMDvbjkX4fT6mEMGrWW ", "1CMDvFD3fgCw43u9p6EiWptaLLuz4byZGL",
        };
 
        for (String address : addresses) {
 
            byte[] decodedAddress = Base58.decode(address);
            String str = new String(decodedAddress, "UTF-8");
 
            System.out.println(str.substring(6, str.length() - 2));
        }
    }
}

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다