X-Anonymity Method

X-Anonymity Method

Explore the X-Anonymity method, which uses the first 10 SHA-1 hexadecimal characters, t-closeness-based hash groups, and client-side comparison.

Your password is converted into a hash using the SHA-1 algorithm, and only its quasi-identifier portion (the first 10 hexadecimal characters) is sent to the servers. Based on the query result and the t-closeness (homogenization) value, the servers return the determined number of hash groups to the requester. The hash value belonging to the queried password is compared in the browser. This provides complete privacy. A detailed explanation of the X-Anonymity method is provided in the section below.

  • X-Anonymity Method
  • Client-Side Matching
  • Complete Privacy and Confidentiality

k-Anonymity Method

k-Anonymity is an anonymization property requiring at least k rows with the same quasi-identifier values in a dataset to be published. Thus, each person becomes indistinguishable from at least k-1 other people.

Quasi-Identifier: Fields that are not a person's first and last name but can narrow down their identity (such as age, postal code, and gender).

Equivalence class: A group of rows whose quasi-identifier values are exactly the same. The size of each group must be ≥ k.

Methods: Groups are enlarged through techniques such as generalization (age 31→“30-39”) and suppression (removing the last 2 digits of the ZIP code).

3-Anonymity Example

Original data

AgeZIPGender
3134742Male
3334742Male
2934740Female

Anonymized data

AgeZIPGender
30-393474*Male
30-393474*Male
20-293474*Female

At least 3 records with the same pattern must appear in the published table. More rows are added or the fields are generalized further when necessary. The purpose is to prevent a single identity from being inferred from this three-person group.

It is vulnerable to content homogeneity attacks (when the sensitive values in the group are the same) and background knowledge attacks. For this reason, most applications supplement it with additional criteria such as ℓ-diversity and t-closeness.

The choice of K depends on the risk appetite, data size, and publication purpose. Values between 3 and 10 are generally selected. The utility-privacy balance is monitored while providing k-anonymity. Excessive generalization reduces analytical value and negatively affects application performance. Less generalization causes anonymity to decrease.

X-Anonymity Method

X-Anonymity is a method developed to provide the highest level of privacy for password queries. The first 10 hexadecimal characters of the SHA-1 hash value are used as a quasi-identifier. To increase the homogeneity of the equivalence class formed by querying this value, the equivalence class group is generalized according to the t-closeness value. The hash group resulting from this generalization is sent to the client. Because the full hash value of the queried password is available on the client, the client performs this comparison and obtains the actual result.

In X-Anonymity, the x value arises according to the t-closeness value and varies with every query. The x expression is used because there is no fixed value and it changes with every query.

Example

Let the queried password be GizliParola.

SHA-1 Hash

17591232b850130594012a3dc974c98eb4ba1d9b

Quasi-Identifier

17591232b8

Equivalence Class

17591232b8f3a4d9c0e17b5294d1c0a3f8b21d6a
17591232b8c7e5f1aa9240bd3e6f5a19d0c4b87e
17591232b8019d4ac3fbe72d5a8490ef22a6c53b

When the t-closeness value is taken as 2, the X-Anonymity output group is:

17591232b8f3a4d9c0e17b5294d1c0a3f8b21d6a
17591232b8c7e5f1aa9240bd3e6f5a19d0c4b87e
17591232b8019d4ac3fbe72d5a8490ef22a6c53b
17591232b8de204af91c3b50762ac5d17e90fa34
17591232b8a4f7c2d91eb506c3e7a1b5f20493ce
17591232b8bb09e1f7d4c2a9e0156bf2cd884f70

The application returns this group for the 17591232b8 quasi-identifier query.

The client compares the full hash within this group.

X-Anonymity Features

  • The K value varies with every query. Thus, anonymization is provided at the highest level.
  • Query performance is improved by increasing the number of quasi-identifiers.
  • The equivalence class is created with less real data. Complete homogeneity is provided in the group returned to the client.
  • The query cannot be captured. Meaningful data cannot be obtained from a query captured either on the server side or from network traffic.