Open source software compliance checking system and method

Through the use of the open source software compliance inspection system, the problem of the inability to quickly and accurately analyze the rights and obligations of open source software licenses in the existing technology is solved, and compliance inspection and management of open source software is realized, legal risks are reduced, and management efficiency and security are improved.

CN119885153APending Publication Date: 2025-04-25CHINA TELECOM CLOUD TECH CO LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202411658457.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-19
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

The prior art cannot quickly and accurately analyze and judge the license rights and obligations of open source software, especially when the software dependency chain is complex, making it difficult for users to correctly understand and meet open source authorization requirements.

Method used

Provide an open source software compliance inspection system, including software information and association analysis system, open source license management system and compliance analysis system. By querying the dependency link chain, disassembling license rights and obligation information, and integrating rights and obligations according to the principles of minimizing rights and maximizing obligations, we ensure that the open source software used by users meets the open source authorization requirements.

Benefits of technology

It realizes a rapid and accurate analysis of the rights and obligations of open source software licenses, ensures the compliance of open source software used by users, reduces legal risks, and improves the efficiency and security of open source software management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119885153A_ABST
    Figure CN119885153A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of cloud computing server operating system open source software compliance management, and discloses an open source software compliance check system and method, the system comprises a software information and association analysis system, an open source license management system and a compliance analysis system, the software information and association system is used for querying a dependency chain related to open source software to be queried; the open source license management system is used for querying a license right and obligation information list; and the compliance analysis system is used for carrying out right and obligation integration according to the principle of right minimization and obligation maximization according to the dependency chain, the license right and obligation information list and the principles of right minimization and obligation maximization. The open source license management system is used for carrying out splitting analysis from rights and obligations, the compliance analysis system is used for carrying out right and obligations integration, and it is ensured that open source software used by a user meets the open source authorization requirement.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of compliance management of open source software for a cloud computing server operating system, and in particular to a system and method for checking compliance of open source software. Background Art

[0002] A software license is a legal contract that protects the use or distribution of software. It stipulates and restricts the user's rights to use the software and source code. Open source licenses are the foundation of the open source software ecosystem and can promote collaborative software development. The usual licensing method allows users to use one or more copies of the software. If the software is used without permission, it may constitute an infringement of the software owner's exclusive copyright under copyright.

[0003] Linux (GUN / Linux) is an operating system released under the General Public License Copyright Agreement. It consists of the Linux kernel and a large number of open source software. In order to ensure the continuous evolution of open source software, the more common open source software licenses are those approved by the Open Source Initiative (OSI) based on its open source definition. The more relaxed ones such as BSD (Berkeley Software Distribution License), MIT (Massachusetts Institute of Technology License), and Magnolia Agreement are relatively open and have no commercial risks during use. However, for software that is not friendly to commercial use, such as SSPL and private commercial licenses, there may be contagiousness of source code open source.

[0004] It is relatively easy to judge the compliance of a single software license. However, for all software involved in the software dependency chain, the software license categories are diverse, and the rules described in each license are different. The compliance analysis of the software license is relatively complicated and cannot be quickly judged and analyzed. For software developers, they may not be able to correctly distinguish the relationship between rights and obligations due to misunderstandings. Summary of the invention

[0005] In view of this, the present invention provides an open source software compliance checking system and method to solve the problem in the prior art that the rights and obligations of the license cannot be analyzed.

[0006] In a first aspect, the present invention provides an open source software compliance checking system, the system comprising: a software information and association analysis system, an open source license management system and a compliance analysis system, wherein:

[0007] The software information and associated system are used to query the dependency chain involved in the open source software to be queried;

[0008] The open source license management system is used to query the license rights and obligations information list;

[0009] The compliance analysis system is used to integrate rights and obligations according to the dependency chain, the license rights and obligations information list, and the principle of minimizing rights and maximizing obligations.

[0010] The present invention queries the dependency chain through software information and related systems, performs license analysis from the dependency chain, uses the open source license management system to disassemble and analyze the content of the license from the two dimensions of rights and obligations, and uses the compliance analysis system to integrate rights and obligations to ensure that the open source software used by the user meets the open source authorization requirements.

[0011] In an optional implementation, all original licenses are downloaded, usage rights and corresponding obligations are separated, and an open source license management system database is generated.

[0012] The present invention generates a complete open source license management system database by downloading the original text of the license and disassembling its rights and corresponding obligations, thereby facilitating the establishment of an open source license management system to determine the corresponding rights and obligations according to the license name.

