한국어
자유게시판

Qtum 및 IPFS를 기반으로 DApp 만들기

title: 퀀텀아이콘껀텀 2019.02.14 12:42 조회 수 : 711 추천:5

방법 : Qtum 및 IPFS를 기반으로 DApp 만들기

 

추상

네트워크의 모든 노드가 상당한 양의 네트워크 대역폭과 디스크 공간을 소비하는 데이터 복사본을 유지해야하기 때문에 블록 체인은 대용량 파일을 저장하는 데 적합하지 않습니다. IPFS는 파일을 더 작은 조각으로 분할하고 네트워크 노드의 일부에 저장함으로써이 문제를 해결합니다. 블록 체인 + IPFS는 DApps의 미래라고 생각합니다. 따라서이 백서에서는 Qtum 및 IPFS를 기반으로 한 DApp 솔루션을 소개합니다.

소개

블록 체인은 "분산 된 데이터베이스"라고 정의 할 수 있습니다. 노드가 블록 체인 네트워크를 통해 합의에 이르면 전체 블록 체인의 데이터를 동기화해야합니다. 대용량 파일을 블록 체인에 업로드 할 수있게되면 스토리지 및 네트워크 리소스가 낭비됩니다. 따라서 대부분의 블록 체인 네트워크는 블록 크기를 제한하고 높은 가스 요금을 설정하므로 사람들은 더 가치 있고 간결한 정보를 블록 체인에 적용하는 경향이 있습니다.

IPFS (InterPlanetary File System)는 대용량 파일의 분산 된 저장 문제를 완벽하게 해결합니다. 새 파일을 IPFS에 업로드하면 여러 개의 256KB 트렁크로 나뉩니다. 각 트렁크에는 콘텐츠를 고유하게 식별하는 해시 값이 있습니다. 마지막으로 해시 값이 전체 파일에 대해 생성되고 모든 노드는 주소와 마찬가지로 파일을 다운로드 할 수 있습니다.

블록 체인과 IPFS의 결합은 DApps (Distributed Application)의 미래라고 생각합니다. 블록 체인은 구조화 된 데이터를 저장하는 데이터베이스로 사용되고 IPFS는 사진 및 비디오와 같은 대용량 파일을 저장하는 파일 시스템으로 사용됩니다.

이 논문을 기반으로 DApp 솔루션 제안 Qtum 및 IPFS을. 이 솔루션은 IPFS에 파일을 업로드하고 Qtum 스마트 계약서에 IPFS 주소를 기록하여 분산 된 방식으로 대용량 파일을 저장하고 공유 할 수 있습니다. 이 코드는 Github 에 업로드되었으며 , 블록 체인 기술에 익숙한 개발자는 Github을 직접 참조 할 수 있습니다.

 

배경

QTUM이란 무엇입니까?

Qtum은 UTXO (Unspent Transaction Output), PoS (Stake of Stake) 합의 및 스마트 계약의 가상 시스템 계층을 기반으로하는 블록 체인입니다. Bitcoin과 Ethereum의 장점을 모두 가지고 있습니다. Qtum은 AAL (Account Abstraction Layer) 기술을 사용하여 UTXO 모델이 EVM 스마트 계약과 호환되는 계정으로 작업 할 수있게합니다. 이러한 방식으로 Qtum은 강력한 호환성 기능과 높은 성능을 제공합니다.

 

IPFS 란 무엇입니까?

IPFS는 모든 인터넷 가능 장치를 연결하는 피어 - 투 - 피어 분산 파일 시스템을 개발하는 것을 목표로합니다. 즉, IPFS는 컨텐트 주소가 지정된 하이퍼 링크를 사용하여 높은 처리량의 콘텐츠 주소 블록 저장소 모델을 제공합니다. 이는 범용 Merkle DAG와 버전 화 된 파일 시스템을 구축 할 수있는 데이터 구조를 형성합니다. IPFS는 단일 장애 지점이 없으며 노드는 서로를 신뢰 할 필요가 없습니다.

 

블록 체인 + IPFS 기반 DApps

IPFS 공식 Github 에는 많은 IPFS 응용 프로그램이 있으며 그 중 일부는 블록 체인 + IPFS를 기반으로합니다.

아카샤

Akaha 는 Ethereum 및 IPFS가 제공하는 차세대 소셜 미디어 네트워크라고합니다. Akasha는 블로그가 중앙 서버 대신 IPFS 네트워크를 통해 게시되는 분산 형 블로그 플랫폼으로 간주 될 수 있습니다. 동시에 사용자는 ETH를 사용하여 고품질의 블로그에 대한 보상을받을 수 있습니다. 너무 많은 규제가 없으며 콘텐츠 수익은 제작자가 직접 소유합니다.

uPort

