IP Library Granted Patent US 12,259,965
Granted Patent B2
US 12,259,965 · App. 18/188,802 · Granted Mar 25, 2025

Mobile device with secure private memory

Inventors: Jason Sean Gagne-Keats (Cupertino, CA); Wolfgang Wesley Muller (San Francisco, CA); Gary Anderson (San Francisco, CA); Nicholas Franco (San Jose, CA); Jean-Baptiste Charles Theou (Sene, FR)
G06F21/54G06F9/441G06F21/32G06F21/51G06F21/53G06F21/572G06F21/602G06F21/74G06F21/79H04W12/37G06F2221/2105G06F2221/2141
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,259,965
App. No.
18/188,802
Granted
Mar 25, 2025
Kind
B2
Abstract

A mobile device can detect an idle state and, in response, initiate an access monitoring function to covertly monitor activity involving a human interaction with the mobile device. The covert monitoring is undetectable by a user of the mobile device. The mobile device can then detect a human interaction with the mobile device and, in response, cause the mobile device to covertly capture and log one or more human interactions with the mobile device. An authorized user of the mobile device is enabled to review the log of human interactions with the mobile device.

Claims (82)

1. A mobile device comprising:

a non-private memory configured to store multiple software programs,

wherein the multiple software programs include an application and a driver program, and

wherein the driver program controls operations of a radio access technology (RAT) device, a positioning, navigation, or timing (PNT) device, an input/output (I/O) device, or a communications port of the mobile device;

a private memory configured to store copies of the multiple software programs and additionally store a trusted software program;

wherein the trusted software program is only stored in the private memory; and

a processor configured to:

boot the mobile device in a non-private mode that forbids access to the copies of the multiple software programs or the trusted software program,

boot the mobile device in a private mode that allows access to the copies of the multiple software programs or the trusted software program, and

enable switching of the mobile device from the non-private mode to the private mode in response to completion of a multifactor authentication (MFA) procedure.

2. The mobile device of claim 1 , wherein the processor is configured to:

execute the trusted software program stored on the private memory only when the mobile device is in the private mode.

3. The mobile device of claim 1 , wherein the processor is configured to:

selectively switch the mobile device between the non-private mode and the private mode in response to a reboot of the mobile device.

4. The mobile device of claim 1 , wherein the MFA procedure verifies factors including a biometric factor or a near field communication (NFC) factor.

5. The mobile device of claim 1 further comprising:

a communications channel configured to copy data between the private memory and the non-private memory,

wherein the communications channel is disabled when the mobile device is in the non-private mode, and

wherein the communications channel is enabled when the mobile device is in the private mode.

6. The mobile device of claim 1 :

wherein the non-private memory is configured to store the multiple software programs in accordance with a first encryption protocol, and

wherein the private memory is configured to store the copies of the multiple software programs or trusted software program in accordance with a second encryption protocol different from the first encryption protocol.

7. The mobile device of claim 1 :

wherein the copies of the multiple software programs or the trusted software program stored in the private memory are encrypted when the mobile device is in a non-private mode, and

wherein the copies of the multiple software programs or the trusted software program stored in the private memory are decrypted when the mobile device is in a private mode.

8. The mobile device of claim 1 , wherein the non-private memory and the private memory are different partitions of a common memory device.

9. The mobile device of claim 1 , wherein the non-private memory and the private memory are part of separate and distinct memory devices.

10. The mobile device of claim 1 , wherein the processor is configured to:

copy any of the multiple software programs from the private memory to the non-private memory only when the mobile device is in the private mode.

11. A mobile device comprising:

a non-private memory configured to store multiple software programs,

wherein the multiple software programs include an application and a driver program, and

wherein the driver program controls operations of a radio access technology (RAT) device, a positioning, navigation, or timing (PNT) device, an input/output (I/O) device, or a communications port of the mobile device;

a private memory configured to store copies of the multiple software programs and additionally store a trusted software program;

wherein the trusted software program is only stored in the private memory; and

a processor configured to:

boot the mobile device in a non-private mode that forbids access to the copies of the multiple software programs or the trusted software program,

boot the mobile device in a private mode that allows access to the copies of the multiple software programs or the trusted software program,

remove a selected software program from the non-private memory,

execute a restart procedure in response to user input,

wherein the restart procedure includes options to restart the mobile device (i) without the selected software program in the non-private memory and (ii) restore the selected software program in the non-private memory,

receive an indication to restart the mobile device and restore the selected software program in the non-private memory, and

restart the mobile device by restoring the selected software program in the non-private memory from a copy of the selected software program in the private memory.

12. The mobile device of claim 11 , wherein the selected software program is a driver program for a cellular radio, a Wi-Fi radio, a GPS module, a Bluetooth radio, a camera device, a microphone device, or a USB port of the mobile device.

13. A mobile device comprising:

a non-private memory configured to store multiple software programs,

wherein the multiple software programs include an application and a driver program, and

wherein the driver program controls operations of a radio access technology (RAT) device, a positioning, navigation, or timing (PNT) device, an input/output (I/O) device, or a communications port of the mobile device;

a private memory configured to store copies of the multiple software programs and additionally store a trusted software program;

wherein the trusted software program is only stored in the private memory;

a processor configured to:

boot the mobile device in a non-private mode that forbids access to the copies of the multiple software programs or the trusted software program,

boot the mobile device in a private mode that allows access to the copies of the multiple software programs or the trusted software program; and

one or more power sources configured to power the private memory and the non-private memory,

wherein both the private memory and the non-private memory are configured to draw power from the one or more power sources when the mobile device is in the private mode, and

wherein only the non-private memory is configured to draw power from the one or more power sources when the mobile device is in the non-private mode.

14. A mobile device comprising:

a non-private memory configured to store multiple software programs,