[0013] In an optional implementation, all software that the open source software to be queried needs to rely on during compilation and operation is obtained, a dependency list and a list database are formed, and a software information and association analysis system database is established.

[0014] The present invention queries all software that the open source software to be queried needs to rely on during compilation and operation to form a dependency chain and list database, thereby facilitating the establishment of a software information and association analysis system database to search for open source software information based on the dependency chain and list database.

[0015] In a second aspect, the present invention provides a method for checking compliance of open source software, the method comprising:

[0016] Receive the name of the open source software to be queried input by the user;

[0017] Querying the dependency chain involved in the open source software to be queried;

[0018] According to the dependency chain, obtain the license names of all software involved, query and output the rights and obligations information list corresponding to the license;

[0019] According to the dependency chain, license rights and obligations information list, rights and obligations are integrated according to the principle of minimizing rights and maximizing obligations.

[0020] The present invention queries the dependency chain involved in the open source software to be queried according to the name of the open source software to be queried input by the user, so as to analyze and summarize the dependency chain involved in the open source software, and perform license analysis based on the dependency chain, and disassemble and analyze the content of the license from two dimensions of rights and obligations to ensure that the open source software used by the user meets the open source authorization requirements.

[0021] In an optional implementation, the querying of the dependency chain involved in the open source software to be queried includes:

[0022] Parse the SPEC file of the open source software RPM package to be queried;

[0023] The required field and the BuildRequire field in the SPEC file are parsed to obtain a forward software dependency chain and a reverse software dependency chain.

[0024] The present invention deeply parses the SPEC file of the RPM software package of the open source software to be queried, and parses the required field and the BuildRequire field in the SPEC file to ensure that all necessary dependencies can be accurately met during the compilation and operation of the software.

[0025] In an optional implementation manner, the obtaining of the license names of all software involved includes:

[0026] According to the name of the open source software to be queried, relevant license information is automatically identified and prompted.

[0027] The present invention intelligently identifies and prompts license information related to the name of the open source software to be queried, so as to be used to more clearly understand the license information used by the software.

[0028] In a third aspect, the present invention provides an open source software compliance checking device, the device comprising:

[0029] A receiving module, used for receiving the name of the open source software to be queried input by the user;

[0030] A query module, used to query the dependency chain involved in the open source software to be queried;

[0031] An output module, used to obtain the license names of all software involved according to the dependency chain, and query and output a list of rights and obligations information corresponding to the license;

[0032] The integration module is used to integrate rights and obligations according to the dependency chain, license rights and obligations information list, and the principle of minimizing rights and maximizing obligations.

[0033] In a fourth aspect, the present invention provides a computer device, comprising: a memory and a processor, the memory and the processor being communicatively connected to each other, computer instructions being stored in the memory, and the processor executing the open source software compliance checking method of the above-mentioned second aspect or any corresponding embodiment thereof by executing the computer instructions.

[0034] In a fifth aspect, the present invention provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the open source software compliance checking method of the above-mentioned second aspect or any corresponding embodiment thereof.

[0035] In a sixth aspect, the present invention provides a computer program product, comprising computer instructions, wherein the computer instructions are used to enable a computer to execute the open source software compliance checking method of the above-mentioned second aspect or any corresponding embodiment thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0037] Figure 1 is a schematic diagram of a data preparation process of a software license compliance checking system according to an embodiment of the present invention;

[0038] Figure 2 is a flowchart of an open source software compliance checking method according to an embodiment of the present invention;

[0039] Figure 3 is a schematic diagram of an open source software compliance checking system according to an embodiment of the present invention;

[0040] Figure 4 is a structural block diagram of an open source software compliance checking device according to an embodiment of the present invention;

[0041] Figure 5 It is a schematic diagram of the hardware structure of a computer device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0042] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.

[0043] The embodiment of the present invention provides an open source software compliance checking system, which mainly includes three parts: a software information and association analysis system, an open source license management system, and a compliance analysis system.

[0044] The software information and association analysis system is responsible for parsing the basic software information, license information, and all license information related to the software in its dependent software relationship chain.

[0045] The open source license management system is responsible for querying information such as rights and obligations involved in the license.

[0046] The compliance analysis system calculates software rights and obligations based on the minimum rights and maximum obligations model according to software dependencies and software license information.

[0047] The open source software compliance checking system provided in this embodiment queries the dependency chain through software information and related systems, performs license analysis from the dependency chain, uses the open source license management system to disassemble and analyze the content of the license from the two dimensions of rights and obligations, and uses the compliance analysis system to integrate rights and obligations to ensure that the open source software used by the user meets the open source authorization requirements.

