KR980007156A - 비밀키 블록 암호화 및 복호화 방법 - Google Patents

비밀키 블록 암호화 및 복호화 방법 Download PDF

Info

Publication number
KR980007156A
KR980007156A KR1019970067037A KR19970067037A KR980007156A KR 980007156 A KR980007156 A KR 980007156A KR 1019970067037 A KR1019970067037 A KR 1019970067037A KR 19970067037 A KR19970067037 A KR 19970067037A KR 980007156 A KR980007156 A KR 980007156A
Authority
KR
South Korea
Prior art keywords
round
encryption
key
bit
input
Prior art date
Application number
KR1019970067037A
Other languages
English (en)
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 임종인
Priority to KR1019970067037A priority Critical patent/KR980007156A/ko
Publication of KR980007156A publication Critical patent/KR980007156A/ko

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

데이터 통신의 암호화 방법에서 공개된 통신 선로를 통해 데이터 통신을 수행할 때 송신하는 데이터를 암호화하여 제3자가 통신 선로를 접속하여 도청하더라도 송신되는 데이터의 내용을 판독할 수 없도록 하며, 서로 일치하는 키 코드를 사용하는 경우 통신되는 데이터 정보의 암호화 및 복호화가 신속하게 이루어지도록 한 것으로, 통신을 위한 64비트 평문 상태의 데이터 정보에 대하여 키 코드 생성 알고리즘과 128비트의 키를 이용하여 초기화 라운드의 연산을 실행하는 과정과, 상기 초기화 라운드 연산을 통해 출력되는 값을 제1암호화 라운드를 통해 암호화 연산한 다음 출력되는 값을 r+1로 순차적으로 증가되는 암화화 라운드를 통해 암호화 연산하는 과정과, 상기와 같이 r+1로 증가되는 암호화 라운드의 연산 값에 대하여 설정된 r+n개의 암호화 라운드를 실행하여 통신을 위한 데이터 정보를 암호문으로 출력하는 과정을 포함하여 공개된 통신 선로를 통한 데이터 통신에서 전송되는 데이터 정보에 대하여 사용자의 키 코드를 128비트로 하여 암호화하므로 제3자가 통신되는 데이터의 내용을 해킹하더라도 그 내용의 해독이 불가능하므로 통신되는 데이터 정보의 비밀이 보장되므로 통신에 신뢰성을 제공한다.

Description

비밀키 블록 암호화 및 복호화 방법
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제1도는 본 발명에서 비밀키 블록 암호화 방법의 기본 함수에 대한 도해.
제2도는 본 발명에 따른 비밀키 블록 암호화 방법에 대한 흐름도.
제3도는 제2도의 비밀키 블록 암호화 방법에서 평문을 암호화하는데 대한 초기화 라운드의 도해.
제4도는 제2도의 비밀키 블록 암호화 방법에서 암호화 라운드 동작에 대한 도해.
제5도는 제2도의 비밀키 블록 암호화 방법에서 키 코드 생성을 위한 라운드 동작에 대한 도해.

