Session Desktop - Onion routing based messenger
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
Audric Ackermann 5f0738c4b8
make profile image which where 48pixels big 36 noew, as no more border
5 years ago
.github Merge branch 'development' into fix-friend-request-logic 6 years ago
.tx
.vscode Merge branch 'clearnet' into multi-device 6 years ago
_locales fix lint 5 years ago
app Updated all icon references 5 years ago
build Signal branding 5 years ago
components Partial Merge commit 'bf904ddd129ceba8fa363ccf6d10ecd256c65f63' into signal-1.23 6 years ago
config Remove unused destinationRegistrationId; lint 5 years ago
fixtures add back file which should have not been deleted 5 years ago
fonts fix font of description to sfprodisplay 5 years ago
images Updated all icon references 5 years ago
js Merge pull request #773 from Bilb/fix-open-conversation-accepted-friend-request 5 years ago
libloki Updated all icon references 5 years ago
libtextsecure Remove mixpanel 5 years ago
mnemonic_languages languages json 6 years ago
mockup_servers
protos Support sealed sender for friend requests 5 years ago
stylesheets fix panel-text-divider font-size and family 5 years ago
test Remove mixpanel 5 years ago
ts make profile image which where 48pixels big 36 noew, as no more border 5 years ago
.aptly.conf
.editorconfig
.eslintignore Merge signal-1.24.0 6 years ago
.eslintrc.js Select multiple messages and bulk deletion 5 years ago
.gitattributes Stop git from defaulting to changing line endings 6 years ago
.gitignore Ignore ctags file 6 years ago
.gitlab-ci.yml Fix CI 6 years ago
.nvmrc
.prettierignore Merge signal-1.24.0 6 years ago
.prettierrc.js
.travis.yml Remove travis windows. 6 years ago
.yarnclean
CONTRIBUTING.md Updated all icon references 5 years ago
Gruntfile.js yarn grunt/ watch for sub-sub folders too 5 years ago
LICENSE
LOKI-NOTES.md
README.md Updated all icon references 5 years ago
about.html Show commit hash in About window for beta builds 6 years ago
about_preload.js Show commit hash in About window for beta builds 6 years ago
appveyor.yml Skip `lint-deps` on appveyor, which triggers a failed build 6 years ago
aptly.sh Remove unused aptly target 6 years ago
background.html Remove mixpanel 5 years ago
bower.json Replaced more references to signal with loki and updated CONTRIBUTING.md 6 years ago
debug_log.html Replaced more references to signal with loki and updated CONTRIBUTING.md 6 years ago
debug_log_preload.js
dev-app-update.yml.sample
find_broken_perms.sh
fix_broken_perms.sh Replaced more references to signal with loki and updated CONTRIBUTING.md 6 years ago
index.html Password lock screen and delete data screen 5 years ago
main.js use local shortcut instead of global shortcut 5 years ago
metrics.html add TTL variation in pow metrics 6 years ago
metrics_app.js Linted files 6 years ago
package.json Merge pull request #772 from Bilb/fix-global-shortcut-reload-multiple-window 5 years ago
password.html Password lock screen and delete data screen 5 years ago
password_preload.js Password lock screen and delete data screen 5 years ago
permissions_popup.html
permissions_popup_preload.js
preload.js Remove mixpanel 5 years ago
prepare_beta_build.js Updated all icon references 5 years ago
prepare_import_build.js
settings.html Update link preview settings to be cleaner 6 years ago
settings_preload.js Add a toggle option for typing indicators; use short ttl for them 6 years ago
styleguide.config.js Move left pane entirely to React 6 years ago
travis.sh
tsconfig.json fix build 5 years ago
tslint.json update tslint.json to allow use of dangerouslySetInnerHTML in SessionHTMLRenderer 5 years ago
yarn.lock Merge pull request #772 from Bilb/fix-global-shortcut-reload-multiple-window 5 years ago

README.md

Session

Build Status

Session allows for truly decentralized, end to end, and private encrypted chats. Session is built to handle both online and fully Asynchronous offline messages. Loki messenger implements the Signal protocol for message encryption. Our Client interface is a fork of Signal Messenger. All communication that passes through Loki messenger is routed through Lokinet.

Summary

Loki messenger integrates directly with Loki Service Nodes, which are a set of distributed, decentralized and Sybil resistant nodes. Service Nodes act as both federated servers which store messages offline, and a set of nodes which allow for onion routing functionality obfuscating users IP Addresses. For a full understanding of how Loki messenger works, read the Loki whitepaper.

Online Messages

If Alice and Bob are both online they can simply resolve each others public keys, to introduction sets, this functionality is handled by interfacing with Lokinet. With the appropriate introduction sets Alice and Bob can create a path and using onion routing pass messages through the Loki network without giving away personally identifiable information like their IP address.

Offline messages

Offline messaging uses Swarms, given any users public key the user can resolve a public key to a specific grouping of Service Nodes (AKA Swarm) each user in Session belongs to a Swarm. When routing a message offline the user selects a Service node in the destination users Swarm, when the user comes online they query any node in their Swarm, if the Swarm is holding any messages for the user they disseminate those messages to the user.

Swarm Messaging

Spam protections for Session are based on a Proof of Work which is attached to any message that exceeds a default size or Time To Live, this process is discussed further in the Loki whitepaper.

Want to Contribute? Found a Bug or Have a feature request?

Please search for any existing issues that describe your bugs in order to avoid duplicate submissions. Submissions can be made by making a pull request to our development branch, if you don't know where to start contributing , try reading the Github issues page for ideas.

Build instruction

Build instructions can be found in CONTRIBUTING.md.

License

Copyright 2018- Current, Loki Foundation Copyright 2014-2018, Open Whisper Systems Licensed under the GPLv3: http://www.gnu.org/licenses/gpl-3.0.html