[0048] Specifically, the data preparation process of this system is as follows: Figure 1 As shown, it mainly includes:

[0049] (1) Establish an open source license management system database: Prepare a database of open source software license rights and obligations, mainly including downloading all license originals from SPDX (Software Package Data Exchange), breaking down the rights and corresponding obligations of use, and generating a complete database of open source software license rights and obligations, so as to determine the corresponding user rights and obligations based on the license name.

[0050] (2) Establish a software information and association analysis database: Analyze the dependencies involved in the open source software of the operating system. Based on the SPEC file of the open source software, obtain all the software that the software needs to rely on during compilation and operation, form a relationship link table and a list database. Based on this database, it can feedback the basic information of the software and the compilation and operation dependency chain.

[0051] By downloading the original text of the license and disassembling its rights and corresponding obligations, a complete open source license management system database is generated, which makes it easier to establish an open source license management system to determine the corresponding rights and obligations based on the license name.

[0052] By querying all the software that the open source software to be queried needs to rely on during compilation and operation, a dependency chain and list database are formed, which facilitates the establishment of a software information and association analysis system database to search for open source software information based on the dependency chain and list database.

[0053] According to an embodiment of the present invention, an embodiment of an open source software compliance checking method is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0054] In this embodiment, a method for checking the compliance of open source software is provided. Figure 2 is a flow chart of a method for checking compliance of open source software according to an embodiment of the present invention. Figure 2 As shown, the process includes the following steps:

[0055] Step S201, receiving the name of the open source software to be queried input by the user.

[0056] In an embodiment of the present invention, a user inputs a name of an open source software to be queried, and an open source software compliance checking system receives the name of the open source software to be queried input by the user.

[0057] Step S202, querying the dependency chain involved in the open source software to be queried.

[0058] In an embodiment of the present invention, the software information and associated system queries the basic information, license, etc. of the open source software to be queried according to the SPEC corresponding to the name of the open source software to be queried, and at the same time queries the dependency chain involved in the open source software to be queried, including compilation dependency and operation dependency.

[0059] Step S203, according to the dependency chain, obtain the license names of all software involved, query and output the rights and obligations information list corresponding to the license.

[0060] In an embodiment of the present invention, based on the dependency chain organized in the previous step, the open source license management system obtains the license names of all software involved. The package manager or build tool can be selected here to obtain the license information of each dependent software. This is only an example and is not limited to querying and outputting the rights and obligations information list corresponding to its license.

[0061] Step S204: According to the dependency chain, the license rights and obligations information list, rights and obligations are integrated according to the principle of minimizing rights and maximizing obligations.

[0062] In an embodiment of the present invention, the compliance analysis system calculates the minimum rights and maximum obligations of each software based on the dependency chain, license rights, and obligation information list, in accordance with the principle of minimizing rights and maximizing obligations, and performs the final rights and obligations integration to ensure that the final combination complies with the principle of minimizing rights and maximizing obligations, and to ensure that users do not exceed their authority when using the software.

[0063] The open source software compliance checking method provided in this embodiment queries the dependency chain involved in the open source software to be queried according to the name of the open source software to be queried input by the user, so as to analyze and summarize the dependency chain involved in the open source software, and perform license analysis based on the dependency chain, and analyze the content of the license from two dimensions of rights and obligations, so as to ensure that the open source software used by the user meets the open source authorization requirements.

[0064] In this embodiment, a method for checking the compliance of open source software is provided, and the process includes the following steps:

[0065] Step S301, receiving the name of the open source software to be queried input by the user.

[0066] For details, please see Figure 2 Step S201 of the illustrated embodiment will not be described in detail here.

[0067] Step S302, querying the dependency chain involved in the open source software to be queried.

[0068] Specifically, the above step S302 includes:

[0069] Step S3021, parsing the SPEC file of the open source software RPM package to be queried.

[0070] Step S3022, parse the required field and the BuildRequire field in the SPEC file to obtain a forward software dependency chain and a reverse software dependency chain.

[0071] In the embodiment of the present invention, in order to ensure perfect dependency management during software compilation and operation, the SPEC file of the RPM software package to be queried is deeply parsed, and the required field and BuildRequire field in the SPEC file are carefully parsed. This work involves a comprehensive analysis of the dependency chain of the software package, including the forward software dependency chain and the reverse software dependency chain.

[0072] In the forward software dependency chain, the software information and association system tracks and records all related components and libraries required by the software package, which ensures that when compiling and running the software, the software information and association system can accurately meet all necessary dependencies. In the reverse software dependency chain, the software information and association system analyzes the impact of the software package on other software, so that when upgrading or changing, you can fully understand its possible impact.

