Method and apparatus for processing medical conversation

By performing complex calculations and concatenation transformations on the session identifier to generate an encrypted session identifier, the security problem caused by plaintext transmission is solved, and high-security access to medical sessions is achieved.

CN116668179BActive Publication Date: 2026-04-24KANG JIAN INFORMATION TECH (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
KANG JIAN INFORMATION TECH (SHENZHEN) CO LTD
Filing Date
2023-07-04
Publication Date
2026-04-24

AI Technical Summary

Technical Problem

Existing medical sessions have poor security. Session identifiers transmitted in plaintext are easily cracked, tampered with, or stolen by malicious programs, increasing the risk of leakage of patient medical information.

Method used

By generating a seed dataset and a computation factor dataset for session identifiers, determining a computation set array based on the operator set, and concatenating and transforming the array elements to obtain an encrypted session identifier, and then verifying it with the verification session identifier to access medical data.

Benefits of technology

It improves the security of medical sessions, reduces the possibility of session identifiers being cracked, tampered with, or stolen by malicious programs, and reduces the risk of patient information leakage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116668179B_ABST
    Figure CN116668179B_ABST
Patent Text Reader

Abstract

The application discloses a medical conversation processing method and device, relates to the technical field of communication and digital medical treatment, and mainly aims to solve the problem of poor safety of the existing medical conversation. Mainly includes: when a medical conversation used for a medical data request is generated, a conversation identifier of the medical conversation is acquired; a calculation set array is determined based on an operator set, a seed data set generated by the conversation identifier and a calculation factor data set, and array elements in the calculation set array are spliced and converted to obtain an encrypted conversation identifier; and medical data access is performed based on the medical conversation after verification is performed based on the encrypted conversation identifier and a verification conversation identifier.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communication and digital medical technology, and in particular to a method and apparatus for processing medical sessions. Background Technology

[0002] As healthcare needs continue to integrate with digital platforms, an increasing number of patients are seeking medical care through online platforms. A session identifier is a unique identifier stored simultaneously on both the server and the client to represent the session state of a user's data interaction with the server. When a user initiates a request to the server, the locally stored session identifier is added to the request information. When the server receives the request, it parses the session identifier and compares it with the user identifier in memory to determine whether the current user's request is authorized.

[0003] Currently, existing session identifiers are generated when the server initiates a request and are only encrypted when the patient logs in to ensure data security during subsequent data requests. However, because session identifiers are transmitted in plaintext, in insecure network environments, these identifiers are easily marked by malicious programs to crack, capture, tamper with, or steal patient information, significantly increasing the risk of leakage of patient medical information and thus reducing the security of medical sessions. Summary of the Invention

[0004] In view of this, the present invention provides a method and apparatus for processing medical sessions, the main purpose of which is to solve the problem of poor security in existing medical sessions.

[0005] According to one aspect of the present invention, a method for processing medical sessions is provided, comprising:

[0006] When a medical session is generated for a medical data request, the session identifier of the medical session is obtained;

[0007] The computation set array is determined based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset. The array elements in the computation set array are then concatenated and transformed to obtain the encrypted session identifier.

[0008] After verification based on the encrypted session identifier and the verification session identifier, medical data access is performed based on the medical session.

[0009] Furthermore, before determining the computation set array based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset, the method further includes:

[0010] Determine the Unicode corresponding to each character in the session identifier, and generate the seed dataset based on the Unicode. The array length of the seed dataset is the same as the character length of the session identifier.

[0011] Obtain the time information of the medical session generated, and perform digital processing on the time information to obtain the calculation factor dataset;

[0012] The operator set is defined based on the medical business information corresponding to the medical data request, and the operator set includes at least one operational relationship that matches the medical business information.

[0013] Further, the step of digitizing the time information to obtain the calculated factor dataset includes:

[0014] The time information is adjusted using a preset time unit, and the adjusted time information is truncated according to a preset time length to obtain a time object;

[0015] The preset insertion array is sequentially inserted into each value position in the time object, and the inserted time object is shifted to obtain the calculation factor dataset.

[0016] Further, the step of determining the computation set array based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset includes:

[0017] Obtain an initial computation set array, and perform iterative computations on the array elements in the initial computation set array based on the operator set and the seed dataset;

[0018] The array elements are iteratively combined based on the loop calculations to form a computation set array.

[0019] Furthermore, the step of concatenating and transforming the array elements in the computation set array to obtain the encrypted session identifier includes:

[0020] The array elements are concatenated according to a preset index order, and the concatenated array elements are encoded to obtain the encrypted session identifier. The preset index order includes the interval order between index values ​​and the reverse order.

[0021] Furthermore, the method also includes:

[0022] A session identifier verification request is sent to the medical server to instruct the medical server to generate a verification session identifier based on the medical session. The verification session identifier is generated by the medical server based on the operator set and the seed dataset and calculation factor dataset generated in the medical server.

[0023] Furthermore, after concatenating and converting the array elements in the computation set array to obtain the encrypted session identifier, the method further includes:

[0024] The random number is appended to the end of the encrypted session identifier to obtain the updated session identifier;

[0025] Upon receiving the verification session identifier from the medical server, the updated session identifier is matched with the verification session identifier to determine whether to execute the medical data access step based on the medical session.

[0026] According to another aspect of the present invention, a medical session processing apparatus is provided, comprising:

[0027] The acquisition module is used to acquire the session identifier of the medical session when a medical session for requesting medical data is generated;

[0028] The determination module is used to determine a computation set array based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset, and to concatenate and transform the array elements in the computation set array to obtain the encrypted session identifier;

[0029] The access module is used to access medical data based on the medical session after verification based on the encrypted session identifier and the verification session identifier.

[0030] Furthermore, the device also includes:

[0031] A generation module is used to determine the Unicode corresponding to each character in the session identifier and generate the seed dataset based on the Unicode, wherein the array length of the seed dataset is the same as the character length of the session identifier;

[0032] The processing module is used to acquire the time information of the medical session and perform digital processing on the time information to obtain the calculation factor dataset;

[0033] A definition module is used to define the operator set based on the medical business information corresponding to the medical data request. The operator set includes at least one operational relationship that matches the medical business information.

[0034] Furthermore, the processing module is specifically used to adjust the time information using a preset time unit, and to truncate the adjusted time information according to a preset time length to obtain a time object; to sequentially insert a preset insertion array into each value position in the time object, and to perform a digit shift on the inserted time object to obtain the calculation factor dataset.

[0035] Furthermore, the determining module is specifically used to obtain an initial computation set array, and to perform iterative calculations on the array elements in the initial computation set array based on the operator set and the seed dataset; and to iteratively combine the array elements after iterative calculations into a computation set array.

[0036] Furthermore, the determining module is specifically used to concatenate the array elements according to a preset index order, and to encode the concatenated array elements to obtain the encrypted session identifier, wherein the preset index order includes the interval order between index values ​​and the reverse order.

[0037] Furthermore, the device also includes:

[0038] The sending module is used to send a verification request for a session identifier to the medical server, instructing the medical server to generate a verification session identifier based on the medical session. The verification session identifier is generated by the medical server based on the operator set and the seed dataset and calculation factor dataset generated in the medical server.

[0039] Furthermore, the device also includes:

[0040] An update module is used to append a random number to the end of the encrypted session identifier to obtain the updated session identifier;

[0041] The matching module is used to match the updated session identifier with the verification session identifier after receiving the verification session identifier from the medical server, in order to determine whether to execute the medical data access step based on the medical session.

[0042] According to another aspect of the present invention, a storage medium is provided, wherein at least one executable instruction is stored therein, the executable instruction causing a processor to perform an operation corresponding to the processing method of the medical session described above.

[0043] According to another aspect of the present invention, a computer device is provided, comprising: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other through the communication bus;

[0044] The memory is used to store at least one executable instruction, which causes the processor to perform the operation corresponding to the processing method of the above-described medical session.

[0045] By employing the above-described technical solutions, the technical solutions provided by the embodiments of the present invention have at least the following advantages:

[0046] This invention provides a method and apparatus for processing medical sessions. Compared with the prior art, the embodiments of this invention obtain a session identifier for the medical session when a medical session for requesting medical data is generated; determine a computation set array based on an operator set, a seed dataset generated from the session identifier, and a computation factor dataset; and concatenate and transform the array elements in the computation set array to obtain an encrypted session identifier; after verification based on the encrypted session identifier and a verification session identifier, medical data access is performed based on the medical session. This avoids the medical session being marked by malicious programs, reduces the possibility of the session identifier being cracked, captured, tampered with, or stolen, and greatly reduces the risk of leakage of patient medical information, thereby improving the security of the medical session.

[0047] The above description is merely an overview of the technical solution of the present invention. In order to better understand the technical means of the present invention and to implement it in accordance with the contents of the specification, and to make the above and other objects, features and advantages of the present invention more apparent and understandable, specific embodiments of the present invention are described below. Attached Figure Description

[0048] Various other advantages and benefits will become apparent to those skilled in the art upon reading the following detailed description of preferred embodiments. The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:

[0049] Figure 1 A flowchart of a medical session processing method provided by an embodiment of the present invention is shown;

[0050] Figure 2 A block diagram of a medical session processing device provided by an embodiment of the present invention is shown;

[0051] Figure 3 A schematic diagram of the structure of a computer device provided in an embodiment of the present invention is shown. Detailed Implementation

[0052] Exemplary embodiments of the present disclosure will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.

[0053] The embodiments of this invention can acquire and process relevant data based on artificial intelligence technology. Artificial intelligence (AI) refers to the theories, methods, technologies, and application systems that utilize digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results.

[0054] Foundational technologies for artificial intelligence generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interactive systems, and mechatronics. AI software technologies mainly encompass computer vision, robotics, biometrics, speech processing, natural language processing, and machine learning / deep learning.

[0055] Based on this, in one embodiment, the present invention provides a method for processing medical sessions, such as... Figure 1 As shown, the method is illustrated using an example of its application to computer devices such as servers. The server can be an independent server or a cloud server that provides 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, such as intelligent medical systems and digital medical platforms.

[0056] This invention provides a method for processing medical sessions, such as... Figure 1 As shown, the method includes:

[0057] 101. When a medical session for a medical data request is generated, obtain the session identifier of the medical session.

[0058] In this embodiment of the invention, the current execution terminal acts as a client of the digital healthcare platform, interacting with the medical service terminal to obtain various data requested by users and execute corresponding request actions to meet the online medical needs of different users. During the process of the medical service terminal requesting medical data from the current execution terminal, the medical data includes, but is not limited to, data entered corresponding to medical business information such as registration, appointment for examinations, and appointment for treatment after logging into the digital healthcare platform. The medical session is the session generated when the medical service terminal interacts with the current execution terminal to exchange medical data, allowing the medical service terminal to process the medical data based on authorization. At this time, the medical session generated by the current execution terminal and its corresponding session identifier are encrypted to further determine whether the medical session has the necessary permissions.

[0059] 102. Based on the operator set, the seed dataset generated by the session identifier, and the calculation factor dataset, determine the calculation set array, and concatenate and transform the array elements in the calculation set array to obtain the encrypted session identifier.

[0060] In this embodiment of the invention, to ensure the security of the session identifier and prevent tampering of the medical session, the current execution end performs calculations based on the operator set, the seed dataset generated from the session identifier, and the calculation factor dataset to obtain a calculation set array. The session identifier is then encrypted by concatenating and transforming the array elements in the calculation set array. The operator set includes logical operators for performing mathematical operations on the data in the seed dataset, including but not limited to "+", "-", and "*". The seed dataset is a dataset obtained by converting the session identifier to Unicode, serving as the basic data for encryption. The calculation factor dataset is a factor dataset that influences the calculation of the data in the seed dataset according to the operator set; this embodiment of the invention does not impose specific limitations on these factors.

[0061] It should be noted that after calculating the seed dataset and the calculation factor dataset according to the operation logic in the operator set to obtain the calculation set array, in order to increase the security of the medical session, the array elements in the calculation set array are further concatenated and transformed to obtain the encrypted session identifier. The concatenation and transformation may include concatenating and transforming each array element in a specific order, or extracting specific array elements for concatenation and transformation, etc., and this embodiment of the invention does not impose specific limitations.

[0062] 103. After verification based on the encrypted session identifier and the verification session identifier, medical data access is performed based on the medical session.

[0063] In this embodiment of the invention, after encrypting the session identifier, it is verified against a verification session identifier. The verification session identifier is obtained by the medical server through encryption. If they match, it indicates that the medical session on the current execution end has access permissions, and therefore, medical data can be accessed based on this medical session. Furthermore, the verification between the encrypted session identifier and the verification session identifier can be performed on the current execution end or sent to the medical server; this embodiment of the invention does not impose specific limitations.

[0064] In another embodiment of the invention, for further definition and explanation, before determining the computation set array based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset, the method further includes:

[0065] Determine the Unicode corresponding to each character in the session identifier, and generate the seed dataset based on the Unicode;

[0066] Obtain the time information of the medical session generated, and perform digital processing on the time information to obtain the calculation factor dataset;

[0067] The operator set is defined based on the medical business information corresponding to the medical data request, and the operator set includes at least one operational relationship that matches the medical business information.

[0068] To enhance the security of medical sessions by using a computation set array as the encryption basis, the current execution end acquires a seed dataset, a computation factor dataset, and an operator set. Specifically, after obtaining the session identifier of the medical session, the current execution end performs Unicode conversion on each character in the session identifier and assembles each converted Unicode character into a data set to obtain the seed dataset. The array length of the seed dataset is the same as the character length of the session identifier. For example, the Unicode value of each character in the session identifier is obtained to form an integer seed array, the length of which is the length of the session identifier. The array is then reversed to obtain the seed dataset. The length of the session identifier can be pre-configured on the current execution end; a longer length increases computational complexity, thus reducing the likelihood of brute-force attacks. Furthermore, in this embodiment, reversal means reversing the order of the array elements. For example, the original array [1,2,3] becomes [3,2,1] after reversal. This embodiment does not impose specific limitations.

[0069] It should be noted that since the operator set includes at least one operational relationship matching medical business information, meaning the operational relationships in the operator set affect computational complexity, the current execution end defines the operational relationships in this operator set based on the medical business information corresponding to the medical data request. This can be based on manual definition or pre-defined correspondences, and this embodiment of the invention does not impose specific limitations. The medical business information refers to services such as registration, appointment for examinations, and appointment for treatment provided by the digital healthcare platform, and this embodiment of the invention does not impose specific limitations on these services.

[0070] In another embodiment of the invention, for further definition and explanation, the step of digitizing the time information to obtain the calculation factor dataset includes:

[0071] The time information is adjusted using a preset time unit, and the adjusted time information is truncated according to a preset time length to obtain a time object;

[0072] The preset insertion array is sequentially inserted into each value position in the time object, and the inserted time object is shifted to obtain the calculation factor dataset.

[0073] To meet the computational requirements of the calculated factor dataset and improve the encryption security of session identifiers, the current execution end performs digit processing on the time information to obtain the calculated factor dataset. Specifically, the time information is adjusted using a preset time unit (e.g., milliseconds), and the adjusted time information is truncated according to a preset time length (9 digits) to obtain a time object. For example, the current time is obtained in milliseconds, divided by 10000, and rounded down to obtain the first 9 digits of the timestamp (grouped every 10 seconds). Furthermore, to improve the security of the calculated factor dataset, a preset insertion array is sequentially inserted into each value in the time object, and the inserted time object is digit-shifted to obtain the calculated factor dataset. For example, the timestamps are sequentially placed into an array of length 9. This array can be pre-configured, and each value in the array is incremented by 1 and then shifted left by one position to finally obtain the calculated factor dataset. For example, incrementing each number in the timestamp by 1 can prevent invalid calculations or reduce computational complexity when a timestamp contains 0. Shifting left is equivalent to multiplying the number by 2, making the data larger and providing more possibilities for subsequent calculations.

[0074] In another embodiment of the invention, for further definition and explanation, the step of determining the computation set array based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset includes:

[0075] Obtain an initial computation set array, and perform iterative computations on the array elements in the initial computation set array based on the operator set and the seed dataset;

[0076] The array elements are iteratively combined based on the loop calculations to form a computation set array.

[0077] To ensure the security of medical sessions by encrypting session identifiers based on the computation set array, the current execution end first obtains an initial computation set array when generating it. Then, it iteratively calculates the array elements in the initial computation set array based on the operator set and the seed dataset. Specifically, it sequentially combines elements from the seed dataset (seeds), the operator set (exps), and the computation factor dataset (factors) to obtain computation expressions. The number of expressions is the maximum of the lengths of seeds and factors. Each number in the seed dataset is used to perform mathematical operations with the corresponding number in the computation factor dataset using the corresponding operator from the operator set. For example, if the seed dataset is [1,2,3,4,5,6], the operator set (exps) is [+,-,*], and the computation factor dataset (factors) is [11,22,33,44], there are six expressions (the maximum lengths of the seed and factors arrays): 1+11, 2-22, 3*33, 4+44, 5-11, and 6*44. If a set reaches its end, its elements are retrieved from the beginning again for computation. Finally, max(len(seeds),len(factors)) is used, where the minimum length is 9 and the maximum length is the length of the seed dataset seeds. The value of each expression is calculated and placed into the initial computation set array calcs until the initial computation array is filled.

[0078] It should be noted that the initial computation set array can be obtained by defining an empty array `calcs`. In a specific implementation scenario, the larger of the length of the seed dataset `seeds` and the length of the factor dataset `factors` is used as the loop count `n`. A variable `i` is defined, starting from 0. After each loop, the value of `i` is incremented by one, and the loop continues for `n` times until the value of `i` equals `n-1`. In each loop, the remainder of `i` with the length of the seed dataset `seeds` is used as the index of the seed dataset value, and the element at that index is taken as the seed. The remainder of `i` with the length of the operator set `exps` is used as the index of the operator set value, and the element at that index is taken as the operator `exp`. The remainder of `i` with the length of the factor dataset `factors` is used as the index of the factor dataset value, and the element at that index is taken as the factor. Arithmetic operations are performed using the operator `exp` between the seed and the factor to obtain the current computation value `val`. This current computation value `val` is then placed into the initial computation set array `calcs`, and this process continues until the complete initial computation set array is obtained.

[0079] Furthermore, when iteratively combining array elements after loop calculations into a computation set array, specifically, each element in the initial computation set `calcs` is calculated sequentially using the operator set `exps`, and the results are concatenated to obtain the final calculated value. The final calculated value is generated as follows: an empty string `fna` is defined as the final calculated value; a variable `i` is defined, starting from 1 and looping, with its value incremented by one after each loop until it equals the length of the initial computation set array `calcs` minus 1. Within each loop, the value at index `i-1` is taken from the initial computation set `calcs` as variable `n1`; the remainder of `i` and the length of the operator set `exps` is used as the index of the operator set, and the element at that index is taken as the operator `exp`; the value at index `i` is taken from the initial computation set `calcs` as variable `n2`; an arithmetic operation is performed between variables `n1` and `n2` using the operator `exp` to obtain the current calculated value `val`; the final calculated value `fna` is concatenated with the current calculated value `val`.

[0080] In another embodiment of the invention, for further definition and explanation, the step of concatenating and converting the array elements in the computation set array to obtain the encrypted session identifier includes:

[0081] The array elements are concatenated according to a preset index order, and the concatenated array elements are encoded to obtain the encrypted session identifier.

[0082] In this embodiment of the invention, to obtain a highly secure encrypted session identifier, the current execution end, when concatenating and converting array elements in the calculation array, can specifically concatenate the array elements according to a preset index order. The preset index order includes both the interval order between index values ​​and the reverse order. The interval order is the order after the interval, such as 124568 or 12345, while the reverse order is the opposite order, such as 9764. This reduces the probability of obtaining the same encrypted session identifier at different times. This embodiment of the invention does not impose specific limitations. For example, elements in the factor dataset `factors` can be concatenated with the index value 49137 as `fna`. The encoding conversion can be base64 encoding to obtain the encrypted session identifier. This embodiment of the invention does not impose specific limitations.

[0083] In another embodiment of the invention, for further definition and explanation, the steps further include:

[0084] Send a session identifier verification request to the medical server to instruct the medical server to generate a verification session identifier based on the medical session.

[0085] To achieve security verification of the medical session, the current execution end sends a verification request to the medical server to obtain the verification session identifier generated in the medical server. The verification session identifier is generated in the medical server based on the operator set and the seed dataset and calculation factor dataset generated in the medical server. That is, the method of generating the verification session identifier is the same as the method of encrypting the session identifier in the current execution end in the embodiments of this invention, and will not be described again here.

[0086] It should be noted that when verifying the encrypted session identifier based on the verification session identifier, specifically, the encrypted session identifier is compared with the verification session identifier encrypted by the medical server. Only when the calculation results are consistent will the access request for the medical session be executed.

[0087] In another embodiment of the invention, for further definition and explanation, after concatenating and converting the array elements in the computation set array to obtain the encrypted session identifier, the method further includes:

[0088] The random number is appended to the end of the encrypted session identifier to obtain the updated session identifier;

[0089] Upon receiving the verification session identifier from the medical server, the updated session identifier is matched with the verification session identifier to determine whether to execute the medical data access step based on the medical session.

[0090] To enhance the security of the already encrypted session identifier, the current execution end further encrypts the encrypted session identifier, i.e., performs secondary encryption. Specifically, the current execution end appends a random number to the end of the encrypted session identifier to obtain an updated session identifier. For example, after appending a fixed-length random number (such as 2) to the end of the encrypted session identifier sid_encrypted, it is then encrypted using an RSA public key. In specific application scenarios, the session identifiers generated by the same medical client every 10 seconds can be the same. By appending a random number to the end, different encryption results can be obtained within 10 seconds, thereby improving protection performance. This embodiment of the invention does not impose specific limitations.

[0091] This invention provides a method for processing medical sessions. Compared with existing technologies, this invention obtains a session identifier for the medical session when a medical session for requesting medical data is generated; determines a computation set array based on an operator set, a seed dataset generated from the session identifier, and a computation factor dataset; and concatenates and transforms the array elements in the computation set array to obtain an encrypted session identifier; after verification based on the encrypted session identifier and a verification session identifier, medical data access is performed based on the medical session. This method avoids the medical session being marked by malicious programs, reduces the possibility of the session identifier being cracked, captured, tampered with, or stolen, and greatly reduces the risk of leakage of patient medical information, thereby improving the security of medical sessions.

[0092] Furthermore, as a response to the above Figure 1 The implementation of the method shown in this embodiment of the invention provides a medical session processing device, such as... Figure 2 As shown, the device includes:

[0093] The acquisition module 21 is used to acquire the session identifier of the medical session when a medical session for medical data request is generated;

[0094] The determination module 22 is used to determine the calculation set array based on the operator set, the seed dataset generated by the session identifier, and the calculation factor dataset, and to concatenate and transform the array elements in the calculation set array to obtain the encrypted session identifier;

[0095] Access module 23 is used to access medical data based on the medical session after verification based on the encrypted session identifier and the verification session identifier.

[0096] Furthermore, the device also includes:

[0097] A generation module is used to determine the Unicode corresponding to each character in the session identifier and generate the seed dataset based on the Unicode, wherein the array length of the seed dataset is the same as the character length of the session identifier;

[0098] The processing module is used to acquire the time information of the medical session and perform digital processing on the time information to obtain the calculation factor dataset;

[0099] A definition module is used to define the operator set based on the medical business information corresponding to the medical data request. The operator set includes at least one operational relationship that matches the medical business information.

[0100] Furthermore, the processing module is specifically used to adjust the time information using a preset time unit, and to truncate the adjusted time information according to a preset time length to obtain a time object; to sequentially insert a preset insertion array into each value position in the time object, and to perform a digit shift on the inserted time object to obtain the calculation factor dataset.

[0101] Furthermore, the determining module is specifically used to obtain an initial computation set array, and to perform iterative calculations on the array elements in the initial computation set array based on the operator set and the seed dataset; and to iteratively combine the array elements after iterative calculations into a computation set array.

[0102] Furthermore, the determining module is specifically used to concatenate the array elements according to a preset index order, and to encode the concatenated array elements to obtain the encrypted session identifier, wherein the preset index order includes the interval order between index values ​​and the reverse order.

[0103] Furthermore, the device also includes:

[0104] The sending module is used to send a verification request for a session identifier to the medical server, instructing the medical server to generate a verification session identifier based on the medical session. The verification session identifier is generated by the medical server based on the operator set and the seed dataset and calculation factor dataset generated in the medical server.

[0105] Furthermore, the device also includes:

[0106] An update module is used to append a random number to the end of the encrypted session identifier to obtain the updated session identifier;

[0107] The matching module is used to match the updated session identifier with the verification session identifier after receiving the verification session identifier from the medical server, in order to determine whether to execute the medical data access step based on the medical session.

[0108] This invention provides a medical session processing apparatus. Compared with the prior art, this invention obtains a session identifier for the medical session when a medical session for requesting medical data is generated; determines a computation set array based on an operator set, a seed dataset generated from the session identifier, and a computation factor dataset; and concatenates and transforms the array elements in the computation set array to obtain an encrypted session identifier; after verification based on the encrypted session identifier and a verification session identifier, medical data access is performed based on the medical session. This avoids the medical session being marked by malicious programs, reduces the possibility of the session identifier being cracked, captured, tampered with, or stolen, and greatly reduces the risk of leakage of patient medical information, thereby improving the security of the medical session.

[0109] According to one embodiment of the present invention, a storage medium is provided, the storage medium storing at least one executable instruction, the computer-executable instruction being capable of executing the medical session processing method in any of the above method embodiments.

[0110] Figure 3 The diagram illustrates a structural schematic of a computer device according to an embodiment of the present invention. The specific embodiments of the present invention do not limit the specific implementation of the computer device.

[0111] like Figure 3 As shown, the computer device may include: a processor 302, a communications interface 304, a memory 306, and a communications bus 308.

[0112] The processor 302, communication interface 304, and memory 306 communicate with each other via communication bus 308.

[0113] Communication interface 304 is used to communicate with other network elements such as clients or other servers.

[0114] The processor 302 is used to execute program 310, specifically to execute the relevant steps in the above-described medical session processing method embodiment.

[0115] Specifically, program 310 may include program code that includes computer operation instructions.

[0116] Processor 302 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention. The computer device includes one or more processors, which may be processors of the same type, such as one or more CPUs; or processors of different types, such as one or more CPUs and one or more ASICs.

[0117] Memory 306 is used to store program 310. Memory 306 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.

[0118] Specifically, program 310 can be used to cause processor 302 to perform the following operations:

[0119] When a medical session is generated for a medical data request, the session identifier of the medical session is obtained;

[0120] The computation set array is determined based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset. The array elements in the computation set array are then concatenated and transformed to obtain the encrypted session identifier.

[0121] After verification based on the encrypted session identifier and the verification session identifier, medical data access is performed based on the medical session.

[0122] It is obvious to those skilled in the art that the modules or steps of the present invention described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. Optionally, they can be implemented using computer-executable program code, thereby storing them in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those presented herein, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the present invention is not limited to any particular combination of hardware and software.

[0123] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for processing medical sessions, characterized in that, include: When a medical session is generated for a medical data request, the session identifier of the medical session is obtained; A computation set array is determined based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset. The array elements in the computation set array are concatenated and transformed to obtain the encrypted session identifier. The array length of the seed dataset is the same as the character length of the session identifier. The operator set includes at least one operation relationship that matches medical business information. The seed dataset is a dataset obtained by converting the session identifier into a Unicode character set. The computation factor dataset is a factor dataset that influences the data in the seed dataset and is calculated according to the operator set. The concatenation and transformation includes concatenating and transforming each array element in a preset order, or extracting preset array elements for concatenation and transformation. After verification based on the encrypted session identifier and the verification session identifier, medical data access is performed based on the medical session. The step of concatenating and transforming the array elements in the computation set array to obtain the encrypted session identifier includes: The array elements are concatenated according to a preset index order, and the concatenated array elements are encoded to obtain the encrypted session identifier. The preset index order includes the interval order between index values ​​and the reverse order.

2. The method according to claim 1, characterized in that, Before determining the computation set array based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset, the method further includes: Determine the Unicode corresponding to each character in the session identifier, and generate the seed dataset based on the Unicode; Obtain the time information of the medical session generated, and perform digital processing on the time information to obtain the calculation factor dataset; The operator set is defined based on the medical business information corresponding to the medical data request.

3. The method according to claim 2, characterized in that, The process of digitizing the time information to obtain the calculated factor dataset includes: The time information is adjusted using a preset time unit, and the adjusted time information is truncated according to a preset time length to obtain a time object; The preset insertion array is sequentially inserted into each value position in the time object, and the inserted time object is shifted to obtain the calculation factor dataset.

4. The method according to claim 3, characterized in that, The determination of the computation set array based on the operator set, the session identifier, and the computation factor dataset includes: Obtain an initial computation set array, and perform iterative computations on the array elements in the initial computation set array based on the operator set and the seed dataset; The array elements are iteratively combined based on the loop calculations to form a computation set array.

5. The method according to claim 1, characterized in that, The method further includes: A verification request for a session identifier is sent to the medical server to instruct the medical server to generate a verification session identifier based on the medical session. The verification session identifier is generated by the medical server based on the operator set and the seed dataset and calculation factor dataset generated in the medical server.

6. The method according to claim 5, characterized in that, After concatenating and converting the array elements in the computation set array to obtain the encrypted session identifier, the method further includes: The random number is appended to the end of the encrypted session identifier to obtain the updated session identifier; Upon receiving the verification session identifier from the medical server, the updated session identifier is matched with the verification session identifier to determine whether to execute the medical data access step based on the medical session.

7. A medical session processing device, characterized in that, include: The acquisition module is used to acquire the session identifier of the medical session when a medical session for requesting medical data is generated; The determination module is used to determine a computation set array based on the operator set, the seed dataset generated by the session identifier, and the computation factor dataset, and to concatenate and transform the array elements in the computation set array to obtain the encrypted session identifier. The array length of the seed dataset is the same as the character length of the session identifier. The operator set includes at least one operation relationship that matches medical business information. The seed dataset is a dataset obtained by converting the session identifier into a Unicode character set. The computation factor dataset is a factor dataset that influences the data in the seed dataset and is calculated according to the operator set. The concatenation and transformation includes concatenating and transforming each array element in a preset order, or extracting preset array elements for concatenation and transformation. The access module is used to access medical data based on the medical session after verification based on the encrypted session identifier and the verification session identifier. The determination module is further configured to concatenate the array elements according to a preset index order, and encode the concatenated array elements to obtain the encrypted session identifier, wherein the preset index order includes the interval order between index values ​​and the reverse order.

8. A storage medium storing at least one executable instruction that causes a processor to perform an operation corresponding to the processing method of a medical session as described in any one of claims 1-6.

9. A computer device, comprising: The processor, memory, communication interface, and communication bus are provided, wherein the processor, memory, and communication interface communicate with each other via the communication bus. The memory is used to store at least one executable instruction that causes the processor to perform an operation corresponding to the processing method of the medical session as described in any one of claims 1-6.

Citation Information

Patent Citations

  • Authentication method and system

    CN101754215A