CN116800434B - 一种利用蓝牙协议进行电子签名的方法 - Google Patents

一种利用蓝牙协议进行电子签名的方法 Download PDF

Info

Publication number
CN116800434B
CN116800434B CN202311021039.7A CN202311021039A CN116800434B CN 116800434 B CN116800434 B CN 116800434B CN 202311021039 A CN202311021039 A CN 202311021039A CN 116800434 B CN116800434 B CN 116800434B
Authority
CN
China
Prior art keywords
mobile phone
private key
bluetooth module
data
bluetooth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311021039.7A
Other languages
English (en)
Other versions
CN116800434A (zh
Inventor
王秀清
张利强
李彦伟
万象
卢利凯
王玥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Henan Informatization Group Co ltd
Original Assignee
Henan Informatization Group Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Henan Informatization Group Co ltd filed Critical Henan Informatization Group Co ltd
Priority to CN202311021039.7A priority Critical patent/CN116800434B/zh
Publication of CN116800434A publication Critical patent/CN116800434A/zh
Application granted granted Critical
Publication of CN116800434B publication Critical patent/CN116800434B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3033Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters details relating to pseudo-prime or prime number generation, e.g. primality test
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/63Location-dependent; Proximity-dependent
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种利用蓝牙协议进行电子签名的方法,涉及电子签名技术领域,为了解决手机端和电脑端电子签名兼容性差的问题。本发明实现手机和电脑设备在短距离范围内的安全数据传输和连接,可以在不同操作系统的手机和电脑之间进行通信和操作,具备较好的跨平台兼容性,使用户能够在电脑上使用手机的私钥进行签名操作,同时保证私钥的安全性,根据数据读取量的数值,将该数据对应至数值大于数据单次传输个数数值的通信信道中,有效的避免了由于传输数据过大而通信信道剩余容量过小的导致的额传输阻塞的问题。

Description

一种利用蓝牙协议进行电子签名的方法
技术领域
本发明涉及电子签名技术领域,具体为一种利用蓝牙协议进行电子签名的方法。
背景技术
电子签名作为一种高效、安全的签署方式得到了广泛应用,涵盖了电子商务、金融、政府机构等多个领域。
公开号为CN103560886B的中国专利公开了一种电子签名设备认证方法,主要通过蓝牙通讯模块与终端进行互相认证,所述电子签名在与所述终端互相认证成功后,与所述终端建立基于蓝牙通信的安全通道,使用蓝牙协议进行电子签名数据的传输,实现了基于蓝牙的电子签名数据传输,解决了电子签名设备不能满足应用需求的问题,上述问题虽然解决了电子签名的问题,但是在实际操作中还存在以下问题:
1.手机端进行手机盾的公私钥设置时,由于没有进行更好的密钥管理,从而导致手机端与电脑端进行签名传输时的安全性降低。
2.当手机端的数据与电脑端的数据进行数据传输时,没有根据传输数据的大小选择相对应的通信信道,从而导致传输过慢。
发明内容
本发明的目的在于提供一种利用蓝牙协议进行电子签名的方法,实现手机和电脑设备在短距离范围内的安全数据传输和连接,可以在不同操作系统的手机和电脑之间进行通信和操作,具备较好的跨平台兼容性,使用户能够在电脑上使用手机的私钥进行签名操作,同时保证私钥的安全性,根据数据读取量的数值,将该数据对应至数值大于数据单次传输个数数值的通信信道中,有效的避免了由于传输数据过大而通信信道剩余容量过小的导致的额传输阻塞的问题,可以解决现有技术中的问题。
为实现上述目的,本发明提供如下技术方案:
一种利用蓝牙协议进行电子签名的方法,包括如下步骤:
S1:手机端设置:手机终端向协作服务器发送终端绑定请求,协作服务器生成子私钥D1和部分公钥P1,部分公钥P1传给移动终端,移动终端响应生成部分子私钥D2,计算出完整公钥P;
S2:电脑端设置:电脑端需要具备蓝牙模块,并在电脑上安装蓝牙程序,蓝牙程序开启后可以通过蓝牙协议与手机建立安全连接;
S3:连接建立:用户在电脑上打开蓝牙程序,启动电脑与手机的蓝牙连接过程,通过蓝牙协议将电脑和手机建立安全的通信通道,并将电脑和手机建立安全通信通道时,将电脑传输的数据容量与通信信道容量进行容量对应,根据数据容量确认对应的通信信道容量;
S4:电子签名:在电脑上需要进行签名操作时,蓝牙程序与手机建立连接发起客户端私钥签名请求并配合客户端获取服务端响应,获取到各参与方的签名值合并操作后,生成最终的数字签名。
优选的,针对S1中协作服务器的子私钥D1和部分公钥P1的生成,用于:
先设置M′=Z||M;Z=Hv(ENTLA||IDA||a||b||Gx||Gy||Ax||Ay);
其中,M′表示为客户端的私密请求的待验证消息;ENTLA表示为IDA的比特长度,为2字节;IDA表示为用户标识默认值见上节;Ax,Ay表示为公钥坐标;a和b表示为Fq中的元素,a和b定义Fq上的一条椭圆曲线E,其中Fq包含q个元素的有限域,E为椭圆线上的所有有理点组成的集合,Gx和Gy表示为椭圆曲线上的两个基点,其阶为素数。
优选的,针对S1中协作服务器的子私钥D1和部分公钥P1的生成,还用于:
密码杂凑函数如以下公式进行计算:
再计算e=Hv(M);
其中,e表示为密码杂凑函数,作用于M的输出值,M表示为客户端的待签名消息,Hv表示为消息摘要长度为v比特的密码杂凑函数,H指的是符合国家密码局标准的杂凑算法。
优选的,所述密码杂凑函数计算后,用于:
移动端的随机数如以下公式进行计算:
根据移动端用随机数发生器产生随机数为k1∈[1,n-1]时;
移动端计算出Q1=k1*G;
其中,Q1表示为有限域Fq中元素的数目,Fq是指包含q个元素的有限域;k1表示为移动端用随机数发生器产生随机数;G表示为椭圆曲线的一个基点,其阶为素数。
优选的,所述移动端的随机数计算完成后,用于:
服务器端的随机数如以下公式进行计算:
根据服务器端产生的随机数为k2∈[1,n-1]时;
服务器端计算出Q2=k2*G;
其中,Q1表示为有限域Fq中元素的数目,Fq是指包含q个元素的有限域;k1表示为移动端用随机数发生器产生随机数;G表示为椭圆曲线的一个基点,其阶为素数;
根据服务器产生的随机数为k3∈[1,n-1]时;
服务器端计算出(x1,y1)=k3*Q1+Q2,以及r=(x1+e)modn;
其中,(x1,y1)表示为整数的集合;modn表示为模n运算,n为基点G的阶,G为椭圆曲线的一个基点,其阶为素数;r表示为随机数k明文的散列值j进行计算得到的结果。
优选的,所述服务器端的随机数计算完成后,用于:
若r不等于0,则计算s2=D1*k3 modn以及s3=D1*(r+k2)modn,将s2、s3、r返回给移动端,若r等于0,则再次进行服务器产生的随机数为k3∈[1,n-1]的计算;
移动端计算s=((D2*k1)*s2+D2*s3-r)mod n,若s不等于0且不等于n-r,则将(r,s)作为完整签名输出,否则再次进行移动端用随机数发生器产生随机数为k1∈[1,n-1]的计算;
其中,r表示为随机数k、基点g、明文的散列值j进行计算得到的结果;s表示为使用r、随机数k和私钥d进行计算得到的结果,并且,r和s的位宽分别为256位;s、r、D后面带的数字为序号;D表示为算法的输入数据,位宽为256位;
并且,r和s分别为32字节,即签名值为64字节。
优选的,针对S3中电脑传输的数据容量与通信信道容量的对应,包括:
将电脑传输的数据进行确认,数据确认后将数据的个数进行获取;
根据获取的数据个数将每个数据个数的读取量进行确认;
数据读取量确认完成后将通信信道容量数据进行获取;
通信信道容量数据获取完成后对每个通信信道进行扫描,获取每个通信信道的信道参数;
其中,信道参数包括通信信道饱和度和当前通信信道剩余容量。
优选的,所述针对S3中电脑传输的数据容量与通信信道容量的对应,还包括:
根据通信信号饱和度和当前通信信道剩余容量,确定单次进行数据传输的每个信道对应的数据单次传输个数;
将数据读取量与通信信道中的数据单次传输个数进行对应;
根据数据读取量的数值,将该数据对应至数值大于数据单次传输个数数值的通信信道中。
优选的,S4中,在电脑上需要进行签名操作时,蓝牙程序与手机建立连接发起客户端私钥签名请求并配合客户端获取服务端响应,包括:
在电脑上需要进行签名操作时,蓝牙模块向手机发送建立连接的请求;
所述手机在接收到所述蓝牙模块发送的连接请求后,设置客户端私钥签名请求发送的允许时间段;其中,所述允许时间段通过如下公式获取:
其中,Tr表示允许时间段;T0表示蓝牙模块向手机发送客户端私钥签名请求的理论数据送达时长;Ty表示蓝牙模块向手机发送客户端私钥签名请求的理论延时时长;n表示历史记录中蓝牙模块成功向所述手机发送客户端私钥签名请求的总次数;Tr i表示第i次蓝牙模块向手机发送客户端私钥签名请求时对应的允许时间段;T i表示第i次蓝牙模块成功向所述手机发送客户端私钥签名请求时对应的数据送达时长;
所述手机将所述允许时间段反馈至蓝牙模块,并与所述蓝牙模块建立连接;
所述蓝牙模块在接收到所述允许时间段后,在所述允许时间段内向所述手机发送客户端私钥签名请求;
当所述手机在所述允许时间段结束时刻仍然没有接收到所述蓝牙模块发送的客户端私钥签名请求,则在所述允许时间段结束时刻断开与蓝牙模块的通信连接;
通过客户端私钥签名请求的发送实际情况判断蓝牙模块的安全性指标参数,通过安全性指标参数对与所述蓝牙模块对应的允许时间段进行调整。
优选的,通过客户端私钥签名请求的发送实际情况判断蓝牙模块的安全性指标参数,通过安全性指标参数对与所述蓝牙模块对应的允许时间段进行调整,包括:
通过客户端私钥签名请求的发送实际情况判断蓝牙模块的安全性指标参数,其中,所述安全性指标参数通过如下公式获取:
其中,S表示安全性指标参数;m表示蓝牙模块向手机发送连接请求的总次数;Tci表示第i次蓝牙模块与手机的客户端私钥签名请求发送不成功情况下,再次发起连接请求时,与上一次蓝牙模块与手机的客户端私钥签名请求发送不成功时的允许时间段结束时刻之间的时间间隔;k表示蓝牙模块与手机的客户端私钥签名请求发送不成功的次数中,蓝牙模块在预设的时间阈值内再次发送连接请求的次数,并且,所述时间阈值的取值范围为1.5s-3.5s;
当所述安全指标参数低于预设的参数阈值时,则利用所述安全指标参数对所述允许时间段进行调整,其中,调整后的允许时间段通过如下公式获取:
其中,Trt表示调整后的允许时间段;S0表示预设的参数阈值;t表示蓝牙模块与手机的客户端私钥签名请求发送不成功的次数中,蓝牙模块没有在预设的时间阈值内再次发送连接请求的次数。
与现有技术相比,本发明的有益效果如下:
1.本发明提供的利用蓝牙协议进行电子签名的方法,实现手机和电脑设备在短距离范围内的安全数据传输和连接,可以在不同操作系统的手机和电脑之间进行通信和操作,具备较好的跨平台兼容性,使用户能够在电脑上使用手机的私钥进行签名操作,同时保证私钥的安全性。
2.本发明提供的利用蓝牙协议进行电子签名的方法,根据数据读取量的数值,将该数据对应至数值大于数据单次传输个数数值的通信信道中,有效的避免了由于传输数据过大而通信信道剩余容量过小的导致的额传输阻塞的问题。
附图说明
图1为本发明的整体操作流程示意图;
图2为本发明的手机盾公私钥申请示意图;
图3为本发明的手机盾协作签名流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有技术中,当手机端进行手机盾的公私钥设置时,由于没有进行更好的密钥管理,从而导致手机端与电脑端进行签名传输时的安全性降低的问题,请参阅图1-图3,本实施例提供以下技术方案:
一种利用蓝牙协议进行电子签名的方法,包括如下步骤:
S1:手机端设置:手机终端向协作服务器发送终端绑定请求,协作服务器生成子私钥D1和部分公钥P1,部分公钥P1传给移动终端,移动终端响应生成部分子私钥D2,计算出完整公钥P;
S2:电脑端设置:电脑端需要具备蓝牙模块,并在电脑上安装蓝牙程序,蓝牙程序开启后可以通过蓝牙协议与手机建立安全连接;
S3:连接建立:用户在电脑上打开蓝牙程序,启动电脑与手机的蓝牙连接过程,通过蓝牙协议将电脑和手机建立安全的通信通道,并将电脑和手机建立安全通信通道时,将电脑传输的数据容量与通信信道容量进行容量对应,根据数据容量确认对应的通信信道容量;
S4:电子签名:在电脑上需要进行签名操作时,蓝牙程序与手机建立连接发起客户端私钥签名请求并配合客户端获取服务端响应,获取到各参与方的签名值合并操作后,生成最终的数字签名。
具体的,先通过手机端将用户的绑定请求的信息通过信号传输至协作服务器,请求绑定后先通过公式将客户端的私密请求的待验证消息进行计算,根据该计算方式可以进一步的保证数据的完整性,再将客户端的待签名消息进行计算,通过该计算可以在保证数据完整性的情况下加强了数据计算的稳定性,将移动端的数据进行计算,另一部的加强了移动端数据的安全性,将服务器中的数据进行计算,可以有效的提高公私钥数据的计算效率,通过在电脑上操作手机上的私钥分量,在电子签名时方便用户在电脑上结合业务系统进行签名操作,提供了更好的用户体验和操作便利性,同时也可以在手机锁屏的情况下进行操作,减少解锁手机的频率和步骤,提高操作效率,根据数据读取量的数值,将该数据对应至数值大于数据单次传输个数数值的通信信道中,有效的避免了由于传输数据过大而通信信道剩余容量过小的导致的额传输阻塞的问题,将传输数据的容量与通信信道的容量进行对应,进一步降低了数据在传输时资源浪费的问题。
针对S1中协作服务器的子私钥D1和部分公钥P1的生成,用于:
先设置M′=Z||M;Z=Hv(ENTLA||IDA||a||b||Gx||Gy||Ax||Ay);
其中,M′表示为客户端的私密请求的待验证消息;ENTLA表示为IDA的比特长度,为2字节;IDA表示为用户标识默认值见上节;Ax,Ay表示为公钥坐标;a和b表示为Fq中的元素,a和b定义Fq上的一条椭圆曲线E,其中Fq包含q个元素的有限域,E为椭圆线上的所有有理点组成的集合,Gx和Gy表示为椭圆曲线上的两个基点,其阶为素数。
密码杂凑函数如以下公式进行计算:
再计算e=Hv(M);
其中,e表示为密码杂凑函数,作用于M的输出值,M表示为客户端的待签名消息,Hv表示为消息摘要长度为v比特的密码杂凑函数,H指的是符合国家密码局标准的杂凑算法。
移动端的随机数如以下公式进行计算:
根据移动端用随机数发生器产生随机数为k1∈[1,n-1]时;
移动端计算出Q1=k1*G;
其中,Q1表示为有限域Fq中元素的数目,Fq是指包含q个元素的有限域;k1表示为移动端用随机数发生器产生随机数;G表示为椭圆曲线的一个基点,其阶为素数。
服务器端的随机数如以下公式进行计算:
根据服务器端产生的随机数为k2∈[1,n-1]时;
服务器端计算出Q2=k2*G;
其中,Q1表示为有限域Fq中元素的数目,Fq是指包含q个元素的有限域;k1表示为移动端用随机数发生器产生随机数;G表示为椭圆曲线的一个基点,其阶为素数;
根据服务器产生的随机数为k3∈[1,n-1]时;
服务器端计算出(x1,y1)=k3*Q1+Q2,以及r=(x1+e)modn;
其中,(x1,y1)表示为整数的集合;modn表示为模n运算,n为基点G的阶,G为椭圆曲线的一个基点,其阶为素数;r表示为随机数k明文的散列值j进行计算得到的结果。
若r不等于0,则计算s2=D1*k3 modn以及s3=D1*(r+k2)modn,将s2、s3、r返回给移动端,若r等于0,则再次进行服务器产生的随机数为k3∈[1,n-1]的计算;
移动端计算s=((D2*k1)*s2+D2*s3-r)mod n,若s不等于0且不等于n-r,则将(r,s)作为完整签名输出,否则再次进行移动端用随机数发生器产生随机数为k1∈[1,n-1]的计算;
其中,r表示为随机数k、基点g、明文的散列值j进行计算得到的结果;s表示为使用r、随机数k和私钥d进行计算得到的结果,并且,r和s的位宽分别为256位;s、r、D后面带的数字为序号;D表示为算法的输入数据,位宽为256位;
并且,r和s分别为32字节,即签名值为64字节。
具体的,当需要在电脑上对手机端的私钥进行分量操作时,先通过M′=Z||M;Z=Hv(ENTLA||IDA||a||b||Gx||Gy||Ax||Ay)的公式将客户端的私密请求的待验证消息进行计算,根据该计算方式可以进一步的保证数据的完整性,在通过e=Hv(M)公式将密码杂凑函数进行计算,通过该计算可以在保证数据完整性的情况下加强了数据计算的稳定性,通过Q1=k1*G将移动端的数据进行计算,另一部的加强了移动端数据的安全性,其中,移动端为手机端,通过Q2=k2*G和(x1,y1)=k3*Q1+Q2,以及r=(x1+e)modn将服务器中的数据进行计算,可以有效的提高公私钥数据的计算效率,同时,若r不等于0,则计算s2=D1*k3modn以及s3=D1*(r+k2)modn,将s2、s3、r返回给移动端。若r等于0,则再次进行服务器产生的随机数为k3∈[1,n-1]的计算;移动端计算s=((D2*k1)*s2+D2*s3-r)mod n,若s不等于0且不等于n-r,则将(r,s)作为完整签名输出,否则再次进行移动端用随机数发生器产生随机数为k1∈[1,n-1]的计算,进一步的加强了手机端协作签名流程的安全性,通过在电脑上操作手机上的私钥分量,在电子签名时方便用户在电脑上结合业务系统进行签名操作,提供了更好的用户体验和操作便利性,同时也可以在手机锁屏的情况下进行操作,减少解锁手机的频率和步骤,提高操作效率,手机盾以SDK形式运行在手机的移动终端设备上,采用密钥分割技术,和服务端协同,实现各类密码算法、密钥管理与安全管理等功能。可为其他应用提供规范、统一的密码服务访问接口,并且蓝牙是一种标准的通信协议,使用蓝牙协议,实现手机和电脑设备在短距离范围内的安全数据传输和连接,可以在不同操作系统的手机和电脑之间进行通信和操作,具备较好的跨平台兼容性,使用户能够在电脑上使用手机的私钥进行签名操作,同时保证私钥的安全性。
为了解决现有技术中,当手机端的数据与电脑端的数据进行数据传输时,没有根据传输数据的大小选择相对应的通信信道,从而导致传输过慢的问题,本实施例提供以下技术方案:
针对S3中电脑传输的数据容量与通信信道容量的对应,包括:
将电脑传输的数据进行确认,数据确认后将数据的个数进行获取;
根据获取的数据个数将每个数据个数的读取量进行确认;
数据读取量确认完成后将通信信道容量数据进行获取;
通信信道容量数据获取完成后对每个通信信道进行扫描,获取每个通信信道的信道参数;
其中,信道参数包括通信信道饱和度和当前通信信道剩余容量。
根据通信信号饱和度和当前通信信道剩余容量,确定单次进行数据传输的每个信道对应的数据单次传输个数;
将数据读取量与通信信道中的数据单次传输个数进行对应;
根据数据读取量的数值,将该数据对应至数值大于数据单次传输个数数值的通信信道中。
具体的,通过对传输数据个数的确认以及对每个数据个数读取量的确认,可以有效的对传输数据的大小进行获取,根据数据的大小选择对应的通信信道可以进一步的提高数据传输的效率,通过对每个通信信道的信道参数的获取,可以有效的提高传输数据在传输时的效率和稳定性,根据数据读取量的数值,将该数据对应至数值大于数据单次传输个数数值的通信信道中,有效的避免了由于传输数据过大而通信信道剩余容量过小的导致的额传输阻塞的问题,将传输数据的容量与通信信道的容量进行对应,进一步降低了数据在传输时资源浪费的问题。
具体的,S4中,在电脑上需要进行签名操作时,蓝牙程序与手机建立连接发起客户端私钥签名请求并配合客户端获取服务端响应,包括:
在电脑上需要进行签名操作时,蓝牙模块向手机发送建立连接的请求;
所述手机在接收到所述蓝牙模块发送的连接请求后,设置客户端私钥签名请求发送的允许时间段;其中,所述允许时间段通过如下公式获取:
其中,Tr表示允许时间段;T0表示蓝牙模块向手机发送客户端私钥签名请求的理论数据送达时长;Ty表示蓝牙模块向手机发送客户端私钥签名请求的理论延时时长;n表示历史记录中蓝牙模块成功向所述手机发送客户端私钥签名请求的总次数;Tr i表示第i次蓝牙模块向手机发送客户端私钥签名请求时对应的允许时间段;T i表示第i次蓝牙模块成功向所述手机发送客户端私钥签名请求时对应的数据送达时长;
所述手机将所述允许时间段反馈至蓝牙模块,并与所述蓝牙模块建立连接;
所述蓝牙模块在接收到所述允许时间段后,在所述允许时间段内向所述手机发送客户端私钥签名请求;
当所述手机在所述允许时间段结束时刻仍然没有接收到所述蓝牙模块发送的客户端私钥签名请求,则在所述允许时间段结束时刻断开与蓝牙模块的通信连接;
通过客户端私钥签名请求的发送实际情况判断蓝牙模块的安全性指标参数,通过安全性指标参数对与所述蓝牙模块对应的允许时间段进行调整。
上述技术方案的技术效果为:安全的签名操作:通过使用蓝牙连接,该方案确保了签名操作的安全性。只有在确定的时间段内,蓝牙模块才能发送签名请求,这限制了可能的攻击窗口。
动态允许时间段:方案中的公式计算出动态的允许时间段,根据历史记录和实际情况来调整。这使得签名操作的允许时间段能够适应不同的情况和环境。
客户端私钥签名请求的控制:通过允许时间段的设定,手机能够控制何时接受蓝牙模块发送的客户端私钥签名请求。这有助于防止未经授权的签名请求。
动态调整安全性指标参数:方案中通过对蓝牙模块安全性指标参数的实际情况判断,来动态地调整允许时间段。这使得系统能够根据实际的安全状况进行适应性调整。
通信连接管理:手机在允许时间段内与蓝牙模块建立连接,并在允许时间段结束时刻断开连接。这种管理方式有助于降低安全风险。
提高签名操作安全性:通过时间段控制和动态调整,系统能够提高签名操作的安全性,减少了恶意攻击和未授权访问的可能性。
总的来说,本实施例的上述技术方案旨在利用蓝牙模块和手机之间的通信来实现安全的签名操作。通过动态调整允许时间段和安全性指标参数,能够适应不同情况下的安全需求,提高签名操作的可信度和安全性。
具体的,通过客户端私钥签名请求的发送实际情况判断蓝牙模块的安全性指标参数,通过安全性指标参数对与所述蓝牙模块对应的允许时间段进行调整,包括:
通过客户端私钥签名请求的发送实际情况判断蓝牙模块的安全性指标参数,其中,所述安全性指标参数通过如下公式获取:
其中,S表示安全性指标参数;m表示蓝牙模块向手机发送连接请求的总次数;Tci表示第i次蓝牙模块与手机的客户端私钥签名请求发送不成功情况下,再次发起连接请求时,与上一次蓝牙模块与手机的客户端私钥签名请求发送不成功时的允许时间段结束时刻之间的时间间隔;k表示蓝牙模块与手机的客户端私钥签名请求发送不成功的次数中,蓝牙模块在预设的时间阈值内再次发送连接请求的次数,并且,所述时间阈值的取值范围为1.5s-3.5s;
当所述安全指标参数低于预设的参数阈值时,则利用所述安全指标参数对所述允许时间段进行调整,其中,调整后的允许时间段通过如下公式获取:
其中,Trt表示调整后的允许时间段;S0表示预设的参数阈值;t表示蓝牙模块与手机的客户端私钥签名请求发送不成功的次数中,蓝牙模块没有在预设的时间阈值内再次发送连接请求的次数。
上述技术方案的技术效果为:动态安全性评估:方案通过实际情况判断蓝牙模块的安全性指标参数,从而能够动态地评估蓝牙模块的安全性水平。这使得系统能够根据不同情况作出调整。
安全性参数调整:通过安全性指标参数,方案可以根据实际情况调整与蓝牙模块对应的允许时间段。这有助于提高系统的灵活性和安全性。
动态允许时间段调整:方案通过安全性指标参数的调整,进而调整允许时间段。这使得系统能够根据不同的情况自适应地调整时间段,以保持安全性。
预设参数阈值:方案中预设了一个参数阈值,用于判断安全性指标参数的低高。这提供了一个基准来决定是否需要调整允许时间段。
动态时间间隔计算:方案中通过公式计算时间间隔,考虑了连接请求失败的情况。这使得调整允许时间段更具有针对性。
调整后的允许时间段:方案根据实际情况和参数计算得出调整后的允许时间段,使得时间段更加符合实际需求。
总的来说,本实施例上述技术方案旨在根据蓝牙模块的实际表现来判断其安全性,并根据安全性指标参数调整允许时间段。通过动态的安全性评估和时间段调整,可以提高蓝牙通信的安全性和可靠性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (10)

1.一种利用蓝牙协议进行电子签名的方法,其特征在于,包括如下步骤:
S1:手机端设置:手机终端向协作服务器发送终端绑定请求,协作服务器生成子私钥D1和部分公钥P1,部分公钥P1传给移动终端,移动终端响应生成部分子私钥D2,计算出完整公钥P;
S2:电脑端设置:电脑端需要具备蓝牙模块,并在电脑上安装蓝牙程序,蓝牙程序开启后可以通过蓝牙协议与手机建立安全连接;
S3:连接建立:用户在电脑上打开蓝牙程序,启动电脑与手机的蓝牙连接过程,通过蓝牙协议将电脑和手机建立安全的通信通道,并将电脑和手机建立安全通信通道时,将电脑传输的数据容量与通信信道容量进行容量对应,根据数据容量确认对应的通信信道容量;
S4:电子签名:在电脑上需要进行签名操作时,蓝牙程序与手机建立连接发起客户端私钥签名请求并配合客户端获取服务端响应,获取到各参与方的签名值合并操作后,生成最终的数字签名。
2.根据权利要求1所述的一种利用蓝牙协议进行电子签名的方法,其特征在于:针对S1中协作服务器的子私钥D1和部分公钥P1的生成,用于:
先设置M′=Z||M;Z=Hv(ENTLA||IDA||a||b||Gx||Gy||Ax||Ay);
其中,M′表示为客户端的私密请求的待验证消息;ENTLA表示为IDA的比特长度,为2字节;IDA表示为用户标识默认值见上节;Ax,Ay表示为公钥坐标;a和b表示为Fq中的元素,a和b定义Fq上的一条椭圆曲线E,其中Fq包含q个元素的有限域,E为椭圆线上的所有有理点组成的集合,Gx和Gy表示为椭圆曲线上的两个基点,其阶为素数。
3.根据权利要求2所述的一种利用蓝牙协议进行电子签名的方法,其特征在于:针对S1中协作服务器的子私钥D1和部分公钥P1的生成,还用于:
密码杂凑函数如以下公式进行计算:
再计算e=Hv(M);
其中,e表示为密码杂凑函数,作用于M的输出值,M表示为客户端的待签名消息,Hv表示为消息摘要长度为v比特的密码杂凑函数,H指的是符合国家密码局标准的杂凑算法。
4.根据权利要求3所述的一种利用蓝牙协议进行电子签名的方法,其特征在于:所述密码杂凑函数计算后,用于:
移动端的随机数如以下公式进行计算:
根据移动端用随机数发生器产生随机数为k1∈[1,n-1]时;
移动端计算出Q1=k1*G;
其中,Q1表示为有限域Fq中元素的数目,Fq是指包含q个元素的有限域;k1表示为移动端用随机数发生器产生随机数;G表示为椭圆曲线的一个基点,其阶为素数。
5.根据权利要求4所述的一种利用蓝牙协议进行电子签名的方法,其特征在于:所述移动端的随机数计算完成后,用于:
服务器端的随机数如以下公式进行计算:
根据服务器端产生的随机数为k2∈[1,n-1]时;
服务器端计算出Q2=k2*G;
其中,Q1表示为有限域Fq中元素的数目,Fq是指包含q个元素的有限域;k1表示为移动端用随机数发生器产生随机数;G表示为椭圆曲线的一个基点,其阶为素数;
根据服务器产生的随机数为k3∈[1,n-1]时;
服务器端计算出(x1,y1)=k3*Q1+Q2,以及r=(x1+j)modn;
其中,(x1,y1)表示为整数的集合;modn表示为模n运算,n为基点G的阶,G为椭圆曲线的一个基点,其阶为素数;r表示为随机数k明文的散列值j进行计算得到的结果。
6.根据权利要求5所述的一种利用蓝牙协议进行电子签名的方法,其特征在于:所述服务器端的随机数计算完成后,用于:
若r不等于0,则计算s2=D1*k3 modn以及s3=D1*(r+k2)modn,将s2、s3、r返回给移动端,若r等于0,则再次进行服务器产生的随机数为k3∈[1,n-1]的计算;
移动端计算s=((D2*k1)*s2+D2*s3-r)mod n,若s不等于0且不等于n-r,则将(r,s)作为完整签名输出,否则再次进行移动端用随机数发生器产生随机数为k1∈[1,n-1]的计算;
其中,r表示为随机数k、基点g、明文的散列值j进行计算得到的结果;s表示为使用r、随机数k和私钥d进行计算得到的结果,并且,r和s的位宽分别为256位;s、r、D后面带的数字为序号;D表示为算法的输入数据,位宽为256位;
并且,r和s分别为32字节,即签名值为64字节。
7.根据权利要求1所述的一种利用蓝牙协议进行电子签名的方法,其特征在于:针对S3中电脑传输的数据容量与通信信道容量的对应,包括:
将电脑传输的数据进行确认,数据确认后将数据的个数进行获取;
根据获取的数据个数将每个数据个数的读取量进行确认;
数据读取量确认完成后将通信信道容量数据进行获取;
通信信道容量数据获取完成后对每个通信信道进行扫描,获取每个通信信道的信道参数;
其中,信道参数包括通信信道饱和度和当前通信信道剩余容量。
8.根据权利要求7所述的一种利用蓝牙协议进行电子签名的方法,其特征在于:针对S3中电脑传输的数据容量与通信信道容量的对应,还包括:
根据通信信号饱和度和当前通信信道剩余容量,确定单次进行数据传输的每个信道对应的数据单次传输个数;
将数据读取量与通信信道中的数据单次传输个数进行对应;
根据数据读取量的数值,将该数据对应至数值大于数据单次传输个数数值的通信信道中。
9.根据权利要求7所述的一种利用蓝牙协议进行电子签名的方法,其特征在于:S4中,在电脑上需要进行签名操作时,蓝牙程序与手机建立连接发起客户端私钥签名请求并配合客户端获取服务端响应,包括:
在电脑上需要进行签名操作时,蓝牙模块向手机发送建立连接的请求;
所述手机在接收到所述蓝牙模块发送的连接请求后,设置客户端私钥签名请求发送的允许时间段;其中,所述允许时间段通过如下公式获取:
其中,Tr表示允许时间段;T0表示蓝牙模块向手机发送客户端私钥签名请求的理论数据送达时长;Ty表示蓝牙模块向手机发送客户端私钥签名请求的理论延时时长;u表示历史记录中蓝牙模块成功向所述手机发送客户端私钥签名请求的总次数;Tri表示第i次蓝牙模块向手机发送客户端私钥签名请求时对应的允许时间段;Ti表示第i次蓝牙模块成功向所述手机发送客户端私钥签名请求时对应的数据送达时长;
所述手机将所述允许时间段反馈至蓝牙模块,并与所述蓝牙模块建立连接;
所述蓝牙模块在接收到所述允许时间段后,在所述允许时间段内向所述手机发送客户端私钥签名请求;
当所述手机在所述允许时间段结束时刻仍然没有接收到所述蓝牙模块发送的客户端私钥签名请求,则在所述允许时间段结束时刻断开与蓝牙模块的通信连接;
通过客户端私钥签名请求的发送实际情况判断蓝牙模块的安全性指标参数,通过安全性指标参数对与所述蓝牙模块对应的允许时间段进行调整。
10.根据权利要求7所述的一种利用蓝牙协议进行电子签名的方法,其特征在于:通过客户端私钥签名请求的发送实际情况判断蓝牙模块的安全性指标参数,通过安全性指标参数对与所述蓝牙模块对应的允许时间段进行调整,包括:
通过客户端私钥签名请求的发送实际情况判断蓝牙模块的安全性指标参数,其中,安全性指标参数通过如下公式获取:
其中,S表示安全性指标参数;m表示蓝牙模块向手机发送连接请求的总次数;Tci表示第i次蓝牙模块与手机的客户端私钥签名请求发送不成功情况下,再次发起连接请求时,与上一次蓝牙模块与手机的客户端私钥签名请求发送不成功时的允许时间段结束时刻之间的时间间隔;k表示蓝牙模块与手机的客户端私钥签名请求发送不成功的次数中,蓝牙模块在预设的时间阈值内再次发送连接请求的次数,并且,所述时间阈值的取值范围为1.5s-3.5s;
当安全指标参数低于预设的参数阈值时,则利用安全指标参数对所述允许时间段进行调整,其中,调整后的允许时间段通过如下公式获取:
其中,Trt表示调整后的允许时间段;S0表示预设的参数阈值;t表示蓝牙模块与手机的客户端私钥签名请求发送不成功的次数中,蓝牙模块没有在预设的时间阈值内再次发送连接请求的次数。
CN202311021039.7A 2023-08-14 2023-08-14 一种利用蓝牙协议进行电子签名的方法 Active CN116800434B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311021039.7A CN116800434B (zh) 2023-08-14 2023-08-14 一种利用蓝牙协议进行电子签名的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311021039.7A CN116800434B (zh) 2023-08-14 2023-08-14 一种利用蓝牙协议进行电子签名的方法

Publications (2)

Publication Number Publication Date
CN116800434A CN116800434A (zh) 2023-09-22
CN116800434B true CN116800434B (zh) 2024-01-26

Family

ID=88049926

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311021039.7A Active CN116800434B (zh) 2023-08-14 2023-08-14 一种利用蓝牙协议进行电子签名的方法

Country Status (1)

Country Link
CN (1) CN116800434B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102315942A (zh) * 2011-09-30 2012-01-11 福源立信(北京)科技有限公司 一种带蓝牙的安全终端及其与客户端的通信方法
CN103560886A (zh) * 2013-11-04 2014-02-05 北京旋极信息技术股份有限公司 电子签名设备认证方法
CN104063646A (zh) * 2013-03-19 2014-09-24 优比泰克(北京)科技有限公司 支持移动终端的无线u盾
EP3447667A1 (de) * 2017-08-23 2019-02-27 Bundesdruckerei GmbH Kryptographische sicherung für eine verteilte datenspeicherung

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102315942A (zh) * 2011-09-30 2012-01-11 福源立信(北京)科技有限公司 一种带蓝牙的安全终端及其与客户端的通信方法
CN104063646A (zh) * 2013-03-19 2014-09-24 优比泰克(北京)科技有限公司 支持移动终端的无线u盾
CN103560886A (zh) * 2013-11-04 2014-02-05 北京旋极信息技术股份有限公司 电子签名设备认证方法
EP3447667A1 (de) * 2017-08-23 2019-02-27 Bundesdruckerei GmbH Kryptographische sicherung für eine verteilte datenspeicherung

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
eID移动身份认证系统的研究与实现;范月;许晋;高宇童;;信息网络安全(03);全文 *
范月 ; 许晋 ; 高宇童 ; .eID移动身份认证系统的研究与实现.信息网络安全.2015,(03),全文. *

Also Published As

Publication number Publication date
CN116800434A (zh) 2023-09-22

Similar Documents

Publication Publication Date Title
CN1146177C (zh) 通信方法和装置
CN109559122B (zh) 区块链数据传输方法及区块链数据传输系统
EP1104960B1 (en) Message authentication
EP2320621B1 (en) Method for establishing cryptographic communications between a remote device and a medical device and system for carrying out the method
EP1135950B1 (en) Enhanced subscriber authentication protocol
US9003182B2 (en) Communication system and method for securely communicating a message between correspondents through an intermediary terminal
CN107592308B (zh) 一种面向移动支付场景的双服务器多因子认证方法
CA2610470C (en) Client credential based secure session authentication method and apparatus
EP1675299A1 (en) Authentication method using bilinear mappings
CN111600869B (zh) 一种基于生物特征的验证码认证方法及系统
US9544144B2 (en) Data encryption
CN113162773A (zh) 一种可证安全的异构盲签密方法
JPH05347617A (ja) 無線通信システムの通信方法
CN116800434B (zh) 一种利用蓝牙协议进行电子签名的方法
US20220393893A1 (en) Covert channel construction method in blockchain network
CN110324357A (zh) 数据发送方法及装置、数据接收方法及装置
CN114938265A (zh) 一种can总线安全保护方法、装置和存储介质
CN110995612B (zh) 一种报文处理方法、系统及通信设备
CN114417309A (zh) 一种双向身份验证方法、装置、设备及存储介质
CN113872767A (zh) 一种基于ecdsa算法的两方协同签名方法和装置
CN113259103B (zh) 签名方法及装置、验证方法及装置、设备及存储介质
CN113315636B (zh) 一种用于汽车ecu间安全通信的密钥交换方法
Al-Bakri et al. A novel peer-to-peer SMS security solution using a hybrid technique of NTRU and AES-Rijndael
EP2348667B1 (en) Cga signature verification method and device thereof
Tso et al. ID-based key agreement for dynamic peer groups in mobile computing environments

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant