Efficient storage and transfer of iOS binary files

US9959100B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9959100-B2
Application numberUS-201514979828-A
CountryUS
Kind codeB2
Filing dateDec 28, 2015
Priority dateAug 12, 2015
Publication dateMay 1, 2018
Grant dateMay 1, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system builds an application. The system receives, by a build server, from an application development server, metadata information of the application and a build request to build the application. The system generates binaries of the application by overlaying the metadata information on binaries of a pre-compiled application. The system then signs the binaries of the application to generate signed binaries of the application, and sends, to the application development server, a corresponding signature and one or more files modified by the signing of the binaries of the application. In one embodiment, the build server stores, on a storage appliance, the corresponding signature, the one or more files modified by the signing of the binaries of the application, and the metadata information of the application.

First claim

Opening claim text (preview).

What is claimed: 1. A method for building an application, the method comprising: receiving, by a build server, from an application development server, declarative metadata information of the application and a build request to build the application; generating binaries of the application by overlaying the declarative metadata information on unsigned binaries of a pre-compiled application, the overlaying comprising adding or substituting the declarative metadata information as deltas in the unsigned binaries; signing the unsigned binaries of the application to generate signed binaries of the application and one or more modified files; and sending, to the application development server, a corresponding signature and the one or more files modified by the signing of the unsigned binaries of the application; wherein the build server stores on a storage appliance, to be obtained by an edge server in response to a request from a mobile device to download the application, the corresponding signature, the one or more files modified by the signing of the unsigned binaries of the application, and the declarative metadata information; wherein the corresponding signature is compared to a resulting signature based on the signed binaries to verify the authenticity of the application. 2. The method of claim 1 , wherein the build server, the application server and the edge server are different servers. 3. The method of claim 1 , wherein the edge server obtains the corresponding signature, the one or more files modified by the signing of the application, and the metadata information of the application, after receiving a request from a mobile device to download the application. 4. The method of claim 3 , wherein the edge server regenerates the signed binaries of the application by combining the one or more files modified by the signing of the application, the metadata information of the application, and the binaries of the pre-compiled application. 5. The method of claim 4 , wherein the edge server verifies authenticity of the application by hashing the signed binaries of the application and comparing a resulting signature with the corresponding signature. 6. The method of claim 4 , wherein the edge server provides the signed binaries of the application to the mobile device that requested to download the application. 7. The method of claim 6 , wherein the mobile device verifies authenticity of the application by hashing the signed binaries of the application and comparing a resulting signature with the corresponding signature. 8. A non-transitory computer readable medium having instructions stored thereon that, when executed by a processor, cause the processor to build an application, the building comprising: receiving, by a build server, from an application development server, declarative metadata information of the application and a build request to build the application; generating binaries of the application by overlaying the declarative metadata information on unsigned binaries of a pre-compiled application, the overlaying comprising adding or substituting the declarative metadata information as deltas in the unsigned binaries; signing the unsigned binaries of the application to generate signed binaries of the application and one or more modified files; and sending, to the application development server, a corresponding signature and the one or more files modified by the signing of the unsigned binaries of the application; wherein the build server stores on a storage appliance, to be obtained by an edge server in response to a request from a mobile device to download the application, the corresponding signature, the one or more files modified by the signing of the unsigned binaries of the application, and the declarative metadata information; wherein the corresponding signature is compared to a resulting signature based on the signed binaries to verify the authenticity of the application. 9. The computer readable medium of claim 8 , wherein the build server, the application development server and the edge server are different servers. 10. The computer readable medium of claim 8 , wherein the edge server regenerates the signed binaries of the application by combining the one or more files modified by the signing of the application, the metadata information of the application, and the binaries of the pre-compiled application. 11. The computer readable medium of claim 10 , wherein the edge server verifies authenticity of the application by hashing the signed binaries of the application and comparing a resulting signature with the corresponding signature. 12. The computer readable medium of claim 10 , wherein the edge server provides the signed binaries of the application to the mobile device that requested to download the application. 13. The computer readable medium of claim 12 , wherein the mobile device verifies authenticity of the application by hashing the signed binaries of the application and comparing a resulting signature with the corresponding signature. 14. The computer readable medium of claim 8 , wherein the binaries of the pre-compiled application are unsigned binaries generated by Xcode. 15. A system for building an application, the system comprising: a processor coupled to a storage device that stores instructions that, when executed by the processor, implement modules comprising: a receiving module that receives, by a build server, from an application development server, declarative metadata information of the application and a build request to build the application; a generating module that generates binaries of the application by overlaying the declarative metadata information on unsigned binaries of a pre-compiled application, the overlaying comprising adding or substituting the declarative metadata information as deltas in the unsigned binaries; a signing module that signs the unsigned binaries of the application to generate signed binaries of the application and one or more modified files; and a sending module that sends, to the application development server, a corresponding signature and the one or more files modified by the signing of the unsigned binaries of the application; wherein the build server stores on a storage appliance, to be obtained by an edge server in response to a request from a mobile device to download the application, the corresponding signature, the one or more files modified by the signing of the unsigned binaries of the application, and the declarative metadata information; wherein the corresponding signature is compared to a resulting signature based on the signed binaries to verify the authenticity of the application. 16. The system of claim 15 , wherein the build server, the application server and the edge server are different servers. 17. The system of claim 15 , wherein the edge server regenerates the signed binaries of the application by combining the one or more files modified by the signing of the application, the metadata information of the application, and the binaries of the pre-compiled application. 18. The system of claim 17 , wherein the edge server verifies authenticity of the application by hashing the signed binaries of the application and comparing a resulting signature with the corresponding signature. 19. The system of claim 17 , wherein the edge server provides the signed binaries of the application to the mobile device that requested to download the application. 20. The system of claim 19 , wherein the mobile device verifies authenticity of the applicatio

Assignees

Inventors

Classifications

  • G06F8/36Primary

    Software reuse · CPC title

  • Version control (security arrangements therefor G06F21/57); Configuration management · CPC title

  • Programming languages or programming paradigms · CPC title

  • Multiprogramming arrangements · CPC title

  • Graphical or visual programming · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9959100B2 cover?
A system builds an application. The system receives, by a build server, from an application development server, metadata information of the application and a build request to build the application. The system generates binaries of the application by overlaying the metadata information on binaries of a pre-compiled application. The system then signs the binaries of the application to generate si…
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification G06F8/36. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 01 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).