首页 > 其他分享 >cryptography签名数据方法

cryptography签名数据方法

时间:2024-07-19 12:40:01浏览次数:9  
标签:私钥 cryptography 方法 pem 签名 key import data

简介

在非对称加密(公/私钥)体系中,一般有两种应用场景:

  1. 公钥加密 ---> 私钥解密
  2. 私钥签名 ---> 公钥验证签名

数字签名在网络通信中是一种防伪和防抵赖技术。

image

RSA私钥签名及验证

  • 加密算法:RSA
  • 哈希算法:SHA256
from cryptography.hazmat.primitives import hashes, serialization
from cryptography.hazmat.primitives.asymmetric import padding

data = b'hello,wolrd'

key = serialization.load_pem_private_key(key_pem)
sig = key.sign(data, padding=padding.PKCS1v15(), algorithm=hashes.SHA256())


椭圆曲线私钥签名及验证

  • 加密算法:EC
  • 哈希算法:SHA256
from cryptography.hazmat.primitives import hashes, serialization
from cryptography.hazmat.primitives.asymmetric import ec, padding, rsa
data = b'hello,wolrd'

key = serialization.load_pem_private_key(key_pem)
sig = key.sign(data, ec.ECDSA(hashes.SHA256()))


国密签名及验证

  • 加密算法:SM2
  • 哈希算法:SM3
```python
from gm_crypto.sm2 import SM2PrivateKey

data = b'hello,wolrd'

key = SM2PrivateKey.load(key_pem)
sig = key.sign(data, hash_type='SM3')


标签:私钥,cryptography,方法,pem,签名,key,import,data
From: https://www.cnblogs.com/superhin/p/18311265/cryptography_sign_with_key

相关文章

  • 委托类型,表示一个方法,该方法接受两个参数
    在您提供的代码片段中,DownloadFileCompleted是一个公共属性,其类型为Action<object,AsyncCompletedEventArgs>。这是一个委托类型,表示一个方法,该方法接受两个参数:第一个参数是object类型,通常用于传递事件源(即触发事件的对象);第二个参数是AsyncCompletedEventArgs类型,它包含了......
  • 一些操作线性表的函数及使用方法
    线性表的增删查改头文件seqlist.h#ifndefSEQLIST#defineSEQLIST//#include<myhead.h>#include<stdio.h>#include<stdlib.h>#include<string.h>#defineMAXSIZE100typedefintdatatype;typedefstruct{datatypedata[MAXSIZE];in......
  • 模板方法设计模式
    模板方法设计模式:模板方法设计模式:解决方法中存在重复代码的问题。  模板方法设计模式的写法:1、定义一个抽象类2、在里面定义2个方法​一个是模板方法:把相同代码放里面去​一个是抽象方法:具体实现交给子类完成建议使用final关键字修饰模板方法:​模板方......
  • Windows虚拟摄像头有哪些?分享5个方法,手机一键替换电脑摄像头!
    Windows虚拟摄像头怎么用?当我们的电脑缺少摄像头时,我们可以借助虚拟摄像头实现。手机作为电脑摄像头的需求日益增长,本文就来给大家详细介绍,关于电脑虚拟摄像头的使用和说明,一起来看看吧!(一)常见的Windows虚拟摄像头软件推荐金虚拟摄像头:支持WiFi/USB/IP多种连接方式,即开即连。......
  • 如何恢复电脑上删除的文件?快速恢复被删除文件的技巧【5个实用方法】
    如何恢复电脑上删除的文件?电脑误删文件的情况很经常发生,删除文件后第一时间可以按下组合键Ctrl+Z撤销,这样能挽回99%以上的文件。当然,如果已经彻底删除,那么可以了解下本文整理的方法找回。(一)恢复电脑删除的文件主要有以下方法使用回收站恢复:大部分文件删除后都会暂存到点电脑......
  • 电脑怎么压缩文件?分享5个压缩软件【常见压缩方法】
    电脑怎么压缩文件?压缩文件是一种常见的操作,压缩文件可以减少文件的体积,便于存储和传输。本文介绍几种常见的压缩文件方法和电脑压缩工具。方法一:使用金舟压缩宝金舟压缩宝是一款功能全面,支持视频、GIF、图片、音频、文档压缩的国产软件,支持对PDF、PPT、Word、Excel进行压缩......
  • 【笔记】【THM】Introduction to Cryptography(密码学简介)
    【THM】IntroductiontoCryptography(密码学简介)-学习本文相关的TryHackMe实验房间链接:https://tryhackme.com/r/room/cryptographyintro本文相关内容:了解AES、Diffie-Hellman密钥交换、哈希、PKI和TLS等加密算法。(大部分为机翻,若有错误请指出)介绍这个房间的目的是向......
  • 让接口自动化测试~更有效的统计方法!
    01覆盖率概念接口自动化测试是现代软件开发中不可或缺的一环,它能够帮助开发团队自动化执行测试用例,以快速而准确地发现并修复软件缺陷。而覆盖率统计则是在测试执行完成后,帮助测试团队了解哪些代码路径被覆盖了,哪些未被覆盖的技术手段,下面我将介绍一下接口自动化测试覆盖......
  • Java中interface的default和static方法
    Java中interface的default和static方法Java中interface的default和static方法完整代码及其运行结果从Java8开始:static方法:接口不能通过实例调用static方法接口中的static方法不能被继承子类不能继承接口的static方法,可以继承、不能覆写父类的static方法。default......
  • html+canvas 实现签名功能-手机触摸
    手机上的效果图需要注意,手机触摸和鼠标不是一个事件,不能通用,上一篇是关于使用鼠标的样例相关代码<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0&......