본문 바로가기

IT307

C언어 기초 - 컴파일러 및 자료형 C언어 기초 - 컴파일러 및 자료형 컴파일러 고급언어로 쓰인 프로그램이 컴퓨터에서 수행되기 위해서는 컴퓨터가 직접 이해할 수 있는 언어로 바꾸어 주어야 합니다. 이러한 일을 하는 프로그램을 컴파일러라고 합니다. 예를 들어 원시언어가 파스칼(Pascal)이나 코볼(Cobol)과 같은 고급언어(사람이 알아보기 쉬운 언어)이고 목적언어가 어셈블리 언어나 기계어일 경우, 이를 번역해 주는 프로그램을 컴파일러라 합니다. 파스칼이나 코볼을 몰라도 상관없습니다. 정리를 하면 C언어가 고급언어이고 이를 번역해서 컴퓨터가 알아 듣게 하려면 컴파일러가 필요합니다. 컴파일을 하기 위하여 입력되는 프로그램을 원시 프로그램이라 하고 이 프로그램을 기술한 언어를 원시언어(source language)라 합니다. (source l.. 2017. 7. 22.
APT 공격과 사회공학기법에 관련 설명 APT 공격 APT 공격은 Advanced Persistant Threat으로 문자 그대로 해석하면 지속적 지능 공격입니다. 보안에 대한 관심이 높아지고 있고 APT 공격은 악랄한 기법으로 소문나 있습니다. APT공격은 이제 대중화된 공격이며 많은 해커들이 타게팅을 잡아놓고 공격을 시도하고 있습니다. 따라서 많은 기업들이 APT공격으로 회사의 보안기밀을 유출하고 많은 돈 뿐만 아니라 신뢰마저 잃고 있습니다. 우리나라는 대표적으로 인터파크 해킹이 있었습니다. 고객 데이터베이스 서버가 해킹 당해 고객 1030만명의 개인정보가 유출되었습니다. 이름, 아이디, 주소, 전화번호 등 개인정보가 유출되었습니다. 개인정보를 대가로 비트코인 30억원을 요구하였으며 이 때문에 신고를 했다고 알려져 있습니다. 이러한 침해 .. 2017. 7. 19.
정보보안의 3요소에 대해서 정보보안의 3요소 기밀성(Confidentiality) 오직 인가된(authorized) 사람, 인가된 프로세스, 인가된 시스템만이 알 필요성에 근거하여 시스템에 접근해야 한다는 원칙입니다. 기밀성은 두 가지 의미를 가집니다. 데이터의 기밀성과 프라이버시입니다. 데이터 기밀성이란 개인정보나 기밀 정보를 부정한 사용자가 이용하거나 그들에게 노출되지 않도록 하는 것입니다. 프라이버시란 개인과 관련된 어떤 정보가 수집되고 저장되는지, 누구에게 그 정보가 공개되는지, 누가 공개하는지 등을 통제하거나 영향이 미칠 수 있도록 하는 것입니다. 기밀성을 보장하기 위한 보안 기술에는 접근제어, 암호화 등이 있습니다. 무결성(Integrity) 네트워크를 통하여 송수신되는 정보의 내용이 불법적으로 생성 또는 변경되거나 삭.. 2017. 7. 19.
라우팅과 라우팅 프로토콜에 대해 알아보자. 라우팅과 라우팅 프로토콜 설명 - 거리벡터, 링크상태 알고리즘 라우팅 인터넷은 LAN들이 연결된 네트워크입니다. LAN은 Local Area Network의 약자이며 이때 LAN과 LAN들은 라우터로 연결됩니다. 라우터에는 여러 개의 포트(port)가 있어서 여러 LAN과 연결될 수 있습니다. 여러개의 네트워크가 연결이 된다면 길을 찾아갈 수 있도록 라우팅이 필요합니다. 이 연결은 동네를 LAN으로 생각하고 도로를 전송통로로, 사거리를 라우터라고 생각하면 실제 도로망과 매우 유사합니다. 결과적으로 세상에 존재하는 LAN들은 다양한 경로를 통해 서로 연결되어 있는 것입니다. 인터넷에서 어떤 컴퓨터에서 다른 컴퓨터로 통하는 길은 다양하며 복잡합니다. 도로망에서 한 지점에서 다른 지점으로 이동하는 경로는 매우.. 2017. 7. 17.
랜섬웨어(Ransomware) - 파일을 인질로 하는 랜섬웨어 공격 랜섬웨어(Ransomware) - 파일을 인질로 하는 랜섬웨어 공격 이번 포스팅은 랜섬웨어에 대해 하겠습니다. 최근 랜섬웨어라는 보안 공격이 유행하고 있습니다. 뉴스에도 나올 만큼 강력한 랜섬웨어의 등장도 있었습니다. 랜섬웨어란 무엇이고 어떤 방식으로 공격하는지에 대해서 포스팅 하도록 하겠습니다. 랜섬웨어는 여러가지 컴퓨터의 기술이 들어가 있으므로 전부 설명 하도록 하겠습니다. 암호화나 복호화같은 기본적인 개념을 모르면 이해하기 어려울 수도 있습니다. 설명 랜섬웨어는 몸값(Ransom)과 소프트웨어(Software)의 합성어입니다. 말 그대로 해석한다면 몸값 소프트웨어 입니다. 랜섬웨어는 사용자의 PC의 파일 및 데이터를 암호화하고 암호화한 파일을 다시 사용할 수 있도록 복호화 해줄테니 돈을 달라고 하는.. 2017. 7. 17.
네트워크 - OSI 7계층, 계층별 설명 정리 OSI 7계층 네트워크는 다수의 시스템을 전송 매체로 연결한 것입니다. 소규모 네트워크를 전송 매체로 연결해 더 큰 네트워크로 확장할 수 있습니다. 컴퓨터 네트워크는 외형상 호스트 시스템과 전송매체로 구분됩니다. 하지만 이런 물리적인 형태와는 별개로 수행하는 내부 기능을 다양한 구조로 구분할 수 있습니다. 특히, 호스트가 제공하는 방식에 따라서 계층 모델로 나눠 설명할 수 있습니다. OSI 7계층 모델에 대해 설명하도록 하겠습니다. 실제로 사용하는 모델이 아닌 참조모델입니다. 따라서 OSI 참조모델이라고 불리기도 합니다. 특징이 다른 여러 호스트를 서로 연결해 통신하려면 연결 방식을 표준화해야 합니다. 국제 표준단체인 ISO (International Standard Organization)에서는 OSI.. 2017. 7. 17.
네트워크 기초용어 정리 및 설명 네트워크(network)란 전송매체 링크로 연결된 장치들의 모임이라고 할 수 있으며, 장치는 컴퓨터만이 아니라 프린터, 데이터 송수신 장치가 될 수 있다. 이러한 네트워크는 컴퓨터로 와서 컴퓨터 네트워크라는 단어를 만들게 되었습니다. 컴퓨터네트워크(computer network)란 컴퓨터들 간에 정보 또는 데이터를 전달하기 위해 컴퓨터들을 서로 연결한 것을 말하면서 동시에 그러한 연결에 대해 연구하는 분야를 일컫는 용어입니다. 집이나 사무실의 PC들을 서로 연결하여 통신할 수 있는데 이렇게 한정된 지역의 컴퓨터들을 서로 연결하여 통신이 가능하도록 구성한 네트워크를 LAN(Local Area Network) 또는 사내망이라고 합니다. LAN의 특징은 하나의 동일한 관리주체에 의해서 관리되는 네트워크라는 것.. 2017. 7. 16.
알고리즘 - 역사, 특성, 효율성 알고리즘 알고리즘 역사 특성 효율성 - 설명하는 포스팅을 입니다. 알고리즘을 공부하고 있다면 알아야할 것들이며 만약 틀리거나 잘못된 부분이 있다면 알려주시면 감사하겠습니다. 역사 알고리즘은 이제 일상생활에서도 꽤 자주 볼 수 있는 단어입니다. 알고리즘이라는 용어는 9세기경 페르시아 수학자인 알콰리즈미(al-Khwarizmi)의 이름으로부터 유래되었습니다. 알콰리즈미는 수학의 다양한 방정식들의 해법에 대한 책을 서기 830년에 집필하였으며, 수학 뿐만 아니라 천문학, 지리학, 지도의 제작 발전에도 크게 기여한 학자입니다. 알고리즘은 문제를 해결하기 위한 단계적인 절차를 의미합니다. 흔히 알고리즘은 요리법과 유사하다고 하며, 단계적인 절차를 따라 하면 요리가 만들어지듯이, 알고리즘도 단계적인 절차를 따라 하.. 2017. 7. 16.
GNU/Linux - 역사 및 특징 GNU/리눅스 리눅스(linux)에 대한 역사 및 장점에 대해 설명을 하도록 하겠습니다. 많은 분들이 리눅스라는 단어는 많이 들어보셨으리라 생각됩니다. 컴퓨터를 배우지 않더라도 들어봤을 수 있고, 리눅스와 비슷한 유닉스라는 단어는 컴퓨터활용능력시험과 같은 컴퓨터 기초 혹은 컴퓨터의 역사에 대해 설명할 때 빠지지 않고 나오고 있습니다. 이러한 리눅스가 무엇인지에 대해 알아보도록 하겠습니다. 아직 공부 중이라 정확하지 않은 내용이 포함되어 있을 수 있습니다. 역사리눅스는 1989년 핀란드 헬싱키대학에 재학중이던 리누스 토발스(Linus Tovalds)가 유닉스를 기반으로 개발한 공개용 OS(운영체제)로, 1991년 11월에 공개되면서 확대 보급되기 시작하였습니다. 유닉스(Unix)가 중대형 컴퓨터에서 주로 .. 2017. 7. 13.