EP1008251A1 - System for generating sub-keys - Google Patents

System for generating sub-keys

Info

Publication number
EP1008251A1
EP1008251A1 EP98935142A EP98935142A EP1008251A1 EP 1008251 A1 EP1008251 A1 EP 1008251A1 EP 98935142 A EP98935142 A EP 98935142A EP 98935142 A EP98935142 A EP 98935142A EP 1008251 A1 EP1008251 A1 EP 1008251A1
Authority
EP
European Patent Office
Prior art keywords
sub
keys
key
facility
series
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.)
Withdrawn
Application number
EP98935142A
Other languages
German (de)
French (fr)
Inventor
Ian Nigel Harvey
Nicholas Benedict Van Someren
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.)
nCipher Corp Ltd
Original Assignee
nCipher Corp Ltd
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 nCipher Corp Ltd filed Critical nCipher Corp Ltd
Publication of EP1008251A1 publication Critical patent/EP1008251A1/en
Withdrawn legal-status Critical Current

Links

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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Definitions

  • master key is used by the cipher to generate a plurality of sub-keys which are used by internal functions of the cipher in the encryption process.
  • sub-keys have been derived either by re-ordering selected bits of the key data or by using a simple mathematical function such as arithmetic progression.
  • the type of system described above is lacking in versatility, in that it expects a master key of a predetermined length, and cannot accommodate master keys of different lengths. It cannot deal with the generation of a variable number of sub-keys, which would improve security.
  • a facility for enhancing data security comprising a plurality of encryption modules each being responsive to a sub-key for encrypting data, an interface for receiving a master key, and a data processing machine operative to create a series of sub-keys for use with the encryption modules, the machine being operative to create each of the sub-keys by means of a hash function of the master key.
  • the hash function operates on a concatenation of the master key with at least one other piece of data. Therefore, the complexity of the result of the hash function is substantially increased which makes it more difficult for a pattern between the sub-keys and master key to be established.
  • the other data may comprise at least one of a constant, the position of the sub-key in the series, a function of the position of the sub-key in the series, preceding sub-keys in the series, and a function of preceding sub-keys in the series.
  • the concatenation comprises a first string of other data preceding the master key and a second string of other data following the master key, at least one of the first and second strings varies with the position in the series of the sub-key being calculated. In that way, the security of the cipher defined by the series of sub-keys is enhanced.
  • the hash function is preferably a one way hash function.
  • the hash function is collision free.
  • the hash function produces results the same length as the desired length of hash key.
  • a sub-key can be constructed from a concatenation of hash function results.
  • more than one sub-key could be derived from a hash function result.
  • a cryptographic system comprises n sections, each acting on target data in response to a sub- key supplied to that section.
  • the system as a whole is operated by a key schedule comprising a set of n sub-keys ⁇ K b K 2 , KJ.
  • the figure illustrates a sub-key data processing machine 10 having a series of interconnected modules.
  • a counter 12 generates a counter signal having value between 1 and n, where n is the number of sections of the system and thus the number of sub-keys to be generated.
  • a prefix generator 14 and a suffix generator 16 are provided, the generators 14, 16 being operative to generate values S, and T t respectively.
  • a key schedule is derived from the master key K, by means of a hash function embodied in the hash function module 20 as follows:
  • H() is a hash function
  • symbol represents concatenation of data
  • S, and T are generated in the prefix and suffix generators 14, 16 as indicated above.
  • S, and T t may be constructed from some or any of:
  • the length of the sub-keys required for the sections of the system is less than the length of the output of the hash function. In that case, the result of each hash operation can be used to make more than one sub-key. If the length of the sub-key required is greater than the length of the output of the hash function, the outputs of several hash operations can be concatenated to construct the sub-key. In order to ensure that the key schedule is "strong", i.e. that it is not susceptible to deciphering, at least one of S, and T t varies with the value of /.
  • the system described above is useful in that it is capable of defining a master key of arbitrary length. Moreover, a variable number of sub-keys of variable length can be generated from each master key.
  • the system avoids "weak" keys from which a pattern can be derived easily, and is generally more robust against cryptanalysis than previous encryption systems, since there is no simple relationship between sub-keys generated from master keys which have a simple relationship.

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

