Power Internet of things equipment lightweight access authentication method and system based on IBC system
Technical Field
The invention relates to the technical field of information security, in particular to a method and a system for authenticating lightweight access of power internet of things equipment based on an IBC system.
Background
With the development of new technologies such as mobile interconnection and artificial intelligence, bidirectional interaction between power users and smart power grids is more and more frequent, and requirements of users on service forms and service quality of the power grids are also higher and higher. In order to meet the application requirements of the power consumers, the perception and participation of the power consumers to the smart grid are enhanced, and the power Internet of things is generated. The network environment of the electric power Internet of things is complex in opening, flexible and changeable in access control, various in access equipment types, huge in quantity and uneven in safety performance. The devices can generate a large amount of data in the process of participating in the interaction of the power grid, and the terminal trust management and the network security are provided with serious challenges, so that the security access authentication technology research of mass electric power internet of things devices is required to be developed.
The traditional equipment security authentication is mainly based on a PKI system and is realized by adopting a digital certificate. However, PKI certificates are relatively complex to manage, a multi-level CA system needs to be built, and the issuing, revocation, verification and preservation of certificates need to occupy more resources. The device access authentication technology based on the IBC identification authentication system can effectively avoid the problem of complex certificate management, however, the traditional IBC password system has the problems of relatively complex private key escrow and password operation and the like. The above-described techniques are not suitable for access authentication of mass power internet of things devices.
Disclosure of Invention
Aiming at the problems, the invention provides a lightweight access authentication method for electric power Internet of things equipment based on an IBC system, which comprises the following steps:
the application of the public and private keys of the target equipment to the ciphertext comprises the following steps: after the target equipment generates a key application parameter, the key generation center KGC generates a public-private key pair of the identity of the target equipment according to the unique identification ID of the target equipment, and after the key application parameter is encrypted by using the symmetric key, the public-private key pair ciphertext is transmitted to the target equipment;
when the target equipment and other equipment interact information, a random number negotiation master key is introduced based on an identity public-private key pair of the target equipment and other equipment, and a data encryption key is generated after calculation by adopting a key derivation algorithm, namely, the data encryption key is accessed to authentication.
Optionally, the application of the public and private keys of the target device to the ciphertext specifically includes:
The target device first selects the random number r 1 and Wherein the cyclic group is a cyclic group,Is of the order q, and is provided withIs a secure one-way hash function of (a)According to r 1,q、And the target device ID, generating an identity key pair application parameter paramas 0={ID,r1,q,H(ID||r1) of the target device, and sending the application parameter paramas 0={ID,r1,q,H(ID||r1) to a key generation center KGC;
After the key generation center KGC receives the application parameters paramas 0={ID,r1,q,H(ID||r1), the security parameters see k are calculated, Inputting the safety parameter k into a parameter generator for operation to generate a system parameter paramas 1;
Wherein,
Where q is a safe prime number, G 1 is the q-order additive subgroup on elliptic curve meeting bilinear mapping property, G 2 is the q-order subgroup of multiplicative group on finite field,For bilinear mapping of G 1×G1→G2, n is the plaintext data length, P is any generator of G 1, i.e., P e G 1,Ppub is the system public key, P pub = ks P, s is the system master key factor,P r=ks,Ppub and P r are system public-private key pairs, and H 1,H2 is a system hash function, wherein H 1:{0,1}*→G1,H2:{0,1}n→G2;
The key generation center KGC sends the system parameters paramas 1 to the target device and saves the system paramas 1 through the target device;
The target equipment generates a random number r 2, acquires a symmetric key k 2,k2=KDF(r2 according to a key derivation algorithm aiming at the random number r 2, encrypts the symmetric key k 2 through a key generation center KGC, and acquires the encrypted symmetric key And calculates a symmetric key based on the target device IDAnd apply for parameters of (a) and will be symmetric keyThe application parameters of (a) are sent to a key generation center KGC;
wherein the symmetric key The application parameters of (a) are as follows:
The key generation center KGC receives the symmetric key After applying for parameters, verifying the symmetric keyIf passing verification, decrypting the symmetric key to obtain the integrity of the applied parameters of (a)Extracting a target device ID, detecting whether the target device ID is legal or not, and calculating a target device identity public key P pub1,Ppub1=H1(ID||Tv) if the target device ID is legal, wherein T v is a device validity period;
the key generation center KGC calculates the identity private key of the target equipment based on the system main key factor and the security parameter The target equipment identity private key is encrypted by a symmetric key k 2 to obtainFor private key ciphertextDevice identity public keys P pub1 and T v are used for signing the validity period of the device, and information after signature is obtainedAnd will beTransmitting to target equipment;
The target device receives After that, verifyIf the signature information of the target equipment passes the verification, the identity public key P pub1 of the target equipment is obtained, and the identity private key of the target equipment is obtained after the private key ciphertext information is decrypted by adopting the symmetric key k 2
Optionally, the target device negotiates with the encryption key of other devices, including:
The target device is used as the device 1, other devices are used as the device 2, the device ID 1 and the private key validity period T v1 are sent to the device 2 through the device 1, and after the device 2 receives the device ID 1 and the private key validity period T v1, the public key of the device 1 is determined, and the public key is determined
Device 2 sends device ID 2 and private key validity period T v2 to device 1, device 1 receives device ID 2 and private key validity period T v2, determines the public key of device 2, and the public key
Device 1 selects random number r 1 using the public key of device 2The ciphertext M 1 is obtained by encrypting the random number r 1,Signature is obtained after M 1 is signed by a private key of the device 1, signature S 1=H1(M1||r1) and ciphertext M 1 and S 1 are sent to the device 2;
after device 2 receives M 1 and S 1, decrypt M 1 to obtain And verifies the legitimacy of the signature S 1, if the verification passes, the random number r 2 is selected, and the public key of the device 1 is usedThe ciphertext M 2 is obtained by encrypting the random number r 2,Signature is obtained after M 2 is signed by a private key of the device 2, signature S 2=H1(M2||r2||r1) and ciphertext M 2 and S 2 are sent to the device 1;
after device 1 receives M 2 and S 2, decrypt M 2 to obtain Comparing whether the decrypted r 1 is equal to the random number r 1, if so, verifying the validity of the signature S 2, and if the verification is passed, obtainingObtaining a master key by a key derivation algorithm
Public key by device 2Ciphertext obtained by encrypting random number r 2 The verification passing information V p and the ciphertext M 3,r1,r2 are signed to obtain S 3=H1(Vp||M3||r1||r2), and M 3 and S 3 are sent to the device 2;
After receiving the transmissions of M 3 and S 3, device 2 decrypts M 3 to obtain Comparing whether the decrypted r 2 is equal to the random number r 2, if so, verifying the validity of the signature S 3, and if the verification is passed, obtainingObtaining an encryption key by a key derivation algorithm
Device 1 and device 2 pass through encryption keysAnd (3) protecting information interaction between the equipment 1 and the equipment 2, namely finishing lightweight access authentication of the electric power Internet of things equipment.
The invention also provides an IBC system-based lightweight access authentication system for the electric power Internet of things equipment, which comprises the following steps:
The device identity key pair application module is used for applying for the ciphertext of the public and private key of the target device and comprises the following steps: after the target equipment generates a key application parameter, the key generation center KGC generates a public-private key pair of the identity of the target equipment according to the unique identification ID of the target equipment, and after the key application parameter is encrypted by using the symmetric key, the public-private key pair ciphertext is transmitted to the target equipment;
the device encryption key negotiation module is used for carrying out encryption key negotiation on the target device and other devices, and comprises the steps of introducing a random number negotiation master key based on an identity public-private key pair of the target device and the other devices when the target device carries out information interaction with the other devices, and generating a data encryption key after calculation by adopting a key derivation algorithm, namely accessing authentication through the data encryption key.
Optionally, the application of the public and private keys of the target device to the ciphertext specifically includes:
The target device first selects the random number r 1 and Wherein the cyclic group is a cyclic group,Is of the order q, and is provided withIs a secure one-way hash function of (a)According to r 1,q、And the target device ID, generating an identity key pair application parameter paramas 0={ID,r1,q,H(ID||r1) of the target device, and sending the application parameter paramas 0={ID,r1,q,H(ID||r1) to a key generation center KGC;
After the key generation center KGC receives the application parameters paramas 0={ID,r1,q,H(ID||r1), the security parameters see k are calculated, Inputting the safety parameter k into a parameter generator for operation to generate a system parameter paramas 1;
Wherein,
Where q is a safe prime number, G 1 is the q-order additive subgroup on elliptic curve meeting bilinear mapping property, G 2 is the q-order subgroup of multiplicative group on finite field,For bilinear mapping of G 1×G1→G2, n is the plaintext data length, P is any generator of G 1, i.e., P e G 1,Ppub is the system public key, P pub = ks P, s is the system master key factor,P r=ks,Ppub and P r are system public-private key pairs, and H 1,H2 is a system hash function, wherein H 1:{0,1}*→G1,H2:{0,1}n→G2;
The key generation center KGC sends the system parameters paramas 1 to the target device and saves the system paramas 1 through the target device;
The target equipment generates a random number r 2, acquires a symmetric key k 2,k2=KDF(r2 according to a key derivation algorithm aiming at the random number r 2, encrypts the symmetric key k 2 through a key generation center KGC, and acquires the encrypted symmetric key And calculates a symmetric key based on the target device IDAnd apply for parameters of (a) and will be symmetric keyThe application parameters of (a) are sent to a key generation center KGC;
wherein the symmetric key The application parameters of (a) are as follows:
The key generation center KGC receives the symmetric key After applying for parameters, verifying the symmetric keyIf passing verification, decrypting the symmetric key to obtain the integrity of the applied parameters of (a)Extracting a target device ID, detecting whether the target device ID is legal or not, and calculating a target device identity public key P pub1,Ppub1=H1(ID||Tv) if the target device ID is legal, wherein T v is a device validity period;
the key generation center KGC calculates the identity private key of the target equipment based on the system main key factor and the security parameter The target equipment identity private key is encrypted by a symmetric key k 2 to obtainFor private key ciphertextDevice identity public keys P pub1 and T v are used for signing the validity period of the device, and information after signature is obtainedAnd will beTransmitting to target equipment;
The target device receives After that, verifyIf the signature information of the target equipment passes the verification, the identity public key P pub1 of the target equipment is obtained, and the identity private key of the target equipment is obtained after the private key ciphertext information is decrypted by adopting the symmetric key k 2
Optionally, the target device negotiates with the encryption key of other devices, including:
The target device is used as the device 1, other devices are used as the device 2, the device ID 1 and the private key validity period T v1 are sent to the device 2 through the device 1, and after the device 2 receives the device ID 1 and the private key validity period T v1, the public key of the device 1 is determined, and the public key is determined
Device 2 sends device ID 2 and private key validity period T v2 to device 1, device 1 receives device ID 2 and private key validity period T v2, determines the public key of device 2, and the public key
Device 1 selects random number r 1 using the public key of device 2The ciphertext M 1 is obtained by encrypting the random number r 1,Signature is obtained after M 1 is signed by a private key of the device 1, signature S 1=H1(M1||r1) and ciphertext M 1 and S 1 are sent to the device 2;
after device 2 receives M 1 and S 1, decrypt M 1 to obtain And verifies the legitimacy of the signature S 1, if the verification passes, the random number r 2 is selected, and the public key of the device 1 is usedThe ciphertext M 2 is obtained by encrypting the random number r 2,Signature is obtained after M 2 is signed by a private key of the device 2, signature S 2=H1(M2||r2||r1) and ciphertext M 2 and S 2 are sent to the device 1;
after device 1 receives M 2 and S 2, decrypt M 2 to obtain Comparing whether the decrypted r 1 is equal to the random number r 1, if so, verifying the validity of the signature S 2, and if the verification is passed, obtainingObtaining a master key by a key derivation algorithm
Public key by device 2Ciphertext obtained by encrypting random number r 2 The verification passing information V p and the ciphertext M 3,r1,r2 are signed to obtain S 3=H1(Vp||M3||r1||r2), and M 3 and S 3 are sent to the device 2;
After receiving the transmissions of M 3 and S 3, device 2 decrypts M 3 to obtain Comparing whether the decrypted r 2 is equal to the random number r 2, if so, verifying the validity of the signature S 3, and if the verification is passed, obtainingObtaining an encryption key by a key derivation algorithm
Device 1 and device 2 pass through encryption keysAnd (3) protecting information interaction between the equipment 1 and the equipment 2, namely finishing lightweight access authentication of the electric power Internet of things equipment.
The method provided by the invention can realize high-efficiency safety access authentication of the electric power Internet of things equipment, and enhance the safety and intelligent management level of the Internet of things equipment.
Drawings
FIG. 1 is a flow chart of the method of the present invention;
FIG. 2 is a flow chart of the device identity key pair application of the present invention;
FIG. 3 is a flow chart of the encryption key negotiation of the device of the present invention;
Fig. 4 is a flow chart of the system of the present invention.
Detailed Description
The exemplary embodiments of the present invention will now be described with reference to the accompanying drawings, however, the present invention may be embodied in many different forms and is not limited to the examples described herein, which are provided to fully and completely disclose the present invention and fully convey the scope of the invention to those skilled in the art. The terminology used in the exemplary embodiments illustrated in the accompanying drawings is not intended to be limiting of the invention. In the drawings, like elements/components are referred to by like reference numerals.
Unless otherwise indicated, terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. In addition, it will be understood that terms defined in commonly used dictionaries should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense.
The invention is further illustrated by the following examples and the accompanying drawings:
In order to realize efficient and safe access authentication of electric power Internet of things equipment, the invention provides an IBC system-based lightweight access authentication method of the electric power Internet of things equipment, which mainly comprises two processes of equipment identity key pair application and encryption key negotiation, as shown in fig. 1, firstly, equipment generates a key application file, a key generation center KGC generates an equipment identity public-private key pair based on equipment unique identification ID, and the key generation center KGC utilizes a symmetric key to encrypt the private key and transmits the key to the equipment; when information interaction is needed between the devices, a random number is introduced to negotiate a master key based on an identity key pair, and then a key derivative algorithm is adopted to calculate to obtain a data encryption key.
The encryption key is generated by a key pair application and key negotiation method, so that the problems of information leakage and the like caused by unreliable key generation centers due to key escrow can be effectively avoided.
The device identity key pair applying step, as shown in fig. 2, is as follows:
the target device first selects a random number The order of the cyclic group is q.Is a secure one-way hash function. Generating a device identity key pair application parameter paramas 0={ID,r1,q,H(ID||r1) according to the device ID, and sending the generated device identity key pair application parameter paramas 0={ID,r1,q,H(ID||r1 to a key generation center KGC.
After receiving the application parameters, the key generation center KGC calculates the security parametersThe security parameter k is input into a parameter generator to be operated to generate a system parameter paramas 1.
Where q is a safe prime number, G 1 is the q-order additive subgroup on the elliptic curve that satisfies the bilinear mapping property, and G 2 is the q-order subgroup of the multiplicative group on the finite field.For bilinear mapping of G 1×G1→G2, n is the plaintext data length, P is any generator of G 1, i.e., P e G 1,Ppub is the system public key, P pub = ks P, s is the system master key factor,P r=ks,Ppub and P r are system public-private key pairs. H 1,H2 is a system hash function. Wherein, H 1:{0,1}*→G1,H2:{0,1}n→G2.
The key generation center KGC sends the system parameters paramas 1 to the device and is saved by the device.
The device generates a random number r 2, obtains a symmetric key k 2=KDF(r2 based on a key derivation algorithm, and encrypts k 2 by using a key generation center public key to obtainCalculating an application parameter of an identity key pair based on the equipment ID and sending the application parameter to a key generation center KGC;
The application parameters of the identity key pair are as follows:
after receiving the application parameters of the equipment identity key pair, the key generating center KGC firstly verifies the data integrity, and after verification, the symmetric key is obtained by decryption And extracts the device ID, and detects whether the device ID is legal. If it is legal, the device identity public key P pub1, i.e., P pub1=H1(ID||Tv) is calculated, where T v is the device validity period. Then, the key generation center KGC calculates the private key of the equipment identity based on the system main key factor and the security parameterThe device identity private key is encrypted by a symmetric key k 2 to obtainSecret key ciphertextDevice identity public keys P pub1 and T v are used for signing the validity period of the device to obtain signed informationWill thenTo the device.
After receiving the response message of the identity public and private key, the equipment firstly verifies the signature information, if the signature verification passes, the equipment identity public key P pub1 is obtained, and the equipment identity private key is obtained after decrypting the private key ciphertext information by adopting the symmetric key k 2
Wherein, the device encryption key negotiation step, as shown in fig. 3, is as follows:
Device 1 (target device) sends its own device ID 1 and private key validity period T v1 to device 2 (other devices), and device 2 receives the public key of computing device 1
Device 2 sends its own device ID 2 and private key expiration period T v2 to device 1, and device 1 receives the public key of computing device 2
Device 1 selects random number r 1, using device 2 public keyAfter encryption, ciphertext is obtainedThen, signing by using the private key of the device 1 to obtain S 1=H1(M1||r1), and sending ciphertext M 1 and S 1 to the device 2;
After receiving the information, device 2 first decrypts M 1 to obtain Then verifying the signature S 1, after verification, selecting the random number r 2, using the public key of the device 1After encryption, ciphertext is obtainedThen, signing by using the private key of the device 2 to obtain S 2=H1(M2||r2||r1), and sending ciphertext M 2 and S 2 to the device 1;
After receiving the information, the device 1 first decrypts M 2 to obtain Compare whether r 1 after decryption is equal to the original value. If the signature is equal, verifying the signature S 2, and after verification, calculatingThen the key derivation algorithm is used to calculate the master keyThereafter using the device 2 public keyAfter encrypting r 2, ciphertext is obtainedThe verification passes through the information V p, the ciphertext M 3,r1,r2 is signed to obtain S 3=H1(Vp||M3||r1||r2), and then M 3 and S 3 are sent to the device 2;
After receiving the information, device 2 first decrypts M 3 to obtain Compare whether r 2 after decryption is equal to the original value. If the signature S 3 is equal, the signature S 3 is verified, and after verification, the signature S 3 is calculated as wellComputing device encryption keys using a key derivation algorithm
The information interaction between the device 1 and the device 2 is all secured based on the device encryption key k.
The invention also provides an IBC system-based lightweight access authentication system 200 of the electric power Internet of things equipment, as shown in FIG. 4, comprising:
The device identity key pair application module 201 is configured to apply for a target device public and private key pair ciphertext, and includes: after the target equipment generates a key application parameter, the key generation center KGC generates a public-private key pair of the identity of the target equipment according to the unique identification ID of the target equipment, and after the key application parameter is encrypted by using the symmetric key, the public-private key pair ciphertext is transmitted to the target equipment;
The device encryption key negotiation module 202 is configured to perform encryption key negotiation on the target device and other devices, and includes introducing a random number negotiation master key based on an identity public-private key pair of the target device and other devices when the target device performs information interaction with other devices, and generating a data encryption key after calculation by adopting a key derivation algorithm, that is, accessing authentication through the data encryption key.
The application of the public and private keys of the target equipment to the ciphertext specifically comprises the following steps:
The target device first selects the random number r 1 and Wherein the cyclic group is a cyclic group,Is of the order q, and is provided withIs a secure one-way hash function of (a)According to r 1,q、And the target device ID, generating an identity key pair application parameter paramas 0={ID,r1,q,H(ID||r1) of the target device, and sending the application parameter paramas 0={ID,r1,q,H(ID||r1) to a key generation center KGC;
After the key generation center KGC receives the application parameters paramas 0={ID,r1,q,H(ID||r1), the security parameters see k are calculated, Inputting the safety parameter k into a parameter generator for operation to generate a system parameter paramas 1;
Wherein,
Where q is a safe prime number, G 1 is the q-order additive subgroup on elliptic curve meeting bilinear mapping property, G 2 is the q-order subgroup of multiplicative group on finite field,For bilinear mapping of G 1×G1→G2, n is the plaintext data length, P is any generator of G 1, i.e., P e G 1,Ppub is the system public key, P pub = ks P, s is the system master key factor,P r=ks,Ppub and P r are system public-private key pairs, and H 1,H2 is a system hash function, wherein H 1:{0,1}*→G1,H2:{0,1}n→G2;
The key generation center KGC sends the system parameters paramas 1 to the target device and saves the system paramas 1 through the target device;
The target equipment generates a random number r 2, acquires a symmetric key k 2,k2=KDF(r2 according to a key derivation algorithm aiming at the random number r 2, encrypts the symmetric key k 2 through a key generation center KGC, and acquires the encrypted symmetric key And calculates a symmetric key based on the target device IDAnd apply for parameters of (a) and will be symmetric keyThe application parameters of (a) are sent to a key generation center KGC;
wherein the symmetric key The application parameters of (a) are as follows:
The key generation center KGC receives the symmetric key After applying for parameters, verifying the symmetric keyIf passing verification, decrypting the symmetric key to obtain the integrity of the applied parameters of (a)Extracting a target device ID, detecting whether the target device ID is legal or not, and calculating a target device identity public key P pub1,Ppub1=H1(ID||Tv) if the target device ID is legal, wherein T v is a device validity period;
the key generation center KGC calculates the identity private key of the target equipment based on the system main key factor and the security parameter The target equipment identity private key is encrypted by a symmetric key k 2 to obtainFor private key ciphertextDevice identity public keys P pub1 and T v are used for signing the validity period of the device, and information after signature is obtainedAnd will beTransmitting to target equipment;
The target device receives After that, verifyIf the signature information of the target equipment passes the verification, the identity public key P pub1 of the target equipment is obtained, and the identity private key of the target equipment is obtained after the private key ciphertext information is decrypted by adopting the symmetric key k 2
The encryption key negotiation between the target device and other devices comprises the following steps:
The target device is used as the device 1, other devices are used as the device 2, the device ID 1 and the private key validity period T v1 are sent to the device 2 through the device 1, and after the device 2 receives the device ID 1 and the private key validity period T v1, the public key of the device 1 is determined, and the public key is determined
Device 2 sends device ID 2 and private key validity period T v2 to device 1, device 1 receives device ID 2 and private key validity period T v2, determines the public key of device 2, and the public key
Device 1 selects random number r 1 using the public key of device 2The ciphertext M 1 is obtained by encrypting the random number r 1,Signature is obtained after M 1 is signed by a private key of the device 1, signature S 1=H1(M1||r1) and ciphertext M 1 and S 1 are sent to the device 2;
after device 2 receives M 1 and S 1, decrypt M 1 to obtain And verifies the legitimacy of the signature S 1, if the verification passes, the random number r 2 is selected, and the public key of the device 1 is usedThe ciphertext M 2 is obtained by encrypting the random number r 2,Signature is obtained after M 2 is signed by a private key of the device 2, signature S 2=H1(M2||r2||r1) and ciphertext M 2 and S 2 are sent to the device 1;
after device 1 receives M 2 and S 2, decrypt M 2 to obtain Comparing whether the decrypted r 1 is equal to the random number r 1, if so, verifying the validity of the signature S 2, and if the verification is passed, obtainingObtaining a master key by a key derivation algorithm
Public key by device 2Ciphertext obtained by encrypting random number r 2 The verification passing information V p and the ciphertext M 3,r1,r2 are signed to obtain S 3=H1(Vp||M3||r1||r2), and M 3 and S 3 are sent to the device 2;
After receiving the transmissions of M 3 and S 3, device 2 decrypts M 3 to obtain Comparing whether the decrypted r 2 is equal to the random number r 2, if so, verifying the validity of the signature S 3, and if the verification is passed, obtainingObtaining an encryption key by a key derivation algorithm
Device 1 and device 2 pass through encryption keysAnd (3) protecting information interaction between the equipment 1 and the equipment 2, namely finishing lightweight access authentication of the electric power Internet of things equipment.
The method provided by the invention can realize high-efficiency safety access authentication of the electric power Internet of things equipment, and enhance the safety and intelligent management level of the Internet of things equipment.
It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein. The scheme in the embodiment of the invention can be realized by adopting various computer languages, such as object-oriented programming language Java, an transliteration script language JavaScript and the like.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. It is therefore intended that the following claims be interpreted as including the preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various modifications and variations can be made to the present invention without departing from the spirit or scope of the invention. Thus, it is intended that the present invention also include such modifications and alterations insofar as they come within the scope of the appended claims or the equivalents thereof.