2. Preliminaries

In this chapter, we present computational aspects of quantum fingerprinting, discuss cryptographical properties of quantum hashing, and present the possible use of quantum hashing for

Fingerprinting in complexity theory is a procedure that maps a large data item to a much shorter string, its fingerprint, that identifies the original data (with high probability). The key properties of classical fingerprinting methods are (i) they allow to build efficient randomized

Rusins Freivalds was one of the first researchers who introduced methods (later called fingerprinting) for constructing efficient randomized algorithms (which are more efficient than any

In quantum case, fingerprinting is a procedure that maps classical data to a quantum state that identifies the original data (with high probability). One of the first applications of the quantum fingerprinting method is due to Ambainis and Freivalds [4]: for a specific language, they have constructed a quantum finite automaton with an exponentially smaller size than any classical randomized automaton. An explicit definition of the quantum fingerprinting was introduced by Buhrman et al. [5] in (2001) for constructing efficient quantum communication protocol for equality testing. It is worth noting that the fingerprinting by Buhrman et al. has been used as a

Cryptographic hashing has a lot of fruitful applications in cryptography. Note that in cryptography functions satisfying (i) one-way property and (ii) collision resistance property (in different specific meanings) are called hash functions, and we propose to do so when we are considering cryptographical aspects of quantum functions with the above properties. So, we suggest to call a quantum function that satisfies properties (i) and (ii) (in the quantum setting), a cryptographic quantum hash function or just quantum hash function. Note, however, that there is only a thin line between the notions of quantum fingerprinting and quantum hashing. One of the first considerations of a quantum function (that maps classical words into quantum states) as a cryptographic primitive, having one-way property and collision resistance property is due to [6], where the quantum fingerprinting function from [5] was used. Another approach to constructing quantum hash functions from quantum walks was considered in [8, 9, 10], and it resulted in privacy amplification in quantum key distribution and other useful

In Section 3, we consider quantum fingerprinting as a mapping of classical inputs to quantum states, which allows to construct efficient quantum algorithms for computing Boolean functions. We consider the quantum fingerprinting function from [5] as well as the quantum

computational algorithms and (ii) the resulting algorithms have bounded error [1].

quantum hash-based message authentication codes (QMAC).

1.1. Classical and quantum fingerprinting

18 Advanced Technologies of Quantum Key Distribution

deterministic algorithm) [2, 3].

cryptographic hash function in [6, 7].

1.2. Cryptographic quantum hashing

applications.

1.3. The chapter organization

We recall that mathematically a qubit is described as a unit vector in the two-dimensional Hilbert complex space ℋ<sup>2</sup> . Let s ≥ 1. Let ℋ<sup>d</sup> be the d = 2<sup>s</sup> -dimensional Hilbert space, describing the states of s qubits. Another notation for ℋ<sup>d</sup> is (ℋ<sup>2</sup> ) ⊗s , i.e., ℋ<sup>d</sup> is made up of s copies of a single qubit space ℋ<sup>2</sup> .

$$\left(\mathcal{H}^2\right)^{\otimes s} = \mathcal{H}^2 \otimes , \ldots, \otimes \mathcal{H}^2 = \mathcal{H}^{2^\*}.\tag{1}$$

Conventionally, we use notation |i〉 for the vector from H<sup>d</sup> , which has a 1 on the i-th position and 0 elsewhere. An orthonormal basis |1〉, … ,|d〉 is usually referred to as the standard computational basis.

We let ℤ<sup>q</sup> to be a finite additive group of Z/qZ, the integers modulo q. Let Σ<sup>k</sup> be a set of words of length <sup>k</sup> over a finite alphabet <sup>Σ</sup>. Let <sup>X</sup> be a finite set. In this paper, we let <sup>X</sup> <sup>¼</sup> <sup>Σ</sup><sup>k</sup> or <sup>X</sup> <sup>¼</sup> <sup>ℤ</sup>q. For K ¼ ∣X∣ and integer s ≥ 1, we define a (K;s) classical-quantum function (or just quantum function) to be mapping

$$
\psi: \mathbb{X} \to \left(\mathcal{H}^2\right)^{\otimes s} \qquad \text{or} \qquad \psi: \mathbb{w} \mapsto |\psi(w)\rangle. \tag{2}
$$

An (n, k, d) error-correcting code is a map C :Σ<sup>k</sup>

The code is binary if Σ = {0, 1}.

word w as

error of 1/2(1 + 〈ψFE

for any chosen c > 2.

mined by a word w as

ively via probabilistic argument).

