KR20160099865A - Device For Performing Block Cipher Algorithm HIGHT - Google Patents

Device For Performing Block Cipher Algorithm HIGHT Download PDF

Info

Publication number
KR20160099865A
KR20160099865A KR1020150022092A KR20150022092A KR20160099865A KR 20160099865 A KR20160099865 A KR 20160099865A KR 1020150022092 A KR1020150022092 A KR 1020150022092A KR 20150022092 A KR20150022092 A KR 20150022092A KR 20160099865 A KR20160099865 A KR 20160099865A
Authority
KR
South Korea
Prior art keywords
hight
round
block cipher
keys
key
Prior art date
Application number
KR1020150022092A
Other languages
Korean (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 금오공과대학교 산학협력단
Priority to KR1020150022092A priority Critical patent/KR20160099865A/en
Publication of KR20160099865A publication Critical patent/KR20160099865A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

An apparatus for encoding and decoding block cipher HIGHT which calculates 64-bit data by block cipher HIGHT, comprising: a round calculation unit which divides input 64-bit data into upper 32 bits and lower 32 bits and performs calculations during 34 rounds; a key scheduler unit which generates a plurality of sub-keys and a plurality of whitening keys by using a master key, and provides the sub-keys and whitening keys to the round calculation unit; and a control unit which controls operations of the round calculation unit and the key scheduler unit in accordance with control of a clock signal and a mode signal.

Description

[0001] The present invention relates to an encryption / decryption apparatus for a block cipher HIGHT,

The present invention relates to an encryption / decryption apparatus for a block cipher HIGHT, and more particularly, to an encryption / decryption apparatus for a block cipher HIGHT which implements a block cipher algorithm HIGHT (HIGh security and light weigHT) with lightened hardware.

Encryption is a process of encoding a message so that its meaning is unclear, and decryption is the process of converting an encrypted message into its original form. The original form of the message is called plaintext, and the encrypted form is called a ciphertext. Cryptography has been used mainly for confidential communication such as military use in the past, but now it is widely used for mail transmission, user authentication, electronic commerce, etc. as core technology for safety, reliability and privacy protection of the Internet based social and economic activity .

A symmetric cryptosystem is a system in which the key held by the sender used for encryption and the key of the recipient to be used for decryption are the same. Symmetric block cipher algorithms have been presented in various ways such as DES (Data Encryption Standard), T-DES, IDEA (International Data Encryption Algorithm), SKIPJACK, MISTY and AES (Advanced Encryption Standard) In Korea, we have also introduced the symmetric block cipher algorithms SEED and ARIA.

HIG (security and light weigHT) encryption algorithm, which is a 64-bit block encryption technology for mobile, which is finally approved as an ISO / IEC international standard in 2010, is being implemented in hardware.

However, since conventional hardware that implements the HIGHT security and light weigHT (HIGHT) encryption algorithm uses too many gates and memories at the logic level, it is required to develop a technique for reducing the weight.

SUMMARY OF THE INVENTION The present invention has been made in order to solve the above-mentioned technical problems, and it is an object of the present invention to provide an encryption / decryption method of a block cipher HIGHT capable of reducing the size of hardware logic by dividing input 64-bit data into upper 32- Device.

According to an embodiment of the present invention, a round operator for dividing input 64-bit data into upper 32-bit and lower 32-bit data and calculating the data for 34 rounds when computing 64-bit data with a block cipher HIGHT; A key scheduler for generating a plurality of sub keys and a plurality of whitening keys using the master key, and providing the plurality of sub keys and the plurality of whitening keys to the round operator; And a controller for controlling operations of the round calculator and the key scheduler according to the control of the clock signal and the mode signal.

The key scheduler may provide the respective whitening keys in the first round and the final round, and provide the respective subkeys in the remaining rounds.

The encryption / decryption apparatus of the block cipher HIGHT according to the embodiment of the present invention shares the operation logic to be used repeatedly so that the input 64-bit data can be divided into upper 32 bits and lower 32 bits, Respectively. Therefore, the use of hardware logic, gate, latch, and the like is reduced, so that not only the hardware can be lightened but also the power consumption can be reduced due to the lightweight hardware.

1 is a block diagram showing the concept of a block cipher HIGHT;
2 is an i < th > round function of the block cipher HIGHT.
3 is a 32 < th > round function of the block cipher HIGHT.
FIG. 4 shows the overall encryption structure of the block cipher HIGHT.
5 is a block diagram of an apparatus for encrypting / decrypting a block cipher HIGHT according to an embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, in order to facilitate a person skilled in the art to easily carry out the technical idea of the present invention.

1 is a block diagram showing the concept of a block cipher HIGHT, Fig. 2 is an i-th round function of a block cipher HIGHT, Fig. 3 is a 32nd round function of a block cipher HIGHT, 5 is a block diagram of an encryption / decryption apparatus for a block cipher HIGHT according to an embodiment of the present invention.

HIGHT (HIGh security and light weigHT) is a symmetric key block cipher algorithm that encrypts 64-bit plaintext (ciphertext) block with 128-bit master key to generate 64-bit ciphertext (plaintext). Based on the modified Feistel structure, encryption (decryption) is performed through a total of 34 rounds of operations, and a subkey generated from the 128-bit master key is used for the round conversion. Round conversion and sub-key generation are realized by simple operations such as mod-2 8 addition, cyclic shift, and mod-2 addition in bytes, and it is possible to implement small hardware and low power suitable for mobile and object internet environments. .

The overall structure of the HIGHT algorithm is constituted by a total of 34 round conversions including an initial conversion, 32 round conversions, and final conversions as shown in FIG. 1, and the initial conversion and the final conversion are performed only by adding whitening keys without cyclic movement. The encryption process and the decryption process are performed in the reverse order. The modulo addition process of the encryption process is implemented by modulo subtraction in the decryption process, and the direction of the circulation movement is also reversed.

The 64-bit block cipher HIGHT can be used to provide functions such as confidentiality of data and the like by using a 128-bit cipher key to encrypt and decrypt the message in 64-bit block units. This standard describes the process of round key generation of 64-bit block cipher HIGHT and the round function which constitutes the whole structure and the inside of the algorithm.

The overall structure of HIGHT is composed of a generalized Feistel transformation structure. It is composed of 64 bits of plain text, 8 8-bit whitening keys generated from 128-bit keys, and 128 8-bit subkeys, Print the cipher text. Figure 1 shows the overall structure of the HIGHT algorithm.

Referring to FIG. 1, a round key of HIGHT includes sub keys generated using a whitening key and an LFSR.

The whitening key is generated using the master key in the following manner.

Figure pat00001

LFSR

Figure pat00002
The connection polynomial of
Figure pat00003
to be. This polynomial
Figure pat00004
Is a primitive polynomial in
Figure pat00005
The
Figure pat00006
.
Figure pat00007
The initial internal state value of
Figure pat00008
. then
Figure pat00009
about
Figure pat00010
Is generated as follows.

Figure pat00011

Figure pat00012
Is 127
Figure pat00013
to be.

The algorithm for generating the subkey is configured as follows.

Figure pat00014

Figure pat00015
LFSR
Figure pat00016
Are the values of the internal state of < / RTI >

In order to perform the encryption algorithm of HIGHT, the round key generation process includes eight whitening keys in byte units

Figure pat00017
And 128 subkeys
Figure pat00018
.

HIGHT's decryption algorithm uses the same whitening key and subkey bytes as the encryption algorithm, but in a different order. In the decryption algorithm

Figure pat00019
In this initial conversion,
Figure pat00020
Is used for the final conversion. The subkey bytes used in the decryption algorithm
Figure pat00021
And is defined as follows.

Figure pat00022

The initial conversion of HIGHT encryption consists of four whitening key bytes

Figure pat00023
Using plain text
Figure pat00024
To the input of the first round function .

Figure pat00026

The round function of HIGHT has two auxiliary functions as follows.

Figure pat00027

2 is an i < th > round function of the block cipher HIGHT. Referring to Figure 2, the round function

Figure pat00028
from
Figure pat00029
To 32 times.

bracket

Figure pat00030
The third round function
Figure pat00031
The
Figure pat00032
of
Figure pat00033
As shown in FIG.

Figure pat00034

3 is a 32 < th > round function of the block cipher HIGHT. Referring to FIG. 3,

Figure pat00035
Does not mix bytes. Therefore,
Figure pat00036
The output value
Figure pat00037
Is calculated as follows and is shown in FIG.

Figure pat00038

The final conversion of HIGHT is

Figure pat00039
Output of
Figure pat00040
To four whitening keys
Figure pat00041
.

Figure pat00042

Encryption consists of an initial conversion, a round function 32 times, and a final conversion of the subkey and plaintext block generated through the key schedule.

HIGHT's decryption algorithm consists of a round key generation process, an initial transformation (inverse transformation of the encryption final transformation), a round function 32 times, and a final transformation (inverse transformation of the initial encryption transformation). The intermediate value in the decryption algorithm is

Figure pat00043
Figure pat00044
.

The initial transformation of the decryption algorithm is the inverse of the final transformation of the encryption algorithm. This function has four whitening keys

Figure pat00045
The ciphertext
Figure pat00046
The input value of the first round function of the decryption algorithm
Figure pat00047
As follows.

Figure pat00048

Decryption algorithm

Figure pat00049
The third round function
Figure pat00050
.
Figure pat00051
The third round function
Figure pat00052
The
Figure pat00053
To
Figure pat00054
As shown below.

Figure pat00055

As in the encryption algorithm, the last round function

Figure pat00056
Does not mix bytes. Therefore, the output is calculated as follows.

Figure pat00057

The final transformation of the decryption algorithm corresponds to the inverse of the initial transformation in the encryption algorithm. This function uses four whitening keys

Figure pat00058
Using the last round function
Figure pat00059
The output value
Figure pat00060
A plain text
Figure pat00061
.

Figure pat00062

5 is a block diagram of an apparatus for encrypting / decrypting a block cipher HIGHT according to an embodiment of the present invention. The encryption / decryption apparatus for the block cipher HIGHT according to the present embodiment includes only a simple structure for clearly explaining the technical idea to be proposed.

Referring to FIG. 5, the apparatus for encrypting / decrypting a block cipher HIGHT includes a round operator 100, a key scheduler 200, and a controller 300.

The detailed configuration and main operation of the encryption / decryption apparatus for the block cipher HIGHT constituted as above will be described below.

The rounding unit 100 divides the input 64-bit data DIN into upper 32-bit and lower 32-bit data for the 34 rounds of operation, when computing the 64-bit data DIN with the block cipher HIGHT. That is, the round calculator 100 calculates the data DIN with the function set 34 times and outputs the calculated output data DOUT. At this time, the output data DOUT is a cipher text when the input data DOUT is a plain text, and the output data DOUT is a plain text if the input data DOUT is a cipher text. That is, the rounding unit 100 internally calculates the lower 32 bits of the 64-bit data DOUT for 34 rounds, then calculates the upper 32 bits for the 34 rounds using the same logic, The 32-bit operation result is combined and output as output data DOUT.

The key scheduler unit 200 generates a plurality of sub keys SUB KEY and a plurality of whitening keys using a master key and transmits a plurality of sub keys SUB KEY to the round unit 100. [ And a plurality of whitening keys (WHITENING). The key scheduler unit 200 provides respective whitening keys in the first round and the final round, and provides the respective subkeys in the remaining rounds.

The controller 300 controls operations of the round calculator 100 and the key scheduler 200 according to the control of the clock signal CLK and the mode signal MODE. The mode signal MODE is a signal for selecting either the encryption or decryption operation in the round calculator 100.

The encrypting / decrypting apparatus for the block cipher HIGHT according to the embodiment of the present invention reduces the size of the hardware by sharing the repeatedly used arithmetic logic so that the inputted 64-bit data can be divided into the upper 32 bits and the lower 32 bits, . Therefore, the use of hardware logic, gate, latch, and the like is reduced, so that not only the hardware can be lightened but also the power consumption can be reduced due to the lightweight hardware.

Thus, those skilled in the art will appreciate that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. It is therefore to be understood that the embodiments described above are to be considered in all respects only as illustrative and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

100: round operator
200: key scheduler section
300:

Claims (2)

A round operator for dividing the 64-bit data input into upper 32 bits and lower 32 bits and calculating the data for 34 rounds;
A key scheduler for generating a plurality of sub keys and a plurality of whitening keys using the master key, and providing the plurality of sub keys and the plurality of whitening keys to the round operator; And
A controller for controlling operations of the round calculator and the key scheduler according to control of a clock signal and a mode signal;
And encrypting / decrypting the block cipher HIGHT.
The method according to claim 1,
Wherein the key scheduler comprises:
Wherein each whitening key is provided in a first round and a final round, and each subkey is provided in the remaining rounds.
KR1020150022092A 2015-02-13 2015-02-13 Device For Performing Block Cipher Algorithm HIGHT KR20160099865A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150022092A KR20160099865A (en) 2015-02-13 2015-02-13 Device For Performing Block Cipher Algorithm HIGHT

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150022092A KR20160099865A (en) 2015-02-13 2015-02-13 Device For Performing Block Cipher Algorithm HIGHT

Publications (1)

Publication Number Publication Date
KR20160099865A true KR20160099865A (en) 2016-08-23

Family

ID=56875293

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150022092A KR20160099865A (en) 2015-02-13 2015-02-13 Device For Performing Block Cipher Algorithm HIGHT

Country Status (1)

Country Link
KR (1) KR20160099865A (en)

Similar Documents

Publication Publication Date Title
US10320554B1 (en) Differential power analysis resistant encryption and decryption functions
Koko et al. Comparison of Various Encryption Algorithms and Techniques for improving secured data Communication
CN107534558A (en) For the method and data highway system of the information security for protecting the data via data bus transmission
Christina et al. Optimized Blowfish encryption technique
Haldankar et al. Implementation of AES and blowfish algorithm
KR20110120837A (en) A cryptosystem with a discretized chaotic map
RU2459367C2 (en) Method to generate alternating key for unit coding and transfer of coded data
KR20190020988A (en) Computer-executable lightweight white-box cryptographic method and apparatus thereof
Jha et al. Proposed encryption algorithm for data security using matrix properties
Kumar et al. A block cipher using rotation and logical XOR operations
KR20160099864A (en) Device For Performing Block Cipher Algorithm LEA
Ledda et al. Enhancing IDEA algorithm using circular shift and middle square method
Mohan et al. Revised aes and its modes of operation
KR100362170B1 (en) Apparatus of encryption for round key generating and encryption processing
CN108494554A (en) A kind of data symmetric encryption method based on double plaintexts
Kadry et al. An improvement of RC4 cipher using vigenère cipher
Parvathy et al. VLSI implementation of Blowfish algorithm for secure image data transmission
Shah et al. Efficient Cryptography for data security
JPH0736672A (en) Random-number generator, communication system using the same and method therefor
Soomro et al. Secured symmetric key cryptographic algorithm for small amount of data
KR101617694B1 (en) Device For Performing Block Cipher Algorithm HIGHT
KR20160099865A (en) Device For Performing Block Cipher Algorithm HIGHT
CN108616351B (en) Full-dynamic encryption and decryption method and encryption and decryption device
Kumar et al. A comparative analysis of encryption algorithms for better utilization
Ruprah Advance Encryption and Decryption Technique using Multiple Symmetric Algorithm