正在關注this post我正在創建一個小型Python腳本,可以輸入公共RSA密鑰並輸出私有RSA密鑰。Argparse:如果提供另一個參數,則繞過參數
現在它通過傳遞的參數是這樣的:
./Converter.py -input publikey.pem
這是代碼:
<!-- language: lang-py -->
parser = argparse.ArgumentParser()
parser.add_argument('-i', dest='infile', help="input a .pem file which contains pubilc key")
args = parser.parse_args()
# --- Here we search for n and e ---
PublicKey = args.infile
OpenPublicKey = open(PublicKey, 'r')
ReadPublicKey = OpenPublicKey.read()
TheKey = RSA.importKey(ReadPublicKey)
n = long(TheKey.n)
e = long(TheKey.e)
print 'This is modulus n: ', n, '\n'
print 'This is public exponent e: ', e, '\n'
我也想劇本的時候沒有公鑰.pem
文件工作,在這種情況下用戶需要輸入n
和e
這樣:
./Converter.py -n 7919 -e 65537
我使用的是,現在基本上Python正在從.pem
文件中提取n
和e
。
但我想繞過這種提取時由用戶提供n
和e
爲了找到一個給定的公鑰私鑰,你將不得不因素模'ñ '。請記住,模數'n'應大於'e'(實際上是λ(n)> e') –