본문 바로가기

반응형

교육/암호학

(15)
Day 41 (암호학) 공개키 암호 시스템 두개의 키 쌍을 사용하여 암호화 및 복호화를 지행하는 방식이다. 두개의 키쌍은 공개키와 개인키로 구분되는데 공개키는 레파지토리에 공개해놔서 다른사람들도 알수있는 키 이다. 개인키는 개인이 소유하고 있는 키이다. 공개키를 이용한 기밀통신은 평문을 수신자의 공개키로 암호화 하여 암호문을 생성한다. 이 암호문을 수신자의 개인키로 복호화 하면 다시 평문이 된다. 암호해독자가 중간에 암호문을 가져간다고 해도 수신자의 개인키를 알수없기 때문에 해독이 불가능 하다. 공개키를 이용한 서명문 통신은 평문을 송신자의 개인키로 암호화 하여 암호문을 생성한다. 이 암호문을 송신자의 공개키를 이용해 복호화 하여 복호문을 생성한다. 이때 공개키는 누구나 알수있는 키이기 때문에 내용은 볼수 있지만 변경은 불가능..
Day 40 (암호학) DES에서 확장/순열에 이용하는 테이블을 E 테이블이라고 하며 확장순열을 사용한다. E 테이블을 참조하여 16개의 글자를 중복으로 생성하여 32비트를 48비트로 늘려준다. 치환/선택에서 수행하는 방식은 원문의 모든 비트가 출력 비트를 만드는데 참여해야한다. 이것을 S-BOX를 이용해 비트수를 줄여줍니다. 이때 48비트를 6비트씩 나누고 6비트를 모두 사용하여 4비트로 표현하는것이 포인트 이다. s1박스는 s8박스까지 전부 내용이 다르다. 임의 수정은 가능하지만 중복된 결과값출력이 되므로 좋지 않다. s-box는 어떤방식으로 구성했는지 알지 못한다. 일정 값을 6비트로 표현한후 맨 앞비트와 맨 뒤비트를 합쳐 행을 구성하고 가운데 숫자로 열을 만든후 S1-Box에 있는 값을 다시 2진수로 변환한다. 예를들어..
Day 39 (암호학) 암호시스템에는 비밀키 암호 시스템과 공개키 암호 시스템만 있다. DES는 비밀키 암호에 대표적으로 사용하는 알고리즘이다. DES는 복잡한 문제를 단순화 하는 작업에 최적화 되어있다.DES는 90년대 까지 사용하고 최근에는 미국에서는 AES, 유럽, 캐나다등에서는 IDEA라고하는 알고리즘을 사용한다. 비밀키 암호 시스템은 공용키 암호 시스템, 관용키 암호 시스템이라고도 한다. 비밀키 암호의 원리는 평문을 공용키를 이용해 암호 알고리즘에 넣으면 암호문으로 출력된다. 이 암호문을 복호 알고리즘에 공용키와 함께 넣으면 다시 평문이 출력된다. 공용키는 대칭키, 관용키라고도 하며 64bit나 128bit의 정해진 문자열을 사용한다. 비밀키 암호 시스템에서는 보통 암호 알고리즘과 복호 알고리즘을 동일하게 사용하는데 ..
Day 37 (암호학) 사각형 행렬을 사용한 전치기법은 키를 무작위순서로 일정한 연속적인 숫자로 적는다. 그리고 평문을 키의 갯수만큼 행을 나눠 작성하고 빈 곳은 임의의 글자로 채워 사각형 행렬을 만든다. 그리고 키에 배열한 숫자의 작은 수 부터 열단위로 묶어 적는다. 예를 들어 평문은 I have a cat her name is tom she is so lovely, 키는 215364라고 한다면 표와 같다. 2 1 5 3 6 4 i h a v e a c a t h e r n a m e i s t o m s h e i s s o l o v e l y e a 이를 키의 순서대로 열단위로 묶으면 haaose icntiv vhesoy arseoa atmmsl eeihle가 된다. 이를 붙여쓰면 haaoseicntivvhesoyars..
Day 36 (암호학) 다중단일 문자 치환을 사용한다. 단순 단일 문자 치환 방법을 개량한다. 다중 단일 문자 치환 암호 방법의 공통점은 하나의 단일 문자 치환 규칙 집합을 사용한다. 단순 단일문자 치환 방법과는 다르게 변환에 키에 의해 결정된다. vigenere표를 참조하여 사용한다. 평문을 띄어쓰기 없이 한 문장으로 적은뒤 키를 평문 만큼 반복하는 것이다. 따라서 평문은 25자 이상이어야 하며, 키는 10자 미만의 글자여야 한다. 예를 들어 키는 infinitive, 평문은 I see him drive라고 하면 i s e e h i m d r i v e i n f i n i t i v e i n 키 보다 평문이 2글자 많아 키를 반복하여 그 자리를 채운다. 그 후 vigenere를 참조하여 1행은 평문, 1열은 키를 사용하..
Day 35 (암호학) 위의 php파일을 url접속을 막고싶은 곳에 require이나 connect함수를 써서 연결하면 된다. 또한 평가받을 파일에는 로그인 하는 화면으로 넘어가게 했는데 의도된 답은 로그인 화면으로 가는것이 아닌 이전화면으로 돌아가는것이 옳은 답이다. 암호학 steganography 최초의 암호로 메시지의 존재 자체를 은폐한다. 기원은 이집트에서 노예의 머리를 밀고 암호를 쓴다. 머리가 자랄때 까지 기다린후에 여러 노예와 함께 보낸다. 근대에 가장 많이 사용한 방법은 종이에 초로 글씨를 쓴 후 불위에서 녹여 보는 방법이 있다. 스테가노그래피는 생성이 쉽다는 장점이 있지만 적은 정보를 은닉하는데 많은 오버헤드를 요구한다. 방법이 노출되면 재사용이 불가능하다. 또한 사실이 발견되면 타인에 의해 이용될 수 있다. ..
Day 34 (Php+oracle, 암호학) php_db 평가 제공된 소스코드에 보안상의 문제를 개선해서 재 프로그램 한다. . 조건 1. 추가된 소스 코드에는 반드시 주석이 포함돼야 한다. - 추가된 변수와 기능에 대한 주석을 모두 포함한다. - 주석이 없는 경우는 점수에서 제외됨. . 조건 2. 프로그램 전반에 들여쓰기, 개행 등의 기술방법이 반드시 일정해야 한다. - 프로그램이 정상 실행되어야한다. - 제한 시간은 2시간입니다. require함수를 사용하여 url무단접속을 차단하고 싶었지만 사용법을 몰라 무식하게 인증하였다. ​===================================================================== 개방통신로는 누구나 다 볼수있는 선로로서 보안이 전혀 없다. 원문을 송신하게 되면 도청이나 임..

반응형