한국어
자유게시판

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

title: 퀀텀아이콘껀텀 2019.02.14 12:42 조회 수 : 736 추천: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 3279
공지 [Q-helper] 퀀텀 코어의 수량이 맞지 않게 표시되는 오류 해결 방법 [1] title: 퀀텀아이콘슈퍼스테이커 2021.01.24 2534
공지 연이자 약5% 슈퍼스테이커 운영중입니다 수수료3%(0.5개당0.015개) [11] title: 퀀텀아이콘슈퍼스테이커 2020.12.15 5387
공지 글쓰기 레벨 안내입니다. [59] QTUM 2019.07.09 4061
6746 쭉 커뮤니티 봐왔는데 너무 이상해서 썻던 글 [13] 허헐 2018.08.05 631
6745 퀀텀 1주년에 [7] 김헥시드 2018.08.08 631
6744 비코도 떨어지고 퀀텀도 떨어지는데 오르는건 하나 있네요 [3] 원천유원지 2018.11.15 631
6743 하락장에 노드가 더 많아지는 이유가 있나요? [3] 웁스아이 2018.11.20 631
6742 비트집안싸움 아직도 진행중이네요... [7] 션킴 2017.11.17 632
6741 첫코인 투자 퀀텀으로 입문했습니다. [12] 소액장투러 2017.11.23 632
6740 퀀텀 언제쯤 사야될까요? [3] 꾸니 2017.11.30 632
6739 퀀텀 15000원에 사두고 끙끙 앓고있었는데 ㄷㄷ [4] QuuuTum 2017.12.16 632
6738 어떻게 하는것이 좋을가요? [8] 일산퀀텀빠 2018.01.09 632
6737 (코인판 펌) 업비트 회복률, 하락률 [5] title: 퀀텀아이콘향변 2018.03.09 632
6736 ub.com 로그인이 안되네요..(해결) [16] 오뽀 2018.03.22 632
6735 2만5천원을 넘었네요 [11] 저조도도 2018.05.06 632
6734 일 이딴식으로 하면 [8] title: 큐바오아이콘짜라투스트라 2018.08.04 632
6733 아직은 오르면 안된다는... [2] 시지프스75 2018.08.12 632
6732 선물때문일까요 [3] 밀맥주 2018.08.30 632
6731 스마트 계약의 Qtum-x86 가상 머신의 장점 [1] title: 퀀텀아이콘껀텀 2019.11.10 632
6730 QIAD 받고 QI 로는 어떻게 스왑하는건가요? [2] 쿠마곰 2021.02.10 632
6729 네이버 메인은 항상 코인으로 시작하네요 윤지우니 2021.04.29 632
6728 얼마만에 보는 14층인가요 [12] 다함께웃을수있게 2017.11.16 633
6727 큐바오 홈페이지 [6] 소여사 2017.11.21 633

포인트랭킹

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