목록전체 글 (207)
Gom3rye
하이퍼레저 패브릭의 동작 방식 하이퍼레저 패브릭은 체인코드를 실행하는 Orderer 서버와 체인코드를 초기화하고 실행할 내용을 검증하는 Peer 서버로 구성한다. 여기에 인증과 인가를 담당하는 CA(Certification Authority)서버를 운영하기도 하는데 사용자 및 조직 구성이 운영 환경에서 거의 변동이 없는 경우는 CA 서버를 운영하지 않고 초기에 수동으로 생성한 인증서 정보로만 운영하기도 한다. 하이퍼레저 패브릭의 동작 흐름 위의 그림에서 ‘A’로 명명된 클라이언트 어플리케이션은 체인코드 실행을 위해 Peer에 연결한다. Peer에 체인코드에 실행할 내용을 전달한다. Peer는 어플리케이션으로 부터 전달받은 트랜잭션에 대해 사전 검증하고 검증 결과를 어플리케이션으로 회신한다.(원장에는 반영..
Softswitch의 두 가지 모듈 Media gateway (MG) : physical switching function Media gateway controller (MGC) : call processing logic - 전통적인 전화망 스위치에서 수행되던 기능들이 softswitch에서는 두 개의 모듈로 나누어졌다. (기능과 비용 면에서) Packet switching에서 virtual circuit vs datagram Virtual circuit - Logical connection is established before packets are sent (circuit switching에서는 dedicated path) - Network can provide sequencing and error ..
스마트 컨트랙트란? - 조직 사이에서 서로 거래하기 전에 해당 프로세스를 다루는 계약 세트를 정의하기 위한 계약서 - Hyperledger fabric에서는 chaincode가 스마트 컨트랙트의 의미로 사용되지만 일반적으로 스마트 컨트랙트는 world state에 포함된 비즈니스 객체의 life cycle을 제어하는 트랜잭션 논리를 정의하고 체인코드는 정의한 트랜잭션 논리를 패키징해서 블록체인 네트워크에 배포하는 역할을 한다. (스마트 컨트랙트 : 트랜잭션 관리 역할, 체인코드 : 컨트랙트 배포를 위해 패키지화되는 방식 관리 역할) - 서로 다른 비즈니스 객체의 상태를 정의하고 다른 상태로의 변화를 담당하는 코드를 의미한다. - 거래 당사자 간 모든 상호 작용을 관리하는 비즈니스 모델을 제시하기 때문에 ..
반응형 웹 디자인이란? - 반응형 웹 디자인(Responsive Web Design, RWD)이란 하나의 웹사이트에서 PC, 스마트폰, 태블릿 PC 등 접속하는 디스플레이의 종류에 따라 화면의 크기가 자동으로 변하도록 만든 웹페이지 접근 기법을 말한다. (보통 모바일은 768px, 타블렛은 1024px 크기를 갖는다.) → 반응형 웹에서 빼놓을 수 없는 개념 : 모바일 퍼스트 모바일 퍼스트: 웹 디자인을 할 때, PC보다 모바일 기기를 먼저 생각해서 디자인하고 프로그래밍 하는 기법 태블릿 PC, 스마트 폰등 모바일 기기의 이용이 늘어나면서 일반 웹 사용자보다 모바일 웹 사용자가 더 많아지면서 생기게 되었다. 모바일 퍼스트의 핵심은 모바일의 제약을 집중의 기회로 본다는 것이다. 기존의 모바일의 제약으로 1..
트랜잭션이란? 외부 소유 계정 (EOA)에 의해 서명된 메시지 EVM에서 상태 변경을 유발하거나 컨트랙트를 실행할 수 있는 유일한 방법 -> 컨트랙트를 비롯한 모든 것들이 트랜잭션으로 시작된다! 트랜잭션 구조 네트워크에서 Serialize 되어있다. - 트랜잭션에 포함되는 데이터 논스(nonce) : 메시지 재사용을 방지하는 데 사용되는 일련번호 가스가격(gas price) : 발신자가 지급하는 가스의 가격 가스 한도(gas limit) : 트랜잭션을 위해 구입할 가스의 최대량 수신자(recipient) : 목적지 이더리움 주소 값(value) : 목적지에 보낼 이더의 양 데이터(data) : 가변 길이 바이너리 데이터 페이로드 트랜잭션 논스란? number once , 해당 주소에서 보낸 트랜잭션 건수..
package main // Importing the Fabric SDK Go packages. import ( "errors" "fmt" "io/ioutil" "os" "path/filepath" "github.com/hyperledger/fabric-sdk-go/pkg/core/config" "github.com/hyperledger/fabric-sdk-go/pkg/gateway" ) func main() { // Set the environment variable DISCOVERY_AS_LOCALHOST to true. os.Setenv("DISCOVERY_AS_LOCALHOST", "true") // Create a new FileSystemWallet named wallet. // A walle..