A method and device for requesting authentication of slices

By introducing a question-and-answer mechanism for slice request authentication in the video-on-demand system, the problems of illegal streaming and downloading on video platforms have been solved, and effective copyright protection has been achieved.

CN116506662BActive Publication Date: 2026-03-06HUNAN HAPPLY SUNSHINE INTERACTIVE ENTERTAINMENT MEDIA CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-04-26
Publication Date
2026-03-06

AI Technical Summary

Technical Problem

Video platforms face the problem of illegal streaming and downloading of video resources, and existing technologies are unable to effectively protect copyright.

Method used

The slice request authentication method is adopted, which uses a question-and-answer mechanism between the on-demand client and the server to answer questions and verify answers when sending slice requests, thereby ensuring legitimacy.

Benefits of technology

It effectively verifies the legitimacy of the playback device, reduces illegal streaming and downloading, and protects the copyright of video platforms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116506662B_ABST
    Figure CN116506662B_ABST
Patent Text Reader

Abstract

This application provides a slice request authentication method and device, comprising: sending a video-on-demand request for a target video to a video-on-demand server, and receiving a first question and index data returned by the video-on-demand server; sending a first slice request and a first answer to the video-on-demand server; and receiving first slice data and a second question sent by the video-on-demand server after verifying the first answer, wherein the second question is used to verify the next slice request. This application provides a question-and-answer mechanism based on slice requests, in which the previous question is answered while the slice data acquisition request is sent. After the server verifies the answer, it provides the corresponding video resource data to the video-on-demand client. In this way, seamless authentication is completed during the video-on-demand process, which can effectively verify the legitimacy of the playback terminal, effectively reduce illegal broadcasting and downloading, and protect the copyright of the video platform.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of Internet video playback technology, and in particular to a slice request authentication method and device. Background Technology

[0002] Video platforms frequently face the problem of illegal streaming and downloading of video resources, as well as the illegal dissemination of exclusive content. At the same time, illegal downloading consumes the platform's bandwidth resources, resulting in huge economic losses for the platform.

[0003] In existing technologies, platforms can add authentication parameters to playback requests, and the server can verify the legitimacy of the playback client by checking these key authentication parameters. However, unauthorized users can forge playback requests by capturing network packets, thereby illegally obtaining related resources. The problem of illegal dissemination of video resources remains serious, and the copyright interests of video platforms cannot be protected. Summary of the Invention

[0004] In view of this, this application provides a slice request authentication method and device, which can effectively verify the legitimacy of the playback end, effectively reduce illegal broadcasting and downloading, and protect the copyright of video platforms.

[0005] The technical solution is as follows:

[0006] In a first aspect, embodiments of this application provide a slice request authentication method, the method being applied to a video-on-demand client, the method comprising:

[0007] Send a video-on-demand request for the target video to the video-on-demand server, and receive a first question and index data returned by the video-on-demand server. The first question is randomly selected by the video-on-demand server from a preset question-and-answer database, and the index data is used to indicate the slice network position of the target video.

[0008] Send a first slice request and a first answer to the on-demand server. The first answer is determined based on the first question. The first slice request is determined based on the index data. The first slice request is used to obtain the first slice data of the target video.

[0009] The system receives the first slice data and the second question sent by the on-demand server after verifying the first answer. The second question is used to verify the next slice request.

[0010] Optionally, the method further includes:

[0011] The preset question and answer database is retrieved from the service platform according to a preset cycle, and the preset question and answer database is updated according to a preset cycle.

[0012] The first answer is determined based on the first question, including:

[0013] The first answer is obtained from the preset question and answer database based on the first question.

[0014] Optionally, the method further includes:

[0015] Send a second slice request and a second answer to the on-demand server, wherein the second answer is determined based on the second question, the second slice request is determined based on the index data, and the second slice request is used to obtain the second slice data of the target video;

[0016] The system receives second slice data and a third question sent by the on-demand server after the second answer has been authenticated. The third question is used to verify the next slice request.

[0017] Secondly, embodiments of this application provide a slice request authentication method, which is applied to a video-on-demand server, and the method includes:

[0018] Receive video-on-demand requests from video-on-demand clients for the target video;

[0019] The index data is determined based on the on-demand request, and a first question is randomly selected from a preset question and answer database. The index data is used to indicate the slice network position of the target video.

[0020] The first question and the index data are sent to the on-demand client, and the answer record of the on-demand client is recorded;

