JP2002077150A - 暗号通信時の暗号化パケットの作成方法 - Google Patents

暗号通信時の暗号化パケットの作成方法

Info

Publication number
JP2002077150A
JP2002077150A JP2000267066A JP2000267066A JP2002077150A JP 2002077150 A JP2002077150 A JP 2002077150A JP 2000267066 A JP2000267066 A JP 2000267066A JP 2000267066 A JP2000267066 A JP 2000267066A JP 2002077150 A JP2002077150 A JP 2002077150A
Authority
JP
Japan
Prior art keywords
encrypted
packet
layer
packets
tcp
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2000267066A
Other languages
English (en)
Inventor
Yoshitaka Kashiwagi
喜孝 柏木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
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 Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2000267066A priority Critical patent/JP2002077150A/ja
Publication of JP2002077150A publication Critical patent/JP2002077150A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 再送時に復号化して暗号化する必要がなく、
カーネルへの負荷を低減できる暗号通信時の暗号化パケ
ットの作成方法を提供する。 【解決手段】 TCP/IPで暗号通信を行う際に、送
信時の暗号化パケットをデータリンク層で作成すること
に対して、送信するパケットのメモリ領域(送信バッフ
ァ)13とは別の領域に、暗号化したパケットを保持す
る暗号化メモリ領域18を備え、送信パケットを暗号化
して暗号化メモリ領域に格納し、暗号化メモリ領域の内
容を送信して、暗号化メモリ領域の内容は送信時にすぐ
に破棄するという機能を備えることにより、TCPレベ
ルでの再送を、暗号化パケットを復号化そして暗号化す
るというオーバヘッド無しに行うことが可能で、且つ再
送処理に関するプログラムの変更を行わずにすむように
したものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、TCP/IPで暗
号通信を行う際に、暗号通信時の暗号化パケットの作成
方法に関する。
【0002】
【従来の技術】従来の方法については、先ず、プロトコ
ルスタックとその間を流れるデータから説明する。(な
お、ネットワークインターフェース層はイーサネット
(登録商標)して以後説明する)。図3は従来のプロト
コルスタックを示す図であり、図示のようにインターネ
ットプロトコルスタックは大きく4層に分けられる。メ
イルをポストするメーラーのようなアプリケーションプ
ログラム31がメッセージを転送すると、アプリケーシ
ョンはSMTP、HTTP等のアプリケーションで利用
されるアプリケーション層32のソケットを利用し、エ
ンドツーエンドの通信を行う。ソケットは下の層のTC
P層33を利用する。TCP層では、ポートアドレスを
利用して通信相手のプログラムを識別する。更に、TC
P層は下の層のIP層34を利用する。IP層では計算
機を識別するIPアドレスを利用して通信を行う。IP
層は下の層のネットワークインターフェース層35を利
用する。ネットワークインターフェース層は、実際にメ
ッセージがイーサネット37上に送出される部分であり
ハードウエア36と密接に関係する。ネットワークイン
ターフェース層では、イーサネットアドレスにより通信
相手のインターフェースを識別する。この様な、プロト
コルを構成するプログラムを、層に分けスタックとする
ことで、各層の役割が明確になると共に各層間のインタ
ーフェースが明確になるのでより良いプログラムへの変
更が容易になる。更に、上位層からはハードウエアが抽
象化されるために、ハードウエアの変更にも容易に対応
できるものである。
【0003】次に、図4に示す従来のパケットのカプセ
ル化について示す。アプリケーションプログラムの送出
したメッセージ41はアプリケーション層のソケット構
造に管理された送信バッファにコピーされる。この送信
バッファはカーネル空間に存在する。この送信バッファ
上のメッセージをTCP層に渡す。TCP層ではこのメ
ッセージをペイロード43としてTCPヘッダ42をつ
けTCPデータグラムを作成する。(一般的に送信デー
タにはヘッダが付けられデータグラムが作成され、ヘッ
ダ以外の部分がペイロードである)。このTCPデータ
グラムはIP層に渡され、今度はTCPデータグラムを
IP層でのペイロード45としIPヘッダ44をつけ、
IPパケットを作成する。ここで、IPパケットを作成
する際に、ネットワークインターフェースは物理媒体に
より最大転送単位(MTU)が決まっている。そのため
MTUを最大長とする複数のIPパケットが作成され、
ネットワークインターフェース層に渡される。ネットワ
ークインターフェース層では、IPパケットをペイロー
ド47、49としてイーサネットヘッダ46、48をつ
け、イーサネットフレームを作成する。この様に、デー
タにヘッダをつけ上位の層のデータをくるんでいくこと
をカプセル化という。送信バッファはアプリケーション
層からネットワークインターフェース層へ渡されるデー
タすべてにポインタの形で間接的に参照されている。送
信バッファの構成はオペレーションシステムOSに依存
する。この様な点をふまえて従来の方法でのパケットの
暗号化を、ネットワークインターフェース層で暗号化さ
れるものとして説明する。
【0004】図5に従来の方法で暗号化を行う場合の構
成図である。アプリケーション51から転送されるメッ
セージはアプリケーション層52のソケットを利用して
送信先のプログラムと通信する。ソケットでは、TCP
層54での再送に備えて送信バッファ53を管理してい
る。メッセージは送信バッファに入れられ、TCP層に
渡される。TCPデータグラムはIP層55に渡されI
Pパケットが作成され、ネットワークインターフェース
層56に渡される。ネットワークインターフェース層で
は暗号化を実施するために、IPバケットをイーサネッ
トフレームにカプセル化する前に暗号化部57により暗
号化を施し、イーサネットフレームを作成しハードウエ
ア58からイーサネット59を通してメッセージを送出
する。ここで、送出したメッセージが相手に届かずTC
P層にアクノレッジが帰ってこない場合再送が行われ
る。再送では同じように送信バッファからメッセージを
取出しカプセル化が行われる。ここで、前回と違う点
は、暗号化したメッセージが送信バッファに入っている
点である。
【0005】
【発明が解決しようとする課題】上記の理由のため、従
来の暗号化手法では再送時には送信バッファに入ってい
るメッセージを、いったん復号化して更にそれを暗号化
して送出する処理が必要となる。この処理はOSのカー
ネル内で行われるために、カーネルに非常に負荷を掛
け、システム全体のパフォーマンスを著しく損なうとい
う問題点がある。更に、復号化と暗号化するという処理
をプロトコルスタックに埋め込まねばならず、再送に関
してカーネルプログラムの大幅な修正が必要になるとい
う問題もある。そこで、本発明は、メッセージの再送時
に、復号化して暗号化するというオーバヘッド無しに行
われるようにして、カーネルに負荷をかけないような暗
号化パケットの作成を可能にする暗号通信時の暗号化パ
ケットの作成方法を提供することを目的としている。
【0006】
【課題を解決するための手段】上記問題を解決するため
に、請求項1記載の暗号通信時の暗号化パケットの作成
方法の発明は、TCP/IPで暗号通信を行う際に、送
信時の暗号化パケットをデータリンク層で作成すること
に対して、送信するパケットのメモリ領域(送信バッフ
ァ)とは別の領域に、暗号化したパケットを保持する暗
号化メモリ領域を備え、送信パケットを暗号化して前記
暗号化メモリ領域に格納し、前記暗号化メモリ領域の内
容を送信して、前記暗号化メモリ領域の内容は送信時に
すぐに破棄することを特徴とする。請求項2記載の発明
は、 請求項1に記載の暗号通信時の暗号化パケットの
作成方法において、パケットの作成をネットワーク層で
行うことを特徴とする。以上の構成によって、TCPレ
ベルでの再送を、暗号化パケットを復号化そして暗号化
するというオーバヘッド無しに行うことが可能となり、
かつ再送処理に関するプログラムの変更を行わずに済む
こととなる。
【0007】
【発明の実施の形態】以下、本発明の実施の形態につい
て図を参照して説明する。図1は本発明の実施の形態に
係る暗号通信時の暗号化パケットの作成方法の構成図で
ある。図1において、(以下、ネットワークインターフ
ェース層で暗号化を実施するものとして説明する)。ア
プリケーション11が送出したメッセージは、アプリケ
ーション層12のソケットを利用しメッセージを送出す
る。このメッセージは送信バッファ13に入れられる。
この送信バッファのデータがTCP層14に渡されTC
Pデータグラムとしてカプセル化される。このTCPデ
ータグラムはIP層15に渡されIPパケットにカプセ
ル化された後、ネットワークインターフェース層16に
フレームとして到着し、イーサネットヘッダを付加され
イーサネットフレームとして完成する。ネットワークイ
ンターフェース層ではフレームのペイロードの暗号化を
行う暗号化部17と、暗号化されたフレームを保持する
暗号化メモリ18が付加されている。ここで、イーサネ
ットフレームは暗号化メモリ18にコピーされ、暗号化
のモードに従い、ペイロードを暗号化する。このとき、
送信バッファ13は暗号化は施されていない。この新た
に作られた暗号化メモリ18に入っているイーサネット
フレームが、ネットワークインターフェース層からハー
ドウエア19を通してイーサネット20に送出される。
送出後は暗号化メモリ18の内容を破棄する。相手から
アクノレッジが届かずTCP層で再送が起こった場合、
送信バッファは暗号化されていないので、このデータを
元にカプセル化、ネットワークインターフェース層での
暗号化を行うことで暗号化以外にカーネルプログラムの
修正を行わずに再送の処理に対応できる。
【0008】図2は図1に示す暗号化パケットの作成方
法の処理のフローチャートである。つぎに図2を参照し
て処理の詳細を説明する。アプリケーションが送出した
メッセージは(S21)、アプリケーション層のソケッ
トを利用しメッセージを送出される。このメッセージは
送信バッファ13に入れられる(S22)。この送信バ
ッファ13のデータがTCP層に渡されTCPデータグ
ラムとしてカプセル化される(S23)。このTCPデ
ータグラムはIP層に渡されIPパケットにカプセル化
された後(S24)、ネットワークインターフェース層
にフレームとして到着し、イーサネットヘッダをつけイ
ーサネットフレームが作成される(S25)。ここで、
このIPパケットを暗号化するかを?判断して、暗号化
する場合には(S26)、このフレームを暗号化メモリ
18にコピーする(S27)。コピーされたデータを元
に暗号化モードにしたがってフレームのペイロードを再
構成し暗号化を行う(S28)。暗号化後、暗号化メモ
リ中のイーサネットフレームが通信相手に送出され(S
29)、暗号化パケットの場合は(S30)、送出後暗
号メモリ18の内容を破棄する(S31)。若しも、再
送が生じた場合は、TCP層以降の処理を、再送するT
CPデータグラムから行う。これによって現在送信バッ
ファは暗号化されていないので、カーネルプログラムの
修正を行わずに再送の処理に対応できる。
【0009】
【発明の効果】以上説明したように、本発明によれば、
送信バッファとは別の領域に暗号化したパケットを保持
する暗号化メモリ領域を備え、送信パケットを暗号化し
て、この暗号化メモリ領域に格納し、その内容を送信し
たら、内容は破棄するように構成したので、暗号通信に
おいて再送が起こった場合に、復号化して暗号化すると
いう手間が省け、再送時のカーネルへの負荷を最小に抑
えて、性能を低下させないという効果がある。更に、再
送の処理をカーネルプログラムに施す必要がないという
効果も持つ。
【図面の簡単な説明】
【図1】本発明の実施の形態に係る暗号通信時の暗号化
パケットの作成方法を示す構成図である。
【図2】図1に示す暗号通信時の暗号化パケットの作成
方法の処理のフローチャートである。
【図3】従来の暗号化パケットの作成方法のプロトコル
スタック図である。
【図4】図3に示す暗号化パケットのカプセル化を示す
図である。
【図5】図3に示す暗号化パケットの作成方法の構成図
である。
【符号の説明】
11 アプリケーション 12 アプリケーション層 13 送信バッファ 14 TCP層 15 IP層 16 ネットワークインターフェース層 17 暗号化部 18 暗号化メモリ 19 ハードウエア 20 イーサネット

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 TCP/IPで暗号通信を行う際に、送
    信時の暗号化パケットをデータリンク層で作成すること
    に対して、送信するパケットのメモリ領域(送信バッフ
    ァ)とは別の領域に、暗号化したパケットを保持する暗
    号化メモリ領域を備え、送信パケットを暗号化して前記
    暗号化メモリ領域に格納し、前記暗号化メモリ領域の内
    容を送信して、前記暗号化メモリ領域の内容は送信時に
    すぐに破棄することを特徴とする暗号通信時の暗号化パ
    ケットの作成方法。
  2. 【請求項2】 請求項1に記載の暗号通信時の暗号化パ
    ケットの作成方法において、 パケットの作成をネットワーク層で行うことを特徴とす
    る暗号通信時の暗号化パケットの作成方法。
