Ich extrahiere Funktionen von Android .APK-Dateien mit androguard und jetzt muss ich die Seriennummer (*) aus seiner Signaturdatei (in der Regel CERT.RSA) extrahieren. Ich habe asn1crypto gefunden, aber ich verstehe nicht ganz, wie man es mit pkcs7 benutzt. Gibt es ein Python-Paket, das für diesen Zweck geeignet ist?Gibt es ein Python-Paket zum Parsen von pkcs7?
0
A
Antwort
1
Kommentar: Ich habe als Speicherobjekt pkcs7, keine Datei
PyOpenSSL
liest nicht aus Datei!
OpenSSL.crypto.load_pkcs7_data (Typ, Puffer)
Last pkcs7 Daten aus dem Zeichenfolgenpuffer mit dem Typ Typ kodiert.
Der Typ muss entweder FILETYPE_PEM oder FILETYPE_ASN1) sein.
from OpenSSL import crypto
pkcs7 = crypto.load_pkcs7_data(crypto.FILETYPE_ASN1,
open('certs/signature.der', 'rb').read())
certs = get_certificates(pkcs7)
for cert in certs:
print('Subject:{}, Serial Nnumber:{}'.
format(cert.get_subject(), cert.get_serial_number()))
>>>Subject:<X509Name object '/CN=key1'>, Serial Nnumber:13315126025841024674
>>>Subject:<X509Name object '/CN=key2'>, Serial Nnumber:14142490995367396705
Frage: Python-Paket für pkcs7 Parsen?
Sie können PKCS # 7 PEM mit OpenSSL konvertieren, ist PEM lesbar mit PyOpenSSL
openssl pkcs7 -print_certs -in sample.p7b -out sample.cer
lesen, dass relevante SO Antwort: pyOpenSSL's PKCS7
Verwandte Themen
- 1. Gibt es Bibliotheken zum Parsen von AutoCAD-Dateien?
- 2. Gibt es irgendwelche Tools zum Parsen von HTML mit GWT
- 3. Gibt es ein C# -Framework oder einen Code zum Parsen von * blg Perfomance Counter-Protokolldateien?
- 4. Gibt es ein Perl-Modul zum Analysieren von Säulenschrift?
- 5. Entwurfsmuster zum Parsen von Text
- 6. Gibt es einen Parser/Weg zum Parsen von Wikipedia-Dump-Dateien mit Python?
- 7. Verarbeitungsprogramm zum Parsen von JSON
- 8. Gibt es Bibliotheken zum Parsen von "Zahlenausdrücken" wie 1,2-9,33- in Java
- 9. Ist dies ein gültiger JSON zum Parsen?
- 10. PKCS7-Unterzeichnerkette in Python erhalten
- 11. Gibt es eine vorgefertigte Möglichkeit, JSON von VB6 zu parsen?
- 12. Gibt es ein Eclipse-Plugin zum Generieren von Entwurfsmustern?
- 13. Gibt es ein Cmdlet zum Zuordnen von Netzwerklaufwerken?
- 14. Gibt es ein Framework zum Definieren von Parsern in JavaScript?
- 15. Gibt es ein gutes Werkzeug zum Dokumentieren/Überwachen von Systemtests?
- 16. Gibt es ein bevorzugtes Werkzeug zum Bearbeiten von Gemfiles?
- 17. Gibt es ein Tool zum Verfolgen von Java-Methoden?
- 18. Gibt es ein NodeJS-Äquivalent zum Erkennen von Zwischenablageänderungen?
- 19. Gibt es ein Java-Paket zum Erstellen von URLs?
- 20. Gibt es ein Tool zum Neuformatieren von C# -Code?
- 21. Gibt es ein Dienstprogramm zum Aufräumen von VBScript?
- 22. Gibt es ein gutes Werkzeug zum programmatischen Erstellen von Diagrammen?
- 23. Gibt es ein Tool zum Profilieren von SQLite-Abfragen?
- 24. Gibt es ein Skript zum Ändern der Größe von SVG?
- 25. Gibt es ein Tool zum Modellieren/Simulieren von Software-Parallelität?
- 26. Gibt es ein Tool zum Sammeln von Win32 Anwendungsnutzungsstatistiken?
- 27. Gibt es ein Werkzeug zum Erkunden/Testen von COM-Objekten?
- 28. Gibt es ein Idiom/Designmuster zum Einschränken von Vorlagen?
- 29. Gibt es ein Tool zum Generieren von DTOs aus Entitäten?
- 30. Gibt es ein Java-Paket zum Testen von RESTful-APIs?
Vielen Dank für Ihre Antwort! Das weiß ich schon, aber ich habe pkcs7 als Speicherobjekt, nicht als Datei. Es ist nicht so, dass ich es nicht als Datei speichern könnte, ich wollte es nur so machen. Deshalb wollte ich ein Python-Paket so schlecht finden. Wie auch immer, da eine Signatur immer dieselbe Struktur hat, analysiere ich einfach ASN1 direkt mit [asn1 package] (https://pypi.python.org/pypi/asn1/2.1.0) und extrahiere eine Seriennummer. –
@Gleb: Meine Antwort aktualisiert – stovfl