IP Library Granted Patent US 12,256,017
Granted Patent B2
US 12,256,017 · App. 17/990,289 · Granted Mar 18, 2025

Techniques for correcting anomalous activity caused by smart contracts

Inventor: Lyle Walter Paczkowski (Mission Hills, KS)
Assignee: T-Mobile USA, Inc.
H04L9/3247H04L9/50H04L2209/80
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,256,017
App. No.
17/990,289
Granted
Mar 18, 2025
Kind
B2
Abstract

A system can correct or avoid an unexpected result caused by executing a smart contract. The system can detect a potential/actual result generated based on a primary smart contract, which is stored in association with a block of a blockchain and is configured to execute when a predetermined condition is satisfied. The system can determine that the potential/actual result deviates from an expected result and, in response, retrieve a secondary smart contract from a repository. The secondary smart contract is selected to prevent the unexpected result in the future. The system can store the secondary smart contract retrieved from the repository in association with a subsequent block of the blockchain. The primary smart contract and the secondary smart contract are then configured to execute in concert when the predetermined condition is satisfied such that the expected result is produced instead of the unexpected result.

Claims (56)

1. A method performed by a system associated with a telecommunications network to restore an expected effect caused by executing a smart contract, the method comprising:

detecting a potential or actual effect caused in response to executing a primary smart contract,

wherein the primary smart contract is stored in association with a first block of a blockchain and configured to execute when a predetermined condition is satisfied by a software program to produce an expected effect, and

wherein the software program is stored at a wireless device that is subscribed to the telecommunications network;

determining that the potential or actual effect deviates from the expected effect;

in response to determining that the potential or actual effect deviates from the expected effect, retrieving a secondary smart contract from a repository,

wherein the secondary smart contract is selected from among multiple secondary smart contracts stored at the repository to restore the expected effect of the primary smart contract when the predetermined condition is satisfied by a software program; and

causing storage of the secondary smart contract in association with a second block of the blockchain subsequent to the first block;

wherein the primary smart contract and the secondary smart contract are configured to execute in concert when the predetermined condition is satisfied by the software program to jointly produce the expected effect.

2. The method of claim 1 further comprising:

jointly execute the primary smart contract and the secondary smart contract in response to the predetermined condition being satisfied by the software program to produce the expected effect.

3. The method of claim 1 , wherein retrieving the secondary smart contract from the repository comprises:

selecting the secondary smart contract from among the multiple smart contracts to operate as a patch for the smart contract.

4. The method of claim 1 , wherein to determine that the potential or actual effect deviates from the expected effect comprises:

testing the software program at runtime to determine a test result of the primary smart contract; and

detecting that the test result deviates from an expected result.

5. The method of claim 1 further comprising:

hosting the primary smart contract on a memory of the wireless device; and

hosting the repository on the memory of the wireless device.

6. The method of claim 1 further comprising:

hosting the primary smart contract on a memory of the wireless device; and

hosting the repository on a memory of a server located remote from the wireless device.

7. The method of claim 1 , wherein retrieving the secondary smart contract from the repository comprises:

searching an index of the multiple secondary smart contracts based on a criterion of the first smart contract,

wherein the index includes pointers from the multiple secondary smart contracts to locations of the repository storing the multiple secondary smart contracts; and

retrieving the secondary smart contract from a location of the repository based on a pointer of the index.

8. The method of claim 1 further comprising, prior to detecting the potential or actual effect of the primary smart contract:

establish a secure network link between the primary smart contract and the repository storing the multiple secondary smart contracts; and

performing a handshake operation to test for a persistent logical connection between the primary smart contract and the repository.

9. The method of claim 1 :

wherein the expected effect occurs when the predetermined condition is satisfied by a first version of the software program, and

wherein an unexpected effect occurs when the predetermined condition is satisfied by a second version of the software program different from the first version of the software program.

10. The method of claim 1 , wherein the primary smart contract is stored in the first block of the blockchain and the secondary smart contract is stored in the second block of the blockchain, the method further comprising:

validating presence of a digital signature in the first block to authorize orchestrated execution of the secondary smart contract with the primary smart contract.

11. The method of claim 1 further comprising, prior to causing storage of the secondary smart contract in association with the second block of the blockchain:

validating presence of a digital signature in the first block of the blockchain associated with the primary smart contract.

12. The method of claim 1 , wherein the potential or actual effect is associated with an operation of a communication function of the wireless device or an output of the software program in response to an input received over the telecommunications network.

13. A non-transitory computer-readable storage medium storing instructions, which, when executed by at least one data processor of a wireless device subscribed to a telecommunications network, cause the wireless device to:

cause storage of a primary smart contract in association with a block of a blockchain,

wherein the primary smart contract is configured to execute when a predetermined condition is satisfied by a software program stored at the wireless device to produce an expected result;

detect an error in response to the primary smart contract being executed;

in response to the error being detected, select a secondary smart contract stored at a repository,

wherein the repository stores multiple secondary smart contracts configured to correct errors caused by execution of smart contracts, and

wherein the secondary smart contract is selected to correct the error caused by execution of the primary smart contract; and

cause orchestrated execution of the primary smart contract and the secondary smart contract when the predetermined condition is satisfied by the software program to prevent the error.

14. The computer-readable storage medium of claim 13 further causing the wireless device to:

retrieve the secondary smart contract from the repository; and

