한국어
자유게시판

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 1518
공지 [Q-helper] 퀀텀 코어의 수량이 맞지 않게 표시되는 오류 해결 방법 [1] title: 퀀텀아이콘슈퍼스테이커 2021.01.24 1112
공지 연이자 약5% 슈퍼스테이커 운영중입니다 수수료3%(0.5개당0.015개) [11] title: 퀀텀아이콘슈퍼스테이커 2020.12.15 4172
공지 글쓰기 레벨 안내입니다. [59] QTUM 2019.07.09 2228
11941 요즘 유행하고있는 아파트 입주 문화 이상환 2024.04.25 41
11940 출생아수 19000명 현실체감 이상환 2024.04.25 41
11939 사이트 잘 바뀌었네요^-^ 비트위의신사 2018.01.24 73
11938 자유게시판 부활 감사합니다ㅎ [4] 키릴 2018.01.24 74
11937 위임 관련 질문이 있습니다~ title: 스텔라쿵 캐리커쳐 #1예림파더 2020.08.31 83
11936 건의사항 게시판은 없을까요? [6] 100만텀 2018.01.24 84
11935 댑 게시판들이랑 묻고답하기 게시판 어디가부럿대요? [1] 마이비즈 2018.01.25 93
11934 블라인드된 것들은 대문에서도 안보이게 해주시면 좋겠습니다. [1] 시모다 2018.04.28 99
11933 오션체인으로 채굴기를 살수있다 !( 홍보 블로그 오션체인 2018.07.20 99
11932 힘드네요..ㅎㅎ [2] 메르디아스 2018.02.02 102
11931 Binance Blockchain Week Singapore title: 퀀텀아이콘껀텀 2019.01.09 102
11930 [Crypto] 암호화폐가 장기적(10~20년)으로 10,000배 오를 것 같은 이유 hippo 2018.02.19 104
11929 굿나잇 [1] 아린아린이 2019.05.10 110
11928 ZATGO 에어드랍받으세요. [1] 석현 2018.02.06 120
11927 가상화폐가 무엇인지에 대해서 생각해보았습니다. 랴홋초메 2018.01.12 121
11926 포인트 가위바위보 잼나네요 ㅎ [7] 머블홀 2018.06.08 122
11925 日 암호화폐거래소 코인체크, QTUM 상장 예고 -코인니스- title: 퀀텀아이콘껀텀 2020.02.25 123
11924 컬럼비아 대학, 스마트 계약 연구 개발 지원 title: 퀀텀아이콘껀텀 2019.01.09 127
11923 “블록체인 산업, 현재와 미래”…’BIIC2018’ 개최 [1] title: 퀀텀아이콘껀텀 2018.11.23 129
11922 Qtum Chain Weekly (3 월 25 일 - 3 월 31 일) title: 퀀텀아이콘껀텀 2019.04.02 129

포인트랭킹

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