CN104580172A - 一种基于https协议的数据通信方法及装置 - Google Patents
一种基于https协议的数据通信方法及装置 Download PDFInfo
- Publication number
- CN104580172A CN104580172A CN201410823078.3A CN201410823078A CN104580172A CN 104580172 A CN104580172 A CN 104580172A CN 201410823078 A CN201410823078 A CN 201410823078A CN 104580172 A CN104580172 A CN 104580172A
- Authority
- CN
- China
- Prior art keywords
- certificate
- server
- digital
- browser
- root
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于https协议的数据通信方法及装置,其中所述方法包括:在浏览器侧基于Https协议发起对服务器的访问请求;接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;如不是,则判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;若所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。本发明可以丰富了对数字证书进行认证的方式,增加了服务器的数字证书通过认证的几率。
Description
技术领域
本发明涉及浏览器的技术领域,具体涉及一种基于https协议的数据通信方法以及一种基于https协议的数据通信装置。
背景技术
随着互联网的迅猛发展和普及,越来越多的业务依赖于网络技术,而在网络中,使用最广泛的就是浏览器,用户可以使用浏览器浏览网页、进行上传或下载操作等。通常情况下,浏览器与服务器之间通过HTTP(Hypertext transfer protocol,超文本传送协议)进行通信,但HTTP协议在默认情况下是没有任何加密措施的,所有的消息都是以明文形式在网络上传送,很容易导致机密敏感信息被泄露。为了加强浏览器的安全应用,HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer,以安全为目标的HTTP通道)应运而生。HTTPS是在HTTP基础上提出的一种安全的HTTP协议,因此可以称为安全的超文本传输协议。HTTP协议直接放置在TCP协议之上,而HTTPS提出在HTTP和TCP中间加上一层加密层SSL(Secure Socket Layer,安全套接字)。从发送端看,这一层负责把HTTP的内容加密后送到下层的TCP,从接收方看,这一层负责将TCP送来的数据解密还原成HTTP的内容。
HTTPS在传输数据之前需要SSL客户端(浏览器)与SSL服务端之间进行一次握手,以确立双方加密传输数据的密码信息,在握手过程中,SSL服务器会将自己的SSL数字证书返回SSL客户端,SSL客户端接收到证书信息后,验证服务器的数字证书是否是受信赖的CA(CertificateAuthority,证书颁发机构)颁发的,如果不是,说明数字证书的来源不是权威机构(比如,个人可以制作证书,用来部署在钓鱼网站,伪装成正规网页),无法保证网页的安全可靠,则SSL客户端会在界面上给出风险提示警告。
目前,客户端是借助操作***中保存的,经操作***认证的可信赖的证书颁发机构来验证服务器的数字证书合法性的,当客户端获得服务器的数字证书的根证书后,可以在操作***受信任的根证书颁发机构中查找服务器根证书,若查找成功,则说明该服务器返回的数字证书是可信赖的,否则,说明服务器返回的数字证书是不可信赖的。
然而,也会出现有些可信赖的CA的根证书并没有得到操作***的认证的情况,导致客户端最终将这些可信赖的CA认证过的网站认证为风险网站。例如,对于“https//kyfw.12306.cn”,其证书的颁发者是SinorailCertification Authority,但它没有得到操作***的认证,所以它不在操作***受信任的根证书颁发机构里面,客户端因此会给出风险提醒警告。但实际上,kyfw.12306.cn网站的证书和网站本身隶属于中国铁道部,是可信任的。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种基于https协议的数据通信方法和相应的一种基于https协议的数据通信装置。
依据本发明的一个方面,提供了一种基于https协议的数据通信方法,所述方法包括:
在浏览器侧基于Https协议发起对服务器的访问请求;
接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;
判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;
如不是,则判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;
若所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。
可选地,所述浏览器所信任的根证书颁发机构以数字指纹的形式存储在信任证书白名单中,所述判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发的步骤包括:
采用安全哈希算法SHA1计算所述服务器的数字证书的根证书的数字指纹;
判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹。
可选地,所述信任证书白名单存储在本地和/或第一服务器中,所述判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤包括:
在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹;
若是,则判定所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发;
若不是,则依据所述服务器的数字证书的根证书的数字指纹生成查询请求;
将所述查询请求发送至第一服务器,所述第一服务器用于依据所述查询请求在第一服务器最新的信任证书白名单中查找与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并将所述数字指纹发送至浏览器;
接收第一服务器针对所述查询请求返回的与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并在本地存储的信任证书白名单中存储所述数字指纹,继续执行在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤。
可选地,所述判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤还包括:
若在第一服务器最新的信任证书白名单中查找不到与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,则判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发。
可选地,所述浏览器对应有第二服务器,所述第二服务器为经过操作***认证的受信任的根证书颁发机构,所述第二服务器用于在浏览器判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发时,对所述服务器进行补充认证,并为通过认证的服务器重新颁发数字证书。
可选地,所述方法还包括:
若所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发,则生成警告提示信息;
在浏览器侧展示所述警告提示信息。
可选地,所述服务器的数字证书还具有数字证书属性信息,在所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信的步骤之前,所述方法还包括:
判断所述数字证书属性信息是否合法;
若所述数字证书属性信息合法,则执行所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信的步骤。
可选地,所述数字证书属性信息至少包括如下信息的一种:所述数字证书的使用期限范围、服务器的网址信息;
所述判断所述数字证书属性信息是否合法的步骤包括:
判断当前时间信息在所述数字证书的使用期限范围内,若是,则判定所述数字证书的使用期限合法;
和/或
若所述服务器的网址信息与当前访问的网址信息一致,则判定所述服务器的网址信息合法。
可选地,所述方法还包括:
若判定所述服务器的数字证书的根证书是受信任的根证书颁发机构所颁发,则在浏览器的地址栏中显示对所述服务器的数字证书的根证书进行认证的认证方信息,所述认证方信息包括操作***认证或者浏览器认证。
根据本发明的另一方面,提供了一种基于https协议的数据通信装置,所述装置包括:
访问请求发起模块,适于在浏览器侧基于Https协议发起对服务器的访问请求;
数字证书接收模块,适于接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;
第一判断模块,适于判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;
第二判断模块,适于在判定所述服务器的数字证书的根证书不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发时,判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;
通信模块,适于在所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发时,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。
可选地,所述浏览器所信任的根证书颁发机构以数字指纹的形式存储在信任证书白名单中,所述第二判断模块包括:
数字指纹计算子模块,适于采用安全哈希算法SHA1计算所述服务器的数字证书的根证书的数字指纹;
数字指纹匹配子模块,适于判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹。
可选地,所述信任证书白名单存储在本地和/或第一服务器中,所述数字指纹匹配子模块还适于:
在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹;
若是,则判定所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发;
若不是,则依据所述服务器的数字证书的根证书的数字指纹生成查询请求;
将所述查询请求发送至第一服务器,所述第一服务器用于依据所述查询请求在第一服务器最新的信任证书白名单中查找与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并将所述数字指纹发送至浏览器;
接收第一服务器针对所述查询请求返回的与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并在本地存储的信任证书白名单中存储所述数字指纹,继续执行在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤。
可选地,所述数字指纹匹配子模块还包括:
若在第一服务器最新的信任证书白名单中查找不到与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,则判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发。
可选地,所述浏览器对应有第二服务器,所述第二服务器为经过操作***认证的受信任的根证书颁发机构,所述第二服务器用于在浏览器判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发时,对所述服务器进行补充认证,并为通过认证的服务器重新颁发数字证书。
可选地,所述装置还包括:
提示信息生成模块,适于在所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发时,生成警告提示信息;
提示模块,适于在浏览器侧展示所述警告提示信息。
可选地,所述服务器的数字证书还具有数字证书属性信息,在所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信的步骤之前,所述装置还包括:
第三判断模块,适于判断所述数字证书属性信息是否合法。
可选地,所述数字证书属性信息至少包括如下信息的一种:所述数字证书的使用期限范围、服务器的网址信息;
所述第三判断模块还适于:
判断当前时间信息在所述数字证书的使用期限范围内,若是,则判定所述数字证书的使用期限合法;
和/或
若所述服务器的网址信息与当前访问的网址信息一致,则判定所述服务器的网址信息合法。
可选地,所述装置还包括:
认证方信息显示模块,适于在判定所述服务器的数字证书的根证书是受信任的根证书颁发机构所颁发,则在浏览器的地址栏中显示对所述服务器的数字证书的根证书进行认证的认证方信息,所述认证方信息包括操作***认证或者浏览器认证。
在本发明实施例中,当浏览器接收到服务器返回的服务器的数字证书时,若浏览器判断服务器的数字证书的根证书不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发,则浏览器进一步判断服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发,若是,则判定该服务器的数字证书是受信任的,进而浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。通过在当前操作***对服务器的数字证书的根证书的认证的前提下,增加浏览器的补充认证过程,丰富了对数字证书进行认证的方式,增加了服务器的数字证书通过认证的几率,减少了因操作***中对受信任证书颁发机构的认证更新速度慢,导致的一些本来受信任的服务器不能通过操作***认证,而被认为是危险服务器的情况发生。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种基于https协议的数据通信方法实施例一的步骤流程图;
图2示出了根据本发明一个实施例的一种基于https协议的数据通信方法实施例二的步骤流程图;
图3示出了根据本发明一个实施例的一种基于https协议的数据通信方法实施例二的数字证书路径示意图;
图4示出了根据本发明一个实施例的一种基于https协议的数据通信方法实施例二的证书管理界面示意图;
图5示出了根据本发明一个实施例的一种基于https协议的数据通信方法实施例二的告警提示信息界面一示意图;
图6示出了根据本发明一个实施例的一种基于https协议的数据通信方法实施例二的告警提示信息界面二示意图;
图7示出了根据本发明一个实施例的一种基于https协议的数据通信装置实施例的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了本发明一个实施例的一种基于https协议的数据通信方法实施例一的步骤流程图,可以包括如下步骤:
步骤101,在浏览器侧基于Https协议发起对服务器的访问请求;
步骤102,接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;
步骤103,判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;
步骤104,若所述服务器的数字证书的根证书不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发,则判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;
步骤105,若所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。
在本发明实施例中,当浏览器接收到服务器返回的服务器的数字证书时,若浏览器判断服务器的数字证书的根证书不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发,则浏览器进一步判断服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发,若是,则判定该服务器的数字证书是受信任的,进而浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。通过在当前操作***对服务器的数字证书的根证书的认证的前提下,增加浏览器的补充认证过程,丰富了对数字证书进行认证的方式,增加了服务器的数字证书通过认证的几率,减少了因操作***中对受信任证书颁发机构的认证更新速度慢,导致的一些本来受信任的服务器不能通过操作***认证,而被认为是危险服务器的情况发生。
参照图2,示出了本发明一个实施例的一种基于https协议的数据通信方法实施例二的步骤流程图,可以包括如下步骤:
步骤201,在浏览器侧基于Https协议发起对服务器的访问请求;
Https协议是由SSL及Http协议构建的可进行加密传输、身份认证的网络协议,比Http协议安全。
在具体实现中,当用户在浏览器侧触发Https链接(例如,点击Https链接或在地址栏输入Https链接)时,浏览器针对该触发操作生成基于Https协议的访问请求,并将该访问请求发送至该Https链接对应的服务器的443端口(Https使用端口443,而不是像Http那样使用端口80来进行通信)中。其中,Https链接是一种以https开头的URL,例如“https//kyfw.12306.cn”。
在具体实现中,浏览器发送至服务器的访问请求除了包括Https链接以外,还可以包括浏览器能够支持的加密规则,,以及浏览器能够支持的SSL最高版本号、压缩算法列表等信息,其中,该加密规则可以包括一种或多种加解密算法。
步骤202,接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;
采用HTTPS协议的服务器必须要有一套数字证书,服务器接收到访问请求后,针对该访问请求,向浏览器返回服务器的数字证书。其中,数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在互联网上验证通信实体身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。
服务器的数字证书被安装于服务器设备上,用来证明服务器的身份和进行通信加密,以防止欺诈钓鱼站点。
数字证书由证书颁发(Certificate Authority,简称CA)中心发行。数字证书可以包含如下信息:服务器从浏览器发来的加密规则中选择的一组加解密算法及HASH算法、公钥、证书颁发中心CA的信息(例如CA的标识)、数字证书路径以及数字证书的属性信息等等。
其中,数字证书的属性信息可以包括数字证书的使用期限范围(包括有效起始时间以及有效终止时间组成的时间区间)、服务器的网址信息等等。
如图3的数字证书路径示意图所示,服务器返回的数字证书的证书路径可以包括两部分,一部分是该数字证书的根证书(根证书是证书颁发中心CA给自己颁发的证书,安装根证书意味着对这个CA的信任),即图3中的SRCA,另一部分是基于该根证书的子证书,即KYFW.12306.cn这台服务器使用的数字证书。
浏览器接收到服务器返回的服务器的数字证书以后,可以采用浏览器的安全传输层协议(TLS)对数字证书进行解析,以判断数字证书是否有效,例如判断数字证书是否是由浏览器信任的证书颁发机构CA颁发的;以及判断数字证书的属性信息是否合法等。其中,本发明实施例中,浏览器判断数字证书是否是由浏览器信任的证书颁发机构CA颁发的过程如步骤203-步骤204所示。
步骤203,判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;若否,则执行步骤204;若是,则执行步骤206;
浏览器接收到服务器返回的服务器的数字证书以后,可以依据该数字证书获得对应的根证书,例如,从证书路径中获得根证书。进而判断服务器返回的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发。
具体来说,操作***中具有证书管理的模块,该模块保存了经过操作***认证的权威CA所颁发的证书,这些证书都是可信赖的。例如,在windows***中,运行certmgr.msc命令,打开证书管理的界面,如图4所示,在证书管理界面中,“受信任的根证书颁发机构”节点下面的证书列表,是经过windows***认证了的权威CA所颁发的证书。
浏览器通过读取浏览器当前操作***的证书管理的模块中的数据,判断服务器返回的数字证书的根证书是否存在于该模块中的“受信任的根证书颁发机构”的节点中,如果是,则判定该数字证书是当前操作***所信任的CA颁发的,否则,则判定该数字证书不是当前操作***所信任的CA颁发的。
步骤204,判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;若否,则执行步骤205;若是,则执行步骤206;
应用于本发明实施例,浏览器中存储有浏览器信任的信任证书白名单,该信任证书白名单存储一个或多个经过浏览器认证的浏览器信任的证书颁发机构的信息。信任证书白名单可以为人工对证书颁发机构进行审核及收录得到的。在一种实施方式中,信任证书白名单还可以通过如下方式获得:浏览器对应有第二服务器,该第二服务器为经过操作***认证的受信任的根证书颁发机构CA之一,当浏览器判定服务器返回的数字证书的根证书不是浏览器所在当前操作***所信任的CA颁发时,浏览器记录下该服务器的信息,并将该服务器的信息发送至第二服务器,由第二服务器对所述服务器进行补充认证,并为通过认证的服务器重新颁发数字证书,以及将该服务器重新得到的数字证书存储在浏览器信任的信任证书白名单。当然,信任证书白名单也可以通过其他方式得到,本发明实施例对此无需加以限制。
在本发明实施例的一种优选实施例中,步骤204可以包括如下子步骤:
子步骤S11,采用安全哈希算法SHA1计算所述服务器的数字证书的根证书的数字指纹;
在浏览器获得服务器返回的数字证书的根证书以后,浏览器可以采用安全哈希算法(Secure Hash Algorithm,简称SHA1)计算该数字证书的根证书的数字指纹。其中,SHA1主要适用于数字签名标准(DigitalSignature Standard,DSS)里面定义的数字签名算法(Digital SignatureAlgorithm DSA)。对于长度小于2^64位的消息,SHA1会产生一个160位的消息摘要(即数字指纹),可以用来验证数据的完整性。
子步骤S12,判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹。
在信任证书白名单中,受浏览器信任的根证书颁发机构以数字指纹的形式存储。当计算得到服务器的数字证书的根证书的数字指纹以后,浏览器进一步在信任证书白名单中匹配该数字证书的根证书的数字指纹。
在本发明实施例的一种优选实施例中,子步骤S12可以进一步包括如下子步骤:
子步骤S121,在本地存储的信任证书白名单中查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹;若是,则执行子步骤S122,若否,则执行子步骤S123;
子步骤S122,判定所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发;
子步骤S123,依据所述服务器的数字证书的根证书的数字指纹生成查询请求;
子步骤S124,将所述查询请求发送至第一服务器,所述第一服务器用于依据所述查询请求在第一服务器最新的信任证书白名单中查找与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并将所述数字指纹发送至浏览器;
子步骤S125,接收第一服务器针对所述查询请求返回的与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并在本地存储的信任证书白名单中存储所述数字指纹,继续执行子步骤S121。
在实际应用中,浏览器信任的信任证书白名单可以存储在本地和/或浏览器对应的第一服务器中。为了节省交互次数,降低第一服务器的查询压力,浏览器首先在本地存储的信任证书白名单中查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,若是,则浏览器判定服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发;否则,浏览器依据服务器的数字证书的根证书的数字指纹生成查询请求,并将查询请求发送至第一服务器。
第一服务器接收到查询请求后,依据该查询请求在第一服务器最新的信任证书白名单中查找与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并将所述一致的数字指纹返回至浏览器。浏览器在本地存储的信任证书白名单中存储所述一致的数字指纹,并继续使用本地的信任证书白名单中匹配该数字证书的根证书的数字指纹。此时,由于浏览器本地的信任证书白名单中存储有与服务器的数字证书的根证书的数字指纹一致的数字指纹,则浏览器可以判定服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发。
若浏览器判定服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发,则浏览器判定服务器的数字证书是受信任的。
步骤205,浏览器生成告警提示信息,并在浏览器侧展示所述告警提示信息;
若在第一服务器最新的信任证书白名单中查找不到与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,则第一服务器可以生成错误匹配的信息,并将该错误匹配的信息发送至浏览器,浏览器依据错误匹配的信息判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发,此时,浏览器可以生成警告提示信息,将该警告提示信息提示给用户,警告用户这个服务器对应的数字证书不是可以信赖的,并询问用户是否需要继续。在一种实施方式中,浏览器生成的告警提示信息可以为浏览器对地址栏中的https链接可以添加不受信任标记,如图5所述。在另一种实施方式中,告警提示信息可以如图6所示,若用户在告警提示信息中选择接受该不受信的服务器,如图6所示,选择继续浏览网站,则继续执行步骤206。
进一步的,若浏览器判定服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发,浏览器还可以记录下该数字证书和/或服务器的域名,并将该数字证书和/或服务器的域名发送至第二服务器,由第二服务器对其进行补充认证,并在认证通过以后,为该服务器重新颁发数字证书。通过这种补充认证的方式,丰富了服务器的数字证书认证的渠道,提高了认证效率。
步骤206,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。
浏览器判定当前访问的服务器的数字证书是受信任以后,进一步判断该数字证书的属性信息是否合法。其方式可以为如下方式的至少一种:判断当前时间信息在所述数字证书的使用期限范围内,若是,则判定数字证书的使用期限合法;以及,若所述服务器的网址信息与当前访问的网址信息一致,则判定所述服务器的网址信息合法。
若浏览器判定当前访问的服务器的数字证书是受信任的以及判定该数字证书的属性信息合法以后,则浏览器判定该服务器的数字证书有效。此时,浏览器可以在浏览器的地址栏中显示对所述服务器的数字证书的根证书进行认证的认证方信息,所述认证方信息包括操作***认证或者浏览器认证。
同时,若浏览器判定该服务器的数字证书有效,浏览器与服务器确定通信加密信息。浏览器与服务器确定通信加密信息的方式可以为:
如果浏览器判断数字证书受信任,或者是用户接受了不受信的数字证书,浏览器可以生成一串随机数的密码,并用数字证书中提供的公钥加密;然后浏览器使用约定好的HASH算法计算握手消息,并使用生成的随机数对握手消息进行加密,最后将用公钥加密过的随机数,以及用随机数加密的握手消息发送给服务器;服务器接收到浏览器发送的消息以后,使用自己的私钥将消息解密取出随机数的密码,使用密码解密浏览器发来的握手消息,并使用HASH算法计算该握手消息的HASH值,验证其是否与浏览器发来的一致,若一致,服务器使用该随机数加密一段握手消息,发送给浏览器;浏览器解密并计算握手消息的HASH,如果与服务端发来的HASH一致,此时握手过程结束,之后浏览器与服务器的所有通信数据将由之前浏览器生成的随机密码并利用对称加密算法进行加密。
在本发明实施例中,通过在当前操作***对服务器的数字证书的根证书的认证的前提下,增加浏览器的补充认证过程,丰富了对数字证书进行认证的方式,增加了服务器的数字证书通过认证的几率,在保证用户上网安全的前提下,减少了用户接收告警提示信息的次数,保证了用户上网的顺畅,提升了用户体验。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
参照图7,示出了本发明一个实施例的一种基于https协议的数据通信装置实施例的结构框图,可以包括如下模块:
访问请求发起模块701,适于在浏览器侧基于Https协议发起对服务器的访问请求;
数字证书接收模块702,适于接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;
第一判断模块703,适于判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;
第二判断模块704,适于在判定所述服务器的数字证书的根证书不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发时,判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;
通信模块705,适于在所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发时,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。
在本发明实施例的一种优选实施例中,所述浏览器所信任的根证书颁发机构以数字指纹的形式存储在信任证书白名单中,所述第二判断模块704包括:
数字指纹计算子模块,适于采用安全哈希算法SHA1计算所述服务器的数字证书的根证书的数字指纹;
数字指纹匹配子模块,适于判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹。
在本发明实施例的一种优选实施例中,所述信任证书白名单存储在本地和/或第一服务器中,所述数字指纹匹配子模块还适于:
在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹;
若是,则判定所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发;
若不是,则依据所述服务器的数字证书的根证书的数字指纹生成查询请求;
将所述查询请求发送至第一服务器,所述第一服务器用于依据所述查询请求在第一服务器最新的信任证书白名单中查找与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并将所述数字指纹发送至浏览器;
接收第一服务器针对所述查询请求返回的与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并在本地存储的信任证书白名单中存储所述数字指纹,继续执行在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤。
在本发明实施例的一种优选实施例中,所述数字指纹匹配子模块还包括:
若在第一服务器最新的信任证书白名单中查找不到与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,则判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发。
在本发明实施例的一种优选实施例中,所述浏览器对应有第二服务器,所述第二服务器为经过操作***认证的受信任的根证书颁发机构,所述第二服务器用于在浏览器判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发时,对所述服务器进行补充认证,并为通过认证的服务器重新颁发数字证书。
在本发明实施例的一种优选实施例中,所述装置还包括:
提示信息生成模块,适于在所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发时,生成警告提示信息;
提示模块,适于在浏览器侧展示所述警告提示信息。
在本发明实施例的一种优选实施例中,所述服务器的数字证书还具有数字证书属性信息,在所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信的步骤之前,所述装置还包括:
第三判断模块,适于判断所述数字证书属性信息是否合法。
在本发明实施例的一种优选实施例中,所述数字证书属性信息至少包括如下信息的一种:所述数字证书的使用期限范围、服务器的网址信息;
所述第三判断模块还适于:
判断当前时间信息在所述数字证书的使用期限范围内,若是,则判定所述数字证书的使用期限合法;
和/或
若所述服务器的网址信息与当前访问的网址信息一致,则判定所述服务器的网址信息合法。
在本发明实施例的一种优选实施例中,所述装置还包括:
认证方信息显示模块,适于在判定所述服务器的数字证书的根证书是受信任的根证书颁发机构所颁发,则在浏览器的地址栏中显示对所述服务器的数字证书的根证书进行认证的认证方信息,所述认证方信息包括操作***认证或者浏览器认证。
对于图7的装置实施例而言,由于其与图2的方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟***或者其它设备固有相关。各种通用***也可以与基于在此的示教一起使用。根据上面的描述,构造这类***所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的基于https协议的数据通信设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明的实施例公开了A1、一种基于https协议的数据通信方法,所述方法包括:
在浏览器侧基于Https协议发起对服务器的访问请求;
接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;
判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;
如不是,则判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;
若所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。
A2、如A1所述的方法,所述浏览器所信任的根证书颁发机构以数字指纹的形式存储在信任证书白名单中,所述判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发的步骤包括:
采用安全哈希算法SHA1计算所述服务器的数字证书的根证书的数字指纹;
判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹。
A3、如A2所述的方法,所述信任证书白名单存储在本地和/或第一服务器中,所述判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤包括:
在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹;
若是,则判定所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发;
若不是,则依据所述服务器的数字证书的根证书的数字指纹生成查询请求;
将所述查询请求发送至第一服务器,所述第一服务器用于依据所述查询请求在第一服务器最新的信任证书白名单中查找与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并将所述数字指纹发送至浏览器;
接收第一服务器针对所述查询请求返回的与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并在本地存储的信任证书白名单中存储所述数字指纹,继续执行在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤。
A4、如A3所述的方法,所述判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤还包括:
若在第一服务器最新的信任证书白名单中查找不到与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,则判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发。
A5、如A3或A4所述的方法,所述浏览器对应有第二服务器,所述第二服务器为经过操作***认证的受信任的根证书颁发机构,所述第二服务器用于在浏览器判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发时,对所述服务器进行补充认证,并为通过认证的服务器重新颁发数字证书。
A6、如A1或A2或A3或A4所述的方法,还包括:
若所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发,则生成警告提示信息;
在浏览器侧展示所述警告提示信息。
A7、如A1或A2所述的方法,所述服务器的数字证书还具有数字证书属性信息,在所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信的步骤之前,所述方法还包括:
判断所述数字证书属性信息是否合法;
若所述数字证书属性信息合法,则执行所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信的步骤。
A8、如A7所述的方法,所述数字证书属性信息至少包括如下信息的一种:所述数字证书的使用期限范围、服务器的网址信息;
所述判断所述数字证书属性信息是否合法的步骤包括:
判断当前时间信息在所述数字证书的使用期限范围内,若是,则判定所述数字证书的使用期限合法;
和/或
若所述服务器的网址信息与当前访问的网址信息一致,则判定所述服务器的网址信息合法。
A9、如A1所述的方法,还包括:
若判定所述服务器的数字证书的根证书是受信任的根证书颁发机构所颁发,则在浏览器的地址栏中显示对所述服务器的数字证书的根证书进行认证的认证方信息,所述认证方信息包括操作***认证或者浏览器认证。
本发明的实施例公开了B10、一种基于https协议的数据通信装置,所述装置包括:
访问请求发起模块,适于在浏览器侧基于Https协议发起对服务器的访问请求;
数字证书接收模块,适于接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;
第一判断模块,适于判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;
第二判断模块,适于在判定所述服务器的数字证书的根证书不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发时,判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;
通信模块,适于在所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发时,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。
B11、如B10所述的装置,所述浏览器所信任的根证书颁发机构以数字指纹的形式存储在信任证书白名单中,所述第二判断模块包括:
数字指纹计算子模块,适于采用安全哈希算法SHA1计算所述服务器的数字证书的根证书的数字指纹;
数字指纹匹配子模块,适于判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹。
B12、如B11所述的装置,所述信任证书白名单存储在本地和/或第一服务器中,所述数字指纹匹配子模块还适于:
在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹;
若是,则判定所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发;
若不是,则依据所述服务器的数字证书的根证书的数字指纹生成查询请求;
将所述查询请求发送至第一服务器,所述第一服务器用于依据所述查询请求在第一服务器最新的信任证书白名单中查找与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并将所述数字指纹发送至浏览器;
接收第一服务器针对所述查询请求返回的与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并在本地存储的信任证书白名单中存储所述数字指纹,继续执行在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤。
B13、如B12所述的装置,所述数字指纹匹配子模块还包括:
若在第一服务器最新的信任证书白名单中查找不到与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,则判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发。
B14、如B12或B13所述的装置,所述浏览器对应有第二服务器,所述第二服务器为经过操作***认证的受信任的根证书颁发机构,所述第二服务器用于在浏览器判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发时,对所述服务器进行补充认证,并为通过认证的服务器重新颁发数字证书。
B15、如B10或B11或B12或B13所述的装置,还包括:
提示信息生成模块,适于在所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发时,生成警告提示信息;
提示模块,适于在浏览器侧展示所述警告提示信息。
B16、如B10或B11所述的装置,所述服务器的数字证书还具有数字证书属性信息,在所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信的步骤之前,所述装置还包括:
第三判断模块,适于判断所述数字证书属性信息是否合法。
B17、如B16所述的装置,所述数字证书属性信息至少包括如下信息的一种:所述数字证书的使用期限范围、服务器的网址信息;
所述第三判断模块还适于:
判断当前时间信息在所述数字证书的使用期限范围内,若是,则判定所述数字证书的使用期限合法;
和/或
若所述服务器的网址信息与当前访问的网址信息一致,则判定所述服务器的网址信息合法。
B18、如B1所述的装置,还包括:
认证方信息显示模块,适于在判定所述服务器的数字证书的根证书是受信任的根证书颁发机构所颁发,则在浏览器的地址栏中显示对所述服务器的数字证书的根证书进行认证的认证方信息,所述认证方信息包括操作***认证或者浏览器认证。
Claims (10)
1.一种基于https协议的数据通信方法,所述方法包括:
在浏览器侧基于Https协议发起对服务器的访问请求;
接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;
判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;
如不是,则判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;
若所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。
2.如权利要求1所述的方法,其特征在于,所述浏览器所信任的根证书颁发机构以数字指纹的形式存储在信任证书白名单中,所述判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发的步骤包括:
采用安全哈希算法SHA1计算所述服务器的数字证书的根证书的数字指纹;
判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹。
3.如权利要求2所述的方法,其特征在于,所述信任证书白名单存储在本地和/或第一服务器中,所述判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤包括:
在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹;
若是,则判定所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发;
若不是,则依据所述服务器的数字证书的根证书的数字指纹生成查询请求;
将所述查询请求发送至第一服务器,所述第一服务器用于依据所述查询请求在第一服务器最新的信任证书白名单中查找与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并将所述数字指纹发送至浏览器;
接收第一服务器针对所述查询请求返回的与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,并在本地存储的信任证书白名单中存储所述数字指纹,继续执行在本地存储的信任证书白名单查找是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤。
4.如权利要求3所述的方法,其特征在于,所述判断所述信任证书白名单中是否存在与所述服务器的数字证书的根证书的数字指纹一致的数字指纹的步骤还包括:
若在第一服务器最新的信任证书白名单中查找不到与所述服务器的数字证书的根证书的数字指纹一致的数字指纹,则判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发。
5.如权利要求3或4所述的方法,其特征在于,所述浏览器对应有第二服务器,所述第二服务器为经过操作***认证的受信任的根证书颁发机构,所述第二服务器用于在浏览器判定所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发时,对所述服务器进行补充认证,并为通过认证的服务器重新颁发数字证书。
6.如权利要求1或2或3或4所述的方法,其特征在于,还包括:
若所述服务器的数字证书的根证书不是浏览器所信任的根证书颁发机构所颁发,则生成警告提示信息;
在浏览器侧展示所述警告提示信息。
7.如权利要求1或2所述的方法,其特征在于,所述服务器的数字证书还具有数字证书属性信息,在所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信的步骤之前,所述方法还包括:
判断所述数字证书属性信息是否合法;
若所述数字证书属性信息合法,则执行所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信的步骤。
8.如权利要求7所述的方法,其特征在于,所述数字证书属性信息至少包括如下信息的一种:所述数字证书的使用期限范围、服务器的网址信息;
所述判断所述数字证书属性信息是否合法的步骤包括:
判断当前时间信息在所述数字证书的使用期限范围内,若是,则判定所述数字证书的使用期限合法;
和/或
若所述服务器的网址信息与当前访问的网址信息一致,则判定所述服务器的网址信息合法。
9.如权利要求1所述的方法,其特征在于,还包括:
若判定所述服务器的数字证书的根证书是受信任的根证书颁发机构所颁发,则在浏览器的地址栏中显示对所述服务器的数字证书的根证书进行认证的认证方信息,所述认证方信息包括操作***认证或者浏览器认证。
10.一种基于https协议的数据通信装置,所述装置包括:
访问请求发起模块,适于在浏览器侧基于Https协议发起对服务器的访问请求;
数字证书接收模块,适于接收所述服务器针对所述访问请求而返回的所述服务器的数字证书;
第一判断模块,适于判断所述服务器的数字证书的根证书是不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发;
第二判断模块,适于在判定所述服务器的数字证书的根证书不是由浏览器所在当前操作***所信任的根证书颁发机构所颁发时,判断所述服务器的数字证书的根证书是不是浏览器所信任的根证书颁发机构所颁发;
通信模块,适于在所述服务器的数字证书的根证书是浏览器所信任的根证书颁发机构所颁发时,所述浏览器与所述服务器确定通信加密信息并采用所述通信加密信息进行通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410823078.3A CN104580172B (zh) | 2014-12-24 | 2014-12-24 | 一种基于https协议的数据通信方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410823078.3A CN104580172B (zh) | 2014-12-24 | 2014-12-24 | 一种基于https协议的数据通信方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104580172A true CN104580172A (zh) | 2015-04-29 |
CN104580172B CN104580172B (zh) | 2017-12-12 |
Family
ID=53095353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410823078.3A Active CN104580172B (zh) | 2014-12-24 | 2014-12-24 | 一种基于https协议的数据通信方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104580172B (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105634744A (zh) * | 2015-12-31 | 2016-06-01 | 北京元心科技有限公司 | 一种根证书存储装置及安全接入方法 |
CN106789897A (zh) * | 2016-11-15 | 2017-05-31 | 沃通电子认证服务有限公司 | 用于移动终端应用程序的数字证书验证方法及*** |
CN107566393A (zh) * | 2017-09-26 | 2018-01-09 | 山东浪潮商用***有限公司 | 一种基于受信任证书的动态权限验证***及方法 |
CN107682371A (zh) * | 2017-11-21 | 2018-02-09 | 北京安博通科技股份有限公司 | 一种恶意ap的检测方法及装置 |
CN107707508A (zh) * | 2016-08-09 | 2018-02-16 | 中兴通讯股份有限公司 | 应用业务识别方法和装置 |
CN107800675A (zh) * | 2016-09-07 | 2018-03-13 | 深圳市腾讯计算机***有限公司 | 一种数据传输方法、终端以及服务器 |
CN107864159A (zh) * | 2017-12-21 | 2018-03-30 | 有米科技股份有限公司 | 基于证书及信任链的通信方法和装置 |
CN108259406A (zh) * | 2016-12-28 | 2018-07-06 | 中国电信股份有限公司 | 检验ssl证书的方法和*** |
CN108881484A (zh) * | 2018-07-26 | 2018-11-23 | 杭州云缔盟科技有限公司 | 一种检测终端是否能访问互联网的方法 |
CN109101813A (zh) * | 2018-09-03 | 2018-12-28 | 郑州云海信息技术有限公司 | 一种应用程序拦截方法及相关装置 |
CN109660530A (zh) * | 2018-12-08 | 2019-04-19 | 公安部第三研究所 | 一种基于硬件证书的信息安全防护方法 |
CN109657170A (zh) * | 2018-10-17 | 2019-04-19 | 平安普惠企业管理有限公司 | 网页加载方法、装置、计算机设备及存储介质 |
CN109861947A (zh) * | 2017-11-30 | 2019-06-07 | 腾讯科技(武汉)有限公司 | 一种网络劫持处理方法及装置、电子设备 |
CN110166470A (zh) * | 2019-05-28 | 2019-08-23 | 北京奇安信科技有限公司 | 一种网络服务模拟方法及装置 |
CN110557255A (zh) * | 2018-05-31 | 2019-12-10 | 北京京东尚科信息技术有限公司 | 一种证书管理的方法和装置 |
CN110581829A (zh) * | 2018-06-08 | 2019-12-17 | ***通信集团有限公司 | 通信方法及装置 |
CN111181912A (zh) * | 2019-08-27 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 浏览器标识的处理方法、装置、电子设备及存储介质 |
CN112073401A (zh) * | 2020-08-28 | 2020-12-11 | 苏州浪潮智能科技有限公司 | 一种基于HTTPS协议web应用自动更新证书的方法、程序及介质 |
CN113328980A (zh) * | 2020-02-29 | 2021-08-31 | 杭州迪普科技股份有限公司 | Tls认证方法、装置、***、电子设备及可读介质 |
CN114143034A (zh) * | 2021-11-01 | 2022-03-04 | 清华大学 | 一种网络访问安全性检测方法及装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111683089B (zh) * | 2020-06-08 | 2022-12-30 | 绿盟科技集团股份有限公司 | 一种识别钓鱼网站的方法、服务器、介质及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101141447A (zh) * | 2006-09-08 | 2008-03-12 | 飞塔信息科技(北京)有限公司 | Https通信隧道安全检查和内容过滤***和方法 |
CN101616165A (zh) * | 2009-07-28 | 2009-12-30 | 江苏先安科技有限公司 | 一种新型x509数字证书白名单发布查询验证的方法 |
CN102611707A (zh) * | 2012-03-21 | 2012-07-25 | 北龙中网(北京)科技有限责任公司 | 一种网站可信标识安装及识别方法 |
US8707028B2 (en) * | 2011-07-13 | 2014-04-22 | International Business Machines Corporation | Certificate-based cookie security |
-
2014
- 2014-12-24 CN CN201410823078.3A patent/CN104580172B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101141447A (zh) * | 2006-09-08 | 2008-03-12 | 飞塔信息科技(北京)有限公司 | Https通信隧道安全检查和内容过滤***和方法 |
CN101616165A (zh) * | 2009-07-28 | 2009-12-30 | 江苏先安科技有限公司 | 一种新型x509数字证书白名单发布查询验证的方法 |
US8707028B2 (en) * | 2011-07-13 | 2014-04-22 | International Business Machines Corporation | Certificate-based cookie security |
CN102611707A (zh) * | 2012-03-21 | 2012-07-25 | 北龙中网(北京)科技有限责任公司 | 一种网站可信标识安装及识别方法 |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105634744A (zh) * | 2015-12-31 | 2016-06-01 | 北京元心科技有限公司 | 一种根证书存储装置及安全接入方法 |
CN105634744B (zh) * | 2015-12-31 | 2020-01-21 | 北京元心科技有限公司 | 一种根证书存储装置及安全接入方法 |
CN107707508A (zh) * | 2016-08-09 | 2018-02-16 | 中兴通讯股份有限公司 | 应用业务识别方法和装置 |
CN107800675B (zh) * | 2016-09-07 | 2020-04-07 | 深圳市腾讯计算机***有限公司 | 一种数据传输方法、终端以及服务器 |
CN107800675A (zh) * | 2016-09-07 | 2018-03-13 | 深圳市腾讯计算机***有限公司 | 一种数据传输方法、终端以及服务器 |
WO2018090481A1 (zh) * | 2016-11-15 | 2018-05-24 | 沃通电子认证服务有限公司 | 用于移动终端应用程序的数字证书验证方法及*** |
CN106789897A (zh) * | 2016-11-15 | 2017-05-31 | 沃通电子认证服务有限公司 | 用于移动终端应用程序的数字证书验证方法及*** |
CN108259406B (zh) * | 2016-12-28 | 2020-12-29 | 中国电信股份有限公司 | 检验ssl证书的方法和*** |
CN108259406A (zh) * | 2016-12-28 | 2018-07-06 | 中国电信股份有限公司 | 检验ssl证书的方法和*** |
CN107566393A (zh) * | 2017-09-26 | 2018-01-09 | 山东浪潮商用***有限公司 | 一种基于受信任证书的动态权限验证***及方法 |
CN107682371A (zh) * | 2017-11-21 | 2018-02-09 | 北京安博通科技股份有限公司 | 一种恶意ap的检测方法及装置 |
CN109861947A (zh) * | 2017-11-30 | 2019-06-07 | 腾讯科技(武汉)有限公司 | 一种网络劫持处理方法及装置、电子设备 |
CN109861947B (zh) * | 2017-11-30 | 2022-03-22 | 腾讯科技(武汉)有限公司 | 一种网络劫持处理方法及装置、电子设备 |
CN107864159A (zh) * | 2017-12-21 | 2018-03-30 | 有米科技股份有限公司 | 基于证书及信任链的通信方法和装置 |
CN110557255A (zh) * | 2018-05-31 | 2019-12-10 | 北京京东尚科信息技术有限公司 | 一种证书管理的方法和装置 |
CN110581829A (zh) * | 2018-06-08 | 2019-12-17 | ***通信集团有限公司 | 通信方法及装置 |
CN108881484A (zh) * | 2018-07-26 | 2018-11-23 | 杭州云缔盟科技有限公司 | 一种检测终端是否能访问互联网的方法 |
CN109101813A (zh) * | 2018-09-03 | 2018-12-28 | 郑州云海信息技术有限公司 | 一种应用程序拦截方法及相关装置 |
CN109657170A (zh) * | 2018-10-17 | 2019-04-19 | 平安普惠企业管理有限公司 | 网页加载方法、装置、计算机设备及存储介质 |
CN109660530A (zh) * | 2018-12-08 | 2019-04-19 | 公安部第三研究所 | 一种基于硬件证书的信息安全防护方法 |
CN110166470A (zh) * | 2019-05-28 | 2019-08-23 | 北京奇安信科技有限公司 | 一种网络服务模拟方法及装置 |
CN110166470B (zh) * | 2019-05-28 | 2022-07-19 | 奇安信科技集团股份有限公司 | 一种网络服务模拟方法及装置 |
CN111181912A (zh) * | 2019-08-27 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 浏览器标识的处理方法、装置、电子设备及存储介质 |
CN111181912B (zh) * | 2019-08-27 | 2021-10-15 | 腾讯科技(深圳)有限公司 | 浏览器标识的处理方法、装置、电子设备及存储介质 |
CN113328980B (zh) * | 2020-02-29 | 2022-05-17 | 杭州迪普科技股份有限公司 | Tls认证方法、装置、***、电子设备及可读介质 |
CN113328980A (zh) * | 2020-02-29 | 2021-08-31 | 杭州迪普科技股份有限公司 | Tls认证方法、装置、***、电子设备及可读介质 |
CN112073401A (zh) * | 2020-08-28 | 2020-12-11 | 苏州浪潮智能科技有限公司 | 一种基于HTTPS协议web应用自动更新证书的方法、程序及介质 |
CN112073401B (zh) * | 2020-08-28 | 2022-05-10 | 苏州浪潮智能科技有限公司 | 一种基于HTTPS协议web应用自动更新证书的方法、程序及介质 |
CN114143034A (zh) * | 2021-11-01 | 2022-03-04 | 清华大学 | 一种网络访问安全性检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104580172B (zh) | 2017-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104580172A (zh) | 一种基于https协议的数据通信方法及装置 | |
US11777911B1 (en) | Presigned URLs and customer keying | |
AU2016218340B2 (en) | Secure and delegated distribution of private keys via domain name service | |
CN101860540B (zh) | 一种识别网站服务合法性的方法及装置 | |
US8185942B2 (en) | Client-server opaque token passing apparatus and method | |
US20090077373A1 (en) | System and method for providing verified information regarding a networked site | |
WO2015074547A1 (zh) | 一种对网页内容进行认证的方法和浏览器 | |
WO2018025991A1 (ja) | 通信システム、通信用クライアント、通信用サーバ、通信方法、プログラム | |
CN111241533A (zh) | 基于区块链的密码管理方法、装置及计算机可读存储介质 | |
CN104038486A (zh) | 一种基于标识型密码实现用户登录鉴别的***及方法 | |
CN105340213A (zh) | 用于安全数据传输的方法和设备 | |
CN107864677B (zh) | 内容访问验证***和方法 | |
KR20210112359A (ko) | 브라우저 쿠키 보안 | |
JP4698239B2 (ja) | Webサイトの成りすまし検出方法及びプログラム | |
CN104811421A (zh) | 基于数字版权管理的安全通信方法及装置 | |
KR102209531B1 (ko) | 클라우드 환경에서 인증서 및 개인키의 저장 방법 및 그 인증서 및 개인키를 다운로드 하는 방법 | |
KR100892609B1 (ko) | 보안 통신 시스템, 방법, 및 상기 방법을 실행시키기 위한컴퓨터 프로그램을 기록한 매체 | |
TWI677806B (zh) | 阻斷中間人攻擊的用戶數據加密裝置及其方法 | |
Blaine | The threat landscape of PKI: System and cryptographic security of x. 509, algorithms, and their implementations | |
KR20190099898A (ko) | Https에서의 쿠키 무결성 검증 방법 | |
KR101101190B1 (ko) | 보안 통신 시스템, 방법, 및 상기 방법을 실행시키기 위한 컴퓨터 프로그램을 기록한 매체 | |
US20230188364A1 (en) | Partial payload encryption with integrity protection | |
Petrică | Servers configuration and testing for secure exchange of information over the Internet | |
Pennanen | Signing Aauthentication tokens using TPM API PROXY | |
EP3061205B1 (en) | A system and method for certifying information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220718 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: Room 112, block D, No. 28, Xinjiekou outer street, Xicheng District, Beijing 100088 (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co.,Ltd. |