맞춤기술찾기

이전대상기술

이더리움 바이트코드에 대한 정적 데이터 흐름 분석 방법 및 장치

  • 기술번호 : KST2023010211
  • 담당센터 : 대전기술혁신센터
  • 전화번호 : 042-610-2279
요약, Int. CL, CPC, 출원번호/일자, 출원인, 등록번호/일자, 공개번호/일자, 공고번호/일자, 국제출원번호/일자, 국제공개번호/일자, 우선권정보, 법적상태, 심사진행상태, 심판사항, 구분, 원출원번호/일자, 관련 출원번호, 기술이전 희망, 심사청구여부/일자, 심사청구항수의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 서지정보 표입니다.
요약 이더리움 바이트코드에 대한 정적 데이터 흐름 분석 방법 및 장치가 제시된다. 본 발명에서 제안하는 이더리움 바이트코드에 대한 정적 데이터 흐름 분석 장치는 정적 데이터 흐름 분석을 위한 이더리움 바이트코드를 읽어 들이고 파싱하여, 실행 흐름 그래프(control-flow graph)를 생성하는 파싱부, 상기 생성된 실행 흐름 그래프에 따라 요약 해석에 기초한 정적 데이터 흐름 분석을 수행하고, 스마트 컨트랙트의 각 함수에서 읽거나 쓰는 상태 변수들을 읽고 쓰는지에 관한 데이터 흐름을 분석하는 정보 수집부 및 상기 분석된 데이터 흐름에 기초하여 어떠한 순서의 스마트 컨트랙트의 함수 호출이 상태 변수를 통한 데이터 흐름을 만들어내는지 결정하는 초기화부를 포함한다.
Int. CL G06F 11/36 (2006.01.01) G06F 8/41 (2018.01.01)
CPC G06F 11/3636(2013.01) G06F 11/3696(2013.01) G06F 11/3688(2013.01) G06F 8/427(2013.01)
출원번호/일자 1020220054059 (2022.05.02)
출원인 한국과학기술원
등록번호/일자
공개번호/일자 10-2023-0154542 (2023.11.09) 문서열기
공고번호/일자
국제출원번호/일자
국제공개번호/일자
우선권정보
법적상태 공개
심사진행상태 수리
심판사항
구분 국내출원/신규
원출원번호/일자
관련 출원번호
심사청구여부/일자 Y (2022.05.02)
심사청구항수 10

출원인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 출원인 표입니다.
번호 이름 국적 주소
1 한국과학기술원 대한민국 대전광역시 유성구

발명자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 발명자 표입니다.
번호 이름 국적 주소
1 차상길 대전광역시 유성구
2 최재승 대전광역시 유성구
3 김도연 대전광역시 유성구
4 김수민 대전광역시 유성구

대리인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 대리인 표입니다.
번호 이름 국적 주소
1 양성보 대한민국 서울특별시 강남구 선릉로***길 ** (논현동) 삼성빌딩 *층(피앤티특허법률사무소)

