다들 딸딸이 칠때 토렌트 마그넷 한번씩 써본적 있지 않노?
이 마그넷주소! 엔 공통점이 있는데...


바로 뒤에 딸려오는 40자의 알파벳 및 숫자의 조합임!
다름아닌 이 40글자로 이세상 모~든 토렌트를 구별한다는거 ㄷㄷ.. 개소름아니노?;

아니 각양각색의 파일들이 들어있는 이세상의 토렌트들을 단 40자로 고유번호를 매기는 규칙이뭘까?




정답은 ~~ 90년대에 천조국 성님들이 만들어낸 SHA-1이라는 암호화체계다 이기야!
SHA-1의 개요는 2의64제곱비트 미만의 정보를 160비트 해시값으로 규격화시키는데
쉽게말하면 2,300,000테라바이트 미만의 정보를 단 40글자로 바꿔주는거임!





예를들어 알파벳 a를 SHA-1변환 시키면

라는 값이 나온다이기야!
한글자가아니라 518글자, 5180000000글자를 변환시켜도 항상 40글자로 변환된다는 사실!
이 40글자만을 토대로 인터넷의 망망대해에서 Distributed Hash Table(DHT)라는 알고리즘을 통해 서로를 찾아낼수 있게되는거임!




아니; 세상에 야동만해도 몇갠데 ㅁㅊ 40자밖에 못쓰면 중복될수있지도 않음?;;
물론~ 중복될수있다이이기야~ 다만 경우의수가 무려 2의160제곱가지! 바꿔말하면 1조*1조*1조*1조가지에 달해 웬만하면 그럴일이 없다이기야~
 



또한 아주 약간의 입력값만 바뀌어도 출력값은 전혀 달라지는 눈사태효과도 있는데
예를들어
51869740을 변환시키면
554649707ec9185686964c91df90ce47d09f0c9d 이라는 값이나오는데
51869741을 변환시키면
c8b5d72236e132b57d8e29d4844abc787f62082a 라는 전혀다른값이나와 출력값을 토대로 입력값을 유추 할 수 없게만어버림!




변환시키는 방법은 위에 그림보이지~? 저렇게하는거래~ㅎ;





덕분에 여태까지 로그인, 인증서등의 암호화기술로도 잘 사용함!
다만 2017년에 구글이 SHA-1체계의 허점을 발표했는데 자신들이 맘먹고 뚫으면 컴퓨터한대로 110년정도 써서 해킹을 할 수 있다고해!
그래서 암호화의 목적으로는보다 발전된 암호화기술들로 바뀌는 추세라고 하는데, 최신은 SHA-3까지 나왔다고하노 ㄷ;

다만 식별의 목적으로는 위의 마그넷의 예와같이 지금도 광범위하게 사용되고있는데!
부가적으로 타임스탬프를 붙인다거나하여 더욱더 충돌가능성을 낮출수 있다고해!




아 비트코인은 경우의수를 2의256제곱 이상으로 늘린 SHA-2를 사용한대!




2의256제곱이라는 수는 우주에 있는 원자개수보다도 많은 수라고하니 놀랍지 않니?
그럼 2만~