All Projects → nicoschtein → iota-mqtt-poc

nicoschtein / iota-mqtt-poc

Licence: other
IOTA Proof of Concept, store MQTT messages on the tangle.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to iota-mqtt-poc

Umbraco-RCE
Umbraco CMS 7.12.4 - (Authenticated) Remote Code Execution
Stars: ✭ 61 (+52.5%)
Mutual labels:  proof-of-concept, poc
flash-demo
IOTA Flash channels demo using webRTC for communication.
Stars: ✭ 21 (-47.5%)
Mutual labels:  proof-of-concept, iota
poc-github-actions
Various proofs of concept examples using Github Actions 🤖
Stars: ✭ 103 (+157.5%)
Mutual labels:  proof-of-concept, poc
financial
POC de uma aplicação de domínio financeiro.
Stars: ✭ 62 (+55%)
Mutual labels:  proof-of-concept, poc
Poc
Proofs-of-concept
Stars: ✭ 467 (+1067.5%)
Mutual labels:  proof-of-concept, poc
Gopoc
用cel-go重现了长亭xray的poc检测功能的轮子
Stars: ✭ 124 (+210%)
Mutual labels:  proof-of-concept, poc
Proof Of Concepts
A little collection of fun and creative proof of concepts to demonstrate the potential impact of a security vulnerability.
Stars: ✭ 148 (+270%)
Mutual labels:  proof-of-concept, poc
BetterDiscordPlugins
🔥 My collection of Discord plugins for BetterDiscord, the Discord enhancement project
Stars: ✭ 120 (+200%)
Mutual labels:  proof-of-concept
kubeadm-tf
PoC; terraform + kubeadm
Stars: ✭ 25 (-37.5%)
Mutual labels:  poc
meta-iota
OpenEmbedded layer for the IOTA Distributed Ledger
Stars: ✭ 41 (+2.5%)
Mutual labels:  iota
coldfusion-10-11-xss
Proof of Concept code for CVE-2015-0345 (APSB15-07)
Stars: ✭ 22 (-45%)
Mutual labels:  proof-of-concept
cansecwest2017
No description or website provided.
Stars: ✭ 63 (+57.5%)
Mutual labels:  poc
living-off-the-land
Fileless attack with persistence
Stars: ✭ 170 (+325%)
Mutual labels:  poc
PocList
Alibaba-Nacos-Unauthorized/ApacheDruid-RCE_CVE-2021-25646/MS-Exchange-SSRF-CVE-2021-26885/Oracle-WebLogic-CVE-2021-2109_RCE/RG-CNVD-2021-14536/RJ-SSL-VPN-UltraVires/Redis-Unauthorized-RCE/TDOA-V11.7-GetOnlineCookie/VMware-vCenter-GetAnyFile/yongyou-GRP-U8-XXE/Oracle-WebLogic-CVE-2020-14883/Oracle-WebLogic-CVE-2020-14882/Apache-Solr-GetAnyFile/F5…
Stars: ✭ 1,004 (+2410%)
Mutual labels:  poc
e2e-testing
Formal verification of Elastic-Agent and more using BDD
Stars: ✭ 22 (-45%)
Mutual labels:  poc
iota-python
A Pure-Python implementation of IOTA node
Stars: ✭ 30 (-25%)
Mutual labels:  iota
HomeUniteUs
We're working with community non-profits who have a Host Home or empty bedrooms initiative to develop a workflow management tool to make the process scalable (across all providers), reduce institutional bias, and effectively capture data.
Stars: ✭ 22 (-45%)
Mutual labels:  poc
Jawbreaker
A Python obfuscator using HTTP Requests and Hastebin.
Stars: ✭ 50 (+25%)
Mutual labels:  poc
exprolog
ProxyLogon Full Exploit Chain PoC (CVE-2021–26855, CVE-2021–26857, CVE-2021–26858, CVE-2021–27065)
Stars: ✭ 131 (+227.5%)
Mutual labels:  poc
Chatangle
A free, decentralized, global chatroom, powered by the IOTA tangle
Stars: ✭ 16 (-60%)
Mutual labels:  iota

iota-mqtt-poc

IOTA Proof of Concept, service that stores MQTT messages on the tangle.

Background

IOTA Javascript Library Hello World Tutorial

Requirements

Make sure you have Node.js and the Heroku Toolbelt installed.

Node Packages

Using iota.lib.js to connect to IOTA tangle. Open Source

Using MQTT.js as MQTT client. Open Source

Using Async to handle queues. Open Source

Using node-cleanup to properly close connections on exit. Open Source

Using url to parse full URL. Open Source

Cloning & Running locally

git clone [email protected]:nicoschtein/iota-mqtt-poc.git # or clone your own fork
cd iota-mqtt-poc
npm install
heroku local

Environmental Variables

MQTT

  • MQTT_FULL_URL
    • MQTT Broker connection url with optional user/password parameters.
    • Example: 'mqtt://[user:pass@]localhost:1883'
  • MQTT_CLIENT_PREFIX
    • Prefix to use on the MQTT client ID, followed by an 8-char string (pseudo)randomly generated using Math.random() .
    • Example: 'iota_poc_' resulting in iota_poc_3bc3eb87
  • MQTT_TOPIC
    • MQTT Topic to subscribe to, with support for # and +.
    • Example: '/devices/+'

IOTA

  • IOTA_HOST
    • Host of the IOTA Node to be used. IP and host names supported.
    • Example: 'http://127.0.0.1' or 'http://localhost'
  • IOTA_PORT
    • Port of the IOTA Node to be used.
    • Example: 14265
  • IOTA_ADDRESS
    • IOTA Address to send the transactions to.
    • Example: '999999999999999999999999999999999999999999999999999999999999999999999999999999999'
  • IOTA_SEED
    • IOTA Seed for sending the transactions from.
    • Example: '999999999999999999999999999999999999999999999999999999999999999999999999999999999'
  • IOTA_TAG
    • IOTA Seed for bundling transactions. Maximum of 13 ascii chars.
    • Example: ’iota-mqtt-poc’

Setting Environmental Vars

Locally using .env file.

Create a new file named .env and place it on the root directory, next to package.json.

MQTT_FULL_URL = 'mqtt://[user:pass@]localhost:1883'
MQTT_CLIENT_PREFIX = 'iota_poc_'
MQTT_TOPIC = '/devices/+'
IOTA_HOST = 'http://127.0.0.1'
IOTA_PORT = 14265
IOTA_ADDRESS = '999999999999999999999999999999999999999999999999999999999999999999999999999999999'
IOTA_SEED = '999999999999999999999999999999999999999999999999999999999999999999999999999999999'
IOTA_TAG = 'iota-mqtt-poc'

Remotely using Heroku Toolbet

Requires an existing Heroku App, see “Deploying to Heroku” for more info

For each var use command config:set to set the values, if the value is already set it will be replaced.

...
heroku config:set IOTA_HOST='http://127.0.0.1'
heroku config:set IOTA_PORT=14265
...

To view current state of your vars:

heroku config

Deploying to Heroku (Optional)

heroku create
git push heroku master

Open remote App

heroku open
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].