Claims (16)

  1. 통신 데이터 암호화 방법에 있어서, 통신을 위한 64비트 평문 상태의 데이터 정보에 대하여 키 코드 생성 알고리즘과 128비트의 키를 이용하여 초기화 라운드의 연산을 실행하는 과정과, 상기 초기화 라운드 연산을 통해 출력되는 값을 제1암호화 라운드에서 부터 설정된 n개의 암호화 라운드를 통해 순차적인 암호화 연산하여 통신을 위한 데이터 정보를 암호문으로 출력하는 과정을 포함하는 것을 특징으로 하는 비밀키 블록 암호화 방법.
  2. 청구항 1에 있어서, 상기 초기화 라운드의 연산은 64비트의 평문에 대하여 최상위 64비트에서 부터 최하위 64비트까지 16비트씩 네 개로 순차적 분할한 다음 키 코드 생성 암호화 라운드를 통해 입력되는 키 코드와 16비트의 덧셈 연산을 실행하는 것을 특징으로 하는 비밀키 암호화 방법.
  3. 청구항 1에 있어서, 상기 사용자로 부터 입력되는 128비트의 키로 부터 각 라운드의 연산에 적용될 키코드의 생성은 입력되는 128비트의 키에 대하여 최상위 16비트에서 부터 최하위 16비트까지 16비트씩 4개의 "H" 및 "L"의 변수로 순차적 분할사는 과정과; 상기 과정에서 분할이 완료된 각각 4개의 변수 "H" 및 "L" 에 대하여 암호화 라운드의 연산을 통해 4개의 키 코드를 생성하는 과정을 포함하는 것을 특징으로 하는 비밀키 블록 암호화 방법.
  4. 청구항 1에 있어서, 상기 암호화 라운드의 연산은 초기화 라운드의 연산이 실행되어 입력되는 64비트의 변수에 대하여 최상위 16비트에서 부터 최하위 16비트까지 16비트씩 4개로 순차적 분할하는 과정과; 상기 분할된 변수 및 변수간 16비트 덧셈 연산이 완료된 값을 암호화 기본함수가 설정된 비밀키 블록에 입력시킨 다음 키 코드의 설정에 따라 암호문을 출력하는 과정을 포함하는 것을 특징으로 하는 비밀키 암호화 방법.
  5. 청구항 1에 있어서, 상기 n번의 암호화 라운드는 16회로 설정하는 것을 특징으로 하는 비밀키 블록 암호화 방법.
  6. 청구항 1에 있어서, 상기 반복되는 암호화 라운드에서 제r암호화 라운드에서 연산되어 출력되는 값 "X1","X2","X3","X4"이 제r+1암호화 라운드에 입력되는 과정에서 "X2","X4","X1","X3"의 순으로 실행하는 것을 특징으로 하는 비밀키 블록 암호화 방법.
  7. 청구항 1에 있어서, 상기 입력되는 변수를 암호화하는 제r암호화 라운드에는 제r-1암호화 라운드의 연산결과 값과 제r라운드의 키 코드가 입력되는 것을 특징으로 하는 비밀키 블록 암호화 방법.
  8. 청구항 3에 있어서, 키 코드의 생성은 상기에서 분할된 H 와 L의 변수에서 H2에 H1을 더한 값을 X라 하고 "H3"에 "H4"를 더한 값을 "Y"라 하는 경우 상기 변수 "X"와 "Y"를 기본 함수" F"가 설정되어 있는 비밀키 암호화 블록에 입력시키며 이 상태에서 키 값 L1을 입력시켜 키 코드 "R1" = F(X,Y,L1)을 생성하는 과정과; 분할된 변수 "H1"과 상기 과정을 통해 생성되는 키 코드 "R1"을 기본 함수 "F"가 설정되어 있는 비밀키 암호화 블록에 입력시키며 이 상태에서 키 값 L3를 이력시켜 키 코드" R3" = F(H1,R1,L3)을 생성하는 과정과; 상기의 "Y"와 상기한 과정을 통해 생성되는 키 코드" R1"을 기본 함수 "F"가 설정되어 있는 비밀키 암호화 블록에 입력시키며 이 상태에서 키 값 "L2"를 입력시켜 키 코드" R4" = F(Y,R1,L2)를 생성하는 과정 및; 상기 분할된 변수 "H4"와 상기 과정을 통해 생성되는 키 코드 "R4"를 기본 함수"F"가 설정되어 있는 비밀키 암호화 블록에 입력시키며 이 상태에서 키 값 "L4"를 입력시켜 키 코드 "R2" = F(H4,R4,L4)를 생성하는 과정을 포함하는 것을 특징으로 하는 비밀키 블록 암호화 방법.
  9. 청구항 3에 상기 키 코드는 64비트의 최상위 16비트에서 부터 최하위 16비트까지 임의의 횟수의 암호화 라운드를 실행할 수 있도록 n회 생성되는 것을 특징으로 하는 비밀키 블록 암호화 방법.
  10. 청구항 4에 있어서, 상기 암호화 라운드 연산에서 분할된 입력 변수 "P2"에 "P1"을 더한 변수값을 "X"라 하고, 입력 변수 P3에 P4를 더한 값을 "Y"라 하면, 상기 변수 "X"와 "Y"를 기본 함수 "F"가 설정되어 있는 비밀키 암호화 블록에 입력시키고 이 상태에서 라운드 키 코드" Kr,1"를 입력시켜 암호화된 함수 "C2" = F(X,Y,KR)를 연산하는 과정과; 상기 변수 "Y"와 상기 과정을 통해 연산된 함수" C2"를 기본 함수 F가 설정되어 있는 비밀키 암호화 블록에 입력시키고 이 상태에서 라운드 키 코드 Kr,2를 입력시켜 암호화된 함수 "C3" = F(Y,C2,Kr,2)를 연산하는 과정과; 상기 입력 변수 P1과 상기 과정을 통해 연산된 함수 "C2"를 기본 함수 F가 설정되어 있는 비밀키 암호화 블록에 입력시키고 이 상태에서 라운드 키 코드 "Kr,3"를 입력시켜 암호화된 함수 "C1" = F(P1,C2,Kr,3)을 연산하는 과정 및; 상기 입력 변수" P4"와 상기 과정을 통해 연산된 함수 "C3"를 기본 함수" F"가 설정되어 있는 비밀키 암호화 블록에 입력시키며 이 상태에서 라운드 키 코드 Kr,4를 입력시켜 암호화된 함수 "C4"= F(P4,C3,Kr,4)를 연산하는 과정을 포함하는 것을 특징으로 하는 비밀키 블록 암호화 방법.
  11. 통신 데이터 복호화 방법에 있어서, 16비트씩 네 개의 암호문으로 수신되는 데이터 정보에 대하여 제r+n회의 복호화 라운드를 통한 복호화로 16비트의 네 개 변수로 출력하는 과정과; 상기 제n회의 복호화 라운드에서 출력되는 네 개의 변수 값을 제n-1복호화 라운드에 재 입력하여 복호화하는 과정과; 상기와 같이 임의의 복호화 라운드에서 복호화 연산되어 출력되는 값에 대하여 하나의 복호화 라운드씩 감산시켜 제1복호화 라운드까지 연산하는 과정과; 상기와 같이 제1복호화 라운드까지의 복호화 연산이 완료되면 출력되는 연산값을 역 초기화 라운드를 통해 전송시의 평문 데이터로 복호화 하는 과정을 포함하는 것을 특징으로 하는 비밀키 블록 복호화 방법.
  12. 청구항 11에 있어서, 상기 과정에서 실행하는 복호화 라운드의 횟수는 암호화 라운드의 횟수와 동일한 횟수를 실행하는 것을 특징으로 하는 비밀키 블록 암호화 방법.
  13. 청구항 11에 있어서, 상기 임의의 복호화 라운드에서 연산되어 출력되는 값은 실행된 복호화 라운드에서 하나가 감산된 복호화 라운드에 재 입력되어 지며, 입력되는 변수는 "X3","X1","X4","X2"의 순서로 설정되는 것을 특징으로 하는 비밀키 블록 보호화 방법.
  14. 청구항 11에 있어서, 상기에서 제r회의 복호화 라운드에서는 제r-1회의 암호화 라운드에서 출력되는 연산값과 제r회의 복호화 라운드에서 생성된 키 코드가 입력되는 것을 특징으로 하는 비밀키 블록 복호화 방법.
  15. 청구항 11에 있어서, 상기 역초기화 라운드는 복호화 라운드를 통해 연산되어 출력되는 64비트의 값에 대하여 최상위 64비트에서 부터 최하위 64비트까지 4개로 순차적 분할하는 과정과; 상기 분할된 각각의 변수에 대하여 그에 대응하는 키 코드를 입력하는 연산을 통해 암호화된 수신 데이터 정보를 평문의 데이터로 복호화하는 과정을 포함하는 것을 특징으로 하는 비밀키 블록 보호화 방법.
  16. 청구항 15에 있어서, 상기 역초기화 라운드에서 실행하는 연산은 입력변수에서 16비트의 키 코드를 뺄셈 연산하는 것을 특징으로 하는 비밀키 블록 보호화 방법.
