[Solana] 일반 개발 vs 블록체인 개발
포스트
취소

[Solana] 일반 개발 vs 블록체인 개발


Title


dApp (Decentralized Application)

dApp: 블록체인 기반의 탈중앙화된 애플리케이션

dApp은 일반 개발에서의 “애플리케이션”과는 다른 블록체인 개발에 특화된 용어이다. 중앙 서버에 의존하지 않고 블록체인 네트워크 상의 여러 노드에 데이터를 분산 저장하여 운영되며, 이로 인해 보안성과 투명성이 향상된다.


일반 웹 애플리케이션과 dApp

  • 일반 웹 애플리케이션: 거래와 유저 간 상호 작용은 중앙화된 서버를 통해 처리되며, 서버 문제로 인해 전체 서비스가 중단될 가능성이 있다.
  • dApp: 블록체인을 기반으로한 거래와 블록 생성이 Peer-to-peer 방식으로 처리되며, 한 노드의 문제가 발생해도 다른 노드들이 정상 작동하기 때문에 서비스 중단 리스크가 낮다.

또한 dApp은 “네트워크 참여자 전체가 데이터를 저장하고 처리한다”라는 특징을 가진다.


계정 및 구조

계정

기존의 계정은 ID와 PW로 구성되었다. 그러나 dApp에서는 사용자의 개인정보 유출 위험을 줄이기 위해 12개 혹은 24개의 단어 모음(mnemonic)으로 계정 정보와 권한을 관리한다. 이 단어 모음은 어디에도 저장되지 않으며(본인이 직접 노트나 다른 메모 앱에 적어야 한다), mnemonic으로부터 비밀키와 공개 주소를 생성할 수 있다. 공개 주소는 계정 ID나 계좌 번호처럼 작동한다. 여기서 비밀키는 공개 주소를 통해 추론할 수 없다.

구조

  • 기존: 유저 - 웹 브라우저 - 웹 서버 - 데이터베이스. 중앙 서버가 유일한 데이터 저장소로 보안 취약점이 있을 수 있다.
  • 블록체인: 위의 구조에 스마트 컨트랙트가 추가되며, 스마트 컨트랙트는 블록체인 위에서 실행되는 코드로, 특정 조건이 충족되면 자동으로 실행된다.

스마트 컨트랙트는 미리 정의된 조건에 따라 자동으로 실행되는 전자 계약으로, 중개자 없이 계약의 내용을 이행할 수 있다. 이를 웹과 연동하여, 컨트랙트 내의 함수를 호출하거나 데이터를 조회할 수 있다. 블록체인으로는 은행과 같은 중간 매개체 없이도 금융 시스템을 구축할 수 있다.


dApp의 장점

  • 금융 시스템 구축: 블록체인 기반의 금융 시스템 애플리케이션을 개발할 수 있다. 중간 매개체 없이 금융 거래 처리가 가능하며, 이로 인해 비용과 속도가 향상된다.
  • 보안성: 데이터 조작이 어렵고, 데이터가 여러 노드에 분산 저장되기 때문에 한 곳의 해킹이 전체 시스템을 위협하기 어렵다.
  • 투명성: 모든 거래와 데이터가 공개적으로 접근 가능하며, 블록체인의 모든 거래 기록은 변경이 불가능하다.
  • 자유도: 중앙 기관의 규제나 간섭 없이 사용자 스스로가 원하는 애플리케이션을 구축 및 운영할 수 있다.

출처: Fastcampus

이 포스트는 저작권자의 CC BY-NC-ND 4.0 라이센스를 따릅니다.

[Solana] 블록체인이란?

-