최종권리자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 최종권리자 표입니다.
번호 이름 국적 주소
최종권리자 정보가 없습니다
번호, 서류명, 접수/발송일자, 처리상태, 접수/발송일자의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 행정처리 표입니다.
번호 서류명 접수/발송일자 처리상태 접수/발송번호
1 [특허출원]특허출원서
[Patent Application] Patent Application
2022.05.02 수리 (Accepted) 1-1-2022-0467083-06
2 선행기술조사의뢰서
Request for Prior Art Search
2022.11.28 수리 (Accepted) 9-1-9999-9999999-89
3 특허고객번호 정보변경(경정)신고서·정정신고서
2023.01.31 수리 (Accepted) 4-1-2023-5023571-05
4 특허고객번호 정보변경(경정)신고서·정정신고서
2023.05.04 수리 (Accepted) 4-1-2023-5110236-33
번호, 청구항의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 청구항 표입니다.
번호 청구항
1 1
파싱부를 통해 정적 데이터 흐름 분석을 위한 이더리움 바이트코드를 읽어 들이고 파싱하여, 실행 흐름 그래프(control-flow graph)를 생성하는 단계; 정보 수집부를 통해 상기 생성된 실행 흐름 그래프에 따라 요약 해석에 기초한 정적 데이터 흐름 분석을 수행하고, 스마트 컨트랙트의 각 함수에서 읽거나 쓰는 상태 변수들을 읽고 쓰는지에 관한 데이터 흐름을 분석하는 단계; 및 초기화부를 통해 상기 분석된 데이터 흐름에 기초하여 어떠한 순서의 스마트 컨트랙트의 함수 호출이 상태 변수를 통한 데이터 흐름을 만들어내는지 결정하는 단계 를 포함하는 이더리움 바이트코드에 대한 데이터 흐름 분석 방법
2 2
제1항에 있어서,상기 파싱부를 통해 정적 데이터 흐름 분석을 위한 이더리움 바이트코드를 읽어 들이고 파싱하여, 실행 흐름 그래프를 생성하는 단계는, 스택 기반 언어(stack-oriented language)인 상기 이더리움 바이트코드에 대해 실행 흐름을 결정하는 제어문들을 파악하기 위하여 상기 스택 기반 언어에 상수 전파(constant propagation) 기술을 활용하여, 상기 제어문들이 실행될 때 상기 스택 기반 언어에 어떠한 값이 스택되어 있는지 알아내고, 상기 제어문들이 각각 어떠한 주소로 이동하는지를 파악하고, 상기 스택 값 및 주소 이동을 종합하여 실행 흐름 그래프를 생성하는 이더리움 바이트코드에 대한 데이터 흐름 분석 방법
3 3
제1항에 있어서,상기 정보 수집부를 통해 상기 생성된 실행 흐름 그래프에 따라 요약 해석에 기초한 정적 데이터 흐름 분석을 수행하고, 스마트 컨트랙트의 각 함수에서 읽거나 쓰는 상태 변수들을 읽고 쓰는지에 관한 데이터 흐름을 분석하는 단계는, 상기 상태 변수에 대한 접근을 상기 각 함수별로 파악하기 위해 사용되는 상기 이더리움 바이트코드 명령들이 실행될 때 스택 기반 언어에 어떠한 값이 스택되어 있는지 파악하고, 상기 스택되어 있는 값은 어느 상태 변수에 접근할지를 구분하는 고유한 주소가 되고, 상기 주소를 포함하는 상태 변수 접근 정보에 대해 요약 해석(abstract interpretation)에 기초한 정적 분석 기술을 활용하여 상기 이더리움 바이트코드가 상태 변수의 주소를 계산하기 위해 사용하는 연산들을 추적하고, 어떠한 상태 변수 주소에 접근하는지를 요약하는 이더리움 바이트코드에 대한 데이터 흐름 분석 방법
4 4
제1항에 있어서,상기 초기화부를 통해 상기 분석된 데이터 흐름에 기초하여 어떠한 순서의 스마트 컨트랙트의 함수 호출이 상태 변수를 통한 데이터 흐름을 만들어내는지 결정하는 단계는, 상기 분석된 데이터 흐름의 상태 변수 접근 정보에 기초하여 상기 상태 변수를 통한 데이터 흐름을 일으키는 스마트 컨트랙트의 함수들의 순서쌍을 파악하고, 상기 순서쌍을 포함하도록 함수 호출 순서를 결정하는 이더리움 바이트코드에 대한 데이터 흐름 분석 방법
5 5
정적 데이터 흐름 분석을 위한 이더리움 바이트코드를 읽어 들이고 파싱하여, 실행 흐름 그래프(control-flow graph)를 생성하는 파싱부; 상기 생성된 실행 흐름 그래프에 따라 요약 해석에 기초한 정적 데이터 흐름 분석을 수행하고, 스마트 컨트랙트의 각 함수에서 읽거나 쓰는 상태 변수들을 읽고 쓰는지에 관한 데이터 흐름을 분석하는 정보 수집부; 및 상기 분석된 데이터 흐름에 기초하여 어떠한 순서의 스마트 컨트랙트의 함수 호출이 상태 변수를 통한 데이터 흐름을 만들어내는지 결정하는 초기화부 를 포함하는 이더리움 바이트코드에 대한 데이터 흐름 분석 장치
6 6
제5항에 있어서,상기 파싱부는, 스택 기반 언어(stack-oriented language)인 상기 이더리움 바이트코드에 대해 실행 흐름을 결정하는 제어문들을 파악하기 위하여 상기 스택 기반 언어에 상수 전파(constant propagation) 기술을 활용하여, 상기 제어문들이 실행될 때 상기 스택 기반 언어에 어떠한 값이 스택되어 있는지 알아내고, 상기 제어문들이 각각 어떠한 주소로 이동하는지를 파악하고, 상기 스택 값 및 주소 이동을 종합하여 실행 흐름 그래프를 생성하는 이더리움 바이트코드에 대한 데이터 흐름 분석 장치
7 7
제5항에 있어서,상기 정보 수집부는, 상기 상태 변수에 대한 접근을 상기 각 함수별로 파악하기 위해 사용되는 상기 이더리움 바이트코드 명령들이 실행될 때 스택 기반 언어에 어떠한 값이 스택되어 있는지 파악하고, 상기 스택되어 있는 값은 어느 상태 변수에 접근할지를 구분하는 고유한 주소가 되고, 상기 주소를 포함하는 상태 변수 접근 정보에 대해 요약 해석(abstract interpretation)에 기초한 정적 분석 기술을 활용하여 상기 이더리움 바이트코드가 상태 변수의 주소를 계산하기 위해 사용하는 연산들을 추적하고, 어떠한 상태 변수 주소에 접근하는지를 요약하는 이더리움 바이트코드에 대한 데이터 흐름 분석 장치
8 8
제5항에 있어서,상기 초기화부는, 상기 분석된 데이터 흐름의 상태 변수 접근 정보에 기초하여 상기 상태 변수를 통한 데이터 흐름을 일으키는 스마트 컨트랙트의 함수들의 순서쌍을 파악하고, 상기 순서쌍을 포함하도록 함수 호출 순서를 결정하는 이더리움 바이트코드에 대한 데이터 흐름 분석 장치
9 9
이더리움 바이트코드에 대한 데이터 흐름 분석 장치에 의해 수행되는 데이터 흐름 분석 방법을 실행시키기 위해 컴퓨터 판독 가능한 저장 매체에 저장된 프로그램에 있어서,파싱부를 통해 정적 데이터 흐름 분석을 위한 이더리움 바이트코드를 읽어 들이고 파싱하여, 실행 흐름 그래프(control-flow graph)를 생성하는 단계; 정보 수집부를 통해 상기 생성된 실행 흐름 그래프에 따라 요약 해석에 기초한 정적 데이터 흐름 분석을 수행하고, 스마트 컨트랙트의 각 함수에서 읽거나 쓰는 상태 변수들을 읽고 쓰는지에 관한 데이터 흐름을 분석하는 단계; 및 초기화부를 통해 상기 분석된 데이터 흐름에 기초하여 어떠한 순서의 스마트 컨트랙트의 함수 호출이 상태 변수를 통한 데이터 흐름을 만들어내는지 결정하는 단계 를 포함하는 컴퓨터 판독 가능한 저장 매체에 저장된 프로그램
10 10
제9항에 있어서,스택 기반 언어(stack-oriented language)인 상기 이더리움 바이트코드에 대해 실행 흐름을 결정하는 제어문들을 파악하기 위하여 상기 스택 기반 언어에 상수 전파(constant propagation) 기술을 활용하여, 상기 제어문들이 실행될 때 상기 스택 기반 언어에 어떠한 값이 스택되어 있는지 알아내고, 상기 제어문들이 각각 어떠한 주소로 이동하는지를 파악하고, 상기 스택 값 및 주소 이동을 종합하여 실행 흐름 그래프를 생성하고, 상기 상태 변수에 대한 접근을 상기 각 함수별로 파악하기 위해 사용되는 상기 이더리움 바이트코드 명령들이 실행될 때 스택 기반 언어에 어떠한 값이 스택되어 있는지 파악하고, 상기 스택되어 있는 값은 어느 상태 변수에 접근할지를 구분하는 고유한 주소가 되고, 상기 주소를 포함하는 상태 변수 접근 정보에 대해 요약 해석(abstract interpretation)에 기초한 정적 분석 기술을 활용하여 상기 이더리움 바이트코드가 상태 변수의 주소를 계산하기 위해 사용하는 연산들을 추적하고, 어떠한 상태 변수 주소에 접근하는지를 요약하며, 상기 분석된 데이터 흐름의 상태 변수 접근 정보에 기초하여 상기 상태 변수를 통한 데이터 흐름을 일으키는 스마트 컨트랙트의 함수들의 순서쌍을 파악하고, 상기 순서쌍을 포함하도록 함수 호출 순서를 결정하는 컴퓨터 판독 가능한 저장 매체에 저장된 프로그램
지정국 정보가 없습니다
패밀리정보가 없습니다
순번, 연구부처, 주관기관, 연구사업, 연구과제의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 국가R&D 연구정보 정보 표입니다.
순번 연구부처 주관기관 연구사업 연구과제
1 과학기술정보통신부 한국과학기술원 정보통신.방송 기술개발사업 (N01220001)(통합EZ)(SW 스타랩) 차세대 바이너리 디컴파일러 개발(2022년도)