====== Anonymisierung von IP-Adressen ====== ==== tcpdpriv ==== https://ita.ee.lbl.gov/html/contrib/attack50/attack50.html -- Thoughts on How to Mount an Attack on tcpdpriv's -A50 Option ==== Crypto-PAn ==== * https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1181415 -- Prefix-Preserving IP Address Anonymization: Measurement-based Security Evaluation and a New Cryptography-based Scheme * https://conferences.sigcomm.org/imc/2001/imw2001-papers/69.pdf -- On the Design and Performance of Prefix-Preserving IP Traffic Trace Anonymization * https://repository.gatech.edu/server/api/core/bitstreams/003a9648-9015-424e-a1d3-abb94af57ab0/content -- On the Design and Performance of Prefix-Preserving IP Traffic Trace Anonymization (full report?) === C++ === * Reference Implementierung: * https://web.archive.org/web/20180908092841/https://www.cc.gatech.edu/computing/Telecomm/projects/cryptopan/ * Lucents Extension (better randomization): * https://web.archive.org/web/20180908092852/https://www.cc.gatech.edu/computing/Networking/projects/cryptopan/lucent.shtml === Python === Es existieren zwei Packages: - ''pip install pycryptopan'' - funktioniert nicht, Python2? - ''pip install yacryptopan'' - funktioniert auch mit IPv6 - https://github.com/keiichishima/yacryptopan >>> from yacryptopan import CryptoPAn >>> cp = CryptoPAn(b'32-char-str-for-AES-key-and-pad.') >>> cp.anonymize('192.0.2.1') # Test the key from the C++ reference implementation: >>> a = (21,34,23,141,51,164,207,128,19,10,91,22,73,144,125,16,216,152,143,131,121,121,101,39,98,87,76,45,42,132,34,2) >>> c = bytes(a) >>> cp = CryptoPAn(c) # Test the randomness for the first oktett for i in range(0,256): ... s = (str(i)+".1.1.1") ... print(s + " -> ", end=""); cp.anonymize(s)