traders_free custom_top_html:no
default debug random = 0 / type = READ / detected = READ

http://www.ddengle.com/blockchain/1433956 에 제가 답글로 쓴 합의 알고리즘에 대한 내용을 다시 올립니다.

 

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

 

스팀은 기본적으로 dpos방법을 사용합니다.
추가로, 개발자의 지분확보를 위해서 pow를 함께 사용하고 있습니다.

pos는 지분이 많은 지갑이 블럭(거래데이터)를 만들 확률을 높이는 원리이구요..
이것은 coinday(또는 coinage)라는 변수를 사용하여 지갑이 블럭을 만들었으면 코인데이를 제로로 세트하여 다시 경쟁을 하게 하는 원리를 사용합니다.
즉 경쟁방식이고요,, 코인데이가 가장 많은 지갑이 블럭 생성권한을 가집니다.

dpos도 pos의 일종입니다.
다른 것은 추천인 또는 증인(delegate)가 각 지갑을 추천하는 방법을 사용합니다.
추천을 많이 받은 지갑의 상위 약 20개가 지분(?)율에 따라서 정해진 시간 3초(?)마다 블럭을 만듭니다.

--- 
합의 알고리즘이란

기본적으로 동일한 마이너 또는 노드 중 누가 블럭을 만들 것인가를 정하는 것입니다.
이때 가장 중요한 것은 해킹이 발생하지 않도록 되도록이면 노트가 랜덤하게 선택되도록 합니다.
사실 랜덤성만 가지고는 다중 계좌를 이용한 시빌공격을 방어를 할 수 없기 때문에 해쉬능력 또는 코인 지분율에 비례해서 블럭생성기회를 줍니다.

랜덤성이 중요한 이유는 이체완료를 위한 필요 컨펌이 있는데요.. 
비트코인은 6컨펌이죠.. pos코인은 최소 100컨펌 이상을 요구합니다.
이 이체완료 컨펌이 넘으면, 블럭체인을 바꿀 수가 없기 때문입니다. 
따라서, 해커가 연속으로 블럭을 이체 완료 컨펌 이상을 연속으로 작성하면 해킹에 성공하게 됩니다.

따라서, 랜덤성이 중요하고요..
그런데, pos의 경우 51%의 코인을 가지고 있으면, 원리상으로 랜덤성이 없더라도 위에서 말한 해킹이 불가능하게 됩니다.

따라서, 제가 제안 했던 코인은 이체 가능코인(49%) + 이체 불가능하지만 블럭을 생성하고 이자는 받을 수 없는 이체 불가능코인(51%)로 된 pos코인을 만들자는 제안을 했던 것입니다.

물론 이 두 코인은 하나의 코인인데, 코딩을 이체가능코인과 이체 불가능한 코인으로 분리를 한 것입니다. 그예로 지갑 주소의 첫자를 이체가능은 TR로 시작하고, 이체 불가능코인은 NO로 시작하는 방법으로 구분할 수도 있습니다.

 

https://drive.google.com/file/d/0B5hmGlVuh8KZUzJGdDJ2bVNwSE0/view

https://steemit.com/kr/@loum/5gc6kw

http://www.ddengle.com/bitcoindeveloper/893822

 

 

생각나는대로 적은 글이라 조금 정신이 없습니다.

 

(마지막에 남긴 글이 적당하지 않은 것 같아서, 삭제했습니다.)

3