wherein the multiple software programs include an application and a driver program, and

wherein the driver program controls operations of a radio access technology (RAT) device, a positioning, navigation, or timing (PNT) device, an input/output (I/O) device, or a communications port of the mobile device;

a private memory configured to store copies of the multiple software programs and additionally store a trusted software program;

wherein the trusted software program is only stored in the private memory;

a processor configured to:

boot the mobile device in a non-private mode that forbids access to the copies of the multiple software programs or the trusted software program,

boot the mobile device in a private mode that allows access to the copies of the multiple software programs or the trusted software program, and

copy any of the multiple software programs from the private memory to the non-private memory only when the mobile device is in the private mode,

wherein a software program copied from the private memory replaces an existing software program stored on the non-private memory.

15. A mobile device comprising:

a non-private memory configured to store multiple software programs,

wherein the multiple software programs include an application and a driver program, and

wherein the driver program controls operations of a radio access technology (RAT) device, a positioning, navigation, or timing (PNT) device, an input/output (I/O) device, or a communications port of the mobile device:

a private memory configured to store copies of the multiple software programs and additionally store a trusted software program;

wherein the trusted software program is only stored in the private memory;

a display device; and

a processor configured to:

boot the mobile device in a non-private mode that forbids access to the copies of the multiple software programs or the trusted software program,

boot the mobile device in a private mode that allows access to the copies of the multiple software programs or the trusted software program, and

while in the non-private mode, in response to a reboot sequence initiated at the mobile device, present a user interface on the display device,

wherein the user interface includes:

a first graphical control configured to, when actuated, change a power state of the mobile device,

a second graphical control configured to, when actuated, boot the mobile device in the non-private mode, and

a third graphical control configured to, when actuated, boot the mobile device in the private mode.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2025
From: SOLANA LABS, INC.
To: SOLANA MOBILE INC.
Reel/Frame 070861/0928 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2025
From: OSOM PRODUCTS, INC.
To: SOLANA LABS, INC.
Reel/Frame 070688/0873 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2023
From: GAGNE-KEATS, JASON SEAN; MULLER, WOLFGANG WESLEY; ANDERSON, GARY; FRANCO, NICHOLAS; THEOU, JEAN-BAPTISTE CHARLES
To: OSOM PRODUCTS, INC.
Reel/Frame 063103/0196 →
Continuity (3)
Division 17466429 · Sep 3, 2021
Provisional Application 63075688 · Sep 8, 2020
Related Publication 20230229760A1 · Jul 20, 2023
References Cited (42)
US 5446864A · Burghardt · 1995 [cited by examiner]
US 6609199B1 · Detreville · 2003 [cited by applicant]
US 7380275B2 · Srinivasan et al. · 2008 [cited by applicant]
US 8254568B2 · Smith et al. · 2012 [cited by applicant]
US 8984592B1 · Paczkowski et al. · 2015 [cited by applicant]
US 20020129245A1 · Cassagnol et al. · 2002 [cited by applicant]
US 20040123118A1 · Dahan et al. · 2004 [cited by applicant]
US 20040203682A1 · Hinds et al. · 2004 [cited by applicant]
US 20040268135A1 · Zimmer et al. · 2004 [cited by applicant]
US 20050289351A1 · England et al. · 2005 [cited by applicant]
US 20060036851A1 · Detreville · 2006 [cited by applicant]
US 20060090084A1 · Buer · 2006 [cited by examiner]
US 20070061594A1 · Ginter · 2007 [cited by examiner]
US 20070150681A1 · Frank et al. · 2007 [cited by applicant]
US 20080165952A1 · Smith et al. · 2008 [cited by applicant]
US 20090292901A1 · Henry et al. · 2009 [cited by applicant]
US 20110154032A1 · Mauro, II · 2011 [cited by applicant]
US 20110306326A1 · Reed et al. · 2011 [cited by applicant]
US 20120221668A1 · Chen · 2012 [cited by examiner]
US 20120246641A1 · Gehrmann · 2012 [cited by examiner]
US 20120304280A1 · Hayashida · 2012 [cited by applicant]
US 20130139139A1 · Mallur et al. · 2013 [cited by applicant]
US 20130279689A1 · Obaidi · 2013 [cited by applicant]
US 20140115660A1 · Chinta · 2014 [cited by applicant]
US 20140137183A1 · Russello et al. · 2014 [cited by applicant]
US 20140283141A1 · Shephard et al. · 2014 [cited by applicant]
US 20140298026A1 · Isozaki et al. · 2014 [cited by applicant]
US 20150052616A1 · Hutchison et al. · 2015 [cited by applicant]
US 20150143514A1 · Paksoy et al. · 2015 [cited by applicant]
US 20170103233A1 · Sibert · 2017 [cited by applicant]
US 20170319861A1 · Golden · 2017 [cited by applicant]
US 20180068106A1 · Archibald et al. · 2018 [cited by applicant]
US 20180232534A1 · Dotan-Cohen et al. · 2018 [cited by applicant]
US 20190272394A1 · Desai · 2019 [cited by examiner]
US 20190312987A1 · Ketsuka et al. · 2019 [cited by applicant]
US 20200110869A1 · Domke · 2020 [cited by examiner]
US 20200117777A1 · Brown · 2020 [cited by examiner]
US 20200151336A1 · Maletsky · 2020 [cited by examiner]
US 20210081537A1 · Strong · 2021 [cited by examiner]
WO 2017208064A1 · 2017 [cited by applicant]
NPL Search Terms (Year: 2024). [cited by examiner]
Yan, Zheng , et al., “A Security and Trust Framework for Virtualized Networks and Software-defined Networking”, Security and communication networks 9.16 (2016): 3059-3069 (Year: 2016), 2016, 13 pp. [cited by applicant]