Blockchain
왜 지갑 주소에는 대소문자가 들어갈까?
왜 지갑 주소에는 대소문자가 들어갈까? 상황 이더리움 초창기에는 소문자만 사용하여 주소를 생성했었는데, 잘못된 주소를 입력하여 송금하는 사고가 종종 발생했다. 문제 이러한 경우 회수가 현실적으로 불가능하여 주소 입력 오류 확인이 필요했다. 해결 2016년에 도입된 EIP-55를 통해 주소 오류를 99.9853% 감지 EIP-55는 주소의 대소문자 형태로 인코딩해 주는 방식으로 checksum한다. checksum은 prefix인 0x를 뗀 소문자를 사용해서 표현한 주소의 해시값이 역할을 수행한다. 방법 '''EIP-55 Code''' import eth_utils def checksum_encode(addr): # Takes a 20-byte binary address as input hex_addr =..
[Project] 누구(Who)가 아닌 기술을 신뢰하는 Klaytn 기반 티켓팅 서비스
1. 프로젝트 개요 TT 란 ? 누구(Who)가 아닌 기술을 신뢰하는 Klaytn 기반 티켓팅 서비스 Trust Ticket, TT는 블록체인 기술을 이용한 티켓팅 서비스를 제공합니다. TT 이용자는 이벤트를 기획할 수도 있고, 다른 이벤트를 참여할 수 있습니다. 이벤트 참여를 하면 각 이벤트에서 발행하는 토큰을 받을 수 있고, 이는 입장티켓 또는 응모당첨권으로 사용합니다. 배포 링크 Github: https://github.com/codestates/BEB-04-ZeroTeb Mobile : 다운링크 (스토어 배포 심사 중) Server - POST API Document WEB - https://tt.beeimp.com 2. 프로젝트 소개 토큰 이코노미 왜 필요한가요? 이벤트가 돌연 취소 상황 - 소..
[Project] Web2.0 Blockchain Community
Web2.0 Blockchain Community 팀명 - SevenDAO 팀 구성 및 나의 역할 팀원 구성 - 4명 Front-end : 2명 Back-end : 2명 나의 역할 팀장 역할 수행 프로젝트 일정 관리 Front-end 포지션 게시글 및 댓글 쓰기 및 조회 마이페이지 Front-end, Backend, Blackchain 전체 기능 연동 및 테스트 프로젝트 배포 프로젝트 목표 인센티브 기반 커뮤니티를 구현 인센티브 시스템의 동작 원리를 이해하고, 서버기반 지갑 서비스를 구현 Web2.0 기반 커뮤니티 사이트의 아키텍처를 이해 ERC-20 스마트 컨트랙트 이해 및 새로운 형태의 함수 구현 프로젝트 기간 프로젝트 일정 2022년 6월 20일 ~ 7월 1일 ( 약 2주 ) 회의 시간 - 매일 오..
[Project] OpenSea 클론코딩
OpenSea 클론코딩 팀명 씨냅스(Seanapse) 프로젝트 목표 OpenSea의 Front-end, Back-end 아키텍처 이해 OpenSea API 동작원리 이해, API 레퍼런스 참조 OPenSea 구현에 필요 요소 이해 및 구현 프로젝트 기간 2022년 6월 13일 ~ 2022년 6월 17일 ( 5일 ) 기획 - 1일 / 개발 및 배포 - 3일 / 회고 - 1일\ 프로젝트에서의 역할 팀장 역할 수행 NFT 생성 페이지 구현 hardhat을 통한 ERC-721 컨트랙트 배포 IPFS API 사용하여 파일 업로드 프로젝트 배포 구현 기능 기본 기능 사용자는 메타마스크 지갑을 연동하여 로그인할 수 있다 token uri에 들어갈 내용을 프론트에서 입력 주요 기능 사용자는 판매되는 nft의 정보 목록..
eth-lightwallet을 사용한 니모닉 지갑 개발
니모닉 지갑 🔎 Goal eth-lightwallet 모듈에 내장되어 있는 함수를 사용하여 개발 랜덤한 니모닉 코드를 생성 니모닉을 시드로 키스토어를 생성 Postman을 사용하여 결과 확인 fs 모듈을 이용한 키스토어 로컬 저장 Advanced - 파생된 주소 생성 💻 Implementation Main Functions - express.js를 활용한 API POST - 랜덤한 니모닉 코드 생성 http://localhost:3000/wallet/newMnemonic // lightwallet 모듈을 사용한 랜덤한 니모닉 코드 생성 API router.post('/newMnemonic', async (req, res) => { // 니모닉 변수 생성 let mnemonic; try { // mnemo..