CN101064595B - 一种计算机网络安全输入认证系统和方法 - Google Patents
一种计算机网络安全输入认证系统和方法 Download PDFInfo
- Publication number
- CN101064595B CN101064595B CN200610078915XA CN200610078915A CN101064595B CN 101064595 B CN101064595 B CN 101064595B CN 200610078915X A CN200610078915X A CN 200610078915XA CN 200610078915 A CN200610078915 A CN 200610078915A CN 101064595 B CN101064595 B CN 101064595B
- Authority
- CN
- China
- Prior art keywords
- input
- unit
- key
- safe
- terminal computer
- 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
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种计算机网络安全输入认证系统和方法,包括终端计算机和网络服务器,终端计算机的输入设备包括输入单元(4)和接口单元(5),所述终端计算机中,还包括控制单元(1)和安全单元(2);安全单元(2)在安全输入模式下接收从输入单元(4)中输入的数据,通过密钥利用对称算法加密输入的数据,用网络服务器传输过来的服务器公钥利用非对称算法将临时密钥加密签名;所述网络服务器中,包括加解密单元(7);加解密单元(7)通过服务器私钥利用相应的非对称算法解密终端计算机传输来的数据包,得到密钥,验证临时密钥的签名合法性,再通过临时密钥利用相应的对称算法解密该加密字符串,得到用户输入的数据。其保证计算机输入数据不会被窃取、破解或者伪造。
Description
技术领域
本发明涉及计算机网络安全认证领域,特别是涉及一种计算机网络安全输入系统和方法。
背景技术
随着网络发展,用户在网络上的应用越来越多,邮件,游戏,网络银行,这些应用为了安全,需要用户从输入设备中输入字符进行用户身份等方面的网络安全认证。
在计算机使用过程中,用户经常通过网络输入用户名、密码或者交易数据等敏感信息。在网络运行的过程中,个人计算机(PC)作为一个输入终端设备,接受用户的输入的用户名、密友或者交易数据等敏感信息,不进行处理或者进行初步的处理,传输给网络服务器,而在网络服务器上进行真正的数据处理,可能还需要和其他客户进行数据交换,然后通过网络反馈给个人计算机,通过个人计算机反馈给用户。
但是现有的个人计算机系统由于连接到网络上,而计算机及其应用(如IE浏览器)都可能存在潜在的缺陷、计算机病毒以及木马等恶意程序,这些缺陷、病毒以及恶意程序不仅会破坏操作系统,窃取用户保存在终端个人计算机上的敏感文件,而且也可以监听用户从输入设备输入的数据,进行撺改数据,窃取到用户从输入设备输入的发送到网络服务器的数据,进而假冒用户以合法身份进入网络服务器,进一步窃取用户或者网络服务器上的重要资源,如网络银行用的存款等。
目前,一种解决安全输入的方法是给计算机配置独立的密码键盘,额外增加一个专门用来输入口令的键盘,该设备将输入的口令加密,然后传送给计算机。如银行柜台上输入用户口令时使用的就是这种密码键盘。这种解决安全输入的方法的缺陷是,必须在个人计算机(PC)或者笔记本键盘之外,再提供一个密码键盘设备,这可能对用户而言是不可接受的。
另一方法是采用USB-Key设备进行计算机网络安全输入,避免信息输入过程中被窃取的风险。但一般的USB-Key仅保存网络应用使用的KEY。在认证过程中使用KEY作为认证的关键信息。但是,在网络上,USB-Key中的KEY存在被窃取的可能,即使在USB设备中嵌入安全加密功能,但仍存在USB设备丢失或者被窃取的可能。而且,USB等安全认证设备只能进行简单认证,不能帮助用户输入一些机密信息,不能保证输入数据安全。
目前市场上也存在一些密码生成器,可以随时生成密码,然后用户读取密码生成器的密码,输入到电脑中。但这种方法的缺陷是一方面需要用户生成,并读取输入,其使用很不方便,另一方面,在密码输入的过程中,窃密者可能通过计算机的缺陷、病毒或者木马程序可能提前截取输入的密码。而且,这一方法仅解决用户安全登陆的问题,并没有解决在计算机网络应用过程中,保护用户输入机密信息不会被窃取的问题。
中国专利申请CN200410043080.5公开了一种具有键盘或者设备的安全通信。键盘和例如计算机上运行的一段软件的元件之间的安全通信。第一初始值是为键盘和元件都所知的。键盘和元件交换现时。键盘和元件基于现时和第一初始值分别计算第二初始值和第三初始值。由于键盘和元件都执行相同的计算,因此键盘和元件每个都有相同的第二和第三初始值。基于密钥和第二初始值,键盘加密数据运往使用CBC-3DES的元件,并且基于密钥和第三初始值为每个使用CBC-3DESMAC的创建消息验证码。元件解密和检验使用密钥和第二、第三初始值的键击。但是这种方法仅采用对称密钥安全认证方法,并为解决对称密钥交换问题,采用一个常量初始生成密钥,这样一方面其他程序需要知道此常量,以便生成相关的密码,这样,任何第三方均可获取此常量,均可结合其他技术获取密钥,从而破解加密输入的内容。
发明内容
本发明的目的在于提供一种计算机网络安全输入系统和方法,其采用安全加密的通讯方法,并结合时间戳,以保证计算机输入数据不会被窃取、破解或者伪造。
为实现本发明目的而提供的一种计算机网络安全输入系统,包括终端计算机和网络服务器,终端计算机和网络服务器通过网络连接,终端计算机的输入设备包括输入单元和接口单元。
所述终端计算机中,还包括控制单元和安全单元;
控制单元,用于触发安全单元,使终端计算机进入安全输入模式,控制输入单元输入数据时将数据传输给安全单元,并在输入数据结束时控制输入结束,通知安全单元开始对本次输入的数据进行加密;
安全单元,用于安全输入模式下接收从输入单元中输入的数据,并在接到输入结束的指令后,生成随机数,利用随机数和网络服务器发送来的对称密钥计算出临时密钥;其后通过临时密钥利用对称算法加密输入的数据,用网络服务器传输过来的服务器公钥利用非对称算法将临时密钥加密签名;最后将加密的字符串,加密临时密钥和签名打成数据包,传输给网络服务器端;
所述网络服务器中,包括加解密单元;
加解密单元用于接收到终端计算机传送的数据包后,通过服务器私钥利用相应的非对称算法解密终端计算机传输来的数据包,得到临时密钥,验证临时密钥的签名合法性,再通过临时密钥利用相应的对称算法解密该加密字符串,得到用户输入的数据。
所述网络服务器中,还可以包括时间验证单元,用于保存上次时间计数,并在安全单元触发时,根据以前的时间计数,计算出本次安全输入的时间计数;
加解密单元用时间计数加密需要发送给终端计算机的对称密钥,用安全单元发送来的终端公钥对时间计数签名,并将时间计数签名和加密对称密钥打包发送给终端计算机;
安全单元验证时间计数合法性,确认所收到的时间计数是网络服务器发送给自己的,再利用时间计数解密得到本次安全输入的对称密钥;
安全单元在加密本次输入的数据后,利用服务器公钥将时间计数加密签名;加解密单元利用服务器私钥解密得到时间计数,确认与发送给终端计算机的时间计数相同。
所述终端计算机还可以包括安全输入显示装置,用于显示终端用于显示终端计算机是否进入网络安全输入模式。
所述安全单元和控制单元可以设置在终端计算机输入设备的输入单元和接口单元之间。
所述安全单元和控制单元也可以设置在接口单元与中央处理器之间。
所述安全单元可以为可信赖的平台单元芯片。
为实现本发明目的,又提供了一种计算机网络安全输入方法,包括下列步骤:
步骤A)终端计算机激活安全单元,进入安全输入模式,网络服务器中的加解密单元生成对称密钥,将对称密钥发送给终端计算机;
步骤B)终端计算机收到网络服务器发送来的信息后,得到对称密钥;终端计算机等待用户输入数据;
步骤C)用户输入数据结束后,终端计算机生成随机数,利用随机数和网络服务器传送来的对称密钥一起生成临时密钥,通过临时密钥利用对称算法加密用户输入的数据;其后通过服务器公钥利用非对称算法将临时密钥加密签名;最后将加密的字符串,临时密钥加密签名打成数据包,传输给网络服务器端;
步骤D)网络服务器接收到终端计算机传送的数据后,用服务器私钥通过相应的非对称算法解密终端计算机传输来的数据包,验证临时密钥的合法性,得到终端计算机的临时密钥,利用临时密钥通过相应的对称算法解密加密字符串,得到用户输入的数据。
本发明的安全输入方法,还可以包括下列步骤:
步骤N1)网络服务器中的时间验证单元保存上次安全输入模式的时间计数,当安全输入模式被触发时,时间验证单元计算出本次安全输入的时间计数;
步骤N2)网络服务器中的加解密单元用时间计数加密需要发送给终端计算机的对称密钥,用终端计算机的安全单元发送来的终端公钥对时间计数签名,并将时间计数签名和加密对称密钥打包发送给终端计算机;
步骤N3)安全单元验证时间计数合法性,确认所收到的时间计数是网络服务器发送给自己的,再利用时间计数解密得到本次安全输入的对称密钥;
步骤N4)安全单元在加密本次输入的数据后,利用服务器公钥将时间计数加密签名;加解密单元利用服务器私钥解密得到时间计数,确认与发送给终端计算机的时间计数相同。
所述步骤A)前面还可以包括下列步骤:
步骤A1)在初始化终端计算机的安全单元和终端计算机的加解密单元时,网络服务器向终端计算机的安全单元发送激活指令,激活安全单元,进行密钥交换,网络服务器将服务器公钥传输给安全单元,安全单元生成对应的终端公私钥,并将终端公钥发送给网络服务器,完成初始化过程。
所述步骤A1)还可以包括下列步骤:
步骤A11)网络服务器得到终端计算机的响应后,时间验证单元中将时间计数清零。
所述步骤B)还可以包括下列步骤:
终端计算机的控制单元控制安全输入显示装置开通,显示当前的数据输入模式为安全数据输入模式。
所述对称算法可以为AES算法。
所述非对称算法可以为RSA算法或者椭圆曲线密码加密ECC算法。
本发的的有益效果是:本发明的计算机网络安全输入系统和方法,其中一种非安全的计算机网络安全环境下,解决用户在计算机上输入数据的安全认证问题,其保证用户能够安全登陆到网络,并安全地将键盘输入的内容传递给网络服务器,而不会被终端计算机内所存在的缺陷,病毒或者木马程序窃取的可能。基于本发明的计算机网络安全输入系统和方法,用户在登陆到网络服务时,其用户名和密码或者后续输入的内容不会被潜在的缺陷、病毒或者恶意程序窃取、破解或者伪造,从而避免用户名和密码在用户输入时被窃取的风险,造成用户重要信息损失。
附图说明
图1为本发明实施例中一种计算机网络安全输入系统结构示意图;
图2为本发明实施例中另一种计算机网络安全输入系统结构示意图;
图3为本发明计算机网络安全输入方法过程流程图;
图4为本发明实施例数据加密过程流程图;
图5为本发明实例例数据解密过程流程图。
具体实施方式
下面结合附图1~5进一步详细说明本发明的计算机网络安全输入系统和方法。
本发明的核心要点是在终端计算机中嵌入安全加密单元,该单元可以根据需要被激活,当安全单元激活期间,先通过时间戳验证本次通讯的合法性,然后所有传输的输入数据均通过此安全加密单元加密,此时用户通过输入设备输入的数据(字符串),包括用户及及密码等字符信息,在终端的个人计算机内部以及网络传输过程中均处于加密状态。只有到达网络的应用服务器,如网络银行的服务器中时,因为网络服务器具有解密密钥,通过解密运算,得到用户输入的原始信息,如用户名和密码,然后经过验证,确认用户的合法性,从而避免用户名和密码在用户输入时被窃取的风险。
在本发明中,特别是以键盘作为输入设备而对本发明的计算机网络安全输入系统和方法而进行的描述,但本发明同样适用除了以上提到输入设备之外的任何输入设备,如手写输入设备,扫描输入设备,读卡输入设备,语音输入设备等的情况。
如图1或2所示,本发明的计算机网络安全输入系统包括终端计算机和网络服务器。
在终端计算机的输入设备中,包括输入单元4,接口单元5。
终端计算机和网络服务器可以通过公知的网络连接,如国际互联网(Internet),在网络上传输数据,包括从终端计算机向网络服务器传输的数据以及从网络服务器向终端计算机传输的数据。
一般地,输入单元4就是通常所述的键盘,用户从键盘输入单元4中输入数据,如用户名和密码等字符,通过接口单元5传输到终端计算机的中央处理器6处理,或者传输给远端的网络服务器,如网络银行的服务器处理。
本发明的安全输入系统,在终端计算机中,还包括控制单元1和安全单元2:
控制单元1从输入单元4、接口单元5接收控制指令,再根据相关指令控制输入单元4、接口单元5和安全单元2协同工作。
控制单元1控制接口单元5传递输入单元4输入的数据给个人计算机中央处理器6,其中包括二种模式:一种模式是控制单元1控制接口单元5直接传递给个人计算机的中央处理器6;另种模式是控制接口单元5先把数据发送给安全单元2处理后,再传回接口单元5,由控制单元1将处理后的数据传递给个人计算机中央处理器6。
在上述后一种模式下,控制单元1需要触发安全单元2,使终端计算机进入安全输入模式,控制输入单元4输入数据时将数据传输给安全单元2,并在输入数据结束时控制输入结束,通知安全单元2开始对本次输入的数据进行加密。
控制单元1触发安全单元2进入安全输入模式,可以由网络服务器传送激活指令,控制单元1在接收到激活指令后触发进入安全输入模式;也可以是在终端计算机上设置安全输入触发键,如键盘上的功能键或者组合键,当用户按下该触发键时,控制单元1触发安全单元2;也可以是在键盘输入单元4中设置特殊按键,当按下该特殊按键时,触发安全单元2进入安全输入模式;甚至可以在终端计算机上设置开关,控制进入安全输入模式。
安全单元2,用于安全输入模式下接收从输入单元4中输入的数据,如用户名或者密码字符;在接到输入结束的指令后,生成随机数,利用随机数和网络服务器发送来的对称密钥计算出临时密钥;其后,通过临时密钥利用对称算法加密用户输入的数据,用网络服务器传输过来的服务器公钥利用非对称算法将临时密钥加密签名;最后将加密的字符串,加密临时密钥和签名打成数据包,传输给网络服务器端。
安全单元2利用随机数和对称密钥可以通过HASH算法计算出临时密钥:
HASH算法也称为散列或消息摘要或数字摘要算法,就是通过把单向HASH函数应用于信息,将任意长度的一块数据转换为一段定长的、不可逆转的数据,称为该数据的HASH值。从理论上讲,任何HASH算法,产生碰撞(即两块不同的数据具有相同的HASH值)是必然的。HASH算法的安全性有两层含义:一是由HASH值不能反推出原数据;二是要构造两块具有相同HASH值的不同的数据在计算上是不可行的,尽管理论上是存在的。目前MD5、SHA1和SHA256被认为是比较安全的HASH算法。
对称算法就是指加密和解密过程均采用同一把密钥的算法。
在本发明实施例中,安全单元2通过临时密钥可以利用AES对称算法加密用户输入的数据:
AES算法是1997年1月由NIST提出的,其目的是开发一种新的能保证政府信息安全的编码算法。最后经过多方评估从15种算法中选出Rijndael算法作为AES编码标准算法。AES算法是对称加密的迭代分组密码。它把数据块分成比特阵列,每一项密码操作都是面向比特的。Rijndael算法分为四层,第一层是8×8比特置换(即输入8比特,输出8比特);第二、三层是线性混合层(阵列的行移位、列混合);第四层是子密钥与阵列的每比特异或。
AES的分组长度为128比特,密钥长度为128/192/256比特,相对应的轮数r为10/12/14,相应的密钥方案为:在加密的过程中,需要r+1个子密钥,需要构造4(r+1)个32比特字。当种子密钥为128和192比特时,构造4(r+1)个32比特字的过程是一样的。但当种子密钥为256比特时,构造4(r+1)个32比特字的过程是不同的。
在本发明实施例中,安全单元2通过公私钥可以利用RSA算法以及ECC算法等非对称算法加解密数据。
RSA加密算法(Ron Rivest,Adi Shamir,Len Adleman公私钥算法)是一种非对称算法,其可以描述为:
公钥:n=pq,(p,q为两个不同的很大的质数,p和q必须保密)
将(p-1)和(q-1)相乘得到φ(n)
选择一个整数e(1<e<φ(n))与φ(n)互质
私钥:d=e-1modφ(n),即计算一个数字d,使得它满足公式de=1modφ(n)
加密:c=mc(mod n)
解密:m=cd(mod n),m为明文,c为密文。
而椭圆曲线密码加密算法(Elliptic Curves Cryptography,ECC)是另一种非对称密钥加密算法,椭圆曲线用于密码算法,于1985年由Koblitz和Victor Miller分别独立地提出。它问世以来一直是密码分析学的研究对象。现在,在商业和政府的用途中,椭圆曲线密码系统(ECC)都被认为是安全的。根据已知的密码分析学知识,椭圆曲线密码系统相比于传统的密码系统来说提供了更高的安全性。
ECC加密算法描述如下:
大素数域上的椭圆曲线可通过同构映射将一般的曲线方程变换为特别简单的形式:y2=x3+ax+b,其中曲线参数a,b∈Fp并且满足4a3+27b2≠0(modp)。
因此,满足下列方程的所有点(x,y),再加上无穷远点O∞,构成一条定义在大素数域Fp上的椭圆曲线。
Y2=x3+ax+b(mod p)
其中x,y属于0到p-1间的大素数,并将这条椭圆曲线记为Ep(a,b)。
考虑如下等式:
K=kG[其中K,G为Ep(a,b)上的点,k为小于n(n是点G的阶)的整数,不难发现,给定k和G,根据加法法则,计算K很容易;但给定K和G,求k就相当困难了。
这就是椭圆曲线密码系统基于的数学难题。把点G称为基点(base point),k(k<n,n为基点G的阶)称为私有密钥(private key,私钥),K称为公开密钥(public key,公钥)。
较佳地,可以在安全单元2中定义一些特殊控制键,如“CTRL+F10”,当用户输入这些键时,输入单元4直接将该输入的数据传输给接口单元5,由接口单元5直接传输给终端计算机中央处理器6或者网络服务器处理,而不再由安全单元2加密这些字符。
如图1所示该安全单元2和控制单元1可以设置在键盘内部的输入单元4和接口单元5之间;
也可以如图2所示,该安全单元2和控制单元1设置在接口单元5与南桥芯片之间的主板上,再连接到中央处理器6(CPU)中。这时,较佳地,该安全单元2为可信赖的平台单元芯片(Trusted Platform Module,TPM)
较佳地,终端计算机还包括安全输入显示装置3,用于显示终端计算机是否进入网络安全输入模式。
当终端计算机进入网络安全输入模式时,安全输入显示装置3为真,表示处在安全输入状态;当终端计算机退出网络安全输入模式时,安全输入显示装置3为假,表示终端计算机的输入不在安全输入模式下。这样可以进一步方便用户使用。
本发明计算机网络安全输入系统的网络服务器中,包括加解密单元7,用于接收到终端计算机传送的数据包后,通过服务器私钥利用相应的非对称算法解密终端计算机传输来的数据包,得到临时密钥,验证临时密钥的签名合法性,再通过临时密钥利用相应的对称算法解密该加密字符串,同时验证时间计数比较确认其合法性后,得到用户输入的数据。
在该网络服务器中,还包括时间验证单元8,用于保存上次时间计数,并在安全单元被触发时,根据以前的时间计数,计算出本次安全输入的时间计数。
网络服务器中的时间验证单元8保存上次安全输入模式的时间计数,当安全输入模式被触发时,时间验证单元8计算出本次安全输入的时间计数,如采用计数方式,本次时间计数的值为上次的时间计数加1;或者本次计数的下一个质数。
其后,加解密单元7用时间计数加密需要发送给终端计算机的对称密钥,用安全单元2发送来的终端公钥对时间计数签名,并将时间计数签名和加密对称密钥打包发送给终端计算机。
然后,安全单元2验证时间计数合法性,确认所收到的时间计数是网络服务器发送给自己的,再利用时间计数解密得到本次安全输入的对称密钥。
安全单元2在加密本次输入的数据后,利用服务器公钥将时间计数加密签名;加解密单元7利用服务器私钥解密得到时间计数,确认与发送给终端计算机的时间计数相同。
通过双重验证,保证本次通讯的对称密钥的有效性,所有后续的输入数据字符用对称密钥加密,当然在有更高安全要求时,本次安全输入过程中,可以利用时间计数由服务器发送不同的对称密钥,再用不同的对称密钥加密输入的字符。
本发明在终端计算机的输入单元4和计算机中央处理器6(CPU)之间,设置安全单元2,使键盘输入的数据能够在传输到中央处理器6之前,能够得到加密处理,实现从键盘输入信息的保密保护,其键盘信息的加密在安全单元2中进行,内存攻击者无法监视和窃取到所输入的信息,而在计算机内存和网络上传递的信息都是经过安全单元2加密的,即使被攻击者得到,由于没有密钥,无法解密,也是没有用的,因此,其能够为网上银行、电子商务等网上交易提供安全的数据输入通道。
如图3所示,下面详细说明本发明的计算机网络安全输入方法:
步骤1)在初始化终端计算机的安全单元2和终端计算机的加解密单元7时,网络服务器向终端计算机的安全单元2发送激活指令,激活安全单元2,进行密钥交换,网络服务器将服务器公钥传输给安全单元2,安全单元2生成对应的终端公私钥,并将终端公钥发送给网络服务器,完成初始化过程。
用户在注册到网络服务器,如网络银行的服务时,网络服务器向终端计算机发送安全输入数据的安全输入激活指令,如果终端计算机中有相应的安全单元2,则激活向网络服务器响应,进行密钥交换,网络服务器按照与终端计算机预先设定的对应的非对称加解密算法,将网络服务器中的服务器公钥传输给终端计算机的安全单元2;安全单元2同时按照预先设定的与网络服务器对应的非对称加解密算法,生成对应的终端公私钥,将终端公钥传输给网络服务器。终端计算机接收到服务器公钥后,存储该服务器公钥以及自身的私钥。网络服务器接收到终端计算机传送的终端公钥后,存储该终端标识及终端公钥以及本次传送的服务器私钥。
本发明实施例的计算机网络安全输入方法中,所述非对称加解密算法为RSA算法或者ECC算法。
在初始化过程中,网络服务器得到终端计算机的响应后,时间验证单元8中将时间计数清零。
步骤2:用户需要从终端计算机输入设备中输入安全数据时,终端计算机激活安全单元2,进入安全输入模式,网络服务器中的时间验证单元8计算出本次时间计数,加解密单元7生成对称密钥,利用时间计数加密对称密钥,然后通过终端公钥对时间计数加密签名后,将加密对称密钥和时间计数签名发送给终端计算机。
步骤21)用户需要从终端计算机输入设备输入安全数据时,可以由网络服务器传送激活指令,终端计算机的控制单元1在接收到激活指令后触发进入安全输入模式;也可以是在终端计算机上设置安全输入触发键,如键盘上的功能键或者组合键,当用户按下该触发键时,控制单元1触发安全单元2,进入安全输入模式并通知网络服务器;也可以是在键盘输入单元4中设置特殊按键,当按下该特殊按键时,触发安全单元2进入安全输入模式并通知网络服务器;甚至可以在终端计算机上设置开关,控制进入安全输入模式并通知网络服务器。
步骤22)网络服务器的时间验证单元8保存着上一次安全输入数据模式的时间计数,在本次发送前,根据上一次的时间计数,计算出本次时间计数,如采用计数方式,计算出本次时间计数的值为上次的时间计数值加1;或者本次时间计数为上一次时间计数值对应的下一个质数。
步骤23)网络服务器的加解密单元7生成对称算法密钥,即对称密钥,利用时间计数通过哈希(HASH)算法生成字符串,然后用字符串对对称密钥进行加密。
步骤24)网络服务器中的加解密单元7利用所保存的终端计算机的公钥对时间计数加密签名后发送给终端计算机。
加解密单元7中的对称算法,可以是AES算法,其对时间计数的签名算法可以是非对称加密算法,如RSA算法或者ECC算法。
步骤3:终端计算机收到网络服务器发送来的信息后,利用终端私钥通过相应的非对称算法解密签名,得到时间计数,然后利用时间计数解密得到对称密钥;终端计算机的安全单元2等待用户从输入单元4输入数据并缓存到安全单元2中。
步骤31)终端计算机收到网络服务器发送来的信息后,安全单元2用终端私钥通过与网络服务器加密签名算法相对应的方法解密,得到时间计数,再通过HASH算法生成字符串,然后用字符串对解密,得到对称密钥。
步骤32)终端计算机中的安全单元2通知控制单元1,控制单元1控制输入单元4中输入的数据,先传输到安全单元2。
在控制单元1控制输入单元4输入的数据中,可以由预先定义数据范围,如可以是数字键0~9、小数点号以及大小写的26个字母,其它的功能键及字符不直接传输给安全单元2,而传输给终端计算机或者网络服务器。
较佳地,还包括下列步骤:
步骤321)控制单元1控制安全输入显示装置3开通,显示当前的数据输入模式为安全数据输入模式。
步骤33)用户开始从输入单元4,如键盘上开始输入安全数据(用户名、密码以及金额其他敏感信息),这些信息先传输到安全单元2中缓存,直到用户按下特定的控制键,表示输入信息结束,控制单元1控制结束本次输入过程,通知安全单元2对输入的内容加密传输。
步骤4:用户输入数据结束后,安全单元2生成随机数,利用随机数和网络服务器传送来的对称密钥一起通过HASH算法生成临时密钥,利用临时密钥通过对称算法加密用户输入的数据;其后利用服务器公钥通过非对称算法将临时密钥和时间计数加密签名;最后将加密的字符串,临时密钥以及时间计数加密签名打成数据包,传输给网络服务器端。
如图4所示,其包括下列步骤:
步骤41)用户输入数据结束后,安全单元2生成一个随机数,利用随机数以及网络服务器传送来的对称密钥一起生成临时密钥。
安全单元2生成随机数后,利用随机数和对称密钥一起,通过HASH算法一起生成临时密钥。
步骤42)安全单元2利用临时密钥,通过与网络服务器相应的对称加密算法,加密用户输入的字符串;然后再利用服务器公钥通过非对称算法将临时密钥签名加密。
较佳地,该对称加密算法为AES算法。
利用服务器公钥将临时密钥签名加密的算法为ECC算法或者RSA算法。
步骤43)将加密字符串,加密临时密钥和签名打成数据包,传输给个人计算机的中央处理器6(CPU),再由个人计算机(PC)通过网络接口发给网络服务器端。
这样,使得数据包在传递到个人计算机的内存之后,或者在网络传送过程中不会被其他计算机缺陷,木马或者恶意程序破解而窃取安全数据。
步骤5:网络服务器的加解密单元7接收到终端计算机传送的数据后,用服务器私钥通过相应的非对称算法解密终端计算机传输来的数据包,验证临时密钥的合法性,得到终端计算机的临时密钥和时间计数,利用临时密钥通过相应的对称算法解密加密字符串,同时验证时间计数确认其合法性后,得到用户输入的数据。
如图5所示,网络服务器在收到加密数据包后,用服务器私钥解密解密数据包,得到终端计算机的临时密钥,验证临时密钥的合法性,利用临时密钥解密加密字符串,同时与时间计数比较确认以防止重放攻击,保证数据的安全性。
本发明的计算机网络安全输入系统和方法,使得键盘信息的加密是在输入安全单元2中进行的,针对内存而进行的木马、恶意程序的攻击都无法对输入的信息进行监视和窃取,即使其得到打包后的数据,也无法解密,无法威胁用户和网络服务器运行的安全,本发明为网上银行、电子商务交易等提供了安全的数据输入通道。
最后要说明的是,以上实施例仅用以说明本发明的技术方案而不是对本发明的限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (15)
1.一种计算机网络安全输入系统,包括终端计算机和网络服务器,终端计算机和网络服务器通过网络连接,终端计算机的输入设备包括输入单元(4)和接口单元(5),其特征在于:
所述终端计算机中,还包括控制单元(1)和安全单元(2);
控制单元(1),用于触发安全单元(2),使终端计算机进入安全输入模式,控制输入单元(4)输入数据时将数据传输给安全单元(2),并在输入数据结束时控制输入结束,通知安全单元(2)开始对本次输入的数据进行加密;
安全单元(2),用于安全输入模式下接收从输入单元(4)中输入的数据,并在接到输入结束的指令后,生成随机数,利用随机数和网络服务器发送来的对称密钥计算出临时密钥;其后通过临时密钥利用对称算法加密输入的数据,用网络服务器传输过来的服务器公钥利用非对称算法将临时密钥加密签名;最后将加密的字符串,加密临时密钥和签名打成数据包,传输给网络服务器端;
所述网络服务器中,包括加解密单元(7);
加解密单元(7)用于接收到终端计算机传送的数据包后,通过服务器私钥利用相应的非对称算法解密终端计算机传输来的数据包,得到临时密钥,验证临时密钥的签名合法性,再通过临时密钥利用相应的对称算法解密该加密字符串,得到用户输入的数据。
2.根据权利要求1所述的安全输入系统,其特征在于,所述网络服务器中,还包括时间验证单元(8),用于保存上次时间计数,并在安全单元(2)触发时,根据以前的时间计数,计算出本次安全输入的时间计数;
加解密单元(7)用时间计数加密需要发送给终端计算机的对称密钥,用安全单元(2)发送来的终端公钥对时间计数签名,并将时间计数签名和加密对称密钥打包发送给终端计算机;
安全单元(2)验证时间计数合法性,确认所收到的时间计数是网络服务器发送给自己的,再利用时间计数解密得到本次安全输入的对称密钥;
安全单元(2)在加密本次输入的数据后,利用服务器公钥将时间计数加密签名;加解密单元(7)利用服务器私钥解密得到时间计数,确认与发送给终端计算机的时间计数相同。
3.根据权利要求1或2所述的安全输入系统,其特征在于,所述终端计算机还包括安全输入显示装置(3),用于显示终端计算机是否进入网络安全输入模式。
4.根据权利要求1或2所述的安全输入系统,其特征在于,所述对称算法为AES算法。
5.根据权利要求4所述的安全输入系统,其特征在于,所述非对称算法为RSA算法或者椭圆曲线密码加密ECC算法。
6.根据权利要求1或2所述的安全输入系统,其特征在于,所述安全单元(2)和控制单元(1)设置在终端计算机输入设备的输入单元(4)和接口单元(5)之间。
7.根据权利要求1或2所述的安全输入系统,其特征在于,所述安全单元(2)和控制单元(1)设置在接口单元(5)与中央处理器(6)之间。
8.根据权利要求7所述的安全输入系统,其特征在于,所述安全单元(2)为可信赖的平台单元芯片。
9.一种计算机网络安全输入方法,其特征在于,包括下列步骤:
步骤A)终端计算机激活安全单元(2),进入安全输入模式,网络服务器中的加解密单元(7)生成对称密钥,将对称密钥发送给终端计算机;
步骤B)终端计算机收到网络服务器发送来的信息后,得到对称密钥;终端计算机等待用户输入数据;
步骤C)用户输入数据结束后,终端计算机生成随机数,利用随机数和网络服务器传送来的对称密钥一起生成临时密钥,通过临时密钥利用对称算法加密用户输入的数据;其后通过服务器公钥利用非对称算法将临时密钥加密签名;最后将加密的字符串,临时密钥加密签名打成数据包,传输给网络服务器端;
步骤D)网络服务器接收到终端计算机传送的数据包后,用服务器私钥通过相应的非对称算法解密终端计算机传输来的数据包,验证临时密钥的合法性,得到终端计算机的临时密钥,利用临时密钥通过相应的对称算法解密加密字符串,得到用户输入的数据。
10.根据权利要求9所述的安全输入方法,其特征在于,还包括下列步骤:
步骤N1)网络服务器中的时间验证单元(8)保存上次安全输入模式的时间计数,当安全输入模式被触发时,时间验证单元(8)计算出本次安全输入的时间计数;
步骤N2)网络服务器中的加解密单元(7)用时间计数加密需要发送给终端计算机的对称密钥,用终端计算机的安全单元(2)发送来的终端公钥对时间计数签名,并将时间计数签名和加密对称密钥打包发送给终端计算机;
步骤N3)安全单元(2)验证时间计数合法性,确认所收到的时间计数是网络服务器发送给自己的,再利用时间计数解密得到本次安全输入的对称密钥;
步骤N4)安全单元(2)在加密本次输入的数据后,利用服务器公钥将时间计数加密签名;加解密单元(7)利用服务器私钥解密得到时间计数,确认与发送给终端计算机的时间计数相同。
11.根据权利要求10所述的安全输入方法,其特征在于,所述步骤A)前面还包括下列步骤:
步骤A1)在初始化终端计算机的安全单元(2)和终端计算机的加解密单元(7)时,网络服务器向终端计算机的安全单元(2)发送激活指令,激活安全单元(2),进行密钥交换,网络服务器将服务器公钥传输给安全单元(2),安全单元(2)生成对应的终端公私钥,并将终端公钥发送给网络服务器,完成初始化过程。
12.根据权利要求11所述的安全输入方法,其特征在于,所述步骤A1)还包括下列步骤:
步骤A11)网络服务器得到终端计算机的响应后,时间验证单元(8)中将时间计数清零。
13.根据权利要求11所述的安全输入方法,其特征在于,所述步骤B)还包括下列步骤:
终端计算机的控制单元(1)控制安全输入显示装置(3)开通,显示当前的数据输入模式为安全数据输入模式。
14.根据权利要求9或10所述的安全输入方法,其特征在于,所述对称算法为AES算法。
15.根据权利要求9或10所述的安全输入方法,其特征在于,所述非对称算法为RSA算法或者椭圆曲线密码加密ECC算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610078915XA CN101064595B (zh) | 2006-04-27 | 2006-04-27 | 一种计算机网络安全输入认证系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610078915XA CN101064595B (zh) | 2006-04-27 | 2006-04-27 | 一种计算机网络安全输入认证系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101064595A CN101064595A (zh) | 2007-10-31 |
CN101064595B true CN101064595B (zh) | 2011-07-27 |
Family
ID=38965348
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200610078915XA Active CN101064595B (zh) | 2006-04-27 | 2006-04-27 | 一种计算机网络安全输入认证系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101064595B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107222305A (zh) * | 2017-06-06 | 2017-09-29 | 北京洋浦伟业科技发展有限公司 | 保护rsa加密算法的私钥安全的方法和装置 |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101459505B (zh) * | 2007-12-14 | 2011-09-14 | 华为技术有限公司 | 生成用户私钥的方法、系统及用户设备、密钥生成中心 |
CN101221641B (zh) * | 2007-12-20 | 2012-12-26 | 深圳兆日科技股份有限公司 | 一种联机交易的安全确认设备及联机交易方法 |
CN101527706B (zh) * | 2008-06-13 | 2012-02-15 | 珠海市顺生科技实业有限公司 | 一种提高网络安全的数字认证方法 |
CN102025505A (zh) * | 2010-12-16 | 2011-04-20 | 浪潮(北京)电子信息产业有限公司 | 一种基于aes算法的加密、解密方法及装置 |
CN103166757B (zh) * | 2011-12-19 | 2016-01-20 | 卓望数码技术(深圳)有限公司 | 一种动态保护用户隐私数据的方法及系统 |
CN102724205B (zh) * | 2012-06-27 | 2015-10-28 | 浙江中控软件技术有限公司 | 一种对工业领域通讯过程加密的方法及数据采集设备 |
CN103218731B (zh) * | 2013-03-25 | 2014-10-29 | 深圳市精彩明天科技有限公司 | 一种基于二维码的信息传送方法及系统 |
CN103236931B (zh) * | 2013-05-02 | 2016-08-03 | 深圳数字电视国家工程实验室股份有限公司 | 一种基于tpm的身份验证方法及系统以及相关设备 |
KR102195900B1 (ko) | 2013-12-20 | 2020-12-29 | 삼성전자주식회사 | 단말간 암호화된 메시지를 송수신하는 방법 및 장치 |
CN103973703A (zh) * | 2014-05-23 | 2014-08-06 | 杭州智屏科技有限公司 | 一种用于应用程序和服务器之间交换数据安全的请求方法 |
CN105049401B (zh) * | 2015-03-19 | 2018-06-19 | 浙江大学 | 一种基于智能车的安全通信方法 |
CN105577631B (zh) * | 2015-05-22 | 2019-12-10 | 宇龙计算机通信科技(深圳)有限公司 | 一种数据传输的方法及终端 |
CN106911625B (zh) * | 2015-12-22 | 2020-04-24 | 国民技术股份有限公司 | 一种安全输入法的文本处理方法、装置和系统 |
CN107154920B (zh) * | 2016-03-04 | 2021-07-13 | 神讯电脑(昆山)有限公司 | 安全信息的加密方法、解密方法及用以接收安全信息的接收装置 |
CN107306261B (zh) * | 2016-04-22 | 2021-09-07 | 中兴通讯股份有限公司 | 一种加密通讯方法及装置、系统 |
WO2017204845A1 (en) * | 2016-05-27 | 2017-11-30 | Charter Communications Holding Company | Secure collection of sensitive data |
CN107172005A (zh) * | 2017-02-20 | 2017-09-15 | 江苏蓝深远望科技股份有限公司 | 一种基于非对称算法的高安全性电传码加密方法 |
CN108460299A (zh) * | 2017-02-20 | 2018-08-28 | 江苏蓝深远望科技股份有限公司 | 一种基于非对称算法的键盘加密系统及键盘加密方法 |
CN107370733A (zh) * | 2017-07-18 | 2017-11-21 | 电子科技大学 | 一种基于Rijndael和ECC混合加密的智能锁管理方法 |
CN107688729B (zh) * | 2017-07-27 | 2020-11-27 | 大唐高鸿信安(浙江)信息科技有限公司 | 基于可信主机的应用程序保护系统及方法 |
CN108270575B (zh) * | 2018-04-20 | 2021-10-22 | 北京数字认证股份有限公司 | 一种数字签名方法及装置 |
CN109218312B (zh) * | 2018-09-18 | 2019-11-26 | 深圳市思乐数据技术有限公司 | 一种安全认证方法、装置、系统及智能输入设备 |
CN109245905A (zh) * | 2018-11-01 | 2019-01-18 | 四川长虹电器股份有限公司 | 基于rsa和aes算法对消息进行数字签名及加密的方法 |
CN109788269A (zh) * | 2019-01-17 | 2019-05-21 | 深圳市迪威泰实业有限公司 | 视频数据加密类专用usb双目摄像机 |
CN109714176B (zh) * | 2019-03-13 | 2021-11-30 | 苏州科达科技股份有限公司 | 口令认证方法、装置及存储介质 |
CN112702305B (zh) * | 2019-10-23 | 2023-05-16 | 中电智能科技有限公司 | 系统接入认证方法及设备 |
CN111404953A (zh) * | 2020-03-24 | 2020-07-10 | 广东工业大学 | 一种消息加密方法、解密方法及相关装置、系统 |
CN112202560B (zh) * | 2020-09-28 | 2021-05-04 | 杭州链城数字科技有限公司 | 一种基于可信联盟的成员身份认证方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6151676A (en) * | 1997-12-24 | 2000-11-21 | Philips Electronics North America Corporation | Administration and utilization of secret fresh random numbers in a networked environment |
CN1338841A (zh) * | 2000-08-11 | 2002-03-06 | 海南格方网络安全有限公司 | 计算机安全认证智能密钥 |
US6504931B1 (en) * | 1996-02-28 | 2003-01-07 | Hitachi, Ltd. | Method and apparatus for encrypting data |
CN1472914A (zh) * | 2003-06-27 | 2004-02-04 | 武汉理工大学 | 一种高效快捷的公钥加密方法 |
CN1486014A (zh) * | 2002-09-24 | 2004-03-31 | 黎明网络有限公司 | 一种基于公开密钥体系的数据安全传输的方法及其装置 |
CN1703003A (zh) * | 2005-07-22 | 2005-11-30 | 胡祥义 | 基于“黑匣子”技术的网络安全平台实现方法 |
CN1703894A (zh) * | 2002-10-30 | 2005-11-30 | 汤姆森许可贸易公司 | 用于在数字网络中更新对称密钥的简化方法 |
-
2006
- 2006-04-27 CN CN200610078915XA patent/CN101064595B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6504931B1 (en) * | 1996-02-28 | 2003-01-07 | Hitachi, Ltd. | Method and apparatus for encrypting data |
US6151676A (en) * | 1997-12-24 | 2000-11-21 | Philips Electronics North America Corporation | Administration and utilization of secret fresh random numbers in a networked environment |
CN1338841A (zh) * | 2000-08-11 | 2002-03-06 | 海南格方网络安全有限公司 | 计算机安全认证智能密钥 |
CN1486014A (zh) * | 2002-09-24 | 2004-03-31 | 黎明网络有限公司 | 一种基于公开密钥体系的数据安全传输的方法及其装置 |
CN1703894A (zh) * | 2002-10-30 | 2005-11-30 | 汤姆森许可贸易公司 | 用于在数字网络中更新对称密钥的简化方法 |
CN1472914A (zh) * | 2003-06-27 | 2004-02-04 | 武汉理工大学 | 一种高效快捷的公钥加密方法 |
CN1703003A (zh) * | 2005-07-22 | 2005-11-30 | 胡祥义 | 基于“黑匣子”技术的网络安全平台实现方法 |
Non-Patent Citations (3)
Title |
---|
Atual Kahate著,邱仲潘 等译.密码学与网络安全.清华大学出版社,2005,20-150. * |
US 6504931 B1,全文. |
黄元飞等.信息安全与加密解密核心技术.浦东电子出版社,2001,11-19,134-168. * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107222305A (zh) * | 2017-06-06 | 2017-09-29 | 北京洋浦伟业科技发展有限公司 | 保护rsa加密算法的私钥安全的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101064595A (zh) | 2007-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101064595B (zh) | 一种计算机网络安全输入认证系统和方法 | |
US10142107B2 (en) | Token binding using trust module protected keys | |
CN103763631B (zh) | 认证方法、服务器和电视机 | |
CN101075874B (zh) | 认证方法和认证系统 | |
CN109818749B (zh) | 基于对称密钥池的抗量子计算点对点消息传输方法和系统 | |
CN102547688B (zh) | 一种基于虚拟专用信道的高可信手机安全通信信道的建立方法 | |
EP2361462B1 (en) | Method for generating an encryption/decryption key | |
CN102082790B (zh) | 一种数字签名的加/解密方法及装置 | |
CN108347419A (zh) | 数据传输方法和装置 | |
RU2584500C2 (ru) | Криптографический способ аутентификации и идентификации с шифрованием в реальном времени | |
NO326037B1 (no) | Databekreftelsesmetode og apparat | |
CN101815091A (zh) | 密码提供设备、密码认证系统和密码认证方法 | |
CN104253694A (zh) | 一种用于网络数据传输的保密方法 | |
CN104901935A (zh) | 一种基于cpk的双向认证及数据交互安全保护方法 | |
CN109951276B (zh) | 基于tpm的嵌入式设备远程身份认证方法 | |
CN105812349A (zh) | 一种基于身份信息的非对称密钥分发及消息加密方法 | |
CN107612680A (zh) | 一种移动网络支付中的国密算法 | |
Niu et al. | A novel user authentication scheme with anonymity for wireless communications | |
JP5324813B2 (ja) | 鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラム | |
Sathya et al. | A comprehensive study of blockchain services: future of cryptography | |
CN102227106B (zh) | 智能密钥设备与计算机进行通信的方法和系统 | |
CN115276978A (zh) | 一种数据处理方法以及相关装置 | |
Shakiba | Security analysis for chaotic maps-based mutual authentication and key agreement using smart cards for wireless networks | |
Darwish et al. | A model to authenticate requests for online banking transactions | |
Eshghi et al. | Security Enhancement of Wireless Sensor Networks: A Hybrid Efficient Encryption Algorithm Approach |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |