KR20100114608A - Secure data transmission for ata-based virtual storage system - Google Patents
Secure data transmission for ata-based virtual storage system Download PDFInfo
- Publication number
- KR20100114608A KR20100114608A KR1020090033061A KR20090033061A KR20100114608A KR 20100114608 A KR20100114608 A KR 20100114608A KR 1020090033061 A KR1020090033061 A KR 1020090033061A KR 20090033061 A KR20090033061 A KR 20090033061A KR 20100114608 A KR20100114608 A KR 20100114608A
- Authority
- KR
- South Korea
- Prior art keywords
- iata
- dragon
- field
- ata
- message
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0457—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3242—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
본 발명은 iATA(internet Advanced Technology Attachment) 프로토콜에 관한 것으로 보다 상세하게는 인터넷 상에서 ATA 스토리지를 사용하여 저장 공간 서비스를 제공하는 경우 데이터 송수신시에 발생될 수 있는 외부의 공격에도 안전하게 데이터를 송수신할 수 있는 ATA 기반 가상 저장 시스템을 위한 안전한 데이터 전송 방법에 관한 것이다.The present invention relates to the Internet Advanced Technology Attachment (iATA) protocol, and more particularly, to provide a storage space service using ATA storage over the Internet, and can safely transmit and receive data even when an external attack may occur during data transmission and reception. The present invention relates to a secure data transmission method for an ATA based virtual storage system.
유비쿼터스 컴퓨팅 환경이 급속하게 성장하면서 모바일 기술은 통신과 정보 공유에서 이동성을 강화하는데 중요한 역할을 하고 있다. 모바일 기기의 개발이 대폭 증가하였으나 데이터의 저장 공간이 소용량이어서 저장 공간 부족에 대한 요구가 거세게 대두되고 있다. 이러한 모바일 기기의 저장 능력의 제한을 해결하는 하나의 방법으로 네트워크의 저장 공간에 데이터를 저장시키는 것이 하나의 솔루션이 될 수 있을 것이다.As the ubiquitous computing environment grows rapidly, mobile technology plays an important role in enhancing mobility in communications and information sharing. Although the development of mobile devices has increased significantly, the demand for shortage of storage space is increasing due to the small amount of data storage space. One solution to this limitation of the storage capabilities of mobile devices is to store data in the storage space of the network.
현재 하드 디스크는 SCSI와 ATA 두가지 타입이 있으며 SCSI 디스크 경우는 이미 국제표준화된 iSCSI(Internet SCSI) 프로토콜을 통해 원격의 SCSI 하드 디스 크를 마치 로컬 디스크로 인식할 수 있다.Currently, there are two types of hard disks, SCSI and ATA. In the case of SCSI disks, remote SCSI hard disks can be recognized as local disks through the internationalized iSCSI (Internet SCSI) protocol.
모바일 기기 사용자에게 인터넷상의 저장 공간을 제공하는 방법으로 가상 저장시스템인 스카시(Small Computer System Interface: SCSI) 저장장치를 사용한 서버에 데이터의 저장이 가능하지만 스카시 저장장치는 고비용이며 별도의 카드를 장착하여야 한다.Although it is possible to store data on a server using virtual storage system SCSI (Small Computer System Interface) storage device to provide mobile device users with internet storage space, SCSI storage device is expensive and requires a separate card. do.
따라서 저비용이며 별도의 카드 장착이 필요 없는 ATA 스토리지를 사용하여 인터넷 상에서 저장 공간을 제공하는 경우 모바일 기기(mobile devices)의 저장 공간의 한계 문제를 해소시킬 수 있다.Therefore, if the storage space on the Internet using the low-cost ATA storage does not require a separate card, it can solve the limitation of the storage space of the mobile devices (mobile devices).
하지만 현재까지 ATA 디스크는 iSCSI와 같은 가상 스토리지 프로토콜이 존재하지 않았으나 최근에 새롭게 iATA 프로토콜을 개발하였다.Until now, however, ATA disks did not have virtual storage protocols such as iSCSI, but recently developed iATA protocol.
그러나 iATA(internet Advanced Technology Attachment) 프로토콜을 사용하는 ATA 스토리지를 이용하여 인터넷 상에서 저장 공간을 제공하는 경우 데이터의 보안 처리가 없으므로 공개된 유비쿼터스 TCP/IP 네트워크를 통하여 데이터를 송수신하는 것은 악의 적인 보안 공격에 노출될 수 있는 문제점이 있다.However, when providing storage space over the Internet using ATA storage using the Internet Advanced Technology Attachment (iATA) protocol, there is no secure processing of data, so sending and receiving data over an open ubiquitous TCP / IP network is a malicious security attack. There is a problem that can be exposed.
전술한 iATA(internet Advanced Technology Attachment) 프로토콜은 새로운 블록레벨 네트워크 저장 프로토콜로, 모바일 기기에서 보내는 ATA 명령이 TCP/IP 네트워크를 통하여 송신이 가능하므로 모바일 기기를 이용하여 무선으로 서버의 ATA 디스크에 인터넷 접속하여 데이터의 저장 등이 가능하다.The above-mentioned Internet Advanced Technology Attachment (iATA) protocol is a new block-level network storage protocol. Since the ATA commands sent from the mobile device can be transmitted through the TCP / IP network, the Internet access to the server's ATA disk wirelessly using the mobile device. Data can be stored.
한편, iATA(internet Advanced Technology Attachment) 프로토콜을 이용하여 보안 없이 TCP/IP 네트워크를 통하여 데이터를 송수신시 악의 적인 보안 공격에 노 출되는 경우에는 중요한 데이터의 손실뿐만 아니라 데이터의 수정 또는 삽입, 그리고 제어 데이터의 삽입 등과 같은 다양한 공격에 당할 수 있으므로 ATA 스토리지를 사용하여 인터넷 상에서 저장 공간을 제공하는 경우 iATA 프로토콜의 보안 문제를 해결하는 것이 시급한 과제이다.On the other hand, if the data is exposed to a malicious security attack by using the Internet Advanced Technology Attachment (iATA) protocol to transmit and receive data over a TCP / IP network without security, not only the loss of important data but also the modification or insertion of data and control data Since it can be attacked by various attacks such as the insertion of data, it is urgent to solve the security problem of the iATA protocol when using ATA storage to provide storage space over the Internet.
본 발명은 상술한 문제점을 해결한 것으로, 본 발명은 보안과 효율을 충족하는 안전한 데이터 송신(secure data transmission)이며 패킷단위 보안(Per-packet shield)이 가능한 iATA(internet Advanced Technology Attachment) 프로토콜의 보안에 관한 것으로 데이터의 송수신시 드래곤 스트림 사이퍼(Dragon stream cipher)와 드래곤 맥(Dragon-MAC)으로 암호화 및 인증 처리하여 외부의 해킹과 같은 공격에도 안전하게 데이터를 송수신할 수 있으며 효율이 뛰어난 에이티에이 기반 가상 저장 시스템을 위한 안전한 데이터 전송 방법을 제공하는 것을 목적으로 한다.The present invention solves the above-described problems, the present invention is secure data transmission (security) and the efficiency of the Internet Advanced Technology Attachment (iATA) protocol capable of per-packet shield (packet shield) It is related to Dragon Stream Cipher and Dragon Mac (MAC) for data transmission and reception, so that data can be safely transmitted and received against attacks such as external hacking. It is an object of the present invention to provide a secure data transmission method for a storage system.
상기한 목적을 달성하기 위한 본 발명의 방법은 유무선 단말기와 인터넷 상의 서버사이에 iATA 프로토콜을 이용하여 데이터를 송수신하는 데에 있어서, 유무선 단말기에서 송신할 데이터를 드래곤 스트림 사이퍼로 암호화하는 제 1 단계와, 드래곤 스트림 사이퍼로 암호화한 데이터를 드래곤 맥으로 인증하고 4바이트 크기의 메시지 인증코드를 생성 부가하여 iATA 프로토콜 데이터 유닛을 송신하는 제 2 단계와, 서버에서 상기 iATA 프로토콜 데이터 유닛을 수신하면 메시지 인증코드를 복호화하여 비교하여 일치하면 명령에 따라 처리하는 제 3단계를 포함함을 특징으로 한다.According to an aspect of the present invention, a method for transmitting and receiving data using an iATA protocol between a wired / wireless terminal and a server on the Internet includes a first step of encrypting data to be transmitted by a wired / wireless terminal with a dragon stream cipher; And authenticating the data encrypted with the Dragon Stream Cypher with the Dragon Mac and generating and adding a 4-byte message authentication code to transmit the iATA protocol data unit, and upon receiving the iATA protocol data unit from the server, a message authentication code. And decrypts, compares, compares, and matches a third step according to an instruction.
또한 제 3단계에서 메시지 인증코드가 일치하지 않는 경우 해킹이나 공격받은 데이터로 파악하여 서버에서 상기 iATA 프로토콜 데이터 유닛을 드롭시키는 것 을 포함함을 특징으로 하며, 서버는 iATA 프로토콜 데이터 유닛을 수신할 때 마다 드래곤 맥으로 메시지를 수신하며 메시지를 복호화하여 상기 iATA 프로토콜 데이터 유닛에 부가된 메시지 인증 코드와 비교하여 정상 여부를 판단함을 특징으로 한다.In addition, in the third step, if the message authentication code does not match, characterized in that the hacked or attacked data to drop the iATA protocol data unit from the server, characterized in that when the server receives the iATA protocol data unit Each message is received by the Dragon Mac, and the message is decrypted and compared with the message authentication code added to the iATA protocol data unit to determine whether it is normal.
또한 본 발명의 제 3 단계는, 메시지 인증코드가 일치하면 드래곤 스트림 사이퍼로 상기 iATA 프로토콜 데이터 유닛을 복호화하는 단계와, 복호화된 상기 iATA 프로토콜 데이터 유닛을 요청 명령에 따라서 상기 서버의 디스크에 쓰기하거나 상기 서버로부터 데이터를 읽기하는 단계와, 서버에서 상기 유무선 단말기로 송신할 데이터가 있는 경우 상기 드래곤 사이퍼로 암호화하고 드래곤 맥으로 인증하여 상기 유무선 단말기로 송신하는 단계를 포함함을 특징으로 한다.The third step of the present invention is to decrypt the iATA protocol data unit with a dragon stream cipher if the message authentication code matches, and write the decrypted iATA protocol data unit to a disk of the server according to a request command, or And reading data from the server and encrypting the dragon cipher with the dragon cipher and authenticating the dragon mac to the wired / wireless terminal when there is data to be transmitted from the server to the wired / wireless terminal.
또한 제 1 단계는 유무선 단말기에서 송신할 iATA 공통 헤더와 iATA 데이터 부분을 드래곤 스트림 사이퍼로 암호화하며, 제 2 단계는 드래곤 맥으로 인증하고 원본의 iATA 프로토콜 데이터 유닛의 길이 정보를 지정한 4바이트 크기의 페이로드 필드를 부가하여 송신함을 특징으로 한다.In addition, the first step encrypts the iATA common header and the iATA data portion to be transmitted from the wired / wireless terminal with Dragon Stream Cypher. The second step is a 4-byte payload that authenticates the Dragon Mac and specifies length information of the original iATA protocol data unit. The load field is added and transmitted.
또한 본 발명의 iATA 프로토콜 데이터 유닛은 가변 사이즈를 가지는 다음 페이로드의 페이로드 길이 및 상기 페이로드에 포함된 메시지의 형태정보를 포함하는 iATA 공통 헤더 세그먼트 필드와,읽거나 쓰기 위한 ATA 명령, 어드레스 및 데이터를 포함하거나 구성 파라미터 및 시스템 상세 정보를 포함하는 ATA 명령 블록 또는 설정/질의 메시지 필드와, ATA 명령 블록 메시지 또는 설정/질의 메시지 필드에 포함된 메시지에 따른 데이터를 포함하는 데이터 필드와, 암호화 이전의 원본 데이터의 크기를 나타내는 4바이트 크기의 페이로드 필드와, 4바이트 크기의 메시지 인증 코드 필드로 구성되고 상기 iATA 공통 헤더 세그먼트 필드와 상기 데이터 필드는 드래곤 스트림 사이퍼와 드래곤 맥으로 암호화 및 인증되어 송수신됨을 특징으로 한다.In addition, the iATA protocol data unit of the present invention includes an iATA common header segment field including the payload length of a next payload having a variable size and the type information of a message included in the payload, an ATA command, an address, ATA command block or setting / query message fields containing data or containing configuration parameters and system details, data fields containing data according to the messages contained in the ATA command block message or setting / query message fields, and before encryption And a 4-byte payload field indicating the size of the original data of the message, and a 4-byte message authentication code field, wherein the iATA common header segment field and the data field are encrypted and authenticated by Dragon Stream Cypher and Dragon Mac to transmit and receive. It is characterized by.
또한 iATA 공통 헤더 세그먼트 필드는 메시지의 형태 정보를 나타내는 동작 메시지 타입 필드와, ATA 스토리지 및 이름을 식별하기 위한 정보를 나타내는 장치식별 필드와, 세션 관리 정보를 나타내는 세션식별 필드와, 가변 사이즈를 가지는 다음 페이로드의 길이를 나타내는 페이로드 길이 필드와, ATA 요청/ 응답 매핑 정보를 나타내는 타스크 태그 필드로 구성되고 드래곤 스트림 사이퍼와 드래곤 맥으로 암호화 및 인증되어 송수신됨을 특징으로 한다.The iATA common header segment field may also include an action message type field indicating message type information, a device identification field indicating information for identifying ATA storage and a name, a session identification field indicating session management information, and a variable size. It consists of a payload length field indicating the length of the payload, and a task tag field indicating the ATA request / response mapping information, and is encrypted and authenticated by the Dragon Stream Cypher and the Dragon Mac.
본 발명은 iATA 프로토콜을 사용하여 TCP/IP 네트워크로 데이터를 송수신시 외부의 악의적인 공격으로 인한 중요 데이터 손실, 데이터의 수정 또는 삽입, 그리고 제어데이터의 삽입 등의 문제에 대응할 수 있으므로 안전하게 데이터를 송수신할 수 있다.The present invention can cope with problems such as loss of important data, correction or insertion of data, insertion of control data, and the like due to external malicious attacks when sending and receiving data over a TCP / IP network using the iATA protocol. can do.
또한 본 발명은 모바일 기기용 iATA 기반 원격 저장 서비스가 가능한 것으로 효율적이고 경량이며 빠르고 비밀의 유지와 데이터 원본 인증과 보전, 응답 보호 등의 패킷단위 보안을 처리하는 효과가 있다.In addition, the present invention provides an iATA-based remote storage service for mobile devices, which is efficient, lightweight, fast, and has the effect of handling packet-based security such as confidentiality, data source authentication, integrity, and response protection.
또한, 본 발명은 노트북, PC나 서버에 설치가 간편하고 비용이 저렴한 ATA 스토리지를 이용하여 인터넷 상의 원격 저장 공간 서비스를 제공하는 경우 효율과 보안 문제가 해결되므로 다수의 모바일 기기 사용자에게 원하는 원격 저장 공간 서 비스를 안전하고 원활하게 제공할 수 있다.In addition, the present invention solves the problem of efficiency and security when providing a remote storage service on the Internet using ATA storage that is easy to install and low-cost in a notebook, PC or server, so that the remote storage space desired for a large number of mobile device users It can provide services safely and smoothly.
이하, 본 발명의 실시 예를 첨부한 도면을 참조하여 설명한다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 생략될 것이라는 것을 유의하여야 한다.It should be noted that in the following description, only parts necessary for understanding the operation according to the present invention will be described, and descriptions of other parts will be omitted.
최근에 무선으로 연결되는 모바일 기기에 설치하여 TCP/IP 네트워크로 ATA 기기의 명령과 데이터를 송수신할 수 있는 iATA(internet Advanced Technology Attachment) 프로토콜을 개발했다.Recently, the company developed the Internet Advanced Technology Attachment (iATA) protocol, which can be installed on mobile devices connected wirelessly and send and receive commands and data from ATA devices over a TCP / IP network.
본 발명은 iATA 프로토콜을 위한 보안에 관한 것으로, 송수신 데이터를 드래곤 스트림 사이퍼(Dragon stream cipher)와 드래곤 맥(Dragon-MAC)으로 암호화 및 인증 처리하여 모바일 기기와 같은 자원 제한 환경에서 데이터를 송수신시 보안과 효율을 충족하며 악의 적인 보안 공격에도 안전하고 효율적이며 경량이고 빠르며 비밀의 유지와 데이터 원본 인증과 보전, 응답 보호 등의 패킷 단위 보안을 처리하는 ATA 기반 저장 시스템을 위한 보안 데이터 전송 방법이다.The present invention relates to security for the iATA protocol, and encrypts and authenticates transmitted and received data with Dragon stream cipher and Dragon Mac (Dragon-MAC) to secure data when transmitting and receiving data in a resource-restricted environment such as a mobile device. It is a secure data transmission method for ATA-based storage systems that meets the needs of security and efficiency, and is safe, efficient, lightweight, and fast, and handles packet security such as confidentiality, data source authentication, integrity, and response protection.
도 1은 본 발명의 iATA(internet Advanced Technology Attachment) 프로토콜의 보안모듈이 설치된 프로토콜 계층 구조를 나타낸 도면이다.1 is a diagram illustrating a protocol layer structure in which a security module of the Internet Advanced Technology Attachment (iATA) protocol of the present invention is installed.
도 1은 클라이언트(200)인 유무선 단말기와 iATA 서버(300) 사이에 보안 데이터를 송수신할 수 있는 프로토콜 계층 구조를 도시한 것으로, iATA(internet Advanced Technology Attachment) 프로토콜의 보안모듈이 설치된 프로토콜 계층 구조는 물리 계층(Physical Layer), 데이터 링크 계층(Data Link Layer) 네트워크 계 층(Network Layer), 전송 계층(Transport Layer)과 어플리케이션 계층(application layer)으로 구성된다.FIG. 1 illustrates a protocol hierarchy structure capable of transmitting and receiving secure data between a wired / wireless terminal, which is a
한편 클라이언트(200)는 컴퓨터, 노트북, PDA, 이동통신 단말기 등의 인터넷이 가능한 유무선 단말기를 포함한다. iATA 서버(300)는 iATA 컴퓨터로 구현할 수 있다.Meanwhile, the
통상 인터넷망에서의 노드들은 통상 물리 계층(Physical Layer), 데이터 링크 계층(Data Link Layer) 네트워크 계층(Network Layer)을 사용하여 클라이언트(100)와 iATA 서버(120) 사이의 보안 데이터의 송수신을 처리한다.Nodes in the Internet generally handle the transmission and reception of secure data between the client 100 and the iATA server 120 using a physical layer, a data link layer, and a network layer. do.
전송 계층(Transport Layer)인 TCP 계층은 병렬(IDE)/직렬(Serial) ATA 인터페이스 통신 모델에서 신뢰성 있는 ATA 명령 블록들의 전송, ATA 응답들과 데이터들 전송하기 위한 통신링크를 제공한다. 이때 형성되는 TCP 연결은 하나의 세션에 대해 하나만 형성된다.The TCP layer, which is a transport layer, provides a communication link for transmitting reliable ATA command blocks, ATA responses, and data in a parallel / serial ATA interface communication model. At this time, only one TCP connection is formed for one session.
전송 계층, 네트워크 계층, 데이터 링크 계층 및 물리 계층의 동작은 클라이언트(200) 및 iATA 서버(300)의 랜(LAN) 모듈에서 수행된다.Operation of the transport layer, network layer, data link layer, and physical layer is performed in a LAN module of the
어플리케이션 계층(application layer)의 클라이언트(200)의 블록 입출력 모듈(Block IO module)(210)은 사용자에게 ATA 스토리지가 로컬장치처럼 보이도록 하기 위한 동작을 제어한다.The
ATA 모듈(220)은 ATA 스토리지를 로컬장치처럼 인식하고, iATA 서버(300)에 장착된 ATA 스토리지에 데이터를 읽고 쓰기 위한 ATA 명령, ATA 응답들에 대해 정의하고 제공한다. 즉 클라이언트(200)의 ATA 모듈은 iATA 서버(300)의 ATA 모 듈(320)을 제어하기 위한 ATA 명령 및 응답들을 관리한다.The ATA
클라이언트(200)의 iATA 모듈(230)은 클라이언트(200) 단말기에서 송신할 데이터들을 iATA 프로토콜 데이터 유닛(iATA PDU)으로 생성하고, iATA 서버(300)에서 iATA 프로토콜 데이터 유닛의 수신을 마치면 iATA 서버(300)와의 종료를 위한 명령 및 ATA 명령, ATA 응답 및 데이터들을 처리한다.The iATA
또한 본 발명의 iATA 모듈(230)에는 보안모듈(240)이 설치되어 iATA 프로토콜 데이터 유닛(iATA PDU)으로 생성한 데이터를 드래곤 스트림 사이퍼(Dragon stream cipher)로 암호화한다.In addition, the iATA
드래곤 스트림 사이퍼(Dragon stream cipher)로 암호화된 iATA 프로토콜 데이터 유닛의 암호문(cipehertext)은 다시 드래곤 맥(Dragon-MAC)으로 인증 처리하여 4바이트의 메시지 인증 코드(MAC: Message Authentication Code)를 생성하고, 생성된 4바이트의 메시지 인증 코드(MAC: Message Authentication Code)는 새롭게 암호화된 iATA 프로토콜 데이터 유닛의 끝부분에 삽입된다.The cipherhertext of the iATA protocol data unit encrypted with the Dragon stream cipher is again authenticated with Dragon-MAC to generate a 4-byte Message Authentication Code (MAC). The generated 4-byte Message Authentication Code (MAC) is inserted at the end of the newly encrypted iATA protocol data unit.
한편 암호화된 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)에는 iATA 헤더도 포함되어 있으므로 TCP에서는 암호화된 iATA 프로토콜 데이터 유닛의 시작과 끝지점을 파악할 수 없으며 이로 인하여 데이터의 손실이 발생될 수 있으며 이를 예방하기 위해 암호화된 iATA 프로토콜 데이터 유닛의 맨 앞에 4 바이트의 페이로드 필드 (payload length)가 부가되며 이는 암호화되기 전 원본의 iATA 프로토콜 데이터 유닛의 길이를 지정한다.Encrypted iATA PDUs also contain an iATA header, so TCP cannot determine the beginning and end of an encrypted iATA protocol data unit, which can result in data loss. A payload length of 4 bytes is added to the beginning of the encrypted iATA protocol data unit, which specifies the length of the original iATA protocol data unit before it is encrypted.
결국 본 발명의 보안모듈(240)에서는 원본의 iATA 프로토콜 데이터 유닛을 드래곤 스트림 사이퍼(Dragon stream cipher)로 암호화하고 다시 드래곤 맥(Dragon-MAC)으로 인증 처리하며, 최종적으로 암호화된 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)의 앞에는 4 바이트의 페이로드 필드 (payload length)가 부가되며 끝부분에는 4바이트의 메시지 인증 코드(MAC: Message Authentication Code)가 부가되어 송신된다.As a result, the
한편, iATA 서버(300) 측에는 어플리케이션 계층에서 동작하는 ATA 스토리지 모듈(310)과, ATA 모듈(320)과 iATA 모듈(330)과 보안모듈(340)을 포함한다.Meanwhile, the iATA
ATA 스토리지 모듈(310)은 ATA 스토리지에 데이터를 읽고 쓰기 위한 동작을 제어한다. ATA 모듈(320)은 다수의 클라이언트들에 할당된 ATA 스토리지를 관리하고, ATA 스토리지를 클라이언트의 로컬장치로 인식하도록 제공하고, 인식 후 클라이언트로부터의 읽기 및 쓰기 요청에 대한 ATA 요청에 대해 ATA 스토리지 모듈을 제어하여 데이터를 읽거나 쓰도록 제어한다.The ATA
또한 ATA 스토리지를 로컬장치로 인식하기 위한 파라미터 협상을 제어하고, 파라미터 협상 제어에 의한 ATA 스토리지 인식, ATA 요청, 응답 명령에 관한 데이터를 포함하는 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)을 송수신한다.It also controls parameter negotiation for recognizing ATA storage as a local device, and transmits and receives an iATA protocol data unit (Encrypted iATA PDU) including data on ATA storage recognition, ATA request, and response command by parameter negotiation control.
iATA 서버(300)는 클라이언트(200)로부터 암호화된 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)을 수신하면 보안모듈(340)에서는 암호화 과정의 역순으로 복호화하는 과정이 진행된다.When the
iATA 서버(300)로 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)가 수신될 때마다 암호화된 메시지가 수신되며 이를 드래곤 맥(Dragon-MAC)을 이용하여 계산 하고, 수신된 암호화된 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)에 있는 4바이트의 MAC(Message Authentication Code)와 비교하며, MAC 값이 일치하면 드래곤 스트림 사이퍼(Dragon stream cipher)를 이용하여 iATA 프로토콜 데이터 유닛을 복호화하고 MAC 값이 일치하지 않는 경우는 해당 iATA 프로토콜 데이터 유닛은 공격을 당한 메시지로 파악하여 드롭시킨다.Whenever an iATA protocol data unit (Encrypted iATA PDU) is received to the
본 발명은 암호 알고리즘(cryptographic encryption algorithm)으로 드래곤 스트림 사이퍼를 사용하고 암호 인증 알고리즘(cryptographic authentication algorithm)으로 드래곤 맥을 이용하여 데이터를 암호화된 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)으로 생성한 후 송수신하므로 메시지 조작, 삽입, 삭제 등을 포함하는 능동 또는 수동적인 보안 위협에 대하여도 안전하게 데이터를 송수신할 수 있다.Since the present invention generates and transmits data to an encrypted iATA protocol data unit (Encrypted iATA PDU) using Dragon Stream Cypher as a cryptographic encryption algorithm and a Dragon Mac as a cryptographic authentication algorithm, It can also securely send and receive data against active or passive security threats, including message manipulation, insertion, and deletion.
도 2는 본 발명의 드래곤 스트림 사이퍼를 설명하는 도면이다.2 is a diagram illustrating a dragon stream cipher of the present invention.
드래곤 스트림 사이퍼와 드래곤 맥은 보안과 효율을 만족하는 것으로, 알려진 여러 공격에 대하여 안전하며, 빠른 리키잉(rekeying) 성능을 가지므로 이동 또는 무선 통신 어플리케이션에 적합하다.Dragon Stream Cypher and Dragon Mac meet security and efficiency, are safe against many known attacks, and have fast rekeying capabilities, making them ideal for mobile or wireless communications applications.
드래곤 스트림 사이퍼(Dragon stream cipher)는 키 스트림 생성(key stream generation)이 고속이고 4킬로 바이트의 메모리만으로 초당 기가비트의 처리가 가능하며, 모바일 기기의 기밀성 유지와 구현에 아주 적절하다.Dragon stream ciphers provide fast key stream generation, can handle gigabits per second with only 4 kilobytes of memory, and are well suited for maintaining and maintaining the confidentiality of mobile devices.
드래곤 스트림 사이퍼는 eSTREAM, ECRYPT 스트림 사이퍼 프로젝트(stream cipher project)로 동기되는 워드 기반 스트림 사이퍼이다.Dragon Stream Cipher is a word-based stream cipher that is synchronized with the eSTREAM, ECRYPT stream cipher project.
드래곤 스트림 사이퍼는 라아지 싱글 워드(large single word) 기반 NLFSR, 1024 비트의 비선형 피드백 시프트 레지스터, F 함수로 표시되는 스테이트 업데이트 함수와 M으로 표시되는 64 비트의 메모리로 구성된다.Dragon Stream Cypher consists of a large single word-based NLFSR, a 1024-bit nonlinear feedback shift register, a state update function represented by the F function, and a 64-bit memory represented by the M.
도 2를 참조하면 드래곤 F 함수는 키 셋업(key setup)과 키스트림 생성(keystream generation)에 이용되고, 식스 32비트 워드 대(six 32-bits word) 식스 32비트 워드(six 32-bits word)의 역변환이 가능한 매핑이다.Referring to FIG. 2, the Dragon F function is used for key setup and keystream generation, and six 32-bits word six 32-bits word. This is a mapping that can be inversely transformed.
도 2에서 입력 워드는 a, b, c, d, e, f이고 출력워드는 a', b', c', d', e', f'이다.In Figure 2 the input words are a, b, c, d, e, f and the output words are a ', b', c ', d', e ', f'.
식스 컴포넌트 함수는 G1, G2, G3, H1, H2, H3으로 표시되고 F 함수는 고도한 비선형성을 제공한다.Six component functions are represented by G1, G2, G3, H1, H2, H3, and the F function provides a high degree of nonlinearity.
G, H 함수는 두개의 8*32 비트 s-박스로부터 가상의 32*32 s-박스를 형성하도록 구성된다. 32비트의 입력은 4바이트(x = x1 || x1 || x2 || x3)로 나눠지고 각 바이트는 8*32 s-박스를 통과하고, 4개의 32비트 출력은 바이너리 에디션(binary addition)을 이용하여 결합된다.The G and H functions are configured to form a virtual 32 * 32 s-box from two 8 * 32 bit s-boxes. 32-bit input is divided into 4 bytes (x = x1 || x1 || x2 || x3), each byte goes through an 8 * 32 s-box, and four 32-bit outputs contain a binary addition. Combined using.
드래곤은 128비트 키와 초기화 벡터를 이용한 간단한 키 전술을 이용한다.Dragon uses simple key tactics with 128-bit keys and initialization vectors.
1024 비트의 내부 상태는 초기에는 연속의 키와 초기화 벡터 그리고 이것들을 8개의 128비트 워드 W0~W7로 나누어진 것들로 채워지고, 8개 128비트의 스와핑(swapping)과 F함수 프로세싱의 16회 반복을 포함한 광범위한 F 함수를 이용한다.The internal state of 1024 bits is initially populated with a sequence of keys and initialization vectors and those divided into eight 128-bit words W0 to W7, and eight iterations of eight 128-bit swapping and F-function processing. Use a wide range of F functions, including
도 2의 하단에 드래곤 키 초기화 함수(Dragon's Key Initialization Function)의 예를 간단히 나타내었다.An example of a Dragon's Key Initialization Function is briefly shown at the bottom of FIG. 2.
드래곤 스트림 사이퍼의 키스트림 생성(Keystream generation)은 초기화 때와 같은 성분을 이용한다. 1024 비트의 NLFSR은 32개의 32비트 워드로 나누어지고 Bi, 0 ≤ i ≤ 31로 표시한다. 각 라운드마다 내부 상태로부터 얻어지는 6개의 워드는 카운터로 동작하는 64비트 메모리 M을 포함하는 F 함수의 입력으로 사용된다. 키스트림 생성(Keystream generation)의 각 라운드 동안 64비트 워드 K의 출력과 업데이트된 상태 B와 메모리 M이 제공된다.The keystream generation of the dragon stream cipher uses the same components as the initialization. The 1024-bit NLFSR is divided into 32 32-bit words and denoted by Bi, 0 ≦ i ≦ 31. In each round, six words from the internal state are used as inputs to the F function, which contains a 64-bit memory M that acts as a counter. During each round of keystream generation, the output of the 64-bit word K and the updated state B and memory M are provided.
드래곤 스트림 사이퍼는 보안과 효율을 만족하는 것으로, 알려진 공격에 대하여 안전하며, 빠른 리키잉(rekeying) 성능을 가지므로 이동 또는 무선 통신 어플리케이션에 적합하다.Dragon Stream Cypher satisfies security and efficiency, is safe against known attacks, and has fast rekeying capability, making it suitable for mobile or wireless communications applications.
참고로 드래곤 스트림 사이퍼는 이미 공개된 암호 프로토콜로서 iATA와 같은 가상 스토리지 프로토콜에서 효과적으로 사용될 수 있다.Note that Dragon Stream Cypher is an open cryptographic protocol that can be effectively used in virtual storage protocols such as iATA.
도 3은 본 발명의 드래곤 맥 생성의 예를 설명하는 도면이다.3 is a view for explaining an example of creating a Dragon Mac of the present invention.
참고로 드래곤 맥 또한 드래곤 스트림 사이퍼와 마찬가지로 인증 프로토콜이다.Dragon Mac is also an authentication protocol, just like Dragon Stream Cypher.
드래곤 맥은 MAC 생성을 위한 F 함수가 있으며 드래곤 스트림 사이퍼의 구조를 가지는 메시지 인증 코드 이다.Dragon Mac is a message authentication code that has F function for MAC generation and has structure of Dragon Stream Cypher.
이것은 192비트 대 192비트의 역변환 가능한 매핑으로 MAC로 동작하는 4바이트의 출력을 제공한다. 드래곤 맥은 고도의 비선형성과 낮은 자기상관 효과를 이용하며 F 스테이트 업데이트 함수 구조의 S 박스들에 의하여 제공된다. This is a 192-bit to 192-bit invertible mapping that provides four bytes of output that operate on a MAC. The Dragon Mac utilizes a high degree of nonlinearity and a low autocorrelation effect and is provided by S boxes with F state update function structure.
패킷 메시지의 평문(plaintext)은 암호키(encryption key) Ke 하에 드래곤 스트림 사이퍼로 암호화하고, 32비트의 워드로 생성되는 암호문(ciphertext) Ct 를 생성한다. 연속적으로 MAC 암호키 Km 은 입력 a,b,c,d의 F 함수로 공급된다. 결과적으로 32비트의 MAC는 F 함수의 모든 출력을 XOR하여 얻어진다.The plaintext of the packet message is encrypted with the dragon stream cipher under an encryption key Ke, and generates a ciphertext Ct that is generated as a 32-bit word. Successively, the MAC encryption key Km is fed to the F function of inputs a, b, c, d. As a result, a 32-bit MAC is obtained by XORing all the outputs of the F function.
전술한 바와 같이 참고로 드래곤 맥 또한 드래곤 스트림 사이퍼와 마찬가지로 이미 공개된 암호 인증 프로토콜로 이상으로 상세한 설명을 마친다.As mentioned above, the Dragon Mac, like Dragon Stream Cypher, completes its detailed description with the already published cryptographic authentication protocol.
도 4는 본 발명의 보안 모듈에서 암호화된 iATA 프로토콜 데이터 유닛을 생성하는 개념도이다.4 is a conceptual diagram for generating an encrypted iATA protocol data unit in the security module of the present invention.
본 발명의 클라이언트(200)에 설치되는 보안모듈(240)에서는 송수신할 데이터가 iATA 프로토콜 데이터 유닛(iATA PDU)으로 생성되면 그 가운데 iATA 공통 헤더(420)와 iATA 데이터(440) 부분을 드래곤 스트림 사이퍼(Dragon stream cipher)로 암호화한다.In the
드래곤 스트림 사이퍼(Dragon stream cipher)로 암호화된 iATA 프로토콜 데이터 유닛의 암호문(cipehertext)은 다시 드래곤 맥(Dragon-MAC)으로 암호화하는 MAC 계산과 패킷재캡슐화(Packet Re-encapsulation)하여 4바이트의 메시지 인증 코드(MAC: Message Authentication Code)를 생성한다. 생성된 4바이트의 메시지 인증 코드(MAC: Message Authentication Code)(450)는 새롭게 암호화된 iATA 프로토콜 데이터 유닛의 끝부분에 삽입된다.The cipherhertext of the iATA protocol data unit encrypted with the Dragon stream cipher is again computed by MAC computation and packet re-encapsulation with the Dragon-MAC to authenticate 4 bytes of message. Generate a code (MAC). The generated 4-byte Message Authentication Code (MAC) 450 is inserted at the end of the newly encrypted iATA protocol data unit.
또한 암호화된 iATA 프로토콜 데이터 유닛의 맨 앞에 4 바이트의 페이로드 필드 (payload length)(410)가 부가되며 이는 암호화되기 전 원본의 iATA 프로토콜 데이터 유닛의 길이 정보를 지정하여 송수신한다.In addition, a
도 5는 본 발명의 암호화된 iATA 프로토콜 데이터 유닛의 포맷 구조를 나타낸 도면이다.5 is a diagram illustrating a format structure of an encrypted iATA protocol data unit of the present invention.
본 발명의 암호화된 프로토콜 데이터 유닛(PDU)은 TCP 헤더 필드, IP 헤더 필드와 이더넷 프레임 필드와 iATA 프로토콜 데이터 유닛(PDU) 필드(400)로 구성된다. TCP 헤더 필드, IP 헤더 필드와 이더넷 프레임 필드는 인터넷망에서의 라우팅을 위해 구성된다.The encrypted protocol data unit (PDU) of the present invention consists of a TCP header field, an IP header field and an Ethernet frame field, and an iATA protocol data unit (PDU) field 400. The TCP header field, the IP header field and the Ethernet frame field are configured for routing in the Internet.
본 발명의 암호화된 iATA 프로토콜 데이터 유닛(400) 필드는 4바이트로 이루어져 암호화되기 전의 원본의 iATA PDU의 크기 정보가 기록되는 4 바이트의 페이로드 필드 (payload length)(410), iATA 공통 헤더 세그먼트(iATA Common Header Segment) 필드(420)와 ATA 명령 블록 또는 설정/질의 메시지(430) 필드와 데이터(440) 필드 그리고 4바이트의 메시지 인증 코드(MAC: Message Authentication Code)가 부가되는 4바이트 크기의 MAC 필드(450)로 이루어진다.The encrypted iATA protocol data unit 400 field of the present invention consists of 4 bytes of
iATA 공통 헤더 세그먼트는 16 바이트의 변수이고, ATA 오퍼레이션 메시지 타입의 지정을 할 수 있으며, ATA 명령 블록 또는 설정/질의(configuration/query) 메시지의 지정도 가능하다. 또한 iATA 공통 헤더 세그먼트는 세션 매니지먼트와 ATA 요청 응답 매핑(ATA request response mapping)에서 사용되는 식별(identification), 네이밍(naming), 세션구별(session identity), 태스크 태그 필드(task tag field)와 같은 중요한 값들로 구성할 수 있다.The iATA common header segment is a 16-byte variable that can specify the ATA operation message type and can also specify an ATA command block or configuration / query message. In addition, iATA common header segments are important for identification, naming, session identity, and task tag fields used in session management and ATA request response mapping. Can consist of values.
만약 iATA 공통 헤더 세그먼트에서 설정/질의(configuration/query) 메시지 의 메시지 오퍼레이션(message operation)을 지정한 경우 해당 메시지는 배치 파라미터나 시스템 변수와 같은 아웃오브뱅크(out-of-bank) iATA I/O메시지와의 교환에 사용된다.If you specify a message operation for a configuration / query message in the iATA common header segment, the message is an out-of-bank iATA I / O message such as a batch parameter or system variable. Used to exchange with.
한편 iATA 공통 헤더 세그먼트에서 ATA 명령 블록의 메시지 오퍼레이션 (message operation)을 지정한 경우 해당 메시지는 읽기/쓰기 오퍼레이션 데이터의 송신에 사용된다. 데이터 필드(340)는 ATA 명령 블록 메시지 또는 설정/질의 메시지에 따른 데이터가 삽입된다.Meanwhile, when a message operation of an ATA command block is specified in the iATA common header segment, the message is used for transmission of read / write operation data. The
전술한 iATA 공통 헤더 세그먼트 필드와 데이터 필드는 송수신시에 드래곤 스트림 사이퍼와 드래곤 맥으로 암호화 및 인증하는 방식으로 보안된다.The iATA common header segment field and the data field described above are secured by encrypting and authenticating with Dragon Stream Cypher and Dragon Mac at the time of transmission and reception.
도 6은 도 5의 iATA 공통 헤더 세그먼트 필드(420)의 상세 구성을 나타낸 도면이다.FIG. 6 is a diagram illustrating a detailed configuration of the iATA common
도 6을 참조하면 iATA 공통 헤더 세그먼트 필드(420)는 16Byte로, 동작 타입(Op Type) 필드(311)와 예비(Reserved) 필드(312)와 플래그(Flags) 필드(313)와 에러(Error) 필드(314)와 세션 식별(Session ID) 필드(315)와 장치식별(Device ID) 필드(316)와 페이로드 길이 필드(317)와 타스크 태그(Task Tag) 필드(318)로 구성된다.Referring to FIG. 6, the iATA common
동작 타입(Op Type) 필드(311)는 동작 코드를 나타내며 예비(Reserved) 필드(312)는 향후 사용하게 될 여분의 필드이다. 플래그 필드(313)는 추가 기능을 설정하기 위해 사용되며 에러 필드(314)는 에러가 생긴 경우 상태코드를 나타낸다. 장치 식별 필드(315)는 iATA 장치, 즉 ATA 스토리지들 및 이름을 식별하기 위해 사 용된다. 반면, 세션 식별 필드(316) 및 타스크 태그 필드(318)는 세션 관리 및 ATA 요청/응답 매핑을 위해 사용된다. 페이로드 길이 필드(317)는 가변 사이즈를 가지는 다음 페이로드의 페이로드 길이를 나타낸다.The operation type (Op Type)
도 7은 도 5의 설정/질의 메시지 필드(430)의 세부 구성을 나타낸 도면이다.FIG. 7 is a diagram illustrating a detailed configuration of the setting /
도 7을 참조하면 설정/질의 메시지 필드(430)는 명령/상태 필드(331) 및 스트링 길이(String Length) 필드(332) 및 설정/질의 스트링 페어 필드(333)로 구성된다. 명령/상태 필드(331)는 명령어 및 상태코드를 나타내며 스트링 길이 필드(332)는 다음의 설정/질의 스트링 페어 필드(333)의 길이를 나타낸다. 설정/질의 스트링 페어 필드(333)는 설정/질의 대한 스트링 값을 나타낸다.Referring to FIG. 7, the setup /
도 8은 도 5의 ATA 명령 블록 필드(430)의 상세 구성을 나타낸 도면이다.FIG. 8 is a diagram illustrating a detailed configuration of the ATA
도 8을 참조하면 플래그 필드(334), 에러/피처(Error/Feature) 필드(335), 섹터 카운트 필드(336), 명령/상태(Cmd/Status) 필드(337)와 6개의 로지컬 블록 어드레스(Logical Block Address: LBA) 필드(338)들과 예비 필드(339)와 데이터 필드(341)로 구성된다.Referring to FIG. 8, a
플래그 필드(334)는 추가 기능을 설정하기 위해 사용되며 에러/피처 필드(335)는 에러가 생긴 경우 상태코드를 나타내며, 섹터 카운트 필드(336)는 접근하게 될 섹타의 수를 나타낸다. 명령/상태 필드(337)는 ATA 명령 및 (어떤 상태)상태 정보를 나타내고, 각 LBA 필드(338)는 8비트로서 총 48비트이며, ATA 스토리지의 어드레스를 나타낸다. 데이터 필드(341)는 ATA 스토리지에서 읽고 쓸 데이터로 구성된다.The
도 9는 본 발명의 iATA 모듈에서의 iATA 기반 원격 스토리지 서비스 동작 순서도이다.9 is a flowchart illustrating the operation of an iATA based remote storage service in the iATA module of the present invention.
본 발명에 따른 iATA 기반 원격 스토리지 서비스 과정은 로그인 과정(Login Phase)과 인식 과정(Discovery Phase)과 전체 운영 과정(Full Feature Phase)과 종료 과정(Termination Phase)으로 구성된다.The iATA-based remote storage service process according to the present invention is composed of a login phase, a discovery phase, a full feature phase, and a termination phase.
로그인 과정은 인터넷망을 형성한 다음 수행되며 클라이언트(200) 및 iATA 서버(300)의 인증, 세션 파라미터들의 협상 및 단일 ATA 세션 하의 연결 설정 등을 수행한다.The login process is performed after the internet network is formed, and authentication of the
구체적으로, 클라이언트(200)는 iATA 기반 원격 스토리지 서비스 응용 프로그램을 통해 사용자 식별 정보와 패스워드를 포함하는 iATA 기반 원격 스토리지 서비스 접속 명령이 발생하면 단계711에서 사용자 식별 정보와 패스워드를 포함하는 iATA 인증 메시지(iATA Authentication Message)를 iATA 서버(300)로 전송한다. 사용자 식별 정보와 패스워드는 iATA 프로토콜 데이터 유닛의 설정/질의 메시지에 포함된다. Specifically, when the iATA-based remote storage service access command including the user identification information and the password is generated through the iATA-based remote storage service application, the
iATA 인증 메시지를 수신한 iATA 서버(300)는 iATA 인증 메시지에 포함되어 있는 사용자 식별 정보와 패스워드에 의해 인증을 수행하고, 단계713에서 인증 결과에 따른 iATA 인증 응답 메시지를 클라이언트(200)로 전송한다.The
iATA 인증 응답 메시지가 인증 성공에 대한 메시지이면 클라이언트(200)는 단계715에서 iATA 세션 파라미터 설정 메시지를 iATA 서버(300)로 전송한다.If the iATA authentication response message is a successful authentication message, the
iATA 세션 파라미터 설정 메시지를 수신한 iATA 서버(300)는 포함되어 있는 세션 파라미터들에 의해 구성을 설정하고, 설정 결과에 따른 iATA 세션 파라미터 응답 메시지를 단계717에서 클라이언트(200)로 전송한다. 세션 파라미터들로는 Maximum Sector Count, Maximum Burst length, Maximum Connection 등이 있다.Upon receiving the iATA session parameter setting message, the
클라이언트(200) 및 iATA 서버(300)의 인증 처리 방법으로는 접근 제어 리스트(Access Control List: ACL), 보안 원격 패스워드(Secure Remote Password: SRP) 및 디지털 증명과 같은 방법이 적용될 수 있다. Authentication methods of the
다음으로 인식 과정은 클라이언트(200)에 대해 할당된 ATA 스토리지를 인식하여 로컬 장치처럼 인식하는 과정이다.Next, the recognition process is a process of recognizing ATA storage allocated for the
구체적으로, 클라이언트(200)는 단계719에서 iATA 장치 인식 메시지를 iATA 서버(300)로 전송한다. 장치 인식 메시지는 설정/질의 메시지(Configuration/ Query Message) 내에 포함되어 전달된다.In detail, the
iATA 장치 인식 메시지를 수신한 iATA 서버(300)는 인식 결과에 따른 iATA 장치 인식 응답 메시지(iATA Device Discovery Response)를 클라이언트(200)로 전송한다. 이때, 클라이언트(200)는 ATA 스토리지를 로컬장치로 인식한다. iATA 장치 인식 응답 메시지 역시 설정/질의 메시지(Configuration / Query Message)내에 포함되어 전달된다.Upon receiving the iATA device recognition message, the
전체 운영 과정은 클라이언트(200)에서 iATA 서버(300)의 ATA 스토리지에 쓸 데이터가 발생하거나 저장된 데이터가 있는 경우 ATA 명령 및 데이터들을 송수신하는 과정이다.The entire operation process is a process in which the
구체적으로, 전체 운영 과정에서 클라이언트(200)는 iATA 서버(300)의 ATA 스토리지에 데이터를 읽기 또는 쓰기 위해 단계723에서 ATA 명령 및 데이터를 포함하는 ATA 요청 명령 메시지를 iATA 서버(300)로 전송한다.In detail, in operation 723, the
이때 본 발명에서는 클라이언트(200)의 보안모듈(240)에서 원본의 iATA PDU에는 iATA 공통 헤더와 iATA 데이터 부분을 드래곤 스트림 사이퍼(Dragon stream cipher)로 암호화하고 다시 드래곤 맥(Dragon-MAC)으로 인증 처리한다.At this time, in the present invention, the iATA PDU in the
이렇게 iATA 헤더와 iATA 데이터 부분을 암호화한 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)의 앞에는 4 바이트의 페이로드 필드 (payload length)가 부가되며 끝부분에는 4바이트의 메시지 인증 코드(MAC: Message Authentication Code)가 부가되어 송신된다. 그러나 ATA 명령 블록 또는 설정/질의 메시지는 암호화하지 않고 송신한다.A 4-byte payload field is added in front of the iATA protocol data unit (Encrypted iATA PDU) that encrypts the iATA header and the iATA data portion, and a 4-byte message authentication code (MAC) at the end. Is added and transmitted. However, ATA command blocks or configuration / query messages are sent without encryption.
그러면 iATA 서버(300)의 보안모듈(340)에서는 수신된 ATA 명령에 따른 암호화한 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)에 대한 복호화 과정을 거친 후 통과하면 해당 데이터를 ATA 스토리지에 쓰거나 읽어 오고, 쓴 결과 또는 읽은 데이터를 보안모듈(340)에서 전술한 방식으로 드래곤 스트림 사이퍼(Dragon stream cipher)와 드래곤 맥(Dragon-MAC)으로 암호화 및 인증하여 ATA 응답 메시지와 함께 단계725에서 클라이언트(200)로 전송한다.Then, the
전술한 바와 같이 본 발명은 드래곤 스트림 사이퍼(Dragon stream cipher)와 드래곤 맥(Dragon-MAC)을 이용하여 iATA 공통 헤더와 iATA 데이터를 인증하여 송수신하므로 안전하게 데이터를 송수신하게 된다.As described above, since the present invention authenticates and transmits the iATA common header and iATA data using a dragon stream cipher and a dragon-mac, data is transmitted and received safely.
한편, 종료 과정은 인터넷망의 접속 종료 전에 클라이언트(200) 및 iATA 서 버(300) 양측에서 세션 기록들을 제거하는 과정이다.Meanwhile, the termination process is a process of removing session records from both the
구체적으로 종료 과정에서 클라이언트(200)는 단계727에서 iATA 연결 종료 요청 메시지(iATA Connection Termination Request)를 iATA 서버(300)로 전송한다.In more detail, in the termination process, the
iATA 연결 요청 메시지를 수신한 iATA 서버(300)는 세션기록을 삭제하고, 이에 따른 iATA 연결 종료 응답 메시지를 단계729에서 클라이언트(200)로 전송한다. 그러면 클라이언트(200)도 세션 기록을 삭제하고 종료한다.Upon receiving the iATA connection request message, the
도 10은 본 발명에 따른 모바일 기기를 이용하여 원격의 iATA 기반 스토리지 시스템으로 보안 데이터를 송수신하는 예를 나타낸 도면이다.10 illustrates an example of transmitting and receiving secure data to a remote iATA based storage system using a mobile device according to the present invention.
본 발명의 구성은 클라이언트인 모바일 기기(500)와 엑세스 포인트(Access Point: AP)(520)와 인터넷망과 iATA 서버(300) 등으로 구성되며, 클라이언트는 모바일 기기 외에 인터넷이 가능한 유무선 단말기를 사용할 수 있으며, iATA 서버(300)는 iATA 컴퓨터를 사용할 수 있다.The configuration of the present invention is composed of a
또한 모바일 기기(500)는 무선 인터넷이 가능한 단말기로서, 개인휴대용 정보단말기(Personal Digital Assistant: PDA), PCS 및 CDMA 폰과 무선통신 기능을 구비하는 디지털 카메라, MP3플레이어, 휴대용 멀티미디어 플레이어(Portable Multimedia Player: PMP), 디지털 셋톱 박스 등의 어떠한 디지털 장치도 가능하다.In addition, the
모바일 기기(500)에는 iATA 클라이언트 드라이버가 설치되며 iATA 서버(300)는 ATA 디스크가 설치되며 iATA 서버 드라이버가 설치된다. The iATA client driver is installed in the
본 발명에서 모바일 기기(500)인 PDA(Personal Data Assistant)와 iATA 서버(300)에 설치된 OS(operating system)가 다르더라도 독립적으로 동작이 원활히 처리된다.In the present invention, even if the mobile device 500 (Personal Data Assistant) and the operating system (OS) installed in the
모바일 기기(500)에서 액세스포인트(520)를 통해 인터넷망을 경유하여 iATA 서버(300)에 접속한 후 전술한 인증과정과 인식과정을 거치면 iATA 서버(300)에 연결된 ATA 스토리지가 로컬장치로 인식된다.When the
ATA 스토리지를 로컬장치로 인식 후 데이터의 읽기 또는 쓰기 요청이 필요하면 모바일 기기(500)는 읽기 또는 쓰기에 대한 ATA 명령과 암호화한 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)을 액세스포인트(520)와 인터넷망을 통해 iATA 서버(300)로 송신한다.If the ATA storage is recognized as a local device and a data read or write request is required, the
iATA 서버(300)는 전술한 방식으로 암호화한 iATA 프로토콜 데이터 유닛(Encrypted iATA PDU)을 수신하면 드래곤 스트림 사이퍼(Dragon stream cipher)와 드래곤 맥(Dragon-MAC)을 이용하여 복호화 및 인증 후 수신된 명령에 따라 ATA 스토리지로부터 해당 데이터를 읽어오거나 쓰기를 한다.When the
상술한 바와 같이 본 발명은 모바일 기기(500)를 이용하여 인터넷상의 iATA 서버(300)의 ATA 스토리지를 로컬디스크로 사용하기 위해 데이터 송수신시 iATA 프로토콜에 드래곤 스트림 사이퍼(Dragon stream cipher)와 드래곤 맥(Dragon-MAC)을 적용한 보안모듈로 데이터를 암호화 및 인증하여 송수신하므로 알려진 여러 공격에도 안전하고 효율적으로 데이터를 송수신할 수 있다.As described above, the present invention provides a dragon stream cipher and a dragon Mac (i.e., a dragon stream cipher) to the iATA protocol during data transmission and reception to use the ATA storage of the
지금까지 본 발명의 실시 예의 구성 및 동작에 대해 설명하였다. 본 발명은 상술한 실시 예에 한정되지 않으며, 본 발명의 범위를 벗어나지 않는 한도 내에서 다양한 변형을 가할 수 있다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되 어 정해져서는 안되며 특허청구범위뿐만 아니라 특허청구범위와 균등한 것들에 의해 정해져야 한다.So far, the configuration and operation of the embodiment of the present invention have been described. The present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the claims but also by the equivalents of the claims.
도 1은 본 발명의 iATA 프로토콜의 보안모듈이 설치된 프로토콜 계층 구조를 나타낸 도면.1 is a diagram showing a protocol layer structure in which the security module of the iATA protocol of the present invention is installed.
도 2는 본 발명의 드래곤 스트림 사이퍼를 설명하는 도면.2 illustrates a dragon stream cipher of the present invention.
도 3은 본 발명의 드래곤 맥 생성의 예를 설명하는 도면.3 is a view for explaining an example of dragon Mac generation of the present invention.
도 4는 본 발명의 보안 모듈에서 암호화된 iATA 프로토콜 데이터 유닛을 생성하는 개념도.4 is a conceptual diagram for generating an encrypted iATA protocol data unit in the security module of the present invention.
도 5는 본 발명의 암호화된 iATA 프로토콜 데이터 유닛의 포맷 구조를 나타낸 도면.5 shows the format structure of an encrypted iATA protocol data unit of the present invention.
도 6은 도 5의 iATA 공통 헤더 세그먼트 필드(420)의 상세 구성을 나타낸 도면.FIG. 6 is a diagram illustrating a detailed configuration of an iATA common
도 7은 도 5의 설정/질의 메시지 필드(430)의 세부 구성을 나타낸 도면.FIG. 7 is a diagram showing the detailed configuration of the setting /
도 8은 도 5의 ATA 명령 블록 필드(430)의 상세 구성을 나타낸 도면.8 is a diagram showing the detailed configuration of the ATA
도 9는 본 발명의 iATA 모듈에서의 iATA 기반 원격 스토리지 서비스 동작 순서도.9 is a flowchart illustrating the operation of an iATA based remote storage service in the iATA module of the present invention.
도 10은 본 발명에 따른 모바일 기기를 이용하여 원격의 iATA 기반 스토리지 시스템으로 보안 데이터를 송수신하는 예를 나타낸 도면.10 illustrates an example of transmitting and receiving secure data to a remote iATA based storage system using a mobile device according to the present invention.
<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>
200: 클라이언트 300: iATA 서버200: Client 300: iATA Server
500: 모바일 단말 520: 액세스 포인트500: mobile terminal 520: access point
Claims (13)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090033061A KR101008896B1 (en) | 2009-04-16 | 2009-04-16 | Secure Data Transmission for ATA-based Virtual Storage System |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090033061A KR101008896B1 (en) | 2009-04-16 | 2009-04-16 | Secure Data Transmission for ATA-based Virtual Storage System |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100114608A true KR20100114608A (en) | 2010-10-26 |
KR101008896B1 KR101008896B1 (en) | 2011-01-17 |
Family
ID=43133724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090033061A KR101008896B1 (en) | 2009-04-16 | 2009-04-16 | Secure Data Transmission for ATA-based Virtual Storage System |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101008896B1 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1679066B (en) * | 2002-07-12 | 2011-08-31 | 塞弗奈特公司 | Encryption key server |
KR100942732B1 (en) * | 2007-12-05 | 2010-02-16 | 동서대학교산학협력단 | Remote storage service system and metho in internet advanced technology attachment based |
-
2009
- 2009-04-16 KR KR1020090033061A patent/KR101008896B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR101008896B1 (en) | 2011-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11792169B2 (en) | Cloud storage using encryption gateway with certificate authority identification | |
US9832015B2 (en) | Efficient key derivation for end-to-end network security with traffic visibility | |
US7774594B2 (en) | Method and system for providing strong security in insecure networks | |
US8983061B2 (en) | Method and apparatus for cryptographically processing data | |
US8635456B2 (en) | Remote secure authorization | |
JP5527906B2 (en) | System and method for concatenating multiple connection packets related to security associations and reducing encryption overhead | |
BRPI0718048A2 (en) | METHOD AND EQUIPMENT FOR MUTUAL AUTHENTICATION | |
CN102594842A (en) | Device-fingerprint-based network management message authentication and encryption scheme | |
WO2018231519A1 (en) | Cloud storage using encryption gateway with certificate authority identification | |
JP4245972B2 (en) | Wireless communication method, wireless communication device, communication control program, communication control device, key management program, wireless LAN system, and recording medium | |
CN111224974A (en) | Method, system, electronic device and storage medium for network communication content encryption | |
US20100223457A1 (en) | Generation and/or reception, at least in part, of packet including encrypted payload | |
US10419212B2 (en) | Methods, systems, apparatuses, and devices for securing network communications using multiple security protocols | |
Brown | 802.11: the security differences between b and i | |
KR101008896B1 (en) | Secure Data Transmission for ATA-based Virtual Storage System | |
US20040221153A1 (en) | Apparatus and method of enciphering data packet of variable width | |
WO2022021940A1 (en) | Method and device for updating preshared key (psk) | |
JP2004135134A (en) | Adapter for wireless communication | |
Abbood et al. | Intelligent hybrid technique to secure bluetooth communications | |
Sandeep et al. | A Novel Mechanism for Design and Implementation of Confidentiality in Data for the Internet of Things with DES Technique | |
TW202031011A (en) | Near field communication forum data exchange format (ndef) messages with authenticated encryption | |
Lee et al. | A Lightweight Secure iSCSI-based Remote Storage Service for Mobile Devices | |
JP6908914B2 (en) | Data transmitters, data receivers, communication systems, and programs | |
Sullivan | The saltunnel protocol | |
Nithishma et al. | Remote User Authentication Using Camellia Encryption for Network-Based Applications |
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 | ||
FPAY | Annual fee payment |
Payment date: 20140103 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20141219 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20151222 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20170607 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20180102 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20190102 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20200102 Year of fee payment: 10 |