Yet another Crypto-PAn implementation for Python
This package provides a function to anonymize IP addresses keeping their prefix consistency. This program is based on the paper “Prefix-Preserving IP Address Anonymization: Measurement-based Security Evaluation and a New Cryptography-based Scheme” written by Jun Xu, Jinliang Fan, Mostafa H. Ammar, and Sue B. Moon. The detailed explanation can be found in [Xu2002].
This package supports both IPv4 and IPv6 anonymization.
>>> from yacryptopan import CryptoPAn >>> cp = CryptoPAn('32-char-str-for-AES-key-and-pad.') >>> cp.anonymize('192.0.2.1') '220.127.116.11' >>> cp.anonymize_bin(0xc0000201, version=4) 3221257716L >>> cp.anonymize('2001:db8::1') '27fe:8bc7:fee:1e:1e1f:f0fe:f0e1:83fd' >>> cp.anonymize_bin(0x20010db8000000000000000000000001, version=6) 53161570263948813229648829710638089213L
The source code is available at https://github.com/keiichishima/yacryptopan
Please submit bug reports or patches through the GitHub interface.
[Xu2002] Jun Xu, Jinliang Fan, Mostafa H. Ammar, and Sue B. Moon, “Prefix-Preserving IP Address Anonymization: Measurement-based Security Evaluation and a New Cryptography-based Scheme”, in Proceedings of the IEEE International Conference on Network Protocols, Paris, 2002.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size yacryptopan-0.0.5.tar.gz (4.5 kB)||File type Source||Python version None||Upload date||Hashes View|