[0073] Through in-depth dependency analysis of software information and related systems, users are provided with a clear software package relationship diagram, enabling them to better understand the complex relationships between components in software information and related systems, helping to ensure the stability and maintainability of the entire system.

[0074] By deeply parsing the SPEC file of the open source software RPM package to be queried, the required field and BuildRequire field in the SPEC file are parsed to ensure that all necessary dependencies can be accurately met during the compilation and operation of the software.

[0075] Step S303: According to the dependency chain, obtain the license names of all software involved, query and output the rights and obligations information list corresponding to the license.

[0076] Specifically, the license names of all software involved in the above step S303 include:

[0077] Step S3031, automatically identifying and prompting relevant license information according to the name of the open source software to be queried.

[0078] In the embodiment of the present invention, the open source license management system is committed to becoming a comprehensive and flexible open source license management tool. It organizes all common open source licenses and classifies each license item in detail. By quickly identifying the software name, users can quickly understand the rights and obligations of the software they use.

[0079] The open source license management system not only provides a detailed description of each open source license, but also implements intelligent management, which can automatically identify and prompt relevant license information when the user enters the name of the open source software to be queried. Users do not need to spend time and effort studying complicated legal texts, and can clearly understand the license used by the software and its potential impact.

[0080] The goal of an open source license management system is to help users maintain compliance and reduce legal risks while providing clear insights into open source licenses when developing and distributing software. This enables users to use, modify, and share open source software with greater confidence, ensuring that they are operating within the legal framework.

[0081] Step S304: According to the dependency chain, the license rights and obligations information list, rights and obligations are integrated according to the principle of minimizing rights and maximizing obligations.

[0082] For details, please see Figure 2 Step S204 of the illustrated embodiment will not be described in detail here.

[0083] The open source software compliance checking method provided in this embodiment intelligently identifies and prompts the license information related to the name of the open source software to be queried, so as to facilitate a clearer understanding of the license information used by the software.

[0084] As an application example of the embodiment of the present invention, Figure 3 As shown, the user enters the name of the open source software to be queried, the software information and related systems query the basic information of the software and the dependency chain involved, the software open source license management system queries the corresponding rights and obligations information list according to the dependency chain, and the compliance analysis system performs the final software rights and obligations integration based on the dependency chain and the license rights and obligations information list.

[0085] Compared with the existing technologies, the open source software compliance checking method provided by the embodiment of the present invention only checks a single open source software license and does not analyze the rights and obligations of the license. This patent proposes to combine the software dependency chain, analyze the entire dependency chain for the license, and analyze the content of the license from the two dimensions of rights and obligations, making it easier for users to understand the risks of use.

[0086] The open source software compliance checking method provided by the embodiment of the present invention may be applied in the following scenarios in the future: (1) to the analysis of the introduction of open source software; and (2) to the management of security risks in the supply chain of open source software.

[0087] The potential value of the open source software compliance checking method provided by the embodiment of the present invention lies in that as open source software becomes more and more numerous and the requirements for licenses become more and more detailed, refined management of open source software and open source licenses will reduce the cost of open source software management and improve the security of introducing open source software into the supply chain.

[0088] It should be noted that when introducing open source software, in addition to analyzing the software itself, compliance analysis is also performed on its compilation dependencies and runtime dependencies.

[0089] In this embodiment, an open source software compliance checking device is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware for a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0090] This embodiment provides an open source software compliance checking device, such as Figure 4 As shown, including:

[0091] The receiving module 401 is used to receive the name of the open source software to be queried input by the user.

[0092] The query module 402 is used to query the dependency chain involved in the open source software to be queried.

[0093] The output module 403 is used to obtain the license names of all software involved according to the dependency chain, and query and output the rights and obligations information list corresponding to the license.

[0094] The integration module 404 is used to integrate rights and obligations according to the dependency chain, the license rights and obligations information list, and the principle of minimizing rights and maximizing obligations.

[0095] In some optional implementations, the query module 402 includes:

[0096] The first parsing unit is used to parse the SPEC file of the open source software RPM software package to be queried.

[0097] The second parsing unit is used to parse the required field and the BuildRequire field in the SPEC file to obtain a forward software dependency chain and a reverse software dependency chain.

[0098] In some optional implementations, the output module 403 includes:

[0099] The identification unit is used to automatically identify and prompt relevant license information according to the name of the open source software to be queried.

[0100] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.

