CN113542229B - 一种安全非同源页面跨域通信的方法 - Google Patents

一种安全非同源页面跨域通信的方法 Download PDF

Info

Publication number
CN113542229B
CN113542229B CN202110684319.0A CN202110684319A CN113542229B CN 113542229 B CN113542229 B CN 113542229B CN 202110684319 A CN202110684319 A CN 202110684319A CN 113542229 B CN113542229 B CN 113542229B
Authority
CN
China
Prior art keywords
page
data
broadcast
security verification
cross
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
CN202110684319.0A
Other languages
English (en)
Other versions
CN113542229A (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.)
Hangzhou Juxiu Technology Co ltd
Original Assignee
Hangzhou City University
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 Hangzhou City University filed Critical Hangzhou City University
Priority to CN202110684319.0A priority Critical patent/CN113542229B/zh
Publication of CN113542229A publication Critical patent/CN113542229A/zh
Application granted granted Critical
Publication of CN113542229B publication Critical patent/CN113542229B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开的属于网络安全技术领域,具体为一种安全非同源页面跨域通信的方法,包括以下步骤:步骤1:在页面一中建立广播数据监听事件;步骤2:在页面一获取页面二所在窗口对象的实例;步骤3:在页面二发送不同类型的广播,触发页面一监听事件;步骤4:在页面一和页面二之间进行安全验证和广播数据验证;步骤5:在页面一和页面二之间进行广播加密,加密过程贯穿整个通信过程;本发明提供了一种安全非同源页面跨域通信的方法,实现了不同域间页面的跨域通信,同时能够保证通信过程安全,可以支持企业进行安全有效,且成本低廉的相关网页应用产品设计与构建。

Description

