Oracle International Corporation (Redwood Shores, CA)

A variety of embodiments provide an apparatus, method, or system that links source code with a compiled binary. This ensures the source of the binary, as well as it being traceable back to the source code. A typical method involves determining the request to signify an asset as digital; making a first hash of an initial source file of the digital asset; ascertaining the version of the original source file; electing one or more of the nodes of blockchains to commit the first hash to the blockchain, in conjunction with an version of the digital asset corresponding to the version of the initial source file; then converting the source file into a binary file, resulting in a binary representation of the digital asset computing a second hash of the binary file and committing the second hash to the blockchain along with the version of the digital asset.

The application is related to computing, and more specifically, to software and methods of tracing digital assets and for implementing quality control in a networked computing environment.

Many highly demanding applications employ systems and methods to trace digital assets like copywritten music, videos or software applications. In order to prevent or limit the impact of attacks that are malicious to the cyberspace, such as ransomware, for enforcement of software Intellectual Property rights, identifying software owners, and facilitating the updating of software. These applications typically require efficient ways of tracking and tracking the origin of digital assets.

Industries and businesses that are security conscious (e.g., intelligence services, healthcare, finance and healthcare, etc.) generally require effective, accurate and almost tamper-proof methods for tracking or tracing digital assets. Effective mechanisms can enable organizations to readily ascertain responsibility (e.g. for malware-related attacks) and to thereby mitigate the risk of liability. Digital asset traceability could be important for protecting and enforce intellectual property rights,e.g. software copyrights. But, it’s difficult to locate robust and reliable digital asset traceability , as in addition to other preventative security or traceability tools.

Typically, to monitor and track digital assets, organisations, e.g., companies government, universities, etc. depend on adjusting central control systems (e.g. apps stores) that control a specific computing environment. For instance, to protect against malware, such centralized control systems can be equipped with additional security features, e.g., anti-malware software, etc.

These security measures are often placed in place only following security breaches, such as an attack of zero-day duration on malware, have taken place. Generally, organizations using such centralized systems must often rely upon customer trust.Accordingly, breaches of the trust, such as when a threat is triggered by an attack from malware, can be particularly problematic; not only for the users however, for the company that could lose customers.

An example embodiment discloses the system and method for improving software quality control and tracing in an environment of networked computing, in part by employing repository for source code as well as compiled binary files, which have been (or could be) registered, by using cryptographic hashes of the files within a distributed ledger e.g. an blockchain. The historical record of the ledger distributed (i.e. entries that have already been committed to the ledger) can be updated and readfrom however, it is not easily altered by a particular participant system. records are blocks that hold binary hashes, or source code hashes. They also contain the time stamp as well as the software version.

A binary file can be traced back to its source code using its version number and/or its time stamp as recorded within the . The registration of source code and the associated hashes are also computed using a fingerprint of the source code in conjunction with a unique identifier for the workstation. For example it could be a Central Processing Unit ID (CPU) is the address of the machine from which the sourcecode was generated (or transferred to a repository), the Media Access Control Address (MAC) or the User ID.

You can use the stored hashes for both source code as well as associated binary files to confirm that the source code files and binary images have not been modified and to identify and verify the author and workstation responsible for the associatedsoftware version.

Additionally, a variety of other capabilities can be derived from the using the blockchain and associated functionality of the nodes, as described herein. For example, mechanisms to facilitate digital asset version control, tracing, monitoring,and notifications; code release sequence; IP protection; software bug tracing, alerts, and mitigation of malware attacks; detection as well as mitigation; quality assurance source-code filtering detection by the customer of file corruption in binary files or alteration; component nesting tracking; production server flagging of non-registered code etc., are all easily implemented by using the blockchain and accompanying systems and techniques described herein.

Additionally, clients systems (e.g., consumer systems) and associated customers can now readily verify the integrity of a downloaded binary file before installing the software, e.g., by comparing a hash of the downloaded binary file with the hash that is that is registered on the blockchain. Cloud service providers will also be able to verify that binary files (or any other files) being delivered to a production server have not been altered. This could be done by comparing the hash of the binary file that you transmit to the production server with the hash of the binary file in the .

