검수요청.png검수요청.png

"옵코드"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
(상수)
(상수)
6번째 줄: 6번째 줄:
 
==코드==
 
==코드==
 
===상수===
 
===상수===
*'''OP_0''', '''OP_FALSE''' : 빈 바이트 배열이 스택으로 푸시된다. 코드 번호는 0으로 나타내고, 16진수 값으로는 0x00으로 나타낸다.  
+
*'''OP_0''', '''OP_FALSE''' : 빈 바이트 배열이 스택으로 푸시된다.
*N/A : 다음 옵코드 바이트는 스택에 푸시 할 데이터이다. 코드 번호는 1-75로 나타내고, 16진수 값으로는 0x01-0x4b로 나타낸다.
+
*'''N/A''' : 다음 옵코드 바이트는 스택에 푸시 할 데이터이다.
*'''OP_PUSHDATA1''' : 다음 바이트는 스택으로 푸시 될 바이트 수를 포함한다. 코드 번호는 76으로 나타내고, 16진수 값으로는 0x4c로 나타낸다.
+
*'''OP_PUSHDATA1''' : 다음 바이트는 스택으로 푸시 될 바이트 수를 포함한다.  
*'''OP_PUSHDATA2''' : 다음 2 바이트에는 리틀 엔디안 순서로 스택에 푸시 할 바이트 수가 포함된다. 코드 번호는 77로 나타내고, 16진수 값으로는 0x4d로 나타낸다.
+
*'''OP_PUSHDATA2''' : 다음 2 바이트에는 리틀 엔디안 순서로 스택에 푸시 할 바이트 수가 포함된다.
*'''OP_PUSHDATA4''' : 다음 4 바이트에는 리틀 엔디안 순서로 스택에 푸시 할 바이트 수가 포함된다. 코드 번호는 78로 나타내고, 16진수 값으로는 0x4e로 나타낸다.
+
*'''OP_PUSHDATA4''' : 다음 4 바이트에는 리틀 엔디안 순서로 스택에 푸시 할 바이트 수가 포함된다.  
*'''OP_1NEGATE''' : 숫자 -1이 스택으로 푸시된다. 코드 숫자로는 79로 나타내고, 16진수 값으로는 0x4f로 나타낸다.
+
*'''OP_1NEGATE''' : 숫자 -1이 스택으로 푸시된다. 코드 숫자로는 79로 나타내고,  
*'''OP_1''', '''OP_TRUE''' : 숫자 1이 스택으로 푸시된다. 코드 숫자로는 82-96로 나타내고, 16진수 값으로는 0x52-0x60으로 나타낸다.
+
*'''OP_1''', '''OP_TRUE''' : 숫자 1이 스택으로 푸시된다.  
 +
*'''OP_2-OP_16''' : 단어 이름(2-16)의 숫자가 스택으로 푸시된다.
  
 
==비활성화된 옵코드==
 
==비활성화된 옵코드==

2019년 8월 14일 (수) 14:34 판

옵코드(OPCode)는 명령 또는 함수라고도하는 모든 스크립트 단어의 목록이며, 데이터를 푸시하거나 Pubkey 스크립트 또는 서명 스크립트 내에서 기능을 수행하는 비트코인 스크립트 언어의 작업코드이다.

개요

비트코인(Bitcoin) 노드에서 실행되는 소프트웨어는 프로그래밍 언어 C ++로 작성되지만 비트코인 트랜잭션에는 스크립트 라는 비트코인 관련 언어로 작성된 명령이 포함될 수도 있다. 이더리움(Ethereum) 플랫폼에는 분산 응용 프로그램 및 스마트 계약을 허용 하는 Turing-complete 프로그래밍 언어가 있지만 스크립트는 옵코드라는 일련의 명령으로 구성된 가능한 작은 범위의 작업 만 허용하는 기본 언어이다.[1]

코드

상수

  • OP_0, OP_FALSE : 빈 바이트 배열이 스택으로 푸시된다.
  • N/A : 다음 옵코드 바이트는 스택에 푸시 할 데이터이다.
  • OP_PUSHDATA1 : 다음 바이트는 스택으로 푸시 될 바이트 수를 포함한다.
  • OP_PUSHDATA2 : 다음 2 바이트에는 리틀 엔디안 순서로 스택에 푸시 할 바이트 수가 포함된다.
  • OP_PUSHDATA4 : 다음 4 바이트에는 리틀 엔디안 순서로 스택에 푸시 할 바이트 수가 포함된다.
  • OP_1NEGATE : 숫자 -1이 스택으로 푸시된다. 코드 숫자로는 79로 나타내고,
  • OP_1, OP_TRUE : 숫자 1이 스택으로 푸시된다.
  • OP_2-OP_16 : 단어 이름(2-16)의 숫자가 스택으로 푸시된다.

비활성화된 옵코드

2010년과 2011년에 심각한 버그가 발견되면서 비트코인 스크립트 언어에서 많은 옵코드가 비활성화되었다. 이러한 옵코드 중 일부가 비트코인 캐시(Bitcoin Cash)에서 제공 한 기능을 복원하고자 단순히 옵코드를 다시 활성화하는 대신, 제공하는 기능이 재검토되었으며 경우에 따라 옵코드가 다시 설계되었거나 특정 문제를 해결하기 위해 새로운 옵코드가 추가되었다.[2]

각주

참고자료

같이보기

  검수요청.png검수요청.png 이 옵코드 문서는 블록체인 기술에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.