US20040260950A1 - Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system - Google Patents

Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system Download PDF

Info

Publication number
US20040260950A1
US20040260950A1 US10/812,352 US81235204A US2004260950A1 US 20040260950 A1 US20040260950 A1 US 20040260950A1 US 81235204 A US81235204 A US 81235204A US 2004260950 A1 US2004260950 A1 US 2004260950A1
Authority
US
United States
Prior art keywords
user
encryption algorithm
key
encryption
operated
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.)
Abandoned
Application number
US10/812,352
Inventor
Hirokazu Ougi
Hideo Takashima
Hidenobu Taniguchi
Munetoshi Kouchi
Hiroshi Hayami
Hajime Asada
Hideki Harazaki
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.)
Hitachi Ltd
Hitachi Advanced Systems Corp
Hitachi Keiyo Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Advanced Systems Corp
Hitachi Keiyo Engineering Co 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 Hitachi Ltd, Hitachi Advanced Systems Corp, Hitachi Keiyo Engineering Co Ltd filed Critical Hitachi Ltd
Priority to US10/812,352 priority Critical patent/US20040260950A1/en
Assigned to HITACHI ADVANCED SYSTEMS CORPORATION, HITACHI KEIYO ENGINEERING CO., LTD., HITACHI, LTD. reassignment HITACHI ADVANCED SYSTEMS CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ASADA, HAJIME, HARAZAKI, HIDEKI, HAYAMI, HIROSHI, KOUCHI, MUNETOSHI, OUGI, HIROKAZU, TAKASHIMA, HIDEO, TANIGUCHI, HIDENOBU
Publication of US20040260950A1 publication Critical patent/US20040260950A1/en
Abandoned legal-status Critical Current

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation

