GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - ChatSecure/ChatSecure-iOS: ChatSecure is a free and open source encrypted chat client for iOS that supports OTR and OMEMO encryption over XMPP.

BranchesTags
Open more actions menu

Latest commit

 

History

3,426 Commits
3,426 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
ChatSecure.xcodeproj
ChatSecure.xcodeproj
 
 
ChatSecure.xcworkspace
ChatSecure.xcworkspace
 
 
ChatSecure
ChatSecure
 
 
ChatSecureCore
ChatSecureCore
 
 
ChatSecureTests
ChatSecureTests
 
 
ChatSecureUITests
ChatSecureUITests
 
 
OTRAssets
OTRAssets
 
 
OTRResources
OTRResources
 
 
Podspecs
Podspecs
 
 
Submodules
Submodules
 
 
fastlane
fastlane
 
 
media
media
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.gitmodules
.gitmodules
 
 
.travis.yml
.travis.yml
 
 
CHANGES.md
CHANGES.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
COPYING
COPYING
 
 
ChatSecureCore.podspec
ChatSecureCore.podspec
 
 
Gemfile
Gemfile
 
 
Gemfile.lock
Gemfile.lock
 
 
LICENSE
LICENSE
 
 
OTRAssets.podspec
OTRAssets.podspec
 
 
Podfile
Podfile
 
 
Podfile.lock
Podfile.lock
 
 
README.md
README.md
 
 
license_plist.yml
license_plist.yml
 
 

Repository files navigation

ChatSecure

Build Status

ChatSecure is a free and open source XMPP messaging client for iOS that integrates OTR and OMEMO encrypted messaging support, and has optional integrated support for connectivity via the Tor network.

download chatsecure on the app store

Cost

Redistributing ChatSecure Code on the App Store

Even though this project is open source, this does not mean you can reuse this code when distributing closed source commercial products. Please contact us to discuss licensing options before you start building your product.

If you are an open source project, please contact us to arrange for an App Store redistribution exception. For more information about why this is required, please read this blog post from Open Whisper Systems.

Cost for End Users

Downloading the ChatSecure app is 100% free because it is important that all people around the world have unrestricted access to privacy tools. However, developing and supporting this project is hard work and costs real money. Please help support the development of this project!

  • GitHub Sponsors
  • PayPal

Localization

If you would like to contribute/improve a translation:

  1. Visit our Transifex project page and make an account if you don't have one already.
  2. Go to the resources subsites AppStore.strings & Localizable.strings to add a new language or improve an existing translation.
  3. Open an issue on Github notifying us of your translation.

Compatibility

There's a more full list of OTR clients on Wikipedia. A smaller list of clients support the mobile-friendly OMEMO Encryption.

Desktop

  • dino (Linux, macOS, Windows) Supports OMEMO

Mobile

  • Conversations (Android) Supports OMEMO

Build Instructions

You'll need CocoaPods installed for most of our dependencies.

$ gem install cocoapods

Download the source code and don't forget to pull down all of the submodules as well.

$ git clone https://github.com/ChatSecure/ChatSecure-iOS.git
$ cd ChatSecure-iOS/
$ git submodule update --init --recursive

Now you'll need to build the dependencies.

$ bash ./Submodules/CPAProxy/scripts/build-all.sh
$ bash ./Submodules/OTRKit/scripts/build-all.sh
$ pod repo update
$ pod install

Next you'll need to create your own version of environment-specific data. Make a copy of Secrets-template.plist as Secrets.plist:

$ cp OTRResources/Secrets-template.plist OTRResources/Secrets.plist

You'll need to manually change the Team ID under Project -> Targets -> ChatSecure -> Signing. The old .xcconfig method doesn't seem to work well anymore.

Open ChatSecure.xcworkspace in Xcode and build.

Note: Don't open the .xcodeproj because we use Cocoapods now!

If you're still having trouble compiling check out the Travis-CI build status and .travis.yml file.

Contributing

Thank you for your interest in contributing to ChatSecure! To avoid potential legal headaches and to allow distribution on Apple's App Store please sign our CLA (Contributors License Agreement).

  1. Sign the CLA (odt, pdf) and email it to [email protected].
  2. Fork the project and (preferably) work in a feature branch.
  3. Open a pull request on GitHub.
  4. Thank you!

License

Software License Agreement (GPLv3+)

Copyright (c) 2015, Chris Ballinger. All rights reserved.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

If you would like to relicense this code to distribute it on the App Store, please contact me at [email protected].

Third-party Libraries

This software additionally references or incorporates the following sources of intellectual property, the license terms for which are set forth in the sources themselves:

The following dependencies are bundled with the ChatSecure, but are under terms of a separate license:

  • libsignal-protocol-c - Provides Signal Protocol support for OMEMO.
  • OTRKit - Objective-C libotr wrapper library for OTR encryption Build Status
    • libotr - provides the core message encryption capabilities
    • libgcrypt - handles core libotr encryption routines
    • libgpg-error - error codes used by libotr
  • CPAProxy - Objective-C Tor Wrapper Framework for iOS Build Status
    • OpenSSL - crypto primitives required by Tor
    • libevent - Tor i/o dependency
    • Tor - internet anonymity framework
  • XMPPFramework - XMPP support
  • YapDatabase - YapDatabase is a pretty awesome key/value/collection store built atop sqlite for iOS & Mac.
    • SQLCipher - full database encryption for sqlite
  • Mantle - Model framework for Cocoa and Cocoa Touch
  • JSQMessagesViewController - Messages UI library for iOS
  • MBProgressHUD - a nice looking progress HUD
  • MWFeedParser - Methods for escaping HTML strings
  • SSKeychain - Utilities to store passwords securely in the iOS keychain
  • Appirater - nags people to give reviews
  • UserVoice - in-app support forum
  • HockeySDK - crash reporting framework
  • DAKeyboardControl - support for swiping down keyboard in chat view

For a more complete list, check the Podfile and Cartfile.

Regenerating Acknowledgements

To regenerate the acknowledgements in Settings.app use LicensePlist and copy the output to Settings.bundle.

$ brew install mono0926/license-plist/license-plist
$ license-plist --add-version-numbers --output-path ChatSecure/Settings.bundle --suppress-opening-directory

Acknowledgements

Thank you to everyone who helped this project become a reality! This project is also supported by the fine folks from The Guardian Project, OpenITP, and the Open Technology Fund.

  • Nick Hum - awesome icon.
  • Icons8 - Various new "iOS 7"-style icons
  • Mateo Zlatar - World Icon
  • Goxxy - Google Talk icon.
  • Yes designed by Kristin Hogan from the Noun Project
  • No designed by Kristin Hogan from the Noun Project
  • Wifi designed by useiconic.com from the Noun Project
  • Warning designed by Lorena Salagre from the Noun Project
  • Localizations
    • Jiajuan Lin (Chinese)
    • Jan-Christoph Borchardt (German)
    • vitalyster (Russian)
    • burhan teoman (Turkish)
    • shikibiomernok (Hungarian)
  • Many many more!

About

ChatSecure is a free and open source encrypted chat client for iOS that supports OTR and OMEMO encryption over XMPP.

chatsecure.org

Topics

chatdecentralizedencryptioniosipadiphonemessagingobjective-comemootrsqlcipherswiftxmppyapdatabase

Resources

Readme

Contributing

Contributing
Activity
Custom properties

Stars

3.1k stars

Watchers

174 watching

Forks

1.0k forks
Report repository

Releases

Sponsor this project

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.