표제지
국문요약
목차
제1장 서론 10
제2장 이론적 배경 12
제1절 블록체인이란? 12
제1항 블록체인 소개 12
제2항 블록체인의 주요 구성요소 14
제3항 블록체인 패러다임의 진화 16
제2절 하이퍼레저 패브릭(Hyperledger Fabric) 18
제1항 왜 하이퍼레저 패브릭인가? 18
제2항 주요 구성요소 19
제3항 정식버전 출시에 따른 성능비교 20
제3장 관련 연구 21
제1절 전자투표 소개 21
제1항 REV(Remote internet E-Voting)방식 23
제2항 PSEV(Poll Site E-Voting)방식 23
제2절 세계 전자투표 시스템 동향 25
제1항 스페인(Spain) 25
제2항 에스토니아(Estonia) 25
제3항 호주(Australia) 26
제4항 덴마크(Denmark) 26
제5항 미국(United States of America) 26
제6항 우크라이나(Ukraine) 26
제7항 대한민국(Republic of Korea) 27
제8항 인도(India) 27
제4장 제안 방식 28
제1절 가중 투표 시스템 개념 설계 28
제2절 분산원장 저장 및 열람 32
제1항 분산원장의 저장방식 32
제2항 분산원장의 열람방식 33
제5장 투표 시스템 구현 및 분석 34
제1절 구현 환경 34
제2절 투표 시스템 구현 34
제1항 투표 체인코드 스크립트(Golang) 작성 34
제2항 설치 및 구현 38
제6장 결론 및 향후 연구 45
참고문헌 46
Abstract 48
표 1. 블록체인의 특성 12
표 2. 블록체인의 유형 13
표 3. 온라인 투표 가이드라인 요구조건 21
표 4. 중복을 배제한 표본집단 선정 코드(자바스크립트) 29
표 5. 점수별 환산 모델(예시) 31
표 6. 등급별 점수의 환산 모델(예시) 31
표 7. 구현 환경 34
표 8. 투표 체인코드 작성 37
그림 1. 블록체인의 구조(헤더와 바디) 13
그림 2. 블록체인의 진화 16
그림 3. 인사평가체계구성도(하이퍼레저 패브릭 v0.6) 20
그림 4. K-Voting 온라인 투표의 종류 21
그림 5. 가중 투표 표본 집단 선정 29
그림 6. 가중 투표 참여자 정리 30
그림 7. 분산원장 기록 트랜잭션 순서도 32
그림 8. 채널을 이용한 방법 33
그림 9. PDC(Private Data Collection)를 이용한 방법 33
그림 10. 개발환경 구성(고 언어, 도커 컴포즈 설치) 38
그림 11. 하이퍼레저 네트워크 구축 화면 38
그림 12. 폴더 이동 및 체인코드 복사 화면 39
그림 13. CLI 화면 39
그림 14. docker ps화면 39
그림 15. 컨테이너 정상종료 화면 40
그림 16. 빌드 화면 41
그림 17. 구현 화면 41
그림 18. 체인코드 로딩 42
그림 19. 초기화 성공화면 42
그림 20. 사용자 투표(louis) 및 성공화면('200'을 반환) 43
그림 21. 투표 수 질의 및 결과화면 44
그림 22. username 사용자 쿼리 명령어&결과 44