cause storage of the secondary smart contract in association with a subsequent block of the blockchain.

15. The computer-readable storage medium of claim 13 further causing the wireless device to:

link the primary smart contract located at the wireless device and the secondary smart contract stored at the repository such that the primary smart contract and the secondary smart contract are capable of orchestrated execution.

16. The computer-readable storage medium of claim 13 further causing the wireless device to:

host the primary smart contract on a memory of the wireless device; and

host the repository on the memory of the wireless device.

17. The computer-readable storage medium of claim 13 further causing the wireless device to:

host the primary smart contract on a memory of the wireless device; and

link, over a telecommunications network, to the repository on a memory of a server located remote from the wireless device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2022
From: PACZKOWSKI, LYLE WALTER
To: T-MOBILE USA, INC.
Reel/Frame 061854/0807 →
Continuity (1)
Related Publication 20240171404A1 · May 23, 2024
References Cited (72)
US 10594477B2 · Shao · 2020 [cited by examiner]
US 10616324B1 · Kaddoura · 2020 [cited by examiner]
US 10812255B2 · Li · 2020 [cited by applicant]
US 11018851B2 · Sarin · 2021 [cited by applicant]
US 11057221B2 · Peng · 2021 [cited by applicant]
US 11068887B2 · Xia et al. · 2021 [cited by applicant]
US 11113271B2 · Zhuo et al. · 2021 [cited by applicant]
US 11139979B2 · Van De Ruit et al. · 2021 [cited by applicant]
US 11171782B2 · Tang et al. · 2021 [cited by applicant]
US 11176257B2 · Braghin et al. · 2021 [cited by applicant]
US 11315120B2 · Levacher et al. · 2022 [cited by applicant]
US 11354656B2 · Xia et al. · 2022 [cited by applicant]
US 11356270B2 · Fang · 2022 [cited by applicant]
US 11611445B2 · Baykaner · 2023 [cited by examiner]
US 20170308431A1 · Otterstedt · 2017 [cited by examiner]
US 20190236559A1 · Padmanabhan · 2019 [cited by applicant]
US 20190303623A1 · Reddy et al. · 2019 [cited by applicant]
US 20200235947A1 · Baykaner · 2020 [cited by examiner]
US 20200285633A1 · Zhuo · 2020 [cited by examiner]
US 20210004216A1 · Chang · 2021 [cited by examiner]
US 20210149880A1 · Ivkushkin et al. · 2021 [cited by applicant]
US 20210374731A1 · Kim · 2021 [cited by applicant]
US 20220029810A1 · Tang et al. · 2022 [cited by applicant]
US 20220318399A1 · Rodler · 2022 [cited by examiner]
CA 111831740A · 2020 [cited by applicant]
CN 111028077A · 2020 [cited by applicant]
CN 111066047A · 2020 [cited by applicant]
CN 111417946A · 2020 [cited by applicant]
CN 107317730B · 2020 [cited by applicant]
CN 111738480A · 2020 [cited by applicant]
CN 111767555A · 2020 [cited by applicant]
CN 111861465A · 2020 [cited by applicant]
CN 112085600A · 2020 [cited by applicant]
CN 112602083A · 2021 [cited by applicant]
CN 110692228B · 2022 [cited by applicant]
DE 102016109209A1 · 2017 [cited by applicant]
DE 102017005623A1 · 2018 [cited by applicant]
DE 102017212904A1 · 2019 [cited by applicant]
DE 102017223522A1 · 2019 [cited by applicant]
DE 102018002466A1 · 2019 [cited by applicant]
DE 102020100787A1 · 2020 [cited by applicant]
DE 102019000985A1 · 2020 [cited by applicant]
DE 102019202381A1 · 2020 [cited by applicant]
DE 102019006333A1 · 2021 [cited by applicant]
DE 112018007724T5 · 2021 [cited by applicant]
DE 102020113057A1 · 2021 [cited by applicant]
DE 102020113557A1 · 2021 [cited by applicant]
DE 102021109517A1 · 2021 [cited by applicant]
EP 3396575B1 · 2019 [cited by applicant]
EP 3654197A1 · 2020 [cited by applicant]
EP 3688717A1 · 2020 [cited by applicant]
EP 3769243A1 · 2021 [cited by applicant]
EP 3499789B1 · 2021 [cited by applicant]
EP 3841496A1 · 2021 [cited by applicant]
EP 3860043A2 · 2021 [cited by applicant]
EP 3673432B1 · 2021 [cited by applicant]
EP 3905165A1 · 2021 [cited by applicant]
EP 3821578B1 · 2022 [cited by applicant]
EP 3896894B1 · 2022 [cited by applicant]
JP 6638024B2 · 2019 [cited by applicant]
JP 2020501402A · 2020 [cited by applicant]
JP 2020510906A · 2020 [cited by applicant]
JP 7012730B2 · 2022 [cited by applicant]
KR 102030171B1 · 2019 [cited by applicant]
KR 102139551B1 · 2020 [cited by applicant]
WO 2018111295A1 · 2018 [cited by applicant]
WO 2019058340A1 · 2019 [cited by applicant]
WO 2019191515A1 · 2019 [cited by applicant]
WO 2020095226A1 · 2020 [cited by applicant]
WO 2020145591A1 · 2020 [cited by applicant]
WO 2021032192A1 · 2021 [cited by applicant]
WO 2022200035A1 · 2022 [cited by applicant]