본문 바로가기
반응형

IT 이론236

블록 암호와 해시 암호 블록 암호와 해시 암호의 가장 큰 차이는 복호화가 가능하냐 불가능하냐 이다. 암호화 해서 전달은 하되 수신측에서도 내용을 알아야 한다면 블록 암호를 사용하고 그냥 무결성 검증 및 인증 용도로만 사용할 것이라면 해시 암호를 쓰면 된다. 블록 암호 - 사전에 공유한 비밀키를 이용하여 암호화/복호화한다. - Feistel 구조, SPN 구조, 기타 대수적 구조로 구분된다. - DES, TDES, IDEA, AES, SEED 등이 있다. SEED는 국내에서 개발되어 TTA의 인증을 받은 국내 표준이며 국제 표준화가 진행 중이다. 안정성이 높지만 속도가 느리다는 단점이 있다. 해시 암호 - 일방향성 : 출력값에 대응하는 입력 값을 찾는 것이 계산적으로 불가능하다. - 충돌 저항성 : 동일한 출력값을 갖는 입력 값.. 2016. 10. 13.
개인정보보호 관리체계 인증(PIMS) - 통합된 개인정보보호 인증제도 개인정보보호 인증제란 공공기관이나 민간기업의 개인정보 관리 체계와 개인정보 보호조치 등을 심사해 일정한 보호수준을 갖출 경우 인증해 주는 제도이다. 문제는 무척이나 유사한 두가지 인증이 두개 기관에서 따로 운영되고 있었다는 것이다. 신청 비용도 상당히 고가인데 각 주무부처에선 자기네들 인증을 받으면 혜택을 주겠다고 하고 있으니 어느 인증을 선택해서 받아야 할지 혼란이 있었다. ● 개인정보보호 인증제(PIPL, Personal Information Protection Level) ※ 행정자치부 산하의 NIA에서 시행 및 심사인증 ● 개인정보관리체계 인증(PIMS, Personal Information Management System) ※ 방송통신위원회 산하 KISA에서 시행 및 심사인중 결국 양 부처가 2.. 2016. 10. 13.
음수 표현을 위한 보수법과 보수를 이용한 뺄셈⑵ 앞선 포스팅에서 10진수의 보수 연산을 보았다. 그런데 그닥 편해 보이지도 않았고 뺄샘을 쉽게 하기 위한 연산인데 보수를 구하기 위해 뺄샘을 해야 한다는 게 아이러니 했다. 그리고 왜 굳이 10(n)의 보수와 9(n-1)의 보수를 구분해서 사용하는 지도 이해가 되지 않았다. 이번에는 2진수의 보수 연산을 보며 이 궁금증을 풀어 보자. 101011의 보수를 구해 보자. 2진수에선 2의 보수와 1의 보수가 있다고 하였다. 1의 보수 111111 - 101011 = 010100 ※ 1의 보수는 그냥 각 자리를 반전시켜 버리면 된다. 2의 보수 1000000 - 101011 = 010101 ※ 2의 보수는 1의 보수에 1만 더해주면 된다. 10진법 보수 연산과의 차이점이 보이는가? 뺄샘이 필요가 없다! 컴퓨터 .. 2016. 10. 13.
음수 표현을 위한 보수법과 보수를 이용한 뺄셈⒧ 이해를 돕기 위해 10진법과 2진법에 대해서만 보자 10진법에는 10의 보수와 9의 보수가 있고 2진법에는 2의 보수와 1의 보수가 있다. 이렇게 각 n진법에는 n의 보수와 n-1의 보수가 주로 사용된다. n의 보수를 구하기 위해선 주어진 숫자의 자릿수 만큼 0을 채우고 가장 왼쪽에 1을 추가하여 기준을 만든다. n-1의 보수를 구하기 위해선 주어진 숫자의 자릿수 만큼 9를 채워 기준을 만든다. 그리고 기준값에서 주어진 숫자를 뺀다. 아래 예를 보자 48의 10의 보수는 100 - 48 = 52 48의 9의 보수는 99 - 48 = 51 그럼 이런 보수는 왜 구하는 것일까? 컴퓨터에서 뺄셈 연산을 하기 위해서이다. 90 - 48 이라는 연산을 한다고 생각해 보자. 물론 감산기를 이용해서 실제 뺄셈 연산을.. 2016. 10. 13.
스니퍼 대응책(스니핑 탐지법) 여러 보안 책자에 그대로 있는 내용이고 인터넷에도 많은 내용이지만 기반 지식 없이 보면 이해가 잘 되지 않고 단순 암기에 지날 수 밖에 없는 간략화된 내용들이라 좀더 살을 붙여서 포스팅 하겠다. ① Ping 을 이용한 방법 대부분의 스니퍼는 일반 TCP/IP에서 동작한다. 이를 이용하여 의심이 가는 호스트에 ping 을 보내는데 존재하지 않는 MAC 주소로 위장해서 보낸다. ping은 ICMP프로토콜에서 해당 호스트까지 reachable한지를 검사하는 신호로, 정상적인 경우라면 MAC 주소가 유효하지 않으므로 응답이 오지 않는 것이 맞다. 하지만 스니핑용 호스트라면 MAC 주소와 무관하게 모든 정보를 다 수신받으므로 ICMP에서 정상적으로 reach 했다는 뜻의 Echo reply 를 보내게 된다. ② .. 2016. 10. 12.
커호프의 원칙(Kerckhoff's principle) Kerckhoff의 원리에 따라 암호 알고리즘은 비공개로 할 필요가 없다. 시험 문제의 보기에서 자주 나오는 문장이다. 언뜻 보면 당연히 틀린말 같지만 맞는 보기이다. 암호를 푸는데는 복호화 key와 복호화 알고리즘이 필요하다. 물론 둘다 보안이 철저히 유지 된다면 좋겠지만 커호프는 알고리즘은 중요하지 않다고 말한다. 매우 보안 정신이 부족한 생각 같지만 보안을 책임지는 사람이라면 그렇게 생각해야 한다고 말한다. 그만큼 복호화 key에 대한 보안이 철저해야 한다는 의미이다. 알고리즘은 언제든지 뚫릴 수 있다. 유출이 되지 않더라도 역공학을 이용해서 풀릴 수도 있다. 그런 만큼 알고리즘의 보안성만 믿고 '복호화 key? 유출되면 다른 걸로 바꾸면 되지 뭐. 우린 절대 뚫릴 수 없는 완벽한 알고리즘이 있으니.. 2016. 10. 12.
시도-응답 인증(Challenge-Response Authentication) 기존의 ID + PASSWORD 방식은 재전송 공격에 취약하다. 시도-응답 인증은 이런 취약점을 보완하기 위해 대칭키 기반의 소지기반 보안을 추가한 일회성 인증 방법이다. 시도-응답 인증에서 중요한 개념은 일회성 인증이다. 은행의 시크리트 카드보다 OTP가 보안성이 훨씬 좋은 것과 같은 맥락이다. 사용지가 인증을 원할 경우 서버에선 사용자에게 일회성 Challenge를 보낸다. 사용자는 이를 비밀키로 암호화하여 서버에 Response 한다. Challenge 는 일회성으로 난수로 예측할 수 없고 매번 다른 값으로 바뀌어야 한다. 이런 방식이라면 해커가 중간에 Response를 스니핑 하더라도 이를 재사용 할 수 없다. 이미 한번 쓰였던 일회용 값이기 때문이다. 이러한 인증 방법을 사용하려면 서버와 클라이.. 2016. 10. 12.
사용자 인증 방법 3가지 Type1. 지식기반 인증 주체가 알고 있는 것을 보여줌으로써 인증한다. ex) 패스워드, 비밀번호찾기 질문/답 Type2. 소유기반 인증 주체가 가지고 있는 것을 보여줌으로써 인증한다. ex) 시크리트 카드, OTP, 출입증 Type3. 존재(생체)기반 인증 주체가 그를 나타내는 것을 보여줌으로써 인증 한다. ex) 지문인식, 홍채 인증, 정맥 인증 휴대폰 인증, 공인인증서는 Type1 + Type2이다. 2016. 10. 12.
IEEE 754 부동 소수점 표현의 이해 -118.625 를 2진수로 나타내려면 어떻게 해야 할까? 단순히 아래와 같은 표현을 생각해 볼 수 있겠다. -1110110.101 이렇게 표현하면 어떤 실수도 제한 없이 표현 가능하다. 하지만 부호는 어떻게 표현할 것이며 소수점의 위치는 어떻게 나타낼 것인가? 그리고 컴퓨터에서 변수들 생성할 때는 메모리 할당을 위해 고정된 크기로 생성해야 한다. 그렇다면 어디까지를 정수에 할당하고 어디까지를 소수에 할당할 것인가? 이런 고민들에 표준을 제시한 것이 IEEE 754 이다. IEEE 754 에선 지수부와 가수부 라는 표현을 사용한다. -118.625 를 -1.18625 × 10의 2승 이라고 표현하는 것이다. 2진수로 나타내면 -1.110110101 × 2의 6승이다. 정수는 가장 앞의 한 자리만 남도록 .. 2016. 10. 12.
카르노맵 문제 풀기 가장 많이 나오는 문제는 카르노맵을 주고 식을 도출해내는 문제이다. 역으로 식을 주고 카르노맵을 그리는 문제도 나오지만 둘중 하나만 이해해도 카르노맵과 관련된 문제는 다 풀 수 있다. 우선은 카르노맵을 식으로 풀어내는 것만 보자. 아래 3가지는 꼭 기억하고 넘어가야 한다. 1) 카르노맵의 가로축은 00 01 11 10 순서이다. * 그레이코드를 이용한 것인데 혹시 그려야 될 경우도 있기 때문에 언급해 둔다. 2) 카르노맵의 맨 좌측과 우측은 지구본 처럼 이어진다. 반지처럼, 밴드처럼 이어져 있다. 3) 2의 승수로 같은 값이 연속될 경우에만 묶을 수 있다. 말이 어려워 보여도 굳이 이해하려고 애쓰지 말자. 위 공식을 보면서 아래 예제만 몇개 풀어보면 된다. 이렇게 묶어주면 된다. 2개 또는 4개 단위로 .. 2016. 10. 12.
전자계산기 구조 계산 문제 명령 사이클 시간 1클록 = 1머신 스테이트 머신 사이클 = n머신 스테이트 명령 사이클 = n머신 사이클 Q. 하나의 명령 사이클을 실행하는데 2개의 머신 사이클이 필요하고 각각 머신 사이클은 5개의 머신 스테이트로 구성되어 있고 CPU 클록 주파수는 10MHz일때 하나의 명령 사이클을 실행하는데 걸리는 시간은? 2×5x(1/10,000,000) = 1/1,000,000 = 1µs 인스트럭션의 성능 수행시간 / (페치시간 + 준비시간) Q. 인스트럭션 수행 시간이 10ns 이고, 인스트럭션 페치 시간이 5ns, 인스트럭션 준비 시간이 3ns라면 인스트럭션의 성능은? 10 / (5+3) = 1.25 버스의 대역폭 버스 클록(Hz) × 버스의 폭(bit) Q. 버스 클록이 2.5GHz이고, 데이터 버스의 .. 2016. 10. 11.
동기식 전송과 비동기식 전송 비동기식 전송 - 문자 단위로 전송하며, 한 문자 코드 앞뒤로 Start bit, Stop bit를 붙여서 전송한다. 필요한 경우 패리티 비트등을 추가할 수도 있다. - 전송이 없는 시간 동안 회선은 휴지 상태가 되는데 얼마나 지속될지 알 수가 없다. - 문자 앞뒤로 추가적인 bit가 붙으므로 효율이 떨어진다. - 주로 단거리 저속 전송에 사용된다. 동기식 전송 - 정해진 만큼 한 블록(프레임) 단위로 전송한다. - 추가적인 bit 나 휴지 시간이 없으므로 전송 효율이 좋다. - 한꺼번에 큰 단위로 전송하므로 속도가 빠르나 수신 측에선 반드시 버퍼가 필요하다. - 문자위주 동기방식과 비트위주 동기 방식이 있다. - 문자위주 동기 : SYN등의 제어 문자 이용 - 비트위주 동기 : 011110 등의 제어 .. 2016. 10. 11.
FDS(Fraud Detection System, 이상거래 탐지 시스템) 2001년 페이팔 해킹 사고 이후 페이팔에서 자체적으로 추진, 개발하였다. 한국에서는 몇몇 카드사에서 자체 도입하였고 2014년 금융감독원에서 '금융권 FDS 고도화 로드맵 1.0' 을 발표한 이후 현재 주요 금융권(제 1금융권 중심)에선 대부분 도입이 완료되었다. 주요기능 1. 수집 2. 분석, 평가 3. 대응 3. 모니터링 및 감사 프로세스 거래정보를 수집하여 분석, 평가하고 이상거래라는 의심이 들 경우 추가 인증 요구, 이상거래로 판단될 경우 거래를 차단한다. 이상거래 방금 서울에서 결제된 카드가 잠시 후 싱가포르에서 결제되었다. 가정 주부 소유의 카드가 카지노에서 결제되었다. 2016. 10. 11.
개인정보 유출사실의 통지•신고제도 개인정보보호법 제34조(개인정보 유출 통지 등) ① 개인정보 처리자는 개인정보가 유출되었음을 알게 되었을 때에는 지체 없이 해당 정보주체에게 다음 각 호의 사실을 알려야 한다. 1. 유출된 개인정보의 항목 2. 유출된 시점과 그 경위 3. 유출로 인해 발생할 수 있는 피해를 최소화하기 위해 정보 주체가 할 수 있는 방법등에 관한 정보 4. 개인정보 처리자의 대응조치 및 피해 구제절차 5. 정보 주체에게 피해가 발생한 경우 신고 등을 접수할 수 있는 담당부서 및 연락처 2016. 10. 11.
PKI 기반 전자서명과 공인인증서 전자서명법에 의해 전자서명 또한 종이 문서에 서명한 것과 동일한 효력을 갖는다. 그래서 은행 영업점에 가서 전표에 서명을 하지 않고서도 송금 등의 금융업무가 가능한 것이다. 이러한 전자서명 구도에서 가장 중요한 것은 이 전자 서명이 유효한 사용자의 유효한 서명인가 여부이다. 실제로 대면해서 실명증표 확인후 서명 받는 것이 아니기 때문에 비대면 채널에선 항상 신분위장 공격의 위험이 따른다. SSL이 이용자 입장에서 업체의 무결성을 보장받는 보안이었다면 공인인증서는 반대로 업체 입장에서 이용자의 무결성을 보장받기 위한 보안이다. ​공인인증서의 정의 어떤 공개키가 누구의 소유인지 증명하는, 공인된 기관에서 발행한 인증서 ​공인인증기관 : 금융결제원, 한국정보인증, 한국증권전산, 한국전산원, 한국전자인증, 한국.. 2016. 10. 11.
XML 기반 보안 기술 ebXML : 전자상거래 데이터 교환의 전세계적 표준 구축을 위한 OASIS(사설 컨소시엄)와 CEFACT(UN산하기관)의 프로젝트 XML Signature : 영구 무결성 및 부인 방지 XML Encryption : 영구 기밀성 XKMS(XML Key Management Specification) : PKI서비스 프록시 SAML(Security Assertion Markup Language) : 인종, 승인, 속성 Assertion XACML(eXtention Access Control Markup Language) : XML 기반 접근 제어 2016. 10. 11.
IPSec IPSec은 이름에서 알 수 있듯이 보안성이 부족한 기존 IP프로토콜을 보완하기 위한 보안 기술이다. 기존 IP프로토콜에 추가적인 절차를 더해 호환성있게 적용되며 IPv4에선 보안이 필요한 경우에만 선택적으로 사용되었지만 IPv6부턴 기본 스펙에 포함된 필수 사항이다. IPSec에는 2+1가지 프로토콜이 지원된다. 프로토콜이라고 하지만 실제론 헤더의 구성 차이, 기능 차이라고 보면 된다. AH(Authentication Header) : Sequence number를 이용하여 재전송 공격을 방지한다. 무결성을 보장한다. ESP(Encapsulating Security Payload) : AH의 기능을 포함하고 추가적으로 패킷을 암호화하여 기밀성을 제공한다. 이 둘은 선택 옵션이다. 초기 연결 시에 어떤 .. 2016. 10. 11.
SSL/TLS 프로토콜 웹 브라우저와 웹 서버 간에 안전한 정보 전송을 위해 사용되는 암호화 프로토콜이다.우선 SSL과 TLS라는 이름에 대해 짚고 넘어가자. SSL(Secure Socket Layer)은 넷스케이프사에서 개발한 보안 프로토콜로, IETF에서 이를 국제 표준화 하는 과정에서 SSL이 모 기업의 상용 제품과 이름이 같다는 이유로 TLS(Transport Layer Security)로 이름을 바꾸어 버린다. SSL3.0이 나온 직후 개명되었으므로 그냥 TLS1.0을 SSL3.0이나 SSL3.01정도로 보면 된다. 말 그대로 개명이지 구조적인 변화나 기술적인 진보가 이루어 진 것은 아니므로 그냥 같은 개념으로 보면 된다. 이 글에서는 그냥 SSL로 통칭한다. SSL은 앞서 설명한 Diffie-Helman Key Ex.. 2016. 10. 11.
반응형