본문 바로가기

포트폴리오/Project_15

가위바위보 게임 개선하기(hand encoding) 1. 개발 내용 1. 가위바위보게임에서 방장(originator)이 createRoom을 할 때 미리 낸 패를 숨길 수 있다.2. 이후에 joinRoom으로 방에 참여한 참가자(taker)의 패도 숨길 수 있다.3. 방장이 낸 배팅금액과 같은 금액을 참가자가 배팅해야 입장 할  수있다.4. use~함수를 이용해서 방장과 참여자 둘다 자신이 낸 진짜 패를 해독하여 저장시킨다.5. 둘다 해독하여 완벽히 저장되어야 compare를 통해 payout이 가능하다. 작성 전 선언조건enum Hand { rock, paper, scissors } enum PlayerStatus { STATUS_WIN, STATUS_LOSE, STATUS_TIE, STATUS_PENDING .. 2021. 12. 13.
Web3.js 서버프로젝트를 KAS기반 클레이튼 서버로 개발 1. 개발 내용  1. Web3.js과 비슷한 Caver를 사용하여 KAS기반 클레이튼 서버 개발2. /createaccount를 통해 새로운 주소와 PrivateKey를 만들어 낼 수 있다.3. /getbalance를 통해 body로 전송받은 address를 입력하여 잔고를 확인 할 수 있다.4. /transfer를 통해 body로 전송받은 toAddress와 amount로 토큰을 전송 할 수 있다.5. /deploy를 통해 json객체타입으로 전송받은 abi와 bytecode로 스마트컨트랙트를 배포 할 수 있다. 작성 전 선언조건const express = require('express');const app = express();const port = 8080;app.use(express.json().. 2021. 12. 12.
니모닉 지갑 개발 1. 개발 내용 1. http://localhost:3000/wallet/newWallet로 body를 임시 문자와 패스워드를 POST 날린다.2. 패스워드와 임시 문자를 받아 mnemonic을 만들어 낸다.3. 만들어진 mnemonic으로 지갑 api 생성4. 지갑 api로 부터 keystore(지갑주소).json의 키스토어파일을 로컬에 저장한다. 작성 전 선언조건var express = require("express"); // express 사용var router = express.Router(); // express Router 사용const lightwallet = require("eth-lightwallet"); // 지갑생성 관련 메소드를 사용const fs = require("fs"); //.. 2021. 12. 12.
관리자3명이 Owner 투표 / 락 재 사용 구현 1. 개발 내용 1. 3명의 관리자가 투표를 통해 Owner를 선정한다.2. 컨트랙트를 배포할 때 관리자주소를 3개 선정할 수 있지만 관리자1명이 배포한 것으로 하여 1명의 관리자가 2명의 관리자를 더 추가하고 총 3명의 관리자가 투표를 통해 1명의 Owner를 선정하는 방식이다.3. 투표는 1번만 할 수 있으며 만약 투표 결과가 1:1:1로 나온다면 기존에 Owner가 유지된다.  관리자 추가function addOwner (uint8 _ownerNumber,address _newOwner) onlyOwner public returns(bool) { require(_ownerNumber>0 &&_ownerNumber_OwnerNumber를 받으며 0은 기존 Owner의 인덱스, 1과2를 추.. 2021. 12. 10.
졸업증명 DID를 백신 접종 증명 시스템으로 변경 1. 개발 내용 백신시스템의 기능1. 중앙정부와 중앙정부에서 지정한 기관만이 백신증명서를 발급할 수 있다.2. 지정한 기관은 중앙정부에서 추가할 수있다.3. 지정한 기관을 삭제하고 추가할 수 있다.4. 증명서에 들어갈 접종자의 백신 종류를 추가 할 수 있다.5. 증명서에 들어갈 접종자의 백신 회차수를 추가 할 수 있다.6. 백신 접종 여부를 판단 할 수 있다.7. 백신증명서 발급시 백신 타입을 간단히 숫자로 입력받는데 해당 숫자에 해당하는 백신종류를 확인할 수 있다.8. 백신 접종후 2주가 경과했는지 여부를 확인 할 수 있다. 백신증명서 발급function claimCredential(address _vaccineAddress, uint8 _vaccineType, string calldata _value.. 2021. 12. 10.