CN112653695A - 一种实现反爬虫的方法及系统 - Google Patents
一种实现反爬虫的方法及系统 Download PDFInfo
- Publication number
- CN112653695A CN112653695A CN202011518999.0A CN202011518999A CN112653695A CN 112653695 A CN112653695 A CN 112653695A CN 202011518999 A CN202011518999 A CN 202011518999A CN 112653695 A CN112653695 A CN 112653695A
- Authority
- CN
- China
- Prior art keywords
- request
- server
- carried
- encryption
- local timestamp
- 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.)
- Pending
Links
Images
Classifications
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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/12—Applying verification of the received information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及web程序数据保护领域,具体提供了一种实现反爬虫的方法,请求方获取JavaScript脚本,在JavaScript脚本获取本地时间戳time和请求携带的参数param,通过本地时间戳time和请求携带的参数param构造加密,通过加密的方式发送请求;响应方接收请求,并获取本地时间戳time和请求携带的参数param,通过加密的方式获取信息,进行对比两次加密的信息。与现有技术相比,本发明保证了服务端数据传输的安全性,降低了服务端的负载压力,提高了服务端资源利用效率。
Description
技术领域
本发明涉及web程序数据保护领域,具体提供一种实现反爬虫的方法及系统。
背景技术
随着互联网的蓬勃发展,网络世界已经和人类生活密不可分,人们通过互联网体验各式各样的服务,浏览和提供品类繁多的信息。但是随着爬虫技术的兴起,网络中的信息遭受了极大的安全挑战,一些敏感信息虽然保存在各大公司服务端,但爬虫程序可以毫不费力的获得来自于服务端的大部分数据,由此造成了许多安全隐患,比如商业公司的大量数据被爬虫爬取分析,不利于公司的商业竞争,个人信息被爬虫程序爬取,可能会造成一些个人隐私的泄露,对个人生活产生影响。
另一方面,一些爬虫的技术手段比较暴力,短时间内多次请求服务端,给服务端造成巨大的负载压力,降低了服务端的相应效率。因此制定一定的反爬虫策略就势在必行。
发明内容
本发明是针对上述现有技术的不足,提供一种实用性强的实现反爬虫的方法。
本发明解决其技术问题所采用的技术方案是:
一种实现反爬虫的方法,请求方获取JavaScript脚本,在JavaScript脚本获取本地时间戳time和请求携带的参数param,通过本地时间戳time和请求携带的参数param构造加密,通过加密的方式发送请求;
响应方接收请求,并获取本地时间戳time和请求携带的参数param,通过加密的方式获取信息,进行对比两次加密的信息。
进一步的,所述请求方从服务端获取加密需要的JavaScript脚本,并在JavaScript脚本内部获取当前系统本地时间戳time和请求携带的参数param。
进一步的,JavaScript脚本内部通过本地时间戳time和请求携带的参数param构造加密参数的原始值origin。
进一步的,在JavaScript脚本内部通过md5加密方式对原始值origin加密获得加密结果result;
请求方构造请求url并携带result,构造原始值origin时使用的本地时间戳time和请求携带的参数param,发送请求。
进一步的,所述响应方接收请求后从url中获取本地时间戳time和请求携带的参数param构造server_origin。
进一步的,响应方采用md5方法对server_origin加密获取server_result,响应方对比server_result和从url中获取的result,两者一致,则返回请求方请求的数据,否则,返回非法请求提示。
一种实现反爬虫的系统,请求方用于获取JavaScript脚本,在JavaScript脚本获取本地时间戳time和请求携带的参数param,通过本地时间戳time和请求携带的参数param构造加密,通过加密的方式发送请求;
响应方用于接收请求,并获取本地时间戳time和请求携带的参数param,通过加密的方式获取信息,进行对比两次加密的信息。
进一步的,所述请求方用于从服务端获取加密需要的JavaScript脚本,在JavaScript脚本内部获取当前系统本地时间戳time和请求携带的参数param,且通过本地时间戳time和请求携带的参数param构造加密参数的原始值origin,通过md5加密方式对origin加密获得加密结果result,请求方构造请求url并携带result,构造origin时使用的time和param,发送请求。
进一步的,所述响应方用于接收到请求后从url中获取time和param构造server_origin,采用md5方法对server_origin加密获取server_result,响应方对比server_result和从url中获取的result,二者一致,则返回请求方请求的数据,否则,返回非法请求提示。
本发明的一种实现反爬虫的方法及系统和现有技术相比,具有以下突出的有益效果:
本发明对web程序数据安全问题的分析和网络爬虫造成的服务器资源浪费的情况分析,根据分析形成加密过程体系,结合http协议的get方法特性以及参数加密实现反爬虫系统,保证了服务端数据传输的安全性,降低了服务端的负载压力,提高了服务端资源利用效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1是一种实现反爬虫的方法中请求方流程示意图;
附图2是一种实现反爬虫的方法中响应方流程示意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明的方案,下面结合具体的实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
下面给出一个最佳实施例:
如图1、2所示,本实施例中的一种实现反爬虫的方法,具有如下步骤:
S1请求方从服务端获取加密需要的JavaScript脚本。
S2请求方在JavaScript脚本内部获取当前系统本地时间戳time和请求携带的参数param。
S3请求方在JavaScript脚本内部通过time和param构造加密参数的原始值origin。
S4请求方在JavaScript脚本内部通过md5加密方式对origin加密获得加密结果result。
S5请求方构造请求url并携带result,构造origin时使用的time和param,发送请求。
S6响应方接收到请求后从url中获取time和param构造server_origin。
S7响应方采用同样的md5方法对server_origin加密获取server_result。
S8响应方对比server_result和从url中获取的result,二者一致则返回请求方请求的数据,否则返回非法请求提示。
实现上述方法的系统为:
请求方用于获取JavaScript脚本,在JavaScript脚本获取本地时间戳time和请求携带的参数param,通过本地时间戳time和请求携带的参数param构造加密,通过加密的方式发送请求;
响应方用于接收请求,并获取本地时间戳time和请求携带的参数param,通过加密的方式获取信息,进行对比两次加密的信息。
其中,请求方用于从服务端获取加密需要的JavaScript脚本,在JavaScript脚本内部获取当前系统本地时间戳time和请求携带的参数param,且通过本地时间戳time和请求携带的参数param构造加密参数的原始值origin,通过md5加密方式对origin加密获得加密结果result,请求方构造请求url并携带result,构造origin时使用的time和param,发送请求。
响应方用于接收到请求后从url中获取time和param构造server_origin,采用md5方法对server_origin加密获取server_result,响应方对比server_result和从url中获取的result,二者一致,则返回请求方请求的数据,否则,返回非法请求提示。
上述具体的实施方式仅是本发明具体的个案,本发明的专利保护范围包括但不限于上述具体的实施方式,任何符合本发明的一种实现反爬虫的方法及系统权利要求书的且任何所述技术领域普通技术人员对其做出的适当变化或者替换,皆应落入本发明的专利保护范围。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (9)
1.一种实现反爬虫的方法,其特征在于,请求方获取JavaScript脚本,在JavaScript脚本获取本地时间戳time和请求携带的参数param,通过本地时间戳time和请求携带的参数param构造加密,通过加密的方式发送请求;
响应方接收请求,并获取本地时间戳time和请求携带的参数param,通过加密的方式获取信息,进行对比两次加密的信息。
2.根据权利要求1所述的一种实现反爬虫的方法,其特征在于,所述请求方从服务端获取加密需要的JavaScript脚本,并在JavaScript脚本内部获取当前系统本地时间戳time和请求携带的参数param。
3.根据权利要求2所述的一种实现反爬虫的方法,其特征在于,JavaScript脚本内部通过本地时间戳time和请求携带的参数param构造加密参数的原始值origin。
4.根据权利要求3所述的一种实现反爬虫的方法,其特征在于,在JavaScript脚本内部通过md5加密方式对原始值origin加密获得加密结果result;
请求方构造请求url并携带result,构造原始值origin时使用的本地时间戳time和请求携带的参数param,发送请求。
5.根据权利要求4所述的一种实现反爬虫的方法,其特征在于,所述响应方接收请求后从url中获取本地时间戳time和请求携带的参数param构造server_origin。
6.根据权利要求5所述的一种实现反爬虫的方法,其特征在于,响应方采用md5方法对server_origin加密获取server_result,响应方对比server_result和从url中获取的result,两者一致,则返回请求方请求的数据,否则,返回非法请求提示。
7.一种实现反爬虫的系统,其特征在于,请求方用于获取JavaScript脚本,在JavaScript脚本获取本地时间戳time和请求携带的参数param,通过本地时间戳time和请求携带的参数param构造加密,通过加密的方式发送请求;
响应方用于接收请求,并获取本地时间戳time和请求携带的参数param,通过加密的方式获取信息,进行对比两次加密的信息。
8.根据权利要求7所述的一种实现反爬虫的系统,其特征在于,所述请求方用于从服务端获取加密需要的JavaScript脚本,在JavaScript脚本内部获取当前系统本地时间戳time和请求携带的参数param,且通过本地时间戳time和请求携带的参数param构造加密参数的原始值origin,通过md5加密方式对origin加密获得加密结果result,请求方构造请求url并携带result,构造origin时使用的time和param,发送请求。
9.根据权利要求8所述的一种实现反爬虫的系统,其特征在于,所述响应方用于接收到请求后从url中获取time和param构造server_origin,采用md5方法对server_origin加密获取server_result,响应方对比server_result和从url中获取的result,二者一致,则返回请求方请求的数据,否则,返回非法请求提示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011518999.0A CN112653695A (zh) | 2020-12-21 | 2020-12-21 | 一种实现反爬虫的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011518999.0A CN112653695A (zh) | 2020-12-21 | 2020-12-21 | 一种实现反爬虫的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112653695A true CN112653695A (zh) | 2021-04-13 |
Family
ID=75359635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011518999.0A Pending CN112653695A (zh) | 2020-12-21 | 2020-12-21 | 一种实现反爬虫的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112653695A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112804269A (zh) * | 2021-04-14 | 2021-05-14 | 中建电子商务有限责任公司 | 一种实现网站接口反爬虫的方法 |
CN116366231A (zh) * | 2023-02-22 | 2023-06-30 | 北京麦克斯泰科技有限公司 | 一种基于加密混淆保护网站资源的反爬虫方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107483563A (zh) * | 2017-07-31 | 2017-12-15 | 九次方大数据信息集团有限公司 | 防爬虫的数据查询方法和装置以及客户端和服务器 |
CN108259437A (zh) * | 2016-12-29 | 2018-07-06 | 北京神州泰岳软件股份有限公司 | 一种http访问方法、http服务器和系统 |
CN109525600A (zh) * | 2018-12-28 | 2019-03-26 | 深圳竹云科技有限公司 | 一种基于对分页参数加密的反网络爬虫的方法 |
US20200034537A1 (en) * | 2018-07-30 | 2020-01-30 | Rubrik, Inc. | Ransomware infection detection in filesystems |
CN111817845A (zh) * | 2019-04-11 | 2020-10-23 | 亿度慧达教育科技(北京)有限公司 | 反爬虫方法及计算机存储介质 |
-
2020
- 2020-12-21 CN CN202011518999.0A patent/CN112653695A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108259437A (zh) * | 2016-12-29 | 2018-07-06 | 北京神州泰岳软件股份有限公司 | 一种http访问方法、http服务器和系统 |
CN107483563A (zh) * | 2017-07-31 | 2017-12-15 | 九次方大数据信息集团有限公司 | 防爬虫的数据查询方法和装置以及客户端和服务器 |
US20200034537A1 (en) * | 2018-07-30 | 2020-01-30 | Rubrik, Inc. | Ransomware infection detection in filesystems |
CN109525600A (zh) * | 2018-12-28 | 2019-03-26 | 深圳竹云科技有限公司 | 一种基于对分页参数加密的反网络爬虫的方法 |
CN111817845A (zh) * | 2019-04-11 | 2020-10-23 | 亿度慧达教育科技(北京)有限公司 | 反爬虫方法及计算机存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112804269A (zh) * | 2021-04-14 | 2021-05-14 | 中建电子商务有限责任公司 | 一种实现网站接口反爬虫的方法 |
CN112804269B (zh) * | 2021-04-14 | 2021-07-06 | 中建电子商务有限责任公司 | 一种实现网站接口反爬虫的方法 |
CN116366231A (zh) * | 2023-02-22 | 2023-06-30 | 北京麦克斯泰科技有限公司 | 一种基于加密混淆保护网站资源的反爬虫方法及系统 |
CN116366231B (zh) * | 2023-02-22 | 2023-11-24 | 北京麦克斯泰科技有限公司 | 一种基于加密混淆保护网站资源的反爬虫方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wu et al. | An effective approach for the protection of user commodity viewing privacy in e-commerce website | |
JP6234607B2 (ja) | 処理されたデータを検証する方法および装置 | |
CN112333198A (zh) | 安全跨域登录方法、系统及服务器 | |
CN104283903B (zh) | 文件的下载方法及装置 | |
CN104217173A (zh) | 一种针对浏览器的数据和文件加密方法 | |
CN107016074B (zh) | 一种网页加载方法及装置 | |
CN103763308A (zh) | 一种智能终端安全访问网页和下载数据的方法和装置 | |
CN111177735B (zh) | 身份认证方法、装置、系统和设备以及存储介质 | |
CN107463848B (zh) | 一种面向应用的密文搜索方法、装置、代理服务器和系统 | |
Qadri et al. | Tag based client side detection of content sniffing attacks with file encryption and file splitter technique | |
CN112653695A (zh) | 一种实现反爬虫的方法及系统 | |
US20150271197A1 (en) | Providing multi-level password and phishing protection | |
CN104243488B (zh) | 一种跨网站服务器的登录认证方法 | |
Aljawarneh | Formulating models to survive multimedia big content from integrity violation | |
KR20140061788A (ko) | 무결성이 보장되는 프로그램 코드를 이용한 보안 방법 및 서버 | |
Saha et al. | Model based threat and vulnerability analysis of e-governance systems | |
CN114491489A (zh) | 请求响应方法、装置、电子设备及存储介质 | |
CN113609425A (zh) | 网页数据处理方法及系统 | |
KR101296384B1 (ko) | 웹 페이지 무결성 검증 시스템 및 방법 | |
EP4042665B1 (en) | Preventing data manipulation in telecommunication network measurements | |
CN114553570B (zh) | 生成令牌的方法、装置、电子设备及存储介质 | |
CN116112172B (zh) | Android客户端gRPC接口安全校验的方法和装置 | |
CN115189945B (zh) | 交易请求验证方法及装置、电子设备和可读存储介质 | |
Ajay et al. | Security of Web Applications with short web service: a review Study | |
KR101378549B1 (ko) | 패턴을 이용한 동적 웹 컨텐츠 보안 서버 및 방법 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210413 |