{"_id":"@antidonasi/libsignal-node","name":"@antidonasi/libsignal-node","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@antidonasi/libsignal-node","version":"1.0.0","description":"Open Whisper Systems' libsignal for Node.js","repository":{"type":"git","url":"git+https://github.com/WhiskeySockets/libsignal-node.git"},"main":"index.js","types":"index.d.ts","publishConfig":{"access":"public"},"scripts":{"version:patch":"npm version patch -m \"chore: bump version to %s\"","version:minor":"npm version minor -m \"chore: bump version to %s\"","version:major":"npm version major -m \"chore: bump version to %s\"","prepublishOnly":"git diff --cached --exit-code && git diff --exit-code"},"keywords":["signal","whispersystems","crypto"],"license":"GPL-3.0","dependencies":{"curve25519-js":"^0.0.4","protobufjs":"6.8.8"},"devDependencies":{"eslint":"6.0.1"},"gitHead":"7c1edc56e56d26282c5de73fde5aebd8cc07cd0e","_id":"@antidonasi/libsignal-node@1.0.0","bugs":{"url":"https://github.com/WhiskeySockets/libsignal-node/issues"},"homepage":"https://github.com/WhiskeySockets/libsignal-node#readme","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-PMeF4OYu2Ax6s97Z7/XSHe7/umTFVug33CYDIaDEzgh1SjnjK5e2+zEA37Kh2G/3r5aBftb16O3REMd43lhS/w==","shasum":"23fc11f6369af1e09900b7144674fd0f9bbb2a9b","tarball":"https://registry.npmjs.org/@antidonasi/libsignal-node/-/libsignal-node-1.0.0.tgz","fileCount":22,"unpackedSize":130568,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDICt+IppUb50wKzk9XuYKE1qgBKywibs9YlD5PZs4LSAiEAgsb3hwKp1maQsx4dDyaaGM6p2/wawtSmGISerJcIdHA="}]},"_npmUser":{"name":"antidonasi","email":"support@antidonasi.web.id"},"directories":{},"maintainers":[{"name":"antidonasi","email":"support@antidonasi.web.id"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/libsignal-node_1.0.0_1765714813611_0.0670089928961366"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-14T12:20:13.516Z","1.0.0":"2025-12-14T12:20:13.762Z","modified":"2025-12-14T12:20:14.048Z"},"maintainers":[{"name":"antidonasi","email":"support@antidonasi.web.id"}],"description":"Open Whisper Systems' libsignal for Node.js","homepage":"https://github.com/WhiskeySockets/libsignal-node#readme","keywords":["signal","whispersystems","crypto"],"repository":{"type":"git","url":"git+https://github.com/WhiskeySockets/libsignal-node.git"},"bugs":{"url":"https://github.com/WhiskeySockets/libsignal-node/issues"},"license":"GPL-3.0","readme":"libsignal-node\n========\nSignal protocol implementation for Node.js based on\n[libsignal-protocol-javascript](https://github.com/WhisperSystems/libsignal-protocol-javascript).\n\n[![npm](https://img.shields.io/npm/v/libsignal.svg)](https://www.npmjs.com/package/libsignal)\n[![npm](https://img.shields.io/npm/l/libsignal.svg)](https://github.com/ForstaLabs/libsignal-node)\n\n\nOverview\n--------\nA ratcheting forward secrecy protocol that works in synchronous and\nasynchronous messaging environments.\n\n\nPreKeys\n--------\nThis protocol uses a concept called 'PreKeys'. A PreKey is an ECPublicKey and\nan associated unique ID which are stored together by a server. PreKeys can also\nbe signed.\n\nAt install time, clients generate a single signed PreKey, as well as a large\nlist of unsigned PreKeys, and transmit all of them to the server.\n\n\nSessions\n--------\nSignal Protocol is session-oriented. Clients establish a \"session,\" which is\nthen used for all subsequent encrypt/decrypt operations. There is no need to\never tear down a session once one has been established.\n\nSessions are established in one of two ways:\n\n1. PreKeyBundles. A client that wishes to send a message to a recipient can\n   establish a session by retrieving a PreKeyBundle for that recipient from the\n   server.\n2. PreKeySignalMessages. A client can receive a PreKeySignalMessage from a\n   recipient and use it to establish a session.\n\n\nState\n--------\nAn established session encapsulates a lot of state between two clients. That\nstate is maintained in durable records which need to be kept for the life of\nthe session.\n\nState is kept in the following places:\n\n* Identity State. Clients will need to maintain the state of their own identity\n  key pair, as well as identity keys received from other clients.\n* PreKey State. Clients will need to maintain the state of their generated\n  PreKeys.\n* Signed PreKey States. Clients will need to maintain the state of their signed\n  PreKeys.\n* Session State. Clients will need to maintain the state of the sessions they\n  have established.\n\n\nLicense\n--------\nLicensed under the GPLv3: http://www.gnu.org/licenses/gpl-3.0.html\n\n* Copyright 2015-2016 Open Whisper Systems\n* Copyright 2017-2018 Forsta Inc\n","readmeFilename":"README.md","_rev":"1-7cc469795d81d09b3f4d64de1e96bd65"}