0

我正在使用 rsa 并从 ini 文件中读取密钥

public_key = rsa.PublicKey(config['public_key.n'],config['public_key.e'])

但我收到此错误

TypeError: unsupported operand type(s) for -: 'unicode' and 'int'

这是我的ini文件内容

[RSA]
public_key.n = 183123867919799980745597191341507205007 
public_key.e = 65537 
private_key.d = 73725121001326311644202607901943421673 
private_key.p = 216949189269184531091 
private_key.q = 844086435799421077

我成功读取了ini文件(我在控制台中打印了它)。请帮我解决这个问题。

4

1 回答 1

0

ConfigParser(或其他访问 ini 文件的方法)返回字符串,而不是整数。您可以在创建密钥之前转换它们

public_key = rsa.PublicKey(int(config['public_key.n']),int(config['public_key.e']))

或在读取文件时使用 RawConfigParser.getint 获取值。

于 2013-10-03T13:02:14.320 回答