암호
-
Lisp 비교 : 암호 문자열 감추기 문제 풀이Programmer/Programming 2016. 1. 13. 18:53
"케빈 TV 12회 (상) - 느 언어엔 이런거 없지?"에 주어진 글자수만큼 '*'를 가진 문자열을 생성하는 문제가 나왔다. 여러 언어별 구현이 나왔지만, Common Lisp와 Emacs Lisp, Scheme, Clojure가 없어서 여기에 적어본다. Common Lisp: (defun hide-password (passwd) (coerce (mapcar #'(lambda (x) #\*) (coerce passwd 'list)) 'string)) Emacs Lisp: (defun hide-password (passwd) (coerce (mapcar (lambda (x) ?\*) (coerce passwd 'list)) 'string)) Scheme: (define (hide-password passw..
-
코드북(The Code Book)Life/Books 2007. 1. 8. 15:00
이책은 감추고 싶은 욕망과 들추고 싶은 욕망 사이에서의 치열한 전투를 생생하게 그려냈다. 사람들은 필요에 따라서 비밀을 기록으로 남기거나 다른 사람에게 전달해야 한다. 비밀이 개인의 기억 밖으로 나온 이후부터는 위험에 처하게 된다. 비밀을 지키기 위해서 여러가지 방법을 개발하였고, 이와함께 여러가지 이유-이해득실, 단순한 호기심 등-에서 비밀을 깨내는 사람들의 도전도 함께 시작되었다. 사이퍼/디사이퍼의 발전은 자연의 생태계의 진화와 유사했다. 초식동물과 육식동물의 관계와 같이 암호개발자와 해독가 사이의 경쟁이 일어난다. 새로운 사이퍼가 나오면 둘간의 싸움에서 당분간 암호개발자 승리한다. 그러나 그것이 계속될 수 없다. 언젠가는 암호해독가는 새로운 그것을 깨뜨리는 새로운 방법을 발견하게 되기 때문이다. 이..