공개키 기법의 초보적 설명 02

in #kr7 years ago


이미 공개키 기법과 전자서명은 이전에
설명한 적이 있다

전자서명과 공개키 기법의 초보적 설명

거기서 나아가 왜 수학적으로 마법의 키이며
구체적으로 어떻게 거래에 이용되는지 재탕알아보자

공개키와 개인키


공개키와 개인키를 쉽게 예를들면 이렇다

어떤 개인키라는 캡슐안에 x2 가 들어있다
그럼 10이라는 것을 개인키에 넣으면
20이 튀어나온다.

하지만 실제 우리가 볼 수 있는 건 이렇다

키가 어떻게 수학적으로 작동하는지 알 수 없는 것이다.
그러므로 복구역시
-10을 해야되는지 ÷2를 해야되는지 모르게 된다.

한데 여기서 이것과 쌍으로 이뤄진 키가 존재한다
그것을 공개키라고 하는데
이 키안에는 앞선 키와 수학적으로 대립되는 공식이 들어있어
앞에서 변조한 데이터를 완벽히
복원할 수 있도록 되어 있다.

이런식으로 말이다.

수학적 공식의 대립이니까
이것은 역으로도 작용한다.
즉 공개키로 변조한 데이터는 개인키로 복구가 되는 것이다.

물론 이 허접한 예에서는 두세개만 더 지켜보면
키의 수학적 공식을 당장 알 수 있지만
실제론 (x3+1)x30-5+알파x오메가-사메가
이런식으로 저거보다 훨씬 복잡한 수학식이
들어있어 절대 예측이 불가능하다.

이렇듯 우리 같은 일반인으로썬
도저히 알 수 없는 신비의 수학공식을 내포하고 있는

두 개의 구슬을 각각

공개키, 개인키

라고 한다.

구체적 이용방법


자 그럼 왜 굳이 저런걸 두개나 만들었을까

그 이유는
프라이버시 작렬하는 비번을 등록하지 않고도
본인임을 인증해서 로그인 할 수 있는
신박한 기능이 있기 때문이다.

그리고 이는 강력한 보안을 가능하게 한다.
예를들어 어떤 사이트가 있는데 그냥 중앙서버식으로
아디랑 비번을 저장하고
로그인때 비교대조로 인증해준다고 하자
그리고 해당 서버가 탈탈 털린 다음날..

잠자고 일어나니

모르는 천장이다..

누가 twinbraid 란 닉넴으로 대통령과 김정은이
키스하는 사진을 합성해서 올려놓은 것이다
그리고 코로 설렁탕이 흘러들어오기 시작했다.

서버가 털리면서 비번이 유출됐으니
누구나 twinbraid를 이용할 수 있게 된 것이다.

하지만!
신비의 쌍방울 방식을 쓴다면 저런 걱정이 없다.

서버에 만천하에 공개해도 상관없는 공개키를
저장해놓는 것이다.
이 공개키의 역할은 딱 하나뿐이다.
해당 공개키의 개인키를 가진 사람을 증명하는 것이다.
예를들어 공개키로 10을 20으로 변조해서 보냈을 경우
다시 10으로 돌려주는 사람이 바로 혼모노다.

혼모노니까 로그인 시켜준다.

반면 해커는 그 서버를 털어도
개나소나 공개되어 있는 공개키밖에 못얻으니
매우 강력한 보안이 되는 것이다.

그리고 이는 바로 블록체인의 증명방식이다.
블록체인은 누구나 가질 수 있는 분산장부기 때문에
절대로 비번을 저장해둘 수 없는 약점을 가지고 있는데

이 공개키기법으로 인해 누가 해당 주소의
혼모노인지 완벽하게 파악하여
거래가 가능하게 된 것이다.

맺으며


거래방법을 구체적으로 적을려고 했는데
너무 어려움..ㅡ,.ㅡ... 걍 이걸루 땜빵

Sort:  

Cheer Up! 음~? 흥미로운 포스팅이군요.

  • from Clean STEEM activity supporter

this is really nice from you i like it

곧 연휴가 얼마 안남았네요^^ 오늘도 좋은 하루 보내세요 :)

네! 님도 좋은 하루보내세요 :)

키 암호화 ㅎㅎ

예전에 강의들을 때 열심히 외웠던 기억이 나네요

보안관련분이신가 보군요 +_+

하..어렵네요

수학이 들어가면 무조건 난이도 상승이..ㅠㅠ

안녕하세요! 설명 잘봤습니다. 공개키는 개인키 사이의 관계는 타원곡선 암호법이라는 상상하기 어려운 복잡한 대규모 격자 그래프 위에 좀더 복잡한 유형의 점들이 찍혀있는 형태의 그래프에서 개인키를 곱셈이나 덧셈으로 연산한것입니다.
위 처럼 공개키는 개인키로 부터 생성되는 것이기에 공개키를 변조했을때 복구가 가능합니다. 하지만 개인키에서 공개키로 가는 연산은 가능하지만 반대로 가는 역산은 불가합니다. 개인이 가지고 있는 UTXO를 사용할 수 있는 권한은 개인키가 가진 스크립팅 언어가 UTXO와 합산했을때 TRUE값을 도출하면 소비가 가능하게 되는 원리라고 생각 하시면 될것 같은데 사실 공개키 암호화 과정은 굉장히 어렵고 복잡한것은 사실이기에 전공자가 아니라면 이해하기 어려운것도 사실입니다.

넵 자세한 설명 감사합니다. 저 역시 비전공이라.. 이해가 쉽지 않네요

그리고 공개키/개인키 알고리즘엔 타원곡선 말고도 여러가지가 더 있습니다.
참고로 말씀드리고 가요!

이부분도 이해하기 쉽게 설명해주셨네요^^ 감사합니다^^

항상 댓글 감사합니다 +_+/

안녕하세요 twinbraid 님 음.. 조금은 이해가 되는 듯 합니다. 저도 왜 스팀잇에도 공개와 비공개가 있는지 좀 궁금했었거든요 ㅋㅋㅋ 감사합니다^^

언제나 재미있는 설명 감사드립니다 ㅋㅋㅋ

Coin Marketplace

STEEM 0.16
TRX 0.13
JST 0.027
BTC 58270.16
ETH 2600.36
USDT 1.00
SBD 2.39