[0021] The system receives a first slice request and a first answer sent by the on-demand client. The first answer is determined based on the first question. The first slice request is determined based on the index data. The first slice request is used to obtain the first slice data of the target video.

[0022] After verifying the first answer, the number of times the first answer has been answered correctly is increased by one, and the first slice data and the second question are sent to the on-demand client. The second question is used to authenticate the on-demand client's next slice request.

[0023] Optionally, the method further includes:

[0024] The preset question and answer database is retrieved from the service platform according to a preset cycle, and the preset question and answer database is updated according to the preset cycle.

[0025] Optionally, the method further includes:

[0026] When the number of correct answers to the first answer exceeds a preset correct threshold, the number of incorrect answers recorded by the on-demand client is increased by one.

[0027] When the on-demand client initiates a segment request for the first time and its answer record is empty, the number of incorrect answers recorded by the on-demand client is incremented by one. Optionally, the method further includes:

[0028] After the first answer fails to pass verification, or after the first answer is not received from the on-demand client within a preset time period, the number of incorrect answers recorded by the on-demand client is increased by one.

[0029] When the number of incorrect responses from the on-demand client reaches a preset error threshold, the on-demand client's slice request is rejected.

[0030] Optionally, the method further includes:

[0031] The number of incorrect answers from the on-demand client is counted based on a sliding time window algorithm.

[0032] Thirdly, embodiments of this application provide a slice request authentication device, the device comprising:

[0033] Memory, used to store one or more programs;

[0034] A processor; when the one or more programs are executed by the processor, to implement the method as described in any one of the first aspects, or the method as described in any one of the second aspects.

[0035] Fourthly, embodiments of this application provide a computer storage medium storing a program that, when executed by a processor, implements the method as described in any one of the first aspects, or the method as described in any one of the second aspects.

[0036] The above technical solution has the following beneficial effects:

[0037] This application provides a slice request authentication method applied to a video-on-demand (V2D) client. When executing the method, a V2D request for a target video is sent to a V2D server, and the client receives a first question and index data returned by the V2D server. The first question is randomly selected by the V2D server from a preset question-and-answer database, and the index data indicates the network location of the target video slice. A first slice request and a first answer are sent to the V2D server. The first answer is determined based on the first question, and the first slice request is determined based on the index data. The first slice request is used to obtain the first slice data of the target video. The client receives the first slice data and a second question sent by the V2D server after verifying the first answer. The second question is used to verify the next slice request. This application provides a question-and-answer mechanism based on slice requests. While sending a slice data retrieval request, the client answers the previous question. After verifying the answer, the server provides the corresponding video resource data to the V2D client. This achieves seamless authentication during the V2D client's on-demand process, effectively verifying the legitimacy of the playback end, effectively reducing illegal streaming and downloading, and protecting the copyright of the video platform.

[0038] This application also provides devices and storage media corresponding to the above methods, which have the same beneficial effects as the above methods. Attached Figure Description

[0039] To more clearly illustrate the technical solutions in this embodiment or the prior art, the drawings used in the description of the embodiment or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0040] Figure 1 This is a schematic diagram of the structure of a video-on-demand system provided in an embodiment of this application;

[0041] Figure 2 A flowchart illustrating a slice request authentication method provided in an embodiment of this application;

[0042] Figure 3 A flowchart illustrating yet another slice request authentication method provided in this application embodiment;

[0043] Figure 4 An interactive schematic diagram of a slice request authentication method provided in an embodiment of this application;

[0044] Figure 5 This is a schematic diagram of the structure of a slice request authentication device provided in an embodiment of this application. Detailed Implementation

[0045] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0046] To effectively verify the legitimacy of the playback device, reduce illegal streaming and downloading, and protect the copyright of video platforms, this application proposes a slice request authentication method. This method is applied to... Figure 1 The video-on-demand system shown in the figure includes a video-on-demand server and terminal devices. The video-on-demand client is deployed on the terminal device, which can be a player, including but not limited to web-based players, mobile players, TV players, and computer players. The video-on-demand server involved in this application can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms. Terminal devices can be smartphones, tablets, laptops, PDAs, personal computers, smart TVs, smartwatches, projectors, etc., but are not limited to these. Terminal devices and servers can be directly or indirectly connected via wired or wireless communication, which is not limited herein. The number of servers and terminal devices is also not limited.

