본문 바로가기
반응형

분류 전체보기141

TON 블록체인이 왜 주목받을까? 💎 TON (The Open Network) 요즘 TON 블록체인을 많이 사용하려고 하는 시도가 많이 보인다. 단순히, 텔레그램에서 쉽게 이용할 수 있어서? 아니면 또 다른 장점이 있는지 궁금해져서 이 내용을 정리해보고자 한다. TON 을 간단하게 설명하면 아래와 같고 TON의 특징은 하나하나 알아보자.텔레그램 커뮤니티에서 설계한 기술을 사용하여 만들어진 탈중앙화 레이어 1 블록체인초고속 트랜잭션 속도, 낮은 수수료, 사용자 친화적인 애플리케이션, 환경 친화성으로 유명 1. 고속 트랜잭션 처리초당 수천 건의 트랜잭션을 처리다른 체인과 비교해보면? 비트코인 - 초당 7건, 이더리움 1.0 - 초당 15~30건, 이더리움 2.0 - 초당 수천건, 폴리곤 - 초당 최대 65,000 건, 아비트럼 - 초당 최.. 2024. 6. 7.
[LeetCode] 648. Replace Words ❓ProblemIn English, we have a concept called root, which can be followed by some other word to form another longer word - let's call this word derivative. For example, when the root "help" is followed by the word "ful", we can form a derivative "helpful".Given a dictionary consisting of many roots and a sentence consisting of words separated by spaces, replace all the derivatives in the sentence.. 2024. 6. 7.
[LeetCode] 268. Missing Number 268. Missing NumberII ❓ProblemGiven an array nums containing n distinct numbers in the range [0, n], return the only number in the range that is missing from the array. Example 1:Input: nums = [3,0,1]Output: 2Explanation: n = 3 since there are 3 numbers, so all numbers are in the range [0,3]. 2 is the missing number in the range since it does not appear in nums.Example 2:Input: nums = [0,1]Outpu.. 2024. 5. 23.
[LeetCode] 3152. Special Array II 3151. Special Array II ❓ProblemAn array is considered special if every pair of its adjacent elements contains two numbers with different parity.You are given an array of integer nums and a 2D integer matrix queries, where for queries[i] = [fromi, toi] your task is to check that subarray nums[fromi..toi] is special or not.Return an array of booleans answer such that answer[i] is true if nums[from.. 2024. 5. 23.
[LeetCode] 3151. Special Array I 3151. Special Array I ❓ProblemAn array is considered special if every pair of its adjacent elements contains two numbers with different parity.You are given an array of integers nums. Return true if nums is a special array, otherwise, return false. Example 1:Input: nums = [1]Output: trueExplanation:There is only one element. So the answer is true.Example 2:Input: nums = [2,1,4]Output: trueExplan.. 2024. 5. 23.
Keccak256의 작동 원리 🔐 KECCAK256이더리움에서 사용되는 암호화 해시 함수데이터를 256비트(32 바이트) 의 고정 길이 해시값으로 변환하는 해시 함수입력이 조금만 변경되어도 결과 값은 크게 달라지며, 이를 통해 데이터의 무결성 검증 가능 Keccak256 의 작동 원리Keccak256 은 Sponge 구조를 기반으로 하며, 이 구조는 absorb 와 squeeae 두 단계로 나뉜다.Absorb Phase상태 초기화keccak 의 내부 상태는 1600 비트(200 바이트)로 초기화 된다. 이 상태는 5x5 배열의 64비트(8바이트) 블록으로 나뉨.데이터 블록 처리입력 데이터를 1088 비트(136 바이트) 크기의 블록으로 나누고, 각 블록을 내부 상태와 XOR 연산으로 결합.결합된 상태를 특정 라운드 함수를 통해 반복.. 2024. 5. 23.
ENS(Ethereum Name Service) 📔 ENS(Ethereum Name Service) ENS란?2017년 Nick Johnson이 출시한 Ethereum Name Service복잡한 영어 + 숫자 블록체인 주소를 사람이 읽을 수 있는 형식으로 변환하는 서비스(0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045→vitalik.eth)DNS 가 그랬던 것처럼 기억하기 쉽기 때문에, ENS는 암호화폐 거래의 접근성을 향상시킴ENS 주소는 ERC-721 토큰 표준을 사용하여 NFT로 발행 → 거래소에서 거래 가능 ENS 작동 원리두 가지 이더리움 Smart Contract를 기반으로 구축 → ENS Registry, ResolverENS 컨트랙트 Github 주소: https://github.com/ensdomains.. 2024. 5. 21.
ERC-6551, Token Bound Account ERC-6551, Token Bound Account ERC-6551이란?ERC-6551 은 2023년 5월 7일 이더리움 메인넷에 적용된 표준.이 표준은 NFT(Non-fungible Token)를 활용하여 TBA(Token Bound Account)를 생성하는 기능.즉, TBA 는 NFT 가 소유하고 있는 지갑을 나타내며, 이 지갑 안에는 다양한 토큰(ethereum, ERC=20, ERC-721, ERC-1155) 를 보유할 수 있음.TBA 가 소유하고 있는 에셋들에 대한 권한은 NFT 소유하고 있는 지갑에서 갖게 되며, 만약 NFT 의 소유자가 변경될 시 해당 TBA 에 들어있는 자산들의 권한도 새로운 소유자가 가져가게 된다. ERC-6551 구현하기ERC-6551 구현을 위해 필요한 구성 요소는.. 2024. 5. 17.
Hardhat으로 컨트랙트 개발 시작하기 Hardhat으로 컨트랙트 개발 시작하기evm 기반에서 작동하는 스마트 컨트랙트 개발을 위해 하드햇을 사용하고 있다. 컨트랙트 개발을 시작하는 과정을 한 번 정리해보기 초기에 해둬야 할 설정에 대해도 정리해보자. 1. Node.js 설치하기대부분의 Ethereum 라이브러리와 도구는 JavaScript로 작성되었으며 Hardhat도 마찬가지입니다. 그렇기 때문에 node.js 가 설치되어 있어야하며 이 과정은 아래 링크를 참고하면 된다.https://hardhat.org/tutorial/setting-up-the-environment Hardhat | Ethereum development environment for professionals by Nomic FoundationHardhat is an Et.. 2024. 5. 16.
Klaytn IDE로 스마트 컨트랙트 배포하기 💡클레이튼 스마트 컨트랙트 배포하기 나는 지금까지 모든 프로젝트를 이더리움 체인에서만 했었다. 수수료가 비싸고 TPS가 낮다는 단점이 있지만 아무래도 가장 많이 사용하는 체인이기도 하고 POS로 전환 후 속도도 빨라지고 수수료도 인하된다면 이더리움의 경쟁력은 점점 더 좋아지지 않을까 생각했다. 그러던 와중 네 번째 프로젝트로 NFT 거래소를 다시 만들어보기로 했고, 이번 거래소 프로젝트는 이더리움 뿐만 아니라 다양한 체인을 모두 거래할 수 있게 만들어보기로했다. 클레이튼과 이더리움은 개념은 거의 비슷하지만 사용하는 툴/라이브러리/표준이 조금 달랐다. Remix IDE -> Klaytn IDE Metamask -> Kaikas Web3.js -> Caver.js ERC-20은 KIP7과 유사 ERC-721.. 2022. 10. 24.
오픈씨 NFT 거래소, 레이지 민팅(Lazy Minting) 그리고 와이번 프로토콜 (Wyvern Protocol) / 시포트 프로토콜 (Seaport Protocol) NFT 거래소 프로젝트를 재진행하면서 오픈씨가 어떻게 작동하는지 공부하는 시간을 가지고 있다. 오픈씨는 자체적으로 nft를 발행할 수 있는 서비스를 제공한다. 오픈씨에서 자체적으로 제공하는 민팅 툴을 사용해서 nft를 민팅하는 경우엔 ERC1155를 통해서 발행한다. ERC1155 아무래도 멀티 토큰을 지원하는 만큼 비용은 적게 들지만, 개별 토큰에 대한 자유도는 떨어진다는 단점이 있다. 오픈씨는 자체적으로 배포한 ERC721 컨트랙트의 nft들을 별도의 절차 없이 알아서 가져와 마켓에서 보여준다. 오픈씨에서 NFT를 발행하면 리스팅까지는 가스비가 발생하지 않는다. 가스비가 처음으로 부과되는 시점은 NFT 거래가 발생하는 순간이다. 그렇기 때문에, NFT를 발행하는 작가들이 부담하는 가스비는 생각보다 많.. 2022. 10. 21.
클레이튼 caver-js 지갑 연결하기 webpack error Kaikas 연결을 위해 caver-js 설치후 파일을 실행하니 아래와 같은 에러가 발생했다. can't resolve 'fs' in '/users/eunjaeyoon/desktop/project4/beb-cc3-project-04/client/node_modules/caver-js/packages/caver-ipfs/src' 이는 webpack 5 이상 버전부터 caver-js에서 호환성 에러가 있어 발생하는 에러라고 한다. 나는 다음과 같이 방법으로 이슈를 해결했다. rm package-lock.json rm -r node_modules npm install webpack@4.44.2 위와 같은 방법으로 webpack@4.44.2 를 설치 후, webpack.config.js 파일에 아래와 같이 코드.. 2022. 10. 19.
728x90