KR101729637B1 - 네트워크 장치 및 이메일 요구 처리 방법 - Google Patents

네트워크 장치 및 이메일 요구 처리 방법 Download PDF

Info

Publication number
KR101729637B1
KR101729637B1 KR1020157034364A KR20157034364A KR101729637B1 KR 101729637 B1 KR101729637 B1 KR 101729637B1 KR 1020157034364 A KR1020157034364 A KR 1020157034364A KR 20157034364 A KR20157034364 A KR 20157034364A KR 101729637 B1 KR101729637 B1 KR 101729637B1
Authority
KR
South Korea
Prior art keywords
email message
email
request
message
client device
Prior art date
Application number
KR1020157034364A
Other languages
English (en)
Other versions
KR20160003265A (ko
Inventor
넝훙 정
셴즈 궈
Original Assignee
후아웨이 테크놀러지 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 후아웨이 테크놀러지 컴퍼니 리미티드 filed Critical 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20160003265A publication Critical patent/KR20160003265A/ko
Application granted granted Critical
Publication of KR101729637B1 publication Critical patent/KR101729637B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/06Message adaptation to terminal or network requirements
    • H04L51/066Format adaptation, e.g. format conversion or compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명의 실시예는 네트워크 장치 및 이메일 요구 처리 방법을 제공한다. 네트워크 장치는 통신 인터페이스 및 프로세서를 포함한다. 통신 인터페이스는 클라이언트 장치 및 이메일 서버와 통신하도록 구성되어 있다. 프로세서는 클라이언트 장치에 의해 송신된 제1 요구를 수신하고, 상기 제1 요구는 이메일 메시지의 일부를 획득하는 데 사용된다. 프로세서는 상기 제1 요구를 전체 이메일 메시지를 획득하는 데 사용되는 요구로 변환하고; 인코딩된 형태로 되어 있고 상기 이메일 서버에 의해 환송된 이메일 메시지를 수신한 후, 상기 이메일 메시지를 분석하여 상기 이메일 메시지의 인코딩 정보를 획득하고; 상기 인코딩 정보에 따라 이메일 메시지를 디코딩하여 상기 이메일 메시지 중 디코딩된 형태의 일부를 획득하며; 그리고 상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하도록 구성되어 있다.

Description

네트워크 장치 및 이메일 요구 처리 방법{NETWORK DEVICE AND METHOD FOR PROCESSING EMAIL REQUEST}
본 발명은 통신 기술 분야에 관한 것이며, 특히 네트워크 장치 및 이메일 요구를 처리하는 방법에 관한 것이다.
전자 메일(E-mail)은 전자식으로 정보를 교환을 제공하는 통신 방식이다. 네트워크 상에서 이메일 시스템을 사용함으로써, 사용자는 네트워크 사용자와 전 세계 어디서나 신속하게 연락을 취할 수 있다. 이메일 메시지는 문자, 이미지, 및 사운드와 같이 다양한 형태일 수 있다. 인터넷 메시지 액세스 프로토콜 4(Internet Message Access Protocol 4, IMAP4)는 퍼스널 컴퓨터가 어떻게 인터넷 상의 이메일 서버에 원격으로 접속하여 메일을 송수신하는지를 명시하는 프로토콜이다. IMAP4는 클라이언트가 온라인이든 오프라인이든 서버 접속하여 이메일 메시지를 읽을 수 있는 것을 지원한다. 사용자는 클라이언트 장치를 사용하여 서버상에서 이메일 메시지에 대한 동작을 직접 수행할 수 있다. 여기서, 동작은: 메일 메시지를 온라인으로 읽거나 이메일 주제, 크기, 또는 송신자 주소와 같은 정보를 온라인으로 확인하는 것을 포함한다. 사용자는 서버상에서 사용자의 메일링 디렉토리를 추가로 유지할 수 있다(이동, 생성, 삭제, 명칭변경, 공유 또는 캡처링 텍스트와 같은 동작을 포함). IMAP4는 사용자가 이메일 헤더를 브라우징함으로써 이메일의 특정한 부분을 수신할지 삭제할지를 결정할 수 있는 것과, 이메일 서버상의 폴더나 메일 박스를 생성 또는 변경하는 것을 지원한다. 또한, 포스트 오피스 프로토콜(Post Office Protocol 3, POP3)의 오프라인 동작 모드를 지원하는 것 외에, IMAP4는 온라인 동작 및 접속차단 동작을 지원한다. 그러므로 IMAP4는 이메일 서버로부터 메일 메시지를 선택적으로 수신하는 기능, 서버에 기초한 정보 처리 기능, 및 메일박스 공유 기능을 제공한다. 현재, IMAP4는 중요한 메일 프로토콜에 폭넓게 적용되고 있다.
현재, 수많은 보안 게이트웨이 장치가 IMAP4를 지원한다. 보안 게이트웨이 장치는 대체적으로 IMAP4에 기초하여 이메일 서버의 프록시를 실행한다. 보안 게이트웨이는 클라이언트가 송신한 메일 동작 요구를 수신하고, 이 메일 동작 요구에 따라 이메일 서버로부터 획득된 이메일 메시지를 클라이언트에 포워딩한다. 또한, 보안 게이트웨이는 프록시 프로세스에서 이메일 메시지에 대해 안티바이러스 프로세싱 또는 메일 필터링과 같은 보안 처리를 실행하여 클라이언트 장치의 보안을 유지할 수 있다.
그렇지만, 종래기술에서는, 사용자가 이메일 메시지의 일부(예를 들어, 이메일의 첨부)만을 수신하는 상황에서, 보안 게이트웨이는 이메일 메시지 중 디코딩된 형태의 일부의 콘텐츠를 획득할 수 없다. 그러므로 보안 게이트웨이는 보안 처리를 수행하지 않은 채 이메일 서버에 의해 반송되는 이메일 메시지의 일부만을 사용자에게 포워딩할 수 있다.
본 발명의 실시예에서 제공하는 네트워크 장치 및 이메일 요구를 처리하는 방법에 따르면, 클라이언트 장치가 이메일 메시지 중 이메일 헤더를 제외한 다른 부분만을 획득하는 상황에서, 이메일 메시지 중 디코딩된 형태의 부분의 콘텐츠를 네트원 장치상에서 획득할 수 있다.
제1 관점에 따라, 본 발명의 실시예는 네트워크 장치를 제공한다. 상기 장치는 통신 인터페이스 및 프로세서를 포함한다. 상기 통신 인터페이스는 클라이언트 장치 및 이메일 서버와 통신한다. 상기 프로세서는, 이메일 메시지의 일부를 페칭(fetch)하기 위해 상기 클라이언트 장치로부터 제1 요구를 수신하도록 구성되어 있고, 여기서 상기 이메일 메시지의 일부는 상기 이메일 메시지의 헤더를 포함하지 않는다. 그런 다음, 상기 프로세서는 상기 제1 요구를 상기 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구 요구로 변환하고; 상기 수정된 요구를 상기 이메일 서버에 송신하도록 구성되어 있다. 상기 이메일 서버로부터 인코딩된 형태의 이메일 메시지를 수신한 후, 상기 프로세서는 상기 이메일 메시지를 분석하여 상기 이메일 메시지의 인코딩 정보를 획득하도록 구성되어 있다. 그런 다음, 상기 프로세서는 상기 인코딩 정보에 따라 이메일 메시지를 디코딩하여 디코딩된 형태의 일부를 획득하며; 그리고 상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하도록 구성되어 있다.
제2 관점에 따라, 본 발명의 실시예는 이메일 요구를 처리하는 방법을 제공한다. 상기 방법은 이메일 서버로부터의 이메일을 검색하기 위해, 네트워크 장치에 의해 수행되는, 클라이언트 장치로부터의 요구를 처리하는 요구를 처리하며, 상기 네트워크 장치는 이메일 메시지의 일부를 페칭하기 위해 상기 클라이언트 장치로부터 제1 요구를 수신하고, 여기서 상기 이메일 메시지의 일부는 상기 이메일 메시지의 헤더를 포함하지 않는다. 상기 제1 요구를 상기 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구 요구로 변환한 후, 상기 네트워크 장치는 상기 수정된 요구를 상기 이메일 서버에 송신한다. 상기 프로세서가 상기 이메일 서버로부터 인코딩된 형태의 이메일 메시지를 수신할 때, 상기 프로세서는 상기 이메일 메시지를 분석하여 상기 이메일 메시지의 인코딩 정보를 획득한다. 그런 다음, 상기 프로세서는 상기 인코딩 정보에 따라 이메일 메시지를 디코딩하여 디코딩된 형태의 일부를 획득하고, 상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩한다.
삭제
제3 관점에 따라, 본 발명의 실시예는 전술한 방법을 실행할 수 있는 컴퓨터 명령을 저장하도록 구성되어 있는 비휘발성 머신 판독 가능형 매체를 제공한다.
본 발명의 실시예에서 제공하는 네트워크 장치에 따르면, 메일 메시지 중 이메일 헤더를 제외한 다른 부분을 페칭하기 위한 클라이언트 장치로부터의 요구는 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구로 변환된다. 그런 다음, 이메일 메시지 중 클라이언트 장치에 의해 획득될 부분의 트랜스퍼 인코딩 정보를 이메일 서버에 의해 환송된 전체 이메일 메시지로부터 획득할 수 있다. 또한, 네트워크 장치는 이메일 메시지의 트랜스퍼 인코딩 정보를 사용하여 이메일 메시지를 디코딩하고, 이에 따라 클라이언트 장치가 이메일 메시지 중 이메일 헤더를 제외한 부분만을 획득하는 애플리케이션 시나리오에서, 네트워크 장치는 또한 디코딩된 형태의 부분의 콘텐츠를 획득할 수 있다. 본 발명의 본 실시예에서 제공하는 네트워크 장치는 클라이언트 장치의 보호를 강화한다.
본 발명의 실시예의 기술적 솔루션을 더 명확하게 설명하기 위해, 이하에서는 실시예를 설명하는 데 필요한 첨부된 도면에 대해 간략하게 설명한다.
도 1은 본 발명의 실시예에 따라 이메일 요구를 처리하는 방법의 애플리케이션 시나리오에 대한 도면이다.
도 2는 본 발명의 실시예에 따라 이메일 메시지에 대한 개략적인 구조도이다.
도 3은 본 발명의 실시예에 따른 보안 게이트웨이의 물리적 구조에 대한 개략도이다.
도 4는 본 발명의 실시예에 따라 이메일 요구를 처리하는 방법에 대한 흐름도이다.
도 5는 본 발명의 실시예에 따라 이메일 요구를 처리하는 다른 방법에 대한 흐름도이다.
도 6은 본 발명의 실시예에 따라 이메일 요구를 처리하는 다른 방법에 대한 개략적인 시그널링 도면이다.
당업자가 본 발명의 기술적 솔루션을 더 잘 이해할 수 있도록 하기 위해, 이하에서는 본 발명의 실시예의 첨부된 도면을 참조하여 본 발명의 실시예에 따른 기술적 솔루션에 대해 명확하게 설명한다. 당연히, 이하의 상세한 설명에서의 실시예는 본 발명의 모든 실시예가 아닌 일부에 지나지 않는다.
도 1은 본 발명의 실시예에 따라 이메일 요구를 처리하는 방법의 애플리케이션 시나리오에 대한 도면이다. 도 1에 도시된 애플리케이션 시나리오에서, 클라이언트 장치(100), 스위치(105), 보안 게이트웨이(110), 라우터(115), 및 이메일 서버(120)가 포함된다. 클라이언트 장치(100), 보안 게이트웨이(110), 및 이메일 서버(120) 모두는 인터넷 메시지 액세스 프로토콜 4(Internet Message Access Protocol 4, IMAP4)를 지원할 수 있다. 보안 게이트웨이(110)는 인터넷의 출구, 상기 인터넷의 출구, 또는 이메일 서버(120)의 전단(front end)에 설치될 수 있다. 보안 게이트웨이(110)는 트랜스페어런트 프록시(transparent proxy) 또는 논-트랜스페어런트 프록시(non-transparent proxy) 방식으로 클라이언트 장치(100)와 이메일 서버(120) 간의 접속을 구축할 수 있다. 보안 게이트웨이(110)는 이메일 서버(120)에 의해 클라이언트 장치(100)에 송신된 이메일 메시지에 대해 바이러스 검출 및 메일 필터링과 같은 보안 처리를 수행하여, 인터넷상에서 클라이언트 장치(100)의 보안을 유지할 수 있다. 트랜스페어런트 프록시란 클라이언트 장치(100)가 프록시 장치(예를 들어, 도 1에서의 보안 게이트웨이(110))의 존재를 모른다는 것을 말하며, 클라이언트 장치(100) 및 이메일 서버(120)는 보안 게이트웨이(110)에 의해 구축된 트랜스페어런트 채널을 사용함으로써 서로 통신할 수 있다. 논-트랜스페어런트 프록시란 클라이언트 장치(100)가 보안 게이트웨이(110)의 존재를 알고 있다는 것을 말하며, 클라이언트 장치(100)는 보안 게이트웨이(110)만을 사용함으로서 이메일 서버(120)에 액세스할 수 있다.
예를 들어, 도 1에 도시된 애플리케이션 시나리오에서, 보안 게이트웨이(110)는 인터넷의 출구에 설치되며, 트랜스페어런트 프록시 방식으로 클라이언트 장치(100)와 이메일 서버(120) 간의 접속을 구축한다. 클라이언트 장치(100)는 IMAP4에 기초하여 인터넷상에서 이메일 서버(120)에 액세스한다. 클라이언트 장치(100)의 액세스 요구는 스위치(105)를 사용함으로써 보안 게이트웨이(110)에 도착한다. 이메일 서버(120)의 프록시 장치의 역할을 함으로써, 보안 게이트웨이(110)는 클라이언트 장치(1000의 액세스 요구에 따라 보안 게이트웨이(110)가 클라이언트 장치(100)에 의해 요구된 이메일 메시지를 캐싱하였는지를 판정할 수 있다. 클라이언트 장치(100)에 의해 요구된 이메일 메시지가 캐싱되었으면, 보안 게이트웨이(110)는 이메일 메시지를 클라이언트 장치(100)에 직접 송신할 수 있다. 클라이언트 장치(100)에 의해 요구된 이메일 메시지가 캐싱되지 않았으면, 보안 게이트웨이(110)는 라우터(115)를 사용하여 클라이언트 장치(100)의 액세스 요구를 이메일 서버(120)에 송신하고, 이메일 서버(120)에 의해 환송된 이메일 메시지에 대해 바이러스 검출 및 메일 필터링과 같은 보안 처리를 수행한 후 이메일 메시지를 클라이언트 장치(100)에 포워딩할 수 있다.
본 발명의 이 실시예에서, 복수의 클라이언트 장치(100)가 포함될 수 있다. 클라이언트 장치(100)는 네트워크 액세스를 실행할 수 있는 장치, 예를 들어, 이동 전화 또는 컴퓨터일 수 있다. 본 발명의 이 실시예에서 보안 게이트웨이(110)는 단지 네트워크 장치의 예에 불과하다는 것에 유의해야 한다. 본 발명의 이 실시예는 또한 IMAP4에 기초하여, 메일 프록시 기능, 예를 들어, 방화벽을 실행할 수 있는 다른 네트워크 장치에 적용될 수 있다. 또한, 네트워크 장치는 독립형 장치로서 네트워크에 별도로 설치될 수 있거나, 방화벽 또는 보안 게이트웨이와 같은 다른 장치에 위치할 수 있으며, 이것은 이 실시예에서 제한되지 않는다.
대부분의 이메일 메시지는 다목적 인터넷 메일 확장(Multipurpose Internet Mail Extensions: MIME) 프로토콜에 의해 지정된 포맷으로 전송된다. MIME 프로토콜은 확장 이메일 표준이며 비 ASCII 문자 및 이진 포맷 부착과 같은 다양한 포맷의 이메일 메시지를 지원할 수 있다. 설명을 명확하게 하기 위해, 본 발명의 이 실시예에서, 이메일 메시지는 3부분으로 분할된다: 이메일 헤더, 메일 본문, 및 첨부. 이메일 헤더는 이메일 송신 날짜, 송신인 주소, 수신인 주소, 및 이메일 주제와 같은 정보를 포함한다.
당업자는 MIME 프로토콜은 표준 이메일 메시지의 헤더 부가 필드에 의해 실시될 수 있다는 것을 알 수 있다. 이러한 헤더 부가 필드는 내용 및 새로운 메시지 유형의 조직 형태를 설명한다. 본 발명의 이 실시예에서, MIME 포맷의 이메일 메시지는 MIME 정보 헤더 및 MIME 본문으로 분할된다. MIME 정보 헤더는 이메일 메시지의 이메일 헤더의 헤더 부가 필드를 부가함으로써 실시된다. 이 방식에 따라, MIME 정보 헤더는 이메일 헤더의 내용을 포함한다. MIME 정보 헤더의 부가 필드에 기록된 필드 정보는 전체 이메일 메시지에 대해 작용한다. MIME 정보 헤더는 이하의 필드를 포함할 수 있다:
MIME-Version: MIME 버전, 이것은 패킷이 예를 들어 패킷이 준수하는 MIME 프로콜의 버전을 나타내는 데 사용되며, 예를 들어, Mime-Version: 1.0이며;
Content-Type: 콘텐츠 유형, 이것은 패킷의 유형을 명시하는 데 사용된다. 일반적으로, Content-Type은 텍스트, 이미지, 오디오, 비디오, 애플리케이션, 멀티파트, 메시지 등을 포함할 수 있으며, 예를 들어, Content-Type: 멀티파트/혼합이다. Content-Type은 본문 등의 텍스트 인코딩 방식의 문자 집합(char set)을 더 포함할 수 있고, 여기서 문자 집합은 ASCII, GB2312, Times New Roman, 및 Arial과 같은 텍스트 유형을 포함할 수 있으며;
Content-Transfer-Encoding: 콘텐츠 트랜스퍼 인코딩, 이것은 데이터에 대해 실행되는 인코딩 방식을 지정하는 데 사용되며, 인코딩 유형, 예를 들어 7bit, 8bit, base64, 바이너리, 인용-인쇄가능(quoted-printable), 및 커스텀을 포함하며, 예를 들어, Content-Transfer-Encoding: base64이며;
Content-Disposition: 콘텐츠 배치, 이것은 고객이 첨부가 일렬로 표시되는지 또는 독립적인 첨부로 작용하는지를 결정하도록 하는 데 사용되며, 예를 들어, Content-Disposition: 첨부이고; 그리고
Content-Description: 콘텐츠 설명, 이것은 임의의 정보 세그먼트 콘텐츠를 설명하는 데 사용되는 무료 문자이다.
MIME 본문은 복수의 MIME 세그먼트를 포함할 수 있다. 각각의 MIME 세그먼트는 이메일의 본문 또는 첨부의 헤더 부가 필드를 부가함으로써 실행된다. 이 방식에 따르면, MIME 세그먼트는 이메일의 본문 또는 첨부를 개별적으로 포함한다. 본 발명의 이 실시예에서, 각각의 MIME 세그먼트는 MIME 세그먼트 헤더 및 MIME 세그먼트 본문으로 분할된다. MIME 세그먼트 헤더는 MIME 세그먼트 헤더 내에서, MIME-Version을 제외한 임의의 다른 필드를 포함할 수 있다. MIME 세그먼트 헤더에 기록된 필드 정보는 MIME 세그먼트에 대해서만 작용할 수 있다. 예를 들어, MIME 세그먼트 헤더에 Content-Transfer-Encoding이 존재하면, 전체 정보 본문에 적용된다. 그렇지만, Content-Transfer-Encoding이 MIME 세그먼트 세그먼트의 MIME 세그먼트 헤더에 표시되면, MIME 세그먼트에만 적용될 수 있다. 이메일 메시지 내의 임의의 non-7bit 데이터가 인코딩 모드에서 인코딩된 후에만 인터넷 메일 게이트웨이를 통과할 수 있으며, 클라이언트 장치는 Content-Transfer-Encoding 정보를 사용함으로써 수신된 이메일 메시지를 디코딩할 수 있다. MIME 세그먼트 본문은 MIME 세그먼트 헤더 내의 Content-Transfer-Encoding을 사용함으로써 인코딩되는 이메일의 본문 또는 첨부를 포함한다. 당연히, MIME 세그먼트 헤더가 Content-Transfer-Encoding를 포함하지 않으면, MIME 세그먼트 본문은 MIME 세그먼트 헤더에 포함된 Transfer-Encoding information을 사용함으로써 인코딩되는 이메일의 본문 또는 첨부이다.
도 2는 본 발명의 실시예에 따라 이메일 메시지에 대한 개략적인 구조도이다. 도 2에 도시된 바와 같이, 이메일 메시지(200)는 이메일 헤더(202), 메일 본문(204), 및 이메일 첨부(206)를 포함한다. 이메일 첨부(206)는 2개의 첨부를 포함한다: 첨부 1 및 첨부 2. MIME 프로토콜에 명시된 포맷을 사용하여 이메일 메시지(200)가 처리된 후, 이메일 메시지(200)는 2부분으로 분할될 수 있다: MIME 정보 헤더(208) 및 MIME 본문(210). MIME 정보 헤더(208)는 이메일 헤더(202)의 정보를 포함하고 구체적으로 이메일 메시지의 송신 날짜, 송신인 주소, 수신인 주소, 및 이메일 주제와 같은 정보를 포함할 수 있다. MIME 본문(210)은 3개의 MIME 세그먼트를 더 포함할 수 있다: MIME 세그먼트 1, MIME 세그먼트 2, MIME 세그먼트 3. MIME 세그먼트 1은 메일 본문(204)의 콘텐츠이고; MIME 세그먼트 2는 첨부 1의 콘텐츠이고; MIME 세그먼트 3은 첨부 2의 콘텐츠이다. 각각의 MIME 세그먼트는 2부분으로 추가로 분할된다: MIME 세그먼트 헤더 및 MIME 세그먼트 본문. 예를 들어, MIME 세그먼트 1은 MIME 세그먼트 1 헤더 및 MIME 세그먼트 1 본문으로 분할되고; MIME 세그먼트 2는 MIME 세그먼트 2 헤더 및 MIME 세그먼트 2 본문으로 분할되며; 그리고 MIME 세그먼트 3은 MIME 세그먼트 3 헤더 및 MIME 세그먼트 3 본문으로 분할된다. MIME 세그먼트 1은 Content-Type 및 Content-Transfer-Encoding와 같은 필드 정보를 더 포함할 수 있으며, 여기서 Content-Type 필드는 메일 본문(204)의 문자 집합(char set)을 더 포함하고; MIME 세그먼트 1 본문은 MIME 세그먼트 1 헤더 내의 Content-Transfer-Encoding 필드에 의해 명시된 인코딩 방식으로 인코딩되는 메일 본문(204)의 콘텐츠를 포함한다. MIME 세그먼트 2는 Content-Type, Content-Transfer-Encoding, 및 Content-Disposition과 같은 필드 정보를 더 포함할 수 있다. Content-Disposition 필드에서, 첨부의 파일명이 추가로 명시될 수 있으며, MIME 세그먼트 2 본문은 MIME 세그먼트 2 헤더 내의 Content-Transfer-Encoding 필드에 의해 명시된 인코딩 방식으로 인코딩되는 첨부 1의 콘텐츠를 포함한다. MIME 세그먼트 3의 구조는 MIME 세그먼트 2의 구조와 유사하므로 이에 대해서는 이 실시예에서 반복 설명하지 않는다.
IMAP4에 의해 클라이언트 장치가 이메일 메시지의 일부 또는 전부를 획득할 수 있기 때문에, 클라이언트 장치가 메일 본문 또는 첨부만을 획득하고자 할 때, 이메일 서버는 도 2에 도시된 MIME 세그먼트 1 본문, MIME 세그먼트 2 본문, 또는 MIME 세그먼트 3 본문만을 환송하지만, MIME 세그먼트 1 헤더, MIME 세그먼트 2 헤더, 또는 MIME 세그먼트 3 헤더 내의 정보는 환송하지 않는다. 그러므로 방화벽 또는 게이트웨이와 같은 네트워크 장치는 메일 본문 또는 첨부의 인코딩 정보를 알 수 없다. 네트워크 장치는 디코딩된 형태로 되어 있는 메일 본문 도는 첨부를 알기 위해 디코딩 동작을 수행할 수 없으며, 또한 네트워크 장치는 디코딩 형태로 되어 있는 메일 메시지의 콘텐츠에 대해 안티바이러스 처리 또는 메일 필터링과 같은 보안 처리를 수행할 수 없다.
도 3은 본 발명의 실시예에 따른 도 1에서의 보안 게이트웨이의 물리적 구조에 대한 개략도이다. 도 3에 도시된 바와 같이, 보안 게이트웨이(110)는 통신 인터페이스(310), 메모리(320), 프로세서(330), 및 통신 버스(340)를 포함한다. 통신 인터페이스(310), 메모리(320), 및 프로세서(330)는 통신 버스(340)를 사용하여 서로 통신할 수 있다.
통신 인터페이스(310)는 다른 장치와 통신하도록 구성되어 있다. 다른 장치는 클라이언트 장치, 스위치, 라우터, 또는 이메일 서보와 같은 장치를 포함한다.
메모리(320)는 프로그램(322)을 저장하고, 클라이언트 장치(100)에 의해 송신된 이메일 획득 요구(326)를 캐싱하며, 이메일 서버(120)에 의해 송신된 이메일 메시지(324)를 캐싱하도록 구성되어 있다. 메모리(320)는 고속 RAM 메모리를 포함할 수 있으며, 비휘발성 메모리, 예를 들어, 적어도 하나의 자기디스크 메모리를 더 포함할 수 있다. 메모리(320)는 프로그램 코드를 저장할 수 있는 임의의 비일시적 머신 판독 가능형 매체, 예를 들어, ROM, RAM, 자기디스크, 하드디스크, 광디스크, 또는 비휘발성 메모리일 수 있다는 것에 유의해야 한다. 메모리(320)는 이메일 메시지를 판독하기 위한 요구와 같은 다른 이메일 동작 요구를 추가로 캐싱할 수 있다.
프로그램(322)은 프로그램 코드를 포함할 수 있으며, 여기서 프로그램 코드는 컴퓨터 동작 명령을 포함한다.
프로세서(330)는 중앙처리장치(CPU) 또는 주문형 집적회로(ASIC)일 수 있거나, 또는 본 발명의 실시예를 실행하는 하나 이상의 집적회로로서 구성될 수 있다.
본 발명의 이 실시예에서, 프로세서(330)는 프로그램(322)을 실행하도록 구성되어 있으며, 구체적으로 도 4 내지 도 5에 도시된 방법 실시예에서의 관련 단계를 실행할 수 있다.
도 4는 본 발명의 실시예에 따라 이메일 요구를 처리하는 방법에 대한 흐름도이다. 방법은 도 1 및 도 3에서의 보안 게이트웨이(110)에 의해 실행될 수 있다.
보안 게이트웨이(110)는 클라이언트 장치에 의해 송신된 메일 획득 요구를 처리하도록 구성되어 있으며, 여기서 메일 획득 요구는 이메일 서버로부터 메일을 획득하는 데 사용된다. 이하에서는 도 1 및 도 6을 참조하여 도 4에서의 방법에 대해 설명한다. 방법은 이하를 포함할 수 있다:
단계(400)에서, 보안 게이트웨이(110)는 클라이언트 장치(100)에 의해 송신된 제1 요구를 수신하고, 상기 제1 요구는 이메일 메시지의 일부를 획득하는 데 사용되고, 상기 이메일 메시지의 일부는 이메일 메시지의 이메일 헤더를 포함하지 않는다.
실제의 애플리케이션에서, 사용자는 이메일 메시지의 이메일 헤더를 사용함으로써 이메일 메시지 중 이메일 헤더를 제외한 다른 부분만을 수신하거나 브라우징하는 것을 결정할 수 있다. 예를 들어, 이메일 메시지의 본문 또는 첨부가 수신될 수 있거나 이메일 메시지의 본문 및 첨부가 수신될 수 있다. 도 6에 도시된 바와 같이, 도 6은 본 발명의 실시예에 따라 이메일 요구를 처리하는 다른 방법에 대한 개략적인 시그널링 도면이다. 도 6에 도시된 개략적인 시그널링 다이어그램에서, 클라이언트 장치(100)는 이메일 메시지의 일부를 획득하는 데 사용되는 제1 요구(600)를 보안 게이트웨이(110)에 송신한다. 클라이언트 장치(100)에 의해 송신되는 제1 요구(600)는 이메일 메시지의 이메일 ID 및 이메일 메시지의 획득될 부분의 ID를 반송한다.
제1 요구(600)는 IMAP에 따라 포맷될 수 없다. 구체적으로, 제1 요구(600)는 IMAP4의 FETCH 커맨드에 기초하여 포맷될 수 있다. 예를 들어, 제1 요구는 fhn6 UID FETCH 77 (BODY.PEEK[2])일 수 있고, 제1 요구는 이메일 ID가 77인 이메일 메시지의 제1 첨부를 획득하는 데 사용되며, 여기서 "fhn6"는 요구의 태그이고 요구를 식별하는 데 사용되며; "UID"는 이메일 메시지의 이메일 ID이고 이메일 메시지를 고유하게 식별할 수 있으며; UID는 특정한 값일 수 있거나 목록 또는 범위일 수 있으며, UID의 값이 목록 또는 범위일 때, 복수의 이메일 메시지를 나타내는 데 사용되고; "FETCH"는 IMAP4에 의해 지정되는 커맨드이고 이메일 메시지를 획득하는 데 사용되며; "77"은 이메일 ID UID의 값이며; "2"는 이메일 메시지의 획득될 부분의 ID이고 이메일 메시지의 제1 첨부이며; "(BODY.PEEK[2])"는 이메일 메시지의 제1 첨부를 획득하는 것이 요구된다는 것을 나타낸다. 이메일 메시지의 획득될 부분의 ID는 특정한 값, 목록, 또는 범위일 수 있다. 이메일 메시지의 획득될 부분의 ID가 목록 또는 범위일 때, 이메일 메시지의 복수의 부분이 획득된다는 것을 나타내는 데 사용된다. 예를 들어, "(BODY.PEEK[2-4])"는 이메일 메시지의 제1 내지 제3 첨부를 획득하는 것이 요구된다는 것을 나타내는 데 사용된다.
당업자는 보안 게이트웨이(110)가 트랜스페어런트 프록시 방식으로 프록시를 수행할 때, 보안 게이트웨이(110)는 클라이언트 장치(100)에 의해 이메일 서버(120)에 송신된 이메일 메시지 획득 요구를 가로챌 수 있다. 보안 게이트웨이(110)가 논-트랜스페어런트 프록시 방식으로 프록시를 수행할 때, 클라이언트 장치(100)는 이메일 메시지 획득 요구를 보안 게이트웨이(110)에 직접 송신할 수 있다. 본 발명의 이 실시예는 보안 게이트웨이(110)의 프록시 방식에 대해 제한을 두지 않는다.
단계(405)에서, 보안 게이트웨이(110)는 제1 요구(600)를 전체 이메일 메시지를 획득하는 데 사용되는 요구(605)로 변환한다. 클라이언트 장치(100)의 제1 요구(600)를 수신할 때, 보안 게이트웨이(110)는 IMAP4 프로토콜에 의해 지정된 커맨드 포맷에 따라 그리고 제1 요구(600)에 따라, 전체 이메일 메시지를 획득하는 데 사용되는 요구(605)를 구성할 수 있다. 예를 들어, 전체 이메일 메시지를 획득하는 데 사용되는 요구(605), fhn6 UID FETCH 77 (BODY.PEEK[])는 제1 요구(600): fhn6 UID FETCH 77 (BODY.PEEK[2])에 따라 포맷될 수 있다. 여기서, 전체 이메일 메시지를 획득하는 데 사용되는 요구(605)를 제1 변환된 요구(605)라 할 수 있다.
이 단계에서, 보안 게이트웨이(110)는 클라이언트 장치(100)에 의해 송신된 제1 요구(600)를 캐싱할 수 있고, 이메일 메시지에 관한 것이면서 제1 요구(600) 내에 있는 ID에 따라, 전체 이메일 메시지를 획득하는 데 사용되는 요구(605)를 구성할 수 있다.
단계(410)에서, 보안 게이트웨이(110)는 제1 변환된 요구(605)를 이메일 서버(120)에 송신한다. 예를 들어, 보안 게이트웨이(110)는 제1 변환된 요구, fhn6 UID FETCH 77 (BODY.PEEK[])를 이메일 서버(120)에 송신하여, 제1 변환된 요구에 따라, 전체 이메일 메시지를 환송하도록 이메일 서버(120)에 요구할 수 있다.
단계(415)에서, 보안 게이트웨이(110)는 이메일 서버(120)에 의해 환송된 이메일 메시지(610)를 수신하며, 여기서 이메일 메시지(610)는 인코딩된 형태의 이메일 메시지이다. 제1 변환된 요구를 수신한 후, 이메일 서버(120)는 제1 변환된 요구에 따라, UID가 나타내는 이메일 메시지(610)를 환송한다. 이메일 서버(120)에 의해 환송된 이메일 메시지(610)는 MIME 프로토콜에 의해 지정된 포맷을 준수하는 이메일 메시지이다. MIME 포맷의 이메일 메시지는 인코딩된 형태로 되어 있는 메일 콘텐츠를 포함한다. 인코딩된 형태로 되어 있는 메일 콘텐츠를 콘텐츠 트랜스퍼 인코딩 정보를 사용함으로써 메일 콘텐츠가 인코딩된 후 생성되는 인코딩된 메일 콘텐츠라 한다. 이메일 서버(120)에 의해 환송되는 이메일 메시지(610)의 특정한 구성에 대해서는, 도 2 및 상세한 설명을 참조한다.
이메일 서버(120)에 의해 환송된 이메일 메시지(610)의 MIME 정보 헤더는 이메일 헤더의 콘텐츠 및 MIME 버전 및 콘텐츠 유형과 같은 MIME 헤더 필드를 포함할 수 있다. 예를 들어, UID가 77이고 이메일 서버(120)에 의해 제1 변환된 요구(605)에 따라 반송되는 이메일 메시지의 MIME 정보 헤더는 다음과 같다:
Date: Sun, 17 Feb 2013 11:10:02 +0800 발송일
From: "123" 123@123.com 발송인 정보
To: 456 456@123.com 수신인 정보
Subject: test 이메일 주제
Mime-Version: 1.0 MIME 버전
Content-Type: multipart/mixed; 콘텐츠 유형
Boundary="=====001_Dragon664320174586_=====" 구획 문자, MIME 세그먼트의 시작과 끝을 나타낸다.
UID가 77이고 이메일 서버(120)에 의해 환송되는 이메일 메시지의 MIME 세그먼트 1은 이메일 메시지에 관한 것이면서 인코딩된 형태로 되어 있는 본문을 포함하고, 여기서 MIME 세그먼트 1 헤더는 이메일 메시지의 본문의 인코딩 정보를 포함하고, MIME 세그먼트 1 본문은 인코딩된 이메일 메시지의 본문의 콘텐츠를 포함한다. 예를 들어, UID가 77인 이메일 메시지의 MIME 세그먼트 1은 다음과 같다:
--=====001_Dragon664320174586_===== MIME 세그먼트 1의 시작을 나타낸다;
Content-Type: text/plain;
char set="gb2312" MIME 세그먼트 1의 콘텐츠 유형이 text/plain의 유형이고, MIME 세그먼트 1 내의 문자 집합이 "gb2312"임을 나타낸다;
Content-Transfer-Encoding: base64 MIME 세그먼트 1의 트랜스퍼 인코딩 유형이 base64임을 나타낸다; 그리고
vPu4vbz+DQo= 이메일 메시지의 인코딩된 본문을 나타낸다.
UID가 77이고 이메일 서버(120)에 의해 환송되는 이메일 메시지의 MIME 세그먼트 2는 이메일 메시지에 관한 것이면서 인코딩된 형태로 되어 있는 제1 첨부를 포함하고, 여기서 MIME 세그먼트 2 헤더는 이메일 메시지의 제1 첨부의 인코딩 정보를 포함하고, MIME 세그먼트 2 본문은 제1 첨부의 인코딩된 콘텐츠를 포함한다.
MIME 세그먼트 3은 이메일 메시지에 관한 것이면서 인코딩된 형태로 되어 있는 제2 첨부를 포함하며, 여기서 MIME 세그먼트 3 헤더는 이메일 메시지의 제2 첨부의 인코딩 정보를 포함하고, MIME 세그먼트 3 본문은 제2 첨부의 인코딩된 콘텐츠를 포함한다. 예를 들어, UID가 77인 이메일 메시지의 MIME 세그먼트 2는 다음과 같다:
--=====001_Dragon664320174586_===== MIME 세그먼트 2의 시작을 나타낸다;
Content-Type: application/octet-stream;
name=" file1.txt" MIME 세그먼트 2의 콘텐츠 유형이 임의의 이진 데이터임을 나타내고, 명칭은 "file1.txt"이다;
Content-Transfer-Encoding: base64 MIME 세그먼트 2의 트랜스퍼 인코딩 유형이 base64임을 나타낸다;
Content-Disposition: attachment;
filename=" file1.txt" MIME 세그먼트 2의 콘텐츠가 첨부임을 나타내고, 첨부명은 "file1.txt"이다; 그리고
xPq6w6Ohuty439DLvPu1vcT6o6E= 제1 첨부의 인코딩된 콘텐츠를 나타낸다.
단계(420)에서, 보안 게이트웨이(110)는 이메일 메시지(610)를 분석하여 이메일 메시지(610)의 인코딩 정보를 획득하며, 여기서 인코딩 정보는 Content-Transfer-Encoding 정보를 포함한다. 도 2에 도시된 바와 같이, 이메일 서버(120)에 의해 환송된 이메일 메시지(610)는 MIME에 의해 지정된 포맷으로 되어 있으므로, 보안 게이트웨이(110)는 이메일 메시지(610)의 MIME 정보 헤더 또는 MIME 세그먼트 헤더를 분석함으로써 이메일 메시지(610)의 Content-Transfer-Encoding 정보를 획득할 수 있고, 이메일 메시지(610)의 Content-Transfer-Encoding 정보를 사용함으로써 이메일 메시지(610)의 대응하는 부분을 디코딩할 수 있다. 예를 들어, 보안 게이트웨이(110)는 UID가 77인 이메일 메시지(610)의 MIME 세그먼트 2 헤더로부터 Content-Transfer-Encoding: base64를 획득하여, 이메일 메시지의 제1 첨부의 트랜스퍼 인코딩 정보가 base6임을 알 수 있다.
Content-Transfer-Encoding가 MIME 정보 헤더에 포함되어 있으면, Content-Transfer-Encoding 정보는 전체 이메일 메시지를 디코딩하는 데 사용될 수 있다는 것에 유의해야 한다. Content-Transfer-Encoding 정보가 MIME 세그먼트 헤더에 포함되어 있으면, Content-Transfer-Encoding 정보는 MIME 세그먼트에 대해서만 작용할 수 있고 MIME 세그먼트의 MIME 세그먼트 본문을 디코딩하는 데 사용될 수 있다.
또한, 보안 게이트웨이(110)는 이메일 메시지(610)를 분석함으로써 이메일 메시지(610)에 있는 문자 집합(char set) 정보를 획득할 수 있다. 구체적으로, 보안 게이트웨이(110)는 이메일 서버(120)에 의해 환송된 이메일 메시지(610)로부터, 이메일 메시지(610)의 각각의 MIME 세그먼트의 콘텐츠 유형 Content-Type 정보를 획득할 수 있으며, 이에 따라 보안 게이트웨이(110)는 그 획득된 Content-Type 정보에 따라 MIME 세그먼트의 패킷 유형을 결정할 수 있다. 예를 들어, 패킷 유형은 텍스트, 이미지, 오디오 등일 수 있다. 또한, Content-Type 정보는 MIME 세그먼트의 텍스트 인코딩 방식의 문자 집합(char set)을 더 포함할 수 있다. 예를 들어, 전술한 UID가 77인 이메일 메시지에서, MIME 세그먼트 1에서, char set="gb2312"는 MIME 세그먼트 1의 문자 집합이 "gb2312"라는 것을 나타낸다. MIME 정보 헤더나 MIME 세그먼트 2 중 어느 것도 문자 집합 정보를 포함하지 않으며, 따라서 MIME 세그먼트 2 내의 문자 집합 유형은 디폴트 문자 집합 유형: ASCII이다.
단계(425)에서, 보안 게이트웨이(110)는 인코딩 정보에 따라 이메일 메시지(610)를 디코딩하여, 이메일 메시지 중 디코딩된 형태의 부분을 획득한다. 구체적으로, 어느 인코딩 방식이 사용되는 것은 인코딩 정보가 획득된다는 것이 제공된다는 것을 알 수 있으며, 그런 다음 그 인코딩 방식에 대응하는 디코딩 방식이 사용되어 이메일 메시지 중 디코딩된 형태의 부분으로 되어 있는 메일 콘텐츠를 획득하는 디코딩이 수행된다.
예를 들어, 보안 게이트웨이(110)는 트랜스퍼 인코딩 방식 base64에 따라 MIME 세그먼트 2에 있는 인코딩된 첨부 콘텐츠 "xPq6w6Ohuty439DLvPu1vcT6o6E="를 디코딩하여, UID가 77인 이메일 메시지 내의 제1 첨부 중 디코딩된 형태의 콘텐츠를 획득할 수 있다: "Hello! Nice to meet you!"
보안 게이트웨이(110)는 전체 이메일 메시지(610)를 디코딩할 수 있거나, 이메일 메시지 중 클라이언트 장치(100)가 요구한 일부만을 디코딩할 수 있다는 것을 이해할 수 있으며, 이는 이 실시예에서 제한되지 않는다. 예를 들어, 보안 게이트웨이(110)는 MIME 정보 헤더 내의 Content-Transfer-Encoding 정보에 따라 전체 이메일 메시지(610)를 디코딩할 수 있거나, MIME 세그먼트의 헤더 내의 Content-Transfer-Encoding 정보에 따라 MIME 세그먼트 내의 MIME 세그먼트의 본문의 콘텐츠를 디코딩할 수 있다. MIME 세그먼트의 헤더가 Content-Transfer-Encoding 정보를 포함하지 않으면, 보안 게이트웨이(110)는 MIME 정보 헤더 내의 Content-Transfer-Encoding 정보에 따라 MIME 세그먼트의 본문의 콘텐츠를 디코딩할 수 있다.
단계(430)에서, 보안 게이트웨이(110)는 이메일 메시지 중 디코딩된 형태의 일부에 대해 보안 처리를 수행하여, 이메일 메시지의 일부가 안전한지를 판정한다. 실제의 애플리케이션에서, 보안 게이트웨이(110)가 이메일 메시지를 디코딩한 후, 보안 게이트웨이(110)는 설정된 보안 정책에 따라, 이메일 메시지의 디코딩된 형태의 부분에 대해 보안 처리를 추가로 수행할 수 있다. 보안 처리가 수행된 후, 이메일 메시지(610)가 안전한 이메일 메시지인 것으로 판정되면, 단계(435)로 진행하고; 그렇지 않으면, 단계(440)로 진행한다.
설정된 보안 정책은 바이러스 검출 및 제거 정책, 필터링 정책 등을 포함할 수 있다. 예를 들어, 바이러스 검출 및 제거와 같은 보안 동작은 미리 설정된 바이러스 검출 및 제거 정책에 따라 그 디코딩된 이메일 메시지에 대해 수행될 수 있거나, 이메일 메시지 내의 문자 집합(char set) 정보 및 미리 설정된 필터링 정책에 따라 그 디코딩된 이메일 메시지에 대해 콘텐츠 필터링이 수행될 수 있으며, 이에 따라 클라이언트 장치(100)는 바이러스가 있는 메일, 정크 메일, 또는 민감한 필드가 있는 이메일 메시지를 수신하지 않게 되며, 이에 의해 클라이언트 장치의 보안을 보호할 수 있다.
하나의 상황에서, 클라이언트 장치(100)에 의해 수신된 이메일 메시지를 필터링해야 할 때, 필터링되어야 하는 스트링 및 미리 설정된 문자 집합(char set)에 따라 필터링 정책이 미리 생성될 수 있다. 이메일 필터링 프로세스에서, 이메일 메시지의 일부 내의 char set 정보가 필터링 정책 내의 char set 정보에 일치하는지를 먼저 판정한다. 이메일 메시지의 일부 내의 char set 정보가 필터링 정책 내의 char set 정보에 일치하면, 이메일 메시지의 일부의 디코딩된 메일 콘텐츠는, 필터링되어야 하고 필터링 정책 내에 있는 스트링과 직접 매칭한다. 이메일 메시지의 일부 내의 char set 정보가 필터링 정책 내의 char set 정보에 일치하지 않으면, 이메일 메시지의 일부의 디코딩된 메일 콘텐츠는 필터링 정책 내의 char set 정보에 따라 변환되어야 하고, 그런 다음 필터링되어야 하고 필터링 정책 내에 있는 필터링 정책 내에 있는 스트링과 일치하여, 이메일 메시지의 일부가 필터링되어야 하는 스트링을 포함하는지를 판정한다.
예를 들어, 보안 게이트웨이(110)는 미리 설정된 필터링 정책에 따라, UID가 77인 이메일 메시지의 제1 첨부 중 디코딩된 형태의 콘텐츠를 필터링할 수 있다. 보안 게이트웨이(110)에 설정된 필터링 정책은: 이메일 메시지를 "광고"의 스트링으로 필터링하는 것일 수 있으며, 스트링을 필터링하기 위해 설정되어 있는 문자 집합(char set) 정보는 "gb2312"이다. 당연히, 보안 게이트웨이(110)는, 필터링되어야 하고 필터링 정책에 구성되어 있는 스트링에 따라 그리고 문자 집합 정보에 따라 상태 머신을 컴파일링에 의해 생성할 수 있다. UID가 77인 이메일 메시지의 제1 첨부의 문자 집합 정보는 ASCII이고, 생성된 상태 머신 내의 문자 집합 정보는 "gb2312"이므로, 제1 첨부의 문자 집합 정보는 상태 머신 내의 문자 집합 정보와 불일치한다. 그러므로 이메일 메시지의 제1 첨부가 설정된 필터링 정책에 따라 필터링될 때, 제1 첨부의 콘텐츠는 "gb2312"의 포맷으로 되어 있는 콘텐츠로 변환되어야 하며; 그런 다음, 변환된 콘텐츠는 상태 머신을 사용함으로써 매칭되어, 제1 첨부가, 필터링될 스트링 "advertisement"을 포함하는지를 판정한다. 제1 첨부가, 필터링될 스트링 "advertisement"을 포함하지 않으면, 이메일 메시지(610)가 안전한 것으로 간주되며, 그렇지 않으면, 이메일 메시지(610)가 불안전한 이메일 메시지인 것으로 간주된다.
보안 게이트웨이(110)가 이메일 메시지의 일부의 메일 콘텐츠를 획득한 후, 이메일 메시지의 일부의 메일 콘텐츠에 대해 수행되는 안티바이러스 처리 또는 메일 필터링과 같은 보안 처리는 본 발명의 이 실시예에서 열거된 몇 가지 처리 방식에 지나지 않는다. 실제의 애플리케이션에서, 메일 콘텐츠에 대해 다른 처리가 추가로 수행될 수 있으며, 이는 이 실시예에서 제한되지 않는다.
단계(435)에서, 보안 게이트웨이(110)는 이메일 메시지의 일부(615)를 클라이언트 장치(100)에 포워딩한다. 이메일 메시지의 일부(615)가 안전한 것으로 판정한 후, 보안 게이트웨이(110)는 이메일 메시지의 일부(615)를 클라이언트 장치(100)에 포워딩할 수 있다. 예를 들어, 보안 게이트웨이(110)가, 이메일 메시지(610)에 대해 보안 처리를 수행한 후, 이메일 메시지(610)가 안전한 이메일 메시지인 것으로 결정하거나, 보안 게이트웨이(110)가 이메일 메시지(610)에 대해 바이러스 검출 및 제거와 같은 처리를 수행한 후, 처리된 이메일 메시지(610)가 안전한 이메일 메시지인 것으로 결정한 후, 보안 게이트웨이(110)는, 이메일 메시지의 일부에 관한 것이면서 제1 요구(600)에 반송되는 ID에 따라 이메일 메시지의 일부(615)를 클라이언트 장치(100)에 포워딩하여, 방법의 프로세스를 종료할 수 있다. 예를 들어, 보안 게이트웨이(110)는, 제1 요구 fhn7 UID FETCH 77(BODY.PEEK[2]) 내의 첨부 ID "2"에 따라, UID가 77인 이메일 메시지 내의 제1 첨부를 클라이언트 장치(100)에 포워딩할 수 있다.
단계(440)에서, 보안 게이트웨이(110)는 이메일 메시지의 일부를 클라이언트 장치에 포워딩하는 것을 거부한다. 보안 게이트웨이(110)가, 이메일 메시지(610)에 대해 보안 처리를 수행한 후, 이메일 메시지(610)가 불안전한 이메일인 것으로 결정하면, 보안 게이트웨이(110)는 이메일 메시지의 일부(615)를 클라이언트 장치에 포워딩하는 것을 거부한다. 예를 들어, 보안 게이트웨이(110)는 이메일 메시지의 획득이 실패임을 나타내는 정보를 클라이언트 장치(100)에 송신하고, 이메일 메시지(610)를 폐기하거나, 수정된 이메일 메시지(610)를 클라이언트 장치(100)에 송신한다. 예를 들어, 보안 게이트웨이(110)는 이메일 메시지(610) 내의 일부의 문장을 차단하거나 수정하고 그런 다음 이메일 메시지(610)를 클라이언트 장치(100)에 송신하여, 클라이언트 장치(100)에 대해 보안 처리를 수행한다.
도 4에 도시된 이메일 요구 처리 방법에 따르면, 보안 게이트웨이(110)는 이메일 메시지 중 클라이언트 장치(100)에 관한 것이면서 이메일 헤더를 제외한 다른 부분을 획득하는 데 사용되는 요구(600)를 전체 이메일 메시지를 획득하기 위한 요구(605)로 변환하며, 이에 따라 보안 게이트웨이(110)는, 이메일 서버(120)에 의해 환송된 전체 이메일 메시지로부터, 이메일 메시지 중 클라이언트 장치(100)에 의해 획득될 일부(615)의 콘텐츠 트랜스퍼 인코딩 정보를 획득할 수 있다. 또한, 보안 게이트웨이(110)는 이메일 메시지의 일부의 콘텐츠 트랜스퍼 인코딩 정보를 사용하여 이메일 메시지의 일부(615)를 디코딩할 수 있으며, 이에 따라 보안 게이트웨이(110)는 클라이언트 장치(100)가 이메일 메시지 중 이메일 헤더를 제외한 일부만을 획득하는 애플리케이션 시나리오에서 이메일 메시지 중 디코딩된 형태의 일부의 콘텐츠를 획득할 수도 있으며, 이에 의해 클라이언트 장치(1000의 보호를 강화할 수 있다.
다른 상황에서, 이메일 메시지를 획득할 때, 클라이언트 장치(100)의 속도를 높이기 위해, 보안 게이트웨이(110)는 이메일 서버(120)로부터 획득된 이메일 메시지를 추가로 캐싱할 수 있다. 구체적으로, 보안 게이트웨이(110)는 도 5에 도시된 방법을 사용함으로써, 클라이언트 장치(100)에 의해 송신된 메일 획득 요구를 추가로 처리할 수 있으며, 여기서 메일 획득 요구는 이메일 서버(120)로부터 이메일 메시지의 일부를 획득하는 데 사용된다. 도 5는 본 발명의 실시예에 따라 이메일 요구를 처리하는 다른 방법에 대한 흐름도이다. 방법은 도 1, 도 3, 및 도 6에서의 보안 게이트웨이(110)에 의해 실행될 수도 있다. 이하에서는 도 1 및 도 6을 참조하여 도 5에 도시된 방법에 대해 설명한다. 도 5에 도시된 바와 같이, 방법은 이하를 포함할 수 있다:
단계(500)에서, 보안 게이트웨이(110)는 클라이언트 장치(100)에 의해 송신된 제2 요구를 수신하며, 상기 제2 요구는 이메일 메시지의 일부를 획득하는 데 사용되고, 상기 이메일 메시지의 일부는 이메일 메시지의 이메일 헤더를 포함하지 않는다.
제2 요구는 또한 IMAP4의 FETCH 커맨드에 기초하여 포맷된다. 예를 들어, 제2 요구는 fhn7 UID FETCH 77 (BODY.PEEK[3])일 수 있고 이메일 ID가 77인 이메일 메시지의 제2 첨부를 환송하도록 이메일 서버에 요구하는 데 사용되며, 여기서 "77"은 이메일 메시지의 이메일 ID이며, "3"은 이메일 메시지의 획득될 일부의 ID이다. 클라이언트 장치에 의해 송신된 요구에 관한 상세한 설명에 대해서는, 도 4에서의 실시예의 관련 설명을 참조한다.
본 발명의 실시예에서 제1 요구, 제2 요구, 제1 변환된 요구, 및 제2 변환된 요구에서의 제1 및 제2는 설명을 명확하게 하기 위한 것에 불과하고 클라이언트 장치에 의해 송신된 요구의 시간, 순서 등에 대해 어떠한 제한을 두는 것이 아닌 클라이언트 장치에 의해 송신된 요구를 구별하기 위한 것이다.
단계(505)에서, 보안 게이트웨이(110)는 보안 게이트웨이(110)가 이메일 메시지를 캐싱하였는지를 판정한다. 도 1에 도시된 네트워크 시스템에서, 보안 게이트웨이(110)는 일반적으로 프록시 방식으로 클라이언트 장치(100)에 의해 송신된 메일 동작 요구를 처리한다. 보안 게이트웨이(110)는 캐싱 기능을 가진다. 예를 들어, 보안 게이트웨이(110)는 이메일 서버(120)로부터 획득된 이메일 메시지를 로컬 캐시에 계속해서 캐싱할 수 있다. 클라이언트 장치(100)의 제2 요구를 수신한 후, 보안 게이트웨이(110)는 제2 요구에 따라, 보안 게이트웨이(110)가 클라이언트 장치(100)에 의해 획득되도록 요구되는 이메일 메시지를 저장하였는지를 판정한다. 보안 게이트웨이(110)가 클라이언트 장치(100)에 의해 획득되도록 요구되는 이메일 메시지를 저장하지 않고 있으면, 보안 게이트웨이(110)는 단계(510)를 실행할 수 있다. 보안 게이트웨이(110)가 클라이언트 장치(100)에 의해 획득되도록 요구되는 이메일 메시지를 저장하였으면, 보안 게이트웨이(110)는 단계(550)를 직접 실행할 수 있고, 보안 게이트웨이(110)에 의해 저장된 이메일 메시지의 일부를 직접 클라이언트 장치(100)에 송신할 수 있다. 이 방법에서, 이메일 메시지를 획득할 때 클라이언트 장치(100)의 속도 및 효율성이 현저하게 향상될 수 있다.
구체적으로, 이메일 메시지가 캐싱되었는지를 판정할 때, 보안 게이트웨이(110)는 제2 요구에 반송되는 이메일 ID에 따라, 이메일 메시지가 캐싱되었는지를 판정할 수 있다.
단계(510)에서, 보안 게이트웨이(110)는 제2 요구를 전체 이메일 메시지를 획득하는 데 사용되는 요구로 변환한다. 보안 게이트웨이(110)는 제2 요구에 반송된 이메일 ID 및 IMAP4에 의해 지정된 커맨드 포맷에 따라, 전체 이메일 메시지를 획득하는 데 사용되는 요구(605)를 구성할 수 있다. 예를 들어, 전체 이메일 메시지를 획득하는 데 사용되는 요구, fhn7 UID FETCH 77 (BODY.PEEK[])는 제2 요구: fhn7 UID FETCH 77 (BODY.PEEK[3])에 따라 포맷될 수 있으며, 여기서 전체 이메일 메시지를 획득하는 데 사용되는 요구를 제2 변환된 요구라 할 수 있다.
이 단계에서, 보안 게이트웨이(110)는 클라이언트 장치(100)에 의해 송신된 제2 요구를 메모리에 먼저 캐싱할 수 있고, 그런 다음 제2 요구 내의 이메일 ID에 따라, 전체 이메일 메시지를 획득하는 데 사용되는 요구(605)를 구성할 수 있다.
단계(515)에서, 보안 게이트웨이(110)는 제2 변환된 요구를 이메일 서버에 송신한다. 예를 들어, 보안 게이트웨이(110)는 제2 변환된 요구 fhn7 UID FETCH 77 (BODY.PEEK[])를 이메일 서버(120)에 송신하여, 이 제2 변환된 요구에 따라, UID가 77인 전체 이메일 멧히지를 환송하도록 이메일 서버(120)에 요구할 수 있다.
단계(520)에서, 보안 게이트웨이(110)는 이메일 서버(120)에 의해 환송되는, 인코딩된 형태의 이메일 메시지(610)를 수신한다. 이메일 서버(120)에 의해 환송되는 이메일 메시지(610)는 MIME에 의해 지정된 포맷을 가지며, 상세한 설명에 대해서는, 도 2 및 도 4에 도시된 실시예에서의 관련 설명을 참조한다.
단계(525)에서, 보안 게이트웨이(110)는 이메일 메시지(610)를 분석하여 이메일 메시지의 인코딩 정보를 획득한다.
단계(530)에서, 보안 게이트웨이(110)는 인코딩 정보에 따라 이메일 메시지(610)를 디코딩하여, 이메일 메시지 중 디코딩된 형태의 일부를 획득한다.
단계(535)에서, 보안 게이트웨이(110)는 이메일 메시지 중 디코딩된 형태의 일부에 대해 보안 처리를 수행하여, 이메일 메시지의 일부가 안전한지를 판정한다. 보안 게이트웨이(110)가 보안 처리를 수행한 후, 이메일 메시지가 안전한 이메일 메시지인 것으로 판정하면, 단계(545)로 진행하고, 그렇지 않으면, 단계(540)로 진행한다.
단계(540)에서, 보안 게이트웨이(110)는 이메일 메시지의 일부를 클라이언트 장치에 포워딩하는 것을 거부한다.
단계(545)에서, 보안 게이트웨이(110)는 이메일 메시지를 네트워크 장치의 캐시에 저장한다. 구체적으로, 제2 요구에 반송된 이메일 ID에 따라 단계(505)에서, 네트워크 장치가 이메일 메시지(610)를 캐싱하지 않은 것으로 판정되면, 보안 게이트웨이(110)가 이메일 서버(120)로부터 이메일 메시지(610)를 획득하지 않았다는 의미이다. 디코딩된 이메일 메시지(610)에 대해 보안 처리를 수행하고 이메일 메시지(610)가 안전한 것으로 판정하면, 보안 게이트웨이(110)는 보안 게이트웨이(110)의 캐시에 이메일 메시지(610)를 저장할 수 있다. 보안 게이트웨이(110)가 이메일 메시지(610)를 획득하기 위한 요구를 다시 수신하면, 보안 게이트웨이(110)는 캐시 내의 이메일 메시지(610) 또는 이메일 메시지(610)의 일부를 클라이언트 장치(100)에 직접 포워딩하여, 이메일 메시지를 획득할 때 클라이언트 장치(100)의 속도 및 효율성을 높일 수 있다.
단계(550)에서, 보안 게이트웨이(110)는 이메일 메시지의 일부(615)를 클라이언트 장치에 포워딩한다. 하나의 상황에서, 보안 게이트웨이(110)가 이메일 메시지(610)에 대해 보안 처리를 수행한 후, 이메일 메시지(610)가 안전한 이메일 메시지인 것으로 결정하거나, 보안 게이트웨이(110)가 이메일 메시지(610)에 대해 바이러스 검출 및 제거와 같은 보안 처리를 수행한 후, 처리된 이메일 메시지가 안전한 이메일 메시지인 것으로 결정하면, 보안 게이트웨이(110)는, 이메일 메시지의 일부에 관한 것이면서 제2 요구에 반송되는 ID에 따라, 이메일 메시지의 일부(615)를 클라이언트 장치(100)에 송신할 수 있다. 예를 들어, 보안 게이트웨이(110)는 제2 요구 fhn7 UID FETCH 77(BODY.PEEK[3]) 내의 첨부 ID "3"에 따라, UID가 77인 이메일 메시지 내의 제2 첨부를 클라이언트 장치(100)에 환송할 수 있다.
다른 상황에서, 단계(505)에서 보안 게이트웨이(110)가 이메일 메시지(610)를 캐싱하였다는 것으로 보안 게이트웨이(110)가 판정하면, 보안 게이트웨이(110)는 또한 단계(550)를 직접 실행할 수 있고, 이메일 메시지의 일부(615)에 관한 것이면서 제2 요구에 반송되는 ID에 따라, 보안 게이트웨이(110)에 캐싱되어 있는 이메일 메시지의 일부(615)를 클라이언트 장치(100)에 포워딩하여, 이메일 메시지를 획득할 때 클라이언트 장치(100)의 속도 및 효율성을 높일 수 있다.
이메일 메시지(610)를 캐싱하는 단계(예를 들어, 도 5에서의 단계(545))는 이메일 메시지(615)가 이메일 서버(120)로부터 획득된 후 실행될 수 있거나, 이메일 메시지(610)에 대해 보안 처리가 수행된 후 실행될 수 있거나, 이메일 메시지의 일부(615)가 클라이언트 장치(100)에 포워딩되기 전에 실행될 수 있거나, 이메일 메시지의 일부(615)가 클라이언트 장치에 포워딩되는 것과 동시에 실행될 수 있으며, 이는 이 실시예에서 제한되지 않는다는 것에 유의해야 한다. 이메일 메시지(610)가 획득된 후 그리고 이메일 메시지(610)에 대해 보안 처리가 수행되기 전에 이메일 메시지(610)가 캐싱되면, 이메일 메시지(610)에 대해 보안 처리가 수행된 후, 이메일 메시지가 불안전하다는 것을 알게 되면, 이메일 메시지(610)는 캐시에서 삭제될 수 있다.
설명을 쉽고 간략하게 하기 위해, 도 5에 도시된 실시예에서의 일부의 단계에 대한 설명에 대해서는 도 4에 도시된 실시예에서 대응하는 프로세스에서의 상세한 설명을 참조한다는 것을 당업자라면 분명하게 이해할 수 있을 것이다.
도 5에 도시된 이메일 요구를 처리하는 방법에 따르면, 보안 게이트웨이(110)는, 이메일 메시지의 일부를 획득하기 위한 것이면서 클라이언트 장치(100)에 의해 송신되는 요구를 수신한 후, 클라이언트 장치(100)에 의해 획득되도록 요구되는 이메일 메시지가 캐시에 저장되어 있는지를 먼저 판정할 수 있다. 보안 게이트웨이(110)가 클라이언트 장치(100)에 의해 획득되도록 요구되는 이메일 메시지를 저장하였으면, 보안 게이트웨이(110)는 보안 게이트웨이(110)에 의해 저장되어 있는 이메일 메시지의 일부를 클라이언트 장치(100)에 직접 송신할 수 있고, 이에 따라 이메일 메시지를 획득할 때 클라이언트 장치(100)의 속도 및 효율성을 현저하게 높일 수 있다. 보안 게이트웨이(110)는 클라이언트 장치(100)에 의해 획득되도록 요구되는 이메일 메시지를 저장하고 있지 않으면, 보안 게이트웨이(110)는 클라이언트 장치(100)의 요구를 전체 이메일 메시지를 획득하기 위한 요구로 변환하고, 이에 따라 보안 게이트웨이(110)는, 이메일 서버(120)에 의해 변환된 요구에 따라 환송되는 전체 이메일 메시지로부터, 이메일 메시지 중 클라이언트 장치(1000에 의해 획득될 일부의 콘텐츠 트랜스퍼 인코딩 정보를 획득할 수 있다. 또한, 보안 게이트웨이(110)는 이메일 메시지의 일부의 콘텐츠 트랜스퍼 인코딩 정보를 사용함으로써 이메일 메시지의 일부를 디코딩할 수 있으며, 이에 따라 보안 게이트웨이(110)는 또한 이메일 메시지 중 클라이언트 장치(100)에 의해 획득된 일부의 콘텐츠를 확인하고 획득할 수 있다. 또한, 보안 게이트웨이(110)는 이메일 메시지의 디코딩된 일부의 콘텐츠에 대해 메일 필터링 또는 바이러스 검출 및 제거와 같은 보안 처리 동작을 수행하고, 그런 다음 이메일 메시지의 일부를 클라이언트 장치(100)에 포워딩하여 클라이언트 장치(100)의 보안을 보장할 수 있다. 또한, 보안 게이트웨이(110)는, 이메일 메시지가 안전한 것으로 판정한 후, 이메일 서버(120)에 의해 획득된 이메일 메시지를 추가로 캐싱할 수 있으며, 이에 따라 보안 게이트웨이(110)는 클라이언트 장치(100)의 메일 동작 요구를 계속 수신한 후 그 캐싱된 이메일 메시지를 클라이언트 장치(100)에 환송하여, 이메일 메시지를 획득할 때 클라이언트 장치(100)의 속도 및 효율성을 높일 수 있다.
애플리케이션에서 제공하는 실시예는 단지 예시에 불과하며 본 발명의 실시예에서의 보안 게이트웨이 역시 네트워크 장치의 예에 불과하며; 본 발명의 실시예는 또한 다른 네트워크 장치, 예를 들어, 네트워크 장치가 IMAP4에 기초하여 메일 프록시 기능을 실행할 수 있는 방화벽에 적용될 수 있으며, 이는 여기서 제한되지 않는다. 또한, 본 발명의 실시예에서의 네트워크 장치는 독립형 장치로서 네트워크에 개별적으로 배치될 수 있거나, 방화벽 또는 게이트웨이와 같은 다른 장치에 위치할 수 있으며, 이는 마찬가지로 여기서 제한되지 않는다.

Claims (20)

  1. 네트워크 장치로서,
    클라이언트 장치 및 이메일 서버와 통신하도록 구성되어 있는 통신 인터페이스; 및
    프로세서
    를 포함하며, 상기 프로세서는,
    이메일 메시지의 일부를 페칭(fetch)하기 위해 상기 클라이언트 장치로부터 제1 요구를 수신하고 - 상기 이메일 메시지의 일부는 상기 이메일 메시지의 헤더를 포함하지 않음 - ;
    상기 제1 요구를 상기 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구로 변환하고;
    상기 수정된 요구를 상기 이메일 서버에 송신하고;
    상기 이메일 서버로부터 인코딩된 형태의 이메일 메시지를 수신하고;
    상기 이메일 메시지를 분석하여 상기 이메일 메시지의 인코딩 정보를 획득하고;
    상기 인코딩 정보에 따라 이메일 메시지를 디코딩하여 디코딩된 형태의 일부를 획득하며; 그리고
    상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하도록 구성되어 있는, 네트워크 장치.
  2. 제1항에 있어서,
    상기 클라이언트 장치로부터의 제1 요구 및 상기 수정된 요구는 인터넷 메시지 액세스 프로토콜 4(Internet Message Access Protocol 4, IMAP4)에 따라 포맷되는, 네트워크 장치.
  3. 제1항에 있어서,
    상기 제1 요구는 이메일 ID 및 상기 일부의 ID를 포함하고, 상기 프로세서는 구체적으로,
    상기 이메일 ID에 따라 상기 제1 요구를 상기 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구로 변환하며; 그리고
    상기 이메일 메시지의 일부의 ID에 따라 상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하도록 구성되어 있는, 네트워크 장치.
  4. 제1항에 있어서,
    상기 프로세서는,
    상기 디코딩된 형태의 일부에 대해 보안 동작을 수행하여 상기 일부가 안전한지를 판정하도록 추가로 구성되어 있으며; 그리고
    상기 프로세서는 구체적으로 상기 일부가 안전할 때 상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하도록 구성되어 있는, 네트워크 장치.
  5. 제4항에 있어서,
    상기 프로세서는,
    상기 이메일 서버에 의해 환송된 상기 이메일 메시지로부터 문자 집합(Char set) 정보를 획득하도록 추가로 구성되어 있으며; 그리고
    상기 프로세서는 구체적으로, 보안 정책 및 상기 문자 집합 정보에 따라, 상기 디코딩된 형태의 일부에 대해 보안 동작을 수행하여 상기 일부가 안전한지를 판정하도록 구성되어 있는, 네트워크 장치.
  6. 제1항에 있어서,
    상기 프로세서는 상기 이메일 메시지를 상기 네트워크 장치의 캐시에 저장하도록 추가로 구성되어 있는, 네트워크 장치.
  7. 제6항에 있어서,
    상기 프로세서는,
    상기 이메일 메시지의 제2 일부를 페칭하기 위해 상기 클라이언트 장치로부터 제2 요구를 수신하고 - 상기 이메일 메시지의 제2 일부는 상기 이메일 메시지의 헤더를 포함하지 않고, 상기 제2 요구는 이메일 ID 및 상기 이메일 메시지의 제2 일부의 ID를 포함함 - ;
    상기 이메일 ID에 따라, 상기 네트워크 장치의 버퍼 내의 이메일 메시지를 판정하며; 그리고
    상기 제2 일부의 ID에 따라 상기 이메일 메시지의 제2 일부를 클라이언트 장치에 포워딩하도록 추가로 구성되어 있는, 네트워크 장치.
  8. 이메일 서버로부터의 이메일을 검색하기 위해, 네트워크 장치에 의해 수행되는, 클라이언트 장치로부터의 요구를 처리하는 방법으로서,
    이메일 메시지의 일부를 페칭하기 위해 상기 클라이언트 장치로부터 제1 요구를 수신하는 단계 - 상기 이메일 메시지의 일부는 상기 이메일 메시지의 헤더를 포함하지 않음 - ;
    상기 제1 요구를 상기 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구로 변환하는 단계;
    상기 수정된 요구를 상기 이메일 서버에 송신하는 단계;
    상기 이메일 서버로부터 인코딩된 형태의 이메일 메시지를 수신하는 단계;
    상기 이메일 메시지를 분석하여 상기 이메일 메시지의 인코딩 정보를 획득하는 단계;
    상기 인코딩 정보에 따라 이메일 메시지를 디코딩하여 디코딩된 형태의 일부를 획득하는 단계; 및
    상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하는 단계
    를 포함하는 방법.
  9. 제8항에 있어서,
    상기 클라이언트 장치로부터의 제1 요구 및 상기 수정된 요구는 인터넷 메시지 액세스 프로토콜 4(Internet Message Access Protocol 4, IMAP4)에 따라 포맷되는, 방법.
  10. 제8항에 있어서,
    상기 제1 요구는 이메일 메시지의 이메일 ID 및 상기 이메일 메시지의 일부의 ID를 포함하고,
    상기 제1 요구를 상기 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구로 변환하는 단계는,
    상기 이메일 ID에 따라 상기 제1 요구를 상기 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구로 변환하는 단계; 및
    상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하는 단계는,
    상기 이메일 메시지의 일부의 ID에 따라 상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하는 단계
    를 포함하는, 방법.
  11. 제8항에 있어서,
    상기 디코딩된 형태의 일부에 대해 보안 동작을 수행하여 상기 이메일 메시지의 일부가 안전한지를 판정하는 단계
    를 더 포함하며,
    상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하는 단계는,
    상기 이메일 메시지의 일부가 안전할 때 상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하는 단계
    를 포함하는, 방법.
  12. 제11항에 있어서,
    상기 이메일 서버에 의해 환송된 상기 이메일 메시지로부터 문자 집합(Char set) 정보를 획득하는 단계
    를 더 포함하며,
    상기 디코딩된 형태의 일부에 대해 보안 동작을 수행하여 상기 이메일 메시지의 일부가 안전한지를 판정하는 단계는,
    보안 정책 및 상기 문자 집합 정보에 따라, 상기 디코딩된 형태의 일부에 대해 보안 동작을 수행하여 상기 이메일 메시지의 일부가 안전한지를 판정하는 단계
    를 포함하는, 방법.
  13. 제8항에 있어서,
    상기 이메일 메시지를 상기 네트워크 장치의 캐시에 저장하는 단계
    를 더 포함하는 방법.
  14. 제13항에 있어서,
    상기 이메일 메시지의 제2 일부를 페칭하기 위해 상기 클라이언트 장치로부터 제2 요구를 수신하는 단계 - 상기 이메일 메시지의 제2 일부는 상기 이메일 메시지의 헤더를 포함하지 않고, 상기 제2 요구는 상기 이메일 메시지의 이메일 ID 및 상기 이메일 메시지의 제2 일부의 ID를 포함함 - ;
    상기 이메일 ID에 따라, 상기 네트워크 장치의 버퍼 내의 이메일 메시지를 판정하는 단계; 및
    상기 이메일 메시지의 제2 일부의 ID에 따라 상기 이메일 메시지의 제2 일부를 클라이언트 장치에 포워딩하는 단계
    를 더 포함하는 방법.
  15. 비일시적 머신 판독 가능형 매체로서,
    네트워크 장치에서 프로세서에 의해 실행될 때, 상기 네트워크 장치가,
    이메일 메시지의 일부를 페칭하기 위해 클라이언트 장치로부터 제1 요구를 수신하는 단계 - 상기 이메일 메시지의 일부는 상기 이메일 메시지의 헤더를 배제함 - ;
    상기 제1 요구를 상기 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구로 변환하는 단계;
    상기 수정된 요구를 이메일 서버에 송신하는 단계;
    상기 이메일 서버로부터 인코딩된 형태의 이메일 메시지를 수신하는 단계;
    상기 이메일 메시지를 분석하여 상기 이메일 메시지의 인코딩 정보를 획득하는 단계;
    상기 인코딩 정보에 따라 이메일 메시지를 디코딩하여 디코딩된 형태의 일부를 획득하는 단계; 및
    상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하는 단계
    를 포함하는 동작을 수행하게 하는 명령을 제공하는 비일시적 머신 판독 가능형 매체.
  16. 제15항에 있어서,
    상기 클라이언트 장치로부터의 제1 요구 및 상기 수정된 요구는 인터넷 메시지 액세스 프로토콜 4(Internet Message Access Protocol 4, IMAP4)에 따라 포맷되는, 비일시적 머신 판독 가능형 매체.
  17. 제15항에 있어서,
    상기 제1 요구는 이메일 메시지의 이메일 ID 및 상기 이메일 메시지의 일부의 ID를 포함하고, 상기 네트워크 장치에서 프로세서에 의해 실행될 때, 상기 네트워크 장치가,
    상기 이메일 ID에 따라 상기 제1 요구를 상기 이메일 메시지를 전체적으로 페칭하기 위해 수정된 요구로 변환하는 단계; 및
    상기 이메일 메시지의 일부의 ID에 따라 상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하는 단계
    를 포함하는 동작을 수행하게 하는 명령을 더 포함하는 비일시적 머신 판독 가능형 매체.
  18. 제15항에 있어서,
    상기 네트워크 장치에서 프로세서에 의해 실행될 때, 상기 네트워크 장치가,
    상기 디코딩된 형태의 일부에 대해 보안 동작을 수행하여 상기 일부가 안전한지를 판정하는 단계
    를 포함하는 동작을 수행하게 하는 명령을 더 포함하며,
    상기 이메일 메시지의 일부를 상기 클라이언트 장치에 포워딩하는 단계는,
    상기 일부가 안전할 때 상기 일부를 상기 클라이언트 장치에 포워딩하는 단계
    를 포함하는, 비일시적 머신 판독 가능형 매체.
  19. 제18항에 있어서,
    상기 네트워크 장치에서 프로세서에 의해 실행될 때, 상기 네트워크 장치가,
    상기 이메일 서버로부터 수신된 상기 이메일 메시지로부터 문자 집합 정보를 획득하는 단계
    를 포함하는 동작을 수행하게 하는 명령을 더 포함하며,
    상기 디코딩된 형태의 일부에 대해 보안 동작을 수행하여 상기 이메일 메시지의 일부가 안전한지를 판정하는 단계는,
    상기 디코딩된 형태의 일부에 대해 보안 동작을 수행하여, 문자 집합(Char set) 정보 및 보안 정책에 따라 상기 일부가 안전한지를 판정하는 단계
    를 포함하는, 비일시적 머신 판독 가능형 매체.
  20. 제15항에 있어서,
    상기 네트워크 장치에서 프로세서에 의해 실행될 때, 상기 네트워크 장치가,
    상기 이메일 메시지를 상기 네트워크 장치의 캐시에 저장하는 단계;
    상기 이메일 메시지의 제2 일부를 페칭하기 위해 상기 클라이언트 장치로부터 제2 요구를 수신하는 단계 - 상기 이메일 메시지의 제2 일부는 상기 이메일 메시지의 헤더를 배제하고, 상기 제2 요구는 이메일 ID 및 상기 제2 일부의 ID를 포함함 - ;
    상기 이메일 ID에 따라, 상기 네트워크 장치의 버퍼 내의 이메일 메시지를 판정하는 단계; 및
    상기 제2 일부의 ID에 따라 상기 이메일 메시지의 제2 일부를 클라이언트 장치에 포워딩하는 단계
    를 포함하는 동작을 수행하게 하는 명령을 더 포함하는 비일시적 머신 판독 가능형 매체.
KR1020157034364A 2013-06-26 2013-06-26 네트워크 장치 및 이메일 요구 처리 방법 KR101729637B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/077995 WO2014205669A1 (zh) 2013-06-26 2013-06-26 网络设备及电子邮件请求处理方法

Publications (2)

Publication Number Publication Date
KR20160003265A KR20160003265A (ko) 2016-01-08
KR101729637B1 true KR101729637B1 (ko) 2017-04-24

Family

ID=50126080

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157034364A KR101729637B1 (ko) 2013-06-26 2013-06-26 네트워크 장치 및 이메일 요구 처리 방법

Country Status (7)

Country Link
US (1) US20160112356A1 (ko)
EP (1) EP2985957B1 (ko)
JP (1) JP6156765B2 (ko)
KR (1) KR101729637B1 (ko)
CN (1) CN103609078B (ko)
ES (1) ES2747380T3 (ko)
WO (1) WO2014205669A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103888348B (zh) * 2014-03-28 2017-10-27 新浪网技术(中国)有限公司 电子邮件应用系统和电子邮件传送方法、装置
US10666659B2 (en) * 2015-08-24 2020-05-26 Bravatek Solutions, Inc. System and method for protecting against E-mail-based cyberattacks
US10313316B2 (en) * 2016-05-26 2019-06-04 Pepsico, Inc. Secure gateways for connected dispensing machines
JP6836773B2 (ja) * 2016-11-15 2021-03-03 株式会社エヴリカ 情報処理装置、方法およびプログラム
US10839353B2 (en) * 2018-05-24 2020-11-17 Mxtoolbox, Inc. Systems and methods for improved email security by linking customer domains to outbound sources
CN109635250B (zh) * 2018-12-14 2024-02-13 万兴科技股份有限公司 文档格式转换方法、装置、计算机设备及存储介质
CN114500444B (zh) * 2022-03-18 2024-02-23 网易(杭州)网络有限公司 邮件数据处理方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007087327A (ja) * 2005-09-26 2007-04-05 Ntt Software Corp 電子メール処理プログラム
JP2007151159A (ja) 2007-01-15 2007-06-14 Softbank Mobile Corp メールプロキシサーバ装置
US20080172663A1 (en) 2007-01-16 2008-07-17 Lg Electronics Inc. Method of displaying attachment file list in mobile communication terminal, method of downloading and uploading attachment file using e-mail protocol, and mobile communication terminal for performing the same

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5923846A (en) * 1995-11-06 1999-07-13 Microsoft Corporation Method of uploading a message containing a file reference to a server and downloading a file from the server using the file reference
CA2327409A1 (en) * 1998-04-08 1999-10-14 Opentv, Inc. System and method for one-touch e-mail reply
US6735770B1 (en) * 1998-04-27 2004-05-11 Sun Microsystems, Inc. Method and apparatus for high performance access to data in a message store
US6654787B1 (en) * 1998-12-31 2003-11-25 Brightmail, Incorporated Method and apparatus for filtering e-mail
US6647409B1 (en) * 1999-07-13 2003-11-11 Microsoft Corporation Maintaining a sliding view of server based data on a handheld personal computer
US6850968B1 (en) * 2000-02-01 2005-02-01 Service Co. Reduction of network server loading
US6993559B2 (en) * 2000-02-14 2006-01-31 Bigbow.Com, Inc. System, method, apparatus and computer program product for operating a web site by electronic mail
US6697843B1 (en) * 2000-04-13 2004-02-24 United Parcel Service Of America, Inc. Method and system for hybrid mail with distributed processing
US7039678B1 (en) * 2000-09-07 2006-05-02 Axis Mobile, Ltd. E-mail proxy
CN1145316C (zh) * 2001-01-23 2004-04-07 联想(北京)有限公司 互联网中过滤电子邮件内容的方法
US7640434B2 (en) * 2001-05-31 2009-12-29 Trend Micro, Inc. Identification of undesirable content in responses sent in reply to a user request for content
US7607010B2 (en) * 2003-04-12 2009-10-20 Deep Nines, Inc. System and method for network edge data protection
JP4036333B2 (ja) * 2003-05-23 2008-01-23 日本アイ・ビー・エム株式会社 送信側メールサーバ、受信側メールサーバ、電子メールシステム、署名データ管理方法、およびプログラム
US7844672B2 (en) * 2005-08-25 2010-11-30 International Business Machines Corporation Methods, systems, and computer program products for managing email in a client-server environment
US20070094605A1 (en) * 2005-10-20 2007-04-26 Dietz Timothy A System for transforming selected sections of a network, e.g. Web documents accessed from network sites, e.g. Web sites, into e-mail messages
CN100450108C (zh) * 2006-03-23 2009-01-07 华为技术有限公司 一种采用数据同步处理电子邮件的系统、装置及方法
CN101589588A (zh) * 2006-04-26 2009-11-25 摩邮有限公司 用于电子邮件网关的方法和装置
CN101106537A (zh) * 2006-07-14 2008-01-16 华为技术有限公司 一种选择性下载电子邮件的方法
KR100859664B1 (ko) * 2006-11-13 2008-09-23 삼성에스디에스 주식회사 전자메일의 바이러스 감염여부 판정방법
JP5124527B2 (ja) * 2009-05-26 2013-01-23 株式会社日立製作所 メール中継装置
CN101789105B (zh) * 2010-03-15 2013-01-30 北京安天电子设备有限公司 一种在数据包的级别动态检测邮件附件病毒的方法
CN102158819B (zh) * 2011-01-25 2016-12-07 华为终端有限公司 用于移动设备显示电子邮件处理方法、服务器及移动设备
US10409982B2 (en) * 2012-07-18 2019-09-10 Zixcorp Systems, Inc. Secure data access for multi-purpose mobile devices
US20140164529A1 (en) * 2012-12-07 2014-06-12 Linkedln Corporation Communication systems and methods

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007087327A (ja) * 2005-09-26 2007-04-05 Ntt Software Corp 電子メール処理プログラム
JP2007151159A (ja) 2007-01-15 2007-06-14 Softbank Mobile Corp メールプロキシサーバ装置
US20080172663A1 (en) 2007-01-16 2008-07-17 Lg Electronics Inc. Method of displaying attachment file list in mobile communication terminal, method of downloading and uploading attachment file using e-mail protocol, and mobile communication terminal for performing the same

Also Published As

Publication number Publication date
JP2016523408A (ja) 2016-08-08
CN103609078B (zh) 2017-02-08
EP2985957A1 (en) 2016-02-17
US20160112356A1 (en) 2016-04-21
KR20160003265A (ko) 2016-01-08
JP6156765B2 (ja) 2017-07-05
WO2014205669A1 (zh) 2014-12-31
EP2985957B1 (en) 2019-08-07
CN103609078A (zh) 2014-02-26
ES2747380T3 (es) 2020-03-10
EP2985957A4 (en) 2016-04-20

Similar Documents

Publication Publication Date Title
KR101729637B1 (ko) 네트워크 장치 및 이메일 요구 처리 방법
US11121995B2 (en) Encoding executable instructions and computational state in email headers
US20090300127A1 (en) E-mail forwarding method and system
US20080082853A1 (en) Passing client or server instructions via synchronized data objects
TW201248403A (en) Web page link detection method, device and system
JP2008210203A (ja) 電子メール処理方法および電子メール処理システム
WO2020102349A1 (en) Methods, systems, and apparatus for email to persistent messaging and/or text to persistent messaging
WO2011124168A2 (zh) 共享文件的方法和系统
CN105827512A (zh) 一种通过碎片化多云存储的电子邮件通信方法
US20170118149A1 (en) Deduplication of e-mail content by an e-mail server
JP2014511075A (ja) 国際化eメールシステムと非国際化eメールシステムとのメッセージ伝送
KR20210134648A (ko) 이메일 보안 분석
US20200153781A1 (en) Methods, Systems, and Apparatus for Text to Persistent Messaging
US9426112B1 (en) Preventing modification of an email
US8676907B2 (en) Relay apparatus, relay method and recording medium
US20090150496A1 (en) Automated translator for system-generated prefixes
US10749835B2 (en) Method and system for tracking an email message
JP6250778B1 (ja) メールサーバ装置、メールサービス方法、ならびに、プログラム
JP2005317029A (ja) セキュアな電子メールフォーマットの伝送
JP2013521727A (ja) 代替eメール配信
WO2017071216A1 (zh) 移动终端的邮件正文的显示方法及装置
CN102655484A (zh) 通过电子邮件添加联系人的方法、客户端及系统
JP2009188805A (ja) 電子メールシステム
CN105991395A (zh) 附件替换方法及装置
US20220086185A1 (en) Method and system for determining spam url

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant