Olvid-ios - Olvid client application for iOS

Related tags

Layout olvid-ios
Overview

Olvid

Olvid is a private and secure end-to-end encrypted messenger.

Contrary to most other messaging applications, Olvid does not rely on a central directory to connect users. As there is no user directory, Olvid does not require access to your contacts and can function without any personal information. The absence of directory also prevents unsolicited messages and spam.

Because of this, from a security standpoint, Olvid is not "yet another secure messenger". Olvid guarantees the total and definitive confidentiality of exchanges, relying solely on the mutual trust of interlocutors. This implies that your privacy does not depend on the integrity of some server. This makes Olvid very different from other messengers that typically rely on some "Trusted Third Party", like a centralized database of users or a public blockchain.

Note that this doesn't mean that Olvid uses no servers (it does). It means that you do not have to trust them: your privacy is ensured by cryptographic protocols running on the client-side (i.e., on your device), and these protocols assume that the servers were compromised from day one. Even then, your privacy is ensured 😊 .

Help and documentation

If you need help using Olvid, first have a look at our FAQ at https://olvid.io/faq/. We also have a few short tutorial videos available in English and in French.

If you are looking for technical documentation, have a look at our technology page where you can find some technical specifications and the reports of the audits Olvid went through to get its CSPN certifications.

Send us feedback

If you find a bug, or have any feedback about Olvid, please contact the team at Olvid at [email protected]. They will be glad to hear your suggestions.

Building Olvid from the sources

To build Olvid for iOS, you need a Mac with the latest version of Xcode and a (free) Apple developer account. This setup will allow you to run Olvid in a simulator.

Running Olvid in a simulator

After installing the latest version of Xcode, you should first clone this project. To do so, launch the Terminal app and type the following commands:

cd ~/Developer
git clone https://github.com/olvid-io/olvid-ios.git

Then open ObvMessenger.xcworkspace in Xcode:

cd ~/Developer/olvid-ios/iOSClient/ObvMessenger/
open ObvMessenger.xcworkspace

In the Toolbar, choose the ObvMessenger scheme. Then choose a simulator (like an iPhone 13 Pro for example). From the Product menu, choose Run. This should compile Olvid for iOS and launch it in the chosen simulator.

Running Olvid on a real device

If you joined Apple Developer Program, you will be able to build Olvid for iOS from the sources and run it on a real device (iPhone, iPod, or iPad). Doing so is a little bit more difficult than running Olvid in a simulator. For now, we do not cover this scenario here.

Structure of the project

Olvid is made of two components:

  • a cryptographic engine, located in the ~/Engine directory,
  • an application layer, located in the ~/iOSClient directory.

The cryptographic engine is in charge of all the cryptographic aspects of Olvid (including encryption, signatures, MACs, cryptographic protocols, etc.), contacts and groups management, and network communications. The application layer implements the instant messaging functionalities on top of the engine. This architecture makes it possible to properly separate the backend logic from the UI.

As of now, the code is not fully documented and contains very few comments. Still, some aspects of it are very advanced and might be hard getting into. The Olvid team is doing its best to improve your experience using this code and will try to improve these aspects in future releases.

Contributing to Olvid

Olvid, as a company, has not yet put in place all the necessary processes to easily accept external contributions. In particular, a Contributor License Agreement should be made available at some point in time. Until then, please contact us at [email protected] if you would like to contribute.

License

Olvid for iOS is licensed under the GNU Affero General Public License v3. The full license is available in LICENSE.

Olvid for iOS
Copyright © 2019-2021 Olvid SAS

Olvid is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License, version 3,
as published by the Free Software Foundation.

Olvid 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 Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with Olvid.  If not, see <https://www.gnu.org/licenses/>.
You might also like...
Registre-aqui - Mobile Application that displays infrastructure issues that your city may have
Registre-aqui - Mobile Application that displays infrastructure issues that your city may have

Registre Aqui About | Features | Technologies | Requirements About Mobile Applic

Breezz: an application with which it is easy and simple to practice breathing exercises and meditation
Breezz: an application with which it is easy and simple to practice breathing exercises and meditation

breezz will help you relax Breezz is an application with which it is easy and si

open source VIPER application
open source VIPER application

Overview Rambler&IT is an open source application, which highlights the basic approaches to mobile application architecture used in Rambler&Co. You ca

FreeOTP is a two-factor authentication application for systems utilizing one-time password protocols

FreeOTP FreeOTP is a two-factor authentication application for systems utilizing one-time password protocols. Tokens can be added easily by scanning a

Snitch - A handy library to access useful information about your application from the Home Screen
Snitch - A handy library to access useful information about your application from the Home Screen

Snitch Access your app's useful information from Home Screen Table of Contents I

Bootcamp1000 - Practical application of a design taken from the Dribble website - For our group in WhatsApp

Bootcamp1000 New Challenge Practical application of a design taken from the Drib

Super-senha-app - Application made from Eric Brito's Udemy course
Super-senha-app - Application made from Eric Brito's Udemy course

super-senha-app Aplicativo feito a partir do curso do Eric Brito da Udemy

This is a simple chat application made in Swift using send and receive interface.

