[发明专利]一种加密卡的加解密方法有效
申请号: | 201210203893.0 | 申请日: | 2012-06-15 |
公开(公告)号: | CN102724035A | 公开(公告)日: | 2012-10-10 |
发明(设计)人: | 陈亚东;林为民;张涛;曾荣;杨维永;邵志鹏;黄益彬;费稼轩 | 申请(专利权)人: | 中国电力科学研究院 |
主分类号: | H04L9/06 | 分类号: | H04L9/06 |
代理公司: | 北京安博达知识产权代理有限公司 11271 | 代理人: | 徐国文 |
地址: | 100192 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 加密 解密 方法 | ||
技术领域
本发明涉及电子信息安全领域,具体涉及一种加密卡的加解密方法。
背景技术
随着信息与网络技术的迅速发展和广泛应用,银行、石油、电力等支柱性行业的业务数据已经广泛采用各类计算机设备进行通讯,由于行业的重要性与特殊性,必须考虑数据的加密安全传输,所以,进行加密处理的服务器设备开发已经在行业内广泛进行,服务器设备可以把数据由明文变为加密的数据,再由网络设备将数据传输到目的地,在信息安全行业的主流加密服务器设备中,承担数据加密任务的主要是设备中集成的PCI接口加密卡,加密卡集成国家密码管理局授权的加密芯片,具有输入与输出单元,当加密卡的驱动程序将数据传输到输入单元时,加密卡处理这些数据,将其放入输出单元,送给加密卡的驱动程序,驱动程序再将加密后的数据送给需要加密服务的上层应用软件。
在集成了相同性能加解密芯片的加密卡中,设计控制多个加解密芯片同时工作的高效逻辑处理方法,以及设计调用加密卡的高效设备驱动程序,从而最大程度地利用加解密芯片的处理性能,从整体上提高加密卡的性价比就十分重要。
现有技术中加密卡是将数据包组织成适合加密芯片处理的格式,由驱动程序送入加密芯片控制电路,然后等待加密芯片处理后,将处理后的数据经控制电路再送至驱动程序,再由驱动程序送给上层调用的用户程序。公开号为CN1996321A的中国专利公开了一种加密卡的设计,该设计使用了2块DSP芯片与1块加密芯片进行交互处理。DSP之间、DSP与加密芯片之间的数据交换设计了额外的双口RAM做数据缓冲,在数据流程上,1块做主控的DSP运算结束,进行加密芯片的运算,运算完毕后再送入另1块DSP,最后由PCI-E接口送给用户。在加密芯片处理时一直等待,等待时间大大多于加密卡处理数据的速度,所以这种“占用-等待处理-放弃占用”的持续等待模式浪费了芯片部分处理性能。
发明内容
本发明提供的一种加密卡的加解密方法,所述加密卡包括加密芯片、DSP处理器、接口控制电路和一块P CI接口电路;
所述DSP处理器、接口控制电路和加密芯片的数量相等且至少为两个,一块DSP处理器通过一块对应的接口控制电路控制连接一块加密芯片;
所述至少两个的DSP处理器连接所述PCI接口电路,实现所述加密卡与所述加密卡所在计算机之间的数据传输;
所述加解密方法包括:
步骤S1,接收用户端包含数据包的调度指令,所述调度指令为写操作时,执行步骤S2的写线程过程;所述调度指令为读操作时,执行步骤S3的读线程过程;
步骤S2,写线程查找空闲加密芯片,将写操作的数据放入所述空闲加密芯片中,所述空闲加密芯片处理完所述用户端的数据包后,所述DSP处理器通过中断程序将所述数据包写入加解密队列,并对所述数据包做待读取标记;
步骤S3,读线程持续检查所述加解密队列,读取标记为待读取的数据包并送入用户端。
本发明提供的第一优选技术方案中:所述至少两个的DSP处理器相互之间中断互斥,同一时间只有一个中断在进行。
2、本发明提供的第二优选技术方案中:所述DSP处理器设置有有数据包要送出或无数据包要送出2个标志位,中断电路分析各个DSP处理器的所述标志位对有数据包要送出的DSP处理器进行中断处理;
当有两个或两个以上的DSP处理器同时有数据包要送出,随机选定一个DSP处理器发送数据包,所述没有选定的DSP处理器在对列中阻塞等待。
本发明提供的第三优选技术方案中:所述加解密队列设置有信号量,有100个存储位置,所述读线程或写线程独占所述信号量后对加解密队列进行读写操作。
本发明提供的第四优选技术方案中:所述DSP处理器、接口控制电路和加密芯片的数量均为4;
所述读线程和写线程为异步并行工作。
本发明提供的第五优选技术方案中:所述计算机的内存和DSP处理器在内部数据存储区中均设置有5个缓冲区,所述DSP处理器在内部数据存储区中设置的5个缓冲区为与对应的所述加密芯片的共享缓冲区,所述缓冲区的大小与送入加密芯片的最大数据包的大小相等。
本发明提供的第六优选技术方案中:所述步骤S2包括:
所述步骤S2包括:
步骤S201,写线程接收所述数据包后,查找是否有空闲加密芯片,是,执行步骤S202;否,返回,等待下次发送;
步骤S202,将所述数据包送入所述空闲加密芯片对应的DSP处理器中,查找所述对应的DSP处理器是否有空闲的所述共享缓冲区,是,执行步骤S203;否,返回,等待下次发送;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电力科学研究院,未经中国电力科学研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210203893.0/2.html,转载请声明来源钻瓜专利网。