KR1019970067037A 1997-12-09 1997-12-09 비밀키 블록 암호화 및 복호화 방법 KR980007156A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970067037A KR980007156A (ko) 1997-12-09 1997-12-09 비밀키 블록 암호화 및 복호화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970067037A KR980007156A (ko) 1997-12-09 1997-12-09 비밀키 블록 암호화 및 복호화 방법

Publications (1)

Publication Number Publication Date
KR980007156A true KR980007156A (ko) 1998-03-30

Family

ID=66088143

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970067037A KR980007156A (ko) 1997-12-09 1997-12-09 비밀키 블록 암호화 및 복호화 방법

Country Status (1)

Country Link
KR (1) KR980007156A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100411684B1 (ko) * 1998-01-19 2003-12-18 오트크리토에 악츠이오네른오에 옵스체스트보 (모스코브스키야 고로즈카야 텔레폰나야 셋) 이진 데이터 블록의 암호 변환 방법
KR100531577B1 (ko) * 2002-02-28 2005-11-28 주식회사 소프트커널 문서 암/복호화장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100411684B1 (ko) * 1998-01-19 2003-12-18 오트크리토에 악츠이오네른오에 옵스체스트보 (모스코브스키야 고로즈카야 텔레폰나야 셋) 이진 데이터 블록의 암호 변환 방법
KR100531577B1 (ko) * 2002-02-28 2005-11-28 주식회사 소프트커널 문서 암/복호화장치