JP2000267066A 2000-09-04 2000-09-04 暗号通信時の暗号化パケットの作成方法 Pending JP2002077150A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000267066A JP2002077150A (ja) 2000-09-04 2000-09-04 暗号通信時の暗号化パケットの作成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000267066A JP2002077150A (ja) 2000-09-04 2000-09-04 暗号通信時の暗号化パケットの作成方法

Publications (1)

Publication Number Publication Date
JP2002077150A true JP2002077150A (ja) 2002-03-15

Family

ID=18754044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000267066A Pending JP2002077150A (ja) 2000-09-04 2000-09-04 暗号通信時の暗号化パケットの作成方法

Country Status (1)

Country Link
JP (1) JP2002077150A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005244895A (ja) * 2004-02-27 2005-09-08 Fujitsu Ltd 通信処理装置及びその方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005244895A (ja) * 2004-02-27 2005-09-08 Fujitsu Ltd 通信処理装置及びその方法
JP4610910B2 (ja) * 2004-02-27 2011-01-12 富士通株式会社 通信処理装置及びその方法
US8170057B2 (en) 2004-02-27 2012-05-01 Fujitsu Limited Communication-processing apparatus and its method

Similar Documents

Publication Publication Date Title
CN109150688B (zh) IPSec VPN数据传输方法及装置
Maltz et al. TCP Splice for application layer proxy performance
US6708218B1 (en) IpSec performance enhancement using a hardware-based parallel process
US8250643B2 (en) Communication device, communication system, communication method, and program
CN202206418U (zh) 流量管理设备、系统和处理器
US6157649A (en) Method and system for coordination and control of data streams that terminate at different termination units using virtual tunneling
US10044841B2 (en) Methods and systems for creating protocol header for embedded layer two packets
JP2019528604A (ja) 仮想マルチパスデータトランスポートのためのシステム及び方法
US9369550B2 (en) Protocol for layer two multiple network links tunnelling
US20050198492A1 (en) System and method for secure data transfer over a network
US20060227773A1 (en) Authenticity of communications traffic
US20060256817A1 (en) System and method for using performance enhancing proxies with IP-layer encryptors
US20110271096A1 (en) Loosely-Coupled Encryption Functionality for Operating Systems
US10944590B2 (en) Transport protocol task offload emulation to detect chunks of data for communication with a private network
CN112699397B (zh) 基于虚拟环境下的软件加解密方法和系统
JP2015511434A (ja) ネットワーク付属のステートレス・セキュリティ・オフロード・デバイスを用いるネットワーク・ノード
JP2008048042A (ja) 暗号装置、復号装置、暗号方法、および復号方法
CN105471827A (zh) 一种报文传输方法及装置
CN114268518B (zh) 一种实现sdwan数据隧道转发加速的方法及系统
US7969998B2 (en) Method and system for tunneling data using a management protocol
CN108924157B (zh) 一种基于IPSec VPN的报文转发方法及装置
US20020161834A1 (en) Method and apparatus for clustered SSL accelerator
US20050198500A1 (en) System and method for performing security operations on network data
JP4036199B2 (ja) 秘匿通信方式
CN115801236A (zh) 一种加密代理方法、加密代理模块、代理设备及存储介质

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060324