[0047] Based on the above introduction and Figure 1 For the corresponding video-on-demand system, please refer to [link / reference]. Figure 2 , Figure 2 This is a flowchart illustrating a slice request authentication method in an embodiment of this application. This method can be applied to a video-on-demand client and may specifically include:

[0048] Step S201: Send the on-demand request for the target video to the on-demand server, and receive the first question and index data returned by the on-demand server.

[0049] The on-demand client initiates playback of the target video by sending a playback request for the target video to the on-demand server. This request instructs the on-demand client to play the target video. The playback request may include video information of the target video, such as the address and name of the target video, which is not limited herein.

[0050] The first issue concerns the random selection of questions and answers by the on-demand server from a pre-set question-and-answer database. Specifically, the on-demand server retrieves this database from the service platform at a pre-set interval. It's understandable that the service platform is maintained and updated by the video platform provider. Regularly updating the database effectively reduces the risk of questions and answers being cracked. In practice, the database data can be encrypted using the XXTEA algorithm, and the on-demand server will decrypt the database and store it in a Redis cache.

[0051] As an optional implementation, after the on-demand server randomly selects a question, it can mark the question as "already asked" to avoid selecting the same question repeatedly in the future. Of course, if the number of questions and answers in the question-and-answer database is large enough, and the probability of the on-demand server randomly selecting a question and getting it repeated is small, then the selected question may not need to be marked, reducing the server's data processing workload.

[0052] It is understandable that the service platform's question and answer database update cycle is preset. The shorter the cycle, the faster the question and answer database is updated, and the lower the risk of questions and answers being cracked. However, the processing resources required for the update are also greater. In practical applications, video platforms can set the update cycle of the question and answer database according to their needs. This application does not impose any restrictions.

[0053] The index data is used to indicate the network location of the target video slices. The index data is a plain text file that records the index information of a video, and is used to locate the video's data resources. Specifically, the index file includes at least the network addresses of each video stream slice in the video stream file of the video.

[0054] In this application, the video-on-demand file is provided to the client in the form of a video stream; therefore, the video file consists of at least one video stream segment. The network address of the video stream segment in the index file is used to indicate the storage location of the video stream segment, so as to request the video stream segment corresponding to the network address of the video stream segment from the server. As an example, the video-on-demand protocol in this application can be the HTTP Live Streaming protocol (HLS protocol) or the Dynamic Adaptive Streaming over HTTP protocol (DASH protocol).

[0055] Correspondingly, under the HLS protocol, the index data provided in this application can specifically be an m3u8 index file. Each .m3u8 file corresponds to several .ts files. These .ts files are the ones that actually store the video data. The .m3u8 files only store some configuration information and related paths of the .ts files. When the video is played, the .m3u8 files are dynamically changed. The corresponding .ts files are obtained by parsing these files for video playback.

[0056] Correspondingly, under the DASH protocol, the index data provided in this application can be an MPD file. An MPD file is actually an XML file, which defines all the information of the video to be played, such as video length, resolution, and segments. Similarly, the streaming media playback of the target video can be obtained by parsing the MPD file.

[0057] Step S202: Send the first slice request and the first answer to the on-demand server.

[0058] The on-demand client also retrieves a pre-defined question-and-answer database from the service platform at a preset period. For details, refer to the on-demand server's process for retrieving the question-and-answer database. The on-demand client retrieves the first answer from the pre-defined question-and-answer database based on the first question. The first slice request is determined based on index data and is used to request the first slice data of the target video. The first slice data can play a segment of the target video.

[0059] Step S203: Receive the first slice data and the second question sent by the on-demand server after verifying the first answer. The second question is used to verify the next slice request.

[0060] Specifically, the on-demand server verifies the first answer sent by the on-demand client based on a pre-set question-and-answer database. If the verification is successful, the server sends the first segment data requested by the on-demand client to the client, enabling the client to play the target video normally. Simultaneously with sending the first segment data, the on-demand server also randomly selects a second question from the pre-set question-and-answer database and sends it along with the first segment data to the on-demand client. The second question is used for verification in the next round of segment requests.

[0061] In practical applications, questions randomly obtained by the on-demand server, such as the first question and the second question, can be placed in the response header of the message sent to the on-demand client. This makes it easier for the on-demand client to parse the response header, answer the question, and download and play the segmented data content.

[0062] In one alternative implementation, this application further includes:

