블록체인 및 비트코인 내용 정리

 갑자기 블록체인과 비트코인 그리고 NFT 내용을 정리할 일이 생겼다. 비트코인은 블록체인으로 구성된 분산데이터베이스로 생각하면 되겠다. 각 블록은 체인으로 연결되어 있으며 체인으로 등록되면 약 2천개의 거래내역이 기록된다. 이 과정을 채굴이라고 한다. 이 체인들이 연결되어 거래내역이 저장되어 있는데 첫거래부터 모든 데이터가 다 있다. 이러한 내용들을 노드들이 서로 공유하는데 그래서 분산데이터베이스라고 생각하면 되겠다. 요즘은 이러한 내용을 네트워크라고도 한다. 비트코인 네트워크, 이더리움 네트워크 등.... 그냥 개념은 토렌트와 같다. https://ycharts.com/indicators/bitcoin_blockchain_size 이곳에서 확인해보니 현재 376.29GB 이다. 문제는 2032년이면 마지막 채굴이 끝난다고 하니 그때 이후로는 거래내역이 기록되지 않는다. 그러면 화석처럼 희소성이 더 강해져서 가격은 더 올라갈꺼 같다. 전체 기록을 가지고 있는 노드를 풀노드라고 하는데 이 풀노드들이 서로 내용을 공유한다. 10분마다 채굴되어 노드가 생성되어 체인으로 연결되는데 정합성을 맞춰야 하므로 네트워크에서 계산이 일어난다. 그렇기 때문에 초당 7건 정도의 트랜잭션을 처리할 수 밖에 없다고 한다. 실제 거래에 이용 되기는 힘든 기술적 한계가 여기에 있다. 거래소를 이용해 증권처럼 거래하기는 이게 딱인거 같다. NFT(Non-Fungible Token) 는 변조불가능한 토큰으로 이더리움 기반으로 발행한 토큰이다. 이더리움은 2세대 암호화폐로 불리는 이유가 비트코인보다 약간 발전했다. 실제 데이터는 다른 곳에 저장하고 암호문자열 덩어리인 토큰만 유통을 한다. 영상이나 음원 등에 이더리움 네트워크를 활용하여 토큰을 발행하고 원본임을 등록한다고 보면 된다. 이를 나중에 거래에 이용하면 된다.

아이폰에서 유튜브 mp3 다운받는 방법

아이폰에서 유튜브 음원파일 다운로드 하는 밥법입니다. 일단 앱스토어에서 fuleMusic 앱을 다운로드 받습니다. 앱을 실행하면 오른쪽 상단에 마법물약 아이콘을 터치합니다. 하단에 배너 광고가 사라지면서 그 자리에 Youtube-DL 버튼이 생깁니다. 이제 그 버튼을 터치 해보세요. 다운로드 창이 뜹니다. 유튜브에서 주소를 복사하여 다운로드 주소에 붙여넣기를 하면 Download URL 이 활성화됩니다. 이 버튼을 터치하시면 다운로드가 시작됩니다. 다운로드 시간이 많이 걸리므로 광고를 보시고 기다리면 됩니다. 다운로드가 완료되면 창이 닫히고 메인창 음원리스트에 음원이 추가되어 있는걸 확인할 수 있습니다.

iPhone Youtube Download

이미지
Install fileMusic for the App Store https://apps.apple.com/us/app/filemusic/id1505046944 Touch the elixir button at the top Click the YouTube-DL Start Button Copy the url of the music you want to download from YouTube. Paste the copied url. Touch Download URL .... Advertisement due to taking time to download .... Check the downloaded sound source.

How to download YouTube music on iPhone

이미지
Install fileMusic from the App Store. download link https://apps.apple.com/us/app/filemusic/id1505046944 Touch the elixir button at the top. Click the YouTube Download button at the bottom. Copy the url of the music you want to download from YouTube. Paste the copied url. Touch Download URL. Advertisement due to taking time to download Check the downloaded sound source.

