develop custom_top_html:no
default debug random = 2 / type = READ / detected = READ

 

 

비트코인은 10분에 한 번씩 거래내역들을 받아서 처리합니다. 
초당 7건 정도의 거래를 처리할수 있다고 합니다.

그러니 초당 거래 수가 7건을 넘어가면 필연적으로 거래가 밀리게 됩니다. 
게다가 거래가 밀리지 않는다 하더라도 결제 승인에 최대 10분을 기다려야 합니다.

이것은 끊임없이 비트코인이 실사용 될 수 있냐는 공격에 근거가 되었습니다.
이른바 '비트코인으로 커피 사 마실 수 있나요?'  공격입니다. 
또한 이 커피를 사 마시는 1번의 트랜잭션에 커피값 이상의 수수료가 소모된다는 지적까지도 있었습니다. 


(비트코인 전송이 폭주하던 당시 수수료가 매우 비쌋던건 사실입니다만 이건 참 악의적인 게 1 트랜잭션에 수수료가 5천 원이라고 하더라도 두 잔 사는데 1만원이 들어가는 것이 아닙니다. 

말하자면 20억짜리 펜트하우스를 사는데도 5천 원 정도가 들어가는 것이고 거래대금에 비춰볼 때 한정 없이 싼 수수료입니다.) 



비트코인 네트워크의 신뢰도는 매우 높지만 대신 느리고 비싼 편입니다.
이 비트코인을 어떻게 빠르고 싸게 쓸 수 있을까? 그 해결방법이 라이트닝 네트워크입니다.
(이하 LN, Lightning Network)  
비트코인 체인에 0.0001 BTC 이 오간 것까지 모두 기록할 필요가 없다는 생각이 이 기술의 출발점입니다. 

LN는 트랜잭션을 블록체인으로 보내지 않고 별도의 채널을 만들어서 거래하는 것으로 거래내역이 블록체인에 매번 기록되지 않습니다. 
직접 블록체인에 거래하는 방식이 아니기 때문에 오프체인 (offchain) 솔루션 이라고 합니다. 

별도의 장부에 거래내역을 적어놓고 가상 거래를 한 후 나중에 이 거래내역을 정리하여 메인 체인에 기록하게 됩니다. 

예를 들어 다음과 같은 거래내역이 있다고 가정합니다. 

A -> B  0.01BTC
A -> B  0.01BTC
A -> B  0.01BTC
A -> B  0.01BTC
B -> A  0.01BTC 

모두 블록체인에 기록할 경우 5번의 거래와 5번의 기다림 5번의 수수료가 필요합니다.
이것을 가상의 장부에 기록하여 놓고 나중에 한꺼번에 정산하여 

A -> B  0.03BTC

이라고 한 번만 기록하면 5번의 기록을 대체할 수 있습니다. 


이것은 채널 간에도 연결되어 나와 전혀 상관없는 사람과의 거래내역에서도 정산 루트를 찾아 최적화 시킵니다. 

예를 들면 

A -> B  0.01BTC 
B -> C  0.01BTC
C -> D  0.01BTC
D -> E  0.01BTC 

마찬가지로 

A -> E  0.01BTC 

라는 한 번의 기록으로 대체할 수 있습니다. 

이 기록은 블록 체인에서 처리하는 것이 아니기 때문에 블록 생성을 기다릴 필요가 없으며 수수료도 0에 가깝게 설정할 수 있습니다. 
그리고 채널을 종료할 때 그간의 거래내역을 최적화 하여 메인 체인에 기록하게 됩니다. 

결국에는 거래내역을 비트코인 메인 체인에 기록하기 때문에 전송 수수료는 채널을 닫을때 한번은 지불해야 합니다
스팸방지를 위해 LN에서는 1사토시의 수수료를 책정합니다. 
(현재 기준 0.04원) 

수수료는 1사토시 고정은 아닙니다. 실제 수수료는 현재 거의 0 입니다.

 


LN은 먼저 코인을 예치하여둔 후 믿을만한 스마트 계약에 의해 발동되기 때문에 신뢰하고 사용할 수 있습니다. 
하지만 어디까지나 자주 거래되는 소액결제 용도로 적합한 기술입니다. 