Flash Chat 💁🏽‍♂️ Overview This is a simple chat application made in Swift using send and receive interface. ⚙️ How it works The user needs to first

Async State Machine aims to provide a way to structure an application thanks to state machines
Async State Machine aims to provide a way to structure an application thanks to state machines

Async State Machine Async State Machine aims to provide a way to structure an application thanks to state machines. The goal is to identify the states

Releases(v0.11.1-564)
  • v0.11.1-564(Oct 31, 2022)

    • It is now possible to define a personalized passcode (either PIN or password) to unlock Olvid!
    • Complete redesign of the screen listing all your groups.
    • When forwarding a message to exactly one discussion, this discussion is displayed.
    • Fixes a few graphical issues occurring under iOS 16.
    • Updates WebRTC to version 5195.
    • Adds an (advanced) panel allowing to evaluate the disk storage of Olvid.
    • Fixes a bug preventing to launch the share extension under iOS 13 and 14.
    • Fixes a potential crash of the app.
    • Other bug fixes.
    • Fixes a few localization issues in French.
    Source code(tar.gz)
    Source code(zip)
  • v0.11.0-542(Sep 21, 2022)

    • Starting Olvid is way faster than before!
    • The information screen about a sent message now shows information about the reception of its attachments and, if the recipient allows it, information about whether the attachment was seen or not.
    • Return receipts on messages and attachments are sent (and thus received) much faster than before.
    • A red badge allows to distinguish between audio messages you already listened to from those you did not.
    • Fixes an issue sometimes preventing messages to be marked as "not new" when entering a discussion.
    • Fixes a potential crash occurring when deleting a message while the corresponding discussion is displayed on screen.
    • Fixes an issue sometimes preventing the UI to update itself at the end of the download of an attachment.
    Source code(tar.gz)
    Source code(zip)
  • v0.10.3-533(Sep 6, 2022)

    • It is now possible to customize the alert sound for message notifications. You should definitively try our very exclusive, never heard before, unprecedented polyphonic sounds :-)
    • You can now easily forward any message to one or more discussions!
    • Improves the reliability of the progress bars when sending and receiving attachments.
    • Improves the responsiveness of the download and pause buttons on received attachments.
    • While listening to a voice message, you can now switch between the internal or the external speaker.
    • In addition to the media gallery, you can now browse through all the documents of a discussion!
    • When leaving a group and joining it again later on, the "old" discussion is reactivated (instead of creating a new one), allowing to continue the discussion where you left it.
    • The former is also true for a one-to-one discussion with a contact that you remove from your contacts and add back later.
    • When sharing a screenshot using Olvid, the discussion screen would not always show a big preview of the image. This is fixed.
    • The file previewer would sometimes allow sharing of ephemeral attachments. This is fixed.
    • Fixes a few bugs where contact images would not always show properly.
    • Fixes occasional rotation issues when setting a profile picture.
    • Fixes an issue potentially preventing messages to be sent.
    • Fixes multiple issues with the "delete for all" functionality.
    • Fixes a bug where tapping an attachment in a discussion could show another attachment of the message.
    • Improves the efficiency of messages downloads.
    • The mute switch of the call screen is now clearer.
    Source code(tar.gz)
    Source code(zip)
  • v0.10.2-519(Jul 2, 2022)

    • Want to see a nice view of all the photos and videos received in a discussion? Try the new gallery, available via the top right button of any discussion screen.
    • When replying from a notification to the last received message, the response does not appear as a "reply" anymore.
    • Fixes a bug preventing the detection of URLs, phone numbers, etc. within messages.
    • Fixes a bug preventing badge to be properly updated when marking a message as read from a notification.
    • Fixes a bug preventing read receipts to be sent when marking a message as read from a notification.
    • Fixes an issue sometimes preventing read messages to be marked as "read".
    • Fixes a bug where sharing an image as a file would not result in a nice preview in the discussion screen.
    • Other minor bug fixes.
    Source code(tar.gz)
    Source code(zip)
  • v0.10.1-501(May 6, 2022)

    • It is now possible to reply to a message or to mark it as read right from the notification!
    • If you like a particular reaction made by another user, you can now easily add it to the list of your preferred reactions.
    • Fixes a bug preventing a received message from being edited by the sender.
    • Fixes an issue preventing the minimum supported and recommended Olvid version would not be properly updated.
    • Background tasks are more reliable.
    Source code(tar.gz)
    Source code(zip)
  • v0.10.0-495(May 1, 2022)

    • New behavior of your address book! Now, an Olvid user becomes a contact only if you explicitly agree. You are now in full control of your address book!
    • A new list of "other" Olvid users is now accessible from the "Contacts" tab. Typically, these users are part of the same discussion groups as you. Inviting these users to be a contact of yours can be done in one tap!
    • A group invite from a contact is now automatically accepted.
    • You still need to explicitly accept group invites from Olvid users who are not part of your contacts.
    • Sharing with Olvid is now easier and you can now share content into multiple discussions at once!
    • Support for new emojis.
    • The reactions are larger and easier to tap.
    • Bugfix: The reactions were not properly refreshed (it required manual scrolling to actually see an update). This is fixed.
    • Bugfix: Fixes an issue with user notifications that wouldn't show after an upgrade (until the first restart of the app)
    • Bugfix: a double tap on an image would sometimes show a large version of the image instead of of the panel of reactions. This is fixed.
    • Many important improvements made to calls, especially for group calls.
    • The receipt indicator of sent messages is more reliable.
    • If the app version is outdated, an alert recommends an upgrade.
    • Upgrade of a third-party library.
    Source code(tar.gz)
    Source code(zip)
  • v0.9.18-490(Mar 14, 2022)

    • Great improvements made to secure calls ! Including better quality in poor network conditions and reduced connecting time. Please note that your contact must also use the latest version of Olvid.
    • A user notification is shown when a contact reacts to one of your messages.
    • Adds supports for HEIC photos.
    • The onboarding is now compatible with all majors MDM vendors.
    • Updating the design of the group creation screens.
    • Fixes issues concerning reactions and ephemeral messages.
    • It is now easier to remove a reaction to a message.
    • While recording a voice message, receiving a call cancels the recording and immediately attach it to the discussion draft.
    Source code(tar.gz)
    Source code(zip)
  • v0.9.17-484(Jan 11, 2022)

    • Fixes a potential timing attack on the implementation of scalar multiplication on EC (many thanks to Ryad Benadjila for pointing it out to us!)
    • It is possible to customize the quick emoji button of the new composition view, both globally and for each discussion.
    • The fluidity of the new discussion screen is improved.
    • Since Olvid will soon drop support for iOS 11 and 12, a new alert recommends users using an old iOS version to upgrade to the latest one.
    Source code(tar.gz)
    Source code(zip)
  • v0.9.16-479(Jan 6, 2022)

    • Fix an important issue for our iOS12 users, preventing Olvid to launch.
    • Should fix an issue sometimes preventing some messages to be marked as read.
    Source code(tar.gz)
    Source code(zip)
  • v0.9.15-477(Dec 31, 2021)

    • It is possible to add a reaction to a message. Double tap a message to try this feature.
    • The order of the buttons of the new composition view can be customized.
    • Backups now include data concerning the app (contact nicknames, discussion and global settings).
    • Improves the integration of the Bitmoji keyboard.
    • Improves the settings screen concerning backups.
    • When recording a long audio message, the screen does not dim anymore.
    • For our pro users, introducing keycloak revocation, a new view showing the technical details about a contact, and better keycloak search.
    • Simplified onboarding process.
    • Improvements concerning secure calls when one of the interlocutor did not allow access to the microphone.
    • Improvements made to backups, making it possible to list all iCloud backups, and to delete all (but the latest) backups.
    • Fixes an issue with ephemeral messages and other bugfixes.
    Source code(tar.gz)
    Source code(zip)