[0063] Send the second slice request and the second answer to the on-demand server. Receive the second slice data and the third question sent by the on-demand server after the second answer is verified. The third question is used to verify the next slice request.

[0064] Specifically, after the second answer is verified, the on-demand server sends the second segment data and a third question. The third question is used to verify the authentication of the next segment request. The target video requested by the on-demand client in this application corresponds to multiple segments. The on-demand server returns the segment data requested by the on-demand client on one hand, and simultaneously asks the on-demand playback client a question to verify its legitimacy on the other. Only if the playback client answers correctly within a specified time is the user deemed legitimate.

[0065] In summary, the slice request authentication method provided in this application provides a question-and-answer mechanism based on slice requests. While sending a slice data acquisition request, the method answers the previous question. After verifying the answer, the server provides the corresponding video resource data to the on-demand client. In this way, seamless authentication is completed during the on-demand process of the on-demand client, which can effectively verify the legitimacy of the playback terminal, effectively reduce illegal broadcasting and downloading, and protect the copyright of the video platform.

[0066] Based on the above introduction and Figure 1 For the corresponding video-on-demand system, please refer to [link / reference]. Figure 3 , Figure 3 This is another flowchart illustrating the slice request authentication method in this application embodiment. This method can be applied to a video-on-demand server, and may specifically include:

[0067] Step S301: Receive the on-demand request for the target video sent by the on-demand client.

[0068] The video-on-demand client sends a video-on-demand request for the target video, which instructs the client to request playback of the target video. The video-on-demand request may include video information of the target video, such as the address and name of the target video, etc., which are not limited herein.

[0069] Step S302: Determine the index data based on the on-demand request, and randomly select the first question from the preset question and answer database.

[0070] Specifically, the on-demand server determines index data based on the on-demand request for the target video. The index data is used to indicate the network location of the video slices and is used to locate the data resources of the video. The index file includes at least the network addresses of each video stream slice in the video stream file of the video.

[0071] The on-demand server randomly selects the first question from a pre-set question-and-answer database. Specifically, the on-demand server retrieves the pre-set question-and-answer database from the service platform according to a pre-set period. It's understandable that the service platform is maintained and updated by the video platform provider. Regularly updating the question-and-answer database effectively reduces the risk of questions and answers being cracked. In practical applications, the question-and-answer database data can also be encrypted using the XTEA algorithm.

[0072] Step S303: Send the first question and index data to the on-demand client, and record the on-demand client's answer record.

[0073] Specifically, the VOD server caches and records the answer records of VOD clients. These answer records can include an identifier generated for each question and answer session. Optionally, this identifier can be generated from the VOD client's device ID, question ID, the slice ID requested by the VOD client, and the question sequence number. It should be noted that the answer records of VOD clients can be cleared after the VOD client goes offline to avoid consuming cache resources.

[0074] Step S304: Receive the first slice request and the first answer sent by the on-demand client.

[0075] The on-demand client also retrieves a pre-defined question-and-answer database from the service platform at a preset period. For details, refer to the on-demand server's process for retrieving the question-and-answer database. The on-demand client retrieves the first answer from the pre-defined question-and-answer database based on the first question. The first slice request is determined based on index data and is used to request the first slice data of the target video. The first slice data can play a segment of the target video.

[0076] Step S305: After verifying the first answer, increase the number of times the first answer has been correctly answered by one, and send the first slice data and the second question to the on-demand client. The second question is used to authenticate the on-demand client's next slice request.

[0077] Specifically, the VOD server caches the number of times a particular answer in the question-and-answer database has been answered correctly. For example, if the first answer returned by the VOD client is correct, the count of the first answer being answered correctly is incremented by 1. After verifying the first answer, the first slice data and the second question are sent to the VOD client. The second question is used to authenticate the VOD client's next slice request.

[0078] In summary, the slice request authentication method provided in this application provides a question-and-answer mechanism based on slice requests. While sending a slice data acquisition request, the method answers the previous question. After verifying the answer, the server provides the corresponding video resource data to the on-demand client. In this way, seamless authentication is completed during the on-demand process of the on-demand client, which can effectively verify the legitimacy of the playback terminal, effectively reduce illegal broadcasting and downloading, and protect the copyright of the video platform.

[0079] As an optional implementation, when the number of correct answers to the first answer is greater than a preset correct threshold, the number of incorrect answers recorded by the on-demand client is increased by one; when the on-demand client initiates a slice request for the first time and the on-demand client's answer record is empty, the number of incorrect answers recorded by the on-demand client is increased by one.

