The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

Package {MarineChain}


Type: Package
Title: Blockchain-Enabled Maritime Transportation System Simulator
Version: 1.1.0
Maintainer: Isaac Osei <ikemillar65@gmail.com>
Description: Simulates Blockchain-Enabled Maritime Transportation Systems (BMTS) by integrating asynchronous, great-circle vessel kinematics with decentralised edge-computing consensus layers. The package provides a fully self-contained cyber-range running completely offline, permitting the risk-free injection of spatial and telemetry threat vectors (e.g., geofence breaches, coordinate modification, and node impersonation). It includes an interactive workspace engine built using 'shinydashboard' and 'leaflet' map layers for monitoring vessel states and ledger updates. Implemented consensus structures are modeled on a lightweight Proof-of-Authentication framework optimized for resource-constrained distributed nodes.
License: MIT + file LICENSE
Encoding: UTF-8
Imports: shiny, shinydashboard, digest, leaflet, plotly
Suggests: knitr, rmarkdown, testthat (≥ 3.0.0)
VignetteBuilder: knitr
RoxygenNote: 7.3.3
Config/testthat/edition: 3
URL: https://github.com/ikemillar/MarineChain
BugReports: https://github.com/ikemillar/MarineChain/issues
NeedsCompilation: no
Packaged: 2026-07-06 17:47:14 UTC; isaacosei
Author: Isaac Osei [aut, cre], Yamini Alakunta [aut]
Repository: CRAN
Date/Publication: 2026-07-15 18:00:08 UTC

The Application Server Logic

Description

The Application Server Logic

Usage

app_server(input, output, session)

Arguments

input

The Shiny input binding element list array mapping object.

output

The Shiny output rendering layout UI element structure list.

session

The active user environment session context container runtime.

Value

No return value, called for application runtime side effects.


The Application User Interface

Description

The Application User Interface

Usage

app_ui(request)

Arguments

request

The Shiny request object parameter environmental state.

Value

A Shiny UI object representing the dashboard structural layout.


Calculate Geodetic Distance (Haversine Formula)

Description

Calculate Geodetic Distance (Haversine Formula)

Usage

calc_distance(lat1, lng1, lat2, lng2)

Arguments

lat1, lng1

Latitude and Longitude of Node 1

lat2, lng2

Latitude and Longitude of Node 2

Value

Distance in kilometers


Inject Malicious Attacks into Maritime Telemetry Streams

Description

Inject Malicious Attacks into Maritime Telemetry Streams

Usage

inject_attack(clean_packet, attack_type)

Arguments

clean_packet

A list containing data, signature, and metadata from a vessel

attack_type

Character. One of "None", "Replay", "Modification", "Impersonation"

Value

A modified packet structure representing an intercepted/compromised transmission


Run the MarineChain Simulation Application

Description

Launches the interactive, self-contained Shiny dashboard sandbox.

Usage

run_app(...)

Arguments

...

Optional arguments passed directly to the shiny::shinyApp execution loop.

Value

No return value, called to launch the interactive web application interface side effects.

Examples

# Only run execution loops in interactive R sessions
if (interactive()) {
  run_app()
}

Simulate Cryptographic Processing Overhead

Description

Simulate Cryptographic Processing Overhead

Usage

simulate_crypto_ops(data_size_kb, operation)

Arguments

data_size_kb

Numeric. Size of the sensor telemetry data in Kilobytes.

operation

Character. The step to simulate ("encrypt", "sign", "verify", "decrypt").

Value

A list containing processing time (ms) and output data size (kb).


Simulate Multi-Hop Maritime Network Routing

Description

Simulate Multi-Hop Maritime Network Routing

Usage

simulate_network_routing(vessel_coord, cs_coord, haps_coord, payload_size_kb)

Arguments

vessel_coord

Vector of c(lat, lng) for the vessel

cs_coord

Vector of c(lat, lng) for the Control Station

haps_coord

Vector of c(lat, lng) for the nearest HAPS platform

payload_size_kb

Numeric size of the telemetry packet

Value

A list detailing routing path, hop count, and transmission latency


Simulate PoAH Blockchain Block Generation

Description

Simulate PoAH Blockchain Block Generation

Usage

simulate_poah_block(dynamic_ledger, incoming_txs)

Arguments

dynamic_ledger

A list representing the current blockchain ledger

incoming_txs

A list of verified vessel data payloads to combine into a block

Value

An updated ledger list containing the new block

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.