수억짜리 슈퍼카를 사거나 수십억짜리 펜트하우스를 사는데 LN를 사용할 필요는 없습니다.
조금 비싸고 더디더라도 메인 체인에 직접 트랜잭션을 보내 사용하는 것이 좋습니다. 




라이트닝 네트워크는 현재 4000개가 넘는 노드와 13,000 개 이상의 채널이 열려있고
500 BTC 가까이 예치되어 있습니다. 
https://1ml.com/ 에서 라이트닝 네트워크의 상황과 지원하는 온, 오프라인 상점을 모두 확인하실 수 있습니다.



----------------------------------------------

코인과 블록체인 기술에 대해 쉽게 이해하는 단편들을 '블록체인 쿠키' 라는 이름으로 연재해 보겠습니다. 
 

 

 

 
 

[알림: 이 게시글은 관리자에 의해 ''에서 '개발'로 이동되었습니다]
30,582

도원Dowon님의 서명

 

0x65Ca99B8588929777f7aCEd83265De0ac720707E

 

블로그 

http://isnow.tistory.com

유튜브 

https://www.youtube.com/c/dowontv

 

댓글 31
  • 잘 활용 되면 좋겠네요~
    좋은 정보 감사합니다.
  • ?

    정말 좋은 정보네요~

  • 이해하기 쉬운 정리글 감사합니다. 지식하나 줏어갑니다 ^^
  • ?
    오오 좋은 설명 감사합니다.
    개인적으로 저렇게 되면 취약점이 없는지 참 궁금하네요 :)
  • @sundrop
    취약점은 구글링해보면 이것저것 뜨는것 같더라고요
    그런데 라이트닝 네트워크가 처음 조셉푼에 의해 제안된지 시간이 상당히 지난 상태이고
    블록체인 기술발전이 빨라서 한달전 결함이 지금은 결함이 아니게 되고 하는 곳이라서 ..
    아마도 지금은 충분히 완성도가 있다고 검증이 되었기 때문에 활성화 되는것이라 생각합니다.

    하지만 제가 아는 상식선에서 모든 오프체인 솔루션은 온체인 (직접 블록체인에 기록) 보다 신뢰성이 높을수가 없습니다.
  • @sundrop
    음 그래서 본문 말미에 슈퍼카나 집을 살때는 LN 쓸필요가 없다고 적어놓은 이유입니다.
    라이트닝 네트워크도 소액의 빈번한 결제에 적합한 용도로 만들어 졌다고 소개되고 있습니다.
  • ?

    제일 궁금한건 ... LN에서는 누가 최종적으로 BTC 메인체인 트랜잭션 수수료를 부담해야 하는건가요 ? ;;

  • @Augen
    네 맞습니다 본문에도 그렇게 적혀있습니다. 결국에는 비트코인 체인에 적어야 의미가 있습니다
  • ?
    @도원Dowon

    제 댓글은 질문이였습니다.

    1) LN 이용자들은 LN 내에서 트랜잭션당 1 sat 을 지불하는 건 알겠습니다만, 결국 트랜잭션 뭉치를 BTC 네트워크에 올릴때 드는 network mining fee는 누가 지불하는 건가요? 1 sat 씩 모여서는 택도 없을 것 같은데 말입니다 ;;

    2) 라넷 노드를 유지하는 사람들도 얻는 보상이 있나요? 이것도 코어측 기업이 운용하는 솔루션으로 알고 있는데 깨알만한 네트워크 수수료 말고 뭘로 수익을 창출하는 지도 궁금하네요.

    답변 미리 감사드립니다. __)

  • @Augen
    LN은 별도의 채널을 개설해서 P2P 거래 하는 방식입니다.
    채널을 닫을때 비트코인 체인에 기록하면서 수수료를 지불합니다.
    채널 닫으면서 내는겁니다
    그러고 보니 제 본문 내용이 잘못 되었네요 1사토시씩 모아서 수수료 내는것이 아닙니다 수정하겠습니다

    두번째로 그 수수료가 노드에게 갑니다 1사토시라고 적었지만 상징적인것이고 사실 LN의 수수료는 지금 1사토시 한참 밑이라 거의 0입니다
    수수료는 그냥 편의상 뉴스기사에도 1이라고 표현한건데 고정이 아닙니다
    라이트닝 네트워크 채널이 커지면 은행처럼 된다던데 수익창출은 사업적인 영역인것 같습니다
  • ?
    좋은 글 좋은 정보 좋은 의견 감사합니다.
    많은 도움되었구요.
    참고할께요
  • ?
    좋은 정보글 감사합니다. ^^
  • ?
    결론적으로 LN 이라는 별도의 분리된 서비스라고 보는게 맞을 것 같습니다.
  • ?
    거래소에서 거래하는 것이 일일이 블록체인에 기록되지 않는것과 비슷하군요.
  • @psi5720

    네 비슷합니다
    단지 거래소는 중앙화 되어있는 데이터베이스라서 위변조가 가능하고
    LN은 스마트컨트랙트를 이용합니다

  • ?
    잘 읽었습니다. 고맙습니다~
  • @AppA
    AppA님 축하합니다. 4 보너스 캐시에 당첨되셨습니다.!!
  • 비트코인이 살아야 다른 암호화폐도 같이 살아납니다. 비트코인의 확장성 솔루션 중 하나인 라이트닝네트워크에 관심과 참여가 증가되기를 바랍니다. 저는 프로그램이나 코딩에는 일자무식인지라 노드를 돌리고 싶어도 어찌 하는지 잘 모르겠네요. 마이너 분들의 적극적인 참여 바랍니다.  어차피 24시간 돌리는 채굴기에 그냥 라이트닝네트워크 노드도 같이 돌리면 되지 않나요?

     라이트닝 노드 돌리기
    https://medium.com/coinmonks/guide-setup-a-lightning-network-node-on-windows-8475206807f

     

     라이트닝 네트워크 휴대용 노드

    https://www.ddengle.com/board_free/10362471

     

     라이트닝 물건구입

    https://www.ddengle.com/board_free/10440670

  • ?
    잘 읽어 봅니다..감사요
  • @초코선인
    초코선인님 축하합니다. 3 보너스 캐시에 당첨되셨습니다.!!
  • 오프체인, 사이드체인, 페이먼트 채널. 비슷하지만 조금씩 다른 개념입니다.
  • @금마
    작성자가 삭제한 댓글입니다
  • @도원Dowon
    앗! 딴지 걸려고 단 댓글이 아니라 그런 용어가 있다고 소개한다는 것이 앞뒤를 잘라서 오해(?)를 일으킬 수 있을 듯 하네요. 나중에 해당 용어에 대해서 소개 드리겠습니다. ^^
  • 이런 글 너무 좋아요~!!!

    고맙습니다.
  • 잘보고 갑니다~~굿!
  • 여러분 좋은댓글 감사합니다
    제가 올릴글은 앞으로도 기술적 정교함을 보장하지는 않습니다.
    말그대로 생각없이 쿠키 하나 집어먹듯이 편하게 보면서 쉽게 이해해 보는 컨텐츠를 우선합니다
  • ?
    비트코인으로 상품을 구매했다가 취소할경우 어떻게 되나요.
  • @쪼리

    업체의 취소 환불 규정에 따르겠죠. 환불하게 되면 트랜잭션 수수료는 제로 이니까 부담없이 받은 만큼의 비트코인을  구매자의 라이트닝월렛 주소로 그대로 페이백 하면 되겠죠.  모든것은 기록으로 남으니까 확인 가능하구요.

  • 좋은 정보 감사합니다.
  • 이 기능을 구현하기위해 비트코인 코어쪽에 스마트컨트랙트 비슷한 개념이 들어간 것으로 알고 있습니다. ETH 의 솔리디티처럼 코딩이 가능한 것은 아니지만 LN 채널이 파기되었을 경우 코인을 다시 보냈던 사람에게 돌려줄 수 있는 기능이죠. (들어간지 1년 넘은듯)
    비트코인 코어에서 포크한 수많은 알트코인들도 업데이트만 제대로 한다면 LN 구현이 가능해보입니다. (라이트코인도 LN 성공했죠~)
  • ?
    잘 보고 갑니다^^ㅎㅎ
