본문 바로가기

Computer Science7

[CS] 암호화 운영 모드 암호화 운영 모드 (Encryption Mode)블록 암호 (Block Cipher) 방식의 암호화를 더 안전하고 효율적으로 사용할 수 있도록 데이터 처리 방식, 암호화 순서, 패딩 방식 등을 정의한 운영 방법.ECB (Electronic Codebook Mode)가장 기본적인 암호화 모드로, 각 블록을 독립적으로 암호화 하는 방식. - 동일한 키와 알고리즘을 사용하여 동일한 평문 블록은 항상 동일한 암호문 블록으로 변환.평문을 블록 단위로 나눈 후, 각 블록을 암호화 하며, 구현이 매우 간단하고 암호화/복호화 속도가 빠르다.병렬 처리가 가능하며, 블록 단위로 독립적으로 처리할 수 있기 때문에 효율적.동일한 평문 블록이 항상 동일한 암호문 블록으로 암호화되기 때문에, 패턴이나 반복되는 데이터가 그대로 암.. 2025. 4. 11.
[CS] 양방향 암호화 양방향 암호화 (Two-Way-Encryption)데이터를 암호화(Encryption) 한 후 복호화(Decryption) 과정을 통해 원래의 데이터로 되돌릴 수 있는 방식.주로 대칭키와 비대칭키 방식으로 구현.대칭키암호화와 복호화에 같은 키를 사용하는 방식.AES(Advanced Encryption Standard), DES(Data Encryption Standard), 3DES 등 존재.속도가 빠르고 구현이 비교적 단순하지만, 동일한 키를 양쪽에서 알고 있어야 하므로 키 관리가 어려울 수 있음.AES (Advanced Encryption Standard)DES를 대체할 새로운 표준 암호화 알고리즘으로 선정된 알고리즘.Rijndael 알고리즘을 기반으로하여 강력한 보안성과 효율성 덕분에 현재 가장 널.. 2025. 4. 11.
[CS] 단방향 암호화 단방향 암호화 (One-Way Encryption)단방향 암호화는 암호화된 데이터를 복호화 할 수 없는 방식원본 데이터에서 암호화된 값을 생성하지만, 반대로 복호화 하여 원본을 얻는 것이 불가능 (해시 함수)SHA-256, MD5 와 같은 해시 알고리즘이 해당특징암호화된 값 (해시 값) 은 복호화 할 수 없다같은 입력 데이터는 항상 같은 해시 값을 생성해 입력이 약간만 바뀌어도 전혀 다른 결과가 나온다.(민감성)용도비밀번호 저장, 데이터 무결성 검사 등장점데이터를 복구할 수 없기 때문에, 민감한 데이터를 안전하게 보관 가능단점원본 데이터를 잃으면 복원이 불가능동일한 해시를 얻기 위해 비밀번호 복구 시 새로운 해시 값을 생성해 비교 해야함.한계복호화할 수 없다는 특성 때문에 보안에 유리하지만, 이에 따른 .. 2025. 4. 11.
[CS] HTTP vs HTTPS HTTP (HyperText Transfer Protocol)HTML과 같은 리소스들을 가져올 수 있도록 해주는 프로토콜이다. 모든 데이터의 기초이며, 클라이언트-서버 간 프로토콜이다.80 포트를 사용하며 서버/클라이언트 모델을 따라 데이터를 주고 받기 위한 프로토콜이다.문제점평문 통신이라 도청 가능통신 상대를 확인하지 않기 때문에 위장이 가능완전성을 증명할 수 없기 때문에 변조가 가능TCP/IP전부 통신 경로 상에서 엿볼 수 있다. 패킷을 수집하는 것만으로도 도청이 가능하다.평문으로 통신할 경우 메세지의 의미를 파악할 수 있기 때문에 암호화하여 통신해야 한다.보완통신 자체를 암호화 SSL(Secure Socket Layer) , TLS(Transport Layer Security) 라는 다른 프로토콜을.. 2025. 4. 10.
[CS] Serverless Serverless동적으로 서버의 자원을 할당한다. 즉, 사용자가 없다면 자원을 할당하지 않고 대기하다가 요청이 들어오면 그 때 자원을 할당해서 요청을 처리하고 다시 대기 상태로 들어가게 된다. (자원 효율적 사용 가능)비용이 대기 상태를 제외한 실제 사용 자원에 대해서만 청구BaaS(Backend as a Service) or FasS(Function as a Service) 에 의존하여 작업을 처리BaaS를 제공하는 서비스 중에선, Firebase, Kinvey 등이 있다.백엔드 개발에 필요한 여러 기능을 API로 제공하는 서비스SNS연동이나 DB와 같이 백엔드에 필요한 기능들을 사용자가 직접 구현할 필요 없이 제공하는 API로 해당 기능을 구현. 클라우드 공급자가 백엔드 개발 환경까지 같이 제공한다.. 2025. 3. 16.
[CS] Content Delivery Network CDN (Content Delivery Network)콘텐츠 전송 네트워크라고 하며 데이터 사용량이 많은 애플리케이션의 웹 페이지 로드 속도를 높이는 상호 연결된 서버 네트워크이다.사용자가 웹 사이트를 방문할 때 해당 웹 사이트 서버의 데이터는 사용자의 컴퓨터에 도달하기 위해 인터넷을 이동해야한다. 사용자가 해당 서버에서 멀리 떨어져 있는 경우 동영상 또는 웹 사이트 이미지와 같은 대용량 파일을 로드하는 데 시간이 오래걸린다. 대신 웹 사이트 콘텐츠는 지리적으로 사용자와 가까운 CDN서버에 저장되며 컴퓨터에 훨씬 빨리 도달한다.CDN 이 중요한 이유대기 시간을 줄이거나 네트워크 설계로 인해 발생하는 통신 지연을 줄이는 것이다. 인터넷의 글로벌하고 복잡한 특성으로 인해 서버와 사용자 간의 통신 트래픽은 아.. 2025. 3. 16.