본문 바로가기

IT 정보22

TLS란? 인터넷 보안을 책임지는 SSL의 다음 세대 20여 년 전, 2000년대 초반. PC가 보급되고, 온라인 게임 시장이 활발하던 시기.해킹사건이 굉장히 많았다.생각해 보면 그때는, 지금의 필수인 https:// 가, 당연한 것이 아닌, 신뢰의 상징이 아니었나 싶을 정도로,http:// 를 많이 사용하고 있었는데, 이 때문에 일반인들이 여기저기서 비밀번호를 해킹당하지 않았을까 싶다.예전에는 학습 진입 장벽이 어려웠을 뿐이지, 기본 원리만 이해하면 해킹이 무척 쉬웠을 것이다.해커를 비롯한 보안 종사자들은, 기술이 발전할수록 더 머리가 아파지겠다. TLS란?TLS(Transport Layer Security)란, 인터넷에서 데이터를 안전하게 주고받기 위한 보안 프로토콜이다. 이전에는 SSL(Secure Sockets Layer)이라는 명칭이 더 익숙했지만.. 2025. 4. 17.
SSL이란? 인터넷 보안, 웹 보안의 기본인 필수 기술 '설마 누가 내 정보를 노리겠어?'인터넷에서 가장 위험한 말이다. 일상 속에서 너무 많은 정보를 무심코 인터넷에 맡기고 살아간다.이름, 연락처, 비밀번호, 카드번호까지.카드로 결제를 했는데, 당장 크롬 브라우저에서 카드 정보를 저장하겠냐고 물어본다.편하라고 쓰는 건데, 많은 정보를 인터넷에 맡기는 것이 문제가 되는 것이 아니다.요점은 '이런 정보들이 암호화 없이 그대로 인터넷 밖으로 오고 간다면 어떨까?'라는 의문이다. SSL의 개념SSL(Secure Sockets Layer)은 인터넷상에서 정보를 암호화하여 안전하게 주고받을 수 있도록 설계된 보안 프로토콜이다. 서버와 클라이언트 간의 통신을 보호하는 역할을 해주고, 외부에서 데이터를 가로채거나 조작하는 것을 방지해 준다.(사실, SSL 이후에 나온 프.. 2025. 4. 16.
HTTP 2란? 웹의 속도를 혁신적으로 다시 쓴 기술 2012년 Google은 하나의 실험적인 프로토콜을 세상에 공개했다.웹 페이지 로딩 속도를 획기적으로 줄이는 이 프로토콜 기술은 개발자들과 기술 커뮤니티의 관심을 단숨에 사로잡았다.이 프로토콜의 이름은 SPDY(스피디) 스피디는 HTTP/2라는 이름으로 진화하며, 전 세계 웹의 기반을 다시 쓰게 된다. HTTP/2는 어떻게 읽는거지?HTTP/2를 소개한다는데, 일단 어떻게 읽는지부터 알아야 하지 않을까? 에이치, 티, 티, 피, 투.그냥 업그레이드된 다른 기술들처럼, 2를 붙여서 HTTP 2라고 읽으면 된다. 참고로 우리가 아는 기존의 HTTP는 HTTP/1.1로, 1.1 버전이었고, HTTP/2는 2.0 버전이라고 보면 쉽게 이해가 될 것이다.HTTP/2의 탄생 배경HTTP/2는 단순히 기존 프로토콜을.. 2025. 4. 14.
디버깅이란? IT 개발자가 문제를 개선하는 가장 효율적인 방법? 뭐가 잘못된 거지?요즘에는 AI 한테 뭐가 잘못된 건지 물어보는 경우가 많아져서 덜하지만,프로그래머, 개발자로 처음 입문했을 때, 신입 직원들은 회사의 프로그램이나 본인이 만든 프로그램이 어디서 문제가 생겼는지 알기 어려웠다.컴퓨터 앞에 앉아 수십 분, 심하면 몇 시간 동안 같은 질문, 혼잣말을 반복하면서 머리를 싸매고 스트레스를 받는다.분명히 맞게 짰다고 생각했던 코드가 제대로 안 돌아가고, 오류를 내뿜는 것이다.이때, 가장 문제를 쉽고 빠르게, 논리적으로 해결할 수 있는 방법 중 하나가 디버깅(Debugging)이다. 디버그(Debug)와 디버깅(Debugging)디버깅(Debuging)이란, 디버그(Debug)라는 동사에 '~하는 행위'를 뜻하는 접미사 ing가 붙은 단어다.디버그(Debug)는, .. 2025. 4. 13.
토폴리지란? 장소의 연구, 네트워크에서 많이 쓰이는 용어 세상을 이해할 때, 형태와 구조를 파악하는 것은 아주 중요한 일이다.특정한 장소에 대한 이해와 연구, 방식이 여러 분야에서 사용되는데,이런 것들을 설명할 수 있는 개념 중 하나가 토폴리지(Topology)이다.토폴리지는, 별(*)거 아닌 것 같지만, 정말 중요한 기본 개념 중 하나이다. 토폴로지(Topology)란?토폴로지는 다양한 의미를 가지고 있지만, 구성 요소 간의 연결 관계를 중심에 두고 있다. 토폴로지라는 용어 자체는 그리스어 topos(장소)와 logos(학문)에서 유래했다.직역하자면, 장소의 연구라는 뜻이지만, 실제로는 연결 방식에 더 초점을 두는 용어이다.형태가 변해도 본질적으로 연결 구조가 변하지 않으면, 같은 토폴로지로 간주된다. 네트워크에서 많이 사용하는 토폴로지컴퓨터 공학을 공부하거.. 2025. 4. 12.
gRPC란 Google에서 만든 원격 함수 호출 시스템? RPC는 Remote Procedure Call의 약자이다.그리고 gRPC는 Google Remote Procedure Call이다.Google은 생각보다 더 우리의 생활 속에 깊이 들어와 있다.신기술도 많이 만들고, 새로운 기술의 표준 또한 Google이 만든 것도 많다.gRPC는 구글이 만든 기술, 규격 중에 하나라고도 볼 수 있다. gRPC란?gRPC(Google Remote Procedure Call)은 Google에서 만든 오픈소스 프레임워크다.서버와 클라이언트 간에 함수처럼 통신할 수 있게 해주는 RPC(Remote Procedure Call) 시스템이다.다른 서버에 있는 함수나 메서드를 로컬에서 호출하듯 쉽게 호출할 수 있도록 도와주는 통신 방식이다. gRPC는 이 과정에서 Protocol .. 2025. 4. 11.
소켓 프로그래밍이란? 네트워크 통신 프로그래밍의 핵심 기본 기술 컴퓨터 공학, 프로그래밍, 네트워크, 보안 등프로그래밍과 관련된, IT 쪽 전문가가 되려는 사람이 커리큘럼을 찾아본다면,이런 순서로 공부하고, 이다음에는 소켓 프로그래밍을 공부하세요.라는 말을 들어본 적이 있을 것이다.소켓 프로그래밍(Socket Programming)은 뭘까? IT와 관련 없는 사람이 들으면,나사를 렌치 같은 공구로 연결하는 소켓을 떠올리며, 연관을 지어보면서 의문점을 가지게 된다. 네트워크 통신의 기본인터넷 기반 프로그램은 대부분 네트워크를 통해 데이터를 주고받는다. 매일 사용하는 웹 브라우저, 메신저, 온라인 게임, 스트리밍 서비스 등 모두 네트워크 통신을 기반으로 작동하는 것이다.이때 통신에 사용하는 통신 기술 중 가장 기본적이면서도 핵심인 것이 소켓(Socket)이고, 이 소켓(.. 2025. 4. 10.
HTTP HTTPS는 뭘까? 웹의 기본 이해하기 우리가 매일 사용하는 인터넷은 수많은 데이터가 오고 가며, 수많은 파일이 업로드되고 다운로드된다.수많은 웹 페이지가 화려하게 표시도 된다.그 중심에 HTTP나 HTTPS가 있다. 특히 요즘에는 자동으로도 입력해 주는 HTTP나 HTTPS.브라우저를 켜고, 누리집(홈페이지) 주소를 입력할 때, 맨 앞에 항상 붙는 것이 보이지 않는가?그런데, HTTP 하고, HTTPS는 뭐가 다를까? 보안과 관련이 있을 텐데, 그렇다면 HTTP는 왜 안 없어지고 계속 있어서 HTTP와 HTTPS 2개를 다 알야 아하는 걸까? HTTP란?HTTP(HyperText Transfer Protocol)는 하이퍼텍스트 전송 프로토콜이라는 이름을 가지고 있다.하이퍼텍스트(HyperText)는 특정한 문구(텍스트)가 다른 단어나 데이터.. 2025. 4. 9.
JSON이란? 비동기 통신의 필수 요소? 비트코인과 같은 암호화폐가 이슈가 되면서 데이터는 현대 사회의 새로운 화폐라는 말이 생겨났다.암호화폐뿐만 아니라, 사실 누구나 매일 데이터를 주고받는다.카카오톡에 새해 복 많이 받으세요라는 문구와 이모티콘이 톡으로 왔다.내 핸드폰에 "보낸 사람", "새해 복 많이 받으세요.", "이모티콘"은 어떻게 전달되었고, 또 어떻게 해석하는 걸까? JSON 이름의 유래와 뜻JSON은 데이터 교환 형식으로 널리 사용되는 경량 데이터 표현 방식이다. 사람과 기계 모두 쉽게 쓸 수 있도록 설계되었고, 웹 애플리케이션이나 서버와 클라이언트 간 데이터 전송에 많이 사용된다. 특히 비동기 통신을 효율적으로 처리할 수 있어서 현대 웹 애플리케이션에서는 필수적인 요소로 자리 잡고 있다.JSON(Javascript Object N.. 2025. 4. 8.
RPC란? 분산 시스템을 위한 원격 프로시저 호출 배달 앱으로 치킨을 주문하면, 주문 요청은 배달 앱을 통해 치킨 집으로 전달되고, 치킨 집은 요청을 받아 치킨을 만들고, 배달 앱을 통해 배달원에게 넘긴다. 배달원은 치킨을 배달 앱 사용자에게 전달한다.배달 앱 사용자는 클라이언트이고, 전달하는 배달 앱과 배달원은 네트워크, 치킨집은 서버라고 비유해 볼 수 있다.RPC는 네트워크를 통해 원격 서비스를 호출하지만, 사용자 입장에서는 로컬 함수를 호출하는 것처럼 보인다. RPC란?RPC(Remote Procedure Call, 원격 프로시저 호출)은 네트워크를 통해 서로 다른 시스템 간에 함수를 호출하는 기술을 의미한다. 로컬 함수처럼 보이지만, 실제로는 원격 시스템에서 실행되는 함수 호출 방식을 의미하는 것이다. RPC를 사용하면, 개발자는 네트워크를 직접.. 2025. 4. 7.
마이크로 서비스란? 조각 서비스를 제공할 수 있다? 넷플릭스(Netflix)에는 다양한 마이크로 서비스가 들어있다.단순히 영상을 찾아서 보는 것 같지만, 사용자 계정을 관리하거나, 영상을 추천해 주거나, 영상을 재생 또는 스트리밍 하거나, 구독료를 납부하기 위한 결제를 하는 서비스 등이 각각 독립적인 서비스로 운영되고 있다.가짜인 짭플릭스(Jobflix)를 하나 만든다고 하자, 넷플릭스를 따라 보이는 대로 만들어서, 검색도 가능하고, 영상을 재생할 수도 있지만, 독립적이지 않을 수 있다. 이때 짭플릭스는 마이크로 서비스를 제공한다고 하기 어려울 수 있을 것이다.검색과 재생, 2개의 서비스는 똑같이 제공되는데, 마이크로 서비스는 어떻게 구분하는 게 좋을까? 마이크로 서비스 아키텍처(Microservices Architecutre)란?마이크로 서비스 또는 마.. 2025. 4. 5.
쇼어 알고리즘이란? 양자 컴퓨팅을 사용한 혁신 알고리즘 소인수 분해를 기억하는가?1보다 큰 자연수를 소수인 인수들만의 곱으로 나타내는 방법이다.즉, 자연수가 소수인 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 37,... 의 곱으로 나타낸 방법이다.소수는 무한히 큰 수가 있는데, 이러한 큰 수의 소인수분해를 빠르게 할 수 있는 알고리즘이 없다.고전 알고리즘에서, 소인수 분해하는데 드는 시간은 기하급수적으로 커진다.이러한 특징을 이용해 암호학에서 소인수 분해를 많이 사용한다.이러한 소인수 분해를 다루는 알고리즘 중 하나가 쇼어 알고리즘이다. 쇼어 알고리즘이란?쇼어 알고리즘(Shor's algorithm)은 1994년, 수학자 피터 쇼어(Peter Shor)가 제안한 알고리즘이다.이 알고리즘은 양자 컴퓨터를 이용해 큰 정수의 소인수 분해를 효.. 2025. 4. 4.
반응형