The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Aug. 22, 2000
Filed:
Apr. 03, 1997
Robert B Seidensticker, Jr, Woodinville, WA (US);
Vinay Deo, Bellevue, WA (US);
Michael J O'Leary, Redmond, WA (US);
Microsoft Corporation, Redmond, WA (US);
Abstract
A software application is modified in a defined manner to prevent it being executable by a processor until the modified software application is decoded. Preferably, a sum of all of the bytes comprising a header of the software application (sufficiently small in size to be referred to as an 'applet') is determined. In this embodiment, applet includes pseudo-code (p-code). Only the least most significant byte of the sum is used as a variable for modifying the p-code of the applet. Preferably, the variable is added to each byte of the p-code, except that only the first byte of a multi-byte p-code is thus modified. Alternatively, a different logical operator can be employed such as a subtract, AND, XOR, etc. for modifying the p-code. The modified program is then transferred to a portable pager that is also capable of maintaining personal information and executing small software applications. A processor in the pager device decodes p-code from the modified applet when needed during execution of the applet, by determining the variable that was used to modify the p-code and then subtracting the variable from p-code. The resulting p-code is then executable by the pager device. Modifying software code in this manner helps to insure that only software applets from an approved source that are written in an approved manner are executed by the portable paging device. This same approach can be used for encoding/decoding software transferred for execution on other types of small devices, such as cell phones and PIM devices.