loum님의 서명

 

 
 
 
댓글 6
  • 사실 51%로 컨펌 전용코인을 고정하는 것은 별다른 의미가 없다고 보는데요. 기본적인 이유는 시스템내 코인의 100%를 컨펌코인으로 쓰든 51%의 코인만을 컨펌 코인으로 쓰든 결국, 블록체인의 해킹은 컨펌코인 내에서의 경쟁에 근거하기 때문입니다.

    아래의 몇가지를 살펴볼 수 있을 듯 합니다.
    1)
    전체 네트워크에서 존재하는 컨펌 전용 코인이 51%고, 49%는 전송용 코인이라면, 이 둘은 그냥 다른 코인입니다.

    2)
    컨펌 전용 코인 51% 중에서 과반수가 찬성해야 컨펌이 승인나도록 합의 알고리즘을 설계한 경우라면,
    즉 25.5%(51%의 과반수)가 넘는 코인이 승인해야 컨펌이 이루어지는 경우라면 여전히 기존의 문제가 반복됩니다.

    3)
    51%라는 모든 컨펌 코인이 컨펌을 해야 승인이 나는 경우라면, 컨펌 코인을 소유한 모든 노드가 활성화되어 있어야 합니다.

    4)
    컨펌코인은 거래가 불가능하기 때문에, 초기에 컨펌 노드들을 설정하면 다시는 바꿀 수 없습니다.
  • ?
    @어른아이

    날카로운 지적이 있군요..

    구체적으로 생각해보았다는 것에 좀 놀랐습니다.

    1) 다른 코인이 아닙니다.

    다른 코인이라는 것은 블럭체인이 다르다는 것을 의미할 텐데요..

    이들은 한 블럭체인에서 서로 경쟁적으로 블럭을 생성하므로 다른 코인이 안닙니다.

    2) 번은 51%의 과반이 찬성해야 한다는 식으로는 합의 알고리즘을 설계를 하지 않습니다.


    제 제안은 기존의 pos의 coinage의 경쟁을 그대로 이용한다는 전재가 있는 이야기입니다. 
    즉, 제가 전체 합의 알고리즘을 만든 것은 아닙니다. 

    기본 pos 합의 알고리즘에다가 51% 컨펌용 코인만을 추가한 것입니다.

    즉, 일반적인 pos 알고리즘입니다.

     

    (제가 pos 알고리즘을 새로 짠 것이 아닙니다. 제가 제안한 pos알고리즘도 있으니, 관심이 있으시면, 읽어보시기 바랍니다.)


    어째든 pos는 coinage의 경쟁에서 이기는 노드가 블럭을 생성합니다.
    51%의 의미는 블럭생성확률을 높여줄 뿐이며, coinage 경쟁과는 다른 문제입니다.

    또한 반드시 51%가 되어야 할 필요도 없습니다. 30%이나 20%로 해도 어느 정도의 네트워크 안정성을 얻을 수는 있습니다.
    이는 51% 공격 얘기를 하니, 상징적으로 쓰인 숫자일 뿐입니다.

    3)번도 pos에 대한 오해입니다.

    기존의 pos의 coinage 경쟁을 그대로 쓰는 것입니다.
    제가 처음부터 설계한 합의 알고리즘은 모든 것을 제가 만들지만, pos를 기반으로 제안하는 코인은 기본적인 coinage 경쟁을 기본으로 하고 있다는 것을 전제로 합니다. 즉, 기본 pos에 제 제안안만 추가한 것입니다.
    그렇지 않으면, 빈 곳을 제가 설계를 해야 하고, 이를 언급합니다.

    기본적으로 coinage 경쟁이기 때문에 컨펌용 코인의 모든 노드가 반드시 활성화되어야 하는 것은 아닙니다.

    하지만 날카로운 지적은 노드가 활성화되어야 있어야 한다는 것을 지적한 것입니다.
    원시적으로 코딩을 한다면, 이들 코인이 한 곳에 있든 여러 곳에 있든지 이들 노드 중 하나라도 죽으면 문제가 될 수는 있습니다.

    4)번 3)번과 같이 저도 이 문제를 생각해보았습니다.

    제가 생각했던 것은 해결 예로, 만약 3개의 컨펌 노드를 만들면, 3개 중 하나의 노드 중 하나라도 살아있다면, 이 중 하나가 51%를 가진 것으로 프로그램을 하면 됩니다.
    즉, 세개의 노드가 모두 51%를 가진 것으로 코딩을 하고, 이중에서 반드시 하나만 컴펌의 경쟁에 참여하도록 코딩을 하면 되는 것입니다.

    따라서 51%는 코딩의 문제일 뿐 아이디어의 문제는 아닙니다. 

    즉, 아이디어의 구현의 문제이며, 구현(코딩) 방법도 굉장히 다양하게 할 수 있습니다.

    핵심은, 컨펌용 코인은 이동이 안된다는 것보다 판매를 할 수 없다는 것에 방점이 있는 것입니다. 

    즉 전체 코인 중 컨펌용 코인이 51%로 이든 75%로 하든 이들이 판매가 되지 못하도록 하는 것이 핵심입니다.

    따라서 51%가 핵심이 아닙니다.

     

    (어째든, 제 용어 선택이 잘못이 되어서 오해했을 소지는 있습니다.)


    결국, 컨펌용 코인이 한 노드에 꼭 있어야 한다는 의미는 아닙니다.

    만일 그렇다면, 어린아이님의 제기한 문제가 발생할 수 있습니다.

    ------
    어째든 논리적으로 노드가 죽는 것까지 생각을 했다는 것은 놀라운 일입니다.
    저도 한번은 잠깐 생각했던 문제입니다.

  • ?

    제가 위 글을 잘 이해했는지는 모르겠습니다만... (나이가 드니 이해력이...T.T)

    일단 51% 어택 등 해킹 공격의 의미는 정상적인 블록 생성이 아닌 인위적 조작에 의한 블록체인의 변경을 의미합니다. 그것이 시간차이든 소스의 직접적 수정이든요..

    위 51% 이상의 거래 불가능 코인의 경우 전제조건이 인위적인 변형이 불가능 할 경우에 가능한 얘기입니다만... 오픈소스의 프로그래밍 코드로 이뤄진 가상코인의 경우 이런 변형이 불가능한 경우는 거의 없을 듯 하네요.. 거래 가능, 불가능을 떠나서 51% 가 변형된 블록체인을 인정하면 끝이니까요..

    두번째는 pos 의 경우 이더가 어떤식으로 될지는 모르겠지만, 지분률 = 해시파워 가 아니니까요.. 보상의 분배율이지 해시하고는 관계가 적을 가능성이 높으므로 51% 의 지분을 가지고 있다고 해서 51%의 해시를 다루는 것은 아닐 것입니다. 그러므로 51%의 지분을 가지고 있다고 어택이 가능한 것도 아니고, 51%를 가지고 있다고 해킹을 방어할 수 있는 것도 아닐 것입니다.

    만약 지분 = 해시파워라면... 큰 거래소들이 마음만 먹으면 수정할 수 있게 되겠지요.. 요즘은 거래소에 돈이 다 몰리는 추세니..
    모 코인의 경우는 지분율에 기여도를 포함하는 경우도 있구요. 다양한 다른 규제 방법이 가능할 것입니다.

  • ?
    @은빛늑대

    pos에 대한 부분을 제가 잘 적지 못해서 그런가 본데요..

    기본적으로 pos 합의 알고리즘을 사용하는 것입니다.
    따라서 기존 pos 합의 알고리즘의 coinage(coinday)를 이용한 합의 알고리즘을 기반으로 하는 것입니다.

    댓글에서 ' 51% 가 변형된 블록체인을 인정하면'이라는 표현은 개발자가 코드를 고쳐서 하드포크 등을 해서 컴펌에 쓸 코인을 유통하겠다는 것인데요.

    그렇다면 아무런 의미가 없죠.

    또한 개발자가 프로그램을 고쳐서 컨펌용 코인을 팔려고 해도, 거래소가 코드를 수정하지 않으면, 전송자체가 안되므로 코인을 팔 수도 없습니다.

    즉, 개발자와 거래소가 서로 짜고 해야 하는데, 거래소가 한번의 이익을 위해서 사기를 할 것 같지는 않습니다. 

    <b>위의 제 제안의 굉장히 좋은 점 중하나는 개발자가 네트워크 안정을 위해서 꼭 많은 발행코인을 가지고 있어야 한다는 당위성이 없어집니다.
    개발자가 5%의 코인만 가지고 있어서, 네트워크가 안정이 될 수 있기 때문에, 좀더 공평한 분포를 가진 코인이 될 수 있습니다.</b>

    pos는 해시 경쟁을 하지 않습니다. coinage 경쟁을 합니다. pow가 해시 경쟁을 하지요..

    그리고, 지적하신 거래소와는 전혀 문제가 없습니다.
    왜냐면, 개발자가 51%의 코인을 통제하고 있기 때문에 49%의 코인이 거래소에 있더라도 개발자가 네트워크를 통제할 수 있습니다.

    관심을 가져주셔서 감사합니다.

  • 이더리음운 언제 PoS넘어가나요? 설정파라메터가 있나요? 아님 hardfork를 해야하는건가요?

    (github source code를 찾아보고 있던중, 궁금합니다...)

  • ?
    @신피질
    이더리움은 제가 요즘 공부하고 있어서, pos로 넘가는 시기는 모르겠습니다.