Similar Documents

Publication Publication Date Title
US7079651B2 (en) Cryptographic method and apparatus for non-linearly merging a data block and a key
US5222139A (en) Cryptographic method and apparatus
US5442705A (en) Hardware arrangement for enciphering bit blocks while renewing a key at each iteration
KR100389902B1 (ko) 차분해독법과선형해독법에대하여안전성을보장하는고속블럭암호화방법
US6189095B1 (en) Symmetric block cipher using multiple stages with modified type-1 and type-3 feistel networks
US6185304B1 (en) Method and apparatus for a symmetric block cipher using multiple stages
US7251326B2 (en) Method and apparatus for data encryption
Dolmatov GOST 28147-89: Encryption, decryption, and message authentication code (MAC) algorithms
US6732271B1 (en) Method of deciphering ciphered data and apparatus for same
JPH01261689A (ja) データ秘匿方式
JP2000209195A (ja) 暗号通信システム
KR100259836B1 (ko) N-라운드 라운드 출력문 귀환 블록 암호화/복호화 방법
KR980007156A (ko) 비밀키 블록 암호화 및 복호화 방법
JP2002510058A (ja) 2進データ・ブロックの暗号変換のための方法
KR20010102684A (ko) 라운드 키 생성 및 암호처리용 암호화장치
RU2206961C2 (ru) Способ итеративного блочного шифрования двоичных данных
KR100494560B1 (ko) Rijndael암호를 이용한 블록 데이터 실시간암호복호화 장치 및 방법
JPH04335730A (ja) 暗号送信装置、暗号受信装置、暗号通信システム
RU2186467C2 (ru) Способ блочного итеративного шифрования
KR100226867B1 (ko) 무선 통신의 스트림 암호 시스템
Haunts et al. Symmetric Encryption
JPH10153954A (ja) 暗号装置
KR100546777B1 (ko) Seed 암/복호화 장치, 암/복호화 방법, 라운드 처리 방법, 이에 적합한 f함수 처리기
RU2186466C2 (ru) Способ итеративного шифрования блоков дискретных данных
RU2199826C2 (ru) Способ итеративного шифрования блоков цифровых данных

Legal Events

Date Code Title Description
A201 Request for examination
G15R Request for early opening
E902 Notification of reason for refusal
E601 Decision to refuse application