ARX is a comprehensive open source data anonymization tool aiming to provide scalability and usability.

Fabian Prasser c18e3d2aa8 Remove TODO 4 years ago
.github 180a92d467 Update issue templates 5 years ago
.idea d029d800db Implement the SafePub algorithm (#237) 6 years ago
data c34b777dba Merge SWT updates (#317) 4 years ago
doc 858e2dcbbf Update Javadoc 5 years ago
lib 44fed2197a Make sure that dependencies files are Java 8 compatible 4 years ago
logo 5c3c99f5ea Merge remote-tracking branch 'origin/highdimensional' 9 years ago
src c18e3d2aa8 Remove TODO 4 years ago
.gitignore 5f487cf002 update intellij dependencies (#211) 6 years ago
.mailmap ef7c2e0b32 Update mailmap file 8 years ago
LICENSE 5c3c99f5ea Merge remote-tracking branch 'origin/highdimensional' 9 years ago
arx.iml e41d45714a Improve support for high-dimensional data in core and GUI (#265) 5 years ago
build.xml c34b777dba Merge SWT updates (#317) 4 years ago
code_of_conduct.md c684958b96 Update code_of_conduct.md 5 years ago
contributing.md fa4aae366c Create contributing.md 5 years ago
pom.xml d02bb3abe9 Bump mysql-connector-java from 5.1.38 to 8.0.16 (#319) 4 years ago
readme.md 9901cff3bf Update readme.md 4 years ago

readme.md

ARX - Open Source Data Anonymization Software

Note

ARX is the result of a research project. To support our research, please cite one of our papers instead of referencing our website in scientific articles. You can find an overview of papers about ARX here. If you are not sure which paper to cite, we recommend this one:

Prasser F., Eicher J., Spengler H., Bild R., Kuhn K. A. (2020) Flexible Data Anonymization Using ARX — Current Status and Challenges Ahead. Software Pract Exper 2020;1–28. (Link)

Thanks!

Introduction

ARX is a comprehensive open source software for anonymizing sensitive personal data. It has been designed from the ground up to provide high scalability, ease of use and a tight integration of the many different aspects relevant to data anonymization. Its highlights include:

  • Utility-focused anonymization using different statistical models
  • Syntactic privacy models, such as k-anonymity, ℓ-diversity, t-closeness and δ-presence
  • Semantic privacy models, such as (ɛ, δ)-differential privacy
  • Methods for optimizing the profitability of data publishing based on monetary cost-benefit analyses
  • Data transformation with generalization, suppression, microaggregation and top/bottom coding as well as global and local recoding
  • Methods for analyzing data utility
  • Methods for analyzing re-identification risks

The software is able to handle very large datasets on commodity hardware and features an intuitive cross-platform graphical user interface. You can find further information on the project website.

Development setup

Currently, the main development of ARX is carried out using Eclipse as an IDE and Ant as a build tool. Support for further IDEs such as IntelliJ IDEA and Maven is experimental.

The Ant build script features various targets that can be used to build different versions of ARX (e.g. including GUI code or not). To build only the core code using Maven, set the system property core to true. This will build a platform independent jar with the ARX main code module and no GUI components:

$ mvn compile -Dcore=true

Contributing and code of conduct

See here and here.

License

ARX (C) 2012 - 2020 Fabian Prasser and Contributors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

External Libraries

ARX uses external libraries. Their licenses are listed in the respective folders.