Keywords

1 Introduction

In advanced cyber environment, cybersecurity mechanism plays a guider role to protect the secure information communicated and stored in network facilities [1, 2]. To achieve adequate network security effects, cryptology has to be placed in the essential position [1]. Different from block ciphers that operate with a fixed transformation on a large block of plaintext, stream ciphers operate with a time-varying transformation on individual plaintext digits. Under the stream cipher methodology, Pseudorandom Number Generator (PRNG) is placed in the central part of the mechanism.

From 2000 to 2003, New European Schemes for Signatures, Integrity, and Encryption (NESSIE) were started [3]. During 2004–2008, another European stream cipher project: eSTREAM selected four software and three hardware schemes for ECRYPT stream ciphers [4]. Such extensive international activities on ECRYPT methodologies are showing the ultra-importance of stream cipher technologies in cyber environments for wider security applications.

From a cyber resilience viewpoint [5,6,7], a set of researchers focus attention on leakage-resilient pseudorandom generator. This direction has shown interesting results to protect valuable information from side-channel attack aspects.

Since PRNG plays a key role in stream cipher applications and is the heart of cryptology [1, 8,9,10]. Many mathematical methodologies are applied to this field such as linear automata, cellular automata, Galois fields, and other algebraic constructions [1, 9, 11,12,13,14]. In cryptology, Boolean logic operations are essential to create highly effective cryptology systems [1, 9, 15, 16] as binary logic generates the greatest efficiency through manipulation of only 1’s and 0’s. Therefore, it is advantageous to investigate potential mechanisms in binary logic due to the follow-on effect it has in cryptology.

2 Classical Logic Function Table

A classic logic function in n variables can be represented as a truth table [8, 9]. For a classic sequence in an ordinary number sequence, each table contains \( 2^{n} \) columns and \( 2^{{2^{n} }} \) rows with a total of \( 2^{n} \cdot 2^{{2^{n} }} \) bits, respectively. An example of the standard truth table can be seen in Fig. 1a.

Fig. 1
figure 1

n variable truth table and variant table under P and ∆ operators

3 Variant Logic Function Table

Variant logic construction is a new proposed theoretical structure [17, 18] to extend classical logic from the three basic operators: \( \left\{ { \cap , \cup ,\neg } \right\} \). Two additional vector operators: permutation P and complementary ∆ are included with the original three to form the five basic operators within the novel framework. Let \( S(N) \) denote a permutation group with N elements, then \( S(N) \) contains a total of \( N! \) permutation operators. Let \( B_{2}^{N} = \left\{ {0,1} \right\}^{N} \) denote a binary group with N elements, then \( B_{2}^{N} \) contains a total of \( 2^{N} \) complementary operators.

The permutation (P) and complementary (∆) operators are two vector operators performed on each column vector of \( 2^{{2^{n} }} \) bits. For a given P and ∆, two operators transform the truth table into a variant table. Permutation operators change positions of relevant columns but do not change their values. Complementary operators (∆) do not change the position for each column, but may change entire values of the column. Two given operators can be performed together to generate a variant table for further usages. There are \( 2^{n} \) columns in the table as permutation elements, so this permutation group \( S(2^{n} ) \) contains a total of \( 2^{n} ! \) permutation operators, and its complementary group \( B_{2}^{{2^{n} }} \) includes a total of \( 2^{{2^{n} }} \) complementary operators. An example of the variant table can be seen in Fig. 1b.

4 Variant Method of Pseudorandom Number Generation

  • Input: \( n,P,\Delta ,m,L \) variables, \( n \in N,P \in S(2^{n} ),\Delta ,L,m \in B_{2}^{{2^{n} }} \)

  • Output: \( \left\{ {K_{m} ,K_{m + 1} , \ldots .,K_{m + L - 1} } \right\}L \cdot 2^{n} \) bit sequences

  • Method: The process for pseudorandom number generation can be seen in Fig. 2.

    Fig. 2
    figure 2

    Variant method of random number generation

    n is the input variable number. Using n variables, a standard truth table can be constructed in \( 2^{n} \) columns and \( 2^{{2^{n} }} \) rows. P is a given permutation operator \( P = (P_{{2^{n} - 1}} \ldots P_{I} \ldots P_{0} ),\quad P \in S(2^{n} ) \), where \( P_{I} \) corresponds to the I-th column. A given complementary operator \( \Delta \in B_{2}^{{2^{n} }} \), \( \Delta = (\Delta_{{2^{n} - 1}} \ldots \Delta_{I} \ldots \Delta_{0} ) \), \( \Delta_{I} \in B_{2} \) shows that the operator is performed on the I-th column, if \( \Delta_{I} = 0 \), all values of the column are reversed and if \( \Delta_{I} = 1 \), all values are invariant. \( 0 \le m < 2^{{2^{n} }} \) is an initial position for output sequences; from \( K_{m} \), L conditions, \( \left\{ {K_{m + i} } \right\}_{i = 0}^{L - 1} \) are output generated 0–1 bit sequences.

5 Sequence Generation Example

For convenient understanding procedure, an example is selected to show in the n = 2 case shown in Fig. 3. Parameters are initialized to arbitrary values: n = 2, P = (1203), and ∆ = (0110).

Fig. 3
figure 3

Example for generation of pseudorandom sequence

After the table is generated, the pseudorandom sequence can read off the table. For m = 4 and L = 6 conditions, a random number starting at position 4 of the variant table containing six elements can be found.

6 Complexity Analysis

From an application viewpoint, it is important to have the exact complexity evaluation for the method. In the initial stage, it is necessary to manipulate \( 2^{n} \) columns and each column with \( 2^{{2^{n} }} \) rows; the total numbers of \( 2^{n} \cdot 2^{{2^{n} }} \) bits are required. The total complexity is of order \( O(2^{n} \cdot 2^{{2^{n} }} ) \).

To generate variant table values, P operations need at least to manipulate bits once and ∆ operations to manipulate the same number of bits, i.e., \( O(2^{n} \cdot 2^{{2^{n} }} ) \).

Selecting \( L \cdot 2^{n} \) bits from the variant table, it is necessary to perform \( O(L \cdot 2^{n} ) \) operations.

If a full table needs to be generated as a random resource, \( O(2^{n}\,\cdot\,2^{{2^{n} }} ) \) computational complexity is required. In general, their computational complexity is \( O(L \cdot 2^{n} ) \) − \( O(2^{n} \cdot 2^{{2^{n} }} )0 < L < 2^{{2^{n} }} \).

Maximal cycle length: under this construction, the maximal length of the pseudorandom number sequence is \( 2^{n}\,\cdot\,2^{{2^{n} }} \) bits. For any short sequences, the output sequence has a length less than this number. No clear cycle effects can be directly observed.

7 Conclusion

It is important to design this new PRNG method to use variant logic construction. Since P and ∆ potentially have a huge configuration space \( 2^{n} ! \times 2^{{2^{n} }} \) times larger than classical logic function spaces. Exploring how difficulties for this mechanism to be decoded will be the main issue for coming cryptologist’s theoretical targets. In addition, it is important to understand what type of distribution will be relevant to this generation mechanism. Owing to intrinsic complexity of variant logic construction, this provides potential barriers to protect this type of sequences decoded directly.

Considering PRNG placed in the central part of stream cipher mechanism, and stream cipher technologies are more and more important in advanced network security environment, higher performance methodology and relevant implementation will be useful in this field. Ongoing approaches will focus on whether this mechanism provides better PRNG methods to help different protections on side-channel attacks [1,2,3,4,5,6,7, 19, 20] in wider network applications to resolve practical leakage-resilient issues in the future.