[0080] Specifically, when the number of correct answers for the first answer exceeds a preset correct threshold, the following situations may occur:

[0081] (1) When a user experiences a change in network environment or network packet loss, the on-demand customer may repeatedly send the same answer, which increases the number of correct answers.

[0082] (2) An unauthorized user captures the answer data in a slice request, forges a slice request, and repeatedly performs authentication using the answer data obtained through packet capture.

[0083] (3) When the on-demand client randomly retrieves a question, it repeatedly retrieves the same question, and the corresponding answer is also the same, which also increases the number of correct answers for that answer. This situation is less likely to occur. It should be noted that in situation (3), if the on-demand server enables the "asked" mark for selected questions, subsequent selection of questions from the "asked" mark can be completely avoided. However, in actual applications, if there are enough questions in the question and answer database, the on-demand server may not mark the selected questions, reducing the server's data processing workload.

[0084] Therefore, when the number of correct answers for a certain answer exceeds the preset correct threshold, the on-demand client determines the device ID of the on-demand client corresponding to the answer based on the recorded answer records of the on-demand client, and increases the number of incorrect answers recorded for that on-demand client by one. This application does not limit the preset correct threshold. As an option, the preset correct threshold can be set to 2 times.

[0085] Furthermore, when the on-demand client initiates its first slice request and its answer history is empty, the following situations may occur:

[0086] (1) When a user’s network environment changes, the on-demand server connected to the on-demand client changes after the network switch, resulting in the slice requests falling on different on-demand server nodes. The on-demand server connected after the network switch has not previously provided slice request services to the on-demand client. At this time, the answer record of the on-demand client on the on-demand server is empty. In this case, regardless of whether the answer provided by the on-demand client is correct, the number of incorrect answers of the on-demand client is increased by one.

[0087] (2) The slice request is a forged request. In this case, the on-demand client initiates the slice request for the first time and the corresponding on-demand client's answer record is empty. The same record increases the number of incorrect answers of the on-demand client by one. This can prevent unauthorized users from achieving authentication by frequently switching the connected on-demand server.

[0088] Understandably, the aforementioned network environment switching, such as switching from WiFi to mobile data or from a telecommunications network to a mobile network, may cause the on-demand client to connect to a different on-demand server when the client's network environment changes. This could result in subsequent segment requests landing on different on-demand server nodes, and the client's next segment request carrying the answer might land on a different on-demand server node. In this case, the on-demand server node receiving the segment request internally checks the answer status corresponding to the client's device ID. If the number of incorrect answers has not reached a preset error threshold, authentication is successful, and the corresponding segment data is returned. Simultaneously, a set of questions and answers is randomly selected from the question-and-answer database, and the question is included in the response header and returned together. The subsequent authentication process is the same as the steps described above.

[0089] As an optional implementation, the method further includes:

[0090] If the first answer fails to pass verification, or if the first answer is not received from the on-demand client within a preset time period, the number of incorrect answers recorded by the on-demand client is increased by one; when the number of incorrect answers recorded by the on-demand client reaches a preset error threshold, the on-demand client's slice request is rejected.

[0091] Specifically, if the on-demand server fails to verify the first answer, or does not receive the first answer from the on-demand client within the preset time limit, the error count for that on-demand client will be increased by one. It should be noted that the preset time limit can be set based on the playback duration corresponding to the segment request data. For example, if the playback duration of each segment request data is 10 seconds, the preset time limit can be set to 5 seconds. It is understood that the preset time limit can be set as needed. Generally, to avoid playback stuttering, the preset time limit should be less than the playback duration of the segment request data. This application does not impose a limitation on the preset time limit.

[0092] Meanwhile, to better prevent illegal hotlinking, when the number of incorrect answers corresponding to the device ID of the on-demand client reaches the alarm threshold, the on-demand server can also send an alarm message to the video platform, which will then be handled by human service. At the same time, it will warn the on-demand client that illegal behavior has triggered an alarm.

[0093] In practical applications, to prevent the questions and answers in the slice context from being cracked, embodiments of this application can encrypt the questions and answers using a symmetric encryption algorithm, such as the xxtea algorithm, and use Base64 encoding to output the encrypted questions and answers, thereby reducing the risk of the question and answer database being intercepted and forged, and ensuring the security of video on demand.