一种安全非同源页面跨域通信的方法
技术领域
本发明涉及网络安全技术领域,具体为一种安全非同源页面跨域通信的方法。
背景技术
随着Internet的不断发展,网络安全问题日益突出。现有技术中,Web浏览器会阻止不同域中的文档互相影响,即对于两个不同页面的脚本,只有当执行它们的页面位于具有相同的协议,端口号,以及主机时,这两个脚本才能相互通信。而随着互联网技术的发展,在页面中嵌套跨域的第三方页面的方式被越来越多企业采用,页面间进行安全跨域通信的需求也变得普遍。
现有的页面跨域通信时安全性得不到有效的保障,且相关网页应用产品设计与构建成本较高。
发明内容
本发明的目的在于提供一种安全非同源页面跨域通信的方法,以解决上述背景技术中提出的安全性得不到有效的保障,构建成本较高的问题。
为实现上述目的,本发明提供如下技术方案:一种安全非同源页面跨域通信的方法,包括以下步骤:
步骤1:在页面一中建立广播数据监听事件;
步骤2:在页面一获取页面二所在窗口对象的实例;
步骤3:在页面二发送不同类型的广播,触发页面一监听事件;
步骤4:在页面一和页面二之间进行安全验证和广播数据验证;
步骤5:在页面一和页面二之间进行广播加密,加密过程贯穿整个通信过程;
其中,所述页面一与页面二属于不同的域;
所述广播数据验证的步骤为:
A、在页面二发送广播时,在结构化对象数据中将包含时间戳;
B、在页面一接收广播后,向页面二发送数据时也带上接收到的时间戳;
C、最后由页面二验证,如果时间戳相同,则视为一次完整的发送-接收过程。
优选的,所述步骤3中发送不同类型的广播其发送方式为PostMessage方式。
优选的,所述发送的广播内容为一个结构化对象数据,所述结构化对象数据包括:待发送数据,数据发送源,数据接受源,广播类型,时间戳,安全验证码。
优选的,所述广播类型为一段字符串,所述结构化对象数据中待发送数据的内容由广播类型确定。
优选的,所述时间戳为当前时间的毫秒数。
优选的,所述不同类型的广播通过结构化对象的广播类型字段定义。
优选的,所述的广播加密包括:
在页面二发送广播时,在结构化对象数据中将包含加密后的安全验证码;
在页面一接收广播前,先对安全验证码进行安全验证,验证通过后才发送返回数据。
优选的,所述安全验证码的生成步骤为:首先将页面二的User Id和Secret Key组合后,再通过HMAC哈希运算生成Code,最后将该Code使用Secret Key通过AES加密生成安全验证码。
优选的,所述安全验证码的验证步骤为:页面一根据接收到的安全验证码,以及页面二的Secret Key和User Id,通过Secret Key和User Id进行与页面二相同的加密运算,比对结果是否和安全验证码完全相同,若相同,则可以向其发送数据。
与现有技术相比,本发明的有益效果是:
本发明提供了一种安全非同源页面跨域通信的方法,实现了不同域间页面的跨域通信,同时能够保证通信过程安全,可以支持企业进行安全有效,且成本低廉的相关网页应用产品设计与构建。
附图说明
图1为本发明流程示意图;
图2为本发明结构化对象数据的结构示意图;
图3为本发明页面一与页面二跨域通信时广播数据验证过程的流程图;
图4为本发明页面一与页面二跨域通信时安全验证码生成过程的流程图;
图5为本发明页面一与页面二跨域通信时安全验证码验证过程的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
实施例:
请参阅图1-5,本发明提供一种技术方案:一种安全非同源页面跨域通信的方法,包括以下步骤:
步骤1:在页面一中建立广播数据监听事件;
步骤2:在页面一获取页面二所在窗口对象的实例;
步骤3:在页面二发送不同类型的广播,触发页面一监听事件;
步骤4:在页面一和页面二之间进行安全验证和广播数据验证;
步骤5:在页面一和页面二之间进行广播加密,加密过程贯穿整个通信过程;
其中,所述页面一与页面二属于不同的域。
页面一和页面二之间使用PostMessage相互传递消息,消息为一个结构化对象数据,该结构化对象数据中包含待传输数据与安全验证等相关字段,字段经过加密后可实现非同源页面之间的安全跨域通信。
PostMessage技术是H5中的一种新技术,它把父子页面的通信当做事件来处理,而且增加了通信源的判断,因此可以便捷、安全地实现跨域通信。postMessage(data,origin)方法接受两个参数,其中data为页面一与页面二所传递的消息,本实施例中传递的消息为一个结构化对象数据;origin为字符串参数,指明目标窗口的源,格式为:协议+主机+端口号[+URL],URL会被忽略,所以也可以不写。postMessage()方法只会将message传递给指定窗口,若要传递给任意窗口也可以建参数设置为”*”,如果要指定和当前窗口同源则可设置为”/”。
所述步骤3中发送不同类型的广播其发送方式为PostMessage方式。
发送的广播内容为一个结构化对象数据,如图2所示,结构化对象数据包括:待发送数据,数据发送源,数据接受源,广播类型,时间戳,安全验证码,数据发送源与数据接受源即为页面二与页面一的地址,时间戳为当前时间的毫秒数。
不同类型的广播通过结构化对象的广播类型字段定义,广播类型为一段字符串,结构化对象数据中的待发送数据的内容由广播类型确定,具体的,发送方将根据广播类型字段的设置,自动选择页面相应的属性数据放入待发送数据字段中,这样可以减低企业应用过程中的复杂度,减少信息传递的错误率,提高效率。
如图3所示,广播数据验证的步骤为:
A、在页面二发送广播时,在结构化对象数据中将包含时间戳;
B、在页面一接收广播后,向页面二发送数据时也带上接收到的时间戳;
C、最后由页面二验证,如果时间戳相同,则视为一次完整的发送-接收过程;通过发送方,即页面二确认接收方,即页面一所携带的时间戳,能够保证确认通信过程的完整性,准确性,防止因网络等意外原因造成的通信错误。
所述的广播加密包括:
在页面二发送广播时,在结构化对象数据中将包含加密后的安全验证码;
在页面一接收广播前,先对安全验证码进行安全验证,验证通过后才发送返回数据,安全验证码为一个加密的字符串,该字段可以实现所述的广播加密,加密过程贯穿非同源页面跨域通信的整个过程,以此实现通信过程的安全。具体的,包括:首先在所述页面二发送广播时,在所述结构化对象数据中将包含加密后的安全验证码;然后在所述页面一接收广播前,先对所述安全验证码进行安全验证,验证通过后才发送返回数据。
如图4所示,所述安全验证码的生成步骤为:首先将页面二的User Id和SecretKey组合后,再通过HMAC哈希运算生成Code,最后将该Code使用SK通过AES加密生成安全验证码。
如图5所示,所述安全验证码的验证步骤为:页面一根据接收到的安全验证码,以及页面二的SK和User Id,通过SK和User Id进行与页面二相同的加密运算,比对结果是否和安全验证码完全相同,若相同,则可以向其发送数据;具体的:
步骤S501,首先所述页面一将接收到的所述页面二的User Id和Secret Key(SK)进行组合;
步骤S502,再通过HMAC(SHA256)哈希运算生成Code
步骤S503,再将上述Code使用SK通过AES加密生成页面一的安全验证码;
步骤S504,最后将得到的安全验证码与接收到的页面二的安全验证码进行对比,若相同,则可以向其发送数据。
本发明实施例中,安全验证码的初始数据由页面的User Id和Secret Key(SK)组合得到。由于页面的SK是保密的,仅应用方和平台方知晓,故只需要配合适当的签名算法,就可以得到原始信息的数字签名,防止消息在传递过程中被伪造或篡改,大大提高了跨域通信过程中的安全性。同时,安全验证码的在加密过程中还使用了HMAC(Hash-basedMessage Authentication Code)算法和AES(Advanced Encryption Standard)对称加密算法。HMAC是一种基于密钥的报文完整性的验证方法,它要求通信双方共享密钥、约定算法、对报文进行Hash运算,形成固定长度的认证码。其在IPSec和其他网络协议(如SSL)中得以广泛应用,现在已经成为事实上的Internet安全标准。而AES加密和解密用相同的密钥,这种加密方式加密速度非常快,适合经常发送数据的场合。故本发明在实现了不同域间页面的跨域通信的同时,还能够保证通信过程的安全,可以支持企业进行安全有效,且成本低廉的相关网页应用产品设计与构建。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点,对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明;因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内,不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (9)

