README.md 3.67 KB
Newer Older
jvoisin's avatar
jvoisin committed
1
```
atenart's avatar
atenart committed
2
 _____ _____ _____ ___
georg's avatar
georg committed
3
|     |  _  |_   _|_  |  Keep your data,
jvoisin's avatar
jvoisin committed
4
5
| | | |     | | | |  _|     trash your meta!
|_|_|_|__|__| |_| |___|
atenart's avatar
atenart committed
6

jvoisin's avatar
jvoisin committed
7
8
```

9
10
11
This software is currently in **beta**, please don't use it for anything
critical.

jvoisin's avatar
jvoisin committed
12
13
# Metadata and privacy

atenart's avatar
atenart committed
14
15
16
17
Metadata consist of information that characterizes data.
Metadata are used to provide documentation for data products.
In essence, metadata answer who, what, when, where, why, and how about
every facet of the data that are being documented.
jvoisin's avatar
jvoisin committed
18

atenart's avatar
atenart committed
19
20
21
22
23
Metadata within a file can tell a lot about you.
Cameras record data about when a picture was taken and what
camera was used. Office documents like PDF or Office automatically adds
author and company information to documents and spreadsheets.
Maybe you don't want to disclose those information on the web.
jvoisin's avatar
jvoisin committed
24
25
26

This is precisely the job of MAT2: getting rid, as much as possible, of
metadata.
jvoisin's avatar
jvoisin committed
27

jvoisin's avatar
jvoisin committed
28
29
30
31
32
33
34
# Requirements

- `python3-mutagen` for audio support
- `python3-gi-cairo` and `gir1.2-poppler-0.18` for PDF support
- `gir1.2-gdkpixbuf-2.0` for images support
- `libimage-exiftool-perl` for everything else

35
Please note that MAT2 requires at least Python3.5, meaning that it
atenart's avatar
atenart committed
36
doesn't run on [Debian Jessie](https://packages.debian.org/jessie/python3),
jvoisin's avatar
jvoisin committed
37

atenart's avatar
atenart committed
38
# Running the test suite
jvoisin's avatar
jvoisin committed
39
40
41
42

```bash
$ python3 -m unittest discover -v
```
jvoisin's avatar
jvoisin committed
43

jvoisin's avatar
jvoisin committed
44
# How to use MAT2
jvoisin's avatar
jvoisin committed
45
46

```bash
47
usage: mat2 [-h] [-v] [-l] [-s | -L] [files [files ...]]
jvoisin's avatar
jvoisin committed
48
49
50
51
52
53
54
55
56
57
58
59
60

Metadata anonymisation toolkit 2

positional arguments:
  files

optional arguments:
  -h, --help         show this help message and exit
  -v, --version      show program's version number and exit
  -l, --list         list all supported fileformats
  -s, --show         list all the harmful metadata of a file without removing
                     them
  -L, --lightweight  remove SOME metadata
jvoisin's avatar
jvoisin committed
61
62
```

63
64
65
66
67
68
69
70
71
72
# Notes about detecting metadata

While MAT2 is doing its very best to display metadata when the `--show` flag is
passed, it doesn't mean that a file is clean from any metadata if MAT2 doesn't
show any. There is no reliable way to detect every single possible metadata for
complex file formats.

This is why you shouldn't rely on metadata's presence to decide if your file must
be cleaned or not.

atenart's avatar
atenart committed
73
# Related software
jvoisin's avatar
jvoisin committed
74

75
- The first iteration of [MAT](https://mat.boum.org)
jvoisin's avatar
jvoisin committed
76
77
- [Exiftool](https://sno.phy.queensu.ca/~phil/exiftool/mat)
- [pdf-redact-tools](https://github.com/firstlookmedia/pdf-redact-tools), that
78
	tries to deal with *printer dots* too.
jvoisin's avatar
jvoisin committed
79
80
- [pdfparanoia](https://github.com/kanzure/pdfparanoia), that removes
	watermarks from PDF.
jvoisin's avatar
jvoisin committed
81

jvoisin's avatar
jvoisin committed
82
83
84
85
86
87
88
# Contact

If possible, use the [issues system](https://0xacab.org/jvoisin/mat2/issues).
If you think that a more private contact is needed (eg. for reporting security issues),
you can email Julien (jvoisin) Voisin at `julien.voisin+mat@dustri.org`,
using the gpg key `9FCDEE9E1A381F311EA62A7404D041E8171901CC`.

jvoisin's avatar
jvoisin committed
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# License

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

Copyright 2018 Julien (jvoisin) Voisin <julien.voisin+mat2@dustri.org>

# Thanks

atenart's avatar
atenart committed
108
MAT2 wouldn't exist without:
jvoisin's avatar
jvoisin committed
109

jvoisin's avatar
jvoisin committed
110
111
- the [Google Summer of Code](https://summerofcode.withgoogle.com/);
- the fine people from [Tails]( https://tails.boum.org);
jvoisin's avatar
jvoisin committed
112
113
114
115
- friends

Many thanks to them!