A facility for enhancing data security comprises - plurality of encryption modules, an interface and a data processing machine (10) the encryption modules are each responsible to a sub-key for encrypting data. The interface is operative to receive a master key, and the data processing machine (10) is operative to create a series of sub-keys for use with the modules. The machine (10) is operative to create each of the sub-keys by means of a hash function of the master key.

Description

Title: SYSTEM FOR GENERATING SUB-KEYS
This invention is concerned with data security, and in particular to the security of data transferred in the course of commercial activities such as banking.
In the field of banking, data is transferred along data carriers in such a manner that a data stream can be intercepted by an unauthorised person. Hence, there is a need to disguise the data so that it can only be comprehended by the intended and authorised user.
In one method of disguising data, a cryptographic cipher system is used. If data is to be sent between a sender and a recipient along a channel which is of questionable security, then it is encrypted using a cipher implemented by the system.
Most ciphers require a secret "master key" to be shared between sender and recipient. In many systems, the master key is used by the cipher to generate a plurality of sub-keys which are used by internal functions of the cipher in the encryption process.
In the past, sub-keys have been derived either by re-ordering selected bits of the key data or by using a simple mathematical function such as arithmetic progression.
The type of system described above is lacking in versatility, in that it expects a master key of a predetermined length, and cannot accommodate master keys of different lengths. It cannot deal with the generation of a variable number of sub-keys, which would improve security.
Furthermore, where there is a simple relationship between two master keys used with the above system, there may be a correspondingly simple relationship between the sets of sub- keys so produced. That relationship could easily be found by a cryptanalyst, and the security of a system protected in that matter could be compromised. It is an object of the present invention to provide a system which ameliorates the above problems.
According to the invention there is provided a facility for enhancing data security, the facility comprising a plurality of encryption modules each being responsive to a sub-key for encrypting data, an interface for receiving a master key, and a data processing machine operative to create a series of sub-keys for use with the encryption modules, the machine being operative to create each of the sub-keys by means of a hash function of the master key.
In that way, the series of sub-keys corresponding to a master key will not be evident to an unauthorised user.
Preferably, the hash function operates on a concatenation of the master key with at least one other piece of data. Therefore, the complexity of the result of the hash function is substantially increased which makes it more difficult for a pattern between the sub-keys and master key to be established.
The other data may comprise at least one of a constant, the position of the sub-key in the series, a function of the position of the sub-key in the series, preceding sub-keys in the series, and a function of preceding sub-keys in the series.
In a preferred embodiment of the invention, the concatenation comprises a first string of other data preceding the master key and a second string of other data following the master key, at least one of the first and second strings varies with the position in the series of the sub-key being calculated. In that way, the security of the cipher defined by the series of sub-keys is enhanced.
The hash function is preferably a one way hash function. In a preferred embodiment, the hash function is collision free.
In a preferred embodiment of the invention, the data processing machine derives the sub-keys of the series and then stores the series for later use by the encryption modules.
Alternatively, the sub-keys are derived as they are required by the encryption modules.
Preferably, the sub-keys are derived in the order in which they are to be used.
In a preferred embodiment of the invention, the hash function produces results the same length as the desired length of hash key. Alternatively, if the hash function results are shorter than the desired length of sub-key, then a sub-key can be constructed from a concatenation of hash function results. Furthermore, if the hash function results are longer than the desired length of sub-key, then more than one sub-key could be derived from a hash function result.
Further preferred aspects and features of the invention will be appreciated from the following description of a specific and preferred embodiment of the invention with reference to the drawing appended hereto which shows a schematic diagram illustrating the function of a data processing machine contained in a cryptographic system in accordance with the invention.
A cryptographic system comprises n sections, each acting on target data in response to a sub- key supplied to that section. Hence, the system as a whole is operated by a key schedule comprising a set of n sub-keys {KbK2, KJ.
The figure illustrates a sub-key data processing machine 10 having a series of interconnected modules.
A counter 12 generates a counter signal having value between 1 and n, where n is the number of sections of the system and thus the number of sub-keys to be generated.
A prefix generator 14 and a suffix generator 16 are provided, the generators 14, 16 being operative to generate values S, and Tt respectively.
S„ „ and a master key K are fed forward to a concatenation module 18 where the data is concatenated, and then the concatenated data is fed to a hash function module 20.
A key schedule is derived from the master key K, by means of a hash function embodied in the hash function module 20 as follows:
K, = H (SA K \ TJ l≤ i ≤ n,
where H() is a hash function, the | symbol represents concatenation of data and S, and T, are generated in the prefix and suffix generators 14, 16 as indicated above. S, and Tt may be constructed from some or any of:
( 1 ) a constant value ;
(2) the value i; (3) a function of the value i;
(4) any of the values K, ,Kl_I;
(5) a function of the values K, K,_,.
The sub-keys are used in order, so that the first use of K, is after the first use of each of
Kj, K,.,. This is an optional arrangement which allows sequential production of sub-keys, such as in the case where a sub-key is a function of preceding sub-keys. As shown in the drawing, the result output by the hash function module 20 is fed back to the prefix and suffix generators 14, 16 so that they can utilise the result in later iterations. The machine can thus derive each sub-key as it is needed. However, it may be more useful for the machine to derive all of the sub-keys at an initial stage and store them in turn for later use.
In some cases, the length of the sub-keys required for the sections of the system is less than the length of the output of the hash function. In that case, the result of each hash operation can be used to make more than one sub-key. If the length of the sub-key required is greater than the length of the output of the hash function, the outputs of several hash operations can be concatenated to construct the sub-key. In order to ensure that the key schedule is "strong", i.e. that it is not susceptible to deciphering, at least one of S, and Tt varies with the value of /.
For optimal security, the hash function H() should be chosen to be one way and collision free.
The system described above is useful in that it is capable of defining a master key of arbitrary length. Moreover, a variable number of sub-keys of variable length can be generated from each master key. The system avoids "weak" keys from which a pattern can be derived easily, and is generally more robust against cryptanalysis than previous encryption systems, since there is no simple relationship between sub-keys generated from master keys which have a simple relationship.

Claims

1. A facility for enhancing data security, the facility comprising a plurality of encryption modules each being responsive to a sub-key for encrypting data, an interface for receiving a master key, and a data processing machine (10) operative to create a series of sub-keys for use with the encryption modules, the machine (10) being operative to create each of the sub-keys by means of a hash function of the master key.
2. A facility in accordance with claim 1 wherein the hash function operates on a concatenation of the master key with at least one other piece of data.
3. A facility in accordance with claim 2 wherein the other piece of data comprises at least one of a constant, the position of the sub-key in the series, a function of the position of the sub-key in the series, preceding sub-keys in the series, and a function of preceding sub-keys in the series.
4. A facility in accordance with claim 2 or claim 3 wherein the concatenation comprises a first string of other data preceding the master key and a second string of other data following the master key, at least one of the first and second strings varies with the position in the series of the sub-key being calculated.
5. A facility in accordance with any preceding claim wherein the hash function is a one way hash function.
6. A facility in accordance with claim 5 wherein the hash function is collision free.
7. A facility in accordance with any preceding claim wherein the data processing machine (10) derives the sub-keys of the series and then stores the series for later use by the encryption modules.
8. A facility in accordance with any one of claims 1 to 6 wherein the sub-keys are derived as they are required by the encryption modules.
9. A facility in accordance with claim 7 or claim 8 wherein the sub-keys are derived in the order in which they are to be used.
10. A facility in accordance with any preceding claim the hash function produces results the same length as the desired length of sub-key.
EP98935142A 1997-08-29 1998-07-17 System for generating sub-keys Withdrawn EP1008251A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB9718200A GB2329096A (en) 1997-08-29 1997-08-29 Creating sub-keys from hashed cryptographic master key
GB9718200 1997-08-29
PCT/GB1998/002129 WO1999012309A1 (en) 1997-08-29 1998-07-17 System for generating sub-keys

Publications (1)

Publication Number Publication Date
EP1008251A1 true EP1008251A1 (en) 2000-06-14

Family

ID=10818133

Family Applications (1)

Application Number Title Priority Date Filing Date
EP98935142A Withdrawn EP1008251A1 (en) 1997-08-29 1998-07-17 System for generating sub-keys

Country Status (5)

Country Link
EP (1) EP1008251A1 (en)
AU (1) AU8450198A (en)
GB (1) GB2329096A (en)
WO (1) WO1999012309A1 (en)
ZA (1) ZA986026B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105610848A (en) * 2016-01-08 2016-05-25 北京工业大学 Centralized data preservation method and system with source data security guaranty mechanism

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU6816101A (en) * 2000-06-05 2001-12-17 Phoenix Tech Ltd Systems, methods and software for remote password authentication using multiple servers
EP1418701A1 (en) * 2002-11-11 2004-05-12 STMicroelectronics Limited Transmission and storage of encryption keys

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5172414A (en) * 1991-09-13 1992-12-15 At&T Bell Laboratories Speech and control message encrypton in cellular radio
US5483598A (en) * 1993-07-01 1996-01-09 Digital Equipment Corp., Patent Law Group Message encryption using a hash function
CA2158290A1 (en) * 1994-09-29 1996-03-30 Leon A. Pintsov Postage evidencing system with secure summary reports
US5796839A (en) * 1995-10-16 1998-08-18 Sony Corporation Encryption method, encryption apparatus, recording method, decoding method, decoding apparatus and recording medium
US5608801A (en) * 1995-11-16 1997-03-04 Bell Communications Research, Inc. Efficient cryptographic hash functions and methods for amplifying the security of hash functions and pseudo-random functions
GB2308282B (en) * 1995-12-15 2000-04-12 Lotus Dev Corp Differential work factor cryptography method and system
US5754659A (en) * 1995-12-22 1998-05-19 General Instrument Corporation Of Delaware Generation of cryptographic signatures using hash keys

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO9912309A1 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105610848A (en) * 2016-01-08 2016-05-25 北京工业大学 Centralized data preservation method and system with source data security guaranty mechanism
CN105610848B (en) * 2016-01-08 2018-05-25 北京工业大学 Possess the centralized data security method and system of source data Security Assurance Mechanism

Also Published As

Publication number Publication date
GB9718200D0 (en) 1997-11-05
GB2329096A (en) 1999-03-10
AU8450198A (en) 1999-03-22
WO1999012309A1 (en) 1999-03-11
ZA986026B (en) 1999-01-28

Similar Documents

Publication Publication Date Title
CA2218148C (en) Generating unique and unpredictable values
US7860241B2 (en) Simple universal hash for plaintext aware encryption
US5222139A (en) Cryptographic method and apparatus
US11546135B2 (en) Key sequence generation for cryptographic operations
US7715553B2 (en) Encrypting a plaintext message with authentication
US8509427B2 (en) Hybrid mode cryptographic method and system with message authentication
US20080080709A1 (en) Method for encrypting information and device for realization of the method
EP2137856A1 (en) A simple and efficient one-pass authenticated encryyption scheme
US20090245510A1 (en) Block cipher with security intrinsic aspects
Mahendran et al. Generation of key matrix for hill cipher encryption using classical cipher
Lamba Design and analysis of stream cipher for network security
US6463150B1 (en) Encryption device for information in binary code
Alabdulrazzaq et al. Performance evaluation of cryptographic algorithms: DES, 3DES, blowfish, twofish, and threefish
US7093126B1 (en) Encryption schemes with almost free integrity awareness
Suresh et al. ETSET: Enhanced Tiny Symmetric Encryption Techniques to Secure Data Transmission among IoT Devices
WO1994021066A1 (en) A method and apparatus for generating a digital message authentication code
EP1008251A1 (en) System for generating sub-keys
JP2001177518A (en) Enciphering method, and decoding method and device
Landge et al. VHDL based Blowfish implementation for secured embedded system design
WO2022096141A1 (en) Method for processing encrypted data
JP2000047580A (en) Encipher converting device, decipher converting device, cryptographic communication equipment and automatic toll collecting device
KR20070109154A (en) Keystream generation method in cryptosystem by using a clock-controlled function
Narayanaswamy et al. HIDE: Hybrid symmetric key algorithm for integrity check, dynamic key generation and encryption
EP4113894B1 (en) Method for performing cryptographic operations in a processing device, corresponding processing device and computer program product
El-Semary et al. SPCBC: A secure parallel cipher block chaining mode of operation based on logistic chaotic map

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20000309

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR GB

17Q First examination report despatched

Effective date: 20010605

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20030305