List of Articles
번호 제목 추천 수 조회 수 글쓴이 날짜
공지 고구마 케익 추첨 이벤트 (1명) (~8/20) 3 newfile 19
ESN경매
2020.08.14
공지 땡글 경매! 문화상품권 3만원권(~8/17) 3 newfile 4 60
ESN경매
2020.08.14
공지 땡글닷컴 출석체크 이벤트(8월) 40 update 16 3238
ESN경매
2020.08.03
공지 ESN 7월 리포트 updatefile 7 1696
ESN운영
2020.07.31
공지 BitZ 거래소 관련 공지사항 9 5 665
ESN운영
2020.07.06
공지 게시판 캐시 적립 정책 변경 안내 (2019/12/20 시행) 48 update 18 1889
관리자
2019.12.20
공지 로그인이 안되시는 분은 문의해주시기 바랍니다. 12 7 4458
땡글개발자
2019.08.21
5304 [Coinone] $640 돌파: 위안화·파운드 약세에 치솟는 비트코인   10월 3주차 $640 돌파: 위안화·파운드 약세에 치솟는 비트코인   지난 11일(화) 비트코인은 최저가 $615.87에서 4% 이상 올라 3개월 만에 $640선을 돌파했습니다. 이후 아래로 소폭 밀린 후 지지선 635, 저항선 640... 1 file 4 1662
Coinone
2016.10.16
5303 이더리움 geth 하드포크 노트7 과 parity 이더리움 DoS 하드포크를 위한 새버저들이 출시되었습니다.   Geth 1.4.18 일명 노트 7   https://github.com/ethereum/go-ethereum/releases/tag/v1.4.18   패러티도 업데이트 되었습니다. 1.3.8   https://github.c... 3 3 2125
atomrigs
2016.10.16
5302 POLONIEX Dao extraBalance 는 언제쯤받을수있을까요?? POLONIEX Dao extraBalance 는 언제쯤받을수있을까요?? 아톰님의 소중한답변으로 한국거래소에서는 빠른 처리를 받을수있었는데요 폴로닉스에서는 아직 답변이없네요  티켓을 보내보기도했는데 답변이 무슨말인지 잘... 14 0 1872
디자이너
2016.10.15
5301 ETC 의 진로   이더리움 DOS 하드포크가 확정되고 최종 테스트작업이 계속 진행중입니다. 블럭하이트가 조금 뒤로 미루어졌습니다. 첫번째 하드포크 블럭번호가 2463000 입니다. 현재 이더리움 커뮤니티내에서는 이번 하드포크의... 9 file 12 4589
atomrigs
2016.10.15
합의 알고리즘에 대한 개략 http://www.ddengle.com/blockchain/1433956 에 제가 답글로 쓴 합의 알고리즘에 대한 내용을 다시 올립니다.   --------------------------   스팀은 기본적으로 dpos방법을 사용합니다. 추가로, 개발자의 지분확보... 6 2 2374
loum
2016.10.15
5299 폴로닉스 인증서 문제 임시 해결방법... 인터넷 익스플로러   출처 : http://www.clien.net/cs2/bbs/board.php?bo_table=kin&amp;wr_id=3608654 의 댓글중...   &quot;인터넷 옵션 -&gt; 고급 -&gt; 보안 -&gt; 서버의 인증서 해지 확인 을 체크 해제 후 익스창 다시 실행하면 되더군요........ 2 1 895
은빛늑대
2016.10.14
5298 인제 폴로닉스에서 Ardor 코인을 지급해줍니다 Nxt 지분 * 가지고있는 시간 대비해서 준다고합니다     2 file 0 1114
미리노니나니
2016.10.14
5297 이더리움의 단점에 대해서 알고 싶습니다. 저는 이더리움에 대해서, 잘 알지 못하고, 개략적이고, 부분적인 사항만 조금 알고 있습니다.   하지만, 이더리움의 현재의 단점에 대해서 토론이 없고, 이런 단점들이 어떻게 해결이 가능할지, 아니면, 해결이 힘들... 20 3 8353
loum
2016.10.14
5296 현재 드워프풀 테스트 중입니다 그런데 코인이 안들어오네요 ㅠ_ㅠ 마풀허를 주로 사용할 거지만 혹여 문제 대비해서 드워프 풀을 테스트 하며   클레이모어로 사용해서 듀얼로 캐고 있습니다.   해쉬는 확실히 나오느데 제 지갑을 코인원 지갑으로 우선 해둿는데 지갑에 안들어오네요... 3 0 1328
살려는주세요
2016.10.14
5295 이더리움 지갑 관련 질문 드립니다 1.키스토어를 분실하면 지갑 주소만으로 키스토어를 복구할 수 없나요?   2.많은 회원님들이 이더 주소들을 개인정보에 보이도록 설정해놨는데    타인이 이 주소로 지갑 계정의  상태(이더 수량)를 알 수 있나요?   ... 2 0 1497
밸리데이터
2016.10.14
5294 이더리움 DoS 하드포크 확정 이더리움 DoS 공격을 방어하기 위한 하드포크가 결정되었습니다. 표준시 월요일 쯤에 하드포킹이 될 것 같습니다. 2단계로 진행된다고 합니다. 1단계는 개스비 조종이고, 2단계는 DoS 공격으로 싸인 쓰레기 청소입니... 18 8 3223
atomrigs
2016.10.14
5293 이더리움 채굴풀 선택 주의 저를 포함해 땡글에 많은 분들이 이더리움 채굴을 하고 있고, 대부분 다 풀을 이용하고 있는 것으로 알고 있습니다. 현재 DOS 공격 때문에 네트워크에 지장에 많고, 그러다 보니 채굴보상도 제대로 못받게 되는 경우... 7 3 5571
atomrigs
2016.10.14
5292 폴로닉스접속시 보안 인증서에 문제가 있습니다라고 뜹니다 ▲ 익스플로러로 접속시   ▲크롬으로 접속시   이렇게 뜨는데요 재부팅해봐도안되고 https로 해봐도안되고 v3바이러스검사해봐도 안되는데요... 어떻게해야될까요 어제까지만해도됫는데 갑자기이러니 혼란스럽네요.. ... 4 file 0 1116
이더야이더야
2016.10.14
5291 nxt 질문 드립니다 제가 nxt 비트렉스에 8월쯤사서 보관중인데요 ardor 받을려면 어떡해하죠 죄송해요 초보라~ 비트렉스에서는 안되는거 같은데 폴로닉스로 보내면 ardor 받을수있나요? 9 0 1489
광땡
2016.10.13
5290 이더리움 Parity 1.3.7 Update 패러티 메모리 사용이 너무 늘어나지 않도록 조정된 버전입니다. 메모리 사용량이 대폭 줄어들었다고 합니다.   https://github.com/ethcore/parity/releases   geth 도 1.4.17 이 최신 버전입니다. https://github.c... 1 1 1430
atomrigs
2016.10.13
5289 zcash 인포그래픽스   ZCASH EXPLAINED Sep 29, 2016 # ZERO KNOWLEDGE PROOFS Zero knowledge proofs –more specifically “zero-knowledge arguments of knowledge”– are a scientific breakthrough in the field of cryptography: they... 12 file 8 2810
atomrigs
2016.10.13
5288 이더리움 데브콘2 전체 슬라이드 모음 데브콘 비디오가 올라올 때 마다 주요한 것 하나씩 포스팅할 예정인데, 성격 급하신 분은 다른 세션 슬라이드를 먼저 보고 싶어하시는 분들도 있을 것 같습니다. 마침 오늘 전체 슬라이드 자료가 올라 왔군요. 사실 ... 2 7 1489
atomrigs
2016.10.13
5287 이더리움 devcon2 이더리움이란 by 비탈릭 이더리움 devcon 2 비디오와 슬라이드 연재시리즈입니다.   비탈릭이 이더리움에 대해 간략히 정리한 비디오와 슬라이드입니다.     Ethereum_in_25_Minutes.pdf                                                   ... 2 file 7 1920
atomrigs
2016.10.13
5286 POT, 대마초코인이 왠일이래요? 거래량 1만개를 돌파해 버리다니,... 무슨 이슈가 있는것  같은데 혹시 아시는분 계시나요?   재작년에 좀 보유하고 있었는데,..   10 2 3821
꿀맨
2016.10.11
5285 코인원이 달라진 걸까요.. 큰 금액은 아니지만 10이더 정도가 모이면 코인원으로 송금해서 관리하고 있습니다.   그 동안은 문제 없이 잘 입금 되고 있었는데 마지막 2건은 입금이 안 되고 1:1 문의를 넣어야만 수동 입금 되었습니다.   마지막... 4 0 1889
훼니
2016.10.11
목록
Board Pagination Prev 1 ... 779 780 781 782 783 784 785 786 787 788 ... 1049 Next
/ 1049
default debug random = 0 / type = READ / detected = READ