개발/보안

SSH의 포트포워딩 SSH 터널링이라고도 하는 SSH 포트 포워딩은 클라이언트 시스템에서 서버 시스템으로 또는 그 반대로 응용 프로그램 포트를 터널링하기 위한 SSH의 메커니즘입니다 SSH 포트 포워딩은 로컬 포트 ​​포워딩과 원격 포트 포워딩 의 두 가지 유형으로 분류할 수 있습니다. 로컬 포트 ​​포워딩 로컬 포트 ​​포워딩은 보다 일반적인 포트 포워딩 유형입니다. 사용자가 암호화된 SSH 터널을 통해 로컬 컴퓨터에서 다른 서버로 연결할 수 있도록 하는 데 사용됩니다. 이렇게 하면 액세스된 서비스 자체가 암호화되지 않은 경우에도 통신을 암호화된 상태로 유지하면서 원격 서비스에 안전하게 액세스할 수 있습니다. 원격 포트 포워딩 원격 포트 포워딩을 사용하면 원격 서버가 암호화된 SSH 터널을 통해 로컬 ..
· DEV/Backend
직렬화 (serialization) Java의 직렬화는 객체를 파일에 저장하거나 네트워크를 통해 전송할 수 있는 바이트 스트림으로 변환하는 프로세스입니다. 직렬화된 바이트 스트림을 다시 개체로 변환하는 역과정을 역직렬화라고 합니다. Java에서 직렬화는 클래스가 직렬화될 수 있음을 나타내는 Serializable 인터페이스와 보조 스트림를 사용하여 구현됩니다. 정확히는 Serializable 인터페이스는 클래스를 직렬화 가능으로 표시하는 데 사용되지만 실제 직렬화 프로세스는 개체를 읽고 쓸 때 추가 기능을 제공하는 보조 스트림인 ObjectOutputStream 및 ObjectInputStream 클래스를 통해 수행됩니다. ObjectInputStream과 ObjectOutputStream 생성자 설명 ..
HMAC HMAC(Hierarchical Message Authentication Code)은 키를 활용한 메시지 인증 방식으로, 메시지 무결성을 보호하는 데 사용됩니다. HMAC은 일반적으로 대칭키를 사용하며, 주어진 입력 메시지와 키를 이용하여 MAC(Message Authentication Code)을 생성합니다. HMAC은 다음과 같은 구성 요소를 사용하여 MAC을 생성합니다. 해시 함수 (Hash function) : SHA-1, SHA-256 등과 같은 해시 함수를 사용합니다. 내부 패딩 (Inner padding) : 0x36과 같은 내부 패딩 값을 사용하여 해시 함수를 적용하기 전 입력 메시지를 처리합니다. 외부 패딩 (Outer padding) : 0x5C와 같은 외부 패딩 값을 사용하여..
메시지 다이제스트 메시지 다이제스트(message digest)는 데이터 덩어리(예: 메시지, 파일)의 고유한 고정 길이의 해시 값입니다. 이 값은 원본 데이터의 요약된 형태로, 원본 데이터의 변경 없이 동일한 메시지 다이제스트를 생성합니다. 메시지 다이제스트는 암호학에서 해시 함수를 사용하여 생성되며, 이러한 해시 함수는 보안 및 암호화와 관련된 다양한 애플리케이션에서 사용됩니다. 메시지 다이제스트의 몇 가지 주요 특징과 용도는 다음과 같습니다: 데이터 무결성 데이터를 변경하면 메시지 다이제스트도 변경되므로, 전송된 데이터의 무결성을 검증할 수 있습니다. 메시지 다이제스트를 사용하여 원본 데이터가 변경되지 않았는지 확인할 수 있습니다. 고유성 원본 데이터에 대해 생성된 메시지 다이제스트는 고유하며, 다..
berom
'개발/보안' 태그의 글 목록 (4 Page)