', { cookie_domain: 'auto', cookie_flags: 'max-age=0;domain=.tistory.com', cookie_expires: 7 * 24 * 60 * 60 // 7 days, in seconds }); 'Completed/기계식 암호화장치' 카테고리의 글 목록 :: MakerLee's Workspace
728x90

전체 모습입니다. 





내부에 들어가는 바퀴는 위와 같이 내륜과 외륜으로 되어 있습니다 .






클릭 구조를 만들어 정위치에서 멈추게 됩니다. 








외륜은 25각형으로 되어 있으며 

한글 자음과 모음을 각 면의 왼쪽에 적고,

오른쪽에 알파벳을 적습니다.

한글 글자를 알파벳으로 바꿔 암호화하는 방식입니다. 







처음 설계는 쉬웠으나 아이들이 쓰기 편하게 만들려니 수정사항이 많았습니다. 
클릭래치 두께만 해도 너무 굵으면 아이들이 돌리기 힘들어 하더라고요. 





출력시 바닥에 닿는 면이 약간씩 튀어나오기 때문에 기둥에 끼울 때 걸리게 됩니다. 

그래서 갈아내지 않아도 잘 끼워지도록 컷을 줬습니다. 







내륜을 기둥에 끼울 때 방향성이 있기 때문에 내륜과 기둥에 각각 삼각형 표시를 해서 혼란이 없도록 했습니다. 







동글동글한 형태라 굴러가기 쉬워 한쪽에 다리를 달았고요.








이대로 보면 정확히 봐야 하는 면이 어딘지 알기가 힘듭니다. 







그래서 작은 사각형을 붙여서 정확히 봐야 하는 면을 표시하도록 했습니다. 








이외에는 계속 출력과 수정의 연속이었습니다. 

출력량이 많다 보니 시간이 많이 걸리더군요. octoprinter 가 없었다면 두배는 더 걸렸겠죠






휠을 끼운 후 마지막에 볼트로 조이도록 했습니다. 

이 부분도 출력물로만 해결할 수 있으면 더 좋겠지만 개인적으로 너무 시간을 많이 잡아먹어서 급히 마무리했습니다. 








이 부분은 그냥 순접으로 붙였습니다 .





728x90
728x90

암호화를 하는 방법은 여러 가지가 있지만

여기서는 간단하게 1:1 대응하는 방식으로 하기로 했습니다.

 ㄱ

 ㄴ

 ㄷ

 ㄹ

이런 식으로 ㄱ 은 1로, ㄴ은 2로 바뀌는 방식입니다. 

하지만 이런 식의 암호화는 너무 쉬우므로 순서를 불규칙하게 합니다. 





 ㄱ

 ㄴ

 ㄷ

 ㄹ

이렇게 순서를 바꿔 암호화의 규칙성을 찾기 힘들게 하는거죠.

그리고 암호화하는 바퀴를 여러개 만들어 각각의 바퀴마다 규칙을 다르게 합니다. 


첫번째 바퀴는

2

3

1

4


두번째 바퀴는

4

1

2

3



이런 식으로 바퀴마다 숫자의 배열이 전부 달라집니다. 


각 바퀴마다 A,B,C,D,E,F,G,H 라고 이름을 짓습니다. 








이제 이런 바퀴쌍이 똑같이 2개씩 있고 바퀴의 순서를 똑같이 조립합니다. 

그러면 송신자가

[안녕하세요] 를 [ 2 / 3 /12 / 5 / 6 / 23 ] 이렇게 암호화 한후


수신자가 그 암호를 받아 

[ 2 / 3 /12 / 5 / 6 / 23 ] 에 맞춰 휠을 돌리면 [안녕하세요] 라고 복호화가 될겁니다.








바퀴는 25각형으로 되어 있고

각 면의 왼쪽에는 한글 자음과 모음, 오른쪽에는 대응하는 숫자가 써 있습니다. 

하지만 이런 경우 숫자의 띄어쓰기가 확실하지 않으면 해석이 힘들겠죠

1 / 2 / 24  를 해석했을 때 12 / 24 로 해석하게 되는 문제가 있을겁니다.






그래서 숫자 대신 영어를 쓰기로 합니다. 

이렇게 하면 잘못 해석하기가 힘들죠.







두 통신자가 서로 암호 휠의 순서를 무작위로 통일하면 중간에 암호가 유출되더라도 

탈취자가 암호를 해석하는 일이 더 어려워지게 됩니다. 



암호화 방법은 여러 가지가 있지만 여기서 만드는 기계식 암호화 장치의 기본 원리는 이와 같습니다. 



728x90
728x90

조카(초3) 방학과정중에 크립택스 만들기 가 있는데 그게 뭐냐고 물어봐서 암호화장치라고 얘기를 해줬다.
근데 검색해보니 다빈치코드에 나왔던 코드형 소형 금고(?) 같은 물건이더라.
하여간 조카녀석은 암호화에 대해 궁금증이 폭발해 
암호가 무엇인지, 왜 암호를 만드는지, 기초적인 암호 만드는 방법과 복호화에 대해 설명을 하게 되었다.
암호화/복호화는 통신상대끼리 쉽게 가능해야 하고 탈취한 사람은 복호화가 어려워야 하기 때문에 소수(prime number)를 이용한다는 얘기를 해주고..
그래서 또 소수란 무엇인가? 하는 질문이 들어와 소수에 대해 설명하기 시작했다. 
이제 수학과정에서 나눗셈 연습하는 아이라 소수를 쓰는 이유가 인수분해가 어려워서 그렇다는 설명은 넘어갔지만;

결론은 간단한 기계식 암호화 장치를 같이 만들어보기로..


728x90

+ Recent posts