전자 상거래 분야에서 ID 인증은 항상 핵심 포인트였습니다. uPort 는 Ethereum 및 IPFS를 기반으로하는 ID 인증 DApp입니다. 사용자는 uPort에서 제공 한 현명한 계약을 사용하여 신원을 등록 할 수 있으며 시스템은 신원 정보를 IPFS에 기록합니다. uPort를 기반으로 사용자는 개인 정보를 사용하여 디지털 ID를 가질 수 있습니다. 특정 조직이나 개인 만이 자신의 개인 데이터에 액세스 할 수 있습니다.

시스템 소개

다음은 제안 된 DApp 솔루션에 대한 깊은 통찰력을 갖게 될 것입니다.

시스템 구조

 

시스템에는 두 개의 레이어가 있습니다.

첫 번째는 상위 레이어입니다. React 프레임 워크와 HTML 및 JS를 기반으로합니다. 사용자는 웹 페이지를 통해 시스템에 액세스 할 수 있습니다. QtumJS 및 JS-IPFS-API를 통해 상위 계층은 하위 계층과 통신합니다. QtumJS는 호출및 보내기 인터페이스를 통해 Qtum에서 스마트 계약을 읽고 씁니다 JS-IPFS-API는 add 인터페이스를 통해 파일을 IPFS에 추가 하고 get 인터페이스를 통해 파일을 가져옵니다 .

하위 계층에는 QTUM과 IPFS의 두 부분이 있습니다.

  • Qtum - Qtum에 구조화 된 데이터 (파일 이름, 해시 값, 시간 추가 등)를 저장하는 스마트 계약이 배포됩니다. add 인터페이스 를 사용하여 새 레코드를 추가 하고 getIndex 및 get 인터페이스로 모든 레코드를 가져올 수 있습니다. 현명한 계약은 다음과 같습니다.
pragma solidity ^ 0.4.24; 
계약 IpfsRecord { 
   string [] 레코드; 
   함수 추가 (문자열 데이터) external { 
       records.push (data); 
   } 
   함수 getIndex () public 뷰는 (uint) {returns 
       records.length;를 반환합니다. 
   } 
   function get (uint index) public view returns (string) { 
       반환 레코드 [인덱스]; 
   } 
}
  • IPFS - 로컬 노드이거나 원격 노드 일 수 있습니다. 수신 할 때 추가 JS-IPFS-API에 의해 전송 된 요청을 IPFS 파일을 저장하고 해당 주소를 반환합니다. 수신 할 때 가져 오기 요청을 IPFS는 파일의 내용의 주소에 반환 따라 파일을 검색합니다.

시스템 순서도

파일을 올리다

사용자가 업로드 버튼을 클릭하면 JS가 클릭 동작을 수신하고 몇 가지 단계가 중단됩니다.

  • 파일을 버퍼 로 변환하십시오 .
  • 추가를 통해 IPFS에 업로드 하십시오 .
  • add 가 반환 된 파일 주소를 가져옵니다 .
  • 파일 주소, 보낸 사람 주소 및 현재 시간을 새 레코드로 문자열에 연결하십시오.
  • 트랜잭션을 Qtum으로 보내 스마트 계약서에 새 레코드를 추가하십시오.

다음과 같이 설명 할 수도 있습니다.

 

파일 목록 표시

파일 목록을 표시하는 프로세스는 다음과 같습니다.

  • QtumJS 및 IPFS-JS를 초기화하십시오.
  • 보내기 CALL의 Qtum과 전화 요청 getIndex의 레코드 수를 얻기 위해 인터페이스를.
  • 계약서의 모든 레코드를 인덱스에 따라 가져옵니다.
  • 모든 파일 정보를 브라우저로 리턴하십시오.
 

이 시스템 사용 방법

간단한 소개는 다음과 같습니다.

  • 코드를 복제하고 의존성을 설치하십시오.
  • Qtum에는 현명한 계약이 필요하기 때문에 Solidity compiler와 Solar를 설치해야합니다.
  • 로컬 IPFS 노드를 시작하거나 원격 노드를 사용하십시오.
  • Qtum 노드를 시작하고 CORS 프록시를 설정하십시오.
  • 현명한 계약을 전개하고 계정에 동전이 있는지 확인하십시오.
  • 마지막으로 시스템을 시작하십시오.

자세한 단계는 [3]의 빠른 시작으로 이동하십시오.

이 시스템은 사용하기가 매우 쉽습니다. 시스템을 시작한 후 브라우저에 http : // localhost : 3000 / 을 입력하고 업로드를 클릭하여 파일을 업로드하면 스마트 계약서의 모든 기록이 버튼 아래에 표시됩니다.

 

미래의 일