Definitions

  • the present invention relates to cryptographic communication method, encryption algorithm shared control method and network communication system for converting encryption algorithm for cryptographic communication to other encryption algorithm, and more particularly to cryptographic communication method, encryption algorithm shared control method and network communication system suitable for sharing the same encryption algorithm as encryption algorithm operated by a plurality of users and changing the shared encryption algorithm to other encryption algorithm.
  • a method of transmitting encrypted information is generally employed. Because of recent advancement of performance of a personal computer, in a case where information to be transmitted is digital information such as document and video, often such information is encrypted on software basis. If a user U[A] carries out cryptographic communication with a user U[B], the user U[A] encrypts transmission information with an encryption key and transmits that encrypted data. On the other hand, the user U[B] receives this data and decrypts that received data with a decryption key. This cryptographic communication can be established on a presumption that the user U[A] and user U[B] share the same encryption algorithm. Usually, the encryption algorithm is shared by the following manners. The encryption algorithm is recorded in a recording medium such as a floppy disk by an encryption system manager and distributed to each user. Or the encryption algorithm is installed in an information processing unit having encryption processing function such that it can be executed and the information processing unit is distributed.
  • a scramble key is generated as a key for encrypting information, but also a session key for encrypting this scramble key is generated. Then, duplex encryption method is employed so that user U[A] transmits information encrypted with the scramble key and the scramble key encrypted with the session key to user U[B]. Each time when cryptographic communication occurs, the scramble key is changed.
  • the above described method of recording the encryption algorithm in a recording medium and distributing it to each user and method of distributing an information processing unit having an encryption function in which the encryption algorithm is installed so that it can be executed requires time for distribution because the distribution is carried out by transportation or the like. If the encryption algorithm is distributed to each user, an encryption processing unit in which the encryption algorithm is installed is connected to a unit having a communication function so as to construct a system, and whether or not the cryptographic communication is enabled is verified on function basis. Because this functional verification is carried out with communication between users, time and labor are needed.
  • the encryption algorithm to be changed needs to be distributed to each user.
  • distribution of this encryption algorithm is carried out in the same manner as (1), time and labor are needed thereby the efficiency being lower.
  • the intensity of the encryption algorithm needs to be set corresponding to the information processing speed of the information appliance of a day in which it is used and changed to an encryption algorithm whose intensity is higher.
  • a distribution method for an encryption algorithm having an excellent efficiency is needed like above (2).
  • the inventor of the present invention has considered a method for constructing a cryptographic communication system in which a plurality of users are connected to a station for managing the key for operating the encryption algorithm.
  • this system requires such a complicated system operating function for grasping the encryption algorithms of each user, distributing the same algorithm so as to be shared if the algorithms of users about to communicate with each other are different, if the user is changing the algorithm, suspending the cryptographic communication with the user whose algorithm is being changed.
  • a key for use by the user may not correspond to that encryption algorithm to be changed. If a common key encryption algorithm is changed to a public key encryption algorithm or conversely if the public key encryption algorithm is changed to the common key encryption algorithm, there is a problem that the key for use by the user cannot be used for the changed encryption algorithm.
  • the encryption algorithm is changed to an encryption algorithm having a high intensity, usually, the key length for use is prolonged. Therefore, if the key for use by the user can be used under the changed encryption algorithm, there is a problem that the intensity of the encryption is not increased if the same key length is used.
  • the present invention has been made in views of the above problems and therefore, it is an object of the invention to provide a cryptographic communication method, encryption algorithm sharing management method, encryption algorithm conversion method, and network communication system capable of distributing an encryption algorithm with the safety and converting it in a state that time and labor required therefor are reduced.
  • a cryptographic communication method wherein when different encryption algorithms are operated at a transmission side and a reception side, the transmission side encrypts an encryption algorithm operated at the transmission side with an encryption algorithm operated at the reception side and transmits the encrypted algorithm to the reception side.
  • a cryptographic communication method wherein information on encryption algorithm operated at a transmission side and information on an encryption algorithm operated at a reception side are obtained from the transmission side and when different encryption algorithms are operated at the transmission side and the reception side, an encryption algorithm operated at the transmission side is encrypted with an encryption algorithm operated at the reception side and transmitted to the reception side.
  • an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user and the encryption algorithm operated by the user is preliminarily described about each user and then retrieving encryption algorithm operated by the user of the transmission side and the encryption algorithm operated by the user of the reception side, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, data indicating the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side.
  • an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; querying a data base in which a correspondence between the user identifier indicating the user, an encryption algorithm operated by the user and an encryption key thereof is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and the encryption key thereof and the encryption algorithm operated by the user of the reception side and the encryption key thereof, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, data indicating the encryption algorithm operated by the user of the transmission side and encryption key produced based on the encryption key operated by the user of the reception side corresponding to a key length of the encryption algorithm is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of
  • an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between user identifier indicating the user, an encryption algorithm operated by the user and an encryption key thereof is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and the encryption key thereof and the encryption algorithm operated by the user of the reception side and the encryption key thereof, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, signature data produced for the encryption key operated by the user of the transmission side is transmitted to the user of the transmission side and data obtained by encrypting the encryption algorithm operated by the user of the transmission side with the encryption algorithm operated by the user of the reception side and signature data produced for an encryption key
  • an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user, an encryption algorithm operated by the user and an encryption key thereof is preliminarily described about each user so as to obtain an encryption algorithm operated by the user of the transmission side and an encryption key thereof and an encryption algorithm operated by the user of the reception side and an encryption key thereof, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, signature data produced for the encryption key operated by the user of the transmission side is transmitted to the user of the transmission side and data indicating the encryption algorithm operated by the user of the transmission side and encryption key produced based on the encryption key operated by the user of the reception side corresponding to a
  • Network communication system composed by connecting a plurality of users, comprising at least an encryption key management station to be connected from a user of a transmission side, the encryption key management station obtaining, from the user of the transmission side, information indicating an encryption algorithm operated by the user and information indicating an encryption algorithm operated by a user of a reception side and if different encryption algorithms are operated by the users of the transmission side and the reception side, encrypting the encryption algorithm operated by the user of the transmission side with the encryption algorithm operated by the user of reception side and transmitting it to the user of the reception side.
  • network communication system composed by connecting a plurality of users, comprising at least an encryption key management station to be connected from a user of a transmission side, the encryption key management station comprising data base in which a correspondence between a user identifier indicating the user and an encryption algorithm operated by the user is preliminarily described about each user;
  • the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side
  • the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side.
  • an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; querying a data base in which a correspondence between the user identifier indicating the user and an encryption algorithm operated by the user is preliminarily described about each user so as to retrieve an encryption algorithm operated by the user of the transmission side and an encryption algorithm operated by the user of the reception side; and if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, data indicating the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of reception side.
  • an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user, an encryption algorithm operated by the user and an encryption key is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and an encryption key thereof and the encryption algorithm operated by the user of the reception side and an encryption key, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, data indicating the encryption algorithm operated by the user of the transmission side and the encryption key produced based on an encryption key operated by the user of the reception side corresponding to a key length of the encryption algorithm is encrypted with the encryption algorithm operated by the user of reception side and transmitted to the user
  • an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user, an encryption algorithm operated by the user and an encryption key is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and the encryption key thereof and the encryption algorithm operated by the user of the reception side and encryption key thereof, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, signature data produced for an encryption key operated by the user of the transmission side is transmitted to the user of the transmission side and the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side with signature data produced for
  • an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user, encryption algorithm operated by the user and encryption key is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and an encryption key thereof and the encryption algorithm operated by the user of the reception side and encryption key, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, signature data produced for an encryption key operated by the user of the transmission side is transmitted to the user of the transmission side and data indicating the encryption algorithm operated by the user of the transmission side and encryption key produced based on an encryption key operated by the user of the reception side corresponding to a key
  • a network communication system composed by connecting a plurality of users, comprising at least an encryption key management station to be connected from a user of a transmission side, the encryption key management station obtaining, from the user of the transmission side, information indicating an encryption algorithm operated by the user and information indicating an encryption algorithm operated by a user of a reception side, and when different encryption algorithms are operated by the user of the transmission side and the user of the reception side, encrypting the encryption algorithm operated by the user of the transmission side with the encryption algorithm operated by the user of the reception side and transmitted to the user of reception side.
  • a network communication system composed by connecting a plurality of users, comprising at least an encryption key management station to be connected from a user of a transmission side, the encryption key management station comprising a data base in which a correspondence between a user identifier indicating a user and an encryption algorithm operated by the user is preliminarily described about each user;
  • a user identifier indicating the user and a reception side user identifier are obtained from the user of the transmission side, and the data base is queried with the obtained identifier as a key so as to obtain an encryption algorithm operated by the user of the transmission side and encryption algorithm operated by the user of the reception side, and if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side.
  • a cryptographic communication method wherein if different encryption algorithms are operated by a transmission side and a reception side, the encryption algorithm operated by the reception side is encrypted with the encryption algorithm operated by the transmission side and transmitted to the transmission side.
  • a cryptographic communication method wherein information indicating an encryption algorithm operated by a transmission side and information indicating an encryption algorithm operated by a reception side are obtained from the transmission side and when different encryption algorithms are operated by the transmission side and the reception side, the encryption algorithm operated by the reception side is encrypted with the encryption algorithm operated by the transmission side and transmitted to the transmission side.
  • an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; querying a data base in which a correspondence between the user identifier indicating user and encryption algorithm operable by the user is preliminarily described about each user so as to obtain an encryption algorithm operable by the user of the transmission side and an encryption algorithm operable by the user of the reception side; determining whether or not there is an encryption algorithm operable by the user of the transmission side and the user of the reception side commonly; and if the commonly operable encryption algorithm exists, it is notified the user of the transmission side that cryptographic communication at the user of the transmission side and the user of the reception side is enabled.
  • an encryption algorithm conversion method for converting an operating first encryption algorithm to other second encryption algorithm comprising: querying a data base in which a correspondence between a user identifier indicating a user, an encryption algorithm operated by the user and an encryption key thereof is preliminarily described about each user with a user whose encryption algorithm is to be converted as a key so as to obtain a first encryption algorithm operated by the user and a first encryption key; and supplying first and second signature data written in the first and second encryption keys with a first management secret key preliminarily allocated for management and operated on the first encryption algorithm, public key data obtained by encrypting a second public key corresponding to a second management secret key operated on the second encryption algorithm preliminarily allocated for management with the first encryption algorithm, a second encryption algorithm encrypted with the first encryption algorithm and signature data produced based on the second management secret key to the user.
  • FIG. 1 is an explanatory diagram showing a network communication system
  • FIG. 2 is a functional block diagram showing a functional structure of respective portions of the network communication system
  • FIGS. 3A and 3B are explanatory diagrams showing information to be stored in data base accessed by a key management work station, FIG. 3A indicates information to be stored in a network encryption algorithm control data base and FIG. 3B indicates information to be stored in the network key management data base;
  • FIGS. 4A and 4B are explanatory diagrams showing information to be stored in data base accessed by a personal computer, FIG. 4A indicates information to be stored in encryption algorithm control data base and FIG. 4B indicates information to be stored in a key structure management data base;
  • FIG. 5 is a schematic data flow diagram showing conversion of encryption algorithm to which the present invention is applied.
  • FIG. 6 is a schematic data flow diagram showing encryption algorithm conversion for common key cipher to which the present invention is applied;
  • FIG. 7 is a data flow diagram showing cryptographic communication by common key cipher to which the present invention is applied;
  • FIG. 8 is a flow chart showing a former half portion of encryption algorithm conversion procedure by common key cipher to which the present invention is applied;
  • FIG. 9 is a flow chart showing a latter half portion of encryption algorithm conversion procedure by common key cipher to which the present invention is applied;
  • FIGS. 10A and 10B are explanatory diagrams showing a change of an encryption key of common key cipher to which the present invention is applied;
  • FIG. 10A indicates a case in which the key length is shortened, and
  • FIG. 10B indicates a case in which the key length is prolonged;
  • FIG. 11 is a data flow diagram showing cryptographic communication by public key cipher to which the present invention is applied;
  • FIG. 12 is a data flow chart showing encryption algorithm conversion by public key cipher to which the present invention is applied;
  • FIG. 13 is a flow chart showing a former half portion of encryption algorithm conversion procedure by public key cipher to which the present invention is applied;
  • FIG. 14 is a flow chart showing a latter half portion of encryption algorithm conversion procedure by public key cipher to which the present invention is applied;
  • FIG. 15 is an explanatory diagram showing a change of encryption key of public key cipher to which the present invention is applied;
  • FIG. 16 is a data flow chart showing cryptographic communication system by public key cipher algorithm to which the present invention is applied;
  • FIG. 17 is a data flow chart showing encryption algorithm conversion by a portable information processing apparatus to which the present invention is applied;
  • FIG. 18 is a data flow chart showing other embodiment of encryption algorithm conversion by a portable information processing apparatus to which the present invention is applied;
  • FIG. 19 is an explanatory diagram showing a data base relating to encryption key and encryption algorithm to which the present invention is applied;
  • FIG. 20 is a data flow diagram showing a case in which a encryption key is generated by user in encryption algorithm conversion to which the present invention is applied;
  • FIG. 21 is a block diagram showing cryptographic communication system by public key cipher algorithm to which the present invention is applied;
  • FIG. 22 is an explanatory diagram showing other embodiment of network communication system
  • FIG. 23 is an explanatory diagram showing an operation of encryption of key recovery function to which the present invention is applied.
  • FIG. 24 is an explanatory diagram showing an operation of decryption of key recovery function to which the present invention is applied.
  • FIG. 25 is a block diagram showing cryptographic communication system using IC card based on public key cipher algorithm to which the present invention is applied.
  • a key management station for controlling the encryption algorithm of (1) is placed in the cryptographic communication system, so as to register all encryption algorithms used by user and encryption algorithms to be updated in this key management station.
  • Each user carrying out the cryptographic communication and the key management station are connected to each other through such an electronic communication line as a satellite communication line or ground communication line or the like and the key management station always monitors the condition of the encryption algorithm operated by the user through the line. If a necessity of the cryptographic communication arises between users, whether or not the cryptographic communication is possible is determined by judging from the operating condition of the encryption algorithm to be operated by the user.
  • the key management station grasps the operating condition of the encryption algorithm of each user and information of the key for use by the user. If the encryption algorithm operated by the user is changed, information for converting the key is created so as to be capable of adapting to an encryption algorithm in which the key for use by the user is changed and then transmitted to that user.
  • Possible cases include a case (a) in which the users intending to carry out the cryptographic communication share the same encryption algorithm and a case (b) in which the users intending to carry out the cryptographic communication do not share the same encryption algorithm. Corresponding functions to these cases will be described below.
  • the key management station determines that cryptographic communication between the users is possible and transmits this determination result to the users.
  • the key management station determines that cryptographic communication between the users is impossible.
  • the key management station sets up encryption algorithm for use in cryptographic communication between the users and transmits this encryption algorithm to the users through a communication line.
  • the intensity of the encryption algorithm to an encryption algorithm of the same series having an intensity equivalent to or higher than that encryption algorithm, for example, it can be considered that (a) with respect to the encryption algorithm used by the user, the user supplies an encryption algorithm of the same series having an intensity equivalent to or higher than the encryption algorithm used by the user, and (b) with respect to the encryption algorithm used by the user, the key management station possesses an encryption algorithm generating apparatus for the encryption algorithm for use by the user and supplies an encryption algorithm of the same series having an intensity equivalent to or higher than that encryption algorithm.
  • the key management station possesses an encryption algorithm generating apparatus for the encryption algorithm for use by the user and supplies an encryption algorithm of the same series having an intensity equivalent to or higher than that encryption algorithm.
  • the key management station sets up a user using an encryption algorithm except the registered encryption algorithm of the same series having an intensity equivalent to or higher, as required, produces information for converting a key for use by the user and then transmits the aforementioned encryption algorithm of the same series having an intensity equivalent to or higher and information for key conversion to this user.
  • the key management station produces an encryption algorithm of the same series having an intensity equivalent to or higher than the encryption algorithm used by the user and registers the produced encryption algorithm.
  • the key management station sets up user using an encryption algorithm other than the registered encryption algorithm of the same series having an intensity equivalent to or higher, as required produces information for converting a key used by the user and then transmits the encryption algorithm of the same series having an intensity equivalent to or higher and information for key conversion to this user.
  • the user receiving the encryption algorithm of the same series having an intensity equivalent to or higher and information for key conversion converts the key for use by using the received information for key conversion as required and carries out cryptographic communication according to the received encryption algorithm.
  • the key management station produces the encryption algorithm for conversion by user and as required, information for conversion of the key for use by each user according to the above (3).
  • the key management station encrypts the encryption algorithm for conversion by each user and key conversion information produced as required by using the encryption algorithm operated by the user and transmits it to each user through communication line.
  • Each user decrypts data transmitted from the key management station using the operated encryption algorithm so as to obtain the encryption algorithm for conversion and key conversion information.
  • Each user encrypts a statement “encryption algorithm change completed” using the changed encryption algorithm and transmits it to the key management station through communication line.
  • the key management station decrypts the encrypted and transmitted data and obtains the statement “encryption algorithm change completed” and confirms that user's encryption algorithm has converted and the encryption function operates properly.
  • FIG. 1 a network communication system to which the present invention is applicable will be described with reference to FIG. 1.
  • an example of a structure in which a plurality of personal computers (information processing apparatuses) 100 , 200 used by users are connected to the key management station 400 will be described.
  • the encryption algorithms operated by this system are assumed to be A[ 1 ]-A[n], B[ 1 ]-B[m] and these encryption algorithms are controlled by the key management station.
  • the encryption algorithms A[ 1 ]-A[n] are encryption algorithms belonging to the same series A having an intensity equivalent or different.
  • the key management station updates security by changing encryption algorithm to a new encryption algorithm of the same series having an intensity equivalent to or higher than the encryption algorithm concerned.
  • the key management station manages the encryption algorithm operated by the user and user ID with correspondence therebetween assuming that the user ID of user operating the encryption algorithm A[ 1 ] is U[A 1 , 1 1 ]-U[A 1 , N 1 ], user ID of user operating the encryption algorithm A[ 2 ] is U[A 2 , 1 2 ]-U[A 2 , N 2 ], user ID of user operating the encryption algorithm A[n] is U[A n , 1 n ]-U[A n , N n ], user ID of user operating the encryption algorithm B[ 1 ] is U[B 1 , 1 1 ]-U[B 1 , M 1 ], user ID of user operating the encryption algorithm B[ 2 ] is U[B 2 , 1 2 ]-U[B 2 , M 2 ], user ID of user operating the encryption algorithm B[m] is U[B n , 1 n ]-U[B n , M m ].
  • personal computers 100 used by a user operating one of the encryption algorithms belonging to series A (hereinafter referred to as encryption algorithm A)
  • personal computers 200 used by a user operating one of the encryption algorithms belonging to series B (hereinafter referred to as encryption algorithm B)
  • the key management station 400 provided with a key management work station 500 are connected through a network.
  • FIG. 22 shows a different embodiment from FIG. 1 of the network communication system in which a plurality of encryption algorithms exist.
  • algorithm A, algorithm B, algorithm C and algorithm D exist as the encryption algorithm.
  • the encryption algorithm for use is determined by user's selection.
  • a range of users using the encryption algorithm A is indicated with a solid line
  • a range of users using the encryption algorithm B is indicated with a dot and dash line
  • a range of users using the encryption algorithm C is indicated with two dots and dash line
  • a range of users using the encryption algorithm D is indicated with broken line.
  • the key management station stores users capable of using each encryption algorithm in data base.
  • the key management work station grasps the operating condition of the encryption algorithm of the transmission side and reception side according to the aforementioned data base.
  • Whether or not the encryption algorithm can be shared between the users is determined depending on user's convenience. The range of users using each encryption algorithm is changed by user's convenience.
  • the key management work station changes information stored in data base for indicating users using each encryption algorithm by notification from the user.
  • the personal computers 100 and 200 are connected to each other so as to construct a network.
  • the personal computer 100 is used by a transmission side user and the personal computer 200 is used by a reception side user will be described. It is needless to say that because the personal computers 100 , 200 have the same structure, they can be used for both.
  • the key management work station 500 is connected to the personal computer 100 for use by at least the transmission side user.
  • the personal computer 100 ( 200 ) for use by the transmission side (reception side) user includes key structure control function 110 ( 210 ), encryption algorithm control function 120 ( 220 ), scramble function 130 ( 230 ), descramble function 140 ( 240 ) and cryptographic communication control function 150 ( 250 ).
  • key structure control data base 180 ( 280 ) and encryption algorithm data base 190 ( 290 ) are connected to the personal computer 100 ( 200 ) so as to be accessible therefrom.
  • These data bases may be provided separately from the personal computers 100 , 200 or may be provided integrally therewith.
  • the aforementioned data bases may be shared by plural personal computers.
  • the aforementioned key management work station 500 includes scramble function 530 , descramble function 540 , cryptographic communication control function 550 , encryption algorithm generating function 595 , network encryption control function 560 , and network key management function 570 , and is connected to network encryption algorithm control data base 590 and network key management control data base 580 so as to be accessible therefrom. These data bases may be provided separately of the key management work station 500 or may be provided integrally with the key management work station 500 .
  • a user ID of each user and encryption algorithm are registered in the network encryption algorithm control data base DB 590 with correspondence therebetween.
  • the network encryption algorithm control function 570 controls the data bases for the aforementioned two kinds of data, and carries out registration, updating and deletion of the encryption algorithm for use by each user.
  • the encryption algorithm generating function 595 has a function for generating the encryption algorithm of series A.
  • the encryption algorithm generating function 595 generates different encryption algorithms belonging to series A in which the key length for use is the same as or longer than current encryption algorithms belonging to series A.
  • the network key structure control function 570 controls the key to be operated by this system and stores information of the key to be used by the user in the network key structure control data base.
  • the scramble function 530 is a function for encrypting data to be transmitted by the key management station 400 (see FIG. 1) to the user and the descramble function 540 is a function for decrypting the encoded data received by the key management station 400 (see FIG. 1) from the user.
  • the network key management function 570 controls the key to be used for encrypting and decrypting and stores information about the key for use by the user with a correspondence to the encryption algorithm operated for the key structure control data bases 180 , 280 .
  • the encryption algorithm control function 120 controls the encryption algorithm operated by the user.
  • the operating encryption algorithm converts the encryption algorithm according to an instruction from the key management work station 500 .
  • the encryption algorithm control data base stores the encryption algorithms to be distributed by the key management station 400 (see FIG. 1).
  • the scramble function 130 ( 230 ) is a function for encrypting data to be transmitted by the user and the descramble function 140 ( 240 ) is a function for decrypting the encrypted data received by the user.
  • the key structure control function 110 controls the key for use for encrypting and decrypting and stores the keys with a correspondence to the encryption algorithm to be operated by the key structure control data base 180 ( 280 ).
  • user ID for identifying a user, name of the encryption algorithm to be operated by the user, a correspondence to the encryption algorithm version, updating date, key management station ID for identifying the key management station, name of the encryption algorithm to be operated by the key management station, a correspondence with the encryption algorithm version and its updating date are stored in the network encryption algorithm control data base.
  • user ID for identifying a user name of the encryption algorithm to be operated by the user, a correspondence between encryption algorithm version and key information indicating the encryption key to be operated, its updating date, key management station ID for identifying the key management station, name of the encryption algorithm to be operated by the key management station, a correspondence between the encryption algorithm version and key information indicating the encryption key to be operated, and its updating date are stored in the network key management data base.
  • a name of the encryption algorithm, a correspondence of the encryption algorithm version, and its updating date are stored in the encryption algorithm control data base.
  • a name of the encryption algorithm, encryption algorithm version, a correspondence to user key information indicating user's encryption key, and its updating date, and a name of the encryption algorithm, encryption algorithm version, a correspondence to key information of the key management station indicating the encryption key of the key management station, and its updating date are stored in the key management data base.
  • the user U[A] specifies the user U[B] relative to the key management work station 500 and requests to issue a session key for use in cryptographic communication.
  • the key management work station 500 receives this request and issues the user U[B] with a session key which enables cryptographic communication to the user U[A].
  • the user U[B] stores the same encryption algorithm as the user U[A] in the encryption algorithm data base 190 .
  • the user U[B] decrypts the encrypted statement transmitted from the user U[A] by the descramble function 140 to obtain data M.
  • the cryptographic communication can be carried out without any special treatment. However, if the same encryption algorithm is not shared, the encryption algorithm possessed by user is converted so as to make both the users share the same encryption algorithm thereby achieving the cryptographic communication.
  • This encryption algorithm conversion is carried out depending on the condition of the encryption algorithm possessed by the user as follows.
  • the encryption algorithms of the same series are controlled based on the version number.
  • the encryption algorithm is converted to the other encryption algorithm of the same series having the same or a different encryption intensity.
  • the encryption algorithm mentioned here means a procedure for converting a series of data.
  • the encryption mentioned here means data conversion and the decryption means inverse conversion of converted data.
  • K is binary data string and M is another binary data string.
  • ⁇ function which is determined by K.
  • xor indicates exclusive ⁇ OR between M and K.
  • the data M is obtained by inversely converting the converted data ⁇ (M).
  • the procedure for data conversion and inverse conversion like this ⁇ function is called encryption algorithm.
  • the functions f, g are a single encryption algorithm, so that it can be considered that the function f corresponds to encrypting of data and the function g corresponds to decrypting of data.
  • the encryption algorithm of the same series mentioned in the aforementioned encryption algorithm conversion means an encryption algorithm obtained by changing an order of a part of the data conversion or assembling by changing the values of parameters for use.
  • the encryption algorithm of the same series is referred to as encryption algorithm of a different version.
  • the key possessed by the user is also converted corresponding to the converted encryption algorithm.
  • the encryption algorithm EANG and encryption algorithm EBF are stored in the network encryption algorithm control data base 590 of the key management work station 500 by making the former correspond to the user ID of the user U[A] and the latter correspond to the user ID of the user U[B].
  • a key for the key management work station 500 to carry out cryptographic communication with the user U[A] based on the encryption algorithm EANG is K A and a key for the key management work station 500 to carry out cryptographic communication with the user U[B] based on encryption algorithm EBF is K B .
  • the key K A is stored in the key structure control data base 180 of the user U[A] and the key K B is stored in the key structure control data base 280 of the user U[B]. Further, the key K A is stored in the network key management data base 580 of the key management work station 500 with a correspondence to the user ID of the user U[A] and the key K B is stored therein with a correspondence to the user ID of the user U[B].
  • [0172] 1 The user U[A] specifies a reception side person by the user ID of the user U[B] by the cryptographic communication control function 150 and sends “a request for session key issue” to the cryptographic communication control function 550 of the key management work station 500 .
  • [0173] 2 The “request for session key issue” is sent to the network encryption algorithm control function 560 of the key management work station 500 .
  • the network encryption algorithm control function 560 retrieves in the network encryption algorithm data base 590 based on the user ID of the user U[A] and user ID of the user U[B].
  • the encryption algorithm to be operated by the user U[A] is encryption algorithm EANG and the encryption algorithm to be operated by the user U[B] is encryption algorithm EBF.
  • EANG encryption algorithm
  • EBF encryption algorithm
  • [0175] 3 Receiving this result, the cryptographic communication control function 550 starts conversion of the encryption algorithm of the user U[B] from EBF to EANG.
  • the key L B is generated to carry out cryptographic communication with the user U[B] with encryption algorithm EANG and “descramble function confirmation end” is specified in plain text data MD.
  • the encryption algorithm EANG and key L B are encrypted by the encryption algorithm EBF and key K B so as to create the cipher statement EBF KB (EANG) and EBF KB (L B ).
  • the plain text data MD is encrypted with the encryption algorithm EANG and key L B so as to create the encrypted statement EANG LB (MD).
  • the aforementioned three encrypted statements are created by the scramble function 530 of the key management work station 500 .
  • [0180] 4 The user U[B] receiving these three encrypted statements EBF KB (EANG), EBF KB (L B ) and EANG LB (MD) decrypts these encrypted statements by the descramble function 240 .
  • EANG EBF KB
  • L B EBF KB
  • MD EANG LB
  • the encrypted statement EBF KB (EANG) and encrypted statement EBF KB (L B ) are decrypted by the key K B stored in the key structure control data base 280 so as to obtain the encryption algorithm EANG and key L B .
  • the encryption algorithm control function 220 stores the obtained encryption algorithm EANG in the encryption algorithm data base 290 and updates the operating condition of the encryption algorithm from the encryption algorithm EBF to the encryption algorithm EANG.
  • the key structure control function 210 stores the obtained key L B in the key structure control data base 280 .
  • the encrypted statement EANG LB (MD) is decrypted so as to obtain a plain text data MD. It is confirmed that the obtained plain text data MD is written as “descramble function confirmation is terminated” and then it is confirmed that the descramble function 240 by the converted encryption algorithm EANG is operated properly.
  • [0187] 6 Receiving the “encryption algorithm updating report”, the key management work station 500 decrypts the encryption algorithm EANG and key L B so as to obtain the plain text data MS. It is confirmed that the obtained plain text data MS is written as “scramble function confirmation is terminated” and then it is confirmed that the scramble function 230 by the encryption algorithm EANG converted by the user U[B] is operated properly. As a result, it is confirmed that the encryption algorithm conversion, the scramble function 230 and descramble function 240 for carrying out encrypting and decrypting are operated properly and then the encryption algorithm conversion is terminated.
  • [0188] 7 As a result of the above procedure, the user U[A] and user U[B] become capable of sharing the same encryption algorithm EANG. The users U[A] and U[B] restart cryptographic communication and the key management work station carries out “session key issue” based on the algorithm EANG to the user U[A].
  • the second embodiment of the present invention will be described with reference to FIGS. 6-10.
  • the encryption algorithm conversion in the cryptographic communication system constructed of the common key cipher will be described. That is, the encryption algorithm conversion in a case where the operating encryption algorithms A[ 1 ]-A[n] and B[ 1 ]-B[m] are all common key encryption algorithms in the cryptographic communication system of FIG. 1 will be described.
  • user ID and a secret key as master key are allocated to each user using information processing unit such as a personal computer from the key management station 500 . Then, the master key allocated to each user is registered and controlled in the network key management data base 580 of the key management work station 500 with a correspondence to the user ID. Likewise, the secret key P CID is allocated to the key management station 500 as the master key.
  • This embodiment uses duplex encryption method in which the encryption algorithm of the scramble key k s for use in data encryption and the encryption algorithm of the session key for use in dispatch of the descramble key K D are composed of different encryption algorithms, thereby intending to improve the security as compared to the case where the same encryption algorithm is used.
  • the encryption algorithm for operating the session key and master key uses the same encryption algorithm.
  • the user U[A] In case where the user U[A] carries out cryptographic communication with the user U[B], the user U[A] requests the key management station 500 for issue of the session key.
  • the user U[A] is a transmission side user and the user U[B] is a reception side user.
  • the network encryption algorithm control function 560 of the key management work station 500 retrieves in the network encryption algorithm data base 590 and determines whether or not the encryption algorithm used by the user U[A] is the same as that used by the user U[B].
  • the network key management function 570 of the key management work station 500 When it is determined that the user U[A] and user U[B] use the same encryption algorithm, the network key management function 570 of the key management work station 500 generates a session key P T with that encryption algorithm. Next, the master key PID of the transmission side user and the master key P YID of the reception side user are fetched out from the network key management data base 580 and a plain text of the session key P T is encrypted so as to create the encrypted statements E PID (P T ), E PYID (P T ). This encrypted statement is transmitted to such an information processing unit as a personal computer used by the transmission side user.
  • the master key P ID of that user controlling the computer is fetched out from the key structure control data base 180 .
  • the transmitted session key encrypted is decrypted so as to obtain the session key P T .
  • the data M input by the user is encrypted by the scramble key k s so as to create an encrypted statement E ks (M).
  • the descramble key K D is encrypted with the session key P T so as to create the encrypted statement E PT (k D ).
  • the personal computer of the reception side user fetches the master key P YID of this user from the key structure control data base 280 and the encrypted session key E PYID (P T ) by this key is decrypted so as to obtain the session key P T .
  • the transmitted encrypted descramble key E PT (K D ) is decrypted with the session key P T so as to obtain the descramble key K D .
  • the network encryption algorithm control function of the key management work station 500 determines that the user U[A] and user U[B] do not use the same encryption algorithm, it carries out conversion of the encryption algorithm of the user U[B] for the users U[A] and U[B] to be able to operate the same encryption algorithm.
  • the network encryption algorithm control function 560 receives a session key issue request containing user ID of the transmission side user and user ID of the reception side user from the transmission side user and retrieves in the network encryption algorithm data base 590 with the transmitted user ID as a key, so as to grasp the operating condition of the encryption algorithm operated by the transmission side user and reception side user.
  • the cryptographic communication system applies duplex encryption method by the common key cipher, so that two kinds of encryption algorithms, that is, encryption algorithm for use in encrypting of data and encryption algorithm for use in operating the session key are used. If the two kinds of the encryption algorithms operated by the transmission side user and reception side user do not agree with each other, cryptographic communication between both the parties cannot be achieved.
  • the encryption algorithm EANG operated by the transmission side user is fetched out.
  • the fetched encryption algorithm is supplied with an identifier for identifying whether it will be used for encrypting of data or operating the session key. If the two kinds of the encryption algorithms do not coincide with each other, the two kinds of the encryption algorithms are fetched out.
  • the network key management function 570 of the key management work station 500 generates the session key P TA with the encryption algorithm EBF prior to conversion and generates the session key P TB with the encryption algorithm EANG after the conversion. If there is no change in the algorithm for operating the session key, the P TA is equal to the P TB .
  • the user ID key of the reception side user is retrieved in the network key management data base 580 and the master key P YID of the reception side user is fetched out.
  • the key length of the key to be used for cryptographic communication or bit length increases or decreases. Therefore, in this case, it is demanded that a change of the key length of the encryption key is carried out with a conversion of the encryption algorithm.
  • a case where the bit number of the key decreases is as follows. As shown in FIG. 10A, redundant bit numbers after the master key P YID of the reception side user and after the master key P CID of the key management station 500 are deleted so as to obtain new master key P YIDC for the reception side user and master key P CIDC for the key management station 500 .
  • bit number of the key increases is as follows.
  • the session key P TA is encrypted with the encryption algorithm EBF prior to conversion and master key P YID so as to create the encrypted statement EBF PYID (P TA ).
  • [0219] 1 The session key P T to be operated by the encryption algorithm after the conversion is encrypted with the encryption algorithm EANG after the conversion and the master key P YIDC of the reception side user after the conversion so as to create the encrypted statement EANG PYIDC (P TB ).
  • the session key P TB to be operated by the encryption algorithm after the conversion with the encryption algorithm EANG after the conversion and the master key P CIDC of the key management work station 500 after the conversion has been encrypted so as to create the encrypted statement EANG PCIDC (P TB ).
  • this encrypted statement is the same as the encrypted statement EBF PCID (P TA ) produced by ciphering the session key P TA to be operated based on the encryption algorithm before the conversion with the encryption algorithm EBF before the conversion and the master key P CID of the key management work station 500 before the conversion.
  • a scramble key k SC for encrypting plain text data MD and a descramble key K DC for decrypting both with the encryption algorithm EANG after the conversion, are generated.
  • the data MD is encrypted with the scramble key k SC so as to create an encrypted statement E ksc (MD).
  • the descramble key K DC is encrypted with the session key P TB to be operated with the encryption algorithm after the conversion so as to create the encrypted statement EANG PTB (K DC ).
  • the reception side user After the encryption algorithm of the reception side user is converted and the master key is updated, the reception side user is operating the EBF as the encryption algorithm and possesses the P YID as the mater key. From an encrypted statement transmitted from the key management work station,
  • [0228] 1 the encrypted statement EBF PYID (P TA ) is decrypted with the P YID as the master key so as to obtain the session key P TA .
  • [0230] 3 The encrypted statement EBF PTA (P YIDC ) is decrypted with the session key P TA so as to obtain the master key P YIDC .
  • the reception side user obtains the encryption algorithm EANG and master key P YIDC . Then, the obtained encryption algorithm EANG is registered in the encryption algorithm control data base 290 and the encryption algorithm to be operated by the encryption algorithm control function 220 is converted from EBF to EANG.
  • the master key of a reception side user is updated, the master key is changed from P YID to P YIDC by the key structure control function 210 .
  • the descramble function 240 is confirmed by the encryption algorithm converted by the reception side user.
  • the encrypted statement transmitted from the key management work station 500 is decrypted by the descramble function 240 using the converted encryption algorithm and it is confirmed that the descramble function 240 operates properly.
  • [0235] 1 The encrypted statement EANG PYIDC (P TB ) is decrypted with P YIDC as the master key so as to obtain the session key P TB .
  • plain text data is set and encrypted by the scramble function 230 and then transmitted to the key management work station 500 .
  • [0241] 1 The plain text data MS is written as “algorithm conversion confirmation test is terminated”. A scramble key K su for encrypting this plain text data MS with the encryption algorithm EANG after the conversion and a descramble key K du for decrypting are generated. Next, the data MS is encrypted with the scramble key k su so as to produce an encrypted statement EANG ksu (MS). Likewise, the descramble key K du is encrypted with the obtained session key P TB so as to create the encrypted statement EANG PTB (k Du ).
  • [0242] 2 Produced two encrypted statements EANG PTB (k DU ) and EANG ksu (MS) and an encrypted statement EANG PCIDC (P TB ) transmitted from the key management work station 500 are returned to the key management work station 500 as “encryption algorithm conversion confirmation request”.
  • the encrypted statement returned from the reception side user is decrypted so as to confirm that the scramble function 230 for the converted encryption algorithm of the reception side user operates properly. Then, it is confirmed that the encryption algorithm after the conversion operates properly.
  • [0245] 1 The encrypted statement EANG PCIDC (P TB ) is decrypted with the master key P CIDC of the key management work station 500 so as to obtain the session key P TB .
  • [0248] 4 It is confirmed that the obtained plain text data MS is written as “algorithm conversion confirmation test is terminated” and it is confirmed that the scramble function 230 of a reception side user operates properly. Then, it is confirmed that the encryption algorithm after the conversion operates properly.
  • the encryption algorithms A[ 1 ]-A[n] are encryption algorithms controlled by the key management work station 500 of the same A cipher series and the key management work station 500 has a function for generating this encryption algorithm.
  • the encryption algorithm By changing the encryption algorithm, it is possible to change the encryption intensity or procedure for encryption computation. As compared to use of the same encryption algorithm, the security of the cryptographic communication system can be improved.
  • the user ID of a user operating the same A series encryption algorithm is U[Ai, j] and the key management work station 500 selects a user which changes the encryption algorithm from these users. Then, by using the function for generating the encryption algorithm, a new encryption algorithm is generated and the newly generated encryption algorithm is distributed to a user determined to change the encryption algorithm.
  • the encryption algorithm of each user is converted to an encryption algorithm distributed thereto.
  • the encryption algorithm before the conversion is not deleted but stored in the encryption algorithm data base 190 , 290 of each user.
  • the key management work station 500 controls the encryption algorithm stored in the encryption algorithm data base 190 , 290 of each user by using the network encryption algorithm control data base 590 .
  • a third embodiment of the present invention will be described with reference to FIGS. 11-15.
  • encryption algorithm conversion of a network communication system in which a public key cipher is operated or a case where the cryptographic communication system is composed of the public key cipher will be described.
  • elliptical curve cipher algorithm As the public key cipher algorithm, for example, elliptical curve cipher algorithm is applicable. It is assumed that a base point of an elliptical curve necessary for describing computation of this elliptical curve cipher key is P.
  • the elliptical curve cipher has been stated in for example, “Quick Encryption Method Using Elliptical Curve” by Kazuo Takaragi and Hiroyuki Kurumaya, in Technical Report of IEICE ISEC 97-15(1997-07).
  • the descramble function 240 decrypts the transmitted encrypted statement so as to obtain data.
  • the public key Q ID allocated to user is registered and controlled in the network key management data base 580 of the key management work station 500 with a correspondence to the user ID.
  • the public key Q C of the key management work station 500 is open to all users of this system.
  • data encryption is carried out with the scramble key K S and data decrypting is carried out with the descramble key K D .
  • Distribution of this descramble key K D is carried out by the elliptical curve cipher which is a public key cipher.
  • descramble key K D for example, MULTI2 encryption algorithm can be used as a common key encryption algorithm for operating the scramble key K s .
  • MULTI2 encryption algorithm (Hitachi, “MULTI2”, Registration of cryptographic algorithm, ISO9979/0009, NCC, UK (1994)) is an encryption algorithm which has achieved actual performance in for example, CS digital broadcasting (digital broadcasting using communication satellite).
  • the user U[A] Upon cryptographic communication from the user U[A] to the user U[B], the user U[A] requests the key management work station 500 for session key issue. Receiving this session key issue request, the network encryption algorithm control function 560 of the key management work station 500 retrieves in the network encryption algorithm data base 590 so as to determine whether or not the encryption algorithm used by the user U[A] is equal to the encryption algorithm used by the user U[B].
  • the network key management function 570 of the key management work station 500 retrieves in the network key management data base 580 with the user ID as a key and fetches out a public key Q YID corresponding to a master key of a reception side user and a public key Q ID corresponding to a master key of the transmission side user.
  • Signature producing computation is carried out with the secret key d c which is the master key of the key management work station 500 to the fetched out public key Q YID and public key Q ID so as to create signature data S dc (Q YID ) and signature data Sdc(Q ID ).
  • the secret key d c which is the master key of the key management work station 500
  • the public key Q YID as a session key
  • the signature data S dc (Q YID ) and signature data S dc (Q ID ) are transmitted in combination to the transmission side user so as to issue the session key.
  • a user receiving the public key Q YID , signature data S dc (Q YID ) and signature data S dc (Q ID ) carries out signature verifying computation on the signature data S dc (Q YID ) and Q YID using the public key Q C of the key management work station 500 so as to confirm that the public key Q YID is a key transmitted from a proper key management work station 500 and a key allocated to a proper reception side user intended to communicate with.
  • the transmission side user receives an issue of a public key for use as a session key.
  • the data M inputted by the user is encrypted with the scramble key K s so as to create an encrypted statement E Ks (M).
  • the descramble key K D is encrypted with the transmitted public key Q YID as a session key so as to generate an encrypted descramble key E QYID (K D ).
  • signature producing computation is carried out to the data M to be transmitted with the secret key d ID as a master key allocated to the transmission side user from the key management work station 500 and the signature data S dID (M) is produced.
  • the transmitted key Q YID can be used as an encryption key as it is.
  • the reception side user carries out signature verifying computation on the signature data S dc (Q ID ) and Q ID using the public key Qc of the key management work station 500 , so as to confirm that the public key Q ID has been transmitted from a proper key management work station 500 , thereby ensuring that that key is a public key allocated to the transmission side user properly.
  • the encrypted descramble key E QYID (K D ) is decrypted with the secret key d YID as a master key which is allocated to the reception side user from the key management work station 500 so as to obtain the descramble key K D .
  • signature verifying computation is carried out on the signature data S dID (M) and data M with the public key Q ID transmitted from the transmission side user so as to ensure that the data M is data transmitted from a proper transmission side user.
  • the user U[A] is capable of carrying out cryptographic communication with the user U[B].
  • the encryption algorithm control function determines that the user U[A] and user U[B] don't use the same encryption algorithm, it converts the encryption algorithm of the user U[B] for both the users U[A] and U[B] to be able to use the same encryption algorithm.
  • the network encryption algorithm control function 560 retrieves in the network encryption algorithm control data base 590 with a transmitted user ID as a key and grasps a condition of the encryption algorithm operated by the transmission side user and reception side user.
  • the network communication system employs cryptographic communication system based on duplex encryption method. A common key encryption algorithm is used for data encryption and a public key encryption algorithm is used for operating the session key.
  • the encryption algorithm EANG operated by the transmission side user is fetched out.
  • the fetched encryption algorithm is supplied with an identifier for indicating whether it is used for data encryption or operation of the session key.
  • the two kinds of the encryption algorithms are fetched out.
  • the encryption algorithm operated by the reception side user is EBF
  • the encryption algorithm is converted from this encryption algorithm EBF to the fetched out encryption algorithm EANG.
  • the network key management function 570 of the key management work station 500 retrieves in the network key management data base 580 and fetches out a public key Q YID corresponding to a master key of a reception side user for the encryption algorithm EBF before the conversion.
  • the network key management function 570 determines whether the master key of the reception side user is compatible for conversion of the encryption algorithm and if it is determined that there is no compatibility, a new public key is generated for the reception side user.
  • the secret key d YIDC is generated and a public key QYIDC corresponding to this secret key is generated.
  • both the encryption algorithm EBF before the conversion and encryption algorithm EANG after the conversion are supplied with a corresponding master key.
  • a secret key as a master key corresponding to the encryption algorithm EBF before the conversion is d c and a public key corresponding to this secret key is Q c .
  • the network key management function 570 creates the following encrypted statement and signature data using the encryption algorithm EBF prior to the conversion.
  • [0299] 1 A scramble key K SB for encrypting the encryption algorithm EANG and secret key d YIDC with the encryption algorithm EBF prior to the conversion and a descramble key K DB for decrypting are generated.
  • [0300] 2 The encryption algorithm EANG and secret key d YIDC is encrypted with the scramble key K SB so as to create the encrypted statement EBF KSB (EANG) and encrypted statement EBF KSB (d YIDC ). Further, the descramble key K DB is encrypted with the fetched public key Q YID as a master key so as to create the encrypted statement EBF QYID (K DB ).
  • Signature producing computation is carried out on the generated secret key D YIDC and public key Q YIDC with the encryption algorithm EBF prior to the conversion and the secret key d c which is a master key of the key management work station 500 , so as to create the signature data Sdc(d YIDC ) and signature data S dc (Q YIDC ).
  • [0303] 5 Signature producing computation is carried out on the public key Q CG which is a master key of the key management work station 500 to be applied to the encryption algorithm EANG after the conversion, with the encryption algorithm EBF prior to the conversion and the secret key d c which is a master key of the key management work station 500 , so as to create signature data S dc (Q CG ).
  • the scramble function 530 creates the following encrypted statement and signature data using the encryption algorithm EANG after the conversion.
  • a scramble key K SC for encrypting the plain text data MD with the encryption algorithm EANG after the conversion and a descramble key K DC for decrypting are generated.
  • the data MD is encrypted with the scramble key K SC so as to create the encrypted statement EANG KSC (MD) and then the descramble key K DC is encrypted with the public key Q YIDC to be operated as a session key in the encryption algorithm after the conversion, so as to create the encrypted statement EANG QYIDC (K DC ).
  • the network key management function 570 stores the generated public key Q YIDC which is a master key of the reception side user in the network key management data base 580 with a correspondence to the encryption algorithm EANG.
  • the reception side user operates EBF as the encryption algorithm and possesses the secret key d YID as its master key and the public key Q c of the key management work station 500 to be operated by the encryption algorithm EBF.
  • [0313] 1 The encrypted statement EBF QYID (K DB ) is decrypted with the secret key d YID as the master key so as to obtain the descramble key K DB .
  • EBF KSB EANG
  • Signature verifying computation is carried out on the signature data S dc (EANG) and the obtained encryption algorithm EANG with the public key Q C of the key management work station 500 so as to ensure that the obtained encryption algorithm EANG has been transmitted from a proper key management work station 500 .
  • signature verifying computation is carried out on the signature data S dc (d YIDC ) and the obtained secret key d YIDC , so as to determine whether or not the obtained secret key d YIDC has been transmitted from a proper key management work station 500 .
  • signature verifying computation is carried out on the signature data S dc (Q YIDC ) and the public key Q YIDC which is a transmitted master key using the public key Q C of the key management work station 500 so as to determine that the obtained public key Q YIDC has been transmitted from a proper key management work station 500 .
  • [0316] 3 Signature verifying computation is carried out on the signature data S dc (Q CG ) and the public key Q CG to be operated on the transmitted encryption algorithm EANG converted of the key management work station 500 , using the public key Q C of the key management work station 500 , so as to determine whether or not the transmitted public key Q CG is a public key sent from a proper key management work station 500 .
  • the reception side user obtains the encryption algorithm EANG, a secret key d YIDC as a master key, a public key Q YIDC corresponding to this secret key, and a public key Q CG to be operated on the converted encryption algorithm EANG of the key management work station 500 .
  • the obtained encryption algorithm EANG is registered in the encryption algorithm control data base 290 and the encryption algorithm to be operated by the encryption algorithm control function 220 is converted from the encryption algorithm EBF to the encryption algorithm EANG.
  • the secret key as the master key is updated from d YID to d YIDC by the key structure control function 210 .
  • An encrypted statement transmitted from the key management work station 500 is decrypted by the descramble function 240 using a converted encryption algorithm so as to determine whether or not the descramble function 240 operates properly.
  • [0322] 2 The encrypted statement EANG KSC (MD) is decrypted with the descramble key K DC so as to obtain a plain text data MD.
  • signature verifying computation is carried out on the signature data S dcg (MD) and the obtained plain text data MD using the public key Q CG of the key management work station 500 , so as to determine that the obtained plain text data MD has been transmitted from a proper key management work station 500 .
  • plain text data is set up, encrypted by the scramble function 230 and transmitted to the key management work station 500 .
  • [0326] 1 The plain text data MS is written as “algorithm conversion confirmation test is terminated”.
  • the scramble key K su for encrypting the aforementioned plain text data MS and the descramble key K DU for decrypting are generated with the encryption algorithm EANG after the conversion.
  • the plain text data MS is encrypted by the scramble key K SU so as to create an encrypted statement EANG KSU (MS).
  • the descramble key K DU is encrypted with the public key Q CG of the key management work station 500 so as to create the encrypted statement EANG QCG (K DU ).
  • signature producing computation is carried out on the data MS using the secret key d YIDC as a master key of a reception side user so as to produce the signature data S dYIDC (MS).
  • [0330] 1 The encrypted statement EANG QCG (K DU ) is decrypted with the secret key d cg as a master key of the key management work station 500 so as to obtain the descramble key K DU .
  • [0332] 3 Signature verifying computation is carried out on the signature data S dcg (Q YIDC ) and the transmitted public key Q YIDC of the reception side user using the public key Q cg of the key management work station 500 , so as to confirm that the transmitted public key Q YIDC of the reception side user has been transmitted from a proper reception side user.
  • [0334] 5 It is confirmed that the obtained plain text data MS is “algorithm conversion confirmation test is terminated” and then it is confirmed that the scramble function 230 of the reception side user operates properly. Then, it is confirmed that the encryption algorithm after the conversion operates properly.
  • the secret key as a master key possessed by user and a public key corresponding to this secret key are generated at the key management work station.
  • the key length of the secret key for use in the cryptographic communication, or bit number is increased or decreased by the encryption algorithm conversion like the case of the common key cipher.
  • the key management work station 500 retrieves in the network encryption algorithm control data base 590 so as to confirm that there is no same public key. If the same public key exists, a random number is generated again so as to generate a secret key as a master key.
  • the encryption algorithm for operating the master key and session key employs an elliptical curve encryption algorithm which is different from the common key encryption algorithm.
  • duplex encryption method is constructed so as to improve the security.
  • the software function of the case where the public key cipher is used is the same as the software function of the common key cipher shown in FIG. 2.
  • the encryption algorithm of the scramble key and descramble key is MULTI2 encryption algorithm as the common key encryption algorithm.
  • a fourth embodiment of the present invention will be described. Encryption algorithm conversion in encryption function incorporated in a portable information processing unit will be described here.
  • a plurality of encryption algorithms exist in network communication system as shown in FIG. 1.
  • the key management work station 500 grasps a condition of the encryption algorithm of each user and each time when a request for cryptographic communication occurs, it converts the encryption algorithm of each user as required so as to achieve the cryptographic communication between users.
  • a transmission side user makes a “session key issue request” to the key management work station 500 as shown in FIG. 2 and receives a public key Q YID of a reception side user, signature data S dc (Q YID ) of the public key YID , its own public key Q ID and signature data S dc (Q ID ) of that public key Q ID from the key management work station 500 .
  • each user stores its own public key Q ID and signature data S dc (Q ID ) in the key structure control data base 180 , 280 .
  • FIG. 16 shows cryptographic communication system operated by the public key encryption algorithm (FIG. 25 shows the functional blocks of this method).
  • Each user receives its own public key Q ID and signature data S dc (Q ID ) of that public key Q ID from the key management work station 500 through a route indicated by dotted line of FIG. 16 and possesses it in the key structure control data base of each user.
  • the “session key issue request” for executing cryptographic communication may be made to a reception side user, but not to the key management work station 500 .
  • the “session key issue request” is sent to the reception side user and then, a public key Q YID of that reception side user and signature data S dc (Q YID ) of this public key are received from the reception side user.
  • the secret key d ID as a master key to be allocated to each user is generated by the key management work station 500 or each user.
  • the key management work station 500 it is made possible for the key management work station 500 to hold the generated secret key d ID and for the key management work station 500 to decrypt data encrypted with the public key Q ID corresponding to the user. Because the key management work station 500 prevents grasping of user's information, according to this embodiment, the generated secret key d ID is provided with a key recovery function and stored in the network key structure data base 580 with a correspondence to user ID, thereby disabling user to decrypt a cipher text generated by user except when an unexpected event occurs.
  • the key recovery function of this embodiment will be described by taking cryptographic communication in which the key has duplex hierarchical structure as an example.
  • the key recovery function adds information about decryption to an encrypted statement E KS (M) and is capable of decrypting the encrypted statement without the descramble key K D .
  • K s K 1 XOR K 2 by exclusive OR between K 1 and K 2 (XOR is indicated by direct sum symbol in the Figure).
  • P 1 , P 2 are used as a key for key recovery and stored with the key recovery function of the portable information processing unit and key management work station 500 .
  • K 1 , K 2 generated for generating the scramble keys K s are encrypted with the keys P 1 , P 2 for key recovery so as to produce encrypted statements E p1 (K 1 ), E P2 (K 2 ).
  • This data is added to the encrypted statement E KS (M) of data produced with the scramble key K s .
  • the encrypted statement is transmitted to the key management work station 500 . Consequently, the encrypted statement can be decrypted with the keys P 1 , P 2 for key recovery in the aforementioned procedure.
  • a threshold value logic computed by the keys Q YID , Q A , Q B , Q C is added to the encrypted descramble key E QYID (K D ).
  • the key recovery function decrypts with two of the secret keys d A , d B , d C and the threshold value logic added to the E QYID (K D ) to obtain the descramble key K D .
  • An encrypted statement of data M to be transmitted is created by encryption computation with the scramble key K s .
  • the scramble key K S by exclusive OR between K 1 and K 2 and carry out key recovery using them.
  • the keys P 1 , P 2 for key recovery shown in FIGS. 23, 24 can be operated with the common key encryption algorithm, they can be also operated for key recovery with the public keys Q A , Q B .
  • data to be added to the encrypted statement E KS (M) for key recovery are encrypted statements E QA (K 1 ), E QB (K 2 ) obtained by encrypting K 1 , K 2 with public keys Q A , Q B .
  • the key recovery is carried out by decrypting the added data using the secret keys d A , d B corresponding to the public keys Q A , Q B in the key recovery function of the key management work station 500 .
  • a user accustomed to operation of the encryption algorithm is capable of generating the secret key d ID as a master key for use by himself or herself and corresponding public key Q ID .
  • the user transmits the public key Q ID generated corresponding to the secret key d ID to the key management work station 500 .
  • the key management work station 500 recognizes an identity of a user transmitting the public key Q ID , carries out signature producing computation on the transmitted public key Q ID with the secret key d c possessed by the key management work station 500 and transmits the signature data S dc (Q ID ) to that user.
  • the secret key d ID as a master key possessed by user is provided with key recovery function and stored in the network key structure data base 580 with a correspondence to user ID.
  • cryptographic communication can be achieved between the IC card (as a reception side user) and a reader (as a transmission side user) which is an information processing unit installed on a retailer counter or the like not through the key management work station 500 , with the IC card inserted in the reader.
  • This encryption algorithm may be kept secret or public.
  • the encryption intensity or key length can be changed depending on a generation method of the elliptical curve.
  • This cryptographic communication system employs a hierarchical structure having a simplex cipher key. That is, this system does not employ the scramble key and descramble key of the cryptographic communication system shown in FIG. 16.
  • the transmission side user corresponds to a reader as the information processing unit
  • the reception side user corresponds to a portable information processing unit such as an IC card.
  • the data base stores encryption algorithms A[ 1 ], A[ 2 ], . . . A[N] of all the elliptical curves for use by this network communication system, version numbers B[ 1 ], B[ 2 ], . . . B[N] corresponding to the encryption algorithms, secret keys d c [ 1 ], d c [ 2 ], . . . d c [N] as a master key for use by the key management work station 500 corresponding to the encryption algorithms, and public keys Q c [ 1 ], Q C [ 2 ], . . . Q C [N] corresponding to the secret keys.
  • the version number BF, the secret key d c as the master key and the public key Q C corresponding to this secret key are stored corresponding to the encryption algorithm EBF.
  • the version number BG, the secret key d cg as the master key and the public key Q cg corresponding to this secret key are stored corresponding to the encryption algorithm EANG.
  • the network key management data base 580 stores user ID of user of an IC card or a reader which is an information processing unit, ID[ 1 ], ID[ 2 ], . . . ID[M], version numbers of the encryption algorithm for use by this user, BP [ 1 ], BP[ 2 ], . . . BP[M], and the public keys for use by the user with this encryption algorithm, Q ID [ 1 ], Q ID [ 2 ], . . . Q ID [M] corresponding to the user ID.
  • the secret keys d ID [ 1 ], d ID [ 2 ], . . . d ID [M] as the master key for use by each user corresponding to the encryption algorithm are supplied with the key recovery function and stored corresponding to each user ID.
  • the encryption algorithm data base 190 stores encryption algorithm EANG, version number BG, public key Q cg for use by the key management work station 500 under this encryption algorithm and signature data S dcg (EANG) of the key management work station 500 corresponding to the encryption algorithm EANG.
  • the signature data S dcg (EANG) is obtained by carrying out signature producing computation on the encryption algorithm EANG with the secret key d cg as the master key for use by the key management work station 500 under the encryption algorithm EANG.
  • the signature data S dc [i](Q cg ) is obtained by carrying out signature producing computation on the public key Q cg with the secret key d c [i] as the master key for use by the key management work station 500 under the encryption algorithm A[i].
  • the version number BF, public key Q c and signature data S dc (Q cg ) are stored corresponding to the encryption algorithm EBF.
  • the signature data S dc (Q cg ) is obtained by carrying out signature producing computation on the public key Q cg with the secret key d c as the master key for use by the key management work station 500 under the encryption algorithm EBF.
  • the key structure management data base 180 stores the encryption algorithm to be operated by user, namely in this embodiment, the secret key d ID as the master key for use by the user under the encryption algorithm EANG, public key Q ID corresponding to this secret key and signature data S dcg (Q ID ) obtained by carrying out signature producing computation on the public key Q ID with the secret key d cg as the master key for use by the key management work station 500 under the encryption algorithm EANG.
  • the encryption algorithm EBF As information about the encryption algorithm operated by the user, the encryption algorithm EBF, version number BF, public key Q c for use by the key management work station 500 under this encryption algorithm and signature data S dc (EBF) of the key management work station 500 relative to the encryption algorithm EBF are stored.
  • EBF signature data S dc
  • the signature data S dc (EBF) is obtained by carrying out signature producing computation on the encryption algorithm EBF with the secret key d c as the master key for use by the key management work station 500 under the encryption algorithm EBF.
  • the key structure management data base 280 stores the encryption algorithm to be operated by user, namely in this embodiment, the secret key d YID as the master key for use by the user under the encryption algorithm EBF, public key Q YID corresponding to this secret key and signature data S dc (Q YID ) obtained by carrying out signature producing computation on the public key Q YID with the secret key d C as the master key for use by the key management work station 500 under the encryption algorithm EBF.
  • a public key for use by the key management work station 500 , signature data produced with the secret key as a master key for use by the key management work station 500 , an encryption algorithm and a version number corresponding thereto are stored in the transmission side user and reception side user data bases.
  • the elliptical curve encryption algorithm may be sent in open state, according to this embodiment, it is sent in encryption state.
  • [0428] 1 User possessing an IC card purchases at a shop or the like and inserts the IC card into a reader as the information processing unit to pay for purchased goods.
  • the cryptographic communication control function of the reader as the information processing unit adds a version number BG to the operating encryption algorithm EANG and sends a “session key issue request” to cryptographic communication control function 250 of the IC card.
  • the version number of the encryption algorithm EBF operated by the IC card is BF, which is different from the transmitted version number BG.
  • the cryptographic communication control function 250 After recognizing that the version number is different, the cryptographic communication control function 250 adds BF to this version number and sends an “encryption algorithm updating request” to the cryptographic communication control function 150 of a reader which is an information processing unit.
  • the reader as the information processing unit retrieves in the encryption algorithm data base 190 and fetches out the public key Q cg of the key management work station 500 operated with the encryption algorithm EANG and signature data S dc (Q cg ) obtained by carrying out signature producing computation on the public key Q cg with the secret key d c as a master key for use by the key management work station 500 under the encryption algorithm EBF and transmits this public key Q cg and the signature data S dc (Q cg ) to the IC card.
  • the IC card carries out signature verifying computation on the transmitted public key Q cg and signature data S dc (Q cg ) using the public key Q c of the key management work station 500 operated under the encryption algorithm EBF, so as to verify that the public key Q cg has been transmitted from the reader as a proper information processing unit.
  • the IC card carries out signature producing computation on the public key Q YID with the public key Q YID of an IC card operated under the encryption algorithm EBF from the key structure management data base 280 and the secret key d c as a master key for use by the key management work station 500 under the encryption algorithm EBF and fetches out the signature data S dc (Q YID ) distributed from the management work station 500 , and then transmits this public key Q YID and signature data S dc (Q YID ) to the reader as an information processing unit.
  • [0436] 6 The reader as the information processing unit carries out signature verifying computation on the received public key Q YID and signature data S dc (Q YID ) using the public key Q c of the key management work station 500 operated under the encryption algorithm EBF, so as to verify that the public key Q YID has been transmitted from a proper IC card.
  • [0437] 7 The reader as the information processing unit, encrypts the encryption algorithm EANG with the public key Q YID by operating the encryption algorithm EBF so as to create the encrypted statement EBF QYID (EANG).
  • signature producing computation is carried out on the encryption algorithm EANG with the secret key d cg as a master key for use by the key management work station 500 under the encryption algorithm EANG. Then, the signature data S dcg (EANG) distributed from the management work station 500 is fetched out and the encrypted statement EBF QYID (EANG) and signature data S dcg (EANG) are transmitted to the IC card.
  • the IC card converts the operating encryption algorithm from EBF to the obtained EANG, and carries out signature verifying computation on the obtained encryption algorithm EANG and received signature data S dcg (EANG) using the public key Q cg of the key management work station 500 obtained in 4: so as to verify that this is an encryption algorithm distributed from a reader as a proper information processing unit. As a result, updating of the encryption algorithm to this EANG is completed.
  • the IC card returns the encryption algorithm to EBF temporarily and carries out signature producing computation on the public key Q YIDC using the secret key d YID under the encryption algorithm EBF so as to produce signature data S dYID (Q YIDC ).
  • the IC card transmits the generated public key Q YIDC and signature data S dYID (Q YIDC ) to the reader as an information processing unit.
  • the reader as the information processing unit converts the encryption algorithm to EBF temporarily and carries out signature verifying computation on the received signature data S dYID (Q YIDC ) and public key Q YIDC using the public key Q YID obtained in 6:, so as to verify that it is a public key Q YIDC of an IC card distributed from a proper IC card.
  • the reader as the information processing unit carries out signature producing computation on the public key Q ID with the public key Q ID for use by the reader as the information processing unit operated under the encryption algorithm EANG sent from the key structure management data base 180 and the secret key d cg as a master key for use by the key management work station 500 under the encryption algorithm EANG. Then, the signature data S dcg (Q ID ) distributed from the management work station 500 is fetched out and this public key Q ID and the signature data S dcg (Q ID ) are transmitted to the IC card.
  • the IC card carries out signature verifying computation on the received signature data S dcg (Q ID ) and public key Q ID using the public key Q cg of the key management work station 500 obtained in 4: under the encryption algorithm EANG, so as to verify that it is a public key Q ID for the reader as an information processing unit, transmitted from the reader as a proper information processing unit.
  • the key management work station 500 does not do anything in the above described procedure.
  • the IC card has no signature data of the key management work station 500 regarding the converted public key Q YIDC , it cannot be used just as it is, but after the payment is settled, the encryption algorithm needs to be returned from EANG to EBF.
  • This signature data S dYID (Q YIDC ), public key Q YIDC , public key Q YID of an IC card operated with the encryption algorithm EBF, version number BF of the encryption algorithm EBF, version number BG of the encryption algorithm EANG, and user ID of the IC card are transmitted to the key management work station 500 .
  • the key management work station 500 retrieves in the network key management data base 580 and verifies that the public key Q YID of a received IC card exists.
  • Signature verifying computation is carried out on the signature data S dYID (Q YIDC ) and public key Q YIDC using the public key Q YID of the IC card so as to verify that it is a public key Q YIDC of a proper IC card.
  • the key management work station 500 updates a version number of the encryption algorithm stored corresponding to the user ID of the IC card in the network key management data base 580 and the public key to BG and Q YIDC respectively.
  • the IC card is capable of obtaining the signature data S dcg (Q YIDC ) of the key management work station 500 for the public key Q YIDC .
  • the key management work station 500 verifies an existence of the public key Q YID before the conversion and signature data of the public key Q YIDC after the conversion thereby preventing an access of a false IC card.
  • the IC card possesses the public key Q YIDC operated under the encryption algorithm EANG and signature data S dcg (Q YIDC ) of the key management work station 500 and is capable of operating the encryption algorithm EANG.
  • the key management work station only has to carry out signature production and signature verifying computation on a public key generated with respect to the converted encryption algorithm.
  • encryption algorithm conversion can be carried out.
  • the secret keys possessed by the user are the same for the encryption algorithm before the conversion and encryption algorithm after the conversion.
  • Such a secret key setting method is effective when the key lengths of the encryption algorithms mixing in a system vary and it cannot be specified which key length encryption algorithm the user is using.
  • the method for user to generate his or her own secret key and public key for a new encryption algorithm is applicable to ordinary encryption algorithm conversion described in FIGS. 13, 14 and 11 . If user generates his or her own secret key, a possibility that the secret key may be decrypted by the key management work station can be avoided.
  • an example for generating his or her own secret key with respect to the encryption algorithm conversion will be described with reference to FIG. 20.
  • FIG. 16 An operating condition of the public key encryption method mentioned here employs the cryptographic communication method shown in FIG. 16 and FIG. 20 shows an example of the encryption algorithm conversion in this cryptographic communication method.
  • the secret key as a master key to be operated by the reception side user for the encryption algorithm EBF is d YID and the public key corresponding to this secret key is Q YID .
  • the network key management function 570 of the key management work station 500 creates the following encrypted statement and signature data using the encryption algorithm EBF before the conversion.
  • a scramble key K SB for encrypting the encryption algorithm EANG and a descramble key K DB for decrypting are generated with the encryption algorithm EBF before the conversion.
  • the public key Q YID as the master key of the reception side user is fetched out and the descramble key K DB is encrypted so as to create an encrypted statement EBF QYID (K DB ).
  • the reception side user operates EBF as an encryption algorithm and possesses the secret key d YID as a master key and a public key Q c of the key management work station 500 operated by the encryption algorithm EBF.
  • the reception side user has obtained the encryption algorithm EANG and public key Q cg to be operated on the encryption algorithm EANG of the key management work station 500 . Then, the obtained encryption algorithm EANG is registered in the encryption algorithm management data base 290 , and the encryption algorithm EANG as well as EBF is made operable by the encryption algorithm management function.
  • the secret key d YIDC to be possessed by the reception side user himself or herself is generated by any of these methods so as to generate the public key Q YIDC corresponding to this secret key.
  • [0501] 2 The reception side user returns the encryption algorithm to EBF temporarily and carries out signature producing computation on the public key Q YIDC using the secret key d YID under this encryption algorithm EBF so as to create signature data S dYID( (Q YIDC ).
  • the generated public key Q YIDC , signature data S dYID (Q YIDC ) and the reception side user's ID are transmitted to the key management work station 500 via the IC card reader (not shown in FIG. 20).
  • the key management work station 500 returns the encryption algorithm to EBF and queries the network key management data base 580 with the transmitted user ID as a key so as to fetch out the public key Q YID of a given reception side user.
  • signature verifying computation is carried out on the transmitted public key Q YIDC and signature data S dYID (Q YIDC ) using the public key Q YID of this reception side user so as to verify that this is a public key Q YIDC transmitted from a proper reception side user.
  • the key management work station 500 queries the network key management data base 580 and recognizes the public key Q YID of the reception side user, it is possible to prevent a false reception side user from accessing this system.
  • the key management work station 500 obtains the public key Q YIDC operated by the reception side user under the converted encryption algorithm EANG. After that, the key management work station 500 needs a series of procedure related to the encryption algorithm conversion, such as carrying out signature producing computation on the public key Q YIDC operated by the reception side user by using the secret key d cg as a master key operated under the encryption algorithm EANG, creating signature data S dcg (Q YIDC ), sending it to the reception side user, verifying the scramble function and descramble function. These are achieved by carrying out the procedure for the encryption algorithm conversion described in FIGS. 13, 14 and 11 .
  • the public key encryption algorithm EANG after the conversion can be encrypted with the common key encryption algorithm EBF before the conversion according to the embodiment shown in FIGS. 8, 9 and 6 and distributed.
  • the common key encryption algorithm is different from the public key encryption algorithm in that no signature producing computation or signature verifying computation is carried out.
  • the encryption algorithm conversion can be carried out in a procedure excluding the signature producing and verifying computations in the embodiment of the public key encryption algorithm conversion shown in FIGS. 13, 14 and 11 .
  • signature verifying computation is carried out on signature production data created under the public key encryption algorithm. If an error occurs in the signature production data as a result of this signature verifying computation, a response message “encryption algorithm conversion operation error” is transmitted and that given process is executed again.
  • FIGS. 13, 14 and 11 show the embodiments of the public key encryption algorithm conversion
  • the key management station sends a procedure for distributing a key for use by user for key updating, deletion and the like.
  • the encryption algorithm conversion confirmation can be carried out by encrypting the plain text data MD and MS with the public key based on the encryption algorithm and sending them according to the embodiment shown in FIGS. 13, 14 and 11 .
  • the encryption algorithm can be distributed with the safety and further, converted in a condition that time and labor required for the distribution are reduced.
  • encryption algorithms operated by plural users are capable of sharing the same encryption algorithm or that shared encryption algorithm can be changed to other encryption algorithm.

Abstract

An operating encryption algorithm is converted to another encryption algorithm. When different encryption algorithms are operated by a personal computer 100 for use by a group A and a personal computer 200 for use by group B, an encryption algorithm, operated by the personal computer 100 is encrypted by the personal computer 100 with the encryption algorithm operated by the personal computer 200 and transmitted to the personal computer 200.

Description

    RELATED APPLICATIONS
  • This application is a continuation application of U.S. patent application Ser. No. 09/365,446, filed on Aug. 2, 1999, which in turn claims the benefit of priority from Japanese Patent Application No. 10-217732, filed on Jul. 31, 1998, the entirety of which are incorporated herein by reference.[0001]
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention [0002]
  • The present invention relates to cryptographic communication method, encryption algorithm shared control method and network communication system for converting encryption algorithm for cryptographic communication to other encryption algorithm, and more particularly to cryptographic communication method, encryption algorithm shared control method and network communication system suitable for sharing the same encryption algorithm as encryption algorithm operated by a plurality of users and changing the shared encryption algorithm to other encryption algorithm. [0003]
  • 2. Description of Related Art [0004]
  • As a means for securing the safety of information transmission, a method of transmitting encrypted information is generally employed. Because of recent advancement of performance of a personal computer, in a case where information to be transmitted is digital information such as document and video, often such information is encrypted on software basis. If a user U[A] carries out cryptographic communication with a user U[B], the user U[A] encrypts transmission information with an encryption key and transmits that encrypted data. On the other hand, the user U[B] receives this data and decrypts that received data with a decryption key. This cryptographic communication can be established on a presumption that the user U[A] and user U[B] share the same encryption algorithm. Usually, the encryption algorithm is shared by the following manners. The encryption algorithm is recorded in a recording medium such as a floppy disk by an encryption system manager and distributed to each user. Or the encryption algorithm is installed in an information processing unit having encryption processing function such that it can be executed and the information processing unit is distributed. [0005]
  • As for a method for operating the encryption algorithm, to improve the cipher security, not only a scramble key is generated as a key for encrypting information, but also a session key for encrypting this scramble key is generated. Then, duplex encryption method is employed so that user U[A] transmits information encrypted with the scramble key and the scramble key encrypted with the session key to user U[B]. Each time when cryptographic communication occurs, the scramble key is changed. [0006]
  • SUMMARY OF THE INVENTION
  • However, in the above described encryption method, the following problem arises. [0007]
  • (1) If the transmission side and the reception side use different operating algorithms, cryptographic communication cannot be carried out. Therefore, a necessity of distributing an encryption algorithm of one of the transmission side and the reception side to the other side occurs. [0008]
  • However, the above described method of recording the encryption algorithm in a recording medium and distributing it to each user and method of distributing an information processing unit having an encryption function in which the encryption algorithm is installed so that it can be executed requires time for distribution because the distribution is carried out by transportation or the like. If the encryption algorithm is distributed to each user, an encryption processing unit in which the encryption algorithm is installed is connected to a unit having a communication function so as to construct a system, and whether or not the cryptographic communication is enabled is verified on function basis. Because this functional verification is carried out with communication between users, time and labor are needed. [0009]
  • (2) As a method for improving the encryption security, a method of operating the encryption algorithm by periodically changing it can be considered by this inventor. For example, if the encryption algorithm of the session key in the above mentioned duplex encryption method is changed periodically, the security can be expected to be improved. [0010]
  • However, for this purpose, the encryption algorithm to be changed needs to be distributed to each user. However, if distribution of this encryption algorithm is carried out in the same manner as (1), time and labor are needed thereby the efficiency being lower. [0011]
  • (3) With a recent progress of information appliance such as a personal computer, information processing speed has been improved every year. The intensity of the encryption algorithm needs to be so strong that information is not decrypted within its effective limit even if an attack is made to decrypt with such information appliance. [0012]
  • Therefore, the intensity of the encryption algorithm needs to be set corresponding to the information processing speed of the information appliance of a day in which it is used and changed to an encryption algorithm whose intensity is higher. Thus, a distribution method for an encryption algorithm having an excellent efficiency is needed like above (2). [0013]
  • (4) The inventor of the present invention has considered a method for constructing a cryptographic communication system in which a plurality of users are connected to a station for managing the key for operating the encryption algorithm. However, if a plurality of the encryption algorithms exist in the cryptographic communication system and the encryption algorithms are periodically updated, this system requires such a complicated system operating function for grasping the encryption algorithms of each user, distributing the same algorithm so as to be shared if the algorithms of users about to communicate with each other are different, if the user is changing the algorithm, suspending the cryptographic communication with the user whose algorithm is being changed. If the distribution method for the encryption algorithm of (1) is applied, not only time and labor are needed, but also it is difficult to grasp the condition of the encryption algorithm of each user at real time, so that there is a fear that the cryptographic communication system is disturbed thereby an effective system operation being obstructed. [0014]
  • (5) If the encryption algorithm is changed, a key for use by the user may not correspond to that encryption algorithm to be changed. If a common key encryption algorithm is changed to a public key encryption algorithm or conversely if the public key encryption algorithm is changed to the common key encryption algorithm, there is a problem that the key for use by the user cannot be used for the changed encryption algorithm. [0015]
  • If the encryption algorithm is changed to an encryption algorithm having a high intensity, usually, the key length for use is prolonged. Therefore, if the key for use by the user can be used under the changed encryption algorithm, there is a problem that the intensity of the encryption is not increased if the same key length is used. [0016]
  • Accordingly, the present invention has been made in views of the above problems and therefore, it is an object of the invention to provide a cryptographic communication method, encryption algorithm sharing management method, encryption algorithm conversion method, and network communication system capable of distributing an encryption algorithm with the safety and converting it in a state that time and labor required therefor are reduced. [0017]
  • It is another object of the invention to provide a cryptographic communication method, encryption algorithm sharing management method, encryption algorithm conversion method and network communication system in which encryption algorithms operated by a plurality of users share the same encryption algorithm as a result of the encryption algorithm conversion and preferable for changing the shared encryption algorithm to other encryption algorithm. [0018]
  • To achieve the above object, according to a first aspect of the present invention, there is provided a cryptographic communication method wherein when different encryption algorithms are operated at a transmission side and a reception side, the transmission side encrypts an encryption algorithm operated at the transmission side with an encryption algorithm operated at the reception side and transmits the encrypted algorithm to the reception side. [0019]
  • According to a second aspect of the present invention, there is provided a cryptographic communication method wherein information on encryption algorithm operated at a transmission side and information on an encryption algorithm operated at a reception side are obtained from the transmission side and when different encryption algorithms are operated at the transmission side and the reception side, an encryption algorithm operated at the transmission side is encrypted with an encryption algorithm operated at the reception side and transmitted to the reception side. [0020]
  • According to a third aspect of the present invention, there is provided an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user and the encryption algorithm operated by the user is preliminarily described about each user and then retrieving encryption algorithm operated by the user of the transmission side and the encryption algorithm operated by the user of the reception side, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, data indicating the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side. [0021]
  • According to a fourth aspect of the present invention, there is provided an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; querying a data base in which a correspondence between the user identifier indicating the user, an encryption algorithm operated by the user and an encryption key thereof is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and the encryption key thereof and the encryption algorithm operated by the user of the reception side and the encryption key thereof, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, data indicating the encryption algorithm operated by the user of the transmission side and encryption key produced based on the encryption key operated by the user of the reception side corresponding to a key length of the encryption algorithm is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side. [0022]
  • According to a fifth embodiment of the present invention, there is provided an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between user identifier indicating the user, an encryption algorithm operated by the user and an encryption key thereof is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and the encryption key thereof and the encryption algorithm operated by the user of the reception side and the encryption key thereof, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, signature data produced for the encryption key operated by the user of the transmission side is transmitted to the user of the transmission side and data obtained by encrypting the encryption algorithm operated by the user of the transmission side with the encryption algorithm operated by the user of the reception side and signature data produced for an encryption key operated by the user of the reception side are transmitted to the user of the reception side. [0023]
  • According to a sixth aspect of the present invention, there is provided an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user, an encryption algorithm operated by the user and an encryption key thereof is preliminarily described about each user so as to obtain an encryption algorithm operated by the user of the transmission side and an encryption key thereof and an encryption algorithm operated by the user of the reception side and an encryption key thereof, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, signature data produced for the encryption key operated by the user of the transmission side is transmitted to the user of the transmission side and data indicating the encryption algorithm operated by the user of the transmission side and encryption key produced based on the encryption key operated by the user of the reception side corresponding to a key length of the encryption algorithm is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side with the signature data produced corresponding to the encryption key operated by the user of the reception side. [0024]
  • According to a seventh aspect of the present invention, there is provided Network communication system composed by connecting a plurality of users, comprising at least an encryption key management station to be connected from a user of a transmission side, the encryption key management station obtaining, from the user of the transmission side, information indicating an encryption algorithm operated by the user and information indicating an encryption algorithm operated by a user of a reception side and if different encryption algorithms are operated by the users of the transmission side and the reception side, encrypting the encryption algorithm operated by the user of the transmission side with the encryption algorithm operated by the user of reception side and transmitting it to the user of the reception side. [0025]
  • According to an eighth aspect of the present invention, there is provided network communication system composed by connecting a plurality of users, comprising at least an encryption key management station to be connected from a user of a transmission side, the encryption key management station comprising data base in which a correspondence between a user identifier indicating the user and an encryption algorithm operated by the user is preliminarily described about each user; [0026]
  • wherein when a communication is carried out from the user of the transmission side to a user of a reception side, a user identifier indicating the user and a reception side user identifier are obtained from the user of the transmission side and the data base is queried with the obtained identifier as a key so as to obtain an encryption algorithm operated by the user of the transmission side and an encryption algorithm operated by the user of the reception side, and [0027]
  • if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side. [0028]
  • According to a ninth aspect of the present invention, there is provided an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; querying a data base in which a correspondence between the user identifier indicating the user and an encryption algorithm operated by the user is preliminarily described about each user so as to retrieve an encryption algorithm operated by the user of the transmission side and an encryption algorithm operated by the user of the reception side; and if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, data indicating the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of reception side. [0029]
  • According to a tenth aspect of the present invention, there is provided an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user, an encryption algorithm operated by the user and an encryption key is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and an encryption key thereof and the encryption algorithm operated by the user of the reception side and an encryption key, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, data indicating the encryption algorithm operated by the user of the transmission side and the encryption key produced based on an encryption key operated by the user of the reception side corresponding to a key length of the encryption algorithm is encrypted with the encryption algorithm operated by the user of reception side and transmitted to the user of the reception side. [0030]
  • According to an eleventh aspect of the present invention, there is provided an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user, an encryption algorithm operated by the user and an encryption key is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and the encryption key thereof and the encryption algorithm operated by the user of the reception side and encryption key thereof, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, signature data produced for an encryption key operated by the user of the transmission side is transmitted to the user of the transmission side and the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side with signature data produced for an encryption key operated by the user of the reception side. [0031]
  • According to a twelfth aspect of the present invention, there is provided an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; and querying a data base in which a correspondence between the user identifier indicating the user, encryption algorithm operated by the user and encryption key is preliminarily described about each user so as to obtain the encryption algorithm operated by the user of the transmission side and an encryption key thereof and the encryption algorithm operated by the user of the reception side and encryption key, wherein if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, signature data produced for an encryption key operated by the user of the transmission side is transmitted to the user of the transmission side and data indicating the encryption algorithm operated by the user of the transmission side and encryption key produced based on an encryption key operated by the user of the reception side corresponding to a key length of the encryption algorithm is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side with signature data produced corresponding to the encryption key operated by the user of the reception side. [0032]
  • According to a thirteenth aspect of the present invention, there is provided a network communication system composed by connecting a plurality of users, comprising at least an encryption key management station to be connected from a user of a transmission side, the encryption key management station obtaining, from the user of the transmission side, information indicating an encryption algorithm operated by the user and information indicating an encryption algorithm operated by a user of a reception side, and when different encryption algorithms are operated by the user of the transmission side and the user of the reception side, encrypting the encryption algorithm operated by the user of the transmission side with the encryption algorithm operated by the user of the reception side and transmitted to the user of reception side. [0033]
  • According to a fourteenth aspect of the present invention, there is provided a network communication system composed by connecting a plurality of users, comprising at least an encryption key management station to be connected from a user of a transmission side, the encryption key management station comprising a data base in which a correspondence between a user identifier indicating a user and an encryption algorithm operated by the user is preliminarily described about each user; [0034]
  • wherein when a communication is carried out from the user of transmission side to a user of a reception side, a user identifier indicating the user and a reception side user identifier are obtained from the user of the transmission side, and the data base is queried with the obtained identifier as a key so as to obtain an encryption algorithm operated by the user of the transmission side and encryption algorithm operated by the user of the reception side, and if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side. [0035]
  • According to a fifteenth aspect of the present invention, there is provided a cryptographic communication method wherein if different encryption algorithms are operated by a transmission side and a reception side, the encryption algorithm operated by the reception side is encrypted with the encryption algorithm operated by the transmission side and transmitted to the transmission side. [0036]
  • According to a sixteenth aspect of the present invention, there is provided a cryptographic communication method wherein information indicating an encryption algorithm operated by a transmission side and information indicating an encryption algorithm operated by a reception side are obtained from the transmission side and when different encryption algorithms are operated by the transmission side and the reception side, the encryption algorithm operated by the reception side is encrypted with the encryption algorithm operated by the transmission side and transmitted to the transmission side. [0037]
  • According to a seventeenth aspect of the present invention, there is provided an encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of: from a user of a transmission side, obtaining a user identifier indicating the user and a user identifier indicating a user of a reception side; querying a data base in which a correspondence between the user identifier indicating user and encryption algorithm operable by the user is preliminarily described about each user so as to obtain an encryption algorithm operable by the user of the transmission side and an encryption algorithm operable by the user of the reception side; determining whether or not there is an encryption algorithm operable by the user of the transmission side and the user of the reception side commonly; and if the commonly operable encryption algorithm exists, it is notified the user of the transmission side that cryptographic communication at the user of the transmission side and the user of the reception side is enabled. [0038]
  • According to an eighteenth aspect of the present invention, there is provided an encryption algorithm conversion method for converting an operating first encryption algorithm to other second encryption algorithm comprising: querying a data base in which a correspondence between a user identifier indicating a user, an encryption algorithm operated by the user and an encryption key thereof is preliminarily described about each user with a user whose encryption algorithm is to be converted as a key so as to obtain a first encryption algorithm operated by the user and a first encryption key; and supplying first and second signature data written in the first and second encryption keys with a first management secret key preliminarily allocated for management and operated on the first encryption algorithm, public key data obtained by encrypting a second public key corresponding to a second management secret key operated on the second encryption algorithm preliminarily allocated for management with the first encryption algorithm, a second encryption algorithm encrypted with the first encryption algorithm and signature data produced based on the second management secret key to the user.[0039]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is an explanatory diagram showing a network communication system; [0040]
  • FIG. 2 is a functional block diagram showing a functional structure of respective portions of the network communication system; [0041]
  • FIGS. 3A and 3B are explanatory diagrams showing information to be stored in data base accessed by a key management work station, FIG. 3A indicates information to be stored in a network encryption algorithm control data base and FIG. 3B indicates information to be stored in the network key management data base; [0042]
  • FIGS. 4A and 4B are explanatory diagrams showing information to be stored in data base accessed by a personal computer, FIG. 4A indicates information to be stored in encryption algorithm control data base and FIG. 4B indicates information to be stored in a key structure management data base; [0043]
  • FIG. 5 is a schematic data flow diagram showing conversion of encryption algorithm to which the present invention is applied; [0044]
  • FIG. 6 is a schematic data flow diagram showing encryption algorithm conversion for common key cipher to which the present invention is applied; [0045]
  • FIG. 7 is a data flow diagram showing cryptographic communication by common key cipher to which the present invention is applied; [0046]
  • FIG. 8 is a flow chart showing a former half portion of encryption algorithm conversion procedure by common key cipher to which the present invention is applied; [0047]
  • FIG. 9 is a flow chart showing a latter half portion of encryption algorithm conversion procedure by common key cipher to which the present invention is applied; [0048]
  • FIGS. 10A and 10B are explanatory diagrams showing a change of an encryption key of common key cipher to which the present invention is applied; FIG. 10A indicates a case in which the key length is shortened, and FIG. 10B indicates a case in which the key length is prolonged; [0049]
  • FIG. 11 is a data flow diagram showing cryptographic communication by public key cipher to which the present invention is applied; [0050]
  • FIG. 12 is a data flow chart showing encryption algorithm conversion by public key cipher to which the present invention is applied; [0051]
  • FIG. 13 is a flow chart showing a former half portion of encryption algorithm conversion procedure by public key cipher to which the present invention is applied; [0052]
  • FIG. 14 is a flow chart showing a latter half portion of encryption algorithm conversion procedure by public key cipher to which the present invention is applied; [0053]
  • FIG. 15 is an explanatory diagram showing a change of encryption key of public key cipher to which the present invention is applied; [0054]
  • FIG. 16 is a data flow chart showing cryptographic communication system by public key cipher algorithm to which the present invention is applied; [0055]
  • FIG. 17 is a data flow chart showing encryption algorithm conversion by a portable information processing apparatus to which the present invention is applied; [0056]
  • FIG. 18 is a data flow chart showing other embodiment of encryption algorithm conversion by a portable information processing apparatus to which the present invention is applied; [0057]
  • FIG. 19 is an explanatory diagram showing a data base relating to encryption key and encryption algorithm to which the present invention is applied; [0058]
  • FIG. 20 is a data flow diagram showing a case in which a encryption key is generated by user in encryption algorithm conversion to which the present invention is applied; [0059]
  • FIG. 21 is a block diagram showing cryptographic communication system by public key cipher algorithm to which the present invention is applied; [0060]
  • FIG. 22 is an explanatory diagram showing other embodiment of network communication system; [0061]
  • FIG. 23 is an explanatory diagram showing an operation of encryption of key recovery function to which the present invention is applied; [0062]
  • FIG. 24 is an explanatory diagram showing an operation of decryption of key recovery function to which the present invention is applied; and [0063]
  • FIG. 25 is a block diagram showing cryptographic communication system using IC card based on public key cipher algorithm to which the present invention is applied.[0064]
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • Hereinafter, the embodiments of the present invention will be described with reference to the accompanying drawings. [0065]
  • First, functions of a network communication system to which the present invention is applied will be described. In a cryptographic communication system to which the present invention is applied, (1) a key management station for controlling an encryption algorithm is placed, (2) condition of encryption algorithm operated by each user is grasped by the key management station, (3) an encryption algorithm for use by each user is set up and (4) encryption algorithm for use by each user is converted. [0066]
  • The respective functions will be described below. [0067]
  • First, the key management station for controlling the encryption algorithm of (1) will be described. A key management station for controlling encryption algorithm is placed in the cryptographic communication system, so as to register all encryption algorithms used by user and encryption algorithms to be updated in this key management station. [0068]
  • Next, the function for grasping the condition of the encryption algorithm operated by each user of (2) will be described. [0069]
  • Each user carrying out the cryptographic communication and the key management station are connected to each other through such an electronic communication line as a satellite communication line or ground communication line or the like and the key management station always monitors the condition of the encryption algorithm operated by the user through the line. If a necessity of the cryptographic communication arises between users, whether or not the cryptographic communication is possible is determined by judging from the operating condition of the encryption algorithm to be operated by the user. [0070]
  • Further, the key management station grasps the operating condition of the encryption algorithm of each user and information of the key for use by the user. If the encryption algorithm operated by the user is changed, information for converting the key is created so as to be capable of adapting to an encryption algorithm in which the key for use by the user is changed and then transmitted to that user. [0071]
  • Next, the function for setting up the encryption algorithm for use by each user of (3) will be described about a case (i) in which cryptographic communication is carried out between respective users and a case (ii) in which the intensity of the encryption algorithm for use by each user is converted to an encryption algorithm of the same series having an intensity equivalent to or higher than that encryption algorithm. [0072]
  • First, the case in which the cryptographic communication is carried out between the respective users of (i) will be described. [0073]
  • Possible cases include a case (a) in which the users intending to carry out the cryptographic communication share the same encryption algorithm and a case (b) in which the users intending to carry out the cryptographic communication do not share the same encryption algorithm. Corresponding functions to these cases will be described below. [0074]
  • (a) Case where users intending to carry out cryptographic communication share the same encryption algorithm [0075]
  • 1. The key management station determines that cryptographic communication between the users is possible and transmits this determination result to the users. [0076]
  • 2. The users receive this result and execute the cryptographic communication by the shared encryption algorithm. [0077]
  • (b) Case where users intending to carry out cryptographic communication do not share the same encryption algorithm [0078]
  • 1. The key management station determines that cryptographic communication between the users is impossible. [0079]
  • 2. Considering user request, restriction and the like of a registered encryption algorithm, the key management station sets up encryption algorithm for use in cryptographic communication between the users and transmits this encryption algorithm to the users through a communication line. [0080]
  • If there is a necessity of converting a key for use by user so as to be applicable for a new set encryption algorithm, information for this key conversion is created and transmitted to the user through a communication line. [0081]
  • 3. The user converts the transmitted encryption algorithm and as required, the key for use and executes cryptographic communication. [0082]
  • Next, the case in which the intensity of the encryption algorithm for use by each user of (ii) is converted to encryption algorithm of the same series having an intensity equivalent to or higher than that encryption algorithm will be described. [0083]
  • To convert the intensity of the encryption algorithm to an encryption algorithm of the same series having an intensity equivalent to or higher than that encryption algorithm, for example, it can be considered that (a) with respect to the encryption algorithm used by the user, the user supplies an encryption algorithm of the same series having an intensity equivalent to or higher than the encryption algorithm used by the user, and (b) with respect to the encryption algorithm used by the user, the key management station possesses an encryption algorithm generating apparatus for the encryption algorithm for use by the user and supplies an encryption algorithm of the same series having an intensity equivalent to or higher than that encryption algorithm. The function of each case will be described below. [0084]
  • (a) Case where with respect to the encryption algorithm used by the user, the user supplies an encryption algorithm of the same series having an intensity equivalent to or higher than the encryption algorithm used by the user [0085]
  • 1. An encryption algorithm of the same series having an intensity equivalent to or higher than the encryption algorithm used by the user is produced and transmitted to the key management station and registered therein. [0086]
  • 2. The key management station sets up a user using an encryption algorithm except the registered encryption algorithm of the same series having an intensity equivalent to or higher, as required, produces information for converting a key for use by the user and then transmits the aforementioned encryption algorithm of the same series having an intensity equivalent to or higher and information for key conversion to this user. [0087]
  • 3. The user receiving the encryption algorithm of the same series having an intensity equivalent to or higher and information for key conversion converts the key for use using the transmitted information for key conversion as required and then carries out cryptographic communication according to the transmitted encryption algorithm. [0088]
  • (b) Case where with respect to the encryption algorithm used by the user, the key management station possesses an encryption algorithm generating apparatus for the encryption algorithm for use by the user and supplies an encryption algorithm of the same series having an intensity equivalent to or higher than that encryption algorithm. [0089]
  • 1: the key management station produces an encryption algorithm of the same series having an intensity equivalent to or higher than the encryption algorithm used by the user and registers the produced encryption algorithm. [0090]
  • 2: The key management station sets up user using an encryption algorithm other than the registered encryption algorithm of the same series having an intensity equivalent to or higher, as required produces information for converting a key used by the user and then transmits the encryption algorithm of the same series having an intensity equivalent to or higher and information for key conversion to this user. [0091]
  • 3. The user receiving the encryption algorithm of the same series having an intensity equivalent to or higher and information for key conversion converts the key for use by using the received information for key conversion as required and carries out cryptographic communication according to the received encryption algorithm. [0092]
  • Next, a function for converting the encryption algorithm for use by user of (4) will be described. [0093]
  • 1: The key management station produces the encryption algorithm for conversion by user and as required, information for conversion of the key for use by each user according to the above (3). [0094]
  • 2: The key management station encrypts the encryption algorithm for conversion by each user and key conversion information produced as required by using the encryption algorithm operated by the user and transmits it to each user through communication line. [0095]
  • 3: Each user decrypts data transmitted from the key management station using the operated encryption algorithm so as to obtain the encryption algorithm for conversion and key conversion information. [0096]
  • 4: Each user changes the operated encryption algorithm and key for use according to the aforementioned decrypted data. [0097]
  • 5. Each user encrypts a statement “encryption algorithm change completed” using the changed encryption algorithm and transmits it to the key management station through communication line. [0098]
  • 6: The key management station decrypts the encrypted and transmitted data and obtains the statement “encryption algorithm change completed” and confirms that user's encryption algorithm has converted and the encryption function operates properly. [0099]
  • Next, a first embodiment of the present invention will be described with reference to FIGS. 1-5. In this embodiment, an outline of encryption algorithm conversion to which the present invention is applied will be described. [0100]
  • First, a network communication system to which the present invention is applicable will be described with reference to FIG. 1. Here, an example of a structure in which a plurality of personal computers (information processing apparatuses) [0101] 100, 200 used by users are connected to the key management station 400, will be described.
  • The encryption algorithms operated by this system are assumed to be A[[0102] 1]-A[n], B[1]-B[m] and these encryption algorithms are controlled by the key management station. The encryption algorithms A[1]-A[n] are encryption algorithms belonging to the same series A having an intensity equivalent or different. The key management station updates security by changing encryption algorithm to a new encryption algorithm of the same series having an intensity equivalent to or higher than the encryption algorithm concerned.
  • The key management station manages the encryption algorithm operated by the user and user ID with correspondence therebetween assuming that the user ID of user operating the encryption algorithm A[[0103] 1] is U[A1, 1 1]-U[A1, N1], user ID of user operating the encryption algorithm A[2] is U[A2, 1 2]-U[A2, N2], user ID of user operating the encryption algorithm A[n] is U[An, 1 n]-U[An, Nn], user ID of user operating the encryption algorithm B[1] is U[B1, 1 1]-U[B1, M1], user ID of user operating the encryption algorithm B[2] is U[B2, 1 2]-U[B2, M2], user ID of user operating the encryption algorithm B[m] is U[Bn, 1 n]-U[Bn, Mm].
  • Referring to FIG. 1, [0104] personal computers 100 used by a user operating one of the encryption algorithms belonging to series A (hereinafter referred to as encryption algorithm A), personal computers 200 used by a user operating one of the encryption algorithms belonging to series B (hereinafter referred to as encryption algorithm B), and the key management station 400 provided with a key management work station 500 are connected through a network.
  • In this network communication system, cryptographic communication, encryption algorithm conversion and the like are carried out by means of software processing of the [0105] personal computers 100, 200 such as an information processing unit used by the users and key management work station 500.
  • FIG. 22 shows a different embodiment from FIG. 1 of the network communication system in which a plurality of encryption algorithms exist. In this embodiment of the network communication system, algorithm A, algorithm B, algorithm C and algorithm D exist as the encryption algorithm. [0106]
  • Usually, the encryption algorithm for use is determined by user's selection. [0107]
  • There are some encryption algorithms which user don't want to use because of the characteristic of the encryption algorithm. [0108]
  • In the network communication system shown in FIG. 22, the aforementioned four encryption algorithms A, B, C and D are used. In this Figure, a range of users using the encryption algorithm A is indicated with a solid line, a range of users using the encryption algorithm B is indicated with a dot and dash line, a range of users using the encryption algorithm C is indicated with two dots and dash line and a range of users using the encryption algorithm D is indicated with broken line. [0109]
  • Users located in a region in which the encryption algorithms overlap can use plural encryption algorithms. [0110]
  • The key management station stores users capable of using each encryption algorithm in data base. [0111]
  • If a request for cryptographic communication occurs between users, the key management work station grasps the operating condition of the encryption algorithm of the transmission side and reception side according to the aforementioned data base. [0112]
  • If the transmission side and reception side share the same encryption algorithm, cryptographic communication between the both is continued. [0113]
  • If the same encryption algorithm is not shared, whether or not the same encryption algorithm can be held by the transmission side and reception side is determined according to the aforementioned data base. If the sharing is impossible, it is notified the both that the cryptographic communication is disabled. [0114]
  • Whether or not the encryption algorithm can be shared between the users is determined depending on user's convenience. The range of users using each encryption algorithm is changed by user's convenience. [0115]
  • The key management work station changes information stored in data base for indicating users using each encryption algorithm by notification from the user. [0116]
  • Next, software processing function of each information processing unit (personal computer, key management work station) in this network communication system will be described with reference to FIG. 2. [0117]
  • In FIG. 2, the [0118] personal computers 100 and 200 are connected to each other so as to construct a network. Hereinafter, a case where the personal computer 100 is used by a transmission side user and the personal computer 200 is used by a reception side user will be described. It is needless to say that because the personal computers 100, 200 have the same structure, they can be used for both. The key management work station 500 is connected to the personal computer 100 for use by at least the transmission side user.
  • The personal computer [0119] 100 (200) for use by the transmission side (reception side) user includes key structure control function 110 (210), encryption algorithm control function 120 (220), scramble function 130 (230), descramble function 140 (240) and cryptographic communication control function 150 (250). A key structure control data base 180 (280) and encryption algorithm data base 190 (290) are connected to the personal computer 100 (200) so as to be accessible therefrom.
  • These data bases may be provided separately from the [0120] personal computers 100, 200 or may be provided integrally therewith. The aforementioned data bases may be shared by plural personal computers.
  • The aforementioned key [0121] management work station 500 includes scramble function 530, descramble function 540, cryptographic communication control function 550, encryption algorithm generating function 595, network encryption control function 560, and network key management function 570, and is connected to network encryption algorithm control data base 590 and network key management control data base 580 so as to be accessible therefrom. These data bases may be provided separately of the key management work station 500 or may be provided integrally with the key management work station 500.
  • Next, the function of the key [0122] management work station 500 will be described with reference to FIG. 2.
  • A user ID of each user and encryption algorithm are registered in the network encryption algorithm control data base DB[0123] 590 with correspondence therebetween.
  • The network encryption [0124] algorithm control function 570 controls the data bases for the aforementioned two kinds of data, and carries out registration, updating and deletion of the encryption algorithm for use by each user.
  • The encryption [0125] algorithm generating function 595 has a function for generating the encryption algorithm of series A.
  • As for the encryption intensity of the encryption algorithm, the longer the length of an operating key, the more difficult decryption becomes so that the encryption intensity increases thereby improving the security. [0126]
  • Further, if even in the encryption algorithm having the same key length, the operating encryption algorithm is changed periodically, a period in which a cipher is attacked can be limited thereby improving the security on communication. [0127]
  • The encryption [0128] algorithm generating function 595 generates different encryption algorithms belonging to series A in which the key length for use is the same as or longer than current encryption algorithms belonging to series A.
  • The network key [0129] structure control function 570 controls the key to be operated by this system and stores information of the key to be used by the user in the network key structure control data base.
  • The [0130] scramble function 530 is a function for encrypting data to be transmitted by the key management station 400 (see FIG. 1) to the user and the descramble function 540 is a function for decrypting the encoded data received by the key management station 400 (see FIG. 1) from the user.
  • The network [0131] key management function 570 controls the key to be used for encrypting and decrypting and stores information about the key for use by the user with a correspondence to the encryption algorithm operated for the key structure control data bases 180, 280.
  • Next, the software function of the personal computers [0132] 100 (200) which are information processing units for use by the user will be described.
  • The encryption algorithm control function [0133] 120 (220) controls the encryption algorithm operated by the user.
  • The operating encryption algorithm converts the encryption algorithm according to an instruction from the key [0134] management work station 500. The encryption algorithm control data base stores the encryption algorithms to be distributed by the key management station 400 (see FIG. 1).
  • The scramble function [0135] 130 (230) is a function for encrypting data to be transmitted by the user and the descramble function 140 (240) is a function for decrypting the encrypted data received by the user.
  • The key structure control function [0136] 110 (210) controls the key for use for encrypting and decrypting and stores the keys with a correspondence to the encryption algorithm to be operated by the key structure control data base 180 (280).
  • Next, the content of information to be stored in data base to be accessed from the aforementioned key management work station will be described with reference to FIGS. 3A and 3B. [0137]
  • In FIG. 3A, user ID for identifying a user, name of the encryption algorithm to be operated by the user, a correspondence to the encryption algorithm version, updating date, key management station ID for identifying the key management station, name of the encryption algorithm to be operated by the key management station, a correspondence with the encryption algorithm version and its updating date are stored in the network encryption algorithm control data base. [0138]
  • In FIG. 3B, user ID for identifying a user, name of the encryption algorithm to be operated by the user, a correspondence between encryption algorithm version and key information indicating the encryption key to be operated, its updating date, key management station ID for identifying the key management station, name of the encryption algorithm to be operated by the key management station, a correspondence between the encryption algorithm version and key information indicating the encryption key to be operated, and its updating date are stored in the network key management data base. [0139]
  • Next, the content of information to be stored in the data base accessible from the personal computer for use by user will be described with reference to FIGS. 4A and 4B. [0140]
  • In FIG. 4A, a name of the encryption algorithm, a correspondence of the encryption algorithm version, and its updating date are stored in the encryption algorithm control data base. [0141]
  • In FIG. 4B, a name of the encryption algorithm, encryption algorithm version, a correspondence to user key information indicating user's encryption key, and its updating date, and a name of the encryption algorithm, encryption algorithm version, a correspondence to key information of the key management station indicating the encryption key of the key management station, and its updating date are stored in the key management data base. [0142]
  • Referring to FIG. 7, an outline of cryptographic communication of a case where both the transmission side and reception side users share the same encryption algorithm (assuming that a common key cipher is operated here) will be described. In this case, it is assumed that the transmission side user is A, the reception side user is B and the transmission data to be transmitted therebetween is M. [0143]
  • The user U[A] specifies the user U[B] relative to the key [0144] management work station 500 and requests to issue a session key for use in cryptographic communication.
  • The key [0145] management work station 500 receives this request and issues the user U[B] with a session key which enables cryptographic communication to the user U[A].
  • If the user U[A] receives this session key, by using it with the [0146] scramble function 130 of the personal computer for use, data M is encrypted and transmitted to user U[B] as an encrypted statement.
  • The user U[B] stores the same encryption algorithm as the user U[A] in the encryption [0147] algorithm data base 190. As a result, the user U[B] decrypts the encrypted statement transmitted from the user U[A] by the descramble function 140 to obtain data M.
  • On the other hand, as a case where the operating encryption algorithm differs between the transmission side and reception side users, for example, in the operating encryption algorithms A[[0148] 1]-A[n], B[1]-B[m], sometimes a plurality of encryption algorithms in which methods of the common key encryption algorithm and public key encryption algorithm are different exist.
  • If the user U[A] carries out cryptographic communication for the user U[B], in case where both the users share the same encryption algorithm, the cryptographic communication can be carried out without any special treatment. However, if the same encryption algorithm is not shared, the encryption algorithm possessed by user is converted so as to make both the users share the same encryption algorithm thereby achieving the cryptographic communication. [0149]
  • This encryption algorithm conversion is carried out depending on the condition of the encryption algorithm possessed by the user as follows. [0150]
  • (1) The encryption algorithms of the same series are controlled based on the version number. The encryption algorithm is converted to the other encryption algorithm of the same series having the same or a different encryption intensity. [0151]
  • (2) The common key encryption algorithm is converted to other common key encryption algorithm. [0152]
  • (3) The public key encryption algorithm is converted to other public key encryption algorithm. [0153]
  • (4) The common key encryption algorithm is converted to other public key encryption algorithm. [0154]
  • (5) The public key encryption algorithm is converted to other common key encryption algorithm. [0155]
  • The encryption algorithm mentioned here means a procedure for converting a series of data. The encryption mentioned here means data conversion and the decryption means inverse conversion of converted data. [0156]
  • For example, it is assumed that K is binary data string and M is another binary data string. Consider the following π function which is determined by K.[0157]
  • π(M)=M xor K
  • where xor indicates exclusive [0158] OR between M and K. The data string M has been converted by π(M). If π(M) xor K is obtained with respect to this converted data, π ( M ) xor K = ( M xor K ) xor K = M xor ( K xor K ) = M
    Figure US20040260950A1-20041223-M00001
  • The data M is obtained by inversely converting the converted data π(M). The procedure for data conversion and inverse conversion like this π function is called encryption algorithm. [0159]
  • Next, assuming N data {K[0160] 1, K2, K3, . . . KN}, a function corresponding to data Ki is assumed to be πi. From this N π functions, the following two pairs of the functions f, g are considered.
  • f=π 1 2 3 oooπ N
  • g=π N N−1 N−2 oooπ 1
  • These two pairs of the functions f, g are obtained by computation on the n π functions sequentially. Therefore, f(M) and g(M) indicate a procedure for conversion of data M and the converted data f (M) is inversely converted by the function g to introduce data M. [0161]
  • Therefore, it can be considered that the functions f, g are a single encryption algorithm, so that it can be considered that the function f corresponds to encrypting of data and the function g corresponds to decrypting of data. [0162]
  • If the computation order of N π functions or the value of parameter K[0163] i is changed, another encryption algorithm can be obtained.
  • The encryption algorithm of the same series mentioned in the aforementioned encryption algorithm conversion means an encryption algorithm obtained by changing an order of a part of the data conversion or assembling by changing the values of parameters for use. Hereinafter, the encryption algorithm of the same series is referred to as encryption algorithm of a different version. [0164]
  • If such encryption algorithm conversion is carried out, the key possessed by the user is also converted corresponding to the converted encryption algorithm. [0165]
  • Next, an outline of the encryption algorithm conversion operated in network communication to which the present invention is applied will be described with reference to FIG. 5. [0166]
  • Here, it is assumed that the transmission side user is U[A] and the encryption algorithm operated by the U[A] is encryption algorithm EANG. On the other hand, it is assumed that the reception side user is U[B] and encryption algorithm operated by the U[B] is encryption algorithm EBF. [0167]
  • The encryption algorithm EANG and encryption algorithm EBF are stored in the network encryption algorithm [0168] control data base 590 of the key management work station 500 by making the former correspond to the user ID of the user U[A] and the latter correspond to the user ID of the user U[B].
  • Further, it is assumed that a key for the key [0169] management work station 500 to carry out cryptographic communication with the user U[A] based on the encryption algorithm EANG is KA and a key for the key management work station 500 to carry out cryptographic communication with the user U[B] based on encryption algorithm EBF is KB.
  • The key K[0170] A is stored in the key structure control data base 180 of the user U[A] and the key KB is stored in the key structure control data base 280 of the user U[B]. Further, the key KA is stored in the network key management data base 580 of the key management work station 500 with a correspondence to the user ID of the user U[A] and the key KB is stored therein with a correspondence to the user ID of the user U[B].
  • By taking a case where the user U[A] carries out cryptographic communication with the user U[B] under the above described environment, an outline of the encryption algorithm conversion to be operated in this network communication system will be described. [0171]
  • 1: The user U[A] specifies a reception side person by the user ID of the user U[B] by the cryptographic [0172] communication control function 150 and sends “a request for session key issue” to the cryptographic communication control function 550 of the key management work station 500.
  • 2: The “request for session key issue” is sent to the network encryption [0173] algorithm control function 560 of the key management work station 500. The network encryption algorithm control function 560 retrieves in the network encryption algorithm data base 590 based on the user ID of the user U[A] and user ID of the user U[B].
  • The encryption algorithm to be operated by the user U[A] is encryption algorithm EANG and the encryption algorithm to be operated by the user U[B] is encryption algorithm EBF. Thus, it is determined that the same encryption algorithm is not shared and this result is transmitted to the cryptographic [0174] communication control function 550.
  • 3: Receiving this result, the cryptographic [0175] communication control function 550 starts conversion of the encryption algorithm of the user U[B] from EBF to EANG.
  • First, the key L[0176] B is generated to carry out cryptographic communication with the user U[B] with encryption algorithm EANG and “descramble function confirmation end” is specified in plain text data MD.
  • Next, the encryption algorithm EANG and key L[0177] B are encrypted by the encryption algorithm EBF and key KB so as to create the cipher statement EBFKB (EANG) and EBFKB (LB).
  • Further, the plain text data MD is encrypted with the encryption algorithm EANG and key L[0178] B so as to create the encrypted statement EANGLB (MD). The aforementioned three encrypted statements are created by the scramble function 530 of the key management work station 500.
  • These three encrypted statements are sent to the user U[B] as “encryption algorithm updating request”. [0179]
  • 4: The user U[B] receiving these three encrypted statements EBF[0180] KB(EANG), EBFKB(LB) and EANGLB(MD) decrypts these encrypted statements by the descramble function 240.
  • First, the encrypted statement EBF[0181] KB (EANG) and encrypted statement EBFKB(LB) are decrypted by the key KB stored in the key structure control data base 280 so as to obtain the encryption algorithm EANG and key LB.
  • The encryption [0182] algorithm control function 220 stores the obtained encryption algorithm EANG in the encryption algorithm data base 290 and updates the operating condition of the encryption algorithm from the encryption algorithm EBF to the encryption algorithm EANG. The key structure control function 210 stores the obtained key LB in the key structure control data base 280.
  • In this manner, the encryption algorithm and key are updated. [0183]
  • Next, by using the updated encryption algorithm EANG and key L[0184] B, the encrypted statement EANGLB (MD) is decrypted so as to obtain a plain text data MD. It is confirmed that the obtained plain text data MD is written as “descramble function confirmation is terminated” and then it is confirmed that the descramble function 240 by the converted encryption algorithm EANG is operated properly.
  • 5: Next, the plain text data MS is written as “scramble function confirmation is terminated” and by operating the [0185] scramble function 230, the encrypted statement EANGLB (MS) is created using the encryption algorithm EANG and key LB.
  • This created encrypted statement is distributed to the key [0186] management work station 500 as the “encryption algorithm updating report”.
  • 6: Receiving the “encryption algorithm updating report”, the key [0187] management work station 500 decrypts the encryption algorithm EANG and key LB so as to obtain the plain text data MS. It is confirmed that the obtained plain text data MS is written as “scramble function confirmation is terminated” and then it is confirmed that the scramble function 230 by the encryption algorithm EANG converted by the user U[B] is operated properly. As a result, it is confirmed that the encryption algorithm conversion, the scramble function 230 and descramble function 240 for carrying out encrypting and decrypting are operated properly and then the encryption algorithm conversion is terminated.
  • 7: As a result of the above procedure, the user U[A] and user U[B] become capable of sharing the same encryption algorithm EANG. The users U[A] and U[B] restart cryptographic communication and the key management work station carries out “session key issue” based on the algorithm EANG to the user U[A]. [0188]
  • In the above description, the procedures for distribution of the encryption algorithm upon encryption, conversion of the key to be operated and confirmation of the operation of the converted encryption algorithm have been described. [0189]
  • A detail of the encryption algorithm conversion has been described. Here, an attention is paid to which the operating cipher is public key cipher or common key cipher and then, the encryption algorithm conversion (second embodiment of the present invention) in a case where the cryptographic communication system is constructed of the common key cipher will be described and secondly, the encryption algorithm conversion (third embodiment of the present invention) in a case where the cryptographic communication system is constructed of public key cipher will be described. Because the basic composition of these embodiments is the same as the aforementioned first embodiment, in the following description, mainly a different point therefrom will be stated and a detail of the encryption algorithm conversion of each case will be described. [0190]
  • First, the second embodiment of the present invention will be described with reference to FIGS. 6-10. Here, the encryption algorithm conversion in the cryptographic communication system constructed of the common key cipher will be described. That is, the encryption algorithm conversion in a case where the operating encryption algorithms A[[0191] 1]-A[n] and B[1]-B[m] are all common key encryption algorithms in the cryptographic communication system of FIG. 1 will be described.
  • The cryptographic communication based on the common key encryption algorithm will be described with reference to FIGS. 6 and 7. [0192]
  • As a presumption for carrying out cryptographic communication, user ID and a secret key as master key are allocated to each user using information processing unit such as a personal computer from the [0193] key management station 500. Then, the master key allocated to each user is registered and controlled in the network key management data base 580 of the key management work station 500 with a correspondence to the user ID. Likewise, the secret key PCID is allocated to the key management station 500 as the master key.
  • This embodiment uses duplex encryption method in which the encryption algorithm of the scramble key k[0194] s for use in data encryption and the encryption algorithm of the session key for use in dispatch of the descramble key KD are composed of different encryption algorithms, thereby intending to improve the security as compared to the case where the same encryption algorithm is used. In this embodiment, it is assumed that the encryption algorithm for operating the session key and master key uses the same encryption algorithm.
  • Hereinafter, by taking a case where cryptographic communication is carried out from the user u[A] to the user U[B], a content of the cryptographic communication will be described. [0195]
  • (1) In case where the user U[A] carries out cryptographic communication with the user U[B], the user U[A] requests the [0196] key management station 500 for issue of the session key. Here, it is assumed that the user U[A] is a transmission side user and the user U[B] is a reception side user. Receiving this session key issue request, the network encryption algorithm control function 560 of the key management work station 500 retrieves in the network encryption algorithm data base 590 and determines whether or not the encryption algorithm used by the user U[A] is the same as that used by the user U[B].
  • (2) When it is determined that the user U[A] and user U[B] use the same encryption algorithm, the network [0197] key management function 570 of the key management work station 500 generates a session key PT with that encryption algorithm. Next, the master key PID of the transmission side user and the master key PYID of the reception side user are fetched out from the network key management data base 580 and a plain text of the session key PT is encrypted so as to create the encrypted statements EPID (PT), EPYID (PT). This encrypted statement is transmitted to such an information processing unit as a personal computer used by the transmission side user.
  • (3) In the personal computer for use by the transmission side user, the master key P[0198] ID of that user controlling the computer is fetched out from the key structure control data base 180. Using this key, the transmitted session key encrypted is decrypted so as to obtain the session key PT.
  • (4) On the other hand, receiving the data M input by the user, the scramble key k[0199] s for encrypting this data M and descramble key KD for decrypting it are generated.
  • (5) Next, the data M input by the user is encrypted by the scramble key k[0200] s so as to create an encrypted statement Eks(M). Likewise, the descramble key KD is encrypted with the session key PT so as to create the encrypted statement EPT (kD). These two encrypted statements and the transmitted encrypted statement EPYID(PT) are transmitted to such information processing unit as a personal computer for use by the reception side user.
  • (6) The personal computer of the reception side user fetches the master key P[0201] YID of this user from the key structure control data base 280 and the encrypted session key EPYID(PT) by this key is decrypted so as to obtain the session key PT. Next, the transmitted encrypted descramble key EPT(KD) is decrypted with the session key PT so as to obtain the descramble key KD.
  • Finally, the encrypted statement E[0202] ks (M) of data transmitted with this descramble key KD is decrypted so as to obtain the data M.
  • If the network encryption algorithm control function of the key [0203] management work station 500 determines that the user U[A] and user U[B] do not use the same encryption algorithm, it carries out conversion of the encryption algorithm of the user U[B] for the users U[A] and U[B] to be able to operate the same encryption algorithm.
  • Next, the procedure for encryption algorithm conversion of this embodiment will be described with reference to FIGS. 6, 8 and [0204] 9.
  • (1) If the network encryption [0205] algorithm control function 560 receives a session key issue request containing user ID of the transmission side user and user ID of the reception side user from the transmission side user and retrieves in the network encryption algorithm data base 590 with the transmitted user ID as a key, so as to grasp the operating condition of the encryption algorithm operated by the transmission side user and reception side user. As shown in FIG. 6, the cryptographic communication system applies duplex encryption method by the common key cipher, so that two kinds of encryption algorithms, that is, encryption algorithm for use in encrypting of data and encryption algorithm for use in operating the session key are used. If the two kinds of the encryption algorithms operated by the transmission side user and reception side user do not agree with each other, cryptographic communication between both the parties cannot be achieved.
  • If no coincidence occurs as a result of retrieval in the network encryption [0206] algorithm data base 590, the encryption algorithm EANG operated by the transmission side user is fetched out. The fetched encryption algorithm is supplied with an identifier for identifying whether it will be used for encrypting of data or operating the session key. If the two kinds of the encryption algorithms do not coincide with each other, the two kinds of the encryption algorithms are fetched out.
  • Assuming that the encryption algorithm operated by the reception side user is EBF, this encryption algorithm EBF is converted to the encryption algorithm EANG fetched out. [0207]
  • (2) The network [0208] key management function 570 of the key management work station 500 generates the session key PTA with the encryption algorithm EBF prior to conversion and generates the session key PTB with the encryption algorithm EANG after the conversion. If there is no change in the algorithm for operating the session key, the PTA is equal to the PTB. Next, the user ID key of the reception side user is retrieved in the network key management data base 580 and the master key PYID of the reception side user is fetched out.
  • If the encryption algorithm is converted, the key length of the key to be used for cryptographic communication or bit length increases or decreases. Therefore, in this case, it is demanded that a change of the key length of the encryption key is carried out with a conversion of the encryption algorithm. [0209]
  • Conversion of the encryption key accompanied by a conversion of the encryption algorithm will be described with reference to FIG. 10A and FIG. 10B. [0210]
  • A case where the bit number of the key decreases is as follows. As shown in FIG. 10A, redundant bit numbers after the master key P[0211] YID of the reception side user and after the master key PCID of the key management station 500 are deleted so as to obtain new master key PYIDC for the reception side user and master key PCIDC for the key management station 500.
  • On the other hand, a case where the bit number of the key increases is as follows. As shown in FIG. 10B, random numbers YR, CR are generated corresponding to short bit numbers, so that a new master key P[0212] YIDC (PYIDC=PYID∥YR) for the reception side user is obtained by connecting a random number YR to the PYID and a new master key PCIDC (CCIDC=CCID∥CR) for the network key management work station 500 is obtained by connecting the random number CR to the PCID.
  • Because there is a possibility that the updated master keys P[0213] YIDC, PCIDC of the users are equal to the master keys of the other users, by retrieving the network key management data base 580, it is confirmed if there is same master key or not and if there is a user of the same master key, a new master key of a required length is generated.
  • (3) The following encrypted statement is produced using the encryption algorithm EBF prior to conversion at the key [0214] management work station 500.
  • 1: The session key P[0215] TA is encrypted with the encryption algorithm EBF prior to conversion and master key PYID so as to create the encrypted statement EBFPYID (PTA).
  • 2: The encryption algorithm EANG is encrypted with the encryption algorithm EBF prior to the conversion and the session key P[0216] TA so as to create the encrypted statement EBFPTA (EANG).
  • 3: The master key P[0217] YIDC of the reception side user after the conversion is encrypted with the encryption algorithm EBF prior to the conversion and session key PTA so as to create the encrypted statement EBFPTA (PYIDC). If there is no change in the master key of the reception side user, this encrypted statement is not created.
  • (4) The following encrypted statement is created using the encryption algorithm EANG after the conversion at the [0218] key management station 500.
  • 1: The session key P[0219] T to be operated by the encryption algorithm after the conversion is encrypted with the encryption algorithm EANG after the conversion and the master key PYIDC of the reception side user after the conversion so as to create the encrypted statement EANGPYIDC(PTB).
  • If there is no change in the encryption algorithm for operating the session key, this encrypted statement is the same as the EBF[0220] PYID(PTA).
  • 2. The session key P[0221] TB to be operated by the encryption algorithm after the conversion with the encryption algorithm EANG after the conversion and the master key PCIDC of the key management work station 500 after the conversion has been encrypted so as to create the encrypted statement EANGPCIDC(PTB).
  • If there is no change in the encryption algorithm for operating the session key, this encrypted statement is the same as the encrypted statement EBF[0222] PCID (PTA) produced by ciphering the session key PTA to be operated based on the encryption algorithm before the conversion with the encryption algorithm EBF before the conversion and the master key PCID of the key management work station 500 before the conversion.
  • 3: The plain text data MD is written as “confirmation of descramble function after algorithm conversion is terminated”. [0223]
  • A scramble key k[0224] SC for encrypting plain text data MD and a descramble key KDC for decrypting both with the encryption algorithm EANG after the conversion, are generated.
  • Next, the data MD is encrypted with the scramble key k[0225] SC so as to create an encrypted statement Eksc (MD). Likewise, the descramble key KDC is encrypted with the session key PTB to be operated with the encryption algorithm after the conversion so as to create the encrypted statement EANGPTB(KDC).
  • (5) At the key [0226] management work station 500, three encrypted statements have been produced in the above (3), EBFPYID (PTA), EBFPTA(EANG) and EBFPTA (PYIDC) and four encrypted statements have been produced in the above (4) EANGPYIDC(PTB), EANGPCIDC(PTB), EksC(MD) AND EANGPTB(Kdc). These statements are sent to a reception side user as “encryption algorithm conversion request”. Here, the three encrypted statements produced in the above (3) are information for converting the encryption algorithm of the reception side user and the four encrypted statements produced in the above (4) are information for confirming whether or not the converted encryption algorithm operates properly after the encryption algorithm is converted.
  • (6) After the encryption algorithm of the reception side user is converted and the master key is updated, the reception side user is operating the EBF as the encryption algorithm and possesses the P[0227] YID as the mater key. From an encrypted statement transmitted from the key management work station,
  • 1: the encrypted statement EBF[0228] PYID (PTA) is decrypted with the PYID as the master key so as to obtain the session key PTA.
  • 2: The encrypted statement EBF[0229] PTA (EANG) is decrypted with the session key PTA so as to obtain the encryption algorithm EANG.
  • 3: The encrypted statement EBF[0230] PTA (PYIDC) is decrypted with the session key PTA so as to obtain the master key PYIDC.
  • In the above manner, the reception side user obtains the encryption algorithm EANG and master key P[0231] YIDC. Then, the obtained encryption algorithm EANG is registered in the encryption algorithm control data base 290 and the encryption algorithm to be operated by the encryption algorithm control function 220 is converted from EBF to EANG.
  • If the master key of a reception side user is updated, the master key is changed from P[0232] YID to PYIDC by the key structure control function 210.
  • (7) The descramble function [0233] 240 is confirmed by the encryption algorithm converted by the reception side user.
  • The encrypted statement transmitted from the key [0234] management work station 500 is decrypted by the descramble function 240 using the converted encryption algorithm and it is confirmed that the descramble function 240 operates properly.
  • 1: The encrypted statement EANG[0235] PYIDC(PTB) is decrypted with PYIDC as the master key so as to obtain the session key PTB.
  • 2: The encrypted statement EANG[0236] PTB (kDC) is decrypted with the session key PTB so as to obtain the descramble key kDC.
  • 3: The encrypted statement E[0237] ksc(MD) is decrypted with the descramble key kDC so as to obtain a plain text data MD.
  • 4: It is confirmed that the plain text data MD is written as “confirming the descramble function after the algorithm conversion has been terminated” and then it is confirmed that the [0238] descramble function 240 operates properly.
  • (8) Driving the [0239] scramble function 230 using the converted encryption algorithm of a reception side user
  • To confirm that the [0240] scramble function 230 using the converted encryption algorithm operates properly, plain text data is set and encrypted by the scramble function 230 and then transmitted to the key management work station 500.
  • 1: The plain text data MS is written as “algorithm conversion confirmation test is terminated”. A scramble key K[0241] su for encrypting this plain text data MS with the encryption algorithm EANG after the conversion and a descramble key Kdu for decrypting are generated. Next, the data MS is encrypted with the scramble key ksu so as to produce an encrypted statement EANGksu(MS). Likewise, the descramble key Kdu is encrypted with the obtained session key PTB so as to create the encrypted statement EANGPTB (kDu).
  • 2: Produced two encrypted statements EANG[0242] PTB(kDU) and EANGksu (MS) and an encrypted statement EANGPCIDC(PTB) transmitted from the key management work station 500 are returned to the key management work station 500 as “encryption algorithm conversion confirmation request”.
  • (9) Confirmation of encryption algorithm conversion at the key [0243] management work station 500
  • The encrypted statement returned from the reception side user is decrypted so as to confirm that the [0244] scramble function 230 for the converted encryption algorithm of the reception side user operates properly. Then, it is confirmed that the encryption algorithm after the conversion operates properly.
  • 1: The encrypted statement EANG[0245] PCIDC(PTB) is decrypted with the master key PCIDC of the key management work station 500 so as to obtain the session key PTB.
  • 2: The encrypted statement EANG[0246] PTB (KDU) is decrypted with the session key PTB so as to obtain the descramble key KDU.
  • 3: The encrypted statement E[0247] ksu(MS) is decrypted with the descramble key kDu so as to obtain a plain text data MS.
  • 4: It is confirmed that the obtained plain text data MS is written as “algorithm conversion confirmation test is terminated” and it is confirmed that the [0248] scramble function 230 of a reception side user operates properly. Then, it is confirmed that the encryption algorithm after the conversion operates properly.
  • In the network communication system in which the common key cipher is operated, the algorithm conversion can be carried out. [0249]
  • As a result of this algorithm conversion, it comes that the user U[A] and user U[B] share the same encryption algorithm. As a result, the user U[A] and user U[B] are enabled to carry out cryptographic communication by the steps shown in FIG. 7. [0250]
  • In this embodiment, in case where the user U[A] and user U[B] possess an encryption algorithm of the same series having the same intensity or having a different intensity, it is possible to convert to an encryption algorithm having a high intensity by the network encryption [0251] algorithm control function 560.
  • In this case, if the user U[A] has an encryption algorithm having a higher intensity than the user U[B], the encryption algorithm of the user U[B] is converted to an encryption algorithm of the user U[A]. Conversely if the encryption algorithm of the user U[B] has a higher intensity, the encryption algorithm of the user U[A] is converted to that of the user U[B]. This algorithm conversion can be carried out in the same procedures as shown in FIGS. 6, 8 and [0252] 9.
  • Next, a case in which the security is improved by raising the encryption intensity of an encryption algorithm controlled by the key [0253] management work station 500 or by changing the encryption algorithm version without changing the encryption intensity will be described.
  • As shown in FIG. 1, the encryption algorithms A[[0254] 1]-A[n] are encryption algorithms controlled by the key management work station 500 of the same A cipher series and the key management work station 500 has a function for generating this encryption algorithm. By changing the encryption algorithm, it is possible to change the encryption intensity or procedure for encryption computation. As compared to use of the same encryption algorithm, the security of the cryptographic communication system can be improved.
  • The user ID of a user operating the same A series encryption algorithm is U[Ai, j] and the key [0255] management work station 500 selects a user which changes the encryption algorithm from these users. Then, by using the function for generating the encryption algorithm, a new encryption algorithm is generated and the newly generated encryption algorithm is distributed to a user determined to change the encryption algorithm.
  • This distribution can be carried out in the same manner as the above described algorithm conversion of the encryption algorithm. [0256]
  • Cases for distributing an encryption algorithm of a different version and an encryption algorithm having a different encryption intensity have been described above. [0257]
  • The encryption algorithm of each user is converted to an encryption algorithm distributed thereto. The encryption algorithm before the conversion is not deleted but stored in the encryption [0258] algorithm data base 190, 290 of each user. The key management work station 500 controls the encryption algorithm stored in the encryption algorithm data base 190, 290 of each user by using the network encryption algorithm control data base 590.
  • Consequently, in case when a request for cryptographic communication from the user U[A] to the user U[B] occurs, if a common encryption algorithm exists in the encryption [0259] algorithm data bases 190, 290 of both the users, the key management work station 500 does not have to distribute any encryption algorithm. If the key management work station 500 dispatches an instruction for changing over to the common encryption algorithm, the cryptographic communication from the user U[A] to the user U[B] is enabled.
  • The encryption algorithm conversion of a case when the cryptographic communication system is composed of common key ciphers has been described above. [0260]
  • A third embodiment of the present invention will be described with reference to FIGS. 11-15. Here, encryption algorithm conversion of a network communication system in which a public key cipher is operated or a case where the cryptographic communication system is composed of the public key cipher will be described. [0261]
  • In the network communication system shown in FIG. 1, it is assumed that all the encryption algorithms A[[0262] 1]-A[n], B[1]-B[m] to be operated are public key cipher algorithms.
  • Cryptographic communication by the public key cipher algorithm will be described with reference to FIG. 12. [0263]
  • As the public key cipher algorithm, for example, elliptical curve cipher algorithm is applicable. It is assumed that a base point of an elliptical curve necessary for describing computation of this elliptical curve cipher key is P. The elliptical curve cipher has been stated in for example, “Quick Encryption Method Using Elliptical Curve” by Kazuo Takaragi and Hiroyuki Kurumaya, in Technical Report of IEICE ISEC 97-15(1997-07). [0264]
  • In case when cryptographic communication is carried out, an issue of the session key is received from the network [0265] key management function 570 of the key management work station 500, data received based on this key is encrypted so as to create an encrypted statement and then transmitted to the descramble function 240 of a personal computer of a reception side user.
  • The descramble function [0266] 240 decrypts the transmitted encrypted statement so as to obtain data.
  • As a presumption for operating the cryptographic communication processing portion, a user ID, a secret key d[0267] ID as a master key and a public key QID (=P·dID: · is computation on elliptical curve) corresponding to this secret key are allocated by the key management work station 500 to each user using such information processing unit as a personal computer. The public key QID allocated to user is registered and controlled in the network key management data base 580 of the key management work station 500 with a correspondence to the user ID. Likewise, a secret key dC as the mater key and a public key QC (=P·dc: · is computation on elliptical curve) corresponding to this secret key are allocated to the key management work station 500. The public key QC of the key management work station 500 is open to all users of this system.
  • According to this embodiment, data encryption is carried out with the scramble key K[0268] S and data decrypting is carried out with the descramble key KD. Distribution of this descramble key KD is carried out by the elliptical curve cipher which is a public key cipher. As a common key encryption algorithm for operating the scramble key Ks, descramble key KD, for example, MULTI2 encryption algorithm can be used. The MULTI2 encryption algorithm (Hitachi, “MULTI2”, Registration of cryptographic algorithm, ISO9979/0009, NCC, UK (1994)) is an encryption algorithm which has achieved actual performance in for example, CS digital broadcasting (digital broadcasting using communication satellite).
  • Hereinafter, a case where cryptographic communication is carried out from the user U[A] to the user U[B] will be described. It is assumed that the user U[A] is transmission side user and the user U[B] is reception side user. [0269]
  • (1) Upon cryptographic communication from the user U[A] to the user U[B], the user U[A] requests the key [0270] management work station 500 for session key issue. Receiving this session key issue request, the network encryption algorithm control function 560 of the key management work station 500 retrieves in the network encryption algorithm data base 590 so as to determine whether or not the encryption algorithm used by the user U[A] is equal to the encryption algorithm used by the user U[B].
  • (2) If it is determined that the user U[A] and user U[B] use the same encryption algorithm, the network [0271] key management function 570 of the key management work station 500 retrieves in the network key management data base 580 with the user ID as a key and fetches out a public key QYID corresponding to a master key of a reception side user and a public key QID corresponding to a master key of the transmission side user.
  • Signature producing computation is carried out with the secret key d[0272] c which is the master key of the key management work station 500 to the fetched out public key QYID and public key QID so as to create signature data Sdc (QYID) and signature data Sdc(QID). With this public key QYID as a session key, the signature data Sdc (QYID) and signature data Sdc (QID) are transmitted in combination to the transmission side user so as to issue the session key.
  • (3) A user receiving the public key Q[0273] YID, signature data Sdc(QYID) and signature data Sdc(QID) carries out signature verifying computation on the signature data Sdc(QYID) and QYID using the public key QC of the key management work station 500 so as to confirm that the public key QYID is a key transmitted from a proper key management work station 500 and a key allocated to a proper reception side user intended to communicate with.
  • In this manner, the transmission side user receives an issue of a public key for use as a session key. [0274]
  • (4) The transmission side user generates the scramble key K[0275] s for encrypting data M to be transmitted and the descramble key KD for decrypting.
  • Next, the data M inputted by the user is encrypted with the scramble key K[0276] s so as to create an encrypted statement EKs (M).
  • Further, the descramble key K[0277] D is encrypted with the transmitted public key QYID as a session key so as to generate an encrypted descramble key EQYID (KD).
  • To guarantee that the data M to be transmitted has been created by the transmission side user, signature producing computation is carried out to the data M to be transmitted with the secret key d[0278] ID as a master key allocated to the transmission side user from the key management work station 500 and the signature data SdID (M) is produced.
  • In case of public key cipher, the transmitted key Q[0279] YID can be used as an encryption key as it is.
  • Five data, that is, two encrypted statements E[0280] KS(M) and EQYID(KD), signature data SdID(M) about the data M, signature data Sdc (QID) about a public key of transmission side user transmitted from the key management work station 500, and public key QID of the transmission side user are sent to the reception side user.
  • (5) Receiving the five data, the reception side user carries out signature verifying computation on the signature data S[0281] dc(QID) and QID using the public key Qc of the key management work station 500, so as to confirm that the public key QID has been transmitted from a proper key management work station 500, thereby ensuring that that key is a public key allocated to the transmission side user properly.
  • Then, the encrypted descramble key E[0282] QYID (KD) is decrypted with the secret key dYID as a master key which is allocated to the reception side user from the key management work station 500 so as to obtain the descramble key KD.
  • Next, the encrypted statement E[0283] Ks(M) is decrypted with this descramble key KD so as to obtain the data M.
  • Finally, signature verifying computation is carried out on the signature data S[0284] dID (M) and data M with the public key QID transmitted from the transmission side user so as to ensure that the data M is data transmitted from a proper transmission side user.
  • Consequently, in the network communication system, the user U[A] is capable of carrying out cryptographic communication with the user U[B]. [0285]
  • On the other hand, if the encryption algorithm control function determines that the user U[A] and user U[B] don't use the same encryption algorithm, it converts the encryption algorithm of the user U[B] for both the users U[A] and U[B] to be able to use the same encryption algorithm. [0286]
  • Encryption algorithm conversion in a network communication system operating the public key encryption algorithm will be described with reference to FIGS. 11, 13 and [0287] 14.
  • (1) Receiving a session key issue request containing the user ID of the transmission side user and user ID of the reception side user from the transmission side user, the network encryption [0288] algorithm control function 560 retrieves in the network encryption algorithm control data base 590 with a transmitted user ID as a key and grasps a condition of the encryption algorithm operated by the transmission side user and reception side user. As shown in FIG. 11, the network communication system employs cryptographic communication system based on duplex encryption method. A common key encryption algorithm is used for data encryption and a public key encryption algorithm is used for operating the session key.
  • Unless two kinds of the encryption algorithms operated by the transmission side user and reception side user agree, cryptographic communication between the both cannot be carried out. [0289]
  • If the two kinds of the encryption algorithms do not agree as a result of querying on the network encryption algorithm [0290] management data base 590, the encryption algorithm EANG operated by the transmission side user is fetched out. The fetched encryption algorithm is supplied with an identifier for indicating whether it is used for data encryption or operation of the session key. Of course, if each of the two kinds of the encryption algorithms does not agree, the two kinds of the encryption algorithms are fetched out.
  • Assuming that the encryption algorithm operated by the reception side user is EBF, the encryption algorithm is converted from this encryption algorithm EBF to the fetched out encryption algorithm EANG. [0291]
  • (2) The network [0292] key management function 570 of the key management work station 500, with the user ID as a key, retrieves in the network key management data base 580 and fetches out a public key QYID corresponding to a master key of a reception side user for the encryption algorithm EBF before the conversion.
  • In case where the encryption algorithm is changed to the encryption algorithm EANG, there is a possibility that the master key cannot be used under the encryption algorithm EBF before the conversion of the reception side user. In this case, the network [0293] key management function 570 determines whether the master key of the reception side user is compatible for conversion of the encryption algorithm and if it is determined that there is no compatibility, a new public key is generated for the reception side user.
  • As the new master key, the secret key d[0294] YIDC is generated and a public key QYIDC corresponding to this secret key is generated.
  • In the key management work station, both the encryption algorithm EBF before the conversion and encryption algorithm EANG after the conversion are supplied with a corresponding master key. [0295]
  • A secret key as a master key corresponding to the encryption algorithm EBF before the conversion is d[0296] c and a public key corresponding to this secret key is Qc.
  • It is assumed that the secret key which is a master key suitable for the encryption algorithm EANG after conversion is d[0297] cc and a public key corresponding to this secret key is QCG.
  • (3) The network [0298] key management function 570 creates the following encrypted statement and signature data using the encryption algorithm EBF prior to the conversion.
  • 1: A scramble key K[0299] SB for encrypting the encryption algorithm EANG and secret key dYIDC with the encryption algorithm EBF prior to the conversion and a descramble key KDB for decrypting are generated.
  • 2: The encryption algorithm EANG and secret key d[0300] YIDC is encrypted with the scramble key KSB so as to create the encrypted statement EBFKSB (EANG) and encrypted statement EBFKSB (dYIDC). Further, the descramble key KDB is encrypted with the fetched public key QYID as a master key so as to create the encrypted statement EBFQYID(KDB).
  • 3: Signature producing computation is carried out on the generated secret key D[0301] YIDC and public key QYIDC with the encryption algorithm EBF prior to the conversion and the secret key dc which is a master key of the key management work station 500, so as to create the signature data Sdc(dYIDC) and signature data Sdc(QYIDC).
  • 4: Signature producing computation is carried out on the encryption algorithm EANG with the encryption algorithm EBF prior to the conversion and the secret key d[0302] c which is a master key of the key management work station 500, so as to create signature data Sdc (EANG).
  • 5: Signature producing computation is carried out on the public key Q[0303] CG which is a master key of the key management work station 500 to be applied to the encryption algorithm EANG after the conversion, with the encryption algorithm EBF prior to the conversion and the secret key dc which is a master key of the key management work station 500, so as to create signature data Sdc (QCG).
  • (4) The [0304] scramble function 530 creates the following encrypted statement and signature data using the encryption algorithm EANG after the conversion.
  • 1: The plain text data MD is written as “confirmation of descramble function after algorithm conversion is terminated”. [0305]
  • A scramble key K[0306] SC for encrypting the plain text data MD with the encryption algorithm EANG after the conversion and a descramble key KDC for decrypting are generated. Next, the data MD is encrypted with the scramble key KSC so as to create the encrypted statement EANGKSC (MD) and then the descramble key KDC is encrypted with the public key QYIDC to be operated as a session key in the encryption algorithm after the conversion, so as to create the encrypted statement EANGQYIDC(KDC).
  • 2: Signature producing computation is carried out on the generated public key Q[0307] YIDC and plain text data MD with the secret key dcg allocated as a master key of the key management work station 500 with the encryption algorithm EANG after the conversion, so as to create signature data Sdcg(QYIDC) and Sdcg(MD).
  • (5) The three encrypted statements EBF[0308] QYID(KDB), EBFKSB(EANG), EBFKSB(dYIDC) produced in the above (3), four signature data Sdc(dYIDC), Sdc(QYIDC), Sdc(EANG) and Sdc(QCG), newly generated public key QYIDC, public key QCG of the key management work station 500, the two encrypted statements EANGKSC(MD), EANGQYIDC(KDC) produced in the above (4), and two signature data Sdcg(QYIDC), Sdcg(MD) are transmitted to a reception side user as “encryption algorithm conversion request”. Here, the encrypted statement and signature data produced in the above (3) are information for converting the encryption algorithm of the reception side user and the four encrypted statements and signature data produced in the above (4) are information for recognizing whether or not the converted encryption algorithm functions properly after that encryption algorithm is converted.
  • The network [0309] key management function 570 stores the generated public key QYIDC which is a master key of the reception side user in the network key management data base 580 with a correspondence to the encryption algorithm EANG.
  • (6) Conversion of the encryption algorithm of the reception side user and updating its master key [0310]
  • The reception side user operates EBF as the encryption algorithm and possesses the secret key d[0311] YID as its master key and the public key Qc of the key management work station 500 to be operated by the encryption algorithm EBF.
  • From the encrypted statement transmitted from the key [0312] management work station 500.
  • 1: The encrypted statement EBF[0313] QYID (KDB) is decrypted with the secret key dYID as the master key so as to obtain the descramble key KDB. Next, the encrypted statement EBFKSB(EANG) is decrypted with this descramble key KDB so as to obtain the encryption algorithm EANG. Signature verifying computation is carried out on the signature data Sdc(EANG) and the obtained encryption algorithm EANG with the public key QC of the key management work station 500 so as to ensure that the obtained encryption algorithm EANG has been transmitted from a proper key management work station 500.
  • 2: The encrypted statement EBF[0314] KSB (dYIDC) is decrypted using the descramble key KDB and then a secret key dYIDC is obtained as a master key of a given user to be operated on the converted encryption algorithm EANG.
  • Using the public key Q[0315] C of the key management work station 500, signature verifying computation is carried out on the signature data Sdc(dYIDC) and the obtained secret key dYIDC, so as to determine whether or not the obtained secret key dYIDC has been transmitted from a proper key management work station 500. Likewise, signature verifying computation is carried out on the signature data Sdc(QYIDC) and the public key QYIDC which is a transmitted master key using the public key QC of the key management work station 500 so as to determine that the obtained public key QYIDC has been transmitted from a proper key management work station 500.
  • 3: Signature verifying computation is carried out on the signature data S[0316] dc(QCG) and the public key QCG to be operated on the transmitted encryption algorithm EANG converted of the key management work station 500, using the public key QC of the key management work station 500, so as to determine whether or not the transmitted public key QCG is a public key sent from a proper key management work station 500.
  • In this manner, the reception side user obtains the encryption algorithm EANG, a secret key d[0317] YIDC as a master key, a public key QYIDC corresponding to this secret key, and a public key QCG to be operated on the converted encryption algorithm EANG of the key management work station 500. Then, the obtained encryption algorithm EANG is registered in the encryption algorithm control data base 290 and the encryption algorithm to be operated by the encryption algorithm control function 220 is converted from the encryption algorithm EBF to the encryption algorithm EANG.
  • If the master key of a reception side user is changed, the secret key as the master key is updated from d[0318] YID to dYIDC by the key structure control function 210.
  • (7) Confirmation of the descramble function [0319] 240 by the converted encryption algorithm of a reception side user
  • An encrypted statement transmitted from the key [0320] management work station 500 is decrypted by the descramble function 240 using a converted encryption algorithm so as to determine whether or not the descramble function 240 operates properly.
  • 1: The encrypted statement EANG[0321] QYIDC (KDC) is decrypted using the secret key dYIDC as a master key so as to obtain the descramble key KDC.
  • 2: The encrypted statement EANG[0322] KSC (MD) is decrypted with the descramble key KDC so as to obtain a plain text data MD. Next, signature verifying computation is carried out on the signature data Sdcg(MD) and the obtained plain text data MD using the public key QCG of the key management work station 500, so as to determine that the obtained plain text data MD has been transmitted from a proper key management work station 500.
  • 3: It is confirmed that the plain text data MD is “confirmation of the descramble function after algorithm conversion is terminated”. Then, it is confirmed that the [0323] descramble function 240 operates properly.
  • (8) Driving the scramble function by the converted encryption algorithm at a reception side user [0324]
  • To ensure that the [0325] scramble function 230 of the converted encryption algorithm operates properly, plain text data is set up, encrypted by the scramble function 230 and transmitted to the key management work station 500.
  • 1: The plain text data MS is written as “algorithm conversion confirmation test is terminated”. The scramble key K[0326] su for encrypting the aforementioned plain text data MS and the descramble key KDU for decrypting are generated with the encryption algorithm EANG after the conversion. Next, the plain text data MS is encrypted by the scramble key KSU so as to create an encrypted statement EANGKSU (MS). Likewise, the descramble key KDU is encrypted with the public key QCG of the key management work station 500 so as to create the encrypted statement EANGQCG(KDU). Further, signature producing computation is carried out on the data MS using the secret key dYIDC as a master key of a reception side user so as to produce the signature data SdYIDC (MS).
  • 2: Two produced encrypted statements EANG[0327] QCG (KDU), EANGKSU(MS), signature data SdYIDC(MS), signature data Sdcg (QYIDC) transmitted from the key management work station 500, and public key QYIDC of a reception side user are returned to the key management work station 500 as “encryption algorithm conversion confirmation request”.
  • (9) Confirmation of the encryption algorithm conversion at the key [0328] management work station 500
  • An encrypted statement returned from the reception side user is decrypted so as to confirm that the [0329] scramble function 230 using the converted encryption algorithm of the reception side user operates properly. Then, it is confirmed that the encryption algorithm after the conversion operates properly.
  • 1: The encrypted statement EANG[0330] QCG(KDU) is decrypted with the secret key dcg as a master key of the key management work station 500 so as to obtain the descramble key KDU.
  • 2: The encrypted statement EANG[0331] ksu(MS) is decrypted with the descramble key KDU so as to obtain plain text data MS.
  • 3: Signature verifying computation is carried out on the signature data S[0332] dcg(QYIDC) and the transmitted public key QYIDC of the reception side user using the public key Qcg of the key management work station 500, so as to confirm that the transmitted public key QYIDC of the reception side user has been transmitted from a proper reception side user.
  • 4: Signature verifying computation is carried out on the signature data S[0333] dYIDC (MS) and obtained plain text data MS, using the public key QYIDC of a reception side user, so as to confirm that the obtained plain text data MS has been transmitted from a proper reception side user.
  • 5: It is confirmed that the obtained plain text data MS is “algorithm conversion confirmation test is terminated” and then it is confirmed that the [0334] scramble function 230 of the reception side user operates properly. Then, it is confirmed that the encryption algorithm after the conversion operates properly.
  • The examples of the algorithm conversion of this embodiment have been described in the above (1)-(9). By this encryption algorithm conversion, it comes that the user U[A] and user U[B] share the same encryption algorithm. Consequently, as shown in FIG. 12, cryptographic communication between the user U[A] and user U[B] is enabled. [0335]
  • In case when an encryption algorithm is converted, in this embodiment, the secret key as a master key possessed by user and a public key corresponding to this secret key are generated at the key management work station. [0336]
  • Although these keys may be generated newly, it is possible to generate them based on the keys prior to the conversion. The generation of the key will be described below. [0337]
  • In case of public key cipher also, the key length of the secret key for use in the cryptographic communication, or bit number is increased or decreased by the encryption algorithm conversion like the case of the common key cipher. [0338]
  • To reduce the bit number of the key, redundant bit number of a rear part of the secret key d[0339] YID as a master key prior to the conversion of a reception side user is deleted and this is used as the secret key dYIDC as a new master key of the reception side user.
  • To prolong the bit number of the key, as shown in FIG. 15, a random number YR is generated corresponding to a short bit number and the YR is connected to d[0340] PYID so as to obtain the secret key dYIDC (dYIDC=PYIDC∥YR) as a new master key of a reception side user. A public key QYIDC (=P·dYIDC; · is computation on an elliptical curve) is determined corresponding to the generated secret key dYIDC.
  • Because there is a possibility that this public key Q[0341] YIDC is a secret key of other user generated previously, the key management work station 500 retrieves in the network encryption algorithm control data base 590 so as to confirm that there is no same public key. If the same public key exists, a random number is generated again so as to generate a secret key as a master key.
  • Here, it is always possible to use 0 as YR. [0342]
  • As described, the encryption algorithm for operating the master key and session key employs an elliptical curve encryption algorithm which is different from the common key encryption algorithm. As a result, duplex encryption method is constructed so as to improve the security. [0343]
  • Next, a configuration of a case where the elliptical curve cipher is used as a public key cipher in the network communication system of the present invention will be described. The software function of the case where the public key cipher is used is the same as the software function of the common key cipher shown in FIG. 2. As shown in an example of a case where the aforementioned public key encryption algorithm is used, the master key of each user is the secret key d[0344] ID and this secret key corresponds to a public key QID (=dID·P: · is computation on elliptical curve) on computation of an elliptical curve. The encryption algorithm of the scramble key and descramble key is MULTI2 encryption algorithm as the common key encryption algorithm.
  • A fourth embodiment of the present invention will be described. Encryption algorithm conversion in encryption function incorporated in a portable information processing unit will be described here. [0345]
  • In the above described first-third embodiments, a plurality of encryption algorithms exist in network communication system as shown in FIG. 1. The key [0346] management work station 500 grasps a condition of the encryption algorithm of each user and each time when a request for cryptographic communication occurs, it converts the encryption algorithm of each user as required so as to achieve the cryptographic communication between users.
  • Recently, an encryption function has been incorporated in a portable information processing unit, for example, portable terminal unit, IC card and the like and it is used for automatic payment of electronic money. [0347]
  • In case where user possesses an IC card as information processing unit in which an encryption function is incorporated and executes automatic payment of electronic money, this IC card is inserted into a reader which is an information processing unit installed on a retailer counter or the like, so that the payment is carried out by information processing between the both. [0348]
  • In this case, if the IC card is connected to the key management work station to carry out encryption processing, a user's procedure becomes complicated so that he or she feels a lot of inconvenience. [0349]
  • Hereinafter, an encryption algorithm conversion method preferable for encryption algorithm conversion to be operated in a portable information processing unit (terminal, IC card and the like) will be described. [0350]
  • If cryptographic communication is carried out in an cryptographic communication system operated by the public key encryption algorithm shown in FIG. 12, a transmission side user makes a “session key issue request” to the key [0351] management work station 500 as shown in FIG. 2 and receives a public key QYID of a reception side user, signature data Sdc(QYID ) of the public keyYID, its own public key QID and signature data Sdc(QID) of that public key QID from the key management work station 500.
  • Here, each user stores its own public key Q[0352] ID and signature data Sdc(QID) in the key structure control data base 180, 280. FIG. 16 shows cryptographic communication system operated by the public key encryption algorithm (FIG. 25 shows the functional blocks of this method). Each user receives its own public key QID and signature data Sdc(QID) of that public key QID from the key management work station 500 through a route indicated by dotted line of FIG. 16 and possesses it in the key structure control data base of each user. In this case, the “session key issue request” for executing cryptographic communication may be made to a reception side user, but not to the key management work station 500.
  • That is, the “session key issue request” is sent to the reception side user and then, a public key Q[0353] YID of that reception side user and signature data Sdc(QYID) of this public key are received from the reception side user.
  • In the method shown in FIG. 16, it can be considered that the secret key d[0354] ID as a master key to be allocated to each user is generated by the key management work station 500 or each user.
  • 1: Method in which the secret key is generated by the key [0355] management work station 500
  • If the secret key d[0356] ID as a master key and a corresponding public key QID are generated by the key management work station 500, user not accustomed to operation of the encryption algorithm feels very convenient.
  • However, how the generated secret key is distributed to each user is a problem. [0357]
  • In this embodiment, it is stored in such an electronic medium as an IC card and floppy disk and distributed to each user. [0358]
  • As a result, it is made possible for the key [0359] management work station 500 to hold the generated secret key dID and for the key management work station 500 to decrypt data encrypted with the public key QID corresponding to the user. Because the key management work station 500 prevents grasping of user's information, according to this embodiment, the generated secret key dID is provided with a key recovery function and stored in the network key structure data base 580 with a correspondence to user ID, thereby disabling user to decrypt a cipher text generated by user except when an unexpected event occurs.
  • Hereinafter, the key recovery function of this embodiment will be described by taking cryptographic communication in which the key has duplex hierarchical structure as an example. The key recovery function adds information about decryption to an encrypted statement E[0360] KS(M) and is capable of decrypting the encrypted statement without the descramble key KD.
  • First, the key recovery function in cryptographic communication based on common key encryption algorithm will be described. That is, data to be transmitted by the user is assumed to be M. The data is encrypted with the scramble key K[0361] s generated by the portable information processing unit so as to generate the encrypted statement EKS(M). The descramble key KD for decrypting this encrypted statement is encrypted with the session key PT transmitted from the key management work station 500, so as to generate an encrypted statement EPT(KD).
  • First, a procedure for producing additional data for providing with the key recovery function when data is encrypted with the scramble key K[0362] S will be described with reference to FIG. 23.
  • (1) A random number is generated when the scramble key K[0363] s is generated and the scramble key is expressed as Ks=K1 XOR K2 by exclusive OR between K1 and K2 (XOR is indicated by direct sum symbol in the Figure).
  • (2) P[0364] 1, P2 are used as a key for key recovery and stored with the key recovery function of the portable information processing unit and key management work station 500. K1, K2 generated for generating the scramble keys Ks are encrypted with the keys P1, P2 for key recovery so as to produce encrypted statements Ep1(K1), EP2(K2). This data is added to the encrypted statement EKS (M) of data produced with the scramble key Ks.
  • Next, a procedure for decrypting the encrypted statement with this additional data will be described with reference to FIG. 24. [0365]
  • (1) Data E[0366] p1 (K1), Ep2(K2) added from the encrypted statement are separated from each other and then K1, K2 are decrypted with the keys P1, P2 for key recovery.
  • (2) An exclusive OR between K[0367] 1 and K2 is obtained and with Ks=K1 XOR K2, the scramble key KS is generated. In case of common key cipher, the scramble key Ks and descramble key KD are the same. The encrypted statement can be decrypted with this scramble key Ks.
  • If a necessity of decrypting the encrypted statement occurs because an unexpected event is generated, the encrypted statement is transmitted to the key [0368] management work station 500. Consequently, the encrypted statement can be decrypted with the keys P1, P2 for key recovery in the aforementioned procedure.
  • Next, the key recovery function in the cryptographic communication based on the public key encryption algorithm will be described. It is assumed that the scramble keys for use in encryption of the data M are K[0369] s and the descramble keys are KD and the public key as a session key for distributing the descramble key is QYID. Cryptographic communication is carried out by transmission of the encrypted statement EKS (M) and encrypted descramble key EQYID (KD).
  • Here, a case where elliptical curve cipher is used as a public key cipher will be described. The elliptical curve cipher has been described in for example, “Quick Encryption Method Using Elliptical Curve” by Kazuo Takaragi and Hiroyuki Kurumatani, Technical Report of IEICE ISEC97-15(1997-07). [0370]
  • First, key recovery function in which a threshold value logic is added to encrypted descramble key E[0371] QYID(KD) will be described.
  • (1) In the key recovery function of the key [0372] management work station 500, the public keys for key recovery QA, Qb, Qc are allocated and publicized and secret keys dA, dB, dc (QA=dA·P, QB=dB·P, QC=dC·P) corresponding to the public keys are stored. A threshold value logic computed by the keys QYID, QA, QB, QC is added to the encrypted descramble key EQYID(KD).
  • (2) Like the case where the common key cipher is used, upon cryptographic communication, data cannot be encrypted with the scramble key K[0373] s until the descramble key KD is encrypted. The encrypted statement EKS(M) of data and the encrypted descramble key EQYID(KD) are always generated in pair.
  • (3) If a necessity of decrypting an encrypted statement occurs because an unexpected event is generated, the encrypted statements E[0374] KS(M) and EQYID(KD) of a pair are transmitted to the key management work station 500.
  • The key recovery function decrypts with two of the secret keys d[0375] A, dB, dC and the threshold value logic added to the EQYID(KD) to obtain the descramble key KD.
  • Next, the encrypted statement E[0376] KS(M) is decrypted with this key KD so as to obtain data M.
  • An encrypted statement of data M to be transmitted is created by encryption computation with the scramble key K[0377] s. Thus, like the key recovery function using the common key cipher (see FIG. 23 for encryption and FIG. 24 for decryption), it is permissible to express the scramble key KS by exclusive OR between K1 and K2 and carry out key recovery using them. Although the keys P1, P2 for key recovery shown in FIGS. 23, 24 can be operated with the common key encryption algorithm, they can be also operated for key recovery with the public keys QA, QB.
  • In this case, data to be added to the encrypted statement E[0378] KS (M) for key recovery are encrypted statements EQA(K1), EQB(K2) obtained by encrypting K1, K2 with public keys QA, QB. The key recovery is carried out by decrypting the added data using the secret keys dA, dB corresponding to the public keys QA, QB in the key recovery function of the key management work station 500.
  • 2: Method for generation by each user [0379]
  • A user accustomed to operation of the encryption algorithm is capable of generating the secret key d[0380] ID as a master key for use by himself or herself and corresponding public key QID.
  • In this case, because the secret key d[0381] ID as a master key to be possessed by user is possessed only by the user, there is no possibility that an encrypted statement produced by the public key QID may be decrypted at the key management work station 500.
  • The user transmits the public key Q[0382] ID generated corresponding to the secret key dID to the key management work station 500.
  • The key [0383] management work station 500 recognizes an identity of a user transmitting the public key QID, carries out signature producing computation on the transmitted public key QID with the secret key dc possessed by the key management work station 500 and transmits the signature data Sdc (QID) to that user.
  • According to this embodiment, like the case indicated by 1:, the secret key d[0384] ID as a master key possessed by user is provided with key recovery function and stored in the network key structure data base 580 with a correspondence to user ID.
  • Which the secret key d[0385] ID as a master key possessed by each user and a corresponding public key QID are to be generated by the key management work station 500 or user is selected depending on user condition.
  • If the above method is applied, cryptographic communication can be achieved between the IC card (as a reception side user) and a reader (as a transmission side user) which is an information processing unit installed on a retailer counter or the like not through the key [0386] management work station 500, with the IC card inserted in the reader.
  • If the encryption algorithms are different between the IC card and reader which is the information processing unit, when user inserts the IC card into the reader, cryptographic communication or payment cannot be achieved until the encryption algorithm of the both are made equal. [0387]
  • In this case, a necessity of converting the encryption algorithm occurs. If this encryption algorithm conversion is possible in the condition that the IC card is inserted in the reader which is the information processing unit installed on a retailer counter, user's procedure is simplified, thereby ensuring a lot of convenience. [0388]
  • Such encryption algorithm conversion will be described with reference to FIGS. 17 and 18. [0389]
  • In case of elliptical curve cipher, the encryption algorithm is determined by coefficients a and b of the elliptical curve Y[0390] 2=X3+ax+b, characteristic p of coefficient, base point P and its order n. This encryption algorithm may be kept secret or public.
  • The public key Q and secret key d of an elliptical curve cipher are expressed as Q=d·P (· is computation on an elliptical curve) by the base point P. [0391]
  • Even if the coefficients a and b of the elliptical curve y[0392] 2=x3+ax+b are equal, it is possible to provide different encryption algorithms having the same encryption intensity by changing the base point P. If the coefficients a, b and characteristic p of the coefficient are changed, the elliptical curve is changed, so that a different encryption algorithm is settled.
  • If the elliptical curve is generated so as to have almost equal key length before and after the coefficients a, b and characteristic p of the coefficient are changed, a plurality of almost the same encryption algorithms having different encryption intensity can be provided. [0393]
  • In case where the coefficients a, b and characteristic p of the coefficient are changed, the encryption intensity or key length can be changed depending on a generation method of the elliptical curve. [0394]
  • Hereinafter, a case assuming that the encryption algorithm used by the IC card is EBF and the encryption algorithm used by a reader as an information processing unit is EANG and the key length of the EANG is longer than that of the EBF will be described about other example of the encryption algorithm conversion. [0395]
  • Here, cryptographic communication system to which the encryption algorithm conversion is applied will be described with reference to FIG. 21. This cryptographic communication system employs a hierarchical structure having a simplex cipher key. That is, this system does not employ the scramble key and descramble key of the cryptographic communication system shown in FIG. 16. [0396]
  • First of all, data base about the key and encryption algorithm possessed by the transmission side user, reception side user and network management work station will be described with reference to the software function of the network communication system shown in FIG. 3. In this embodiment, the transmission side user corresponds to a reader as the information processing unit and the reception side user corresponds to a portable information processing unit such as an IC card. [0397]
  • With reference to FIG. 19, examples of information to be stored in the data base about the key and encryption algorithm will be described. [0398]
  • (1) Data base of the key [0399] management work station 500
  • 1: Network encryption algorithm [0400] management data base 590
  • The data base stores encryption algorithms A[[0401] 1], A[2], . . . A[N] of all the elliptical curves for use by this network communication system, version numbers B[1], B[2], . . . B[N] corresponding to the encryption algorithms, secret keys dc[1], dc[2], . . . dc[N] as a master key for use by the key management work station 500 corresponding to the encryption algorithms, and public keys Qc[1], QC[2], . . . QC[N] corresponding to the secret keys.
  • In the encryption algorithm EBF of this embodiment, the version number BF, the secret key d[0402] c as the master key and the public key QC corresponding to this secret key are stored corresponding to the encryption algorithm EBF. Likewise, in the encryption algorithm EANG of this embodiment, the version number BG, the secret key dcg as the master key and the public key Qcg corresponding to this secret key are stored corresponding to the encryption algorithm EANG.
  • 2: Network key [0403] management data base 580
  • The network key [0404] management data base 580 stores user ID of user of an IC card or a reader which is an information processing unit, ID[1], ID[2], . . . ID[M], version numbers of the encryption algorithm for use by this user, BP [1], BP[2], . . . BP[M], and the public keys for use by the user with this encryption algorithm, QID[1], QID[2], . . . QID[M] corresponding to the user ID.
  • The secret keys d[0405] ID[1], dID[2], . . . dID[M] as the master key for use by each user corresponding to the encryption algorithm are supplied with the key recovery function and stored corresponding to each user ID.
  • (2) Data base of the transmission side user [0406] 100 (reader which is an information processing unit)
  • 1: encryption [0407] algorithm data base 190
  • (i) As information of the encryption algorithm operated by the user, the encryption [0408] algorithm data base 190 stores encryption algorithm EANG, version number BG, public key Qcg for use by the key management work station 500 under this encryption algorithm and signature data Sdcg(EANG) of the key management work station 500 corresponding to the encryption algorithm EANG.
  • Here, the signature data S[0409] dcg(EANG) is obtained by carrying out signature producing computation on the encryption algorithm EANG with the secret key dcg as the master key for use by the key management work station 500 under the encryption algorithm EANG.
  • (ii) As information about the encryption algorithm operated by the network communication system, the encryption algorithms A[[0410] 1], A[2], . . . A[N], corresponding version numbers B[1], B[2], . . . B[N], the public keys for use by the key management work station 500, QC[1], QC[2], . . . QC[N], and signature data of the key management work station corresponding to the public key Qcg, Sdc[1](Qcg), Sdc[2](Qcg), . . . Sdc[N](Qcg) are stored corresponding to the encryption algorithms.
  • Here, the signature data S[0411] dc[i](Qcg) is obtained by carrying out signature producing computation on the public key Qcg with the secret key dc[i] as the master key for use by the key management work station 500 under the encryption algorithm A[i].
  • Specifically in the encryption algorithm EBF of this embodiment, the version number BF, public key Q[0412] c and signature data Sdc (Qcg) are stored corresponding to the encryption algorithm EBF.
  • Here, the signature data S[0413] dc(Qcg) is obtained by carrying out signature producing computation on the public key Qcg with the secret key dc as the master key for use by the key management work station 500 under the encryption algorithm EBF.
  • 2: Key structure [0414] management data base 180
  • The key structure [0415] management data base 180 stores the encryption algorithm to be operated by user, namely in this embodiment, the secret key dID as the master key for use by the user under the encryption algorithm EANG, public key QID corresponding to this secret key and signature data Sdcg(QID) obtained by carrying out signature producing computation on the public key QID with the secret key dcg as the master key for use by the key management work station 500 under the encryption algorithm EANG.
  • (3) Reception side user (IC card) [0416] 200 data base
  • 1: encryption [0417] algorithm data base 290
  • As information about the encryption algorithm operated by the user, the encryption algorithm EBF, version number BF, public key Q[0418] c for use by the key management work station 500 under this encryption algorithm and signature data Sdc(EBF) of the key management work station 500 relative to the encryption algorithm EBF are stored.
  • Here, the signature data S[0419] dc(EBF) is obtained by carrying out signature producing computation on the encryption algorithm EBF with the secret key dc as the master key for use by the key management work station 500 under the encryption algorithm EBF.
  • 2: Key structure [0420] management data base 280
  • The key structure [0421] management data base 280 stores the encryption algorithm to be operated by user, namely in this embodiment, the secret key dYID as the master key for use by the user under the encryption algorithm EBF, public key QYID corresponding to this secret key and signature data Sdc(QYID) obtained by carrying out signature producing computation on the public key QYID with the secret key dC as the master key for use by the key management work station 500 under the encryption algorithm EBF.
  • Above, the data base about the key and encryption algorithm which are a presumption for the encryption algorithm conversion has been described. [0422]
  • A public key for use by the key [0423] management work station 500, signature data produced with the secret key as a master key for use by the key management work station 500, an encryption algorithm and a version number corresponding thereto are stored in the transmission side user and reception side user data bases.
  • These data are distributed by the key [0424] management work station 500.
  • Next, an example of encryption algorithm conversion to be carried out between a transmission side user (reader which is an information processing unit) and a reception side user (IC card) will be described with reference to FIGS. 17 and 18. [0425]
  • Although for encryption algorithm conversion, the elliptical curve encryption algorithm may be sent in open state, according to this embodiment, it is sent in encryption state. [0426]
  • Here, assuming that as described previously, the key length of the EANG is longer than that of the EBF, a case where the encryption algorithm EBF of an IC card is converted to the encryption algorithm EANG will be described. [0427]
  • 1: User possessing an IC card purchases at a shop or the like and inserts the IC card into a reader as the information processing unit to pay for purchased goods. [0428]
  • The cryptographic communication control function of the reader as the information processing unit adds a version number BG to the operating encryption algorithm EANG and sends a “session key issue request” to cryptographic [0429] communication control function 250 of the IC card.
  • 2: If the version number of the encryption algorithm operated by the IC card agrees with the BG, the IC card issues the public key possessed by himself and the signature data of the public key and carries out cryptographic communication with the reader as the information processing unit according to a procedure shown in FIG. 21. [0430]
  • However, the version number of the encryption algorithm EBF operated by the IC card is BF, which is different from the transmitted version number BG. [0431]
  • After recognizing that the version number is different, the cryptographic [0432] communication control function 250 adds BF to this version number and sends an “encryption algorithm updating request” to the cryptographic communication control function 150 of a reader which is an information processing unit.
  • 3: Under the version number BF, the reader as the information processing unit retrieves in the encryption [0433] algorithm data base 190 and fetches out the public key Qcg of the key management work station 500 operated with the encryption algorithm EANG and signature data Sdc(Qcg) obtained by carrying out signature producing computation on the public key Qcg with the secret key dc as a master key for use by the key management work station 500 under the encryption algorithm EBF and transmits this public key Qcg and the signature data Sdc(Qcg) to the IC card.
  • 4: The IC card carries out signature verifying computation on the transmitted public key Q[0434] cg and signature data Sdc (Qcg) using the public key Qc of the key management work station 500 operated under the encryption algorithm EBF, so as to verify that the public key Qcg has been transmitted from the reader as a proper information processing unit.
  • 5: Next, the IC card carries out signature producing computation on the public key Q[0435] YID with the public key QYID of an IC card operated under the encryption algorithm EBF from the key structure management data base 280 and the secret key dc as a master key for use by the key management work station 500 under the encryption algorithm EBF and fetches out the signature data Sdc(QYID) distributed from the management work station 500, and then transmits this public key QYID and signature data Sdc(QYID) to the reader as an information processing unit.
  • 6: The reader as the information processing unit carries out signature verifying computation on the received public key Q[0436] YID and signature data Sdc(QYID) using the public key Qc of the key management work station 500 operated under the encryption algorithm EBF, so as to verify that the public key QYID has been transmitted from a proper IC card.
  • 7: The reader as the information processing unit, encrypts the encryption algorithm EANG with the public key Q[0437] YID by operating the encryption algorithm EBF so as to create the encrypted statement EBFQYID (EANG).
  • At the same time, signature producing computation is carried out on the encryption algorithm EANG with the secret key d[0438] cg as a master key for use by the key management work station 500 under the encryption algorithm EANG. Then, the signature data Sdcg(EANG) distributed from the management work station 500 is fetched out and the encrypted statement EBFQYID(EANG) and signature data Sdcg(EANG) are transmitted to the IC card.
  • 8: The IC card decrypts the transmitted encrypted statement EBF[0439] QYID (EANG) using the secret key dYID possessed by the IC card operated under the encryption algorithm EBF so as to obtain the encryption algorithm EANG.
  • Next, the IC card converts the operating encryption algorithm from EBF to the obtained EANG, and carries out signature verifying computation on the obtained encryption algorithm EANG and received signature data S[0440] dcg(EANG) using the public key Qcg of the key management work station 500 obtained in 4: so as to verify that this is an encryption algorithm distributed from a reader as a proper information processing unit. As a result, updating of the encryption algorithm to this EANG is completed.
  • 9: Because the key length of the encryption algorithm EANG is longer than the encryption algorithm EBF, the secret key d[0441] YID as the master key of the IC card is used as a secret key of the encryption algorithm EANG as it is and a corresponding public key QYIDC (=P·dYID; · is computation on an elliptical curve) is generated from the base point P of the received encryption algorithm EANG.
  • The IC card returns the encryption algorithm to EBF temporarily and carries out signature producing computation on the public key Q[0442] YIDC using the secret key dYID under the encryption algorithm EBF so as to produce signature data SdYID (QYIDC).
  • The IC card transmits the generated public key Q[0443] YIDC and signature data SdYID (QYIDC) to the reader as an information processing unit.
  • 10: The reader as the information processing unit converts the encryption algorithm to EBF temporarily and carries out signature verifying computation on the received signature data S[0444] dYID(QYIDC) and public key QYIDC using the public key QYID obtained in 6:, so as to verify that it is a public key QYIDC of an IC card distributed from a proper IC card.
  • After that, the encryption algorithm is converted to the encryption algorithm EANG again. [0445]
  • 11: The reader as the information processing unit carries out signature producing computation on the public key Q[0446] ID with the public key QID for use by the reader as the information processing unit operated under the encryption algorithm EANG sent from the key structure management data base 180 and the secret key dcg as a master key for use by the key management work station 500 under the encryption algorithm EANG. Then, the signature data Sdcg(QID) distributed from the management work station 500 is fetched out and this public key QID and the signature data Sdcg(QID) are transmitted to the IC card.
  • 12: The IC card carries out signature verifying computation on the received signature data S[0447] dcg(QID) and public key QID using the public key Qcg of the key management work station 500 obtained in 4: under the encryption algorithm EANG, so as to verify that it is a public key QID for the reader as an information processing unit, transmitted from the reader as a proper information processing unit.
  • 13: Consequently, the IC card and the reader as the information processing unit share the encryption algorithm EANG and verifies the validities of the public keys (public key Q[0448] ID of a reader as the information processing unit and public key QYIDC of the IC card). By carrying out data encryption with this public key, cryptographic communication, signature producing computation and signature verifying computation can be executed between the IC card and the reader as the information processing unit, thereby enabling payment.
  • The key [0449] management work station 500 does not do anything in the above described procedure.
  • However, because the IC card has no signature data of the key [0450] management work station 500 regarding the converted public key QYIDC, it cannot be used just as it is, but after the payment is settled, the encryption algorithm needs to be returned from EANG to EBF.
  • Next, an example for obtaining signature data of the key management work station by the public key Q[0451] YIDC converted by the IC card will be described with reference to FIG. 18.
  • 1: The signature data S[0452] dYID (QYIDC) produced with the secret key dYID under the encryption algorithm EBF for the public key QYIDC of an IC card operated by the encryption algorithm EANG whose validity is verified, is transmitted from the IC card to the reader as the information processing unit.
  • This signature data S[0453] dYID (QYIDC), public key QYIDC, public key QYID of an IC card operated with the encryption algorithm EBF, version number BF of the encryption algorithm EBF, version number BG of the encryption algorithm EANG, and user ID of the IC card are transmitted to the key management work station 500.
  • 2: With the user ID of the IC card as a key, the key [0454] management work station 500 retrieves in the network key management data base 580 and verifies that the public key QYID of a received IC card exists.
  • Signature verifying computation is carried out on the signature data S[0455] dYID (QYIDC) and public key QYIDC using the public key QYID of the IC card so as to verify that it is a public key QYIDC of a proper IC card.
  • In the above procedure, it is verified that the public key Q[0456] YIDC is a public key of the IC card.
  • 3: Signature producing computation is carried out on this public key Q[0457] YIDC using the secret key dcg of the key management work station 500 operated with the encryption algorithm EANG so as to create signature data Sdcg(QYIDC) and it is returned to the reader as the information processing unit.
  • The key [0458] management work station 500 updates a version number of the encryption algorithm stored corresponding to the user ID of the IC card in the network key management data base 580 and the public key to BG and QYIDC respectively.
  • 4: The reader as the information processing unit transmits this signature data S[0459] dcg(QYIDC) to the IC card.
  • In the above processing, the IC card is capable of obtaining the signature data S[0460] dcg(QYIDC) of the key management work station 500 for the public key QYIDC.
  • In the above described embodiment, the key [0461] management work station 500 verifies an existence of the public key QYID before the conversion and signature data of the public key QYIDC after the conversion thereby preventing an access of a false IC card.
  • The IC card possesses the public key Q[0462] YIDC operated under the encryption algorithm EANG and signature data Sdcg(QYIDC) of the key management work station 500 and is capable of operating the encryption algorithm EANG.
  • The key management work station only has to carry out signature production and signature verifying computation on a public key generated with respect to the converted encryption algorithm. Thus, with the IC card inserted into the reader as the information processing unit, encryption algorithm conversion can be carried out. [0463]
  • In this encryption algorithm conversion, user (IC card in this case) generates its own secret key and public key for a new encryption algorithm. [0464]
  • In this embodiment, it is specified that the secret keys possessed by the user are the same for the encryption algorithm before the conversion and encryption algorithm after the conversion. [0465]
  • Such a secret key setting method is effective when the key lengths of the encryption algorithms mixing in a system vary and it cannot be specified which key length encryption algorithm the user is using. [0466]
  • It can be considered that conversion of encrypting algorithm is carried out to one which has a longer key which any user does not use. [0467]
  • In this case, if the key length of a secret key used by each user is the same as before the conversion, the key length used by every user is not increased although a key length permitted by the encryption algorithm is extended. In this case, a cipher attacker can attack with a range of the key length to be attacked limited to an original key length. That is, it does not come that substantially the encryption intensity is increased, even if the allowable key length is prolonged. [0468]
  • To avoid this event, a method in which the key length is prolonged as shown in FIG. 15 can be considered effective. [0469]
  • In this case, even if every user increases the key length based on a random number, key management is made easier because the same key length does not exist. [0470]
  • An attention has to be paid to only a user newly participating in the system so that the same key may not exist. [0471]
  • The method for user to generate his or her own secret key and public key for a new encryption algorithm is applicable to ordinary encryption algorithm conversion described in FIGS. 13, 14 and [0472] 11. If user generates his or her own secret key, a possibility that the secret key may be decrypted by the key management work station can be avoided. Hereinafter, an example for generating his or her own secret key with respect to the encryption algorithm conversion will be described with reference to FIG. 20.
  • Although in the encryption algorithm conversion of this case, it is necessary to verify the scramble function and descramble function, this is the same method as described in FIGS. 13, 14 and [0473] 11 and only an encryption algorithm distribution method and a generation method for a secret key to be possessed by user himself will be stated here.
  • An operating condition of the public key encryption method mentioned here employs the cryptographic communication method shown in FIG. 16 and FIG. 20 shows an example of the encryption algorithm conversion in this cryptographic communication method. [0474]
  • In this Figure, it is assumed that the encryption algorithm operated by the reception side user is EBF and the encryption algorithm to be converted is EANG. [0475]
  • As described in FIGS. 13, 14 and [0476] 11, it is assumed that a secret key as a master key to be operated by the key management work station relative to the encryption algorithm EBF is dc and a public key corresponding to this secret key is Qc.
  • Likewise, it is assumed that the secret key as a master key for the key management work station to operate the encryption algorithm EANG is d[0477] cg and the public key corresponding to this secret key is Qcg.
  • On the other hand, it is assumed that the secret key as a master key to be operated by the reception side user for the encryption algorithm EBF is d[0478] YID and the public key corresponding to this secret key is QYID.
  • The above described presumption is the same as shown in FIGS. 13, 14 and [0479] 11 and an embodiment of the encryption algorithm conversion will be described.
  • (1) The network [0480] key management function 570 of the key management work station 500 creates the following encrypted statement and signature data using the encryption algorithm EBF before the conversion.
  • 1: A scramble key K[0481] SB for encrypting the encryption algorithm EANG and a descramble key KDB for decrypting are generated with the encryption algorithm EBF before the conversion.
  • 2: The encryption algorithm EANG is encrypted with the scramble key k[0482] SB so as to create an encrypted statement EBFKSB(EANG).
  • Further, the public key Q[0483] YID as the master key of the reception side user is fetched out and the descramble key KDB is encrypted so as to create an encrypted statement EBFQYID(KDB).
  • 3: Signature producing computation is carried out on the encryption algorithm EANG with the encryption algorithm EBF before the conversion and the secret key d[0484] c which is a master key of the key management work station 500 so as to create signature data Sdc (EANG).
  • 4: Signature producing computation is carried out on the encryption algorithm EBF before the conversion and the public key Q[0485] cg as a master key of the key management work station 500 which is applied to the encryption algorithm EANG after the conversion with the secret key dc as the master key of the key management work station 500 so as to create signature data Sdc(Qcg).
  • 5: Two produced encrypted statements EBF[0486] QYID (KDB), EBFKSB(EANG), two signature data Sdc(EANG), Sdc(QCG) and the public key Qcg of the key management work station 500 are transmitted to the IC card (the reception side user) via an IC card reader (not shown in FIG. 20).
  • (2) Reception side user's obtaining the encryption algorithm [0487]
  • The reception side user operates EBF as an encryption algorithm and possesses the secret key d[0488] YID as a master key and a public key Qc of the key management work station 500 operated by the encryption algorithm EBF.
  • 1: An encrypted statement EBF[0489] QYID (KDB) is decrypted using the secret key dYID as a master key so as to obtain the descramble key KDB. Next, the encrypted statement EBFKSB(EANG) is decrypted using this descramble key KDB so as to obtain the encryption algorithm EANG. Signature verifying computation is carried out on the signature data Sdc (EANG) and obtained encryption algorithm EANG using the public key Qc of the key management work station 500 under the encryption algorithm EBF and it is verified whether or not the obtained encryption algorithm EANG has been transmitted from the proper key management work station 500.
  • 2: Under the encryption algorithm EBF, signature verifying computation is carried out on the signature data S[0490] dc (Qcg) and the public key Qcg to be operated on the received encryption algorithm EANG converted by the key management work station 500 using the public key QC of the key management work station 500 so as to verify that the transmitted public key is a public key of a proper key management work station 500.
  • In the above manner, the reception side user has obtained the encryption algorithm EANG and public key Q[0491] cg to be operated on the encryption algorithm EANG of the key management work station 500. Then, the obtained encryption algorithm EANG is registered in the encryption algorithm management data base 290, and the encryption algorithm EANG as well as EBF is made operable by the encryption algorithm management function.
  • (3) Conversion of the key possessed by the reception side user [0492]
  • 1: With respect to the encryption algorithm EANG transmitted from the key [0493] management work station 500, the reception side user generates a new secret key dYIDC as a master key which he owns himself.
  • The following three methods can be mentioned as a method for generating the secret key. [0494]
  • (a) Using the secret key d[0495] YID operated with the encryption algorithm EBF as a secret key of the encryption algorithm EANG
  • (b) Generating a new secret key d[0496] YIDC by adding a random number to the secret key dYID operated with the encryption algorithm EBF as shown in FIG. 15.
  • (c) Generating a new secret key d[0497] YIDC according to information of the encryption algorithm EANG.
  • The secret key d[0498] YIDC to be possessed by the reception side user himself or herself is generated by any of these methods so as to generate the public key QYIDC corresponding to this secret key.
  • Because the above method (c) has a possibility that the generated secret key may agree with a key of other user as described previously, it is necessary for the key [0499] management work station 500 to verify that there is no public key which the other user uses.
  • In case when an encryption algorithm EANG to be converted is an elliptical curve cipher, with the base point of this algorithm as P, the public key Q[0500] YIDC is given as P·dYIDC (· is computation on elliptical curve).
  • 2: The reception side user returns the encryption algorithm to EBF temporarily and carries out signature producing computation on the public key Q[0501] YIDC using the secret key dYID under this encryption algorithm EBF so as to create signature data SdYID((QYIDC). The generated public key QYIDC, signature data SdYID (QYIDC) and the reception side user's ID are transmitted to the key management work station 500 via the IC card reader (not shown in FIG. 20).
  • 3: The key [0502] management work station 500 returns the encryption algorithm to EBF and queries the network key management data base 580 with the transmitted user ID as a key so as to fetch out the public key QYID of a given reception side user. Next, signature verifying computation is carried out on the transmitted public key QYIDC and signature data SdYID (QYIDC) using the public key QYID of this reception side user so as to verify that this is a public key QYIDC transmitted from a proper reception side user.
  • Because the key [0503] management work station 500 queries the network key management data base 580 and recognizes the public key QYID of the reception side user, it is possible to prevent a false reception side user from accessing this system.
  • In the above manner, the key [0504] management work station 500 obtains the public key QYIDC operated by the reception side user under the converted encryption algorithm EANG. After that, the key management work station 500 needs a series of procedure related to the encryption algorithm conversion, such as carrying out signature producing computation on the public key QYIDC operated by the reception side user by using the secret key dcg as a master key operated under the encryption algorithm EANG, creating signature data Sdcg(QYIDC), sending it to the reception side user, verifying the scramble function and descramble function. These are achieved by carrying out the procedure for the encryption algorithm conversion described in FIGS. 13, 14 and 11.
  • An example for user to generate his own key himself or herself for a new encryption algorithm has been described. Finally, (1) conversion from a common key encryption algorithm to other public key encryption algorithm and (2) conversion from the public key encryption algorithm to other common key encryption algorithm will be described below. [0505]
  • (1) Conversion from a common key encryption algorithm to other public key encryption algorithm [0506]
  • The embodiment of the encryption algorithm conversion from the common key encryption algorithm to other common key encryption algorithm has been described with reference to FIGS. 8, 9 and [0507] 6.
  • In this case, it is assumed that the encryption algorithm before the conversion is EBF and the encryption algorithm after the conversion is EANG. [0508]
  • A case where the encryption algorithm will be converted from the common key encryption algorithm to other public key encryption algorithm will be described assuming that the common key encryption algorithm before the conversion is EBF and the public key encryption algorithm after the conversion is EANG to use the same symbols. [0509]
  • The public key encryption algorithm EANG after the conversion can be encrypted with the common key encryption algorithm EBF before the conversion according to the embodiment shown in FIGS. 8, 9 and [0510] 6 and distributed.
  • In case where the common key encryption algorithm is converted to the public key encryption algorithm, it is necessary to generate a new secret key and public key and verify the scramble function and descramble function for a converted public key encryption algorithm. This series of key generation and functional verification can be carried out according to the embodiment of the public key encryption algorithm conversion shown in FIGS. 13, 14 and [0511] 11.
  • (2) Conversion from the public key encryption algorithm to other common key encryption algorithm [0512]
  • The common key encryption algorithm is different from the public key encryption algorithm in that no signature producing computation or signature verifying computation is carried out. [0513]
  • Therefore, in case where the public key encryption algorithm is converted to other common key encryption algorithm, the encryption algorithm conversion can be carried out in a procedure excluding the signature producing and verifying computations in the embodiment of the public key encryption algorithm conversion shown in FIGS. 13, 14 and [0514] 11.
  • The embodiment of the encryption algorithm conversion has been described above. [0515]
  • Whether or not the encryption algorithm conversion has been carried out properly in the embodiment of the encryption algorithm conversion shown in FIG. 5, embodiment of the common key encryption algorithm conversion shown in FIGS. 8, 9 and [0516] 6 and embodiment of the public key encryption algorithm conversion shown in FIGS. 13, 14 and 11, is verified by operating the scramble function and descramble function of cryptographic communication system, encrypting plain text data MD “confirmation of descramble function after the algorithm conversion is terminated” and plain text data MS “algorithm conversion confirmation test is terminated”, transmitting the data and verifying whether or not the data are successfully decrypted.
  • If a given plain text data MD or plain text data MS is not decrypted in each process for confirmation of this encryption algorithm conversion, a response message to “encryption algorithm conversion operation error” is transmitted and that given process is executed again. [0517]
  • In a process for exchange of encryption algorithm conversion data in the embodiment of the public key encryption algorithm conversion shown in FIGS. 17, 18, [0518] 13, 14 and 11, signature verifying computation is carried out on signature production data created under the public key encryption algorithm. If an error occurs in the signature production data as a result of this signature verifying computation, a response message “encryption algorithm conversion operation error” is transmitted and that given process is executed again.
  • If the plain text data MD or plain text data MS is not decrypted after that reexecution or an error occurs in the signature production data as a result of the signature verifying computation, a response message “encryption algorithm conversion abnormal termination” is transmitted and then the encryption algorithm conversion process is interrupted. [0519]
  • If such a response “encryption algorithm conversion abnormal termination” occurs, cryptographic communication system components are inspected in viewpoints of hardware and software. [0520]
  • Although FIGS. 13, 14 and [0521] 11 show the embodiments of the public key encryption algorithm conversion, if the encryption algorithm conversion is not carried out or if the encryption algorithm is the same and therefore, not distributed, the key management station sends a procedure for distributing a key for use by user for key updating, deletion and the like. Although in the embodiment of the public key encryption algorithm conversion shown in FIGS. 17 and 18, the process for encryption algorithm conversion confirmation by the plain text data MD and MS has not been described, the encryption algorithm conversion confirmation can be carried out by encrypting the plain text data MD and MS with the public key based on the encryption algorithm and sending them according to the embodiment shown in FIGS. 13, 14 and 11.
  • According to the present invention, the encryption algorithm can be distributed with the safety and further, converted in a condition that time and labor required for the distribution are reduced. [0522]
  • Further, by the above-mentioned encryption algorithm conversion, encryption algorithms operated by plural users are capable of sharing the same encryption algorithm or that shared encryption algorithm can be changed to other encryption algorithm. [0523]

Claims (20)

What is claimed is:
1. A cryptographic communication method wherein when different encryption algorithms are operated at a transmission side and a reception side, the transmission side encrypts an encryption algorithm operated at the transmission side with an encryption algorithm operated at the reception side and transmits the encrypted algorithm to the reception side.
2. A cryptographic communication method wherein information on an encryption algorithm operated at a transmission side and information on an encryption algorithm operated at a reception side are obtained from the transmission side and when different encryption algorithms are operated at the transmission side and the reception side, an encryption algorithm operated at the transmission side is encrypted with an encryption algorithm operated at the reception side and transmitted to the reception side.
3. A cryptographic communication method as claimed in claim 2 wherein signature data produced based on a public key preliminarily allocated to the transmission side is supplied to the reception side with said encryption algorithm operated at the transmission side with the encryption algorithm operated at the reception side.
4. A cryptographic communication method as claimed in claim 2 wherein signature data produced based on a public key preliminarily allocated to the transmission side is supplied to the transmission side together with said encryption algorithm operated at the transmission side encrypted with the encryption algorithm operated at the reception side and transmitted to the reception side.
5. An encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of:
from a user of a transmission side, obtaining a user identifier indicating the user of the transmission side and a user identifier indicating a user of a reception side; and
querying a data base in which user identifiers indicating users and their corresponding encryption algorithms are preliminarily described, so as to obtain an encryption algorithm operated by the user of the transmission side and an encryption algorithm operated by the user of the reception side,
wherein if said encryption algorithm operated by the user of the transmission side is different from said encryption algorithm operated by the user of the reception side, data indicating said encryption algorithm operated by the user of the transmission side is encrypted with said encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side.
6. An encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of:
from a user of a transmission side, obtaining a user identifier indicating the user of the transmission side and a user identifier indicating a user of a reception side;
querying a data base in which user identifiers indicating users, corresponding encryption algorithms and encryption keys thereof, are preliminarily described so as to obtain an encryption algorithm operated by the user of the transmission side and an encryption key thereof and an encryption algorithm operated by the user of the reception side and an encryption key thereof,
wherein if said encryption algorithm operated by the user of the transmission side is different from said encryption algorithm operated by the user of the reception side, data indicating said encryption algorithm operated by the user of the transmission side and an encryption key produced based on the encryption key operated by the user of the reception side corresponding to a key length of said encryption algorithm operated by the user of the transmission side is encrypted with said encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side.
9. A network communication system composed by connecting a plurality of users, comprising at least one encryption key management station to be connected from a user of a transmission side,
said encryption key management station obtaining, from the user of the transmission side, information indicating an encryption algorithm operated by the user of the transmission side and information indicating an encryption algorithm operated by a user of a reception side and if different encryption algorithms are operated by the user of the transmission side and the user of the reception side, encrypting the encryption algorithm operated by the user of the transmission side with the encryption algorithm operated by the user of the reception side and transmitting it to the user of the reception side.
10. A network communication system composed by connecting a plurality of users, comprising at least one encryption key management station to be connected from a user of a transmission side,
said encryption key management station comprising a data base in which a correspondence between a user identifier indicating a user and an encryption algorithm operated by said user is preliminarily described about each user;
wherein when a communication is carried out from the user of the transmission side to a user of a reception side, a user identifier indicating the user of the transmission side and a user identifier indicating a user of a reception side are obtained from the user of the transmission side and said data base is queried with the obtained identifiers as a key so as to obtain an encryption algorithm operated by the user of the transmission side and an encryption algorithm operated by the user of the reception side, and
if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, the encryption algorithm operated by the user of the transmission side is encrypted with the encryption algorithm operated by the user of the reception side and transmitted to the user of the reception side.
11. An encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of:
from a user of a transmission side, obtaining a user identifier indicating the user of the transmission side and a user identifier indicating a user of a reception side; and
querying a data base in which user identifiers indicating users and their corresponding encryption algorithms, are preliminarily described so as to obtain an encryption algorithm operated by the user of the transmission side and an encryption algorithm operated by the user of the reception side;
wherein if said encryption algorithm operated by the user of the transmission side is different from said encryption algorithm operated by the user of the reception side, data indicating said encryption algorithm operated by the user of the reception side is encrypted with said encryption algorithm operated by the user of the transmission side and transmitted to the user of the transmission side.
12. An encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of:
from a user of a transmission side, obtaining a user identifier indicating the user of the transmission side and a user identifier indicating a user of a reception side;
querying a data base in which user identifiers indicating users, corresponding encryption algorithms and encryption keys thereof, are preliminarily described so as to obtain an encryption algorithm operated by the user of the transmission side and an encryption key thereof and an encryption algorithm operated by the user of the reception side and an encryption key thereof,
wherein if said encryption algorithm operated by the user of the transmission side is different from said encryption algorithm operated by the user of the reception side, data indicating said encryption algorithm operated by the user of the reception side and an encryption key produced based on the encryption key operated by the user of the transmission side corresponding to a key length of said encryption algorithm operated by the user of the reception side is encrypted with said encryption algorithm operated by the user of the transmission side and transmitted to the user of the transmission side.
15. A network communication system composed by connecting a plurality of users, comprising at least one encryption key management station to be connected from a user of a transmission side,
said encryption key management station obtaining, from the user of the transmission side, information indicating an encryption algorithm operated by the user of the transmission side and information indicating an encryption algorithm operated by a user of a reception side, and if different encryption algorithms are operated by the user of the transmission side and the user of the reception side, encrypting the encryption algorithm operated by the user of the reception side with the encryption algorithm operated by the user of the transmission side and transmitting it to the user of the transmission side.
16. A network communication system composed by connecting a plurality of users, comprising at least one encryption key management station to be connected from a user of a transmission side,
said encryption key management station comprising a data base in which a correspondence between a user identifier indicating a user and an encryption algorithm operated by said user is preliminarily described about each user;
wherein when a communication is carried out from the user of the transmission side to a user of a reception side, a user identifier indicating the user of the transmission side and a user identifier indicating a user of a reception side are obtained from the user of the transmission side, and said data base is queried with the obtained identifiers as a key so as to obtain an encryption algorithm operated by the user of the transmission side and an encryption algorithm operated by the user of the reception side, and
if the encryption algorithm operated by the user of the transmission side is different from the encryption algorithm operated by the user of the reception side, the encryption algorithm operated by user of the reception side is encrypted with the encryption algorithm operated by the user of the transmission side and transmitted to the user of the transmission side.
17. A cryptographic communication method wherein if different encryption algorithms are operated by a transmission side and a reception side, an encryption algorithm operated by the reception side is encrypted with an encryption algorithm operated by the transmission side and transmitted to the transmission side.
18. A cryptographic communication method wherein information indicating an encryption algorithm operated by a transmission side and information indicating an encryption algorithm operated by a reception side are obtained from the transmission side and when different encryption algorithms are operated by the transmission side and the reception side, the encryption algorithm operated by the reception side is encrypted with the encryption algorithm operated by the transmission side and transmitted to the transmission side.
19. A cryptographic communication method as claimed in claim 18 wherein signature data produced based on a public key preliminarily allocated to the reception side is supplied to the transmission side with the encryption algorithm operated by the reception side encrypted with the encryption algorithm operated by the transmission side.
20. An encryption algorithm sharing management method for sharing an encryption algorithm for cryptographic communication, comprising the steps of:
from a user of a transmission side, obtaining a user identifier indicating the user of the transmission side and a user identifier indicating a user of a reception side;
querying a data base in which user identifiers indicating users and corresponding encryption algorithms are preliminarily described so as to obtain an encryption algorithm operable by the user of the transmission side and an encryption algorithm operable by the user of the reception side;
determining whether or not there is an encryption algorithm operable by the user of the transmission side and the user of the reception side commonly; and
if the commonly operable encryption algorithm exists, the user of the transmission side is notified that cryptographic communication at the user of the transmission side and the user of the reception side is enabled.
21. An encryption algorithm sharing management method as claimed in claim 20 wherein:
if the commonly operable encryption algorithm exists, information indicating the commonly operable encryption algorithm is transmitted to the user of the transmission side and
if the commonly operable encryption algorithm does not exists, the user of the reception side is notified that cryptographic communication at the user of the transmission side and the user of the reception side is disabled.
22. An encryption algorithm conversion method for converting a first encryption algorithm to a second encryption algorithm comprising:
querying a data base in which user identifiers indicating users, corresponding encryption algorithms and encryption keys thereof, are preliminarily described for a user, whose encryption algorithm is to be converted as a key, so as to obtain a first encryption algorithm operated by the user whose encryption algorithm is to be converted and a first encryption key thereof; and
with a first management secret key preliminarily allocated for management and applied to the firs encryption algorithm, supplying first and second signature data for the first encryption key and a second encryption key, public key data obtained by encrypting a second public key corresponding to a second management secret key applied to a second encryption algorithm preliminarily allocated for management with the first encryption algorithm, the second encryption algorithm encrypted with the first encryption algorithm and signature data produced based on the second management secret key to the user whose encryption algorithm is to be converted.
23. A cryptographic communication method wherein information concerning a first encryption algorithm is encrypted with a second encryption algorithm, and encrypted information including said information concerning said first encryption algorithm is transmitted from a first side to a second side, or from said second side to said first side.
24. A terminal device for transmitting or receiving information, where said terminal device encrypts information concerning a fist encryption algorithm with a second encryption algorithm, and transmits or receives encrypted information including said information concerning said first encryption algorithm.
US10/812,352 1998-07-31 2004-03-29 Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system Abandoned US20040260950A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/812,352 US20040260950A1 (en) 1998-07-31 2004-03-29 Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP10-217732 1998-07-31
JP10217732A JP2000049770A (en) 1998-07-31 1998-07-31 Cipher communication method, cipher algorithm shared management method, cipher algorithm conversion method and network communication system
US09/365,446 US7110548B1 (en) 1998-07-31 1999-08-02 Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system
US10/812,352 US20040260950A1 (en) 1998-07-31 2004-03-29 Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/365,446 Continuation US7110548B1 (en) 1998-07-31 1999-08-02 Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system

Publications (1)

Publication Number Publication Date
US20040260950A1 true US20040260950A1 (en) 2004-12-23

Family

ID=16708887

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/365,446 Expired - Fee Related US7110548B1 (en) 1998-07-31 1999-08-02 Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system
US10/812,352 Abandoned US20040260950A1 (en) 1998-07-31 2004-03-29 Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/365,446 Expired - Fee Related US7110548B1 (en) 1998-07-31 1999-08-02 Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system

Country Status (2)

Country Link
US (2) US7110548B1 (en)
JP (1) JP2000049770A (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020103665A1 (en) * 2001-01-26 2002-08-01 Semiconductor Energy Laboratory Co., Ltd. Work data management system and work data management method
US20030061218A1 (en) * 2000-02-18 2003-03-27 Iyer Balakrishna Raghavendra Method and system for utilizing a database as a service
EP1383264A4 (en) * 2001-04-24 2005-12-21 Nti Inc Data transmission method
US20060056632A1 (en) * 2004-09-10 2006-03-16 Andre Kudelski Data transmission method between a broadcasting center and a multimedia unit
US20060178995A1 (en) * 2005-01-24 2006-08-10 Eric Diehl Secure pre-recorded digital medium
US20060294575A1 (en) * 2003-09-11 2006-12-28 Rogers Paul J Method and apparatus for use in security
US20070058814A1 (en) * 2005-09-13 2007-03-15 Avaya Technology Corp. Method for undetectably impeding key strength of encryption usage for products exported outside the U.S.
US20070064929A1 (en) * 2003-10-17 2007-03-22 Vincent Carlier Method of protecting a cryptographic algorithm
EP1830299A2 (en) 2006-03-01 2007-09-05 Apple Inc. Digital rights management system with diversified content protection process
US20080037775A1 (en) * 2006-03-31 2008-02-14 Avaya Technology Llc Verifiable generation of weak symmetric keys for strong algorithms
US20080148043A1 (en) * 2006-12-18 2008-06-19 Nortel Networks Limited Establishing a secured communication session
US20080263648A1 (en) * 2007-04-17 2008-10-23 Infosys Technologies Ltd. Secure conferencing over ip-based networks
US20100039988A1 (en) * 2008-08-12 2010-02-18 Motorola, Inc. Preventing Misuse of Random Access Procedure in Wireless Communication System
US20100041370A1 (en) * 2008-08-12 2010-02-18 Motorola, Inc. Preventing Misuse of Random Access Procedure in Wireless Communication System
US20120131352A1 (en) * 2010-11-18 2012-05-24 Apple Inc. Incremental and bulk storage system
CN104641617A (en) * 2013-03-05 2015-05-20 华为技术有限公司 Key interaction method and device
US10666422B2 (en) * 2017-12-29 2020-05-26 Shenzhen China Star Optoelectronics Technology Co., Ltd. Data processing method
US11102013B2 (en) * 2015-07-21 2021-08-24 Entrust, Inc. Method and apparatus for providing secure communication among constrained devices
US11423171B2 (en) * 2019-12-23 2022-08-23 Intel Corporation Protection of privacy and data on smart edge devices

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001127747A (en) * 1999-10-25 2001-05-11 Toshiba Corp Information ciphering and deciphering device
JP2002281018A (en) * 2001-03-19 2002-09-27 Toshiba Corp Reception terminal equipment and encipherment system updating method
JP4729806B2 (en) * 2001-04-27 2011-07-20 大日本印刷株式会社 ENCRYPTION DEVICE, DECRYPTION DEVICE, AND COMMUNICATION SYSTEM
US20030174838A1 (en) * 2002-03-14 2003-09-18 Nokia Corporation Method and apparatus for user-friendly peer-to-peer distribution of digital rights management protected content and mechanism for detecting illegal content distributors
FR2840134B1 (en) * 2002-05-21 2004-08-13 France Telecom METHOD FOR CONTROLLING ACCESS TO CRYPTOGRAPHIC RESOURCES, COMPUTER PLATFORM AND SOFTWARE MODULE FOR USE IN IMPLEMENTING THE METHOD
JP4763972B2 (en) * 2004-03-31 2011-08-31 富士通エフ・アイ・ピー株式会社 Encrypted information transmission method, computer program, and communication system
US8130945B2 (en) * 2004-10-13 2012-03-06 Fong Luk Encrypted cryptography system
CA2594670C (en) * 2005-01-21 2014-12-23 Certicom Corp. Elliptic curve random number generation
JP4714482B2 (en) * 2005-02-28 2011-06-29 株式会社日立製作所 Cryptographic communication system and method
JP2006332735A (en) * 2005-05-23 2006-12-07 Fuji Xerox Co Ltd Encryption conversion apparatus, and encryption conversion method and program
JP4770494B2 (en) * 2006-02-03 2011-09-14 株式会社日立製作所 Cryptographic communication method and system
EP2080314A2 (en) * 2006-10-25 2009-07-22 Spyrus, Inc. Method and system for deploying advanced cryptographic algorithms
JP2008113172A (en) * 2006-10-30 2008-05-15 Hitachi Ltd Content transmitter, content receiver and content ciphering method
US8542834B1 (en) 2007-08-09 2013-09-24 Motion Computing, Inc. System and method for securely pairing a wireless peripheral to a host
EP2227015B1 (en) 2009-03-02 2018-01-10 Irdeto B.V. Conditional entitlement processing for obtaining a control word
EP2227014B1 (en) * 2009-03-02 2019-10-02 Irdeto B.V. Securely providing secret data from a sender to a receiver
EP3306863B1 (en) 2009-11-02 2021-08-11 Assia Spe, Llc Device abstraction proxy
US8499148B2 (en) * 2009-11-02 2013-07-30 Chi Eng System and method for virtual team collaboration in a secure environment
JP7057675B2 (en) * 2018-01-09 2022-04-20 ラピスセミコンダクタ株式会社 Semiconductor device and encryption key generation method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6178507B1 (en) * 1997-02-03 2001-01-23 Certicom Corp. Data card verification system

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155680A (en) * 1986-10-24 1992-10-13 Signal Security Technologies Billing system for computing software
JP2592462B2 (en) 1987-08-20 1997-03-19 日本放送協会 Broadcast receiver
JP2760799B2 (en) 1988-04-28 1998-06-04 株式会社日立製作所 Encryption method
JPH03232381A (en) * 1990-02-08 1991-10-16 Canon Inc Facsimile equipment
JP3053106B2 (en) 1990-11-02 2000-06-19 株式会社日立製作所 Encryption processing device and decryption processing device
US5185796A (en) * 1991-05-30 1993-02-09 Motorola, Inc. Encryption synchronization combined with encryption key identification
US5434920A (en) * 1991-12-09 1995-07-18 At&T Corp. Secure telecommunications
JP2821306B2 (en) * 1992-03-06 1998-11-05 三菱電機株式会社 Authentication method and system between IC card and terminal
US5371794A (en) * 1993-11-02 1994-12-06 Sun Microsystems, Inc. Method and apparatus for privacy and authentication in wireless networks
DE69501206T2 (en) * 1994-02-17 1998-05-28 Rover Group SECURITY SYSTEM FOR VEHICLES
US6058478A (en) * 1994-09-30 2000-05-02 Intel Corporation Apparatus and method for a vetted field upgrade
US5689565A (en) * 1995-06-29 1997-11-18 Microsoft Corporation Cryptography system and method for providing cryptographic services for a computer application
US5657390A (en) * 1995-08-25 1997-08-12 Netscape Communications Corporation Secure socket layer application program apparatus and method
US5689566A (en) * 1995-10-24 1997-11-18 Nguyen; Minhtam C. Network with secure communications sessions
AU1829897A (en) * 1996-01-16 1997-08-11 Raptor Systems, Inc. Transferring encrypted packets over a public network
US5781654A (en) * 1996-01-18 1998-07-14 Merrill Lynch & Co., Inc. Check authentication system utilizing payee information
US5812671A (en) * 1996-07-17 1998-09-22 Xante Corporation Cryptographic communication system
US5857025A (en) * 1996-09-09 1999-01-05 Intelligent Security Systems, Inc. Electronic encryption device and method
US6076167A (en) * 1996-12-04 2000-06-13 Dew Engineering And Development Limited Method and system for improving security in network applications
JPH10177523A (en) 1996-12-16 1998-06-30 Mitsubishi Electric Corp Multimedia information system
US6230267B1 (en) * 1997-05-15 2001-05-08 Mondex International Limited IC card transportation key set
US5930804A (en) * 1997-06-09 1999-07-27 Philips Electronics North America Corporation Web-based biometric authentication system and method
US6230186B1 (en) * 1998-04-28 2001-05-08 Rhoda Yaker Private electronic message system
US6590588B2 (en) * 1998-05-29 2003-07-08 Palm, Inc. Wireless, radio-frequency communications using a handheld computer
EP1276189B1 (en) 2000-02-16 2008-10-01 Ngk Spark Plug Co., Ltd. Spark plug

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6178507B1 (en) * 1997-02-03 2001-01-23 Certicom Corp. Data card verification system

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030061218A1 (en) * 2000-02-18 2003-03-27 Iyer Balakrishna Raghavendra Method and system for utilizing a database as a service
US7171420B2 (en) * 2000-02-18 2007-01-30 International Business Machines Corporation Method and system for utilizing a database as a service
US20020103665A1 (en) * 2001-01-26 2002-08-01 Semiconductor Energy Laboratory Co., Ltd. Work data management system and work data management method
US7185022B2 (en) * 2001-01-26 2007-02-27 Semiconductor Energy Laboratory Co., Ltd. Work data management system and work data management method
US20070124314A1 (en) * 2001-01-26 2007-05-31 Semiconductor Energy Laboratory Co., Ltd. Work data management system and work data management method
US7640250B2 (en) 2001-01-26 2009-12-29 Semiconductor Energy Laboratory Co., Ltd. Work data management system and work data management method
EP1383264A4 (en) * 2001-04-24 2005-12-21 Nti Inc Data transmission method
US7607023B2 (en) 2001-04-24 2009-10-20 Nti, Inc. Data transfer method, data transfer apparatus, data transmission device, and data reception device
US20060294575A1 (en) * 2003-09-11 2006-12-28 Rogers Paul J Method and apparatus for use in security
US20070064929A1 (en) * 2003-10-17 2007-03-22 Vincent Carlier Method of protecting a cryptographic algorithm
US20060056632A1 (en) * 2004-09-10 2006-03-16 Andre Kudelski Data transmission method between a broadcasting center and a multimedia unit
US7433473B2 (en) * 2004-09-10 2008-10-07 Nagracard S.A. Data transmission method between a broadcasting center and a multimedia unit
US20060178995A1 (en) * 2005-01-24 2006-08-10 Eric Diehl Secure pre-recorded digital medium
US8229857B2 (en) * 2005-01-24 2012-07-24 Thomson Licensing Secure pre-recorded digital medium
US7873166B2 (en) 2005-09-13 2011-01-18 Avaya Inc. Method for undetectably impeding key strength of encryption usage for products exported outside the U.S
US20070058814A1 (en) * 2005-09-13 2007-03-15 Avaya Technology Corp. Method for undetectably impeding key strength of encryption usage for products exported outside the U.S.
WO2007101226A2 (en) * 2006-03-01 2007-09-07 Apple, Inc. Digital rights management system with diversified content protection process
WO2007101226A3 (en) * 2006-03-01 2008-01-10 Apple Inc Digital rights management system with diversified content protection process
EP1830299A3 (en) * 2006-03-01 2007-12-05 Apple Inc. Digital rights management system with diversified content protection process
US20070220585A1 (en) * 2006-03-01 2007-09-20 Farrugia Augustin J Digital rights management system with diversified content protection process
EP2293211A1 (en) * 2006-03-01 2011-03-09 Apple Inc. Digital rights management system with diversified content protection process
EP2299379A1 (en) * 2006-03-01 2011-03-23 Apple Inc. Digital rights management system with diversified content protection process
EP1830299A2 (en) 2006-03-01 2007-09-05 Apple Inc. Digital rights management system with diversified content protection process
US20080037775A1 (en) * 2006-03-31 2008-02-14 Avaya Technology Llc Verifiable generation of weak symmetric keys for strong algorithms
US8285989B2 (en) * 2006-12-18 2012-10-09 Apple Inc. Establishing a secured communication session
US20080148043A1 (en) * 2006-12-18 2008-06-19 Nortel Networks Limited Establishing a secured communication session
US8601267B2 (en) * 2006-12-18 2013-12-03 Apple Inc. Establishing a secured communication session
US20130046984A1 (en) * 2006-12-18 2013-02-21 Apple Inc. Establishing a Secured Communication Session
US20080263648A1 (en) * 2007-04-17 2008-10-23 Infosys Technologies Ltd. Secure conferencing over ip-based networks
KR101429329B1 (en) * 2008-08-12 2014-08-11 모토로라 모빌리티 엘엘씨 Preventing misuse of random access procedure in wireless communication system
US9357563B2 (en) 2008-08-12 2016-05-31 Google Technology Holdings LLC Preventing misuse of random access procedure in wireless communication system
US20100041370A1 (en) * 2008-08-12 2010-02-18 Motorola, Inc. Preventing Misuse of Random Access Procedure in Wireless Communication System
US20100039988A1 (en) * 2008-08-12 2010-02-18 Motorola, Inc. Preventing Misuse of Random Access Procedure in Wireless Communication System
US9374837B2 (en) * 2008-08-12 2016-06-21 Google Technology Holdings LLC Preventing misuse of random access procedure in wireless communication system
US8516270B2 (en) * 2010-11-18 2013-08-20 Apple Inc. Incremental and bulk storage system
US20120131352A1 (en) * 2010-11-18 2012-05-24 Apple Inc. Incremental and bulk storage system
EP2955897A4 (en) * 2013-03-05 2016-06-22 Huawei Tech Co Ltd Key interaction method and device
US20150382189A1 (en) * 2013-03-05 2015-12-31 Huawei Technologies Co., Ltd. Key exchange method and apparatus
CN104641617A (en) * 2013-03-05 2015-05-20 华为技术有限公司 Key interaction method and device
US9924354B2 (en) * 2013-03-05 2018-03-20 Huawei Technologies Co., Ltd. Key exchange method and apparatus
CN109548017A (en) * 2013-03-05 2019-03-29 华为技术有限公司 A kind of cipher key interaction method and device
US10397775B2 (en) * 2013-03-05 2019-08-27 Huawei Technologies Co., Ltd. Key exchange method and apparatus
US20190306706A1 (en) * 2013-03-05 2019-10-03 Huawei Technologies Co., Ltd. Key Exchange Method and Apparatus
US11025414B2 (en) * 2013-03-05 2021-06-01 Huawei Technologies Co., Ltd. Key exchange method and apparatus
US11777716B2 (en) * 2013-03-05 2023-10-03 Huawei Technologies Co., Ltd. Key exchange method and apparatus
US11102013B2 (en) * 2015-07-21 2021-08-24 Entrust, Inc. Method and apparatus for providing secure communication among constrained devices
US10666422B2 (en) * 2017-12-29 2020-05-26 Shenzhen China Star Optoelectronics Technology Co., Ltd. Data processing method
US11423171B2 (en) * 2019-12-23 2022-08-23 Intel Corporation Protection of privacy and data on smart edge devices
US11836272B2 (en) 2019-12-23 2023-12-05 Intel Corporation Protection of privacy and data on smart edge devices

Also Published As

Publication number Publication date
JP2000049770A (en) 2000-02-18
US7110548B1 (en) 2006-09-19

Similar Documents

Publication Publication Date Title
US7110548B1 (en) Cryptographic communication method, encryption algorithm shared control method, encryption algorithm conversion method and network communication system
JP2552061B2 (en) Method and apparatus for preventing network security policy violation in public key cryptosystem
US6842523B1 (en) Encryption apparatus, cryptographic communication system, key recovery system, and storage medium
JP3193610B2 (en) Communications system
US7100044B2 (en) Public key certificate using system, public key certificate using method, information processing apparatus, and program providing medium
KR100753932B1 (en) contents encryption method, system and method for providing contents through network using the encryption method
US7200230B2 (en) System and method for controlling and enforcing access rights to encrypted media
USRE38070E1 (en) Cryptography system and method for providing cryptographic services for a computer application
US5351294A (en) Limited broadcast system
US7310732B2 (en) Content distribution system authenticating a user based on an identification certificate identified in a secure container
CA2068488C (en) Hybrid public key algorithm/data encryption algorithm key distribution method based on control vectors
US20060080526A1 (en) Login system and method
US7287158B2 (en) Person authentication system, person authentication method, information processing apparatus, and program providing medium
US6684198B1 (en) Program data distribution via open network
US20020026582A1 (en) Person authentication system, person authentication method and program providing medium
US20030118189A1 (en) Encryption processing apparatus, encryption processing unit control apparatus, encryption processing unit, and computer product
WO1995028784A1 (en) Computer network cryptographic key distribution system
US6169803B1 (en) Encryption key processing system to be incorporated into data recovery system or key setting system for generating encryption key
JPH08297638A (en) User authentication system
JP2003530635A (en) System and method for securely storing confidential information, and digital content distribution device and server used in the system and method
EP1501238B1 (en) Method and system for key distribution comprising a step of authentication and a step of key distribution using a KEK (key encryption key)
JP4173924B2 (en) Cryptographic communication device, key management device and method, network communication system and method
JP2002300158A (en) Right protection method in overall data distribution service
JP2821204B2 (en) Information service system
US7596223B1 (en) User control of a secure wireless computer network

Legal Events

Date Code Title Description
AS Assignment

Owner name: HITACHI KEIYO ENGINEERING CO., LTD., JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:OUGI, HIROKAZU;TAKASHIMA, HIDEO;TANIGUCHI, HIDENOBU;AND OTHERS;REEL/FRAME:015671/0871

Effective date: 19990727

Owner name: HITACHI, LTD., JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:OUGI, HIROKAZU;TAKASHIMA, HIDEO;TANIGUCHI, HIDENOBU;AND OTHERS;REEL/FRAME:015671/0871

Effective date: 19990727

Owner name: HITACHI ADVANCED SYSTEMS CORPORATION, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:OUGI, HIROKAZU;TAKASHIMA, HIDEO;TANIGUCHI, HIDENOBU;AND OTHERS;REEL/FRAME:015671/0871

Effective date: 19990727

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION