python pkcs8 私鑰簽名


python pkcs8 私鑰簽名

  • 生成公私鑰

    openssl genrsa -out rsa_private_key.pem 2048
    
    openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key_2048.pub
    
    openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt > rsa_private_key_pkcs8.pem
    

  • 安裝依賴

    pip install pycryptodome
    
  • 簽名

    from Crypto.Signature import PKCS1_v1_5 as pk
    from Crypto.Hash import SHA
    from Crypto.PublicKey import RSA
    import base64
    
    
    origin_data = 'hello'
    
    
    def rsa_sign(des_reqdata):
        pkcs8_private_key = RSA.importKey(open('rsa_private_key_pkcs8.pem', 'r').read())
        h = SHA.new(des_reqdata)
        signer = pk.new(pkcs8_private_key)
        signature = signer.sign(h)
    
        return base64.b64encode(signature)
    
    
    if __name__ == '__main__':
        data = rsa_sign(origin_data.encode())
        print(data)
    
  • 驗簽


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM