[guardian-dev] guardian-dev Digest, Vol 103, Issue 2

Van Gegel torfone at ukr.net
Mon Mar 25 13:29:03 EDT 2019

Hello, Nathan!
Thanks for the compiled executable Tor for Android and for your advice.
I think the use of Tor in the form of a statically linked library has some advantages but also disadvantages.

Now in my TorFone I use your Tor executable similarly as in Orbot: app create torrc with the RunAsDaemon 1, run Tor using system() (my main app is also native) and return to the parent after a few time. 
The one goal is Tor daemon continues to work even if the main application has been stopped in the background.
The other is that user can easily update Tor manually by grabbing the executable from your repository, placing it in the apk and re-signing with his own key. I think this is safer than updating the entire application.

My TorFone is completely rewieved compared to 10 years ago.
Now it is cross-platform (Windows, Linux, Android already ready and iOS in plans) and uses a modular architecture that allows to run modules (Transport, Storage, Cryptography + audio and GUI) on a separate hardware (Transport with Tor requires OS but other modules can be run on bare metal, for example, Cortex MK without OS) and connected via strictly specified serial interface (UART, USB CDC, BT SPP etc.).

TorFone has two layers of own cryptography using modern protocols (tDH, SPEKE) and primitives (X25519, Elligator2, Shake128 with Keccak, ChaCha20 etc.) also with assembler codes for Cortex M1-M4.

The speech latency is surprisingly small due to specially designed tricks taking into account the peculiarities of the Tor nodes. 

For users who are not worried about anonymity NAT traversal can be performed for P2P UDP connection using session keys agreed in Tor parent session. In addition in the case of Tor blocking there is the possibility of a direct call to IP:port with traffic obfuscation and authentication with own application private key and contact's public keys stored in address book. 

Now TorFone is under active development so PGP signed source codes and libraries will be available a little later. But it is already possible to estimate speech latency using the Android application available here:

Very brief manual (for now only draft)  is here:  

Your notion on this project is important for me.
Best regards, Van Gegel.

--- Original message ---
From: guardian-dev-request at lists.mayfirst.org
Date: 23 March 2019, 18:01:24

Send guardian-dev mailing list submissions to
	guardian-dev at lists.mayfirst.org

To subscribe or unsubscribe via the World Wide Web, visit
or, via email, send a message with subject or body 'help' to
	guardian-dev-request at lists.mayfirst.org

You can reach the person managing the list at
	guardian-dev-owner at lists.mayfirst.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of guardian-dev digest..."

Today's Topics:

   1. Orbot and Tor updates for Android ! (Nathan of Guardian)


Message: 1
Date: Fri, 22 Mar 2019 13:40:55 -0400
From: Nathan of Guardian <nathan at guardianproject.info>
To: Guardian Dev <guardian-dev at lists.mayfirst.org>
Subject: [guardian-dev] Orbot and Tor updates for Android !
	<82590048-16fe-aaef-4fa1-84926a2c1257 at guardianproject.info>
Content-Type: text/plain; charset="utf-8"

Orbot 16.0.6-BETA-1-tor-

is out (binaries on Github for now) for testing, specifically on Android Q.

It is built on a new release of:


This now uses the method of bundling the tor executable as a tor.so
library, allowing the Android runtime to unpack them into the /data/libs
read-only space within the app's private directory. We then can just
execute it there, without needing to unpack it, copy it, etc.

The word is that this will work on Android Q still. I have tested on an
emulator, but not a real device yet. I don't have a Pixel of any kind,
at the moment, so please let me know if you do and can test.

Otherwise, we are working to move tor and other important binaries, like
obfs4proxy, into actual in-process libraries. We've recently made great
progress with this on our iOS work with Onion Browser, and so it should
now be possible on Android.

New commits below....


ATTENTION ANDROID Q / PIXEL TEST USERS: We've made changes just for you!
WARNING: Meek/Obfs4 bridges WILL NOT work on Android Q yet, just plain Tor

fixed strings with two many \ escapes
updating to tor- to add support for Android Q
update gradle tools
Merge pull request #200 <https://github.com/n8fr8/orbot/pull/200> from
add .gitlab-ci.yml setup with errorprone
build gradle to 4.4.1, and make gradlew verify the download
move app store graphics into fdroid/fastlane file layout
Merge pull request #190 <https://github.com/n8fr8/orbot/pull/190> from
Fixup bad indentation from 6e4b700
Expose PreferIPv6 and NoIPv4Traffic options
Move Google repo above jcenter
cleanup and binary loading fixes

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.mayfirst.org/pipermail/guardian-dev/attachments/20190322/426118e7/attachment-0001.sig>


Subject: Digest Footer

guardian-dev mailing list
guardian-dev at lists.mayfirst.org


End of guardian-dev Digest, Vol 103, Issue 2
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mayfirst.org/pipermail/guardian-dev/attachments/20190325/c3676d47/attachment.html>

More information about the guardian-dev mailing list