Was ist der öffentliche Schlüssel von Oracle?

Ich verwende Oraclize in einem Smart Contract und möchte meinen API-Schlüssel verschlüsseln. Laut http://docs.oraclize.it/#ethereum-advanced-topics-encrypted-queries gibt es ein Python-Skript von Oraclize, das zum Verschlüsseln von Text verwendet wird ( https://github.com/oraclize/encrypted-queries ) , und dieser Befehl sollte beispielsweise "YOUR QUERY" verschlüsseln:

python encrypted_queries_tools.py -e -p 044992e9473b7d90ca54d2886c7addd14a61109af202f1c95e218b0c99eb060c7134c4ae46345d0383ac996185762f04997d6fd6c393c86e4325c469741e64eca9 "YOUR QUERY"

Wenn ich diesen Befehl ausführe, erhalte ich diesen Fehler:

C:\Python27\encrypted-queries-master\encrypted-queries-master\tools>python encrypted_queries_tools.py -e -p 044992e9473b7d90ca54d2886c7addd14a61109af202f1c95e218b0c99eb060c7134c4ae46345d0383ac996185762f04997d6fd6c393c86e4325c469741e64eca9 "YOUR QUERY" File "encrypted_queries_tools.py", line 100 print "Please, provide a valid public key " Ist der auf der Website angegebene öffentliche Schlüssel falsch?

Antworten (1)

Das Skript, das Sie ausführen möchten, ist tatsächlich für Python 2. Sie versuchen, dort Python 3 zu verwenden (wie Sie in Ihrem Github-Problem angegeben haben) und basieren auch auf der Tatsache, dass die Fehlermeldung auf den mit Python 2 formatierten Druck zurückzuführen ist Stellungnahme. Wenn Sie Python 3 verwenden möchten, können Sie das folgende Dienstprogramm verwenden, um den Code nahtlos zu konvertieren, damit er mit Python 3 kompatibel ist: https://docs.python.org/2/library/2to3.html

Wenn Sie Python 2 zur Verfügung haben, sollten Sie das auch verwenden können, stellen Sie einfach sicher, dass alle Module, die es verwendet, installiert und lokal für Sie verfügbar sind, Sie können dafür pip verwenden.