Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
This package contains the Python Software Development Kit (SDK) of spacetower™.
spacetower™ is Exotrail's Flight Dynamics System (FDS). It covers all the needs of the flight dynamics engineer, including but not limited to :
The Python SDK brings these features to you through a set of Python modules directly callable in your scripts. These modules interacts with the public Application Programming Interface (API) of spacetower™ available online.
In order to use the Python SDK of spacetower™, you need to have Python 3.11 or higher installed, with a package manager like pip or poetry.
The procedure described hereafter also requires the use of a Command Line Interface (CLI).
API credentials are required to call the spacetower™ API. If you do not have credentials yet, please register at https://portal.exotrail.space.
It is recommended to use a virtual environment to install the SDK. This will prevent conflicts with other Python packages that may be installed on the system.
To create a virtual environment:
$ python -m venv venv
Based on your operating system, you will have to activate the virtual environment differently. For Windows, you can use the following command :
$ .\.venv\Scripts\activate
or if you want to use the Powershell script:
$ .\.venv\Scripts\Activate.ps1
For Unix-based systems, you can use :
$ source .venv/bin/activate
To install the SDK :
$ pip install spacetower-fds-sdk
This will install the SDK and its dependencies into the virtual environment.
To set up the API credentials, you can use the following command:
from fds.config import set_client_id, set_client_secret
set_client_id("your_client_id")
set_client_secret("your_client_secret")
In its simplest use, given an initial state and a target time, the SDK can call the API points of spacetower™ exposed online to request the propagation of the state to the target time.
Additional parameters can be passed to the OrbitExtrapolation
class to perform more complex operations, such as:
The SDK of spacetower™ can perform orbit determination by calling the API points to request the estimation of the state of the satellite, given an initial state, a set of measurements and configuration parameters. An Unscented Kalman Filter (UKF) is used to perform the estimation.
The class OrbitDetermination
provides a simple interface to the API.
Additionally, users can add model parameters to the estimation, i.e. the drag coefficient, the reflectivity coefficient and the thrust scale factors. Providing a maneuver roadmap will also allow the SDK to characterise the maneuvers that have been performed (in terms of mean variations of the state and thrust magnitude and direction).
The maneuver generation functionality allows users to generate a maneuver roadmap that can be used in the orbit extrapolation and orbit determination functionalities. Several parameters can be passed to the ManeuverGeneration
class to generate the roadmap, definining the desired strategy and constraints (through the ManeuverStrategy
object) and targets (e.g. change of semi-major axis, inclination, etc.).
The SDK also provides additional functionalities in support of the main operations, such as:
An online documentation of the Python SDK of spacetower™ can be accessed at : https://docs.spacetower.exotrail.space/python-sdk/index.html
It includes docstrings description of the various modules of the SDK, to which you can refer to when using spacetower™ in your projects.
Furthermore, a set of demonstration notebooks using Jupyter are available here: https://github.com/exotrail/spacetower-notebooks
These notebooks aim at being resources for new users to understand how the SDK is built, as well as showcasing the performances of spacetower™. They cover the most frequent use cases of an FDS.
An online version of the notebooks can be found on our customer portal: https://portal.exotrail.space
As mentioned in the Getting started section, this demonstration package is written using Python 3.11, and relies on pip for installing dependencies. Said dependencies can be found in the pyproject.toml file of this package.
To get in touch with us, please send a mail to the Flight Dynamics Support service at fds-support@exotrailspace.onmicrosoft.com
This package is distributed under the MIT License. You are free to use, modify, and distribute the software as you see fit, provided that the original copyright notice and this permission notice are included in all copies or substantial portions of the software. The software is provided "as is," without warranty of any kind, express or implied. For more details, please refer to the LICENSE file included in this repository.
[1.1.0] 2024-06-21
ManeuverGeneration
class[1.0.0] 2024-05-31
FAQs
SDK for spacetower Flight Dynamics System API
We found that spacetower-fds-sdk demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.