[기초지식] 암호화란?무엇이 산열입니까?비밀번호가 새는 것을 방지해야 합니까?
휴일에는 중학생에게 프로그래밍을 가르치는데 암호화입니까?염호그게 뭐야????느낌, 그래서 총괄해 봅시다.아니오, 요즘 중학생들은 대단해요.
이 문장의 대상
주의
암호화는 무엇입니까?
비밀번호를 말하면 당신은 무엇을 생각합니까?나는 많은 사람들이 무엇을 상상할 수 있다고 생각한다.
간단하게 말하면'어떤 규칙에 따라 읽기 어려운 문장'을 비밀번호라고 한다.
예를 들면 아래의 글을 읽을 수 있습니까?J bn Njlf.
그럼 교향곡 시간...
・・・
・・・
・・・
・・・
그럼 알겠어요?
위의 문장은 자모순에 따라 한 글자 한 글자 b→a, c→b, d→c의 앞에 쓰여 있다.I am Mike.
영어가 좋아졌네요!
「J bn Njlf.」이처럼 애써 읽기 어려운 글을 암호문이라고 한다.
개인 정보를 저장해야 할 때는 기본적으로 암호화해서 저장해야 한다.
만일 밀문이 누설되더라도 암호 반환 규칙이 누설되지 않으면 암호 해독이 어려워 보안 위험을 줄일 수 있다.
방금 든 예 중의 암호는 쉽게 풀리는 사람이 있을 것 같지만 실제로는 더욱 복잡한 규칙의 암호이기 때문에 복원된 규칙이 누설되지 않으면 원래의 문장을 회복하기 어렵다.
따라서 이 장의 요약은 다음과 같습니다.
J bn Njlf.
I am Mike.
암호화된 암호를 원래대로 복원할 필요가 있습니까?
쇼핑몰을 상상해 보세요.손님께서는 주소 등을 입력해 주십시오.그 주소는 암호화해서 저장했는데 상품을 손님 집에 보낼 때 주소가 필요하기 때문에 그때는 비밀번호를 풀고 주소를 찾아야 한다.
그럼 이제 회원제 사이트를 상상해 보세요.비밀번호를 결정한 후에 우리에게 보낸 물건이 데이터베이스에 암호화되어 저장되었다고 가정하십시오.그렇다면 암호화 비밀번호를 복원해야 할 때가 있나요?
로그인할 때 돌아오지 않으면 인증할 수 없습니까?누군가 그렇게 생각할 수도 있어.그러나 비교적 암호화된 문자라면 로그인 시 인증이 가능하기 때문에 반드시 되돌려야 하는 경우는 없다.이해하기 어려운 설명이 되었으니 아래 그림을 참조하시오.
이렇게 암호 인증을 하면 복잡한 암호를 해독할 필요가 없다.
산열은 무엇입니까?암호화와 어떤 차이가 있습니까?
앞에서 말한 바와 같이 암호는 복호화할 필요가 없다.
원래부터 해석이 안 됐으면 좋겠다는 얘기지?나는 이런 생각이 있다고 생각한다.
이번에는 각 자릿수를 모두 합쳐서 읽기 어렵게 하는 것을 고려해 보자.'2468'이면'2'.×4×6×8은 384입니다.
그러면'384'라는 숫자와 반대로'2468'을 내보낼 수 있습니까?그럴 리가 없어.
원래대로 되돌릴 수 없는 난독화를'산열화'라고 한다.그리고 해시화로 인한 값을'하시 값'또는'정보 요약'이라고 부른다.
암호를 저장할 때 일반적으로 암호화가 아니라 산열이다.복원할 수 없으면 안전성이 비교적 높다.
참고로 이 예에서'2468'을 제외하고'2648','2838'도'384'이다."괜찮아요?"그러나 현실 세계에서 더욱 복잡한 규칙이 산열되어 있기 때문에 여러 값에서 같은 정보 요약을 만드는 사람은 드물다.(극히 드물다.)
염호는 무엇입니까?
비밀번호가 산열되어 있으면 만약 정보가 누설되어도 상관없다!그렇게 생각할 수도 있지만 아직 부족해요.
예를 들어 A씨의 비밀번호는'2468'이고 B씨의 비밀번호도'2468'이다.이렇게 되면 두 사람 모두'384'로 화제가 됐다.만약 이 A씨, B씨의 비밀번호 요약이'384'가 유출된다면 어떻게 될까요?
단지 이렇다면 거의 모든 사람들이 A, B의 구체적인 비밀번호가 무엇인지 모른다.다만, 나는 A와 B의 비밀번호가 똑같다는 것을 안다.만약 그 정보를 A씨가 알게 된다면 A씨가 B씨의 비밀번호를 알게 되겠지...자기랑 똑같으니까.또 메시지 요약'384'가'2468'로 구성된 것을 아는 사람이 있다면 비밀번호를 꿰뚫어 볼 수 있다.
거기서 응용해 보세요.
산열하기 전에, 먼저 어떤 무작위의 숫자를 처음에 놓은 다음에 산열한다.그리고 편지 요약의 첫머리에 아까의 무작위 숫자를 더해라.비밀번호가'2468', 무작위 숫자가'3'이면'32468'이 정보 요약이기 때문에'1152'인 셈이다.그리고 다시 랜덤 숫자'3'으로 시작해'31152'로 완성했다.
A는 무작위 숫자를'3', B는 무작위 숫자를'5'로 설정한다.그렇다면 A씨의 댓글 요약은 31152, B씨의 메시지 요약은 51920으로 전혀 다른 숫자가 나왔다!
또 메시지 요약'31152'가 솔트'3'과'2468'로 구성됐다는 사실을 아는 사람이 있다면 비밀번호를 추측할 수 있지만, 이번에 한 자릿수 솔트를 더 복잡하게 만들면 이런 추측은 어려워질 수 있다.
참고로 이렇게 정보 요약을 할 때 붙이는 무작위 값을'solt'라고 한다.
응, 이렇게 하면 로그인 인증을 잘 할 수 있을까?이런 의문이 있을 수 있어, 괜찮아!
예를 들어 A씨가 비밀번호'2468'로 로그인 인증을 할 때를 고려했다.
A씨가 저장한 비밀번호의 정보요약은'31152', 첫 글자로 보면'3'이어서 이 정보요약을'3'으로 한 것으로 보인다.사용자가 보낸 비밀번호'2468'을 Solt'3'으로 메시지 요약한 뒤'1152'의 첫머리에'3'을 붙이면'31152'이기 때문에 확실히 일치한다.
A씨가 비밀번호'2469(비밀번호 오류)'로 로그인해 인증했을 때를 고려했다.
A씨가 저장한 비밀번호의 정보요약은'31152', 첫 글자로 보면'3'이어서 이 정보요약을'3'으로 한 것으로 보인다.사용자가 보낸 비밀번호'2469'를 Solt'3'으로 메시지 요약한 뒤'1296'의 첫머리에 Solt'3'을 붙이면'31296'이기 때문에 로그인에 실패합니다.
이루어 보세요.
며칠 뒤에 뭐라도 쓸지도 몰라...
끝맺다
어때요?산열화의 존재를 알고 암호화와 산열화의 차이를 알면 이 글의 목적이 이루어질 것이라고 생각합니다.그럼 다음이 있으면 여기까지...
Reference
이 문제에 관하여([기초지식] 암호화란?무엇이 산열입니까?비밀번호가 새는 것을 방지해야 합니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/bayasist/items/da4be3a90a97b8cf38fe
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
앞에서 말한 바와 같이 암호는 복호화할 필요가 없다.
원래부터 해석이 안 됐으면 좋겠다는 얘기지?나는 이런 생각이 있다고 생각한다.
이번에는 각 자릿수를 모두 합쳐서 읽기 어렵게 하는 것을 고려해 보자.'2468'이면'2'.×4×6×8은 384입니다.
그러면'384'라는 숫자와 반대로'2468'을 내보낼 수 있습니까?그럴 리가 없어.
원래대로 되돌릴 수 없는 난독화를'산열화'라고 한다.그리고 해시화로 인한 값을'하시 값'또는'정보 요약'이라고 부른다.
암호를 저장할 때 일반적으로 암호화가 아니라 산열이다.복원할 수 없으면 안전성이 비교적 높다.
참고로 이 예에서'2468'을 제외하고'2648','2838'도'384'이다."괜찮아요?"그러나 현실 세계에서 더욱 복잡한 규칙이 산열되어 있기 때문에 여러 값에서 같은 정보 요약을 만드는 사람은 드물다.(극히 드물다.)
염호는 무엇입니까?
비밀번호가 산열되어 있으면 만약 정보가 누설되어도 상관없다!그렇게 생각할 수도 있지만 아직 부족해요.
예를 들어 A씨의 비밀번호는'2468'이고 B씨의 비밀번호도'2468'이다.이렇게 되면 두 사람 모두'384'로 화제가 됐다.만약 이 A씨, B씨의 비밀번호 요약이'384'가 유출된다면 어떻게 될까요?
단지 이렇다면 거의 모든 사람들이 A, B의 구체적인 비밀번호가 무엇인지 모른다.다만, 나는 A와 B의 비밀번호가 똑같다는 것을 안다.만약 그 정보를 A씨가 알게 된다면 A씨가 B씨의 비밀번호를 알게 되겠지...자기랑 똑같으니까.또 메시지 요약'384'가'2468'로 구성된 것을 아는 사람이 있다면 비밀번호를 꿰뚫어 볼 수 있다.
거기서 응용해 보세요.
산열하기 전에, 먼저 어떤 무작위의 숫자를 처음에 놓은 다음에 산열한다.그리고 편지 요약의 첫머리에 아까의 무작위 숫자를 더해라.비밀번호가'2468', 무작위 숫자가'3'이면'32468'이 정보 요약이기 때문에'1152'인 셈이다.그리고 다시 랜덤 숫자'3'으로 시작해'31152'로 완성했다.
A는 무작위 숫자를'3', B는 무작위 숫자를'5'로 설정한다.그렇다면 A씨의 댓글 요약은 31152, B씨의 메시지 요약은 51920으로 전혀 다른 숫자가 나왔다!
또 메시지 요약'31152'가 솔트'3'과'2468'로 구성됐다는 사실을 아는 사람이 있다면 비밀번호를 추측할 수 있지만, 이번에 한 자릿수 솔트를 더 복잡하게 만들면 이런 추측은 어려워질 수 있다.
참고로 이렇게 정보 요약을 할 때 붙이는 무작위 값을'solt'라고 한다.
응, 이렇게 하면 로그인 인증을 잘 할 수 있을까?이런 의문이 있을 수 있어, 괜찮아!
예를 들어 A씨가 비밀번호'2468'로 로그인 인증을 할 때를 고려했다.
A씨가 저장한 비밀번호의 정보요약은'31152', 첫 글자로 보면'3'이어서 이 정보요약을'3'으로 한 것으로 보인다.사용자가 보낸 비밀번호'2468'을 Solt'3'으로 메시지 요약한 뒤'1152'의 첫머리에'3'을 붙이면'31152'이기 때문에 확실히 일치한다.
A씨가 비밀번호'2469(비밀번호 오류)'로 로그인해 인증했을 때를 고려했다.
A씨가 저장한 비밀번호의 정보요약은'31152', 첫 글자로 보면'3'이어서 이 정보요약을'3'으로 한 것으로 보인다.사용자가 보낸 비밀번호'2469'를 Solt'3'으로 메시지 요약한 뒤'1296'의 첫머리에 Solt'3'을 붙이면'31296'이기 때문에 로그인에 실패합니다.
이루어 보세요.
며칠 뒤에 뭐라도 쓸지도 몰라...
끝맺다
어때요?산열화의 존재를 알고 암호화와 산열화의 차이를 알면 이 글의 목적이 이루어질 것이라고 생각합니다.그럼 다음이 있으면 여기까지...
Reference
이 문제에 관하여([기초지식] 암호화란?무엇이 산열입니까?비밀번호가 새는 것을 방지해야 합니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/bayasist/items/da4be3a90a97b8cf38fe
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
며칠 뒤에 뭐라도 쓸지도 몰라...
끝맺다
어때요?산열화의 존재를 알고 암호화와 산열화의 차이를 알면 이 글의 목적이 이루어질 것이라고 생각합니다.그럼 다음이 있으면 여기까지...
Reference
이 문제에 관하여([기초지식] 암호화란?무엇이 산열입니까?비밀번호가 새는 것을 방지해야 합니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/bayasist/items/da4be3a90a97b8cf38fe
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여([기초지식] 암호화란?무엇이 산열입니까?비밀번호가 새는 것을 방지해야 합니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/bayasist/items/da4be3a90a97b8cf38fe텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)