완전 개 뉴비 허접이지만 8살 조카한테 이야기하는 형식으로 썻습니다.
혹시 보시는 분은 너그러이 봐주시기 바랍니다.
잘못된점은 부디 지적해주시면 감사하겟습니다
솔직히 공개키, 개인키 이렇게 자꾸 표시하는데
'그냥 아이디랑 비밀번호 아니야??' 라고 생각이 들어서 대수롭지 않게 생각했었습니다.
전자서명, 전자서명하는데 아이디,비밀번호로 생각하니까
아니 그럼 비밀번호도 사람들이 다 알게되는건가? 뭔소리지 해서
애매하게 이해만 하고 있었어서 한번 정리해보려고 합니다.
해쉬값, 해쉬.
sha-256같은 암호학에서 만들었다고 하는 기가막힌 애들.
불특정난수 뭐 요렇게 말하기도 하는데
해쉬함수를 돌리면(사용한다) 진짜 엄청길고 복잡한 아무숫자나 가지고와줘.
ex) A ==> 해쉬함수 ==> ai1g2j4gjbudgvk99b9....
A. ==> 해쉬함수 ==> cyb80d9wgub81hg....
- 문자 숫자 상관없이 그냥 해쉬함수 다 돌려버리면 그냥 완전 랜덤한 숫자나옴.
!!!!!!쥐콩만큼 값이 달라져도 해쉬함수를 돌려버리면 완전 다른 애가나옴.
2!!!. 어떤 두개의 해쉬값이 서로 공개키,개인키로 묶여져 있다면 둘이 아다리가 아주 꼭 맞음.
열쇠랑 자물쇠 처럼 딱 자기한테 맞는, 짝이되는 애가 아니면 풀 수가 없음.
둘이 연인처럼 꼭붙어다님.
ex)
A의 공개키 : adsf0987
A의 개인키 : 1234qwer
-1.. A 가 B한테 10000원 보낸다. ==> 해쉬를 돌리는데 이때 개인키(1234qwer)를 기반으로해서 돌림.
(!!개인키를 기반으로 해서 돌린다는 말은
'A가 B한테 10000원 보낸다.' + 개인키(1234qwer) ==>해쉬함수 ==> 새로운 해쉬값.(거지같은 숫자들)
-2.. 새로운 해쉬값은 공개키(asdf0987)로만 암호를 풀고 원래 내용을 알 수 있음.
'새로운 해쉬값' + 공개키(asdf0987) ==> 뭐 암호푸는 이상한 함수들 ==> 'A가 B한테 10000원 보낸다.'
그래서 !!!!!
공개키는 모든 사람들이 다 알고 있으니까
어떤 거래를 저렇게 개인키 기반으로 암호화하고 전체 노드 친구들한테 쫙 돌리면
그거를 A의 공개키로 확인을 하는 거야. 그래서 거래가 안전하게 암호화되고 모든 애들이 확인할 수 있는거고.
이거를 B의 공개키를 넣어서 확인할라고 하면 풀리지가 않아!!!!
C의 공개키로도 풀리지가 않아!!! 짱짱맨인거지.
그래서 이 개인키를 '전자서명'
즉 A임을 모두에게 알려주는 수단. 이라고 불리워 지는거야.
공개키는 개인키로만 풀수 있는거는
평소사 그냥 id, 비밀번호 생각하면 되는 것이라서 어렵진 않을거야!