Another method to facilitate digital asset traceability within an ecosystem of networked computing is to determine a request for digital asset registration; compute a first hash from an initialsourcefile for the asset; ascertain the version and choose one or more nodes within a distributed ledger to sign the first hash, in conjunction with aversion of digital asset corresponding with the version. Convert the source file to a binary file to create an binary version. Then commit the second hash in conjunction with the version to the distributed

Another approach is creating an source code file, saving the source code file in a repository placing a hash file of the source code file within a blockchain and compiling the source code file to create a binary file (also simply called the”binary” in this case) and storing a hash of the binary file within a block of the blockchain; and distributing the binary file to ensure that the participants can access the distributed ledger to identify the origin of the source code used in creating the binary file.

Distributed ledger technology for instance Blockchain technology, or any other suitable trusted database, can be used to trace computer program from a source to a binary using the . This will allow the control of version control for digital assets and sequencing of code releases, IP protection, code bug tracing and mitigation, prevention of malware attacks monitoring, mitigation of, etc. to flow seamlessly.

Different versions provide an apparatus, method, or system that permits source code to be connected to an unicode. This ensures the source of the binary, as well as it being traceable back to the source code that created it.

A further comprehension of the nature of and advantages of certain embodiments described in this specification can be gained by reading the remaining sections of the specification as well as the attached drawings.

Click here to view the patent on USPTO website.


Get Patents with PatentPC

What is a patent?

A patent is granted by the government to protect the invention. It grants the inventor the exclusive rights to create, use and sell the invention. Society gains when new technologies are introduced to market. These benefits could be realized directly as people are able to achieve previously unattainable feats, or indirectly through the economic opportunities that innovation provides (business growth, jobs).

A lot of pharmaceutical companies and researchers at universities seek protection from patents in their work and discoveries. Patents are granted for the creation of a product, process or method of making new materials. In order to be granted protection under a patent, an invention must be valuable unique, innovative, and not apparent to others in the same subject.

Patents give inventors a chance to be recognized for commercially successful inventions. They provide a reason for inventors to come up with new ideas. Small businesses and inventors are certain that they will receive a return on the investment they make in technology development through patents. They could earn a decent income through their work.

Businesses that have the capacity to:

Secure new products and services that are innovative;

Increase the visibility and value of your products ‘ presence on the market

Your business and your products should be distinguished from others;

Access business and technical expertise and other information;

Beware of using content that is third party or losing important information, original outputs or any other outputs that are creative.

Patents can transform an inventor’s information into a tradeable asset that opens up new possibilities for employment creation and business growth through licensing or joint ventures.

Small companies that have patent protection will be more attractive to investors in the development and commercialization of technology.

Patents can lead to fresh ideas and innovative inventions. This information could be eligible for patent protection.

Patents can be used to serve as an obstacle to unscrupulous third parties who profit from the efforts of an invention.

Commercially successful patent-protected technology revenues can be used to fund research and development (R&D), which will increase the chance of better technology in the future.

Intellectual property ownership is a way to convince lenders and investors that there are legitimate opportunities to market your product. A single patent could provide many financing opportunities. You can use patents and other IP assets as collateral or security for financing. You can also show investors the patents you own to increase the value of your company. Forbes and other publications have reported that each patent can increase between $500,000 and a million dollars in company valuation.

A well-constructed business plan is essential for start-ups. It must be based on IP and explain how your product/service stands out. Investors will also be impressed if you can prove that your IP rights are secure or in the process of becoming secure, and that they support your business strategy.

It is vital to protect an invention before applying for patent protection. Public disclosure of an invention can be detrimental to its novelty and render it invalid. The filing of disclosures prior to filing, for example, for investors, test marketing, or other business partners, must be done after signing a confidentiality contract.

There are many kinds of patents. Knowing them is essential to protect your invention. Patents for utility are used to protect the development of new methods and machines. Design patents cover ornamental designs. Utility patents are the best because they shield the owner from copycats as well as other competition. Frequently, utility patents are issued to improve or modify existing inventions. Utility patents also cover improvements and changes to existing inventions. For instance, a procedure patent will cover acts or methods of performing a specific act, whereas a chemical composition will include an assortment of components.

What is the length average of patents? Utility patents last 20 years from the earliest filing dates, but their expirations are able to be extended due to patent office delays for instance.