ψFE

�

ð Þj x ψFE

�D E �

ð Þy

� � � ¼ 1 n Xn i¼1

, the Hamming distance d(C(w), C(w<sup>0</sup>

Ei(w) is the i-th bit of the codeword E(w).

(x)| ψFE

fingerprints. Their inner product |〈ψFE

(y)〉 2

The construction of the quantum fingerprinting function is as follows.

• Let <sup>s</sup> = log <sup>n</sup> + 1. Define the quantum function <sup>ψ</sup>FE : {0, 1}<sup>k</sup>

jψFE

ð Þ <sup>w</sup> 〉 <sup>¼</sup> <sup>1</sup>

), where |ψFE

tum fingerprinting. We define the quantum fingerprinting function ψ: {0, 1}<sup>k</sup>

This function gives the following bound for the fingerprints of distinct inputs

ψFE ð Þ¼ w

• Let c > 2 and ε < 1. Let k be a positive integer and n = ck. Let E : {0, 1}<sup>k</sup>

binary error-correcting code with Hamming distance d ≥ (1 � ε)n.

• Define a family of functions FE = {E1, …, En}, where Ei : f g <sup>0</sup>; <sup>1</sup> <sup>k</sup> ! <sup>F</sup><sup>2</sup> is defined by the rule:

ffiffiffi <sup>n</sup> <sup>p</sup> <sup>X</sup><sup>n</sup> i¼1

Original paper of [5] used this function to construct a quantum communication protocol that tests equality in the simultaneous message passing (SMP) model with no shared resources. This protocol requires O(log n) qubits to compare n-bit binary strings, which is exponentially smaller than any classical deterministic or even randomized protocol in the SMP setting with no shared randomness. The proposed quantum protocol has one-sided

(x)| ψFE

distance of the underlying code is (1 � ε)n. Thus, ε is determined by the chosen errorcorrecting code. For instance, Justesen codes mentioned in the paper give ε < 9/10 + 1/(15c)

In the same paper, it was shown that this result can be improved by choosing an errorcorrecting code with Hamming distance between any two distinct code words (1 � ε)n/2 and (1 + ε)n/2 for any ε > 0 (however, the existence of such codes can only be proved nonconstruct-

Further research on this topic mostly used the following phase presentation version of quan-

1 ffiffiffi <sup>n</sup> <sup>p</sup> <sup>X</sup><sup>n</sup> i¼1

(x)〉 and |ψFE

ð Þ �<sup>1</sup> Eið Þ <sup>w</sup> <sup>⊕</sup> Ei <sup>w</sup><sup>0</sup> ð Þ <sup>¼</sup> <sup>n</sup> � dEwð Þ; E w<sup>0</sup> ð Þ ð Þ

w0 ∈ Σ<sup>k</sup> !Σ<sup>n</sup> such that, for any two distinct words <sup>w</sup>,

http://dx.doi.org/10.5772/intechopen.70692

On Quantum Fingerprinting and Quantum Cryptographic Hashing

!(ℋ<sup>2</sup> ) ⊗s

jiijEið Þi w : (4)

(y)〉 are two different quantum

!(ℋ<sup>2</sup> ) <sup>⊗</sup><sup>s</sup> deter-

≤ ε (6)

(y)〉| is bounded by ε, if the Hamming

ð Þ �<sup>1</sup> Eið Þ <sup>w</sup> <sup>j</sup>i<sup>i</sup> (5)

n

) is at least d.

21

!{0, 1}<sup>n</sup> be a (n, <sup>k</sup>, <sup>d</sup>)

, determined by a

)) between code words C(w) and C(w<sup>0</sup>

In order to outline a computational aspect and present a procedure for quantum function ψ, we define ψ to be a unitary transformation (determined by an element w ∈ X) of the initial state |ψ0〉∈ (ℋ<sup>2</sup> ) <sup>⊗</sup><sup>s</sup> to a quantum state |ψ(w)〉∈(ℋ<sup>2</sup> ) ⊗s

$$\psi : \{ \left| \psi\_0 \right> \} \times \mathbb{X} \to \left( \mathcal{H}^2 \right)^{\otimes s} \qquad \left| \psi(w) \right> = \mathcal{U}(w) \left| \psi\_0 \right> \tag{3}$$

where U(w) is a unitary matrix.

Extracting information on w from |ψ(w)〉 is a result of measurements of quantum state |ψ(w)〉. In this chapter, we consider quantum transformations and measurements of quantum states with respect to computational basis.