[0101] The open source software compliance checking device in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.

[0102] The embodiment of the present invention also provides a computer device having the above Figure 4 The open source software compliance checking device is shown.

[0103] See also Figure 5 , Figure 5 is a schematic diagram of the structure of a computer device provided by an optional embodiment of the present invention, such as Figure 5 As shown, the computer device includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process the instructions executed in the computer device, including instructions stored in or on the memory to display the graphical information of the GUI on an external input / output device (such as, a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple computer devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Figure 5 A processor 10 is taken as an example.

[0104] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.

[0105] The memory 20 stores instructions executable by at least one processor 10, so that at least one processor 10 executes the method shown in the above embodiment.

[0106] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the computer device, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0107] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 20 may also include a combination of the above types of memory.

[0108] The computer device also includes an input device 30 and an output device 40. The processor 10, the memory 20, the input device 30 and the output device 40 may be connected via a bus or other means. Figure 5 The example of connecting through bus is taken in the following.

[0109] The input device 30 can receive input digital or character information and generate key signal input related to user settings and function control of the computer device, such as a touch screen, etc. The output device 40 can include a display device, etc.

[0110] The embodiment of the present invention also provides a computer-readable storage medium. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium through a network download, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state hard disk, etc.; further, the storage medium can also include a combination of the above types of memories. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.

[0111] A part of the present invention may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer. Those skilled in the art should understand that the existence of the computer program instruction in a computer-readable medium includes, but is not limited to, a source file, an executable file, an installation package file, etc., and accordingly, the way in which the computer program instruction is executed by the computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium may be any available computer-readable storage medium or communication medium accessible to the computer.

[0112] Although the embodiments of the present invention have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations all fall within the scope of the present application.

Claims

1. An open source software compliance checking system, characterized in that: The system includes: a software information and association analysis system, an open source license management system and a compliance analysis system, wherein: The software information and associated system are used to query the dependency chain involved in the open source software to be queried; The open source license management system is used to query the license rights and obligations information list; The compliance analysis system is used to integrate rights and obligations according to the dependency chain, the license rights and obligations information list, and the principle of minimizing rights and maximizing obligations.

2. The system according to claim 1, characterized in that Download all original licenses, disassemble the usage rights and corresponding obligations, and generate an open source license management system database.

3. The system according to claim 1, characterized in that Obtain all the software that the open source software to be queried needs to rely on during compilation and operation, form a dependency list and list database, and establish a software information and association analysis system database.

4. A method for checking compliance of open source software, characterized in that: The method comprises: Receive the name of the open source software to be queried input by the user; Querying the dependency chain involved in the open source software to be queried; According to the dependency chain, obtain the license names of all software involved, query and output the rights and obligations information list corresponding to the license; According to the dependency chain, license rights and obligations information list, rights and obligations are integrated according to the principle of minimizing rights and maximizing obligations.

5. The method according to claim 4, characterized in that The querying of the dependency chain involved in the open source software to be queried includes: Parse the SPEC file of the open source software RPM package to be queried; The required field and the BuildRequire field in the SPEC file are parsed to obtain a forward software dependency chain and a reverse software dependency chain.

6. The method according to claim 4, characterized in that The license names of all software involved in the acquisition include: According to the name of the open source software to be queried, relevant license information is automatically identified and prompted.

7. An open source software compliance checking device, characterized in that: The device comprises: A receiving module, used for receiving the name of the open source software to be queried input by the user; A query module, used to query the dependency chain involved in the open source software to be queried; An output module, used to obtain the license names of all software involved according to the dependency chain, and query and output a list of rights and obligations information corresponding to the license; The integration module is used to integrate rights and obligations according to the dependency chain, license rights and obligations information list, and the principle of minimizing rights and maximizing obligations.

8. A computer device, characterized in that: include: A memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the open source software compliance checking method described in any one of claims 4 to 6 by executing the computer instructions.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the open source software compliance checking method described in any one of claims 4 to 6.

10. A computer program product, characterized in that It comprises computer instructions, and the computer instructions are used to make a computer execute the open source software compliance checking method described in any one of claims 4 to 6.

Citation Information

Patent Citations

  • Open source license compliance analysis and conflict detection method

    CN109063421A

  • Open source software license selection method based on software dependence

    CN113268713A

  • JAVA application publishing method and system supporting domestic heterogeneous environment

    CN115686537A

  • Construction method, device and equipment of software bill of material library and readable medium

    CN116974619A

  • Open source license dependency relationship and risk analysis method and related product

    CN118171244A