Welcome to Hackster!
Hackster is a community dedicated to learning hardware, from beginner to pro. Join us, it's free!
Jade Meskill
Published

Encrypt Your Octoblu Payload

Full instructions provided805
Encrypt Your Octoblu Payload

Story

Read more

Code

code.txt

Plain text
# generate keypair for sending device
openssl genrsa -out send_device.key 2048
openssl rsa -in send_device.key -pubout > send_device.pub

# generate keypair for receiving device
openssl genrsa -out recv_device.key 2048
openssl rsa -in recv_device.key -pubout > recv_device.pub

# register the sending device
curl -X POST https://meshblu.octoblu.com/devices -H 'Content-Type: application/json' -d "{\"publicKey\": \"`cat send_device.pub | base64`\"}" > send_device.json

# register the receiving device
curl -X POST https://meshblu.octoblu.com/devices -H 'Content-Type: application/json' -d "{\"publicKey\": \"`cat recv_device.pub | base64`\"}" > recv_device.json

# get uuids and tokens
SEND_UUID=`cat send_device.json | jsawk 'return this.uuid'`
SEND_TOKEN=`cat send_device.json | jsawk 'return this.token'`
RECV_UUID=`cat recv_device.json | jsawk 'return this.uuid'`

# encrypt the message
ENCRYPTED_MESSAGE=`echo 'SUPER SECRET' | openssl rsautl -encrypt -pubin -inkey recv_device.pub | base64`

# send the encrypted payload
curl -X POST https://meshblu.octoblu.com/messages -H 'Content-Type: application/json' -H "meshblu_auth_uuid: $SEND_UUID" -H "meshblu_auth_token: $SEND_TOKEN" -d "{\"devices\":\"$RECV_UUID\", \"encryptedPayload\":\"$ENCRYPTED_MESSAGE\"}"

Credits

Jade Meskill
2 projects • 2 followers
Contact

Comments

Please log in or sign up to comment.