Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
@monstermakes/larry-automata
Advanced tools
This project gives the developer the ability to describe workflows or state machines in a simple and repeatable fashion. We are stealing concepts from the Nondeterministic finite automaton (NFA) state machine found in Automata Theory. Dont worry, the concepts are mostly around the terminology and the high level concept that we can move through the state machin in a non-determinstic type of way.
A Finite Automata consists of the following:
In a Larry Automata we deviate from these by combining States and Transition Functions and adding execution history to the Final States. Larry Automata encapsulates the initial input, a centralized cache, the states to be executed, the input for each state, and the history of all the previously executed states. The below sections will provide and overview of each of these concepts.
An Execution refers to the launch of one or more Automatons.
A NFA includes the "final states", which describes how things ended up after execution, in our case we are just as interested in what happened as we are in what was the final result. Thus an Execution will keep track of the changes in the execution steps (Execution History) and the final results of the execution, this will be refered to as the "Execution Results".
A step combines the state, input symbols, and tranisiton function concepts in an NFA into one construct. A step declares its inputs (required and optional), defines the business logic to execute, produces outputs and has the ability to alter the flow of the execution.
An Automaton declaritively defines all of the steps and their order of execution, prior to a run. The key take away here is the during an execution each step can alter the available steps and the subsequent order of execution. Therefore the Automaton is simply declaring the initial state machine but as things execute the Execution History is the most accurate definition of what the actual state machine end up as.
During an Execution each state will want to access the current results (think of this as the output/results of previously executed states). The cache provides a mechanism for each of the states to share data and results from one stage of the execution to the next.
When a step is executed everything that happened (changes to the steps, cache, inputs etc..) during that stage of the execution will be recorded in order in the Execution History as a "stage". These stages can be reviewed in subsequent steps or after execution concludes.
TODO
TODO
FAQs
A Finite Automata approach to state machines.
The npm package @monstermakes/larry-automata receives a total of 0 weekly downloads. As such, @monstermakes/larry-automata popularity was classified as not popular.
We found that @monstermakes/larry-automata demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers 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
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.