在python中使用sha-256对私钥对进行签名

在python中使用sha-256对私钥对进行签名,python,encryption-asymmetric,Python,Encryption Asymmetric,我想知道如何使用sha-256对私钥进行签名。我已经试过了,但没用。。我怎样才能做好呢?顺便说一下,我使用非对称加密来加密通过网络传输的所有文件 #!/usr/bin/python from Crypto.PublicKey import RSA from OpenSSL import SSL import socket import hashlib import os #load public key def publicKey():

我想知道如何使用sha-256对私钥进行签名。我已经试过了,但没用。。我怎样才能做好呢?顺便说一下,我使用非对称加密来加密通过网络传输的所有文件

#!/usr/bin/python
    from Crypto.PublicKey import RSA
    from OpenSSL import SSL
    import socket
    import hashlib
    import os

    #load public key
    def publicKey():
        with open('public_key.key', 'r') as public_file:
            public_key = RSA.importKey(public_file.read())

    #load private key
    def privateKey():
        with open('private_key.key', 'r') as private_file:
            private_key = RSA.importKey(private_file.read())

    if __name__ == '__main__':
        txt = input("what do you want to do?")

首先:不对称加密需要大量的计算能力,对于批量传输,最好只使用对称加密和RSA交换密钥。此外,您的代码不显示任何加密。那么,到目前为止您尝试了什么?我没有使用嵌入式公钥/私钥。我正在从外部文件加载它们等等。到目前为止我做错了吗?我是否必须将我的代码更改为symetric encryption,并在将rsa与该字符串一起使用之后?对消息进行签名意味着您生成了某种东西,证明发送消息的人可以访问您的私钥。如果您将私钥发送给其他人,您的签名将毫无意义。因此,我不确定对私钥进行签名意味着什么。请仅对实际使用私钥的内容使用代码片段。虽然此代码可能会回答此问题,但提供有关如何和/或为什么解决此问题的其他上下文将提高答案的长期价值。
signature = hmac.new(key=private_key, message, digestmod=hashlib.sha256).digest()