# US 10,320,566 B2 · Distributed logging of application events in a blockchain

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,320,566 B2
- Document ID: US10320566B2
- Status: Granted
- Kind: B2
- Application number: 15/478,862
- Filed: 2017-04-04
- Published: 2018-10-04
- Granted: 2019-06-11
- Earliest claimed: 2017-04-04
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Pradipta K. Banerjee; Pooja Kulkarni; Harshal S. Patil
- Web page: https://patentgrep.com/patent/US10320566B2

## CPC

- H04L 9/3239: {involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD}
- H04L 9/32: including means for verifying the identity or authority of a user of the system {or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials}
- H04L 9/3263: {involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements (network architectures or network communication protocols for supporting authentication of entities using certificates in a packet data network H04L63/0823)}
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A blockchain of transactions may be used for various purposes and may be later accessed by interested parties for ledger verification. One example method of operation may include one or more of monitoring one or more applications to identify application events, identifying one or more application events, determining a hash of a log message payload associated with the application events and logging the hash of the log message payload in a blockchain.

## Claims

### Claim 1

A method, comprising:
identifying, by a user device, one or more application events related to one or more applications;
determining a hash of a log message payload associated with the one or more application events;
logging the hash of the log message payload in a blockchain;
creating a smart contract comprising a leaderboard which maintains a list of separate systems of entities sorted by an amount of logging each separate systems or entities perform;
receiving a request for the one or more applications by the user device;
receiving credentials, via the user device, associated with the one or more applications;
issuing an authentication certificate to the one or more applications;
receiving the hash of the log message payload in a blockchain responsive to receiving the authentication certificate;
executing a read function;
accessing, by the user device, a block of the blockchain comprising a world state in which the one or more applications occupies a latest block of the blockchain; and
storing output of the block in a local memory.

### Claim 2 (depends on 1)

The method of claim 1, wherein monitoring the one or more applications further comprises monitoring one or more of a system log and an audit framework.

### Claim 3 (depends on 1)

The method of claim 1, wherein the application events comprise critical log events.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
uploading the payload to a remote storage location; and
registering the hash of the log message payload and a unique identifier of a device associated with the one or more application events in the blockchain.

### Claim 5 (depends on 1)

The method of claim 1, further comprising: determining a hash of leaderboard data associated with the leaderboard; and logging the hash of the leaderboard data in the blockchain.

### Claim 6 (depends on 5)

The method of claim 5, further comprising: receiving a request for shared ledger access from the one or more applications.

### Claim 7

An apparatus, comprising: a processor circuit configured to:
identify one or more application events related to one or more applications;
determine a hash of a log message payload associated with the one or more application events;
log the hash of the log message payload in a blockchain;
create a smart contract comprising a leaderboard which maintains a list of separate systems or entities sorted by an amount of logging each separate systems or entities perform;
receive a request for the one or more applications by a user device;
receive credentials, via the user device, associated with the one or more applications;
issue an authentication certificate to the one or more applications;
receive the hash of the log message payload in a blockchain responsive to receiving the authentication certificate;
execute a read function;
access, by the user device, a block of the blockchain comprising a world state in which the one or more applications occupies a latest block of the blockchain; and
store output of the block in a local memory.

### Claim 8 (depends on 7)

The apparatus of claim 7, wherein to monitor the one or more applications further comprises the processor being configured to monitor one or more of a system log and an audit framework.

### Claim 9 (depends on 7)

The apparatus of claim 7, wherein the application events comprise critical log events.

### Claim 10 (depends on 7)

The apparatus of claim 7, wherein the processor is further configured to
upload the payload to a remote storage location, and
register the hash of the log message payload and a unique identifier of a device associated with the one or more application events in the blockchain.

### Claim 11 (depends on 7)

The apparatus of claim 7, wherein the processor circuit is further configured to determine a hash of leaderboard data associated with the leaderboard, and log the hash of the leaderboard data in the blockchain.

### Claim 12 (depends on 11)

The apparatus of claim 11, further comprising: a receiver device configured to receive a request for shared ledger access from the one or more applications.

### Claim 13

A non-transitory computer readable storage medium configured to store instructions that when executed cause a processor to perform:
identifying one or more application events related to one or more applications;
determining a hash of a log message payload associated with the one or more application events;
logging the hash of the log message payload in a blockchain;
creating a smart contract comprising a leaderboard which maintains a list of separate systems or entities sorted by an amount of logging each separate systems or entities perform;
receiving a request for the one or more applications by a user device;
receiving credentials, via the user device, associated with the one or more applications;
issuing an authentication certificate to the one or more applications;
receiving the hash of the log message payload in a blockchain responsive to receiving the authentication certificate;
executing a read function;
accessing, by the user device, a block of the blockchain comprising a world state in which the one or more applications occupies a latest block of the blockchain; and
storing output of the block in a local memory.

### Claim 14 (depends on 13)

The non-transitory computer readable storage medium of claim 13, wherein monitoring the one or more applications further comprises monitoring one or more of a system log and an audit framework.

### Claim 15 (depends on 13)

The non-transitory computer readable storage medium of claim 13, wherein the application events comprise critical log events.

### Claim 16 (depends on 13)

The non-transitory computer readable storage medium of claim 13, wherein the processor is further configured to perform:
uploading the payload to a remote storage location; and
registering the hash of the log message payload and a unique identifier of a device associated with the one or more application events in the blockchain.

### Claim 17 (depends on 13)

The non-transitory computer readable storage medium of claim 13, wherein the processor is further configured to perform: determining a hash of leaderboard data associated with the leaderboard; and logging the hash of the leaderboard data in the blockchain.

### Claim 18 (depends on 17)

The non-transitory computer readable storage medium of claim 17, wherein the processor is further configured to perform: receiving a request for shared ledger access from the one or more applications.
