CN1558588A - Method for designing reconfigurable substitution module of reconfigurable cipher code coprocessor - Google Patents
Method for designing reconfigurable substitution module of reconfigurable cipher code coprocessor Download PDFInfo
- Publication number
- CN1558588A CN1558588A CNA2004100235431A CN200410023543A CN1558588A CN 1558588 A CN1558588 A CN 1558588A CN A2004100235431 A CNA2004100235431 A CN A2004100235431A CN 200410023543 A CN200410023543 A CN 200410023543A CN 1558588 A CN1558588 A CN 1558588A
- Authority
- CN
- China
- Prior art keywords
- output
- restructural
- input
- gating device
- channel gating
- 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.)
- Granted
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
A reconstruction replacement module design method for reconstruction cipher code coprocessor for realizing n digit input and m digit output, which comprises, (1) designing allocation file register for storing the control code of controlled nodes in the substituted units, (2) designing nXm replacement units for realizing selection transformation from input data to output data, wherein the substitution units include m n-digit multipath selector and m-digit latching device.
Description
Technical field
The invention belongs to the designing technique of the restructural password coprocessor chip that is used for information security field, more particularly relate to the improvement of method for designing of the restructural replacement module of restructural password coprocessor.
Background technology
One that ensures information security substantially the most also is that effective measures are that information is carried out cryptographic transformation.Crypto chip is the most crucial basic element of character that constitutes cryptographic system.For certain special encryption chip, because hardware circuit is to design at certain specific encryption/decryption algorithm, therefore algorithm and hardware circuit can mate finely, thereby make the enciphering/deciphering speed of special purpose system chip very fast, but, flexibility extreme difference at the special purpose system chip of special algorithm can only adapt to a kind of algorithm, and this has greatly limited its range of application.
Restructural crypto chip based on the restructural cryptologic provides a new approach for data encryption.The reconfigurable characteristic of its internal circuit structure makes its architecture have flexibility to a certain degree, has solved architecture and the unmatched problem of different application demand that traditional rigid body architecture is brought preferably.Compare with the special purpose system chip, the restructural password coprocessor has following advantage: (1) restructural password coprocessor provides great flexibility for the user of encryption device, the user can realize various cryptographic algorithm by being programmed in according to the demand of oneself on the restructural password coprocessor.In case cryptographic algorithm needs upgrading, needn't change crypto chip, only need to revise corresponding programming software and get final product, very convenient.Therefore can prolong the useful life of cryptographic system, protection user's investment interests.(2) the restructural password coprocessor is at a certain specific cryptosystem algorithm design, but a general hardware implementation platform that provides for a large amount of cryptographic algorithms with certain general character (mainly being symmetric key system algorithm).The restructural password coprocessor did not contain specific cryptographic algorithm information before coming into operation, the cryptographic algorithm of being realized was determined by programming before using by the user, therefore, design and production phase at chip can not revealed the information of cryptographic algorithm, thereby have improved the coefficient of safety of cryptographic system.(3) shorter based on the construction cycle of the cryptographic system of restructural password coprocessor than the construction cycle of special purpose system chip.(4) user can change employed cryptographic algorithm easily at any time, shortens the life cycle of same cryptographic algorithm, thereby has increased the difficulty of cryptanalysis (attack), the fail safe that has improved cryptographic system from another aspect greatly.
Cryptographic algorithm has a notable attribute: a lot of different cryptographic algorithms have same or analogous basic operation composition, and the frequency that same in other words basic operation composition occurs in algorithms of different is very high.To 34 kinds of typical block ciphers and the basic operation composition of 13 kinds of typical stream cipher algorithm and the statistics of usage frequency thereof such as DES, IDEA, AES candidate algorithm, the usage frequency of finding replacement operator reaches 30%, so replacement module is one of indispensable important component part of restructural password coprocessor.
At present, the replacement module on the special purpose system chip all is to adopt the mode of logic hard wire to realize that the selection conversion that such replacement module is realized is unique, unmodifiable.Therefore, can only adapt to the demand of specific cryptosystem algorithm, not have flexibility and adaptability.
Summary of the invention
Purpose of the present invention is big, the adaptable replacement module of a kind of flexibility of design.This replacement module should be able to be according to the demand of different cryptographic algorithms, changes the logical construction and the function of self circuit flexibly, thereby realizes the selection conversion that different cryptographic algorithms are required.This replacement module is the restructural replacement module.
The present invention can realize all selection conversion of the input of n position, the output of m position, and n, m are natural number.It may further comprise the steps:
1. design configurations file register, it is an input with CONT, CLK, RST, E0, E1..., with CR[m[log
2N]-1:0] be output, be used for preserving the control coding of the controllable node of permute unit, this configuration file register can be rewritten by instruction;
2. design n * m permute unit, it is with CR[m[log
2N]-1:0], D[(n-1): 0] be input, with Q[(m-1): 0] be output, be used to realize importing the selection conversion of data to dateout.
The general thought of the circuit design of restructural replacement module is: visible, the controlled node of some command interface (being called controllable node) is set in circuit, the control coding (being called controlled coding) of these controllable node is kept in the configuration file register (or being called marker register), rewrite the value of configuration register by instruction, just can change the logical construction and the function of self circuit neatly, thereby realize the selection conversion that different cryptographic algorithms are required.
Replacement module is a code component that often uses in the block cipher, and its function is to select some output from input variable, and promptly any one of output variable all is a certain position that chooses from all of input variable.Obviously, permute unit has been realized a conversion from the input variable to the output variable, and we claim this selection conversion that is transformed to.Maximum adaptation design principle according to reconstructed module, the permute unit (being designated hereinafter simply as n * m permute unit) of n input, m output should be realized all selection conversion of n input, m output, i.e. any one output of n * m permute unit can be selected n any one in importing.Number according to the width of the needed controlled coding of permute unit of this principle design and the selection conversion that it can be realized can be by following theorem description.
[theorem] establishes a n * m replacement module can realize all selection conversion of its input variable to output variable, and then this replacement module needs m[log
2N] position control coding, can realize n
mIndividual different selection conversion.
For example: one 64 * 64 replacement module needs 384 control codings, can realize 64
64≈ 3.94 * 10
115Individual different selection conversion.Obviously, cyclic shift transform is a kind of special selection conversion, and therefore, a n * n replacement module can realize that word length is less than or equal to the cyclic shift transform arbitrarily of n.In addition, replacement module can also be realized the arithmetic shift computing.
The basic design method of replacement module is: every output comes from a multi-channel gating device, each multi-channel gating device can select any one input as output, and the control signal of each multi-channel gating device is separate, therefore can realize evolution relation arbitrarily by the control signal of controlling each multi-channel gating device.The control signal of multi-channel gating device is kept in the configuration register, and the value of this configuration register can be rewritten by instruction, thereby just can change the selection conversion that permute unit is realized.
That is the permute unit in the restructural cryptologic circuit can have polytypes such as 8 * 8,16 * 16,32 * 32,64 * 64,128 * 128.They can realize any displacement relation of input variable to output variable, comprise one to one and replace, expand displacement, contraction displacement, ring shift left, ring shift right etc.
32 * 32 replacement modules can realize importing the displacement arbitrarily of number≤16, output number≤16, comprise corresponding one by one displacement, expansion displacement, compression displacement, the cyclic shift of word length≤32, arithmetic shift.
64 * 64 replacement modules can realize importing the displacement arbitrarily of number≤64, output number≤64, comprise corresponding one by one displacement, expansion displacement, compression displacement, the cyclic shift of word length≤64, arithmetic shift.
128 * 128 replacement modules can realize importing the displacement arbitrarily of number≤128, output number≤128, comprise corresponding one by one displacement, expansion displacement, compression displacement, the cyclic shift of word length≤128, arithmetic shift.
Task of the present invention comes to this and finishes.
The present invention is a corn module in the restructural password coprocessor, because it can realize all selection conversion of input variable to output variable neatly, therefore the restructural password coprocessor is realized that different cryptographic algorithms provides strong support.It can change logical construction and function flexibly according to the demand of different cryptographic algorithms, realizes different selection conversion.Can be widely used in the restructural password coprocessor in information encryption field.
Description of drawings
Fig. 1 is the block diagram of restructural password coprocessor.
Fig. 2 is the circuit diagram of 128 * 128 permute units of embodiment 1.
Fig. 3 is the block diagram of 32 * 32 restructural replacement modules of embodiment 2.
Fig. 4 is the block diagram of 64 * 64 restructural replacement modules of embodiment 3.
Fig. 5 is the signal definition of 32 * 32 restructural replacement modules.
Fig. 6 is the signal definition of 64 * 64 restructural replacement modules.
Embodiment
Embodiment 1.A kind of method for designing of restructural replacement module of restructural password coprocessor, as shown in Figure 2.It can realize all selection conversion of the input of n position, the output of m position, and n, m are natural number.It may further comprise the steps:
1. design configurations file register, it is an input with CONT, CLK, RST, E0, E1..., with CR[m[log
2N]-1:0] be output, be used for preserving the control coding of the controllable node of permute unit, this configuration file register can be rewritten by instruction;
2. design n * m permute unit, it is with CR[m[log
2N]-1:0], D[(n-1): 0] be input, with Q[(m-1): 0] be output, be used to realize importing the selection conversion of data to dateout.
Embodiment 2.A kind of method for designing of restructural replacement module of restructural password coprocessor, as shown in Figure 3.This is a kind of 32 * 32 restructural replacement modules, and its signal definition is seen Fig. 5.
32 * 32 replacement modules are used to realize 32 relations of displacement arbitrarily that are input between 32 outputs, i.e. any any of can select in 32 input data of 32 dateouts.Specifically, 32 * 32 replacement modules can be realized 3 kinds of operations: configuration file register reset operation, write configuration file register manipulation, replacement operator, be described below respectively:
(1) configuration file register reset operation:
When rising edge clock arrives if RST=1, then with the value CR[159:0 of configuration file register CONTREG] all be changed to 0, promptly configuration file register reset operation and clock CLK are synchronous.
(2) write the configuration file register manipulation:
When rising edge clock arrives if E0=1, with configuration data CONT[79:0] write in the 79th to 0 of configuration file register CONTREG (be CR[79:0]) and go; When rising edge clock arrives if E1=1, with configuration data CONT[79:0] write in the 159th to 80 of configuration file register CONTREG (be CR[159:80]) and go.Promptly write configuration file register manipulation and clock CLK signal Synchronization.
(3) replacement operator:
Output CR[159:0 at configuration file register CONTREG] control under, with 32 input D[31:0] be replaced into 32 output Q[31:0], detailed control relation is as follows:
CR[5I+4:5I] (0≤I≤31) control Q[I] selection of (0≤I≤31), as CR[5I+4:5I]=during J (0≤J≤31), Q[I]=D[J].
Embodiment 3.A kind of method for designing of restructural replacement module of restructural password coprocessor, as shown in Figure 2.This is a kind of 64 * 64 restructural replacement modules, and its signal definition is seen Fig. 6.
64 * 64 replacement modules are used to realize 64 relations of displacement arbitrarily that are input between 64 outputs, i.e. any any of can select in 64 input data of 64 dateouts.Specifically, 64 * 64 replacement modules can be realized 3 kinds of operations: configuration file register reset operation, write configuration file register manipulation, replacement operator, be described below respectively:
(1) configuration file register reset operation:
When rising edge clock arrives if RST=1, then with the value CR[383:0 of configuration file register CONTREG] all be changed to 0, promptly configuration file register reset operation and clock CLK are synchronous.
(2) write the configuration file register manipulation:
When rising edge clock arrives if E0=1, with configuration data CONT[95:0] write in the 95th to 0 of configuration file register CONTREG (be CR[95:0]) and go; When rising edge clock arrives if E1=1, with configuration data CONT[95:0] write in the 191st to 96 of configuration file register CONTREG (be CR[191:96]) and go; When rising edge clock arrives if E2=1, with configuration data CONT[95:0] write in the 287th to 192 of configuration file register CONTREG (be CR[287:192]) and go, when rising edge clock arrives if E3=1, with configuration data CONT[95:0] write in the 383rd to 288 of configuration file register CONTREG (be CR[383:288]) and go.Write configuration file register manipulation and clock CLK signal Synchronization.
(3) replacement operator:
Output CR[383:0 at configuration file register CONTREG] control under, with 64 input D[63:0] be replaced into 64 output Q[63:0], detailed control relation is as follows:
CR[6I+5:6I] (0≤I≤63) control Q[I] selection of (0≤I≤63), as CR[6I+5:6I]=during J (0≤J≤63), Q[I]=D[J].
Claims (2)
1. the method for designing of the restructural replacement module of a restructural password coprocessor, it can realize all selection conversion of the input of n position, the output of m position, wherein n, m are natural number, it is characterized in that it may further comprise the steps:
1. design configurations file register, it is with CONT, CLK, RST, E0, E1 ... be input, with CR[m[log
2N]-1:0] be output, be used for preserving the control coding of the controllable node of permute unit, this configuration file register can be rewritten by instruction;
2. design n * m permute unit, it is with CR[m[log
2N]-1:0], D[(n-1): 0] be input, with Q[(m-1): 0] be output, be used to realize importing the selection conversion of data to dateout.
2. according to the method for designing of the restructural replacement module of the described restructural password coprocessor of claim 1, it is characterized in that said step permute unit 2. comprises the multi-channel gating device of m n position and the m position latch that is connected with the output of each multi-channel gating device, its every output comes from a multi-channel gating device, each multi-channel gating device can select any one input as output, and the control signal of each multi-channel gating device is separate, therefore can realize evolution relation arbitrarily by the control signal of controlling each multi-channel gating device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100235431A CN100353702C (en) | 2004-01-20 | 2004-01-20 | Method for designing reconfigurable substitution module of reconfigurable cipher code coprocessor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100235431A CN100353702C (en) | 2004-01-20 | 2004-01-20 | Method for designing reconfigurable substitution module of reconfigurable cipher code coprocessor |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1558588A true CN1558588A (en) | 2004-12-29 |
CN100353702C CN100353702C (en) | 2007-12-05 |
Family
ID=34352174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100235431A Expired - Fee Related CN100353702C (en) | 2004-01-20 | 2004-01-20 | Method for designing reconfigurable substitution module of reconfigurable cipher code coprocessor |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100353702C (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169866B (en) * | 2006-10-26 | 2010-09-01 | 朱明程 | Self-reconfigurable on-chip multimedia processing system and its self-reconfiguration realization method |
WO2012136065A1 (en) * | 2011-04-07 | 2012-10-11 | 中兴通讯股份有限公司 | Method and device of supporting arbitrary replacement among multiple data units |
CN103297223A (en) * | 2013-05-07 | 2013-09-11 | 北京航空航天大学 | Self-recovery fault-tolerant AES structure based on reconfigurable dynamic state and encryption method thereof |
CN109857368A (en) * | 2018-12-20 | 2019-06-07 | 上海大学 | A kind of digit is numerous, can be grouped, restructural multivalue electronic calculators and method |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6557096B1 (en) * | 1999-10-25 | 2003-04-29 | Intel Corporation | Processors with data typer and aligner selectively coupling data bits of data buses to adder and multiplier functional blocks to execute instructions with flexible data types |
US7237097B2 (en) * | 2001-02-21 | 2007-06-26 | Mips Technologies, Inc. | Partial bitwise permutations |
-
2004
- 2004-01-20 CN CNB2004100235431A patent/CN100353702C/en not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169866B (en) * | 2006-10-26 | 2010-09-01 | 朱明程 | Self-reconfigurable on-chip multimedia processing system and its self-reconfiguration realization method |
WO2012136065A1 (en) * | 2011-04-07 | 2012-10-11 | 中兴通讯股份有限公司 | Method and device of supporting arbitrary replacement among multiple data units |
CN102737007A (en) * | 2011-04-07 | 2012-10-17 | 中兴通讯股份有限公司 | Method and device supporting random replacement of plurality of data units |
CN102737007B (en) * | 2011-04-07 | 2015-01-28 | 中兴通讯股份有限公司 | Method and device supporting random replacement of plurality of data units |
US9332495B2 (en) | 2011-04-07 | 2016-05-03 | Zte Corporation | Method and device of supporting arbitrary replacement of multiple data units |
CN103297223A (en) * | 2013-05-07 | 2013-09-11 | 北京航空航天大学 | Self-recovery fault-tolerant AES structure based on reconfigurable dynamic state and encryption method thereof |
CN103297223B (en) * | 2013-05-07 | 2017-06-06 | 北京航空航天大学 | The fault-tolerant AES devices of self- recoverage and its encryption method based on dynamic reconfigurable |
CN109857368A (en) * | 2018-12-20 | 2019-06-07 | 上海大学 | A kind of digit is numerous, can be grouped, restructural multivalue electronic calculators and method |
CN109857368B (en) * | 2018-12-20 | 2022-07-26 | 上海大学 | Multi-digit, grouping and reconfigurable multi-value electronic arithmetic device and method |
Also Published As
Publication number | Publication date |
---|---|
CN100353702C (en) | 2007-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8705731B2 (en) | Selection of a lookup table with data masked with a combination of an additive and multiplicative mask | |
CN110892673A (en) | Secure hardware signatures and related methods and applications | |
CN1648967A (en) | Cryptographic apparatus, cryptographic method, and storage medium thereof | |
CA2507620C (en) | Addresses generation for interleavers in turbo encoders and decoders | |
CN101996298A (en) | Encrypting method and decrypting method corresponding to same | |
CN101034978A (en) | Table splitting for cryptographic processes | |
CN101335616B (en) | Symmetric ciphering method having infinite cipher key space | |
Stefanov et al. | FastPRP: Fast pseudo-random permutations for small domains | |
CN108206736A (en) | A kind of lightweight cryptographic algorithm HBcipher implementation methods and device | |
Li et al. | Metadedup: Deduplicating metadata in encrypted deduplication via indirection | |
CN116961958A (en) | Data encryption method and device, electronic equipment and storage medium | |
CN1788245A (en) | Digital rights management | |
CN1558588A (en) | Method for designing reconfigurable substitution module of reconfigurable cipher code coprocessor | |
CA3180915A1 (en) | Shapeshift data encryption methods and systems | |
US11477172B2 (en) | Securing data compression | |
CN105933120A (en) | Spark platform-based password hash value recovery method and device | |
CN101138195A (en) | Method system and device for generation of a pseudo-random data sequence | |
CN113541942B (en) | Digital content encryption and decryption method based on ARX white-box block cipher | |
CN1558590A (en) | Reconfigurable linear feedback shifting register | |
CN105376054A (en) | Method for extracting ciphertext based on random matrix | |
Ke et al. | An improved emd parallel steganography algorithm | |
CN1558587A (en) | Method for designing reconfigurable S cassette module of reconfigurable cipher code coprocessor | |
CN1558589A (en) | Shifting module of reconfigurable cipher code coprocessor | |
CN1273946C (en) | Arithmetic device and encryption/decryption device | |
CN117978367B (en) | Encryption method based on RISC-V architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20071205 Termination date: 20130120 |