1.一种安全非同源页面跨域通信的方法,其特征在于:包括以下步骤:
步骤1:在页面一中建立广播数据监听事件;
步骤2:在页面一获取页面二所在窗口对象的实例;
步骤3:在页面二发送不同类型的广播,触发页面一监听事件;
步骤4:在页面一和页面二之间进行安全验证和广播数据验证;
步骤5:在页面一和页面二之间进行广播加密,加密过程贯穿整个通信过程;
其中,所述页面一与页面二属于不同的域;
所述广播数据验证的步骤为:
A、在页面二发送广播时,在结构化对象数据中将包含时间戳;
B、在页面一接收广播后,向页面二发送数据时也带上接收到的时间戳;
C、最后由页面二验证,如果时间戳相同,则视为一次完整的发送-接收过程。
2.根据权利要求1所述的一种安全非同源页面跨域通信的方法,其特征在于:所述步骤3中发送不同类型的广播其发送方式为PostMessage方式。
3.根据权利要求2所述的一种安全非同源页面跨域通信的方法,其特征在于:所述发送的广播内容为一个结构化对象数据,所述结构化对象数据包括:待发送数据,数据发送源,数据接受源,广播类型,时间戳,安全验证码。
4.根据权利要求3所述的一种安全非同源页面跨域通信的方法,其特征在于:所述广播类型为一段字符串,所述结构化对象数据中待发送数据的内容由广播类型确定。
5.根据权利要求3所述的一种安全非同源页面跨域通信的方法,其特征在于:所述时间戳为当前时间的毫秒数。
6.根据权利要求1-3任一项所述的一种安全非同源页面跨域通信的方法,其特征在于:所述不同类型的广播通过结构化对象的广播类型字段定义。
7.根据权利要求1-3任一项所述的一种安全非同源页面跨域通信的方法,其特征在于:所述的广播加密包括:
在页面二发送广播时,在结构化对象数据中将包含加密后的安全验证码;
在页面一接收广播前,先对安全验证码进行安全验证,验证通过后才发送返回数据。
8.根据权利要求7所述的一种安全非同源页面跨域通信的方法,其特征在于:所述安全验证码的生成步骤为:首先将页面二的User Id和Secret Key组合后,再通过HMAC哈希运算生成Code,最后将该Code使用Secret Key通过AES加密生成安全验证码。
9.根据权利要求7所述的一种安全非同源页面跨域通信的方法,其特征在于:所述安全验证码的验证步骤为:页面一根据接收到的安全验证码,以及页面二的Secret Key和UserId,通过Secret Key和User Id进行与页面二相同的加密运算,比对结果是否和安全验证码完全相同,若相同,则可以向其发送数据。
CN202110684319.0A 2021-06-21 2021-06-21 一种安全非同源页面跨域通信的方法 Active CN113542229B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110684319.0A CN113542229B (zh) 2021-06-21 2021-06-21 一种安全非同源页面跨域通信的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110684319.0A CN113542229B (zh) 2021-06-21 2021-06-21 一种安全非同源页面跨域通信的方法

Publications (2)