[0094] In practical applications, the on-demand server can implement the logic code based on Nginx+lua, and the on-demand client's answer records, the number of correct answers and the number of incorrect answers can be cached through a Redis cluster.

[0095] As an optional implementation, in this embodiment of the application, the answer records of the on-demand client, the number of correct answers and the number of incorrect answers can be counted using a sliding time window algorithm, which can smooth the count and avoid misjudgment in the case of frequent network switching.

[0096] Assuming we count the number of incorrect responses hourly, we can treat the current time as an infinitely extending directed axis, divided into fixed units called time windows. Cache the statistical data for a unit of time window and organize it into a ring. Essentially, we determine which sample window a request falls into by taking the modulo of the number of time windows. For example, assuming each time window is preset to 5 minutes and there are 20 preset time windows, we can count data over a 100-minute range. We can round the current timestamp to obtain the timestamp closest to the 5-minute multiple of the time window size, then take the modulo of the number of windows to determine which unit window it falls into. We then count the counts of the previous 11 unit windows sequentially to obtain the count for the current hour. The sliding time window algorithm can effectively smooth the count and prevent statistical errors at time boundaries, such as changing from 23:59:59 to 00:00:00.

[0097] See Figure 4 The diagram illustrates an interaction of a slice request authentication method, as explained below:

[0098] When a video-on-demand (V2D) client initiates playback, it sends a request for the target video to V2D server A. V2D server A generates index data based on this request and randomly selects a first question, sending it to the client. The client answers the first question to obtain the first answer and determines the first video segment request based on the index data. It then sends the first answer and the first video segment request back to V2D server A. V2D server A verifies the first answer. If the verification is successful, it sends the first video segment data and the randomly selected second question back to the client. This process repeats continuously. While playing video segment data, the client answers one question sent by the V2D server and sends the answer to the previous question along with the next video segment data request. After verifying the answer, the V2D server provides the corresponding video resource data to the client. This seamless authentication process during V2D client playback effectively verifies the legitimacy of the playback device, significantly reducing illegal streaming and downloading, and protecting the copyright of the video platform.

[0099] Furthermore, the on-demand client experiences a network switch, and the on-demand server it connects to changes after the network switch, reconnecting to on-demand server B. The on-demand client sends the nth slice request and the nth answer to on-demand server B. At this time, on-demand server B also verifies the nth answer sent by the on-demand client. Since the on-demand client has no answer record on on-demand server B before, that is, the answer record of the on-demand client is empty, the on-demand server sends the nth slice data and the randomly obtained n+1th question to the on-demand client, and directly records that the number of incorrect answers of the on-demand client increases by one. Subsequent interactions are carried out in the normal answer verification manner.

[0100] Furthermore, the on-demand client forges a segment request, sending the first segment request and the first answer to the on-demand server A. The on-demand server A records the number of times the first answer is answered correctly. Suppose that under this forged request, the number of times the first answer is answered correctly has exceeded the preset correct threshold, the on-demand server A determines that the on-demand client is an illegal on-demand client, sends an alarm message to the video platform, and sends an alarm notification to the illegal on-demand client.

[0101] As can be seen from the above, the slice request authentication method provided in this application is a question-and-answer mechanism based on slice requests. While sending a slice data retrieval request, the client answers the previous question. After verifying the answer, the server provides the corresponding video resource data to the on-demand client. Thus, seamless authentication is completed during the on-demand client's playback process, effectively verifying the legitimacy of the playback end and significantly reducing illegal streaming and downloading, protecting the copyright of the video platform. Furthermore, by statistically analyzing the number of incorrect answers and correct answers from the on-demand client, the risk of data being illegally downloaded and played is effectively reduced, protecting the platform's copyrighted content and lowering bandwidth costs.

[0102] This application also provides a slice request authentication device; please refer to [link to relevant documentation]. Figure 5 The diagram shows the structure of the device, which may include:

[0103] Memory 501 is used to store one or more programs;

[0104] Processor 502; when the one or more programs are executed by the processor, implements the method as provided in any of the embodiments of this application.

[0105] It should be noted that the method for executing a program stored in the memory of a slice request authentication device provided in this application corresponds to the method provided in the application embodiment. The description of this part can be found in the embodiments of the foregoing method section, and will not be repeated here.

[0106] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.

