Split the OpenGroupAPIV2 into separate files Started working on the new auth and blinded-id approaches (new auth working with un-blinded id suggesting blinded-id code is incorrect) Updated the SOGS request/response types to use Codable Updated the SOGS Request type to use enums instead of strings for keys (to reduce likelihood of typos breaking things) Updated SessionMessagingKit to use Codable and JSONEncoder/JSONDecoder instead of the legacy JSONSerialization Cleaned up some naming conventions in the SessionMessagingKit (calling a URLRequest body 'parameters' is very confusing...) Removed the custom TSRequest class (just using standard URLRequest everywhere instead) Added a number of extension functions to enable some more functional-coding styles Added extensions to Sodium methods to allow scalar multiplication and the ability to hash providing a salt and a personalisation value (both needed for new SOGS auth) Fixed an issue where the legacy auth for SOGS could crash due to threading issues (multiple threads accessing the same variable) Fixed an issue where if you were in two rooms in a single SOGS and deleted one of them, the other room would stop getting updates as the server public key was getting removed |
3 years ago | |
---|---|---|
.github | 4 years ago | |
Scripts | 4 years ago | |
Session | 3 years ago | |
Session.xcodeproj | 3 years ago | |
Session.xcworkspace | 4 years ago | |
SessionMessagingKit | 3 years ago | |
SessionNotificationServiceExtension | 3 years ago | |
SessionShareExtension | 3 years ago | |
SessionSnodeKit | 3 years ago | |
SessionUIKit | 3 years ago | |
SessionUtilitiesKit | 3 years ago | |
SettingsBundle/licenses | 5 years ago | |
SignalUtilitiesKit | 3 years ago | |
.clang-format | 9 years ago | |
.gitattributes | 10 years ago | |
.gitignore | 4 years ago | |
BUILDING.md | 4 years ago | |
CODE_OF_CONDUCT.md | 4 years ago | |
LICENSE | 8 years ago | |
Podfile | 3 years ago | |
Podfile.lock | 3 years ago | |
README.md | 4 years ago |
README.md
Session iOS
Download Session on the App Store
Summary
Session integrates directly with Oxen Service Nodes, which are a set of distributed, decentralized and Sybil resistant nodes. Service Nodes act as servers which store messages, and a set of nodes which allow for onion routing functionality obfuscating users' IP addresses. For a full understanding of how Session works, read the Session 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 dev branch. If you don't know where to start contributing, try reading the Github issues page for ideas.
Build instructions
Build instructions can be found in BUILDING.md.
Translations
Want to help us translate Session into your language? You can do so at https://crowdin.com/project/session-ios!
License
Copyright 2011 Whisper Systems
Copyright 2013-2017 Open Whisper Systems
Copyright 2019-2021 The Oxen Project
Licensed under the GPLv3: http://www.gnu.org/licenses/gpl-3.0.html