Are you thinking of the patenting of your idea? Patents are only granted to applicants who are the first to file, therefore you need to file your patent application quickly. Contact PatentPC today to get your patent application approved!

When you’re writing your patent application it is recommended to conduct an internet search for patents, since the search can provide an insight into the other applicants’ ideas. It will help you narrow down the scope of your invention. In addition, you can learn about state of the technological advancements in your area of invention. This will allow you to know the extent of your invention and help prepare you to file your patent application.

How to Search for Patents

Patent searches are the initial step towards obtaining your patent. You can do a google patent search or do a USPTO search. After the patent application has been filed, the item subject to the patent can be described as patent-pending. you can locate the patent application on a public pair. After the patent office has approved the application, you can do a patent number search to locate the granted patent. Your product will now be patented. It is also possible to use the USPTO search engine. Read on for details. A patent lawyer or patent attorney can advise you on the procedure. Patents in the United States are granted by the US trademark and patent office as well as the United States patent office. This office also reviews trademark applications.

Are you looking for similar patents? Here are the steps to follow:

1. Create a list of terms for your invention, based on its purpose composition, use, or purpose.

Write down a concise and precise description of your invention. Avoid using generic terms like “device”, “process”, and “system”. Instead, think about synonyms for the terms you selected initially. Then, take note of important technical terms as well as keywords.

Utilize the following questions to help you identify keywords or concepts.

  • What is the purpose of the invention? Is it a utilitarian device or an ornamental design?
  • Does the invention consist of a method of making something or performing some function? Or is it a thing or procedure?
  • What is the purpose and composition of the invention? What is the physical structure of the invention?
  • What’s the objective of this invention?
  • What are the technical terms and terms that describe the nature of an invention? A technical dictionary can assist you to identify the correct phrases.

2. Use these terms to find relevant Cooperative Patent Classifications on the Classification Text Search Tool. If you’re unable to locate the appropriate classification to describe your invention, go through the classification’s Schemas of classes (class schedules). Consider substituting the words that you’ve used for describing your invention, if you do not receive any results from your Classification Text Search with synonyms such as the terms you used in the first step.

3. Check 3. Check the CPC Classification Definition for confirmation of the CPC classification you have found. If the selected classification title has a blue box with an “D” on its left, the link will lead you to the CPC classification definition. CPC classification definitions can help identify the specific classification’s scope which is why you can be sure to select the most pertinent. Additionally the definitions may include some tips for searching and other information that could be useful to further study.

4. The Patents Full-Text Database and the Image Database allow you to find patent documents that are accompanied by the CPC classification. By focusing on abstracts and representative drawings, you can narrow down your search to find the most relevant patent publications.

5. Take advantage of this list of most relevant patent publications to examine each in detail to find similarity to your idea. Pay attention to the claims and specification. Consult the applicant and patent examiner for additional patents.

6. You can find published patent applications that match the CPC classification you selected in Step 3. You can also use the same method of search that you used in step 4 to limit your results to the most relevant patents by reading the abstracts and drawings on each page. The next step is to review the patent applications that have been published carefully with particular attention paid to the claims and other drawings.

7. You can find other US patent publications using keywords searching in AppFT or PatFT databases, as well as the classification search of patents that are that aren’t from the United States as in the following table. You can also make use of search engines on the internet to search non-patent documents that describe inventions in the literature. For instance:

  • Add keywords to your search. Keyword searches may turn up documents that are not well-categorized or have missed classifications during Step 2. For example, US patent examiners often supplement their classification searches with keyword searches. Think about the use of technical engineering terminology rather than everyday words.
  • Search for foreign patents using the CPC classification. Then, re-run the search using international patent office search engines such as Espacenet, the European Patent Office’s worldwide patent publication database of over 130 million patent publications. Other national databases include:
  • Search non-patent literature. Inventions can be made public in many non-patent publications. It is recommended that you search journals, books, websites, technical catalogs, conference proceedings, and other print and electronic publications.

To review your search, you can hire a registered patent attorney to assist. A preliminary search will help one better prepare to talk about their invention and other related inventions with a professional patent attorney. In addition, the attorney will not spend too much time or money on patenting basics.