Xcode 에서 아카이빙 파일 만들고 앱스토어에 올릴 때 인증 오류 날때

이미지
 앱스토어에 아카이빙 한 파일을 올릴 때 인증 오류가 난다. 오류 화면은 위와 같다. 해결 방법은 일단 Xcode 를 재시작 해본다. 그래도 같은 현상이 나오면 컴퓨터를 재부팅 한다.

Xcode 에서 LaunchScreen 이미지 표출이 되지 않을 때 조치 방법

 로딩 화면에 보통 이미지를 추가하여 작성을 한다. 이때 이미지가 표출이 되지 않는 경우가 발생한다. 방법은 관련 파일을 지우고 다시 하면 된다. Xcode 에서 Preference - Locations -DerivedData 에서 작은 화살표 모양을 클릭하면 관련 폴더가 보인다. 여기서 Derrived Data 폴더를 클릭하여 들어간다. 여러가지 실행되었던 폴더가 보일 것이다. 이걸 다 지운다. 어차피 다시 실행하면 생기니 걱정하지 말자. 그리고 맥을 재부팅한다. 맥이 재부팅 되는 동안 테스트 폰도 마찬가지로 앱을 삭제하고 재부팅을 한다. 관련 컈시파일이 이미지를 잘 보여주지 못해서 발생하는 문제로 보인다. 모두 초기화가 되면 처음부터 다시 캐시파일이 생성되므로 되는거 같다.

앱 출시 과정에 대한 넋두리

 아이폰 앱을 먼저 만들고 안드로이드 앱을 만들었습니다. web server는 node express, database는 mongodb, server는 네이버클라우드 1년 무료를 신청하여 마이크로 서버에 위의 환경을 구축하였습니다. 도메인은 가비아에 신청하여 1년 결제를 하였고 SSL 은 letsencrypt 에 연동하여 매월 갱신되도록 설정하였습니다. haproxy 를 설치하여 서버에 접근하는 트래픽을 분산하도록 설정하였습니다. 가령 예를 들어 topScore api 를 호출하는 건수가 많아지면 하나의 node express 로 처리하는게 버거울꺼 같아서 같은 서비스를 포트별로 분기하는 방식으로 설정하였어요. 그 트래픽 분기는 haproxy 가 하는 것이고요. 이게 서버 성능을 100%까지 끌어올리는데 꽤 역할을 합니다. 일단 서버측 모듈은 이런식으로 대충 구성이 되어 클라이언트인 앱 개발을 시작하였습니다. 아이폰 앱을 스위프트로 스토리보드를 사용하여 만들었습니다. 화면 구성을 하고 기능들을 입혀 가면서 서버 모듈과 테스트도 하여 완성시켜 나갔습니다. 아이폰 앱을 심사를 올리고 안드로이드 개발에 나섰습니다. 아이폰의 ViewController 를 안드로이드의 Activity 로 변환하는 느낌으로 개발을 하였습니다. 안드로이드는 자바로 구성하였는데 저 같은 경우는 아이폰에서 안드로이드를 더하는 느낌으로 개발하므로 코틀린은 자료가 없어서 힘들었고 자바는 자료가 많아 개발하기가 너 나은 느낌이었습니다. 둘 다 앱이 심사에 통과되어 스토어에 올라 갔는데 다운로드 수가 늘지 않습니다. 디자인이 문제 인거 같아 아는 디자이너를 수배하여 디자인 시안을 받아서 적용하였습니다. 이 작업이 만만치가 않더군요. 나중에 금전적인 여유가 있으면 개발 전에 디자인을 받아서 작업하는 좋겠다는 생각이 들더군요. 디자인을 적용하니 이제야 어구를 갖춘 어선이 되었구나 하는 느낌이었습니다. 만선을 기대하여 출항하는 배처럼...., 다운로드 수가 많아지길 바라며 스토어에 올렸는데.......