[멋쟁이 사자처럼 블록체인 스쿨 3기] 23-03-27

임형석·2023년 3월 28일
0

공개키와 개인키의 생성과정

키는 코인에 대한 소유권을 입증시켜주는 수단

개인키와 공개키가 쌍을 이루며 개인키로부터 공개키가 형성된다

만약 개인키를 잃어버렸다면, 코인을 모두 잃어버린 것

정확하게는, 개인키로 부터 형성된 디지털 서명과 공개키로 부터 형성된 비트코인 주소이다.

개인키는 숫자, 공개키는 점의 좌표.


개인키로 부터 형성된 공개키는 단방향성이다. 즉, 공개키로 개인키를 계산 할 수 없게끔 만들어야 한다는 것.

공개키로 개인키를 찾아볼 순 있지만, 너무나도 많은 시간이 걸리기에 사실상 불가능하다.

그렇기에 elliptic curve 라고 불리는 타원곡선과 개인키를 통해 복잡하게 공개키를 만들어 낸다.

시작점의 계산법
02,03 시작은 compressed. 02는 짝수 03은 음수
04 시작은 uncompressed

시작점은 위처럼 정해져있다.

' P1 + P2 = -P3 ' 라는 공식이 있다.
+기호는 선을 잇는다 라는 의미.
=기호는 대칭을 의미.

개인키로 위의 타원곡선에서 공식을 통해 몇번 연산할지 결정된다.

연산이 끝나면 그 좌표에 따라 공개키가 생성.

Elliptic Curve, 공개키를 만드는 과정


Chat GPT api

axios api 받아오기

<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>

html 에 붙여넣어 쓰기.


toggle 버튼

누르면 껐다 켰다 하는 버튼.

function onClickToggle(value) {
  const nft = document.querySelector(".nft");
  const nftView = document.querySelector(".nftView");

  if (value) {
    nft.style.display = "inline-block";
    nftView.style.display = "none";
  } else {
    nft.style.display = "none";
    nftView.style.display = "inline-block";
  }
}

html 에선 onclicktoggle 이 false 일때,

true 일때 두개를 만들어준다.

<button onclick="onClickToggle(false)">X</button>
<button class="nftView" onclick="onClickToggle(true)">NFT보기</button>

0개의 댓글