[0107] Those skilled in the art will understand that the flowchart shown is merely an example in which the embodiments of this application can be implemented, and the scope of application of the embodiments of this application is not limited by any aspect of the flowchart.

[0108] In the several embodiments provided in this application, it should be understood that the disclosed methods, apparatuses, and devices can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual couplings or direct couplings or communication connections may be through some communication interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.

[0109] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs. Furthermore, the functional units in the various embodiments of this application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0110] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0111] The above description of the disclosed embodiments enables those skilled in the art to make or use this application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. Therefore, this application is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A slice request authentication method, the method is applied to an on-demand client, characterized in that, The method comprises: sending an on-demand request of a target video to an on-demand server, and receiving first questions and index data returned by the on-demand server, the first questions being randomly selected from a preset Q&A database, and the index data being used to indicate a network location of a slice of the target video, wherein the preset Q&A database is obtained from a service platform, and the service platform is maintained and updated by a video platform party; sending first slice requests and first answers to the on-demand server, the first answers being determined according to the first questions and the preset Q&A database, and the first slice requests being determined based on the index data, the first slice requests being used to obtain first slice data of the target video; receiving the first slice data and second questions sent by the on-demand server after verifying that the first answers are correct, the second questions being used to verify next slice requests.

2. The method of claim 1, wherein, The method further comprises: obtaining the preset Q&A database from the service platform according to a preset period, and the preset Q&A database being updated according to a preset period; the first answers being determined according to the first questions, comprising: obtaining the first answers from the preset Q&A database according to the first questions.

3. The method of claim 1, wherein, The method further comprises: sending second slice requests and second answers to the on-demand server, the second answers being determined according to the second questions, and the second slice requests being determined based on the index data, the second slice requests being used to obtain second slice data of the target video; receiving the second slice data and third questions sent by the on-demand server after authenticating that the second answers are correct, the third questions being used to verify next slice requests.

4. A slice request authentication method, the method being applied to an on-demand server, characterized in that, The method comprises: receiving an on-demand request of a target video sent by an on-demand client; determining index data according to the on-demand request, and randomly selecting first questions from a preset Q&A database, the index data being used to indicate a network location of a slice of the target video, wherein the preset Q&A database is obtained from a service platform, and the service platform is maintained and updated by a video platform party; sending the first questions and the index data to the on-demand client, and recording answer records of the on-demand client; receiving first slice requests and first answers sent by the on-demand client, the first answers being determined according to the first questions and the preset Q&A database, and the first slice requests being determined based on the index data, the first slice requests being used to obtain first slice data of the target video; after verifying that the first answers are correct, recording that the first answers are correctly answered once, and sending the first slice data and second questions to the on-demand client, the second questions being used to authenticate next slice requests of the on-demand client.

5. The method of claim 4, wherein, The method further comprises: obtaining the preset Q&A database from the service platform according to a preset period, and the preset Q&A database being updated according to a preset period.

6. The method of claim 4, wherein, The method further comprises: When the number of times that the first answer is correct is greater than a preset correct threshold, record the number of times that the on-demand client is incorrect in answering as being increased by one; When the on-demand client initiates a slice request for the first time and the on-demand client has no answer record, record the number of times that the on-demand client is incorrect in answering as being increased by one.

7. The method according to any one of claims 4 to 6, characterized in that, The method further comprises: After verifying that the first answer is incorrect, or after not receiving the first answer sent by the on-demand client within a preset time length, record the number of times that the on-demand client is incorrect in answering as being increased by one; When the number of times that the on-demand client is incorrect in answering reaches a preset incorrect threshold, reject the slice request of the on-demand client.

8. The method of any one of claim 7, characterized in that, The method further comprises: The number of times that the on-demand client is incorrect in answering is counted based on a sliding time window algorithm.

9. A slice request authentication apparatus, characterized by, The device comprises: a memory for storing one or more programs; a processor; when the one or more programs are executed by the processor, the method of any one of claims 1 to 3, or the method of any one of claims 4 to 7 is implemented.

10. A computer storage medium, characterized in that, The computer storage medium has a program stored thereon, and the program is executed by a processor to implement the method of any one of claims 1 to 3, or the method of any one of claims 4 to 7.

Citation Information

Patent Citations

  • Data transmission system, method, device and storage medium in video-on-demand

    CN109257630A

  • Verification method based on client, server and storage medium

    CN111478903A

  • Data access method and device, computer equipment and storage medium

    CN112260997A