Qtum과 IPFS의 상호 보완적인 관계를 명확히 알 수 있습니다 : IPFS는 블록 체인 스토리지 공간이 비싸고 확장하기 어려운 문제를 크게 보완 할 수 있으며 Qtum은 IPFS에 대한 합의, 인센티브 및 소유권의 특성을 제공 할 수 있습니다.

Qtum은 EVM 스마트 계약을 통해 ERC721 표준과 완벽하게 호환 될 수 있으므로 NFT (Non-Fungible Token)와 IPFS를 함께 사용할 수 있습니다. IPFS의 각 파일은 교환 할 수있는 블록 체인의 토큰으로 나타낼 수 있습니다.

예를 들어, 저장을 위해 IPFS에 많은 작품을 업로드 한 다음 ERC721 토큰을 사용하여 소유권을 기록 할 수 있습니다. 따라서 토큰을 교환하여 각 작품의 소유권을 교환 할 수 있습니다. 블록 체인의 투명성으로 트랜잭션이 악의적 인 공격을 막을 수 있습니다.

따라서 우리는 다음과 같은 측면을 고려하고 있습니다.

 

  • Qtum에서 NFT와 IPFS를 결합하십시오.
  • ERC721 표준을 기반으로 NFT와 IPFS를 결합하기위한 데모를 개발하십시오.
  • NFT 계약 전개 및 IPFS 네트워크 액세스 도구 개발
  • 분산 된 NFT 교환 플랫폼을 구축하십시오.

 

https://blog.qtum.org/how-to-build-a-dapp-based-on-qtum-and-ipfs-692bc3ab607a 

번호 제목 글쓴이 날짜 조회 수
공지 큐바오(큐백x)Qrc20 코인 출금방법 [133] title: 퀀텀아이콘슈퍼스테이커 2021.02.24 1508
공지 [Q-helper] 퀀텀 코어의 수량이 맞지 않게 표시되는 오류 해결 방법 [1] title: 퀀텀아이콘슈퍼스테이커 2021.01.24 1107
공지 연이자 약5% 슈퍼스테이커 운영중입니다 수수료3%(0.5개당0.015개) [11] title: 퀀텀아이콘슈퍼스테이커 2020.12.15 4164
공지 글쓰기 레벨 안내입니다. [59] QTUM 2019.07.09 2218
11778 스냅샷 끝났나요? [5] 83층가즈아 2021.02.13 973
11777 퀀텀이 좋다고 생각하는 이유 [2] Ronaldo 2021.02.13 1240
11776 조금 이른지 모르겠는데 생각보다 잘버티네요? [7] title: 스텔라쿵 캐리커쳐 #1타이어 2021.02.13 914
11775 쪼개진 잔액주소에서 원래 지갑 주소로 보냈는데요 [1] 두부 2021.02.12 273
11774 저도 정리했습니다 [2] 업업올라라 2021.02.12 667
11773 저도 정리했습니다 [2] 김태운 2021.02.12 590
11772 3년 존버끝에 드디어 탈출했습니다. [11] 붉은언덕 2021.02.12 1034
11771 에어드랍 스냅샷이 내일로 넘어가는 00시 맞나요? [1] 이랑이랑 2021.02.12 454
11770 하 진짜 안오르네 ㅠㅠ [6] sgdsgsh 2021.02.12 509
11769 거의 삼년만에 들어와 봅니다 [4] Baekim 2021.02.11 618
11768 퀀텀 평단 6만원정도인데 3년만에 들어와보네요 [7] sgdsgsh 2021.02.11 1182
11767 업비트 에어드랍 지원하네요 유진남 2021.02.11 483
11766 QTUM 지갑 오류 도와주세요 ㅠㅠ [4] Alex97 2021.02.11 440
11765 3년전 큐바오지갑에 넣어둔게 다 없어졌네요 [5] 옥수동킴 2021.02.11 629
11764 에어드랍 직후 [7] 달려라코인 2021.02.11 671
11763 지갑 관련 답변좀 부탁드립니다... topcdc 2021.02.11 185
11762 에어드랍 이후 [6] 와와 2021.02.11 665
11761 위성은 언제 쏘나요? [4] 퀀텀주세요 2021.02.10 678
11760 QIAD 받고 QI 로는 어떻게 스왑하는건가요? [2] 쿠마곰 2021.02.10 595
11759 도와주세요 [9] 호야람 2021.02.10 487

포인트랭킹

순위 닉네임 포인트
1위 title: 스텔라쿵 캐리커쳐 #1타이어 6778195점
2위 title: 퀀텀아이콘빵먹는곰돌이 5964744점
3위 슈퍼비트 5895800점
4위 지금감사 5822100점
5위 title: 스텔라쿵 캐리커쳐 #1미스릴 5596946점
6위 불꽃 5591200점
7위 title: 퀀텀아이콘봄이 4972550점
8위 밀키웨이 3047900점
9위 빵상 2975450점
10위 대바기 2728250점