default debug random = 0 / type = READ / detected = READ

List of Articles
번호 분류 제목 추천 수 조회 수 글쓴이 날짜
1720 개발 취미로 비트멕스 트레이딩봇 개발중입니다.    제 경우는 개발경력보다 주식경력이 더 길고, 프로그래밍 배울때부터 자동매매봇을 만들고 싶은 마음이 항상 있었는데 작년10월쯤부터 본격적으로 개발에 착수해서 퇴근후에 업데이트와 테스... 4 file 0 5158
제타마인드
2020.02.27
1719 질문 빗썸 API 질문드립니다 안녕하세요 현재 업비트 전용 펌핑알람 "Bitpump" 개발중인 1인 개발자입니다. https://play.google.com/store/apps/details?id=bitpump.isi.com.bitpump 다운로드수는 1천회 넘었고 사용자분들... 1 3275
printf
2020.02.25
1718 개발 CAAT Bot Standard (자동매매) 테스터를 모집합니다 (개인/그룹) 안녕하십니까 BigK 입니다.   여러 시행착오와 검증을 거쳐 드디어 유저 테스트 단계까지 오게 되었습니다. 그동안 땡글 유저들을 통해 정보 공유를 받으면서 많은 도움을 받았습니다. 처음 모집... 15 file 1 2266
CAATBot
2020.02.21
1717 질문 react-native run-android 실행 오류를 해결하고자 합니다. info Running jetifier to migrate libraries to AndroidX. You can disable it using "--no-jetifier" flag. Jetifier found 864 file(s) to forward-jetify. Using 12 workers... info Startin... 5 0 2073
uurjjo
2020.02.14
1716 개발 자동 트레이딩을 웹 서비스로 만들때 어떻게 해야 좋을까요      안녕하세요.  선배님들  문의 좀 드릴게 있는데요.      1. 자동 트레이딩을 웹 서비스 형태로 만들어 보려하는데요.    python/django 로 할려고요.    샘플 소스코드(python/django)가 있... 1 0 1337
부자아들
2020.02.12
1715 질문 리플 관련 질문드려요     리플 노드를 구축해서 운영해보려고 하는데  키페어 생성까진 원활하게했는데 account_id가 따로 또 있어야하더군요  이거는 어디서 얻는건지 혹시 알수있을까요? api 문서 조회해도 안보이... 0 1313
페어
2020.01.10
1714 개발 타키온 프로젝트 개발 소스가 일부 공개되었네요.       https://github.com/tachyon-protocol 빗썸에 상장된 IPX 토큰으로 유명한  블록체인 인터넷 프로토콜 '타키온'의 깃헙입니다.   타키온은 주로 프로젝트 개발에 Go 언어를 사용하는데요, ... file 0 1471
아수라발발타KYC
2019.12.30
1713 개발 추세선 알고리즘과 개발코드 질문   추세선 매매법은 익히 잘 알려져 있습니다. 현재 저는 그러한 매매법을 시스템트레이딩으로 구현해보고자 하는데요. 코드로도 분명 구현이 가능할 것으로 보입니다. 예를 들면 두 점을 잇는 직... 5 1 1821
CAATBot
2019.12.29
1712 질문 업비트 Open API 암호화폐 출금주소 에러   혹시 리플이나 이오스 업비트 OpenAPI 에 출금주소 등록 정상적으로 하신 분 있나요?   잘 사용중인 주소인데 등록하려고 하면 올바른 주소가 아닙니다라는 에러가 뜨네요...                 ... 0 1372
lkjdf
2019.12.28
1711 개발 ETH 풀노드 구축후 datadir 사이즈는 사용하면 할 수 록 커집니다. 적어도 1T ssd 쓰셔야 해요.   ETH 풀노드 구축후 datadir 사이즈는 사용하면 할 수 록 커집니다   풀노드 구축후 이제는 1T ssd 에 풀노드를 올리셔야 합니다.   최근 작업했던 다수의 프로젝트에서 ETH 풀노드 datadir 폴... 1 1 1346
김대박
2019.12.26
1710 질문 고팍스 API 암호화폐 출금?   고팍스 API를 보고 있는데 출금에 대한 예제가 없네요.   혹시 코인원처럼 고팍스도 API로는 암호화폐 출금이 불가능한가요?                 0 1103
skeee01
2019.11.30
1709 개발 V SYSTEMS 테스트넷 접속 방법입니다.   VSYS의 슈퍼노드 후보로 등록한 홍콩의 마이닝풀 Forbole에서는 미디엄 블로그를 통해 VSYS의 테스트넷 액세스 방법을 공유하였습니다.    출처: https://medium.com/forbole/joining-v-system... file 2 949
아수라발발타KYC
2019.11.27
1708 개발 홍보글은 아니고 private blockchain 개발에 참조하시라고 올립니다      private blockchain은 폐쇄돼있어 회사 관계자 외에는 장부를 아무도 못봅니다 은행들이 이 private blockchain 방식을 취하고 있고 국제 국내 은행들은 이런 방식을 취할 수밖에 없습니다 ... 4 2 467
핵심코어보기
2019.11.26
1707 질문 EOS 에서 RAM,CPU,NET 에 EOS 할당후 서비스 접을 때 EOS 를 다시 빼올 수 있나요?     최근 EOS 토큰을 제작하고 잘 사용하고 있습니다.   최근 EOS 토큰 발송이 실패될 때가 있습니다. 그래서 RAM,CPU,NET 이 부족해서 100만원  EOS 는 더 투입하였습니다. 그런데 또 간혹 발생... 1 2 801
김대박
2019.11.26
1706 개발 [질문]지갑 언락 프로세스 진행 시 결과 값이 null 으로 나오는 경우 어떻게 처리 하면 되는지 질문드립니다. 안녕하세요.  web3j 으로 지갑을 현재 만들고 있습니다.  문의 점이 두가지 정도가 있는데요..  1.질문 내용 1) web3j.personalUnlockAccount 함수 결과값이 null 으로만 나옵니다..ㅠㅠ 2) pers... 1 0 650
jun98
2019.11.25
1705 질문 [질문] EOS 트랜잭션 데이타값 가져오기? 이오스 전자웹지갑을 제작하였습니다.   트랜잭션 데이터를 가져오기 위해서 cleos 로 BP 들의 URL 을 활용하였는데 이게 언젠가부터 없어지기 시작하더니 서비스가 종료가 되었네요. 여러분들은... 6 0 805
김대박
2019.11.16
1704 질문 블록체인 관련 지식을 많이 가지고 있으신 프로그램 개발자 혹은 앱개발자 분들의 고견듣고 싶습니다. 안녕하세요 ..  지금 파주에서 코인이 오르기만을 기다리고 있는 채굴러입니다.  코인을 채굴을 하고 있지만 블록체인에 대한 이해도는 참 답답할만큼 없습니다.      제가 프로그램에 지식이 전... 4 1 978
휘리릭릭릭릭
2019.11.10
1703 개발 Geth v1.9.7 (Quad Kicker) 릴리스 Geth 1.9.7이 나왔다는 소식입니다   블록 9,069,000 // 12월 4일경이 될거라는군요~   이하 현재 이더리움 1.x개발 수장이 남긴 트윗을 같이 참고하시기 바랍니다. Geth v1.9.7 (Quad Kicker) o... 1 814
ethminer
2019.11.08
1702 질문 이더리움 2.0이 되면 현재 보유중인 이더와 토큰에 영향이 있나요? 이더리움 2.0이 되면 현재 보유중인 이더와 지갑주소, 그리고 보유중인 토큰에 영향이 있나요?   예를들자면, 이더리움과 ERC 기반의 토큰에 아래에 해당하는 영향이 있는지 문의 드립니다     1... 2 1 1416
he123
2019.11.07
1701 개발 웹지갑을 만드려는데 질문좀 드립니다~ 라이트코인 포크뜬 알트코인입니다...   bitcoinjs를 사용해서 웹지갑을 만드려고 하는데 알트코인이다 보니 네트워크 쪽에 값을 적어줘야 연동이 될거 같은데...   잘 모르겠더라고요ㅠㅠ   혹... 2 2 1312
김깡
2019.10.31
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 ... 92 Next
/ 92
default debug random = 0 / type = READ / detected = READ