본문 바로가기

전체 글72

블록체인 8 SSI & Decentralized Identity Manangement Digital identity디지털 정체성 필요성: 오프라인 및 온라인 서비스를 이용하기 위해 디지털 정체성이 필요하다. 정체성 유형 가명 정체성 (Pseudonymous Identity): 이메일과 같은 단순한 형태의 정체성. 예: 소셜 미디어 계정은 보통 이메일 주소만 요구.  실명 정체성 (Natural Identity): 규제 준수를 위해 본인의 신원이 확인되어야 하는 경우. 예: 은행 업무는 자연적 정체성 검증 필요.  다중 정체성 사람들은 여러 개의 정체성을 가지고 있다. 예: 업무용 정체성과 개인용 정체성을 구분하여 사용. 정체성은 특정 식별자에 대한 주장(claims)의 모음으로 볼 수 있다. ???: 접니다 Iden.. 2024. 12. 11.
블록체인 7-3 Cross-contract and Blockchain InteractionEVM Contract Function Execution과거 블록들 (Block n-2, Block n-1): 과거 블록은 이미 채굴되었으며, 스마트 컨트랙트와 관련된 트랜잭션(TX)을 포함한다. 스마트 컨트랙트 코드 또는 상태 변경이 이 블록들에 기록된다. 현재 블록 (Block n):아직 채굴 중인 블록이며, 실행될 트랜잭션을 포함한다 EVM에서의 실행 EVM은 다음 정보를 기반으로 실행된다:Coinbase: 블록 보상을 받을 주소.Difficulty: 현재 블록을 채굴하는 데 필요한 난이도.Gas Limit: 블록 내 최대 가스 소비 한도.Timestamp: 블록 생성 시점의 시간.상태 변경: 트랜잭션 실행 결과로 컨트랙트 상.. 2024. 12. 11.
운영체제 액끼스 5장 1. 스레드가 시스템 호출 끝에 IO를 요청해 블록될 때: 블록상태 후 스케줄링 (CPU 활용률 향상) 2. 스레드가 자발적으로 CPU를 반활할때: 현재 스레드를 넣고 새로운 스레드 선택(CPU가 자발적 양보) 3. 스레드의 타임슬라이스가 소진되어 타이머 인터럽트 발생(균등한 CPU 분배) 4. 더 높은 순위의 스레드가 요청한 입출력 작업 완료, 인터럽트 발생: 현재스레드를 강제 중단시켜 높은 순위의 스레드를 깨워 스케줄링(우선순위를 지키기 위함) 기아: 스레드가 스케줄링에서 선택되지 못한 채 오랫동안 준비리스트에 있는 상황 에이징: 기아의 해결책, 머무른 시간비례 순위가 높아짐(짬순) CPU 스케줄링 알고리즘들(그림 + 설명) FCFS: 선착순 스케줄링 SJF: 실행시간 짧은순 스케줄링(현실성 사.. 2024. 12. 10.
블록체인 7-2 Designing Smart ContractsProblem asssessment(문제 평가)블록체인의 열풍으로 인해 많은 소프트웨어 응용 프로그램이 블록체인 기술을 사용하고 있다. 특히 스타트업 또는 기업 내 혁신 부서에서 주로 사용한다. 그러나 실제 세계에서 스마트 컨트랙트의 채택은 여전히 미미한 수준이다.  블록체인이 적합한 솔루션이 되는 경우: 여러 당사자가 참여하고, 당사자들이 서로 신뢰하지 않거나 상반된 이해관계가 있으며, 공유 쓰기 접근이 필요하고, 데이터베이스에 대한 모든 쓰기 작업이 (공개적으로) 검증 가능해야 함. 항상 대체 솔루션을 평가해야 한다. 우스갯소리로, 다이어그램에서 "블록체인이 필요합니까?"라는 질문에 대한 답은 대부분 "아니요"임. 참고: 블록체인은 필요한 경우에만 사용해야.. 2024. 12. 6.
블록체인 7-1 Solidity introduction 정의Solidity는 이더리움(Ethereum) 블록체인을 위한 스마트 계약을 작성하기 위한 고수준 언어(high-level language)이다. Contracts의 특징:스마트 contract는 전통적인 객체 지향 프로그래밍 언어(Java 등)의 클래스와 유사한 캡슐화된 단위(encapsulated units)로 정의된다.각 contract는 지속적인 상태(persistent state)를 가지며, 이는 컨트랙트 내에서 상태 변수(state variables)로 정의된다.Functions: 계약의 상태를 변경하거나 다른 계산을 수행하기 위해 함수(functions)를 사용한다. Solidity 컴파일 및 배포: Solidity 코드는 바이트코드(bytecode).. 2024. 12. 6.
블록체인 6-3 머지(The Merge)이더리움의 비젼 초기 계획초기 계획부터 PoS 채택 구상함Ethereum은 2022년 9월에 Proof-of-Stake로 전환했지만, 이는 초창기부터 계획된 목표였다. Vitalik Buterin은 2014년에 Ethereum을 PoS 체인으로 배포하려 했지만, 초기 단계의 복잡한 부트스트래핑(bootstrapping) 문제로 인해 실현되지 않았다.  PoS는 다음과 같은 초기 조건이 필요하다:네이티브 암호화폐가 참여자들에게 발행 및 배포.참여자들은 자신의 코인을 스테이킹해야 블록 생성 및 합의 과정에 참여 가능.따라서, Ethereum은 2015년 Proof-of-Work(PoW) 기반으로 시작되었으며, 이는 Bitcoin의 Nakamoto Consensus를 참고해서 구성했다... 2024. 12. 5.