Skip to content

Instantly share code, notes, and snippets.

View jkyberneees's full-sized avatar
😎
up and running

Rolando Santamaria Maso jkyberneees

😎
up and running
View GitHub Profile
// Get a distributed lock called "my-distributed-lock"
ILock lock = hz.getILock("my-distributed-lock");
// Now create a lock and execute some guarded code.
lock.lock();
try {
//do something here
} catch (...) {
lock.unlock();
}
const { ServiceBroker } = require("./../index");
let broker = new ServiceBroker({
logger: true,
transporter: {
type: "hazelcast",
options: {
init(cfg) {
cfg.properties["hazelcast.logging"] = "off";
}
const gateway = require('fastify')({})
gateway.register(require('fastify-reply-from'))
gateway.register(require('k-fastify-gateway'), {
middlewares: [
require('cors')(), // https://www.npmjs.com/package/cors
require('helmet')() // https://helmetjs.github.io/
],
const nacl = require('tweetnacl')
nacl.util = require('tweetnacl-util')
// generating Bob key pair
const bob = nacl.box.keyPair()
// generating Alice key pair
const alice = nacl.box.keyPair()
// generating one time nonce for encryption
const nonce = nacl.randomBytes(24)
const nacl = require('tweetnacl')
nacl.util = require('tweetnacl-util')
// generating key pairs
const bob = nacl.box.keyPair()
const alice = nacl.box.keyPair()
// generating one time nonce for encryption
const nonce = nacl.randomBytes(24)
// message for Alice
@jkyberneees
jkyberneees / decrypt-tweetnacl.js
Last active September 3, 2018 22:30
decrypt-tweetnacl.js
const nacl = require('tweetnacl')
nacl.util = require('tweetnacl-util')
// reading Alice key pair from secret key
const alice = nacl.box.keyPair.fromSecretKey(/* Uint8Array with 32-byte secret key */)
// reading Bob public key
const bob = {publicKey: /* Uint8Array with 32-byte secret key */}
// const message = ... the message object from Bob
// Alice decrypts message from Bob
// Bob precomputes shared key with Alice (one time)
const sharedKey = nacl.box.before(alice.publicKey, bob.secretKey)
// generating one time nonce for encryption
const nonce = nacl.randomBytes(24)
// Bob encrypt message for Alice
const box = nacl.box.after(
nacl.util.decodeUTF8('Hello Alice'),
nonce,
// Alice precomputes shared key with Bob (one time)
const sharedKey = nacl.box.before(bob.publicKey, alice.secretKey)
const message // <-- message object from Bob side
const payload = nacl.box.open.after(
message.box,
message.nonce,
sharedKey // <-- using shared key
)
const http = require('http')
const service = new http.Server()
service.on('request', (req, res) => {
if (req.method === 'GET' && req.url === '/hi') {
res.writeHead(200, { 'Content-Type': 'text/plain' })
res.end('Hello World!')
} else {
res.statusCode = 404
res.end()
const service = require('express')({})
service.get('/hi', (req, res) => {
res.send('Hello World!')
})
service.listen(3000)