Publication Number Publication Date
CN113542229A CN113542229A (zh) 2021-10-22
CN113542229B true CN113542229B (zh) 2023-03-24

Family

ID=78096331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110684319.0A Active CN113542229B (zh) 2021-06-21 2021-06-21 一种安全非同源页面跨域通信的方法

Country Status (1)

Country Link
CN (1) CN113542229B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102917058A (zh) * 2012-10-19 2013-02-06 北京奇虎科技有限公司 一种通信方法和系统
CN103095762A (zh) * 2011-11-02 2013-05-08 腾讯科技(深圳)有限公司 Web页面跨域通信方法和装置
CN104410722A (zh) * 2014-12-19 2015-03-11 上海斐讯数据通信技术有限公司 一种Web页面窗口对象的通信方法及系统
CN110213321A (zh) * 2019-01-17 2019-09-06 腾讯云计算(北京)有限责任公司 互联网应用中提供第三方服务的方法、装置及电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10397243B2 (en) * 2014-07-25 2019-08-27 Sap Se Condition checking for page integration of third party services
US10257253B1 (en) * 2016-06-23 2019-04-09 Integral Ad Science, Inc. Systems, methods, and media for correlating information corresponding to multiple related frames on a web page
CN111309493A (zh) * 2018-12-12 2020-06-19 阿里巴巴集团控股有限公司 多页面间通信的实现方法、装置及电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095762A (zh) * 2011-11-02 2013-05-08 腾讯科技(深圳)有限公司 Web页面跨域通信方法和装置
CN102917058A (zh) * 2012-10-19 2013-02-06 北京奇虎科技有限公司 一种通信方法和系统
CN104410722A (zh) * 2014-12-19 2015-03-11 上海斐讯数据通信技术有限公司 一种Web页面窗口对象的通信方法及系统
CN110213321A (zh) * 2019-01-17 2019-09-06 腾讯云计算(北京)有限责任公司 互联网应用中提供第三方服务的方法、装置及电子设备

Also Published As

Publication number Publication date
CN113542229A (zh) 2021-10-22

Similar Documents

Publication Publication Date Title
US10447674B2 (en) Key exchange through partially trusted third party
US10412098B2 (en) Signed envelope encryption
CN109743171B (zh) 一种解决多方数字签名、时间戳及加密的密钥串联方法
US11914754B2 (en) Cryptographic method for verifying data
US10055591B1 (en) Secure protocol attack mitigation
CN106941404B (zh) 密钥保护方法及装置
CN106464496A (zh) 用于创建对用户身份鉴权的证书的方法和系统
US11956367B2 (en) Cryptographic method for verifying data
CN114614994B (zh) Api接口数据的通信方法、装置、客户端及存储介质
CN107517194B (zh) 一种内容分发网络的回源认证方法和装置
US20130103944A1 (en) Hypertext Link Verification In Encrypted E-Mail For Mobile Devices
CN111914291A (zh) 消息处理方法、装置、设备及存储介质
CN101667999A (zh) 点对点直播流传递的方法、系统、数据签名装置及客户端
WO2023160420A1 (zh) 群组消息加密方法、装置、设备和存储介质
CN112202773B (zh) 一种基于互联网的计算机网络信息安全监控与防护系统
US8583921B1 (en) Method and system for identity authentication
CN114499857B (zh) 一种实现大数据量子加解密中数据正确性与一致性的方法
CN112927026A (zh) 优惠券的处理方法、装置、电子设备及计算机存储介质
CN113542229B (zh) 一种安全非同源页面跨域通信的方法
Zhang et al. A systematic approach to formal analysis of QUIC handshake protocol using symbolic model checking
CN114650181B (zh) 电子邮件加解密方法、系统、设备及计算机可读存储介质
CN115801341A (zh) 一种面向分布式可调节负荷互动的区块链可信认证方法
CN115001871A (zh) 基于区块链技术的文件加密共享的方法和系统
CN111641494A (zh) 全球区块链的实现方法及装置
CN111800384A (zh) 基于区块链的金融服务应用管理方法及装置

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
TR01 Transfer of patent right

Effective date of registration: 20240122

Address after: Room 613, Building 2, No. 371, Mingxing Road, Xiaoshan District, Hangzhou, Zhejiang 311215

Patentee after: HANGZHOU JUXIU TECHNOLOGY Co.,Ltd.

Country or region after: China

Address before: 310000 No.51 Huzhou street, Gongshu District, Hangzhou City, Zhejiang Province

Patentee before: HANGZHOU City University

Country or region before: China

TR01 Transfer of patent right