simplex-chat
ghc-for-ios
Our great sponsors
simplex-chat | ghc-for-ios | |
---|---|---|
247 | 1 | |
5,264 | 7 | |
4.0% | - | |
9.9 | 0.0 | |
5 days ago | over 2 years ago | |
Haskell | Shell | |
GNU Affero General Public License v3.0 | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
simplex-chat
-
What are your favorite End-to-End encrypted tools for online privacy?
For messaging I'm currently on Olvid (E2E with physical key exchange) but since it still use their servers, I'm currently testing SimpleX where I can host my own servers.
- Apple reveals 'push notification spying' by foreign governments
- simplex bugs/ missing features
- Launching Default End-to-End Encryption on Messenger
-
Apple Confirms Governments Using Push Notifications to Surveil Users
Notice how SimpleX (https://simplex.chat/) has no push notifications by default because of this issue.
- Possible today in Signal? Disable link preview
-
SMS Security and Privacy Gaps
I've been using SimpleX [0] with a couple of friends recently. It appears to work as advertised.
[0] https://simplex.chat
- SimpleX Chat v5.3.0 – Local file encryption and delivery receipts
-
U.K. Abandons, for Now, Legislation That Would Have Banned End-to-End Encryption
If you have a mobile phone number, the domestic intelligence agency knows exactly where you are at all times and any LEO (without a warrant) can also find you. In addition, there have been numerous CCC presentations showing how insecure the global (excluding US) and (separately) US carriers are guilty of promiscuous metadata trafficking ($$) and insecure SS7 setups. As a consequence, for low $, you can go to any one of several shady websites and find the last location of almost any phone number (person unique ID) globally. There are additional varying exploitable vulnerabilities depending on the exact combination of {handset x carrier x country} to impersonate them, tap their line, reveal their exact location, and redirect their phone number through a third-party handset or even a PBX. These are more expensive and some capabilities are forbidden for all but a few selective intelligence uses.
Session (Signal fork) doesn't use phone numbers. It's pretty well-designed overall and uses an onion routing approach. It's already a superset of Signal except it doesn't use phone numbers. https://getsession.org
Also look interesting:
* (unproven) https://www.olvid.io/technology
* (unproven) https://simplex.chat
PS: Using regular TOR on home broadband or cloud servers is relatively risky and inefficient. Sybil attacks on it are common. And to network operators and security agencies it gives an easy "flow tag" of your uplink and exit node data traffic as automatically suspicious.
-
Re: Profile Pictures
Why not open up a Feature request on https://github.com/simplex-chat/simplex-chat/issues
ghc-for-ios
-
Writing the logic for IOS app in Haskell
What I know so far: 1. Compiling to iOS is "reasonably straightforward", see this repo for Intel-based Mac setup, on M1 mac it "should be" easier, as the code is natively executable and GHC binary is available for M1 CPUs from 8.10.7 (I think), so you don't even need to compile it. 2. Compiling to Android (you didn't ask for it, but still) was only done for GHC 8.4 as far as I know - see this post - not sure if it's possible to do with a newer version, but it took me 30min to downgrade our codebase to 8.4.4, so the difference seems not critical, if not. 3. Template Haskell cross-compilation is, at best, an extra challenge - see this post, for example: https://www.tweag.io/blog/2020-11-25-asterius-th/ . In your code you can probably avoid using it, but some libraries might use it - not sure yet how critical it is.. 4. FFI for C/C++ import/export is relatively straightforward, but writing Storable instances to marshall/unmarshall Haskell types to/from C structs with the existing tooling is quite annoying with lots of boilerplate - definitely some place for improvement here. 5. Connecting Haskell code to SQLite - it "should be" doable, as there is the same C api on all platforms. 6. Connecting Haskell code to network - most people would need http(s), we need tcp/tls, so in theory it should be doable to fork the libraries and replace c-bindings to keep the interface (and possibly to compile conditionally), but at best - it's non-trivial, at worst - can be impossible to keep Haskell APIs and would require replacing the libraries and changing the application code...
What are some alternatives?
Element - A glossy Matrix collaboration client for the web.
eta - The Eta Programming Language, a dialect of Haskell on the JVM
session-android - A private messenger for Android.
Codename One - Cross-platform framework for building truly native mobile apps with Java or Kotlin. Write Once Run Anywhere support for iOS, Android, Desktop & Web.
nostr - a truly censorship-resistant alternative to Twitter that has a chance of working
Signal-Android - Fork from a private messenger for Android with extra options added: full backup and (partial, ony text) xml backup of messages. Restore can happen at any time, not only after a fresh install. Import SMS database. Import of (unencrypted) WhatsApp databases. Removed apk expire. Choose between passphrase protection and the Android screenlock. Choice for the backup location (internal or removable storage on Android < 11 (on 11 and higher this is already possible)). Set the maptype in the place picker. Option to treat view-once media as normal media. Option to ignore remote deletion. Choose between FCM or websocket notification delivery.
termpair - View and control terminals from your browser with end-to-end encryption 🔒
Signal-Server - Server supporting the Signal Private Messenger applications on Android, Desktop, and iOS
Signal-iOS - A private messenger for iOS.
simplexmq - ⚙️ SimpleXMQ - A reference implementation of the SimpleX Messaging Protocol for simplex queues over public networks.
status-mobile - a free (libre) open source, mobile OS for Ethereum
imessage - A Matrix-iMessage puppeting bridge