Owner
Olvid
Olvid
iOS client for the TradeOgre.com crypto-to-crypto trading platform

TradeOgre iOS Overview TradeOgre iOS is an iOS client for the TrageOgre.com website and crypto-exchange platform. I was looking for their iOS client,

Kyle Roucis 1 Feb 1, 2022
A multi-user Mastodon client for iOS.

Tootbot A multi-user Mastodon client for iOS. Getting Started Tootbot must be built with Xcode 8.3 or later. The xcode-install gem can help with multi

Tootbot 27 Aug 9, 2022
Application iOS de l'outil ViteMaDose

Vite Ma Dose pour iOS Présentation du projet Vite Ma Dose est un outil permettant de détecter les rendez-vous de vaccination. Cette application rapide

CovidTracker 32 Feb 9, 2022
A declarative UIKit for improve layout productivity when developing an iOS application

TifoKit A declarative UIKit for improve layout productivity when developing an iOS application Requirements Min. iOS 11 Swift 5+ Installation Currentl

Tifo Audi A.P 22 Aug 9, 2022
This page contains an iOS Application that uses Modelplace.AI Cloud API

Modelplace iOS App This page contains an iOS Application that uses Modelplace.AI

OpenCV.AI 7 Jan 21, 2022
UndrDawg: a sport-betting application for iOS

Table of contents What Is UndrDawg Our Mission Technologies Setup Features What

norman chiflen 0 Dec 26, 2021
How to build and sign your iOS application using Azure DevOps

How to build and sign your iOS application using Azure DevOps Sample source code

null 0 Dec 29, 2021
An iOS application enables you explore art works provided by DeviartArt.com with high quality UX.

Iris.iOS Iris is a model mobile application based on iOS. It provides basic functions allow users to explore on DeviantArt and check Daily Arts, Notif

Xueliang Chen 63 Dec 13, 2022
An IOS/IPad OS application that demonstrates various capabilities and functions of ARKit and RealityKit.

Augmented Reality Development Demos based on ARKit and RealityKit Summary This repository contains an IOS application that shows the capability of App

yukun 2 Oct 30, 2022
A simple game application using SpriteKit, physics, blend modes, radians and CGFloat

Pachinko A simple game application using SpriteKit, physics, blend modes, radian

NIKOLAY NIKITIN 1 Oct 20, 2022